Route planning device

The path planning device optimizes paths for robots with and without goals by using a modified CBS algorithm, addressing conflicts and deadlocks, and minimizing time and distance, with visual display of post-goal movements.

JP7845192B2Active Publication Date: 2026-04-14SONY GROUP CORP
View PDF 1 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
SONY GROUP CORP
Filing Date
2021-11-12
Publication Date
2026-04-14

AI Technical Summary

Technical Problem

Existing path planning technologies for multiple moving objects, such as robots, fail to account for robots without a goal, leading to difficulties in planning optimal paths when not all robots have a defined objective, resulting in unresolvable conflicts and deadlocks.

Method used

A path planning device that considers both robots with and without goals, planning their behaviors until all goal-oriented robots reach their objectives, and optimizes paths by incorporating secondary scores for movements without goals and after reaching goals, using a modified CBS algorithm to minimize total time and distance.

Benefits of technology

Enables the planning of optimal paths for multiple robots, including those without goals, reducing conflicts and deadlocks, minimizing total time, and optimizing power usage by eliminating unnecessary movements, while providing visual display of post-goal movements.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007845192000001
    Figure 0007845192000001
  • Figure 0007845192000002
    Figure 0007845192000002
  • Figure 0007845192000003
    Figure 0007845192000003
Patent Text Reader

Abstract

A path planning device of the present disclosure comprises: an input unit for receiving an input of information to be used for path planning, for all of a plurality of mobile objects existing in an environment subject to path planning, the plurality of mobile objects including at least one first mobile object having a goal, and at least one second mobile object having no goal; and a planning unit for planning, on the basis of the information input to the input unit, behaviors until the first mobile object reaches the goal, for all of the plurality of mobile objects.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to a path planning device for planning the movement paths of a plurality of moving objects.

Background Art

[0002] There is a technology for performing path planning of a plurality of moving objects (such as robots) (see Non-Patent Documents 1 and 2). Generally, in the technology for performing path planning of a plurality of moving objects, it is premised on assigning goals to all robots.

Prior Art Documents

Non-Patent Documents

[0003]

Non-Patent Document 1

Non-Patent Document 2

Summary of the Invention

[0004] When actually operating a system using a plurality of moving objects, not all moving objects necessarily always have a goal. For this reason, for example, when there is a moving object without a goal, it becomes difficult to plan an optimal path.

[0005] It is desirable to provide a route planning device capable of planning the optimal route for multiple moving objects.

[0006] A path planning device according to one embodiment of the present disclosure includes a plurality of moving objects present in an environment subject to path planning, comprising at least one first moving object having a goal and at least one second moving object not having a goal. body Therefore, an input unit that accepts input of information used for route planning, and based on the information entered into the input unit, multiple moves body The system also includes a planning unit that plans the behavior of the first moving object until the time it reaches the goal. In a path planning device according to one embodiment of the present disclosure, the planning unit plans the behavior of multiple first moving objects up to the time when all of the multiple first moving objects have reached the goal, and if at least one of the multiple first moving objects has reached the goal before the time when all of the multiple first moving objects have reached the goal, the planning unit plans the behavior of the portion of the first moving objects after reaching the goal until the time when all of the multiple first moving objects have reached the goal. Furthermore, if there are multiple first moving objects, the planning unit may plan the behavior of each of the multiple first moving objects until the time when all of them have reached the goal, and plan the time-optimal behavior so that the time when all of the multiple first moving objects reach the goal is minimized.

[0007] In one embodiment of the present disclosure, a path planning device plans the behavior of all of a plurality of moving bodies, including at least one first moving body with a goal and at least one second moving body without a goal, up to the time when the first moving body reaches the goal, based on information about all of the plurality of moving bodies. [Brief explanation of the drawing]

[0008] [Figure 1] This is a diagram illustrating the outline of the path planning method used in the comparative example. [Figure 2] This is a schematic diagram illustrating the first example of the problems with the path planning method related to the comparative example and an example of its improvement. [Figure 3] This is a schematic diagram illustrating a second example of the problems with the path planning method in the comparative example and an example of its improvement. [Figure 4] This is a block diagram schematically showing an example configuration of a route planning device according to the first embodiment of the present disclosure. [Figure 5] This flowchart shows an example of the overall processing flow of the route planning device according to the first embodiment. [Figure 6] Figure 5 is a flowchart showing an example of a detailed processing flow for step S16. [Figure 7]This flowchart shows an example of the processing flow following process A in Figure 6. [Figure 8] This is a schematic explanatory diagram illustrating an example of the initial state of the user interface screen of the display unit of the route planning device according to the first embodiment. [Figure 9] Figure 8 is a schematic explanatory diagram illustrating a first display example in which the route plan planned by the route planning unit is displayed on the user interface screen shown. [Figure 10] This is a schematic explanatory diagram illustrating a second display example in which the route plan planned by the route planning unit is displayed on the user interface screen shown in Figure 8. [Figure 11] This is a schematic explanatory diagram illustrating a third display example in which the route plan planned by the route planning device is displayed on the user interface shown in Figure 8. [Figure 12] This is a schematic block diagram showing an example of a system to which the route planning device according to the first embodiment is applied. [Modes for carrying out the invention]

