Method and system for efficiently allocating resources for solving computationally hard problems
First Claim
1. A method for allocating at least one resource between a plurality of entities of an information system, comprising:
- selecting at least one performance factor for the plurality of entities;
determining a probability distribution of the at least one performance factor for the plurality of entities;
determining a risk associated with each of the plurality of probability distributions; and
allocating the at least one resource between the plurality of entities based on the plurality of risks.
10 Assignments
0 Petitions
Accused Products
Abstract
A resource allocation method and system allocates a computational resource between elements of a portfolio of computational entities. The computational resource can be processing time, memory or display screen space. The computational resource can also be associated with a distributed network such as the Internet. In this case, the computational resource is the number of pending messages sent across the distributed network, pendancy time of a message sent across the distributed network, priority of the messages sent across the distributed network, and/or cost of the messages set across the distributed network. When the computational resource is processing time, the resource is allocated between different processes executing on the processor. These different processes include different solution procedures for solving a computationally hard problem, different instances of a single solution procedure for solving the computationally hard problem, and the like. The resource is allocated to optimize the solution time or variance in the solution time. When the computational resource is memory, the resource is allocated between files that are to be stored in the memory, where the total size of the files exceeds the available space in the memory. The available space in the memory is allocated to maximize the likelihood that a file will be stored in the memory when it is needed. When the computational resource is screen real estate, the resource is allocated between display icons that are to be displayed on the display screen, where the total area consumed by the icons exceeds the available screen real estate.
139 Citations
24 Claims
-
1. A method for allocating at least one resource between a plurality of entities of an information system, comprising:
-
selecting at least one performance factor for the plurality of entities; determining a probability distribution of the at least one performance factor for the plurality of entities; determining a risk associated with each of the plurality of probability distributions; and allocating the at least one resource between the plurality of entities based on the plurality of risks. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17)
-
-
18. A method for efficiently solving a computationally hard problem on a computer comprising a processor and a memory, the method comprising:
-
selecting a plurality of different computer-implemented solution procedures for solving the computationally hard problem; selecting at least one performance factor of the computationally hard problem to be optimized; determining a probability distribution for each at least one performance factor for each of the plurality of solution procedures; determining a risk associated with each of the plurality of probability distributions; and allocating at least one computational resource between the plurality of solution procedures based on the plurality of risks. - View Dependent Claims (19, 20, 21, 22, 23)
-
-
24. A method for efficiently allocating at least one computational resource between a plurality of processes executing on a computer comprising a processor and a memory, comprising:
-
selecting at least one performance factor for the plurality of processes; determining a probability distribution of the at least one performance factor for the plurality of processes; determining a risk associated with each of the plurality of probability distributions; and allocating the at least one computational resource between the plurality of processes based on the plurality of risks.
-
Specification