Information processing device and information processing method
The information processing device addresses the computational intractability of multi-agent systems by converting task graphs with complex constraints into intuitive forms with intermediate tasks, reducing calculation time and maintaining polynomial complexity for efficient task planning.
Patent Information
- Application Number
- PCT/JP2024/007043
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-02-27
- Publication Date
- 2025-09-04
AI Technical Summary
Existing methods for controlling multi-agent systems face computational complexity that increases exponentially with the number of agents, making efficient task planning intractable.
An information processing device and method that adds new nodes and edges to a task graph representing procedures and constraints, converting complex constraints into a more intuitive and manageable form, reducing calculation time by transforming logical expressions into prime additive normal form and adding intermediate tasks.
Enables efficient control of multi-agent systems by reducing calculation time and facilitating the creation of specific action plans for multiple robots, even with complex constraints, by incorporating intermediate goals and maintaining polynomial-time complexity.
Smart Images

Figure JP2024007043_04092025_PF_FP_ABST
Abstract
Description
Information processing device and information processing method
[0001] The present disclosure relates to an information processing device and an information processing method capable of formulating an action plan for multiple agents.
[0002] A multi-agent system is a system in which multiple agents work in cooperation. An agent is a subject of action, such as a human or a robot. A multi-agent system has the potential to accomplish complex tasks that cannot be achieved by a single agent through cooperation between multiple agents.
[0003] Task planning is the process of formulating an action plan to accomplish a task. Task planning in multi-agent systems is generally known as a computationally intractable problem because the computational complexity increases exponentially with the number of agents.
[0004] A technology underlying task planning is Linear Temporal Logic (LTL) described in Non-Patent Document 1. In linear temporal logic, logical expressions having time-related aspects can be converted into graphs.
[0005] By representing a task as a graph, it becomes easier to intuitively understand the procedures and constraints for achieving the task. Furthermore, by using graph search techniques such as those described in Non-Patent Document 2, it becomes possible to create more specific action plans.
[0006] Non-Patent Document 3 proposes a method for obtaining a graph representing a task using the technique described in Non-Patent Document 1, and then using the graph search described in Non-Patent Document 2 to create an action plan for multiple robots.
[0007] Furthermore, the method described in Non-Patent Document 3 considers a multi-agent system consisting of multiple robots of the same type, and reduces the amount of calculations by utilizing the property that, for example, part of work A for completing a task can be performed by either robot 1 or robot 2. However, this method cannot solve the problem of the amount of calculations increasing exponentially as the number of agents increases.
[0008] P. Gastin, et al., "Fast LTL to Buchi Automata Translation," International Conference on Computer Aided Verification (CAV), pp. 53-65, 2001E.W. Dijkstra, "A note on two problems in connexion with graphs," Numerische Mathematik, vol. 1, pp. 269-271, 1959M. Kloetzer, et al. al., "LTL Planning for groups of robots," Proceedings of the IEEE International Conference on Networking, Sensing, and Control (ICNSC), pp. 578-583, 2006
[0009] As described above, even if the method described in Non-Patent Document 1 is used, it is not possible to efficiently control a multi-agent system.
[0010] An object of the present invention is to provide an information processing device and an information processing method that realize efficient control of a multi-agent system.
[0011] An information processing device based on the present disclosure is an information processing device including a computer, the computer including: graph input means for accepting input of a graph representing procedures and constraints for executing a task; node addition means for adding new nodes to the graph corresponding to each node in the input graph; edge addition means for adding edges to the graph connecting the added nodes to other nodes in the graph; and graph output means for outputting the graph to which the nodes and edges have been added.
[0012] An information processing method based on the present disclosure is an information processing method executed by a computer, which accepts input of a graph representing procedures and constraints for executing a task, adds new nodes to the graph corresponding to each node in the input graph, adds edges to the graph connecting the added nodes to other nodes in the graph, and outputs the graph with the added nodes and edges.
[0013] An information processing program based on the present disclosure causes a computer to perform the following processes: accept input of a graph representing procedures and constraints for executing a task; add new nodes to the graph corresponding to each node in the input graph; add edges to the graph connecting the added nodes to other nodes in the graph; and output the graph with the added nodes and edges.
[0014] According to the present invention, it is possible to realize efficient control of a multi-agent system.
[0015] FIG. 12 is an explanatory diagram showing an example of a task including complex constraints. FIG. 13 is a block diagram showing an example of a configuration of an information processing device. FIG. 14 is an explanatory diagram showing an example of a task graph. FIG. 15 is an explanatory diagram showing an example of a task. FIG. 16 is an explanatory diagram showing an example of a task graph. FIG. 17 is an explanatory diagram showing a task graph in which a new node has been added to the task graph illustrated in FIG. 5. FIG. 18 is an explanatory diagram showing a task graph in which an edge has been added to the task graph illustrated in FIG. 6 in processing 1). FIG. 19 is an explanatory diagram showing a task graph in which an edge has been added to the task graph illustrated in FIG. 7 in processing 2). FIG. 20 is an explanatory diagram showing a task graph in which an edge has been added to the task graph illustrated in FIG. 8 in processing 3). FIG. 21 is a flowchart showing an example of operation of an information processing device. FIG. 22 is an explanatory diagram showing a schematic representation of another example of a task. FIG. 23 is an explanatory diagram showing a schematic representation of another example of a task. FIG. 24 is an explanatory diagram showing another example of a task graph. FIG. 25 is an explanatory diagram showing a task graph in which an edge has been added to the task graph illustrated in FIG. 13 in processing 3). FIG. 26 is a block diagram showing an example of a configuration of a computer. FIG. 27 is a block diagram showing main parts of an information processing device.
[0016] A graph representing the execution procedures and constraints of a task, generated by using a method such as that described in Non-Patent Document 1, may not fully represent the procedures when the task includes complex constraints. In particular, when intermediate tasks are required to resolve complex constraints, the intermediate tasks are not included in the execution procedures represented by the graph.
[0017] A task including complex constraints will be explained using a specific example. Figure 1 is an explanatory diagram showing an example of a task including complex constraints. Figure 1 shows a situation in which two agents 101 are in a large room, and one of them wants to move to a destination in an adjacent small room. However, there is a door 102 between the rooms, and one of the agents 101 must press a switch 103 to open the door 102. The door 102 and switch 103 correspond to the constraints. To accomplish this task, one agent 101 must first go to press the switch, and then the other agent 101 must move to the destination 103.
[0018] However, even if such a situation is treated as a task and the method described in Non-Patent Document 1 is used, the intermediate task of pressing the switch 103 to resolve the constraint is not included in the execution procedure on the generated graph.
[0019] In the following embodiment, a graph representing a task that includes complex constraints can be converted into a graph that includes intermediate operations for resolving the constraints. Graph conversion makes the task execution procedure more intuitive and easier to understand. Graph conversion also contributes to reducing the calculation time required to calculate specific action plans for multiple robots.
[0020] Hereinafter, an embodiment will be described with reference to the drawings.
[0021] 2 is a block diagram showing an example of the configuration of an embodiment of an information processing device 10. The information processing device 10 shown in FIG. 2 includes a graph input unit 11, a node addition unit 12, an edge addition unit 13, and a graph output unit 14.
[0022] The graph input unit 11 accepts input of a graph representing task execution procedures and constraints (hereinafter, such a graph will be referred to as a task graph). There are various interchangeable representations of task graphs. Here, we will use as an example a task graph that can be represented relatively simply, in which node labels correspond to constraints and edge labels correspond to intermediate goals. Note that if a task graph in another format is input, the format of that task graph can simply be converted to the format shown here.
[0023] First, the task graph will be described.
[0024] 3 is an explanatory diagram showing an example of a task graph. In FIG. 3, circles represent nodes. Arrows represent edges. The logical formula written inside the circle is the label of the node. The logical formula written next to the arrow is the label of the edge.
[0025] An arrow pointing from the outside to a node indicates that the node is the initial node. A double circle node indicates an end node. By tracing the edges from the initial node to the end node, you can see the steps to accomplish a task and the constraints at each stage.
[0026] Referring to FIG. 3, we will explain how a task graph represents the execution procedures and constraints of a task.
[0027] The initial node, node 1, has the label ¬b. ¬ means negation. Therefore, the label of this node expresses the negation of atomic proposition b, that is, the constraint that b must not be satisfied at present. Here, an atomic proposition is a proposition that is the smallest element (that cannot be decomposed any further) that makes up a logical formula.
[0028] The meaning of atomic proposition b varies from problem to problem. A commonly used example is that it represents an agent entering a specific area. In other words, when an agent enters a certain area, atomic proposition b is satisfied (b = True). In this case, the label ¬b of node 1 represents a no-entry constraint, meaning that the agent must not enter an area where b is satisfied.
[0029] In the example shown in Figure 3, there are two edges coming out from node 1. The label of the edge going to node 2 is a∧¬b (∧ means and). This label represents the intermediate goal of the agent reaching a state that satisfies a∧¬b. In the example shown in Figure 3, ¬b is already satisfied as a constraint of node 1, so essentially, it is sufficient that atomic proposition a is satisfied.
[0030] The label of node 2 is ¬b ∧ ¬e. That is, at this point, in addition to the previous constraint ¬b, constraint ¬e must also be met. The edge leaving node 2 points to node 3. The label of the edge pointing to node 3 is c ∧ ¬b. Since ¬b has already been met as a node constraint, c ∧ ¬b essentially represents the intermediate goal of satisfying atomic proposition c. Node 3 is the end node. Therefore, the above explanation has confirmed the execution procedure for accomplishing the task and the constraints at each stage. In other words, by following the path via node 2, we can see that the task can be completed by first achieving intermediate goal a while meeting constraint ¬b, and then achieving intermediate goal c while meeting constraint ¬b ∧ ¬e.
[0031] 3 also includes a path that goes directly from the initial node, Node 1, to the end node, Node 3. The fact that the task graph includes multiple paths means that the task can be completed according to the execution procedure (and constraints) indicated by either path. That is, the task can be completed by first achieving intermediate goal a and then intermediate goal c, as in the path that goes through Node 2, or by simultaneously achieving intermediate goals a and c, as in the path that goes directly to Node 3.
[0032] As an example, it is assumed that a task graph including complex constraints is input to the graph input unit 11. Fig. 4 is an explanatory diagram that schematically represents the example of the task shown in Fig. 3. Fig. 4 shows a grid map. An agent can move up, down, left, and right between grids represented by rectangles in Fig. 4. Also, in Fig. 4, s indicates the location of a switch, d indicates the location of a door, and g indicates the destination.
[0033] The task described with reference to FIG. 3 can be expressed using linear temporal logic as follows:
[0034] Fg∧G(s∨¬d) (1)
[0035] In formula (1), ∨ represents OR. F and G are symbols specific to temporal logic, meaning "someday" and "always," respectively. In other words, formula (1) represents the task of achieving g someday while always satisfying s∨¬d.
[0036] We will explain that equation (1) correctly expresses the constraints.
[0037] First, let us assume that atomic propositions s, d, and g are satisfied when an agent 101 (see Figure 1) exists in the corresponding grid. That is, d in s∨¬d means that entry to the location where door 102 is located is prohibited. However, as an exception, if s is satisfied, s∨¬d is satisfied regardless of whether d is satisfied. In other words, this means that if agent 101 is located at the location where switch 103 is, he will press switch 103 to open door 102, making the location where door 102 was located accessible. Note that we assume that agent 101 located at grid s (see Figure 4) always presses switch 103. Therefore, we can see that equation (1) correctly expresses the task including the constraints on door 102 and switch 103.
[0038] Using the technique described in Non-Patent Document 1, equation (1) is converted into the task graph shown in Fig. 5. The task graph shown in Fig. 5 correctly represents the execution procedure and constraints, but does not include intermediate tasks such as pressing switch 103 to open door 102 in order to resolve the constraints.
[0039] The graph input unit 11 may also receive a specification of which node is to be used as the base for adding a new node in the node adding unit 12. In other words, the graph input unit 11 may also receive an input of a list of base nodes.
[0040] The node addition unit 12 adds a new node corresponding to the input task graph constraint to the task graph. Specifically, for each node in the task graph, the node addition unit 12 adds a new node corresponding to the label of that node to the task graph. If the graph input unit 11 has received input of a list of original nodes, the node addition unit 12 adds a new node corresponding to the label of each input node to the task graph.
[0041] Next, the detailed procedure for adding a node will be described.
[0042] The node addition unit 12 first selects one source node in the input task graph. Then, the node addition unit 12 transforms the label (logical formula) of the source node into a prime additive normal form. The prime additive normal form is a format in which each term is connected with an AND and terms are connected with an OR. For example, when the logical formula (a∨b)∧(c∨¬d) is transformed into a prime additive normal form, it becomes (a∧c)∨(a∧¬d)∨(b∧c)∨(b∧¬d). Finally, the node addition unit 12 adds a new node to the graph for each term, whose label is the logical formula.
[0043] For example, if the prime additive normal form of the label of the original node is (a∧c)∨(a∧¬d)∨(b∧c)∨(b∧¬d), four new nodes are added to the task graph: one with label a∧c, one with label a∧¬d, one with label b∧c, and one with label b∧¬d. However, as an exception, when there is only one term, the node addition unit 12 may not need to add a new node. This is because, when there is only one term, the label of the new node and the original node will be the same, and there may be cases where there is no point in adding it.
[0044] As another example, consider the task graph shown in FIG. 5 and the input of [Node 1] to the task input unit as a list of nodes that will be the source of the added node. In this case, since Node 1 is the only node in the list, only Node 1 can be considered as the source node. Since the label s ∨ ¬d of Node 1 is already in prime additive normal form, the node adding unit 12 adds two nodes corresponding to each term, i.e., s and ¬d, to the task graph. The result of adding the nodes is shown in FIG. 6. In the task graph shown in FIG. 6, the newly added nodes that are the source nodes of Node 1 are Node 1A and Node 1B.
[0045] The edge adding unit 13 adds an edge to the task graph, connecting the new node added to the task graph with another node in the task graph. The edge adding unit 13 adds an edge, for example, in the following manner. However, the following processes 1) to 3) may be performed in any order. Furthermore, process 3) is optional and not required.
[0046] 1) The edge addition unit 13 adds an edge from the source node to the new node added based on that node. The label of the added edge is made the same as the label of the destination node. 2) For each edge (except for those added in process 1 above) leaving the source node, the edge addition unit 13 adds a new edge whose start point is the new node added based on that node and whose end point is the end point of the edge from the source node. The edge addition unit 13 makes the label of the new edge the same as the label of the edge leaving the source node. 3) The edge addition unit 13 adds an edge connecting new nodes added based on the same node. The edge addition unit 13 makes the label of the edge added in this process the same as the label of the destination node.
[0047] Each process will be described using the task graph shown in FIG. 6 as an example.
[0048] In process 1), the edge addition unit 13 adds edges directed toward new nodes 1A and 1B that were added based on node 1. The label of the edge is the same as the label of the destination node, so the label of the edge directed toward node 1A is s, and the label of the edge directed toward node 1B is ¬d. Figure 7 shows the result of adding edges in process 1).
[0049] In the process of 2), first, attention is paid to the edge going out from the original node 1, that is, the edge going from node 1 to node 2. Then, the edge adding unit 13 adds a new edge whose start point is the new node 1A added based on node 1 and whose end point is node 2, which is the end point of the edge. The label of the new edge is g^(s^|d), which is the same as the label of the edge going from node 1 to node 2. The edge adding unit 13 performs the same process for node 1B. Figure 8 shows the result of the edge being added in the process of 2).
[0050] As described above, the process of 3) is optional and not a required process. In particular, it is often unnecessary when two or fewer new nodes are added from one source node. The cases in which it is necessary will be described later. However, for the sake of explanation, it is assumed here that the edge addition unit 13 also performs the process of 3). In the process of 3), the edge addition unit 13 adds an edge connecting the new nodes added based on node 1, i.e., node 1A and node 1B. The label of the edge is assumed to be the same as the label of the destination node, so the label of the edge from node 1A to node 1B is ¬d, and the label of the edge from node 1B to node 1A is s. Figure 9 shows the result of adding edges in the process of 3).
[0051] The graph output unit 14 outputs a task graph in which new nodes and edges have been added to the task graph input to the graph input unit 11 by the node addition unit 12 and the edge addition unit 13. For example, when the task graph shown in Fig. 5 and the original node list [node 1] are input to the graph input unit 11, the task graph shown in Fig. 8 or 9 is output.
[0052] Next, the operation of the information processing device 10 will be described with reference to the flowchart of Fig. 10. Fig. 10 is a flowchart showing an example of the operation of the information processing device 10.
[0053] First, the graph input unit 11 receives input of a task graph and a list of original nodes (step S11).
[0054] Next, the node adding unit 11 transforms the label of each node in the input task graph or each node in the input list of original nodes into a prime additive normal form (step S12). Furthermore, the node adding unit 11 adds new nodes to the task graph corresponding to each term connected by OR in the prime additive normal form (step S12).
[0055] Furthermore, the edge adding unit 13 adds an edge connecting the new node added by the node adding unit 12 to another node in the task graph (step S13).
[0056] Then, the graph output unit 14 outputs a task graph including the new nodes and edges added to the input task graph by the node adding unit 12 and the edge adding unit 13 (step S14).
[0057] The information processing device of this embodiment can convert a task graph including complex constraints into a task graph that is easier to understand intuitively and that includes intermediate goals for solving the constraints.
[0058] This effect will be explained using a specific example. The task graph shown in FIG. 5 does not include an intermediate goal of pressing switch 103 to open door 102 (see FIG. 3) that blocks the path in order to reach the destination. When this task graph is input to information processing device 10, the task graph shown in FIG. 8 or 9 is output. The output task graph includes a path from node 1 to node 2 via node 1A. This path represents a work procedure including an intermediate goal for solving constraints, in which one agent 101 first goes to press switch 103, then leaves switch 103 pressed, and another agent 101 heads toward the destination. That is, it can be seen that the information processing device 10 of this embodiment can obtain a task graph including an intermediate goal for solving constraints.
[0059] In the following, an example will be given in which the information processing device 10 is used as a behavior planning device that creates behavior plans for a plurality of agents (robots, as an example).
[0060] The above effects not only make the task graph easier to understand intuitively, but also contribute to reducing the calculation time when calculating specific action plans for multiple robots.
[0061] Take the task graph shown in FIG. 5 as an example. In the method described in Non-Patent Document 3, a brute-force search is performed to resolve constraints based on the task graph shown in FIG. 5. That is, for example, when there are two robots, a brute-force search is performed to find combinations of the movements of each robot when moving up, down, left, and right. The combinations, i.e., the search space, exponentially increase with the number of robots. As a result, the calculation time becomes long.
[0062] Nevertheless, one of the reasons why the method described in Non-Patent Document 3 performs a brute force search is that even if a plan is made for each robot, it is often impossible to obtain an action plan that accomplishes the task from a task graph such as that shown in FIG. 5.
[0063] For example, in the task graph shown in FIG. 5, it is assumed that an action plan is planned for each robot to achieve a path from node 1 to node 2. It is also assumed that planning is performed each time the robot moves to a different node. It is also assumed that an action plan is planned so that each robot achieves an intermediate goal that has not yet been achieved. It is also assumed that the two robots are initially located at the positions shown in FIG. 11.
[0064] In this case, one robot is first selected. Then, since s∨→d is already satisfied by the constraint of node 1, an action plan is created to achieve the intermediate goal g. However, in this situation, door 102 (see Figure 3) is closed. An action plan cannot be created for this robot to achieve the intermediate goal. Next, even if an action plan is created in the same way for the other robot, an action plan that achieves the intermediate goal cannot be created either. In other words, an action plan that achieves the task cannot be obtained.
[0065] Next, assume that the specific actions of a robot that achieves a path from node 1 to node 2 via node 1A in the task graph shown in Figure 8 or 9 are planned in the same way. First, when moving from node 1 to node 1A, intermediate goal s must be achieved. When one robot is selected and an action to achieve intermediate goal s is planned, this movement is not blocked by door 102, so an action plan can be obtained without any problems.
[0066] Next, when moving from node 1A to node 2, intermediate goal s has already been satisfied due to the constraints of node 1A, so intermediate goal g must be achieved. One robot is selected and an action to achieve intermediate goal g is planned.
[0067] In this case, if the robot that achieved intermediate goal s when moving from node 1 to node 1A is selected again, this robot will not be able to achieve intermediate goal g. This is because if this robot moves from grid s (see FIG. 11, where s is a grid), the constraint will no longer be satisfied. In other words, this robot will continue to stay on grid s. In other words, the robot needs to continue pressing switch 103.
[0068] Next, when another robot is selected, there are no constraints on this robot because constraint s has already been satisfied. Therefore, an action plan for this robot to achieve intermediate goal g can be created without any problems. Through the above process, it can be seen that, according to the task graph shown in Figure 8 or 9, a specific action plan that can achieve the task can be obtained even if a plan is created for each robot.
[0069] When using a general method, the calculation time required to search for combinations of actions for multiple robots increases exponentially, whereas in this embodiment, the calculation time required to search for actions for multiple robots individually is kept within polynomial time. In other words, even if the number of robots increases, the amount of calculation does not exponentially explode, and calculation time can be reduced. As described above, this embodiment also contributes to reducing calculation time when calculating specific action plans for robots, etc.
[0070] Furthermore, in this embodiment, even when there are multiple complex constraints, it is possible to output a task graph including intermediate tasks for resolving the multiple constraints. As an example, assume the situation shown in Figure 12. The task is expressed using linear temporal logic as shown in equation (2).
[0071] Fg ∧ G (s 1 ∨¬d 1 ) ∧(s 2 ∨¬d 2 ) (2)
[0072] (2) There are two doors and two switches. 1 is switch s 1 Press to open the door. 2 is switch s 2It represents a task to go to destination g under the condition that it opens when pressed.
[0073] When formula (2) is converted into a task graph by the method described in Non-Patent Document 1, the task graph shown in FIG. 13 is obtained.
[0074] When the information processing device of this embodiment receives the task graph shown in Fig. 13, it outputs the task graph shown in Fig. 14. This task graph is the task graph when the edge adding unit 13 performs the process 3). The task graph shown in Fig. 14 includes a path from node 1 to node 1B to node 1A to node 2.
[0075] This path represents a procedure that includes intermediate steps to resolve multiple constraints. First, one robot moves to switch s 1 Press the door 1 Next, one robot opens the switch s 1 Press and hold the other robot until it switches on 2 Press the door 2 Finally, there are multiple constraints: two robots hold down both switches while a third robot moves towards destination g.
[0076] As described above, even when multiple complex constraints exist, the edge addition unit 13 can perform the process 3) above to output a task graph including intermediate tasks that resolve those constraints.
[0077] The task graph output by the graph output unit 14 can be regarded as a behavior plan for multiple agents. That is, the graph output unit 14 can output a graph to which nodes and edges have been added as a behavior plan. The information processing device may control multiple agents in accordance with the behavior plan.
[0078] Fig. 15 is a block diagram showing an example of the configuration of an information processing system (computer) that can realize an information processing device. The information processing system shown in Fig. 15 includes a processor 701 such as a CPU (Central Processing Unit), a program memory 702, and a storage medium 703. The storage medium can be a semiconductor memory such as a flash ROM (Read Only Memory) or a magnetic storage medium such as a hard disk.
[0079] In the information processing system, a program memory 702 stores a program (information processing program) for realizing the functions of the information processing device 10 shown in the above embodiment.
[0080] The processor 701 then executes processing in accordance with the program stored in the program memory 702, thereby realizing the functions of the graph input unit 11, node addition unit 12, edge addition unit 13, and graph output unit 14 in the information processing device 10 shown in the embodiment.
[0081] At least the program memory 702 is a non-transitory computer-readable medium. However, the program may be stored in various types of transitory computer-readable medium. The program is supplied to the transitory computer-readable medium, for example, via a wired or wireless communication channel, i.e., via an electrical signal, an optical signal, or an electromagnetic wave.
[0082] Fig. 16 is a block diagram showing the main parts of an information processing device. The information processing device 100 shown in Fig. 16 is an information processing device including a computer, and the computer includes graph input means 101 (realized by the graph input unit 11 in the embodiment) that accepts input of a graph representing procedures and constraints for executing a task, node addition means 102 (realized by the node addition unit 12 in the embodiment) that adds new nodes corresponding to each node of the input graph to the graph, edge addition means 103 (realized by the edge addition unit 13 in the embodiment) that adds edges connecting the added nodes to other nodes of the graph to the graph, and graph output means 104 (realized by the graph output unit 14 in the embodiment) that outputs the graph to which the nodes and edges have been added.
[0083] Although part or all of the above-described embodiments can be described as follows, the present invention is not limited to the following configurations.
[0084] (Supplementary Note 1) An information processing device including a computer, the information processing device comprising: graph input means for accepting input of a graph representing procedures and constraints for executing a task; node addition means for adding new nodes to the graph corresponding to each node of the input graph; edge addition means for adding edges to the graph connecting the added nodes to other nodes of the graph; and graph output means for outputting the graph to which the nodes and edges have been added.
[0085] (Supplementary Note 2) The information processing device described in Supplementary Note 1, wherein the node addition means transforms a logical expression corresponding to the constraint of the selected original node into a prime additive normal form, and adds nodes corresponding to each term of the transformed prime additive normal form to the graph.
[0086] (Supplementary Note 3) The device according to Supplementary Note 1 or Supplementary Note 2, wherein the edge addition means adds an edge based on the following processes 1) and 2), or based on the processes 1), 2), and 3): 1) Add an edge from the source node to the new node added based on that node, and make the label of the added edge the same as the label of the destination node. 2) For each edge (other than the edge added in process 1) above) leaving the source node, add a new edge with the new node added based on that node as its start point and the end point of the edge from the source node as its end point, and make the label of the new edge the same as the label of the edge leaving the source node. 3) Add an edge connecting new nodes added based on the same node, and make the label of the edge added in this process the same as the label of the destination node.
[0087] (Supplementary Note 4) The information processing device according to any one of Supplementary Notes 1 to 3, wherein the edge adding means sets a label representing an intermediate goal to the edge.
[0088] (Supplementary Note 5) An information processing device that formulates an action plan for a plurality of agents, the information processing device according to any one of Supplementary Note 1 to Supplementary Note 4, wherein the graph output means outputs a graph to which nodes and edges have been added as the action plan.
[0089] (Supplementary Note 6) An information processing method executed by a computer, comprising: accepting input of a graph representing procedures and constraints for executing a task; adding new nodes to the graph corresponding to each node in the input graph; adding edges to the graph connecting the added nodes to other nodes in the graph; and outputting the graph with the added nodes and edges.
[0090] (Appendix 7) An information processing program for causing a computer to execute the following processes: accepting input of a graph representing procedures and constraints for executing a task; adding new nodes to the graph corresponding to each node in the input graph; adding edges to the graph connecting the added nodes to other nodes in the graph; and outputting the graph with the added nodes and edges.
[0091] Although the present invention has been described above with reference to the embodiments, the present invention is not limited to the above-described embodiments. Various modifications that can be understood by those skilled in the art can be made to the configuration and details of the present invention within the scope of the present invention.
[0092] REFERENCE SIGNS LIST 10 Information processing device 11 Graph input unit 12 Node addition unit 13 Edge addition unit 14 Graph output unit 101 Agent 102 Door 103 Switch 104 Destination 100 Information processing device 101 Graph input means 102 Node addition means 103 Edge addition means 104 Graph output means 701 Processor 702 Program memory 703 Storage medium
Claims
1. An information processing device including a computer, the information processing device comprising: graph input means for accepting input of a graph representing procedures and constraints for executing a task; node addition means for adding new nodes to the graph corresponding to each node of the input graph; edge addition means for adding edges to the graph connecting the added nodes to other nodes of the graph; and graph output means for outputting the graph to which the nodes and edges have been added.
2. The information processing device according to claim 1, wherein the node addition means transforms the logical expression corresponding to the constraint of the selected original node into a prime additive normal form, and adds nodes corresponding to each term of the transformed prime additive normal form to the graph.
3. The device according to claim 2, wherein the edge addition means adds edges based on the following processes 1) and 2), or 1), 2), and 3): 1) adds an edge from the source node to the new node added based on that node, and sets the label of the added edge to the same as the label of the destination node; 2) for each edge (other than the edge added in process 1) leaving the source node, adds a new edge with the new node added based on that node as its start point and the end point of the edge from the source node as its end point, and sets the label of the new edge to the same as the label of the edge leaving the source node; 3) adds an edge connecting new nodes added based on the same node, and sets the label of the edge added in this process to the same as the label of the destination node.
4. The information processing apparatus according to claim 1, wherein said edge adding means sets a label representing an intermediate goal to the edge.
5. An information processing device for formulating an action plan for a plurality of agents, the information processing device according to any one of claims 1 to 4, wherein the graph output means outputs a graph to which nodes and edges have been added as the action plan.
6. An information processing method executed by a computer, which receives input of a graph representing procedures and constraints for executing a task, adds new nodes to the graph corresponding to each node in the input graph, adds edges to the graph connecting the added nodes to other nodes in the graph, and outputs the graph with the added nodes and edges.
7. An information processing program that causes a computer to perform the following processes: accepting input of a graph that represents procedures and constraints for executing a task; adding new nodes to the graph that correspond to each node in the input graph; adding edges to the graph that connect the added nodes to other nodes in the graph; and outputting the graph with the added nodes and edges.
Citation Information
Patent Citations
Heterogeneous platform task scheduling method based on critical path
CN117130743A
Failure analyzing system
JP1992302364A