[0009] The embodiments of this disclosure will be described in detail below with reference to the drawings. The description will be given in the following order. 0. Comparative Examples (Figures 1-3) 1. First Embodiment (Figures 4-12) 1.1 Configuration 1.2 Operation 1.3 Application Examples 1.4 Effects 2. Other Embodiments

[0010] <0. Comparative Example> (Overview of the path planning method used in the comparative example) One of the important functions of a self - moving robot is path planning. Path planning is to calculate, using a map of the surrounding environment, what path a robot should take to reach the goal point. Also, calculating the paths of multiple robots simultaneously is called multi - robot path planning. In the case of multi - robot path planning, since it is necessary to search for a path that does not conflict with other robots, the calculation becomes significantly more complex than that of a single - robot path planning. Conflict means that due to collisions or deadlocks between multiple robots, the robot cannot reach the goal.

[0011] One of the methods of multi - robot path planning is CBS (Conflict - Based Search). This is a search - based method devised by Sharon, et al. in 2012, which can find an optimal solution where multiple robots do not conflict with each other (see Non - Patent Document 1). Generally, an optimal solution is a path where the total time for a robot to reach the goal is minimized.

[0012] Figure 1 shows an overview of the CBS algorithm as an example of a path - planning method according to a comparative example.

[0013] CBS starts from the shortest path of each robot (without considering the presence of other robots) and resolves conflicts between multiple robots one by one, and finally obtains an optimal solution without conflicts. In CBS, this is achieved by expanding a binary tree called a constraint tree to search for a solution.

[0014] Consider, for example, the graph consisting of vertices S1, S2, A1, A2, …, A m , B1, B, …, B m , C, G1, G2 shown in Figure 1(i). Vertices S1 and S2 are the start points of robots 1 and 2 respectively, and G1 and G2 are the goal points of robots 1 and 2 respectively.

[0015] Furthermore, robots 1 and 2 move along one edge at each time step. At this time, the constraint tree will look like Figure 1(ii). Each node in the constraint tree consists of (1) a set of constraints (constraints in Figure 1(ii)), (2) a set of paths for each robot (solution in Figure 1(ii)), and (3) the total cost (cost in Figure 1(ii)).

[0016] First, the root node is the shortest path for each robot without constraints, so robot 1's path is S1→A1→C→G1 and robot 2's path is S2→B1→C→G2. Here, robot 1 and robot 2 compete at vertex C in the second step, so we create a child node with a constraint that prevents them from reaching vertex C in the second step. In this case, two child nodes are created, one with a constraint on robot 1 and one with a constraint on robot 2. The constraint is expressed as (1) the target robot, (2) the unreachable vertex, and (3) the number of steps. The constraint shown in the lower left of Figure 1(ii): {(1,C,2)} is the constraint that robot 1 must not reach vertex C in the second step.

[0017] In the child node, the shortest path for each robot is recalculated, taking the constraints into account. For example, in the child node shown in the lower left of Figure 1(ii), the constraint causes robot 1 to wait one step at vertex A1 (S1→A1→A1→C→G1). This resolves the previous conflict. Because of the one step added by waiting, the total cost is 1 higher than that of the parent node. By repeating this operation, a combination of paths without conflicts is eventually found. Furthermore, by expanding from the node with the smallest total cost, the first combination of paths without conflicts found becomes the optimal solution (= the solution with the smallest cost).

[0018] The CBS algorithm can be summarized as follows: 1. Find the shortest path for each robot. 2. Detect competition between multiple robots. 3. Create child nodes with constraints that prevent conflicts. 4. Calculate the path for each robot that satisfies the constraints, and determine the cost. 5. Repeat steps 2-4 for the node with the lowest cost. 6. The process ends when a node without conflicts appears.

[0019] Searching a constraint tree is called a high-level search. On the other hand, the pathfinding for each robot based on the constraints described in section 4 above is called a low-level search. In a low-level search, the shortest path is searched for for each robot using the A* algorithm. At this time, paths that do not satisfy the constraints are excluded from the list of possible solutions. To reiterate, in a low-level search, only the constraints are considered, and the paths of other robots are not taken into account at all. By extending the constraint tree in this way, it is eventually possible to search all possible path patterns. In other words, if a solution (a set of non-conflicting paths) exists, it will always be found. Therefore, CBS can be said to be an optimal algorithm with completeness.

