Claims
- 1. A method of analyzing resource allocation to a linear programming model of a graph consisting of nodes representing the status and branches representing the status transition and including at least one closed loop, which comprises:
- a step 1 of classifying all nodes contained in said graph into patterns, each having a given priority, based on a state of weights given to input and output branches of each node;
- a step 2 of selecting a node i from which to start a determination of the weight to each branch from among all of nodes in the graph based on results of classification in step 1;
- a step 3 of weighting all of input branches and output branches of the selected node i so that y.ident..SIGMA..sub.j X.sub.ji +.SIGMA..sub.j X.sub.ij is minimized under a constraint represented by the following equation (1):
- .SIGMA..sub.j X.sub.ij -.SIGMA..sub.j X.sub.ji =0
- X.sub.ij .gtoreq.0
- wherein X.sub.ji is a weight of an input branch from node j to node 1 and X.sub.ij is a weight of an output branch from node i to node j;
- a step 4 of selecting a node of which input and output branches are to be weighted next time based on a state obtained by executing step 3;
- a step 5 of determining weights of all input and output branches in accordance with a method corresponding to that of step 3; and
- a step 6 of repeating steps 4 and 5 to determine weights of input and output branches for remaining nodes.
- 2. A method of analyzing resource allocation according to claim 1, whereby said step 4 includes a process of selecting a next node to be an object for a next determination of the weight from among the adjacent nodes connected by branches to the earlier processed node.
- 3. A method of analyzing resource allocation according to claims 1 or 2, whereby strongly connected components are extracted from said graph, so that all of the branches in a graph of a model obtained by removing self-closed loops from one or a plurality of said strongly connected components are weighted.
- 4. A method of operating an analyzing system for resource allocation which comprises an input device for inputting various information for the resource allocation and an output device for outputting the result of the resource allocation and a processor;
- said processor executing with respect to a model of a graph consisting of nodes representing the status and branches representing the status transition, and including closed loops in accordance with the following steps:
- a step 1 of classifying all nodes contained in said graph into patterns, each having a given priority, based on a state of weights given to input and output branches of each node;
- a step 2 of selecting a node i from which to start a determination of the weight to each branch from among all of nodes in the graph based on results of classification in step
- a step 3 of weighting all of input branches and output branches of the selected node i so that y.ident..SIGMA..sub.j X.sub.ji +.SIGMA..sub.j X.sub.ij is minimized under a constraint represented by the following equation (1):
- .SIGMA..sub.j X.sub.ij -.SIGMA..sub.j X.sub.ji =0
- X.sub.ij .gtoreq.0
- wherein X.sub.ji is a weight of an input branch from node j to node i and X.sub.ij is a weight of an output branch from node i to node j;
- a step 4 of selecting a node of which input and output branches are to be weighted next time based on a state obtained by executing step 3;
- a step 5 of determining weights of all input and output branches in accordance with a method corresponding to that of step 3; and
- a step 6 of repeating steps 4 and 5 to determine weights of input and output branches for remaining nodes.
- 5. A method of operating an analyzing system for resource allocation according to claim 4, wherein said step 4 includes a process of selecting a next node to be an object for a next determination of the weight from among the adjacent nodes connectedly branches to the earlier processed node.
- 6. A method of operating an analyzing system for resource allocation according to claims 4 or 5, wherein said processor extracts strongly connected components from said graph, so as to thereby process a model obtained by removing self-closed loops from at least one of said strongly connected components.
- 7. A method of analyzing maximum flow of a network to a model of a graph consisting of nodes and branches and including a closed loop, which comprises:
- a step 1 of classifying all nodes contained in said graph into patterns, each having a given priority, based on a state of flow rates given to input and output branches of each node;
- a step 2 of selecting a node i from which to start a determination of the flow rate from among all of nodes in the graph based on results of classification in step 1;
- a step 3 of determining flow rates for all of the input branches and output branches of the selected node i so that y.ident..SIGMA..sub.j X.sub.ji +.SIGMA..sub.j X.sub.ij is minimized under a constraint represented by the following equation (1);
- .SIGMA..sub.j X.sub.ij -.SIGMA..sub.j X.sub.ji =0
- X.sub.ij .gtoreq.0
- wherein X.sub.ji is a flow rate of an input branch from node j to node i and X.sub.ij is a flow rate of an output branch from node i to node j;
- a step 4 of selecting a node for determining flow rates of its input and output branches next time based on a state obtained by executing step 3;
- a step 5 of determining flow rates of all input and output branches in accordance with a method which is substantially the same as step 3;
- a step 6 of repeating steps 4 and 5 to determine flow rates of input and output branches for remaining nodes; and
- a step 7 of detecting a branch having the maximum flow rate among all of the branches in the graph.
- 8. A method of analyzing maximum flow of network according to claim 7, wherein said step 4 includes a process of selecting a node to be an object for a next determination of the flow rate among the adjacent nodes connected by branches to the earlier processed nodes.
- 9. A method of analyzing maximum flow of a network according to claims 7 or 8, further comprising:
- a step of extracting a strongly connected component from said graph, so as to thereby obtain a branch with the maximum flow rate and the flow rate to a model obtained by removing a self-closed loop from at least one of said strongly connected components.
- 10. A method of scheduling to a model of a graph consisting of nodes representing the status and branches representing the status transition, and a including at least one closed loop, which comprises:
- a step 1 of classifying all nodes contained in said graph into patterns, each having a given priority, based on a state of weights given to input and output branches of each node;
- a step 2 of selecting a node i from which to start a determination of the weight to each branch from among all of nodes in the graph based on results of classification in step 1;
- a step 3 of weighting all of input branches and output branches of the selected node i so that y.ident..SIGMA..sub.j X.sub.ji +.SIGMA..sub.j X.sub.ij is minimized under a constraint represented by the following equation (1):
- .SIGMA..sub.j X.sub.ij -.SIGMA..sub.j X.sub.ji =0
- X.sub.ij .gtoreq.0
- wherein X.sub.ji is a weight of an input branch from node j to node i and X.sub.ij is a weight of an output branch from node i to node j;
- a step 4 of selecting a node of which input and output branches are to be weighted next time based on a state obtained by executing step 3;
- a step 5 of determining weights of all input and output branches in accordance with a method corresponding to that of step 3;
- a step 6 of repeating steps 4 and 5 to determine weights of input and output branches for remaining nodes;
- a step 7 of detecting a branch with the maximum weight from among all of the branches in the graph;
- a step 8 of removing the branch with the maximum weight detected in step 7 and, thereby, cutting said at least one closed loop including the branch; and
- a step 9 of reordering all of the nodes constituting said at least one closed loop based on a model obtained by executing step 8.
- 11. A method of scheduling according to claim 10, wherein said step 4 includes a process of selecting a node to be an object for a next determination of the weight from among the adjacent nodes connected by branches to the earlier processed node.
- 12. A method of scheduling according to claims 10 or 11, further comprising:
- a step of extracting a strongly connected component from said graph, and of removing a branch with the maximum weight from a model obtained by removing a closed loop from at least one of said strongly connected components, so that all of the nodes constituting the closed loop including the branch with the maximum weight are arranged in order.
- 13. A method of operating a scheduling system provided with an input device for inputting various information for the scheduling, an output device for outputting the scheduling result, and a processor;
- wherein a model of a graph consisting of nodes representing the status and branches representing the status transition and, including a closed loop is processed by said processor in accordance with a flow of procedures set beforehand;
- said flow of procedures comprising:
- a step 1 of classifying all nodes contained in said graph into patterns, each having a given priority, based on a state of weights given to input and output branches of each node;
- a step 2 of selecting a node i from which to start a determination of the weight to each branch from among all of nodes in the graph based on results of classification in step 1;
- a step 3 of weighting all of input branches and output branches of the selected node i so that y.ident..SIGMA..sub.j X.sub.ji +.SIGMA..sub.j X.sub.ij is minimized under a constraint represented by the following equation (1):
- .SIGMA..sub.j X.sub.ij -.SIGMA..sub.j X.sub.ji =0
- X.sub.ij .gtoreq.0
- wherein X.sub.ji is a weight of an input branch from node j to node i and X.sub.ij is a weight of an output branch from node i to node j;
- a step 4 of selecting a node of which input and output branches are to be weighted next time based on a state obtained by executing step 3;
- a step 5 of determining weights of all input and output branches in accordance with a method corresponding to that of step 3;
- a step 6 of repeating steps 4 and 5 to determine weights of input and output branches for remaining nodes;
- a step 7 of detecting a branch with the maximum weight from among all of the branches in the graph;
- a step 8 of removing the branch with the maximum weight detected in step 7 and, thereby, cutting said at least one closed loop including the branch; and
- a step 9 of reordering all of the nodes constituting said at least one closed loop based on a model obtained by executing step 8.
- 14. A method of operating a scheduling system according to claim 13, wherein said step 4 includes a process of selecting a node to be an object for a next determination of the weight from among the adjacent nodes connected by branches to the earlier processed node.
- 15. A method of operating a scheduling system according to claims 13 or 14, wherein said flow of procedures further comprises a step of extracting strongly connected components from said graph so as to thereby process a model obtained by removing closed loops from at least one of said strongly connected components.
Priority Claims (1)
Number |
Date |
Country |
Kind |
3-141653 |
Jun 1991 |
JPX |
|
Parent Case Info
This application is a continuation of now abandoned application, Ser. No. 07/804,031, filed Dec. 9, 1991 now abandoned.
US Referenced Citations (1)
Number |
Name |
Date |
Kind |
3735109 |
Berthelemy et al. |
May 1973 |
|
Foreign Referenced Citations (2)
Number |
Date |
Country |
0363017 |
Apr 1990 |
EPX |
0495517 |
Jul 1992 |
EPX |
Non-Patent Literature Citations (2)
Entry |
"Power Generation Scheduling Through Use of Generalized Network Flow Programming", Rice et al., IEEE Proceedings-C, vol. 138, No. 1, Jan. 1991, p. 39-46. |
"Graphs and Hypergraphs", Claude Berge, 1979, pp. 76-101. |
Continuations (1)
|
Number |
Date |
Country |
Parent |
804031 |
Dec 1991 |
|