Probabilistic resource allocation system with self-adaptive capability
First Claim
1. A self-adaptive system for providing progressively improved solutions to successive examples of a class of generally similar problems of resource allocation, comprising:
- a supervisory and interaction management module (SIMM) for receiving input data describing the goals to be met in solution of, and the resources available to solve, a particular problem;
a short-term memory (STM) for receiving said input data from said SIMM, for receiving a list of candidate resources from long-term memory, and for comparing the input data to the candidate resources to determine a near-optimal resource allocation;
a long-term memory (LTM) maintaining a list of candidate resources and associated probabilities of goal satisfaction, said LTM being effectively implemented as a reconfigurable network of nodes connected to neighboring nodes by each node representing a step in a pathway connecting one or more resources to one or more goals,means for computing alternate pathways between the nodes of the network in order to allocate resources to goals in deriving candidate solutions of each particular problem of said class of problems, and for evaluating the relative efficiency of each of the alternate pathways thus computed in order to determine an optimum solution for that particular problem with respect to the present configuration of the network;
means for identifying common groups of nodes connected by employed in the optimum solutions of plural examples of problems from a given class of problems; and
means for effectively decomposing said network by replacing said identified common groups of nodes connected by links with fewer nodes connected by fewer links to one another, or to the nodes previously connected to the identified common group of nodes, for subsequent solution of further problems from said given class of problems.
0 Assignments
0 Petitions
Accused Products
Abstract
A probabilistic resource allocation system is disclosed containing a low capacity computational module (Short Term Memory or STM) and a self-organizing associative network (Long Term Memory or LTM) where nodes represent elementary resources, terminal end nodes represent goals, and weighted links represent the order of resource association in different allocation episodes. Goals and their priorities are indicated by the user, and allocation decisions are made in the STM, while candidate associations of resources are supplied by the LTM based on the association strength (reliability). Weights are automatically assigned to the network links based on the frequency and relative success of exercising those links in the previous allocation decisions. Accumulation of allocation history in the form of an associative network in the LTM reduces computational demands on subsequent allocations. For this purpose, the network automatically partitions itself into strongly associated high reliability packets, allowing fast approximate computation and display of allocation solutions satisfying the overall reliability and other user-imposed constraints. System performance improves in time due to modification of network parameters and partitioning criteria based on the performance feedback.
183 Citations
24 Claims
-
1. A self-adaptive system for providing progressively improved solutions to successive examples of a class of generally similar problems of resource allocation, comprising:
-
a supervisory and interaction management module (SIMM) for receiving input data describing the goals to be met in solution of, and the resources available to solve, a particular problem; a short-term memory (STM) for receiving said input data from said SIMM, for receiving a list of candidate resources from long-term memory, and for comparing the input data to the candidate resources to determine a near-optimal resource allocation; a long-term memory (LTM) maintaining a list of candidate resources and associated probabilities of goal satisfaction, said LTM being effectively implemented as a reconfigurable network of nodes connected to neighboring nodes by each node representing a step in a pathway connecting one or more resources to one or more goals, means for computing alternate pathways between the nodes of the network in order to allocate resources to goals in deriving candidate solutions of each particular problem of said class of problems, and for evaluating the relative efficiency of each of the alternate pathways thus computed in order to determine an optimum solution for that particular problem with respect to the present configuration of the network; means for identifying common groups of nodes connected by employed in the optimum solutions of plural examples of problems from a given class of problems; and means for effectively decomposing said network by replacing said identified common groups of nodes connected by links with fewer nodes connected by fewer links to one another, or to the nodes previously connected to the identified common group of nodes, for subsequent solution of further problems from said given class of problems. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A method for increasingly efficient solution of a series of problems from a class of problems requiring allocation of resources to a plurality of goals, comprising the steps of:
-
defining a reconfigurable network of nodes connected by links, each node effectively representing a step in allocating given resources to given goals; carrying out the following steps in solution of a particular problem; computing alternate pathways between the nodes of the network in order to allocate resources to goals in solution of each particular problem of said class of problems; and evaluating the relative efficiency of each of the alternate pathways thus computed, in order to determine an optimum solution for that particular problem with respect to the present configuration of the network; and carrying out the following steps after reaching an optimum solution for a particular problem with respect to the present configuration of the network; comparing the sets of nodes employed by the optimum solution to similar sets of nodes employed in the optimum solutions of other problems of the same class of problems; determining whether common groups of nodes are employed substantially similarly in the optimum solutions of plural problems from a given class of problems; and if such common groups of nodes are identified, reconfiguring the network for increased efficiency in subsequent solution of problems from the same class of problems by replacing said identified common groups of nodes with fewer nodes connected to one another, or to the nodes connected to the replaced common groups of nodes, wherein said step of determining whether common groups of nodes are employed substantially similarly in the optimum solutions of plural problems from a given class of problems is performed by successively assigning groups of nodes to packets, comparing the aggregate weight of weighted links internal to each of the packets to the aggregate weight of the links connecting the nodes of each packet to nodes outside each packet, and treating the nodes of the packet as an identified common group of nodes when the aggregate weight of the links internal to the packet exceeds the aggregate weight of the links connecting the nodes internal to the packet to nodes outside the packet. - View Dependent Claims (8, 9, 10, 11, 12)
-
- 13. A method of reconfiguring an adaptive user interface responsive to patterns of use, said interface comprising user information display means and a plurality of user input means, said user input means permitting the user to select from among control options provided on display means, comprising the steps of monitoring user patterns of selection of control options, and reconfiguring the display of control options responsive to their selection by the user to group options or sequences of options selected repetitively, in predetermined areas of said display as said interface is used.
-
15. A method for modularizing and reducing the size of a network of computational nodes connected by links, said network being employed in solution of successive similar problems, comprising the steps of:
-
storing information describing the connection of nodes by links in solution of successive problems; assigning groups of nodes and weighted connecting links to candidate packets; evaluating the stability σ
of candidate packets as σ
=(Σ
Winternal)/(Σ
Wexternal), where Σ
Winternal is the aggregate weight of the links of a particular candidate packet and σ
Wexternal is the aggregate weight of the links connecting the candidate packet to other nodes in the network; andreplacing candidate packets as to which σ
exceeds a threshold value with single nodes connected by links to the nodes connected to the packets thus replaced. - View Dependent Claims (16, 17)
-
-
18. A method for reducing the computation time necessary to calculate solutions of network optimization problems using a specified algorithm for determination of optimal solutions, comprising the steps of:
-
(1) defining a virtual network, comprising a plurality of nodes connected by weighted links, wherein said nodes each represent a resource to be utilized; (2) providing an initial partition of said network into components each consisting of a number of proposed packets, said proposed packets each comprising a number of said nodes connected by weighted links, and said proposed packets being connected to one another by cutsets, comprising further sets of weighted links, wherein the sum of the weights of the links connecting the nodes of each proposed packet exceed the total weights of the links of the corresponding cutset; (3) evaluating the stability of the partitioned network by; (a) determining sums of the weights assigned to the links of each of the proposed packets, and of the corresponding cutsets; (b) evaluating the stability of the partitioned network by comparing the sum of the weights of the links of each proposed packet to the sum of weight of the links of the corresponding cutset; (c) repartitioning said networks into a differing set of proposed packets and reevaluating the stability of the repartitioned network; and (d) repeating said steps (a)-(c) until no further increase in the stability of the packets is identified; and
then(4) employing said specified algorithm to determine an optimal solution for said partitioned network, treating said packets as single nodes in implementation of said algorithm. - View Dependent Claims (19, 20, 21, 22, 23, 24)
-
Specification