[0020] (Challenges and examples of improvements) Conventional multi-robot path planning algorithms, including the aforementioned CBS, assume that all robots are assigned a goal. However, in actual operation of a mobile system using multiple robots, not all robots always have a goal. For example, consider the cases shown in Figures 2 and 3 below.

[0021] Figure 2 schematically illustrates the first example of the problems with the route planning method of the comparative example and an example of its improvement. Figure 3 schematically illustrates the second example of the problems with the route planning method of the comparative example and an example of its improvement.

[0022] In Figures 2 and 3, it is assumed that robots 1 and 2 can move to any of vertices A1, A2, A3, or A4. In Figures 2 and 3, the left side shows the path planning method for the comparative example, and the right side shows an improved example employing the technology of this disclosure, which will be described later.

[0023] First, Figure 2 shows a situation where, at the start, robot 1 is at vertex A1, robot 2 is at vertex A2, robot 1's goal point G1 is at vertex A3, and robot 2 has no goal. In the path planning method of the comparative example, as shown on the left side of Figure 2, robot 1 cannot reach goal point G1 due to the presence of robot 2, which has no goal. However, if robot 2, which has no goal, moves to vertex A4, as shown in the improved example on the right side of Figure 2, robot 1 can reach goal point G1.

[0024] Next, Figure 3 shows a situation where, at the start, robot 1 is at vertex A1, robot 2 is at vertex A3, and the goal points G1 and G2 for both robots 1 and 2 are the same vertex A2. In the path planning method of the comparative example, as shown on the left side of Figure 3, no solution is found when the same goal is assigned to multiple different robots. This is because the competition at the goal points cannot be resolved. However, as shown in the improved example on the right side of Figure 3, if the robot that reaches the goal first (robot 1 in the example on the right side of Figure 3) is moved to a different location after reaching the goal, both robots 1 and 2 can reach the goal.

[0025] Thus, the path planning method in the comparative example does not take into account "movement of a robot without a goal" or "movement after reaching the goal," resulting in patterns where a path cannot be planned. In contrast, the embodiment employing the technology of this disclosure, described later, makes it possible to plan an optimal path including "movement of a robot without a goal" and "movement after reaching the goal."

[0026] As another comparative example, the algorithm proposed by Grenouilleau, et al. allows a robot to be given a sequence of multiple goals and calculate the solution (see Non-Patent Document 2). However, this algorithm does not consider "movement of a robot without a goal" or "movement after reaching a goal," and merely adjusts the order in which multiple robots reach their goals. Therefore, the technology of this disclosure, described later, can find the optimal solution over a wider range.

[0027] <1. First Embodiment> The following explanation uses the example of a mobile body being a robot, but the technology disclosed herein is also applicable to mobile bodies other than robots.

[0028] [1.1 Structure] (overview) First, we will describe the differences between the path planning algorithm in the comparative example described above and the path planning algorithm of the path planning device in the first embodiment. Unlike the comparative example, the path planning device in the first embodiment plans not only the movement of a robot without a goal, but also the movement after reaching the goal. To achieve this, the following novel processing is added to the path planning algorithm in the comparative example.

[0029] 1. Information about all robots present in the environment targeted for path planning, including robots without goals, is input as information to be used for path planning. For example, as location information, robots with goals input the start point (current location) and goal location, while robots without goals input only the current location. Note that in the path planning method related to the comparative example, only information about robots with goals is input as information to be used for path planning.

[0030] 2. For all robots present in the environment targeted for path planning, the behavior (movement, waiting, etc.) is planned until all robots with a goal reach their goal. Robots without a goal or robots that reach the goal early are planned to either "wait in place" or "move somewhere else" until other robots reach the goal. Regardless of whether a robot has a goal or not, all robots are designed to avoid conflict until the end of the plan (=the time when all robots with a goal reach their goal). Note that the path planning method in the comparative example only plans the behavior (of the robot itself) until it reaches its own goal.

[0031] 3. Movements of robots without a goal and movements after reaching a goal should not contribute to the optimality of the plan (total time to reach the goal). For these movements, the optimal path is searched using a separate score (secondary score) from the normal score (= time to reach the goal: primary score). The secondary score is the distance traveled. In other words, the optimal solution for these movements is to wait in place. Only when it is necessary to move from the goal point will the plan be to move the minimum distance.

[0032] 4. Enter the stop time at the goal point into the path plan. After reaching the goal, the robot will be planned to stop for the specified time before moving again. This is based on the estimated time required for the task to be performed at the goal point. Similarly, the stop time at the starting point can also be entered into the path plan. The robot will be planned to stop for the specified time before starting to move again. This is based on the assumption that there is a robot in the middle of a task and the remaining time required for the task is specified.

[0033] • Definition of the goal In typical use cases, the robot performs a predetermined task (such as loading or unloading cargo) after reaching the goal. In the first embodiment, "goal" means reaching the goal and being ready to perform the predetermined task. "Goal achieved" means reaching the goal and having completed the predetermined task. In other words, reaching the goal does not necessarily mean that the robot has reached the goal and is considered "goal achieved." It is possible that the robot may pass the goal, return to the goal, and perform the predetermined task there, and such events are also taken into consideration in the path planning. However, the technology of this disclosure is also applicable when simply reaching the goal means achieving the goal without performing a predetermined task.

[0034] (Example configuration) Figure 4 schematically shows an example configuration of a route planning device according to the first embodiment of this disclosure.

[0035] The route planning device according to the first embodiment includes a robot information input unit 10, a route planning unit 11, a display unit 12, a robot control unit 13, and a communication unit 14.

[0036] The path planning device according to the first embodiment may consist of, for example, a computer terminal equipped with a CPU (Central Processing Unit), ROM (Read Only Memory), and RAM. In this case, the processing performed by the path planning unit 11 and the robot control unit 13 may be executed by the CPU.

[0037] The path planning device according to the first embodiment plans the paths of a plurality of robots 15. The plurality of robots 15 may include at least one robot R10 (R11, R12, ..., R1n) that has a goal and at least one robot R20 (R21, R22, ..., R2m) that does not have a goal. Note that the robots R10 with a goal and the robots R20 without a goal among the plurality of robots 15 do not need to be predetermined, and the robots R10 with a goal and the robots R20 without a goal may be changed each time path planning is performed. Robot R10, which has a goal, corresponds to one specific example of the "first mobile body" in the technology of this disclosure. Robot R20, which does not have a goal, corresponds to one specific example of the "second mobile body" in the technology of this disclosure.

[0038] The robot information input unit 10 includes, for example, a keyboard or pointing device, and accepts various types of information input from the user. The robot information input unit 10 may also accept various types of information input from a higher-level system. For example, in the application example shown in Figure 12, which will be described later, it may accept various types of information input from the MCS 22. The robot information input unit 10 accepts input of information used for path planning (robot information) for all of the multiple robots 15 present in the environment that are the target of path planning, including robot R10 with a goal and robot R20 without a goal. The robot information input unit 10 outputs robot information for all of the multiple robots 15 present in the environment (regardless of whether they have a goal or not) to the path planning unit 11. The robot information includes, for example, at least one piece of information from the following: the current position, orientation, starting point of movement, goal point, stopping time at the starting point, and stopping time at the goal point for each robot 15. The robot information input unit 10 corresponds to one specific example of the "input unit" in the technology of this disclosure.

[0039] The path planning unit 11 plans the behavior of all of the multiple robots 15 up to the time when robot R10, which has a goal, reaches the goal, based on the robot information input to the robot information input unit 10. The path planning unit 11 uses the algorithm described in the overview above to plan the paths of all robots 15 and outputs the path plan to the robot control unit 13. The path plan here includes the movement plans of each of the multiple robots 15 at each time point up to the end of the path planning. The route planning unit 11 corresponds to one specific example of the "planning unit" in the technology of this disclosure.

[0040] The path planning unit 11 plans the optimal behavior of each of the multiple robots 15 so that they do not compete with each other until the time when robot R10, which has a goal, reaches the goal. The path planning unit 11 sets the time when robot R10, which has a goal, reaches the goal point and performs a predetermined task as the time when robot R10, which has a goal, reaches the goal.

[0041] The path planning unit 11 plans the behavior of all the robots 15 until all of the robots R10 with goals have reached the goal, in the case of multiple robots R10 with goals. In this case, the path planning unit 11 plans the time-optimal behavior so that the time when all of the robots R10 with goals have reached the goal is minimized.

[0042] Furthermore, if there are multiple robots R10 with goals, and at least one of the robots R10 with goals has reached the goal before the time when all of the robots R10 with goals have reached the goal, the path planning unit 11 plans the post-goal behavior of the robots 15 that have reached the goal until the time when all of the robots R10 with goals have reached the goal. In this case, the path planning unit 11 may plan the distance-optimal behavior of the robots R20 without goals and the post-goal behavior of the robots 15 that have reached the goal, so as to minimize the distance traveled.

[0043] The display unit 12 is composed of, for example, a display and shows information indicating the behavior of all of the multiple robots planned by the path planning unit 11. The display unit 12 displays, for example, a user interface (UI) screen as shown in Figures 8 to 11, which will be described later.

[0044] The robot control unit 13 generates robot control information (such as "move to XX" or "stop") based on the path plan generated by the path planning unit 11, and outputs this robot control information to the communication unit 14.

[0045] The communication unit 14 transmits robot control information from the robot control unit 13 to the robot 15 via a communication network such as the Internet or a LAN (Local Area Network). Alternatively, the communication unit 14 and the robot 15 may communicate directly without using a communication network.

[0046] The robot 15 moves based on robot control information from the communication unit 14.

[0047] [1.2 Operation] Figure 5 is a flowchart showing an example of the overall processing flow of the route planning device according to the first embodiment.

[0048] The route planning device according to the first embodiment is based on the CBS algorithm, which is a route planning method according to the comparative example described above, and incorporates extended processing using the algorithm described in the overview above. First, the general flow of the processing will be explained with reference to Figure 5. Of the processing shown in Figure 5, the processing in step S10 and the specific processing in step S16 differ from that of the CBS algorithm.

[0049] First, robot information for all robots 15 present in the environment to be planned is input to the path planning unit 11 via the robot information input unit 10 (step S10). Next, the path planning unit 11 searches for the optimal path for each robot 15 as a root node and calculates the cost (step S11). Next, the path planning unit 11 selects the node with the smallest score (step S12). Next, the path planning unit 11 detects path conflicts among the multiple robots 15 (step S13).

[0050] Next, the route planning unit 11 determines whether or not there are route conflicts (step S14). If it determines that there are no route conflicts (step S14; N), the route planning unit 11 terminates the process.

[0051] On the other hand, if it determines that there is a conflict in the paths (step S14; Y), the path planning unit 11 then creates child nodes with constraints that prevent conflict (step S15). Next, the path planning unit 11 searches for the optimal path that satisfies the constraints, calculates a score (step S16), and returns to the process in step S11. In step S16, path planning is performed for any one robot 15.

[0052] Figure 6 is a flowchart showing an example of a detailed processing flow for step S16 in Figure 5. Figure 7 is a flowchart showing an example of the processing flow following process A in Figure 6.

[0053] The processes shown in Figures 6 and 7 include all of the processing performed by the algorithm described in the overview above. Figures 6 and 7 are flowcharts for path planning for any one robot 15.

[0054] First, the route planning unit 11 adds the start time and the state of the robot 15 at the starting point to the route candidates (step S101). The state of the robot 15 refers to, for example, the orientation and position of the robot 15. Next, the route planning unit 11 determines whether or not a stop time at the starting point is specified (step S102). If it determines that no stop time at the starting point is specified (step S102; N), the route planning unit 11 then proceeds to step S104. On the other hand, if it determines that a stop time at the starting point is specified (step S102; Y), the route planning unit 11 then advances the start time by the specified amount (step S103).

[0055] Next, the path planning unit 11 selects the candidate with the smallest primary score among the unexplored candidates (step S104). Next, the path planning unit 11 determines whether the robot 15 to be path planned has already reached the goal or whether the robot 15 does not have a goal (step S105).

[0056] If the path planning unit determines that the robot 15 being planned has already reached the goal, or that the robot 15 does not have a goal (step S105; Y), the path planning unit 11 then determines whether the end time has been reached (step S112). The end time here refers to the time when all robots R10 that have goals have reached the goal. If the path planning unit 11 determines that the end time has been reached (step S112; Y), the path planning unit 11 terminates the process.

[0057] On the other hand, if it is determined that the end time has not been reached (step S112; N), the path planning unit 11 then determines whether the robot 15, which is the subject of the path planning, can wait at its current location until the end time (step S113). If it is determined that the robot can wait at its current location until the end time (step S113; Y), the path planning unit 11 terminates the process. On the other hand, if it is determined that the robot cannot wait at its current location until the end time (step S113; N), the path planning unit 11 then creates candidates for movement to nearby vertices (excluding those that do not satisfy the constraints) (step S114). Next, the path planning unit 11 adds the movement distance to the secondary score among the created candidates (step S115) and returns to the process in step S104.

[0058] Furthermore, in step S105 described above, if it is determined that the robot 15 subject to path planning has not reached the goal, or that the robot 15 has a goal (step S105;N), the path planning unit 11 then determines whether the robot 15 subject to path planning is at the goal location (step S106). If it is determined that the robot 15 subject to path planning is not at the goal location (step S106;N), the path planning unit 11 then creates candidates for the robot 15 subject to path planning to move to a nearby vertex, or for the robot 15 subject to waiting in place (excluding those that do not satisfy the constraints) (step S107). Next, the path planning unit 11 adds the movement time or waiting time of the robot 15 subject to path planning to the primary score of the created candidates (step S108).

[0059] On the other hand, if the path planning unit determines that the robot 15, which is the subject of path planning, is at the goal (step S106; Y), the path planning unit 11 then creates a candidate for a completed goal (leaving the original candidate) (step S109). Next, the path planning unit 11 determines whether or not a stop time at the goal for the robot 15, which is the subject of path planning, is specified (step S110). If it determines that no stop time at the goal is specified (step S110; N), the path planning unit 11 then proceeds to step S107. On the other hand, if it determines that a stop time at the goal is specified (step S110; Y), the path planning unit 11 then advances the time of the completed goal candidate by the specified time (step S111) and proceeds to step S107.

[0060] In step S109, when creating a candidate that has reached the goal, the candidate selected in step S104 is kept, and a new candidate marked as having reached the goal is created along the same path as the selected candidate. The reason for keeping the original candidate here is to consider paths that pass through the goal and then return to it, as mentioned earlier. In step S107, which follows step S109 or step S111, the "original candidate" selected in the preceding step S104 is moved to a nearby vertex. The candidate newly created in step S109 is selected in the subsequent steps of step S104, and the processing until the end is carried out.

[0061] (User Interface) Next, we will describe an example of a UI screen that takes advantage of the features of the path planning algorithm by the path planning device according to the first embodiment. As mentioned above, a major feature of this algorithm is that it plans the movement of robot R10, which has a goal, even after it reaches the goal, and also plans the movement of robot R20, which does not have a goal. Therefore, we consider a UI screen that not only shows the path to the goal point, but also displays the path of robot R10 after it reaches the goal, and the path of robot R20, which does not have a goal.

[0062] The display unit 12 (Figure 4) may display the behavior of robot R20 without a goal and the post-goal behavior of robot 15 that has reached a goal on the UI screen in a different manner than the behavior of each of the multiple robots R10 that have goals until they reach a goal.

[0063] The display unit 12 may display information indicating the movement paths of all of the multiple robots 15 as linear information on the UI screen. In this case, the display unit 12 may display the lines indicating the movement paths of robots R20 that do not have a goal and the lines indicating the movement paths of robots 15 that have reached the goal after reaching the goal on the UI screen, and the lines indicating the movement paths of each of the multiple robots R10 that have a goal until they reach the goal, with at least one of the line type, line color, and line thickness being different.

[0064] Figure 8 schematically shows an example of the initial state of the UI screen of the display unit 12 of the route planning device according to the first embodiment.

[0065] The UI screen displays, for example, the possible movement paths (range of motion) 30 and stopping points (waiting points) 31 for multiple robots 15.

[0066] Figures 9 to 11 schematically show first to third display examples in which the route plan planned by the route planning unit 11 is displayed on the UI screen shown in Figure 8.

[0067] Figures 9 to 11 show examples of movement paths for robot R21, which does not have a goal, and robots R11 and R12, which do have goals. The movement paths of each robot may be shown in different colors. ○ represents the starting point of movement for robots R11 and R12, which have goals, and ● represents the goal point. □ represents the starting point of movement for robot R21, which does not have a goal. In each example in Figures 9 to 11, robot R12, which has a goal, continues to move after reaching the goal. ◎ represents the final destination of robot R21, which does not have a goal, or the final destination of robot R12 after reaching the goal. Note that the symbols used to represent the starting point, goal point, etc., above are just examples, and other forms of representation are also possible.

[0068] In the examples in Figures 9 to 11, the movement paths of robots R11 and R12, which have a goal, to the goal are shown with thick solid lines. In the examples in Figures 9 to 11, the movement paths of robot R21, which does not have a goal, and the movement paths of robot R12 after reaching the goal are shown in a different manner than the movement paths of robots R11 and R12 to the goal.

[0069] For example, Figure 9 shows the movement path of robot R21, which does not have a goal, and the movement path of robot R12 after it reaches the goal, with different line types. Figure 9 shows an example where the line type is changed to a dashed line, but other line types may also be used.

[0070] Furthermore, in Figure 10, for example, the movement path of robot R21, which does not have a goal, and the movement path of robot R12 after reaching the goal are displayed with different line thicknesses. 10 As an example, here is a display example where the line thickness has been changed to a thinner one. In this case, for robot R12, which has a goal, the movement path to the goal point, which is of particular interest to the user, is highlighted with a thicker line, and the movement after reaching the goal is also displayed.

[0071] Furthermore, in Figure 11, for example, the movement path of robot R21, which does not have a goal, and the movement path of robot R12 after reaching the goal are displayed in different colors.

[0072] Furthermore, the above-mentioned display examples may be combined. For example, the display may be created by combining and changing at least two of the following: line type, line color, and line thickness.

[0073] [1.3 Application Examples] Figure 12 schematically shows an example of a system to which the route planning device according to the first embodiment is applied.

[0074] Figure 12 shows an example of a system in which the path planning device according to the first embodiment is applied to an automated transport system in a factory using an Automated Guided Vehicle (AGV) 24. In this system, the AGV 24 is the mobile unit and corresponds to the robot 15 in Figure 4. There may be multiple AGVs 24. In this case, the multiple AGVs 24 may include at least one AGV with a goal and at least one AGV without a goal.

[0075] The automated transport system includes a production management system (MES) 21, a transport control system (MCS) 22, an AGV control system (MCP) 23, and an AGV 24.

[0076] MES21 issues transport instructions to MCS22 based on the manufacturing process. An example of such a transport instruction is, for instance, "Transport C from device A to device B."

[0077] Based on the received transport instructions, MCS22 determines which AGV24 will transport what and how, and then issues transport instructions to MCP23. For example, if AGV24A is one of several AGV24s, an example of a transport instruction would be, "AGV24A should transport C from point A to point B."

[0078] When MCP23 receives a transport instruction, it determines the specific movement path for AGV24. MCP23 includes a robot information input unit 10, a path planning unit 11, and a robot control unit 13, as shown in Figure 4 of the path planning device. In MCP23, the path planning unit 11 receives information about AGV24 via the robot information input unit 10 to plan the path for AGV24. At this time, if there are other AGV24s besides AGV24A that have been given the instruction, their information is also input to the path planning unit 11. MCP23 or MCS22 holds information on all AGV24s present in the environment (current position and current goal), and this information is used. Also, at this time, the paths of AGVs other than AGV24A that have been given the transport instruction may be changed.

[0079] The route planned by the route planning unit 11 for the AGV 24 is sent from the robot control unit 13 to the AGV 24 via the communication unit 14. When the AGV 24 reaches its destination, a movement completion notification is sent back via the communication unit 14. Based on this, a transport completion report is sent to the MES 21.

[0080] [1.4 Effects] As described above, the path planning device according to the first embodiment plans the behavior of all of the multiple robots 15, including robot R10 with a goal and robot R20 without a goal, until the time when robot R10 with a goal reaches the goal, based on information about all of the multiple robots 15. This makes it possible to plan the optimal path for the multiple robots 15.

[0081] According to the path planning device of the first embodiment, path planning is performed including for robot R20, which does not have a goal. In path planning, the optimal path is calculated so as not to conflict with robot R20, which does not have a goal, and robot R10, which has a goal after reaching its goal. This makes it possible to calculate a more optimal path (a path with a shorter time to reach the goal). In addition, it becomes possible to specify the same goal for multiple robots 15.

[0082] Furthermore, according to the path planning device of the first embodiment, when planning the movement of robot R10, which has a goal, after it reaches the goal, the path is planned using the travel distance as a cost. As a result, unnecessary movement is eliminated in the movement of robot R20, which does not have a goal, and in the movement of robot R10, which has a goal, after it reaches the goal. This leads to power saving.

[0083] Furthermore, the route planning device according to the first embodiment plans the optimal route by taking into account the stopping time at the start point and the goal point. This makes it possible to plan a more optimal route.

[0084] Furthermore, according to the path planning device of the first embodiment, the path of robot R10 after reaching the goal is displayed on the UI screen. This makes it possible to visually obtain information about movement after reaching the goal.

[0085] The effects described herein are merely illustrative and not limiting, and other effects may also exist. The same applies to the effects of other embodiments described later.

[0086] <2. Other Embodiments> The technology described herein is not limited to the embodiments described above and can be modified in various ways.

[0087] For example, this technology can also take the following configuration. According to the technology configured as described below, the behavior of all multiple moving objects, including at least one first moving object with a goal and at least one second moving object without a goal, is planned for all of the multiple moving objects until the first moving object reaches the goal, thereby making it possible to plan the optimal path for the multiple moving objects.

[0088] (1) An input unit that receives input of information used for the path planning for all of a plurality of mobile bodies present in the environment subject to path planning, including at least one first mobile body with a goal and at least one second mobile body without a goal, Based on the information input to the input unit, a planning unit plans the behavior of all of the multiple moving objects until the time when the first moving object reaches the goal. Equipped with Route planning device. (2) The planning unit plans the optimal behavior of each of the multiple moving objects so that they do not compete with each other until the time when the first moving object reaches the goal. The route planning device described in (1) above. (3) The planning unit sets the time until the first mobile object reaches the goal and performs a predetermined task as the time when the first mobile object has reached the goal. A route planning device as described in (1) or (2) above. (4) The planning unit, when there are multiple first moving objects, plans the behavior of all of the multiple moving objects until the time when all of the multiple first moving objects have reached the goal. A route planning device as described in any one of (1) to (3) above. (5) The planning unit plans the temporally optimal behavior such that the time at which all of the multiple first moving objects reach the goal is minimized. The route planning device described in (4) above. (6) If at least one of the multiple first moving bodies reaches the goal before the time when all of the multiple first moving bodies have reached the goal, the planning unit plans the post-goal behavior of that portion of the first moving body until the time when all of the multiple first moving bodies have reached the goal. A route planning device as described in (4) or (5) above. (7) Regarding the behavior of the second moving object and the behavior of the portion of the first moving object after reaching the goal, we plan a distance-optimal behavior that minimizes the distance traveled. The route planning device described in (6) above. (8) The system further includes a display unit that displays information showing the behavior of all of the plurality of moving bodies planned by the planning unit, such that the behavior of the second moving body and the behavior of some of the first moving bodies after reaching the goal are displayed in a manner different from the behavior of each of the plurality of first moving bodies until they reach the goal. The route planning device described in (6) or (7) above. (9) The display unit displays information indicating the movement paths of all of the multiple moving objects in a linear fashion as information indicating the behavior, and displays the line indicating the movement path of the second moving object and the line indicating the movement path of some of the first moving objects after reaching the goal in a way that differs from the line indicating the movement path of each of the multiple first moving objects until they reach the goal in at least one of the following ways: line type, line color, and line thickness. The route planning device described in (8) above. (10) The information used in the route planning includes information on the stopping time at at least one of the starting point and the ending point. A route planning device as described in any one of (1) through (9) above. (11) The aforementioned behavior includes movement and waiting for all of the multiple moving objects. A route planning device as described in any one of (1) through (10) above.

[0089] This application claims priority based on Japanese Patent Application No. 2020-204418, filed with the Japan Patent Office on 9 December 2020, and all contents of that application are incorporated herein by reference.

[0090] Those skilled in the art will understand that various modifications, combinations, subcombinations, and changes can be conceived depending on design requirements and other factors, and that these fall within the scope of the attached claims and their equivalents.

Claims

1. An input unit that receives input of information used for the path planning for a plurality of mobile bodies present in an environment subject to path planning, including at least one first mobile body with a goal and at least one second mobile body without a goal, Based on the information input to the input unit, a planning unit plans the behavior of the plurality of moving objects until the time when the first moving object reaches the goal. Equipped with, The planning unit, when there are multiple first moving objects, plans the behavior of the multiple moving objects until the time when all of the multiple first moving objects have reached the goal. If at least one of the multiple first moving bodies reaches the goal before the time when all of the multiple first moving bodies have reached the goal, the post-goal behavior of that portion of the first moving body is planned until the time when all of the multiple first moving bodies have reached the goal. Route planning device.

2. The planning unit plans the optimal behavior of each of the multiple moving objects so that they do not compete with each other until the time when the first moving object reaches the goal. The route planning device according to claim 1.

3. The planning unit sets the time until the first mobile object reaches the goal point and performs a predetermined task as the time when the first mobile object has reached the goal. The route planning device according to claim 1.

4. The input unit receives input of information used for route planning for all of the plurality of moving bodies, The planning unit plans the behavior of all of the multiple moving objects until the time when the first moving object reaches the goal. The route planning device according to claim 1.

5. The planning unit plans the temporally optimal behavior such that the time at which all of the plurality of first moving objects reach the goal is minimized. The route planning device according to claim 1.

6. The planning unit plans the behavior of the second moving body and the behavior of the portion of the first moving body after reaching the goal, so as to be the most distance-optimal behavior, which minimizes the distance traveled. The route planning device according to claim 1.

7. The system further includes a display unit that displays information showing the behavior of all of the plurality of moving bodies planned by the planning unit, such that the behavior of the second moving body and the behavior of some of the first moving bodies after reaching the goal are displayed in a manner different from the behavior of each of the plurality of first moving bodies until they reach the goal. The route planning device according to claim 1.

8. The display unit displays information indicating the movement paths of all of the multiple moving bodies in a linear fashion as information indicating the behavior, and displays the line indicating the movement path of the second moving body and the line indicating the movement path of some of the first moving bodies after reaching the goal in a way that differs from the line indicating the movement path of each of the multiple first moving bodies until they reach the goal in at least one of the following ways: line type, line color, and line thickness. The route planning device according to claim 7.

9. The information used in the route planning includes information on the stopping time at at least one of the starting point and the ending point. The route planning device according to claim 1.

10. The aforementioned behavior includes movement and waiting for all of the multiple moving objects. The route planning device according to claim 1.

11. An input unit that receives input of information used for route planning for a plurality of mobile bodies present in an environment subject to route planning, including at least one first mobile body having a goal and at least one second mobile body not having a goal, Based on the information input to the input unit, a planning unit plans the behavior of the plurality of moving objects until the time when the first moving object reaches the goal. Equipped with, The planning unit, when there are multiple first moving objects, plans the behavior of the multiple moving objects until the time when all of the multiple first moving objects have reached the goal. The system plans a time-optimal behavior such that the time at which all of the aforementioned first moving objects reach the goal is minimized. Route planning device.

Citation Information

Patent Citations

  • Robot control unit

    JP2006133863A