WO2023136047A1 - 情報処理装置、情報処理方法およびプログラム - Google Patents

情報処理装置、情報処理方法およびプログラム Download PDF

Info

Publication number
WO2023136047A1
WO2023136047A1 PCT/JP2022/046603 JP2022046603W WO2023136047A1 WO 2023136047 A1 WO2023136047 A1 WO 2023136047A1 JP 2022046603 W JP2022046603 W JP 2022046603W WO 2023136047 A1 WO2023136047 A1 WO 2023136047A1
Authority
WO
WIPO (PCT)
Prior art keywords
robot
door
route
graph
moving object
Prior art date
Application number
PCT/JP2022/046603
Other languages
English (en)
French (fr)
Inventor
典史 吉川
Original Assignee
ソニーグループ株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ソニーグループ株式会社 filed Critical ソニーグループ株式会社
Publication of WO2023136047A1 publication Critical patent/WO2023136047A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions

Definitions

  • the present invention relates to an information processing device, an information processing method, and a program.
  • Route planning uses a map of the surrounding environment to calculate what kind of route the moving object should take to reach the goal point.
  • Systems are also known for controlling the movement of a vehicle in synchronism with elevator doors.
  • route planning is performed without considering when and how the door will be opened and closed.
  • the opening and closing of the door is performed as part of movement control of the moving object based on the route plan. If the passage interval of moving objects is shorter than the opening and closing time of the door, traffic congestion occurs.
  • a plurality of doors are interlocked and controlled, such as elevators and double doors, there is a possibility that traffic jams may occur based on restrictions such as the order in which the doors are opened and closed.
  • Conventional systems do not sufficiently consider these factors. Therefore, there is a possibility that the overall optimization including the opening and closing operation of the door will not be sufficiently performed.
  • the present disclosure proposes an information processing device, an information processing method, and a program capable of performing optimal route planning in consideration of door opening/closing operations.
  • a graph structure generation unit that generates a graph in which a door on a passage is replaced with a siding of a virtual moving object, and a moving object that is about to pass through the passage is an intersection of the passage and the siding. and a route planning unit that plans a route of the moving object and the virtual moving object so as not to conflict with the virtual moving object.
  • FIG. 1 is a schematic diagram of a mobile system to be searched for a route;
  • FIG. It is a figure explaining a subject when a door is introduced into a course. It is a figure explaining a subject when a door is introduced into a course. It is a figure explaining a subject when a door is introduced into a course. It is a figure which shows an example of the solution method assumed. It is a figure which shows an example of the solution method assumed. It is a figure explaining the method for problem solution.
  • FIG. 4 is a diagram showing an example of applying the route planning technique of the present disclosure to a double door;
  • FIG. 4 is a diagram showing an example of applying the route planning technique of the present disclosure to an elevator; It is a figure which shows an example of the graph used as a route map.
  • FIG. 4 is a diagram showing an example of application of route planning of the present disclosure to control of an elevator;
  • FIG. 10 is a diagram showing an example in which a plurality of robots are housed in an elevator cage;
  • FIG. 10 is a diagram showing an example in which a plurality of robots are housed in an elevator cage; It is a figure which shows the example in which several elevators are installed in parallel. It is a figure which shows an example of UI for setting a door.
  • FIG. 10 is a diagram showing an example in which the route search method of the present disclosure is applied to an automatic guided vehicle system in a factory using an unmanned guided vehicle; It is a figure which shows the hardware structural example of a server.
  • FIG. 1 is a schematic diagram of a mobile system to be searched for routes.
  • the mobile body is an autonomous mobile robot MB and the mobile system is a transport system TS for luggage or the like.
  • the same reference numerals are given to the same types of structures. A number or symbol is attached to the end of the reference when distinguishing between similar configurations.
  • Systems using robots MB that can autonomously travel are used for various purposes, such as transporting goods, inspecting equipment, and guarding.
  • the robot MB In order for the robot MB to move, it must reach its destination without colliding with static and dynamic obstacles OB (including other robot MBs) in the environment.
  • the methods are broadly classified into methods that do not use a route map and methods that use a route map.
  • a method that does not use a route map is a method that uses a trajectory search algorithm that directly determines the trajectory to the destination.
  • a trajectory search algorithm that directly determines the trajectory to the destination.
  • the A* algorithm and RRT (Rapidly Exploring Random Tree) algorithm are known as trajectory search algorithms.
  • recognition of the surrounding map (peripheral movable area) of the robot MB and trajectory search toward the destination based on it (determination of the optimum movement speed and angular velocity at that time) are repeated with high frequency. . Thereby, collision can be avoided even if there is a dynamic obstacle OB.
  • trajectory planning In methods that do not use a route map, the search space for determining the optimal movement velocity and angular velocity is wide when the environment is wide (long movement distance, long destination), so the amount of calculation becomes large and expensive. There is a problem that repetition of frequency becomes impossible.
  • This method of determining the trajectory to the destination while avoiding obstacles OB by repeating surrounding environment recognition and trajectory search is called trajectory planning.
  • a route map is represented as a topological map composed of a group of relay nodes that are candidates for intermediate destinations and a group of edges connecting relay nodes that are directly passable.
  • route planning is first performed to determine which nodes ND and edges ED are to be passed between the current location and the final destination, and the movement method between nodes ND is based on the above-mentioned trajectory plan. controlled by This reduces the amount of calculation compared to the case where all routes to the destination are determined based on the trajectory plan.
  • the route map is manually designed based on the floor map.
  • a floor map is provided, for example, as a metric map MM in which the sizes and positions of objects in the facility are precisely defined based on metric data.
  • the floor map may be obtained from a facility database, or may be automatically generated using SLAM (Simultaneous Localization and Mapping) or the like. In the latter form, a peripheral map generated by moving the robot MB within the facility can be used as the floor map.
  • SLAM Simultaneous Localization and Mapping
  • Collision avoidance by trajectory planning requires sufficient space to avoid collisions. For example, when another robot MB is approaching on a narrow straight road, or when another robot MB meets another robot MB at an orthogonal narrow intersection and enters the intersection at the same time from the side of the head, the surroundings that the robot MB can recognize A trajectory that can reach the destination (the next transit node ND when using a route map) cannot be calculated in the map. As a result, the two robots MB are stuck in alignment. This situation is called deadlock.
  • Patent Document 1 proposes a method of performing overall optimization by having a central server plan the paths of each robot MB, instead of planning the paths for each robot MB. For example, other robots MB can be placed on standby outside the intersection so that only one robot can enter the intersection at a time. It is conceivable to temporarily wait at Deadlock can be prevented by controlling which robot MB is on standby where and when, and which robot MB is allowed to pass through which route and when.
  • the above method is effective in preventing interference between the movements of the robot MBs.
  • facilities such as double doors DD and elevators EL (see FIG. 21) may be installed in the environment where the robot MB operates.
  • a method for optimizing the entire system including the operational status of the equipment has not been sufficiently studied. This problem will be described below.
  • Patent Documents 2 to 6 disclose a system that applies the above-described multi-robot system to an environment with a remotely controllable elevator EL and an automatic door DR, and controls the path of the robot MB, including the elevator EL and the automatic door DR. ing.
  • the route of the robot MB is once planned without considering when and how to control the door DR and the elevator EL, and as the next step, each robot MB follows the plan. As part of movement, it controls the door DR and the elevator EL.
  • Patent Document 6 which robot MB is to be placed on the elevator EL is determined by taking into consideration only the predetermined priority. Among robot MBs having the same priority, the order of riding is determined on a first-come, first-served basis. Further, the robot MB which is not yet in the waiting state for the elevator EL at the moment when the elevator EL is vacant is excluded from boarding candidates. In these respects, there are limits to global optimality.
  • This kind of problem also applies to the elevator EL.
  • the elevator EL when the door DR is opened to enable boarding and alighting on a certain floor, boarding and alighting on other floors cannot be carried out. Therefore, even if a robot MB that is already waiting for the elevator EL is made to wait further, it is not possible to correctly handle a case in which overall optimality is higher if another robot MB that comes later is loaded. For example, if the destination after getting off the elevator EL is a one-lane cul-de-sac, and the robot MB that came later is heading toward the destination at the back of the cul-de-sac, it is better to load the robot MB that came later first. . However, such a control is not performed in the method of prioritizing the robot MB that came first, such as first-come, first-served.
  • FIGS. 5 and 6 are diagrams showing an example of a possible solution method.
  • Fig. 5 shows a scene in which the robot MB-1 is trying to pass through the double door DD from left to right, closing the rear door DR-1 and opening the front door DR-2.
  • robot MB-1 waits for a while until the rear door DR-1 is closed, and then robot MB-2
  • overall optimality is higher when both pass through the double door DD together.
  • Figure 6 shows a similar situation, but on the other side of the double door DD, where several other robots MB are waiting to exit in the opposite direction.
  • the equipment control standard is further devised, and when more than a predetermined number of robots MB are waiting on the other side of the door DR-2, there is no subsequent check, and the opening and closing control of the double door DD is started immediately. may be added.
  • FIG. 7 is a diagram illustrating a method for solving the problem.
  • the opening and closing motion of the door DR is regarded as the motion of the virtual robot VM moving on the virtual siding SL.
  • the action of opening the door DR is regarded as the action of the virtual robot moving from in front of the door DR (blocking position CP blocking the path PA of the robot MB) toward the virtual retreat position (SP).
  • the motion of closing the door DR is regarded as the motion of the virtual robot VM moving from the standby position SP toward the closed position CP.
  • Optimal paths of the robot MB and the virtual robot are planned so that the robot MB and the virtual robot do not interfere with each other.
  • the point of the route planning of this disclosure is to model the behavior of the door DR and elevator EL as an extension of the topological map and the behavior of a virtual autonomous mobile robot (virtual robot VM).
  • virtual robot VM virtual autonomous mobile robot
  • the state in which the door DR is open, or the state in which the elevator EL is at the destination floor and the door DR is open and the elevator advances forward is the state in which the passage PA is vacant because the virtual robot VM has moved to the siding line SL dedicated to the virtual robot VM. modeled.
  • the evacuation position SP and the blocking position CP are incorporated into the route map as nodes ND.
  • the siding SL is incorporated into the route map as an edge ED.
  • the opening/closing time of the door DR is regarded as the cost (moving time) when the virtual robot VM moves between the shunting position SP and the closed position CP along the siding line SL.
  • the route search algorithm of the robot MB can be used as it is for the route planning of the virtual robot VM.
  • the path planning of the robot MB and the virtual robot VM are integrally carried out based on the same algorithm.
  • the virtual robot VM is only allowed to move along the siding line SL.
  • a normal robot MB cannot move on the siding SL.
  • the virtual robot VM can only move along the shunting position SP, the blocking position CP, and the shunting line SL, while the normal robot MB moves along the shunting line SL and the shunting position SP. There is a condition that it cannot be done. Both the virtual robot VM and the normal robot MB can move to the closed position CP.
  • a value is set based on the time it takes to switch between passing and not passing as the travel cost of the side track SL. For example, in the case of the door DR, the time from when the control signal is transmitted to when the door DR is actually opened and closed is set as the movement cost. If the time (cost) differs between the opening operation and the closing operation, different costs are set according to the direction of movement. For example, when setting the movement cost of the door DR of the elevator EL on a certain floor, the movement cost in the opening direction (virtual robot VM moves to the shunting position SP along the siding line SL) is It is set based on this average time and the time during which the door DR opens. The movement cost in the closing direction (the movement of the virtual robot VM from the shunting position SP to the closed position CP along the siding line SL) can be simply set as the closing time of the door DR of the elevator EL.
  • the above-mentioned method is such that the passage permission/prohibition control at a certain point, such as the door DR of the elevator EL that can only be opened on one floor at a time, or the double doors DD that cannot be opened at the same time, is applied to the passage permission/prohibition state of another point. It can also be applied to cases that depend on
  • FIG. 8 is a diagram showing an example of applying the route planning technique of the present disclosure to a double door DD.
  • the concept of area is used to limit the number of objects (robot MB, virtual robot VM) that can enter a specific area at the same time.
  • a plurality of siding lines SL representing points that cannot be opened at the same time are set as one area AR subject to entry restriction.
  • the siding line SL-1 and the shunting position SP-1 corresponding to the door DR-1 and the siding line SL-2 and the shunting position SP-2 corresponding to the door DR-2 form one area AR. set.
  • the total number of robots MB and virtual robots VM that can exist simultaneously in the same area AR is limited to only one.
  • the robot MB and door DR are controlled based on the created route plan.
  • the control of the robot MB may be the conventional control, but the control of the virtual robot VM is replaced with the opening/closing control of the door DR.
  • the start of movement of the virtual robot VM from the closed position CP to the retracted position SP is replaced with the start of opening the door DR.
  • the start of the movement of the virtual robot VM from the standby position SP to the closed position CP is replaced with the start of closing operation of the door DR.
  • appropriate control may be performed based on the current position of the robot MB and arrival reports to each route point.
  • each robot should be is determined as time-series data, but in reality there are cases where it cannot move as planned. Therefore, there is a method (sequence control) that realizes only the sequence relationship obtained in the plan (which robot should pass which intersection and in what order) instead of time-level control when the plan is executed.
  • sequence control a method is adopted in which, after confirming where a certain robot MB is currently and whether or not the robot MB has passed a node ND on the route that serves as a point, waiting for another robot MB is cancelled. .
  • the current position of the virtual robot VM is determined based on the state of the door DR. For example, if the door DR is open, it is determined that the virtual robot VM is at the retreat position SP. If the door DR is being closed, it is determined that the virtual robot VM is moving along the siding SL toward the closed position CP. Completion of the opening operation of the door DR is treated as arrival of the virtual robot VM at the retreat position SP. Completion of the closing operation of the door DR is treated as arrival of the virtual robot VM at the closed position CP.
  • FIG. 9 is a diagram showing an example of applying the route planning technique of the present disclosure to an elevator EL.
  • the elevator EL cannot open doors DR on multiple floors at the same time.
  • the doors DR of one floor When the door DR of one floor is open, the doors DR of all other floors are closed. Therefore, doors of a plurality of floors belonging to the same elevator EL are set as one area AR.
  • the installation location of the elevator EL is from the 1st floor to the 3rd floor.
  • the virtual robot VM-1 on the 1st floor exists on the siding line SL-1 on the 1st floor or at the shunting position SP-1 on the 1st floor
  • the virtual robot VM-2 on the 2nd floor and the virtual robot VM-3 on the 3rd floor. are present at the blocked position CP-2 on the second floor and the blocked position CP-3 on the third floor, respectively.
  • the area AR consists of a siding line SL-1 and a shunting position SP-1 corresponding to the door DR on the first floor, a siding line SL-2 and a shunting position SP-2 corresponding to the door DR on the second floor, slanting line SL-3 corresponding to the door DR and the shunting position SP-3.
  • the total number of robots MB and virtual robots VM that can exist simultaneously in the same area AR is limited to only one.
  • FIG. 10 is a diagram showing an example of graph MP used as a route map.
  • a graph MP as shown in FIG. 10 is used to efficiently obtain the shortest path.
  • Graph MP includes nodes ND and edges ED as graph elements GE.
  • a graph MP is a topological map representing the environment in which the robot MB moves. The graph MP is created based on the arrangement of obstacles OB in the environment.
  • the graph MP may be an undirected graph or a directed graph (one-way can be expressed).
  • FIG. 10 shows an example of a directed graph.
  • a route plan is represented, for example, by passing nodes ND and edges ED and a sequence of times passing through them.
  • the route plan When traveling along the edge ED, the route plan is represented by the time of departure from the node ND at one end of the edge ED and the time of arrival at the other node ND.
  • the route plan When waiting at the node ND, the route plan is represented by the start time and end time of waiting.
  • the route plan is an arrangement of the passage time of the edge ED from the start point (node ND) to the goal point (node ND) and the waiting time at the node ND.
  • Multi-robot path planning requires a set of conflict-free paths RT.
  • a set of conflict-free routes RT is obtained by a graph search algorithm such as A* (A-star) or CBS (Conflict-Based Search).
  • FIG. 13 is an explanatory diagram of a route search method using CBS.
  • An optimal solution is realized by expanding a binary tree called a constraint tree CT (Constraint tree) and searching for the solution.
  • a graph MP consisting of vertices S 1 , S 2 , A 1 , . . . , Am , B 1 , . think.
  • the vertices S 1 and S 2 are the nodes ND of the starting points of the robots MB-1 and MB-2, respectively, and the vertices G 1 and G 2 are the nodes of the goal points of the robots MB-1 and MB-2, respectively. It is ND.
  • Robot MB walks one edge ED at each timestep. At this time, the constraint tree CT is developed as shown in right figure (ii).
  • Each node ND of the constraint tree CT consists of (1) a set of constraints, (2) a set of path plans for each robot MB, and (3) a total cost (the cost is the number of steps taken by the robot MB to reach the goal). number).
  • the root node (node ND at the top of the constraint tree CT) is the shortest path of each robot MB without constraints. Therefore, the route RT-1 of the robot MB-1 is S 1 ⁇ A 1 ⁇ C ⁇ G 1 , and the route RT-2 of the robot MB-2 is S 2 ⁇ B 1 ⁇ C ⁇ G 2 .
  • robot MB-1 and robot MB-2 compete for vertex C in the second step. Therefore, in the second step, a child node is generated with a constraint that vertex C is not reached. At this time, two child nodes are created by the constraint on robot MB-1 and the constraint on robot MB-2.
  • Constraints are represented by (1) the target robot MB, (2) unreachable vertices, and (3) the number of steps.
  • Constraints are represented by (1) the target robot MB, (2) unreachable vertices, and (3) the number of steps.
  • Con: ⁇ (1, C, 2) ⁇ in the figure is a constraint that the robot MB-1 must not reach the vertex C in the second step.
  • the shortest path for each robot MB is recalculated based on the constraints.
  • FIG. 14 is a flow chart of route search.
  • the user inputs information on all robots MB existing in the environment (step SA1).
  • the search system searches for the optimum path for each robot MB as the root node of the constraint tree CT and calculates the cost (step SA2).
  • the search system selects the lowest cost node ND on the constraint tree CT (step SA3).
  • the search system detects conflicts at each node ND and each edge ED of graph MP (step SA4).
  • the search system determines whether there is a conflict between the paths of the two robots MB (step SA5). If it is determined that there is a conflict (step SA5: Yes), the search system adds a child node to the constraint tree CT with a constraint that prevents conflict (step SA6). Then, the search system searches the added child node for an optimum route that satisfies the constraints and calculates the cost (step SA7). Then, it returns to step SA3 and repeats the above processing. If it is determined in step SA5 that there is no conflict (step SA5: No), the search system recognizes the route of each robot MB as the optimum solution, and terminates the process.
  • FIG. 15 is a diagram showing an example of the configuration of the transport system TS.
  • the transportation system TS transports objects using autonomous mobile robots MB installed in facilities such as distribution centers.
  • the transport system TS is a type of mobile system that causes a mobile to perform a predetermined process.
  • the transport system TS has a server 1, a robot MB and a facility management device FM.
  • the facility management device FM manages various facilities installed in the facility.
  • Equipment in the facility includes a door DR, an elevator EL, and the like.
  • Robot MB and facility management device FM are connected to server 1 via a network.
  • the transportation is executed by controlling the robot MB and the facility management device FM according to the transportation instruction input to the server 1 .
  • Systems not intended for transportation include a monitoring system that patrols the target area periodically, a system that guides guests who come to the store with a robot MB, and an automatic parking lot for self-driving cars.
  • the robot MB is, for example, a trackless autonomous mobile robot that does not use rails for running.
  • the robot MB autonomously plans a trajectory and moves to the target point.
  • the robot MB incorporates sensors such as a camera, GPS (Global Positioning System), LiDAR (Light Detection and Ranging, Laser Imaging Detection and Ranging), and IMU (Inertial Measurement Unit).
  • the robot MB has a self-position estimation unit 21, an environment information acquisition unit 22, a trajectory planning unit 23, a drive control unit, and a communication unit 29.
  • the environmental information acquisition unit 22 acquires information (environmental information) regarding the external environment of the robot MB based on sensor data from the built-in sensor.
  • the self-position estimation unit 21 uses techniques such as SLAM to generate a surrounding map and estimate the self-position (position of the robot MB) based on the environmental information.
  • the environment information and self-location information are supplied to the server 1 via the communication units 19 and 29.
  • the server 1 extracts information about whether or not the passage PA is passable from the environmental information.
  • the server 1 plans a route based on the information on the self-position of each robot MB and the information on whether or not the passage PA is passable.
  • Information on route planning is supplied to each robot MB via the communication units 19 and 29 .
  • the trajectory planning unit 23 detects an obstacle OB ahead based on the environmental information.
  • the trajectory planning unit 23 plans a desirable trajectory for moving to the target point (next node ND) while avoiding the obstacle OB.
  • Trajectory planning means control at the level of how many millimeters should be passed from a nearby obstacle OB, and what kind of curve should be drawn when passing through a corner to ensure safe and smooth movement.
  • the drive control unit 24 controls the driving of the robot MB based on the route plan generated using the position information of each robot MB and the trajectory plan determined based on information such as obstacles OB.
  • the drive control also includes control related to transfer processing of conveyed objects and the like. By repeating trajectory planning and drive control frequently, it is possible to move safely even if there is a moving obstacle OB.
  • a trackless autonomous mobile robot is used as the robot MB, but the robot MB is not limited to this.
  • the route planning method of the present disclosure can be applied to any robot MB whose movement can be controlled via communication.
  • the method of the present disclosure can be applied to a track-guided autonomous mobile robot that uses rails for running, or a robot MB that is directly driven and controlled remotely, such as a so-called radio-controlled robot.
  • the facility management device FM controls opening and closing of one or more doors DR installed in the facility.
  • the door DR is an automatic door whose opening/closing operation can be controlled based on an opening/closing instruction via the communication unit 39 .
  • the facility is equipped with a monitoring sensor that monitors the area around the door DR. An infrared sensor or the like is used as the monitoring sensor.
  • the facility management device FM also controls the opening/closing operation of the door DR on each floor and the elevator operation of the cage.
  • the facility management device FM has a facility information acquisition unit 31, a facility control unit 32 and a communication unit 39.
  • the facility information acquisition unit 31 acquires information (monitoring information) regarding the opening/closing status of the door DR, the approach status of the robot MB to the door DR, and the like based on the sensor data from the monitoring sensor.
  • the server 1 performs route planning based on the monitoring information acquired via the communication units 19 and 39 .
  • the equipment control unit 32 opens and closes the door DR based on the route plan generated by the server 1 . In the case of the elevator EL, the facility control unit 32 also moves the car up and down based on the route plan.
  • the server 1 is an information processing device that processes various types of information for route planning.
  • the server 1 controls the robot MB and the facility management device FM based on a transport instruction from the outside.
  • the server 1 has an area setting unit 11 , a graph structure generation unit 12 , a task planning unit 13 , a route planning unit 14 , a robot control unit 15 , a door control unit 16 and a communication unit 19 .
  • the area setting unit 11 presents a UI (User Interface) for visually setting the door DR.
  • Information on the number and arrangement of graph elements GE is supplied from the graph structure generator 12 .
  • the area setting unit 11 sets the area AR based on user input information input via the UI.
  • the area setting unit 11 displays a UI for setting the door DR on the display DP (see FIG. 22).
  • the user uses the UI to input information about the door DR and information about the area AR.
  • the area setting unit 11 acquires information on the area AR input via the UI as user input information.
  • the graph structure generation unit 12 generates the graph MP in which the door on the passage PA is replaced with the siding line SL of the virtual robot VM based on the user input information.
  • the graph structure generator 12 incorporates the virtual robot VM, the siding line SL, the shunting position SP, and the closed position CP into the graph MP based on the information on the door DR input via the UI.
  • the graph structure generator 12 sets areas AR in the graph MP based on user input information.
  • the area AR includes a plurality of graph elements GE (edges ED and nodes ND indicating the shunting line SL and the shunting position SP).
  • a capacity is set for each area AR and each graph element GE. Capacity indicates the total number of robots MBs and virtual robots VMs allowed to exist at the same time.
  • the graph structure generator 12 sets the capacity of each area AR based on user input information.
  • the graph structure generator 12 sets the capacity of all graph elements GE included in the graph MP to 1, for example.
  • the graph structure generation unit 12 generates a graph MP reflecting the information of the area AR and capacity, and supplies the graph MP to the route planning unit 14 .
  • the task planning unit 13 assigns the most appropriate robot MB to the transport subject in view of the content of the transport instruction.
  • the task planning unit 13 subdivides the work content of the robot MB, which is the main carrier, and generates a task plan for causing the robot MB to sequentially perform a plurality of subdivided tasks.
  • the task planner 13 supplies the generated task plan to the drive controller 24 of the robot MB, which is the main carrier.
  • the task planning unit 13 divides the tasks indicated by the transportation instruction into a task of moving to point A and a task of loading article X at point A. , a task of moving to point B, and a task of unloading article X at point B.
  • the task planning unit 13 generates a task plan for sequentially executing a plurality of subdivided tasks by the robot MB, which is the main carrier.
  • the robot MB that will be the main transporter. For example, if all the robots MB are empty robots MBs without tasks, the empty robot MB closest to the destination of the movement task can be determined as the transport subject. If there is no free robot MB, the robot MB to which the fewest tasks are assigned can be determined as the transport subject.
  • the route planning unit 14 determines what kind of route RT each robot MB should follow to move to its respective destination.
  • route planning means planning at the level of which robot MB should pass through which passage PA in what order, taking into consideration a one-lane passage where the robots cannot pass each other.
  • the route planning unit 14 acquires area AR and capacity information from the graph MP.
  • the route planning unit 14 plans the route RT of each robot MB and each virtual robot VM within the graph MP so that competition between the robot MB and the virtual robot VM exceeding the capacity of the area AR does not occur within the area AR. do.
  • Conflict determination is not limited to conflicts between robot MBs, but also conflicts between robot MBs and virtual robots VMs, and conflicts between virtual robots VMs.
  • the route planning unit 14 plans the route RT of the robot MB and the virtual robot VM so that the robot MB trying to pass through the passage PA does not compete with the virtual robot VM at the intersection of the passage PA and the siding line SL.
  • the route planning unit 14 first finds the shortest route for each robot MB and each virtual robot VM without considering conflicts in the areas AR, nodes ND and edges ED.
  • a search for the shortest path is performed using a known method such as A*.
  • the path planning unit 14 uses the conflicted portion as a constraint.
  • the shortest paths of each robot MB and virtual robot VM are obtained again. By repeating this, the route planning unit 14 searches for a set of routes RT for each robot MB and each virtual robot VM that does not conflict.
  • the route planning unit 14 generates route information for each robot MB and each virtual robot VM based on the finally obtained route RT for each robot MB and each virtual robot VM.
  • the route information includes information on the destination and time of movement (timing of movement) of the robot MB and the virtual robot VM.
  • the path planning unit 14 supplies the path information of each robot MB and each virtual robot VM to the robot control unit 15 and the equipment control unit 32 .
  • the path planning unit 14 creates an additional path only for the robot MB to which the movement destination has been newly added without changing the path plans of the other robots MB. Planning may be carried out, or overall optimization may be carried out including reviewing the route plans of other robot MBs.
  • the robot control unit 15 generates movement instructions for each robot MB based on the route information for each robot MB.
  • the movement instruction includes information on the movement destination and movement time (movement timing) of the robot MB.
  • a movement instruction may be generated as a string of data about which graph elements GE the robot MB should pass through and in what order.
  • the robot control unit 15 transmits movement instructions for each robot MB to each robot MB via the communication unit 19 .
  • the door control unit 16 generates an open/close instruction for the corresponding door DR based on the route information of the virtual robot VM.
  • the open/close instruction includes information about the direction of the state change of the door DR (opening direction, closing direction) and the start time of the state change (starting timing of the opening operation and the closing operation).
  • the door control unit 16 replaces the movement of the virtual robot VM from the closed position CP to the shunting position SP with the opening operation of the door DR, and the movement of the virtual robot VM from the shunting position SP to the closed position CP with the closing operation of the door DR. Generate open/close instructions by replacing.
  • the door control unit 16 transmits an opening/closing instruction for each door DR to each equipment control unit 32 via the communication unit 19 .
  • the door control unit 16 also generates an instruction to raise or lower the cage of the elevator EL in accordance with the opening/closing operation of the door DR.
  • the door control unit 16 when the virtual robot VM on the 1st floor completes moving from the shunting position SP to the closed position CP and then the virtual robot VM on the 2nd floor starts moving from the shunting position CP to the shunting position SP, the door control unit 16 generates an operation to move the cage from the 1st floor to the 2nd floor as an elevation instruction in synchronization with the timing when the virtual robot VM on the 1st floor has completed the movement to the closed position CP. The door control unit 16 transmits the lifting instruction to the facility control unit 32 together with the opening/closing instruction.
  • the graph structure generation unit 12 sets a plurality of doors DR whose opening and closing operations are dependent on each other as one area AR so that an open door DR is alternatively generated.
  • the route planning unit 14 plans the routes RT of the plurality of virtual robots VM so that the plurality of virtual robots MB corresponding to the plurality of doors DR do not compete in the same area AR.
  • a plurality of doors DR whose opening and closing operations depend on each other may include a pair of doors DR that constitute a double door DD.
  • the path planning unit 14 calculates the cost of path planning for one or more robots MB to be optimized as follows: It is calculated based on the number of steps and the time required to open/close each door DR in the graph MP.
  • a plurality of doors DR whose opening and closing operations depend on each other may include the door DR of the elevator EL installed on each floor.
  • the route planning unit 14 calculates the cost of route planning for one or more robots MB to be optimized as the number of steps required for each robot MB to reach its goal. , the time required for opening and closing each door DR in the graph MP, and the time required for the car of the elevator EL to move to the position of the door DR that is in the open state.
  • FIG. 16 is a diagram showing an example of route planning.
  • FIG. 16 shows an example of a graph MP made up of nodes ND-1 to ND-20 and edges ED connecting those nodes ND.
  • Each edge ED has a moving cost defined according to the moving time.
  • combinations of paths of the robots MB are calculated such that the robots MB do not interfere with each other.
  • the total cost to the destination, including the waiting time is calculated for each robot MB, and the optimal solution is the combination of paths of the robot MBs that minimizes the sum of the total costs of all the robot MBs. is determined as
  • a graph MP (hereinafter referred to as a unit graph) in which all the edges ED have a uniform movement cost is generated.
  • a graph MP hereinafter referred to as a unit graph
  • the graph structure generation unit 12 uses the minimum movement cost as a unit cost, and divides the edge ED with a movement cost that is twice or three times the unit cost into two or three. Add NDs.
  • the route planning unit 14 duplicates the unit graph by the number of steps in time series.
  • One unit graph represents the arrangement state of the robot MB and the virtual robot VM at a certain future time.
  • One step period is set as a time corresponding to a unit cost.
  • the robot MB can move to the next node ND by continuing to move for only one step period.
  • the route planning unit 14 arranges the duplicated unit graphs in chronological order, and performs the following processing on two adjacent unit graphs. First, when the path planning unit 14 compares the two unit graphs and the position of the robot MB has not changed (when the robot MB is waiting at the same node ND for one step period), each unit Nodes ND indicating the position of the robot MB in the graph are connected with a connecting line.
  • the path planning unit 14 determines whether the robot A connection line connects the node ND where the MB exists and the node ND where the robot MB exists in the unit graph after one step period.
  • the path planning unit 14 deletes all edges ED of the original unit graph. As a result, only the newly added connecting lines remain. Thus, the route planning unit 14 generates a time series topological map in which the unit graphs at each time are connected.
  • the robot MB In the time-series topological map, the robot MB always moves to a node ND somewhere in the unit graph at the next time in one step.
  • the route of the robot MB can be grasped by tracing the connecting lines along the time axis.
  • a route plan for one robot MB is expressed as coordinate data of nodes ND arranged in chronological order along connection lines.
  • the route of the robot MB is grasped by tracing the coordinates of the node ND in chronological order.
  • the simplest method is to "exclude nodes ND already occupied by path plans of other robot MBs (move to nodes ND where other robot MBs are currently It is a method of selecting a route RT that satisfies the constraint that "one step always moves to some node ND in the unit graph at the next time". This can be realized by restricting the search target to only the route RT that satisfies the above constraints when searching for a route using the well-known Dijkstra's algorithm.
  • the route planning unit 14 may indicate that "one step always moves to a node ND somewhere in the unit graph at the next time", “always two or more robot MBs exist on the node ND of the time-series topological map.” and "Always, two or more robot MBs must not exist in facing directions on the connection line of the time-series topological map" are selected by exhaustive search or the like. This type of search method is described in [Reference 1] below.
  • the resulting route plan on the time-series topological map shows which node ND each robot MB should be at at what time, including meeting times.
  • FIG. 17 is a diagram showing an example of route planning including opening and closing operations of the double door DD.
  • a system including a door DR has constraints such as "virtual robot VM can only move on closed position CP, shunting line SL and shunting position SP" and "robot MB cannot enter shunting line SL and shunting position SP". is imposed. Therefore, based on the above constraints, an area AR that spans a plurality of graph elements GE is set. VM conflicts are not allowed” is imposed. By modifying and applying the route search method of FIG. 16 so as to satisfy these constraints, it is possible to integrally calculate the optimum motions of the robot MB and the door DR.
  • a system that includes a double door DD is further constrained that "the two doors DR that make up the double door DD cannot be opened at the same time".
  • This restriction can be rephrased as a restriction that "only one virtual robot VM can exist in the area AR at the same time" when one area AR is set for the turn-around line SL and turn-around position SP corresponding to each door DR. be able to.
  • ⁇ Path RT of virtual robot VM-1 10 [VM-2: 12 arrivals] ⁇ SP-1 [MB-2: 10 departures] ⁇ 10 [VM-2: 12 arrivals] ⁇ SP-1 [MB-3: 10 departures] ⁇ 10 [MB-1: 15 arrivals and VM-2: 12 arrivals] ⁇ SP-1 [MB-1: 10 departures] ⁇ 10
  • ⁇ Path RT of virtual robot VM-2 12 [MB-2: 11 arrivals and VM-1: 10 arrivals] ⁇ SP-2 [MB-2: 12 departures] ⁇ 12 [MB-3: 11 arrivals and VM-1: 10 arrivals] ⁇ SP-2 [ MB-3: 12 shots and MB-1: 12 shots] ⁇ 12
  • FIG. 18 is a diagram showing an example of applying the route planning of the present disclosure to the control of the elevator EL.
  • a system that includes an elevator EL is subject to the restriction that "doors DR on multiple floors cannot be opened at the same time".
  • This constraint is based on the constraint that "only one virtual robot VM can exist in the area AR at the same time" when one area AR is set for the shunting line SL and the shunting position SP corresponding to the door DR of each floor. can be rephrased as By newly adding such constraints, it is possible to integrally calculate the optimum motions of the robot MB and the elevator EL.
  • the first floor door DR of the elevator EL is closed, the cage carrying the robot MB is moved to the third floor, the third floor door DR is opened, and the robot MB moves to the node ND-1.
  • a movement instruction for example, the following route planning is performed for the robot MB and the virtual robots VM-1 and VM-3.
  • two robots MB can be accommodated in the cage.
  • the robot MB-2 which entered the cage earlier, moves to the node ND-2 at the back of the cage and vacates the node ND-1 on the entrance side of the cage.
  • the robot MB-3 which entered the cage later, is accommodated in the node ND-1 on the entrance side of the cage.
  • the robot MB-3 which is closest to the exit side, exits first.
  • three robots MB can be accommodated in the cage.
  • the robots MB-2 and MB-4 that have entered the cage earlier move to the nodes ND-2 and ND-3 at the back of the cage, leaving the node ND-1 on the entrance side of the cage.
  • the robot MB-3, which entered the cage later, is accommodated in the node ND-1 on the entrance side of the cage.
  • the two nodes ND-2 and ND-3 at the back of the cage are in a parallel relationship, and the robot MB that entered the cage first can move to either node ND.
  • FIG. 21 is a diagram showing an example in which a plurality of elevators EL are installed in parallel.
  • the cost of traveling to your destination will change depending on which elevator EL you use.
  • another robot MB uses the elevator, it is necessary to meet with the other robot, which increases the cost.
  • another robot MB-3 is boarding the elevator EL-1 from the first floor, and the waiting time changes depending on which floor the robot MB-3 gets off.
  • No other robot MB is on the elevator EL-2, and the cage is also on the 3rd floor. If no other robot MB is scheduled to use elevator EL-2, the cost to the destination will be lower.
  • competition with the robot MB is determined by replacing the opening/closing motion of the door DR of the elevator EL and the lifting motion of the cage with the movement motion of the virtual robot VM.
  • the meeting with the other robot MB is appropriately processed based on the arrangement of the virtual robot VM (which floor it is parked on) and the travel time (including the opening/closing time of the door DR and the raising/lowering time of the basket). Therefore, it is possible to plan the optimum route including the selection of the elevator EL based on the usage status of the elevators EL-1 and EL-2 by the other robots MB.
  • FIG. 22 is a diagram showing an example of a UI for setting the door DR.
  • the area setting unit 11 displays the graph MP on the display DP so that graph elements GE such as nodes ND and edges ED can be added. Also, the area setting unit 11 allows a plurality of graph elements GE set as the area AR to be collectively selected by an operation on the UI. After selecting the graph element GE for which area setting is to be performed, the capacity of the area AR can also be set using a pop-up window or the like.
  • the area setting unit 11 displays a window WD for setting information on the door DR (door information) at the selected position POS.
  • the door information includes, for example, information such as the name, type, opening/closing time of the door DR, and whether or not there is another door DR that operates in conjunction with the door DR. If the time required for opening and the time required for closing are different, input fields may be provided for entering each time separately.
  • the graph structure generator 12 adds a new node ND to the selected position POS, and sets the added node ND as the closed position CP of the door DR.
  • the graph structure generator 12 adds the shunting position SP, the shunting line SL, and the virtual robot VM to the graph MP along with the blocking position CP.
  • the graph structure generator 12 is configured to limit the movable range of the virtual robot VM to the evacuation position SP, the evacuation line SL, and the closed position CP, and to exclude the evacuation position SP and the evacuation line SL from the movable range of the robot MB. I do.
  • the area setting unit 11 displays on the UI the graph MP to which the blocking position CP, the shunting position SP, and the shunting line SL are added.
  • the user sets an area AR on the displayed graph MP.
  • the area setting unit 11 displays a selection tool for selecting multiple graph elements GE to be included in the same area AR.
  • the area setting unit 11 displays a window for setting the capacity of the area AR in response to the selection by the selection tool BX.
  • a selection tool a range selection tool such as a rectangle or lasso (a figure drawn by freehand) displayed on a mouse or touch panel, or a graph element GE to be selected by clicking (touching) can be selected individually. Individual selection tools are included.
  • the user places the virtual robot VM at the node ND (shelter position SP, closed position CP) according to the current open/closed state of the door DR.
  • the area setting unit 11 converts the setting contents into a picture of the door DR.
  • the area setting unit 11 replaces the current position of the virtual robot VM on the siding line SL with a diagram showing the open state or closed state of the door DR and displays it on the graph MP.
  • FIG. 22 is an example of the double door DD, but the same method is used when adding the elevator EL to the graph MP.
  • FIG. 23 is a diagram showing an example of applying the route search method of the present disclosure to an automatic guided vehicle system in a factory using an automated guided vehicle (AGV).
  • AGV automated guided vehicle
  • the transport system TS has a production management system (MES) 100, a transport control system (MCS) 200, an AGV control system (MCP) 300 and an AGV500.
  • the MES 100 issues a transport instruction to the MCS 200 based on the manufacturing process.
  • the transport instruction here is, for example, "transport C from apparatus A to apparatus B".
  • the MCS 200 determines which AGV 500 is to be used for transport, and further issues a transport instruction to the MCP 300 .
  • the transport instruction here is, for example, "Use the AGV (determined as the transport means) to transport C from point A to point B.”
  • the MCP 300 determines the specific movement route of the AGV 500.
  • a route planning system that considers the setting of doors DR of the present disclosure is used.
  • the system administrator can use the administrator UI 400 to add, change, or delete the door DR.
  • the administrator changes the setting of the door DR via the UI 400 for administrator.
  • the route planning unit 14 can reflect the changed settings and perform route planning.
  • the administrator can refer to the setting of the door DR set on the UI.
  • FIG. 24 is a diagram showing a hardware configuration example of the server 1.
  • the server 1 is implemented by a computer 1000.
  • FIG. The computer 1000 has a CPU 1100 , a RAM 1200 , a ROM (Read Only Memory) 1300 , a HDD (Hard Disk Drive) 1400 , a communication interface 1500 and an input/output interface 1600 .
  • Each part of computer 1000 is connected by bus 1050 .
  • the CPU 1100 operates based on programs stored in the ROM 1300 or HDD 1400 and controls each section. For example, the CPU 1100 loads programs stored in the ROM 1300 or HDD 1400 into the RAM 1200 and executes processes corresponding to various programs.
  • the ROM 1300 stores a boot program such as BIOS (Basic Input Output System) executed by the CPU 1100 when the computer 1000 is started, and programs dependent on the hardware of the computer 1000.
  • BIOS Basic Input Output System
  • the HDD 1400 is a computer-readable recording medium that non-temporarily records programs executed by the CPU 1100 and data (including various databases) used by these programs.
  • HDD 1400 is a recording medium that records an information processing program according to the present disclosure, which is an example of program data 1450 .
  • a communication interface 1500 is an interface for connecting the computer 1000 to an external network 1550 (for example, the Internet).
  • the CPU 1100 receives data from another device via the communication interface 1500, and transmits data generated by the CPU 1100 to another device.
  • the input/output interface 1600 is an interface for connecting the input/output device 1650 and the computer 1000 .
  • the CPU 1100 receives data from input devices such as a keyboard and mouse via the input/output interface 1600 .
  • the CPU 1100 also transmits data to an output device such as a display, speaker, or printer via the input/output interface 1600 .
  • the input/output interface 1600 may function as a media interface for reading a program or the like recorded on a predetermined recording medium.
  • Media include, for example, optical recording media such as DVD (Digital Versatile Disc) and PD (Phase change rewritable disk), magneto-optical recording media such as MO (Magneto-Optical disk), tape media, magnetic recording media, semiconductor memories, etc. is.
  • the CPU 1100 of the computer 1000 implements the various functions described above by executing programs loaded on the RAM 1200.
  • the HDD 1400 also stores a program for causing the computer to function as the server 1 .
  • CPU 1100 reads and executes program data 1450 from HDD 1400 , as another example, these programs may be obtained from another device via external network 1550 .
  • the server 1 has a graph structure generator 12 and a route planner 14 .
  • the graph structure generator 12 generates a graph MP in which the door DR on the passage PA is replaced with the turn-around line SL of the virtual robot VM.
  • the route planning unit 14 plans the route RT of the robot MB and the virtual robot VM so that the robot MB trying to pass through the passage PA does not compete with the virtual robot VM at the intersection of the passage PA and the siding line SL.
  • the processing of the server 1 is executed by the computer 1000 .
  • the program of the present disclosure causes the computer 1000 to implement the processing of the server 1 .
  • the path RT of the real robot MB and the virtual robot VM (door DR) is optimized by regarding the motion of the door DR as the motion of the virtual robot VM moving along the virtual siding SL.
  • Restrictions such as opening/closing timing and opening/closing time of the door DR can be expressed as timing and movement time (cost) for the virtual robot VM to move on the siding SL. Therefore, optimal route planning is performed in consideration of the opening/closing operation of the door DR.
  • the graph structure generation unit 12 sets a plurality of doors DR whose opening and closing operations are dependent on each other as one area AR so that an open door DR is alternatively generated.
  • the route planning unit 14 plans the routes RT of the plurality of virtual robots VM so that the plurality of virtual robots VM corresponding to the plurality of doors DR do not compete in the same area AR.
  • a plurality of doors DR includes a pair of doors DR that constitute a double door DD.
  • optimal route planning is performed in consideration of constraints such as opening/closing timing of each door DR.
  • the path planning unit 14 calculates the cost of path planning for one or more robots MB to be optimized based on the number of steps required for each robot MB to reach its goal, and each door DR existing in the graph MP. calculated based on the time required to open and close the
  • the optimum route planning is performed in consideration of the opening/closing time of the door DR.
  • the multiple doors DR include the doors DR of the elevator EL installed on each floor.
  • optimal route planning is performed in consideration of constraints such as the opening/closing timing of the doors DR on each floor.
  • the path planning unit 14 calculates the cost of path planning for one or more robots MB to be optimized, the number of steps required for each robot MB to reach its goal, the opening/closing of each door DR existing in the graph MP, and the time required for the car of the elevator EL to move to the position of the open door.
  • the optimal route planning is performed in consideration of the opening/closing time of the door DR and the movement time of the basket.
  • the server 1 has an area setting unit 11.
  • the area setting unit 11 presents a UI for visually setting the door DR.
  • the graph structure generator 12 incorporates the virtual robot VM and the siding SL into the graph MP based on the door DR information input via the UI.
  • the information of the virtual robot VM and the siding SL can be automatically incorporated based on the UI input information.
  • the area setting unit 11 replaces the current position of the virtual robot VM on the siding line SL with a diagram showing the open state or closed state of the door DR and displays it on the graph MP.
  • the motion of the door DR is expressed not as the virtual robot VM but as a picture of the door DR itself. Therefore, the operation of the door DR becomes easier to understand.
  • the present technology can also adopt the following configuration.
  • a graph structure generation unit that generates a graph in which the door on the aisle is replaced with a siding line for the virtual moving object; a route planning unit that plans the route of the moving object and the virtual moving object so that the moving object trying to pass through the passage does not compete with the virtual moving object at the intersection of the passage and the siding;
  • Information processing device having (2) The graph structure generation unit sets, as one area, a plurality of doors whose opening and closing operations depend on each other so that doors in an open state are alternatively generated, The route planning unit plans the routes of the plurality of virtual moving bodies so that the plurality of virtual moving bodies corresponding to the plurality of doors do not compete in the same area.
  • the information processing apparatus according to (1) above.
  • the plurality of doors includes a pair of doors that constitute a double door, The information processing apparatus according to (2) above.
  • the route planning unit calculates the cost of route planning for one or more moving bodies to be optimized, the number of steps required for each moving body to reach its goal, and the number of steps for each door existing in the graph. Calculated based on the time required for opening and closing, The information processing apparatus according to (3) above.
  • the plurality of doors includes elevator doors installed on each floor, The information processing apparatus according to (2) above.
  • the route planning unit calculates the cost of route planning for one or more mobile objects to be optimized, the number of steps required for each mobile object to reach its goal, and the opening and closing of each door existing in the graph.
  • the information processing apparatus Calculate based on the time required and the time it takes the elevator car to move to the position of the door that is in the open state, The information processing apparatus according to (5) above. (7) Having an area setting unit that visually presents a UI for setting the door, The information processing apparatus according to any one of (1) to (6) above. (8) The graph structure generation unit incorporates the virtual moving object and the siding line into the graph based on the door information input via the UI. The information processing apparatus according to (7) above. (9) The area setting unit replaces the current position of the virtual moving object on the siding line with a diagram showing an open state or a closed state of the door, and displays the graph on the graph. The information processing apparatus according to (7) or (8) above.
  • (10) Generate a graph in which the door on the aisle is replaced with a siding line for the virtual moving object, planning the route of the moving object and the virtual moving object so that the moving object trying to pass through the passage does not compete with the virtual moving object at the intersection of the passage and the siding;
  • a computer-implemented information processing method comprising: (11) Generate a graph in which the door on the aisle is replaced with a siding line for the virtual moving object, planning the route of the moving object and the virtual moving object so that the moving object trying to pass through the passage does not compete with the virtual moving object at the intersection of the passage and the siding;
  • a program that makes a computer do something comprising: (11) Generate a graph in which the door on the aisle is replaced with a siding line for the virtual moving object, planning the route of the moving object and the virtual moving object so that the moving object trying to pass through the passage does not compete with the virtual moving object at the intersection of the passage and the siding;

Landscapes

  • Engineering & Computer Science (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

情報処理装置(1)は、グラフ構造生成部(12)と経路計画部(14)とを有する。グラフ構造生成部(12)は、通路上の扉を仮想移動体の待避線に置き換えたグラフを生成する。経路計画部(14)は、通路を通過しようとする移動体(MB)が通路と待避線との交差部で仮想移動体と競合しないように移動体(MB)および仮想移動体の経路を計画する。

Description

情報処理装置、情報処理方法およびプログラム
 本発明は、情報処理装置、情報処理方法およびプログラムに関する。
 自律移動体の重要な機能の一つに経路計画がある。経路計画とは、周辺環境の地図を用いて、移動体がゴール地点までどのような経路で移動すべきかを計算するものである。移動体の動作をエレベータの扉と同期させて制御するシステムも知られている。
特許第5469097号公報 特開平4-032471号公報 特開平5-210414号公報 特開2005-148960号公報 特開2013-216408号公報 特開2012-196731号公報
 従来のシステムでは、扉をいつどのように開閉するかを考慮せずに経路計画が行われる。扉の開閉は、経路計画に基づく移動体の移動制御の一環として行われる。移動体の通過間隔が扉の開閉時間よりも短い場合には渋滞が生じる。エレベータや二重扉のように複数の扉が連動して制御される場合には、扉の開閉順序などの制約に基づいて渋滞が生じる可能性もある。従来のシステムではこれらの要素が十分に考慮されていない。そのため、扉の開閉動作を含めた全体の最適化が十分に行われない可能性がある。
 そこで、本開示では、扉の開閉動作を考慮した最適な経路計画を行うことが可能な情報処理装置、情報処理方法およびプログラムを提案する。
 本開示によれば、通路上の扉を仮想移動体の待避線に置き換えたグラフを生成するグラフ構造生成部と、前記通路を通過しようとする移動体が前記通路と前記待避線との交差部で前記仮想移動体と競合しないように前記移動体および前記仮想移動体の経路を計画する経路計画部と、を有する情報処理装置が提供される。また、本開示によれば、前記情報処理装置の情報処理がコンピュータにより実行される情報処理方法、ならびに、前記情報処理装置の情報処理をコンピュータに実現させるプログラムが提供される。
経路探索の対象となる移動体システムの概略図である。 経路に扉が導入された場合の課題を説明する図である。 経路に扉が導入された場合の課題を説明する図である。 経路に扉が導入された場合の課題を説明する図である。 想定される解決手法の一例を示す図である。 想定される解決手法の一例を示す図である。 課題解決のための手法を説明する図である。 本開示の経路計画の手法を二重扉に適用した例を示す図である。 本開示の経路計画の手法をエレベータに適用した例を示す図である。 経路地図として用いられるグラフの一例を示す図である。 経路計画の一例を示す図である。 経路計画の一例を示す図である。 CBSを用いた経路探索方法の説明図である。 経路探索のフローチャートである。 搬送システムの構成の一例を示す図である。 経路計画の一例を示す図である。 二重扉の開閉動作を含む経路計画の一例を示す図である。 本開示の経路計画をエレベータの制御に応用した例を示す図である。 エレベータの籠内に複数のロボットが収容される例を示す図である。 エレベータの籠内に複数のロボットが収容される例を示す図である。 複数のエレベータが並列に設置される例を示す図である。 扉の設定を行うためのUIの一例を示す図である。 本開示の経路探索手法を、無人搬送車を用いた工場での自動搬送システムに適用した例を示す図である。 サーバのハードウェア構成例を示す図である。
 以下に、本開示の実施形態について図面に基づいて詳細に説明する。以下の各実施形態において、同一の部位には同一の符号を付することにより重複する説明を省略する。
 なお、説明は以下の順序で行われる。
[1.背景]
 [1-1.軌道計画と経路計画]
 [1-2.経路に扉が導入された場合の課題]
 [1-3.課題解決のための手法]
  [1-3-1.二重扉への適用例]
  [1-3-2.エレベータへの適用例]
[2.本開示の経路計画の概要]
 [2-1.グラフ構造]
 [2-2.経路計画の例]
 [2-3.経路探索方法]
[3.搬送システムの構成]
[4.経路計画の具体例]
 [4-1.二重扉の開閉動作を含む経路計画]
 [4-2.エレベータ制御への応用]
  [4-2-1.エレベータの籠内に複数のロボットが収容される例]
  [4-2-2.複数のエレベータが並列に設置される例]
[5.ユーザインターフェース]
[6.本開示の経路探索手法の応用例]
[7.ハードウェア構成例]
[8.効果]
[1.背景]
[1-1.軌道計画と経路計画]
 図1は、経路探索の対象となる移動体システムの概略図である。以下では、移動体が自律移動型のロボットMBであり、移動体システムが荷物などの搬送システムTSである例が説明される。以下の全ての図面においては、同種の構成に対して同一の符号が付される。同種の構成どうしを区別する場合には、符号の後ろに番号または記号が付される。
 自律走行可能なロボットMBを用いたシステムが様々な目的、例えば物品の搬送、設備の点検および警備などで用いられている。ロボットMBが移動するためには、環境上の静的および動的な障害物OB(他のロボットMBも含む)に衝突しないように目的地まで到達する必要がある。その手法として、大別すると経路地図を用いない手法と用いる手法とがある。
 経路地図を用いない方法とは、目的地までの軌道を直接決定する軌道探索アルゴリズムを使用する方法である。例えば軌道探索アルゴリズムとしてA*アルゴリズムやRRT(Rapidly exploring Random Tree)アルゴリズムが知られている。これらの手法ではロボットMBの周辺地図(周辺移動可能領域)の認識と、それに基づく目的地に向けた軌道探索(その時点での最適な移動速度および角速度の決定)と、が高頻度に繰り返される。これにより、動的な障害物OBがあったとしても衝突を回避することができる。
 経路地図を用いない方法では、環境が広い(移動距離が大きい、目的地が遠い)場合には最適な移動速度および角速度を決定するための探索空間が広いため、計算量が大きくなってしまい高頻度の繰り返しが不可能になってしまうという問題がある。周辺環境認識と軌道探索を繰り返すことで障害物OBを回避しつつ目的地までの軌道を決定するこの方法を軌道計画と呼ぶ。
 より広い環境でロボットMBを運用する目的で、経路地図(グラフMP:図10参照)を用いる方法がある。経路地図は、中間目的地候補となる中継ノード群と、直接通行可能な中継ノード間を結んだエッジ群と、で構成されたトポロジカルマップとして表現される。経路地図を用いる手法では、現在地と最終目的地との間でどのノードNDおよびエッジEDを経由するかを決定する経路計画が最初に行われ、ノードND間の移動方法が前述の軌道計画に基づいて制御される。これにより、目的地までの全ての経路を軌道計画に基づいて決定する場合に比べて、計算量の削減が図られる。
 経路計画手法としてはダイクストラアルゴリズムなどが用いられることが多い。経路地図は、フロアマップを元に手動で設計される。フロアマップは、例えば、計量データに基づいて施設内の物体の大きさおよび位置が正確に規定されたメトリックマップMMとして提供される。フロアマップは、施設のデータベースから取得されてもよいし、SLAM(Simultaneous Localization and Mapping)などを用いて自動生成されてもよい。後者の形態では、ロボットMBを施設内で移動させて生成した周辺地図をフロアマップとして用いることができる。
 軌道計画による衝突回避には、衝突を回避できる十分なスペースが必要である。例えば狭い一本道を対向するように別のロボットMBが近づいてくる場合や、直交する狭い交差点で別のロボットMBが出合い頭に真横から同時に交差点に進入してきた場合などは、ロボットMBが認識できる周辺地図内で、目的地(経路地図を用いる場合は次の経由ノードND)に到達可能な軌道を算出することができない。その結果、2台のロボットMBが見合ったまま身動きが取れなくなる。この状況をデッドロックと呼ぶ。
 経路地図を用いる手法では、デッドロックが生じた経路を通行不能として改めて経路計画をやり直すことで状況を解決する方法が知られている(再経路計画)。経路計画ではロボットMBが認識できる周辺地図よりも広域を扱うことができるため、単純なデッドロックであれば再経路計画によって解決することができる。しかし、ロボットMBの数が多い場合には、例えば一本道で他のロボットMBと対向しあったまま更に後続のロボットMBもいて戻ることもできないケースなど、ロボットMB単体の視点では解決できないケースが起こりやすくなってしまう。
 そこで、特許文献1では、各ロボットMBで経路計画を行うのではなく、中央サーバが各ロボットMBの経路計画を行うことで全体最適化を行う方法が提案されている。例えば交差点に同時に1台しかロボットMBが進入しないように、他のロボットMBを交差点の外で一時待機させたり、一本道の通行方向を時間で定めて、逆方向のロボットMBは一本道の手前で一時待機させたりすることが考えられる。どのロボットMBをどこでいつ待機させ、どのロボットMBにどの経路でいつ通行させるかを制御することにより、デッドロックを起こさないようにすることができる。
 上述の手法は、ロボットMBどうしの動作の干渉を防ぐには効果がある。しかし、ロボットMBが稼働する環境には二重扉DDやエレベータEL(図21参照)などの設備が設置される場合がある。このような場合に設備の稼働状況を含めた全体の最適化を図る手法については、これまで十分に検討されてこなかった。以下、この課題について説明する。
[1-2.経路に扉が導入された場合の課題]
 図2ないし図4は、経路に扉が導入された場合の課題を説明する図である。
 上述のマルチロボットシステムを、遠隔制御可能なエレベータELや自動扉DRのある環境に適用し、エレベータELや自動扉DRも含めてロボットMBの経路を制御するシステムが特許文献2ないし6に開示されている。これらの手法はいずれも、扉DRやエレベータELをいつどのように制御するかを考慮せずにいったんロボットMBの経路を計画しておき、次のステップとして、その計画に従った各ロボットMBの移動の一環として、扉DRやエレベータELの制御を行っている。
 例えば特許文献6では、エレベータELにどのロボットMBを載せるかが、事前に決められた優先度のみを考慮して決定される。同じ優先度のロボットMBどうしでは早いもの勝ちで乗る順番が決まる。また、エレベータELが空いた瞬間にはまだエレベータEL待ち状態にはなっていないロボットMBについては、搭乗候補から除外される。これらの点で、全体最適性には限界がある。
 例えば、図2のような前後2枚の扉DRで構成された二重扉DDのように、片方の扉DRが開いているともう片方は開けられないようなケースがある。複数の扉DRの開閉状況が互いに関連しあう設備では、それらの制御をどのように行うかがロボットMBの全体最適性に大きく影響を与える。
 例えば、図2の例では、既に二重扉DDの内側に入っているロボットMB-1を少し待たせてでも後続のロボットMB-2を後ろの扉DR-1から入れて、2台まとめて前の扉DR-2を通過させた方が全体最適性が高い。図3の例では、遠い後続のロボットMB-2を待って2台のロボットMB-1,MB-2をまとめて通過させるよりも、前の扉DR-2の前で待っている2台のロボットMB-1,MB-3を先に動かしたほうが全体最適性が高い。早い者勝ちで通過順を決める従来の手法では、図4のように、扉DRの手前の位置FRに先に到達したロボットMB-2が優先される。そのため、扉DRの開閉動作に起因するロボットMBどうしの待ち合わせを考慮した全体最適化を図ることは難しい。
 このような問題はエレベータELについても当てはまる。エレベータELでは、ある階で扉DRを開けて乗降可能にしているときには他の階では乗降を行うことができない。そのため、既にエレベータELを待っているあるロボットMBを更に待たせてでも、後からくる別のロボットMBを載せた方が全体最適性が高いケースなどを正しく扱うことができない。例えば、エレベータELを降りた先が一車線の袋小路で、後から来たロボットMBの方が袋小路の奥の目的地に向かう場合には、後から来たロボットMBを先に載せた方が良い。しかし、早い者勝ちのように先に来たロボットMBを優先させる手法では、このような制御は行われない。
 既存手法では、扉DRの開閉動作に基づく制約は経路計画後の移動実行フェーズまで考慮されない。移動実行フェーズでは、早いもの勝ち等のシンプルな設備制御基準で上記の制約が解決される。本来これらの制約を踏まえると、もともとのロボットMBの経路計画も変えるべきであったケースを救えないため、全体最適性を高めることが難しい。
 この問題に対し、設備制御基準を拡張する対応も考えられる。例えば、図5および図6は、想定される解決手法の一例を示す図である。
 図5は、二重扉DDを左から右に抜けようとしているロボットMB-1が後ろの扉DR-1を閉めて前の扉DR-2を開けようとしている場面を示す。ここでもし他のロボットMB-2が同じ二重扉DDを左から右に抜けようとしている場合、ロボットMB-1は後ろの扉DR-1を閉めるのを少し待って、ロボットMB-2と一緒に二重扉DDを抜けた方が全体最適性が高いケースがある。
 そこで、設備制御の基準を単なる早いもの勝ちではなく、後続のロボットMB-2がいるかどうかのチェックを加えるという工夫が考えられる。図5の下図に示すように後続チェック区間CKをあらかじめ定めておき、同じ二重扉DDを抜けようとする他のロボットMB-2がいる場合には後ろの扉DR-1の閉鎖を待ち、そうでない場合はすぐに後ろの扉DR-1を閉めて前の扉DR-2を開ける。
 図6は、同様の状況だが二重扉DDの反対側でいくつかの他のロボットMBが反対方向に抜けようと待っている場面を示す。このようなケースでは、1台の後続のロボットMB-2を待つよりも、複数台の対向側のロボットMBの移動開始を早めた方が全体最適性が高いケースがある。そこで、設備制御の基準に更に工夫を加え、扉DR-2の向こうに所定の台数以上のロボットMBが待っているときには後続チェックを行わずにただちに二重扉DDの開閉制御を開始するというルールを追加することが考えられる。
 上記のように、様々な状況を想定し、想定した状況に合わせて二重扉DDの制御ルールを改善していくことにより、全体最適性を高めていくアプローチも可能である。しかし、想定できていない状況には対応できない。また、例えば扉DRの前がT字路の場合、扉DRが連続している場合など、状況が複雑化するとルールが複雑化し、ルール開発コストがかかってしまう。また、例えば上記のケースでは後続チェック区間CKはどのくらいの長さにするべきか、後続チェックを解除する場合の対向側のロボットMBの数は何台以上とすべきか、などのチューニング要素があり、全体最適性を高めるためのチューニングにかけるコストも必要になってしまう。
[1-3.課題解決のための手法]
 本発明は上述の課題に鑑みてなされたものである。本開示では、扉DRとロボットMBの動作を一体的に計画するために、以下のような方法が採用されている。図7は、課題解決のための手法を説明する図である。
 本開示の経路計画では、扉DRの開閉動作が、仮想ロボットVMが仮想の待避線SL上を移動する動作とみなされる。例えば、扉DRが開く動作は、扉DRの前(ロボットMBの通路PAを塞ぐ閉塞位置CP)から仮想ロボットが仮想の待避位置(SP)に向けて移動する動作とみなされる。扉DRが閉まる動作は、仮想ロボットVMが待避位置SPから閉塞位置CPに向けて移動する動作とみなされる。ロボットMBと仮想ロボットとが干渉しないようにロボットMBおよび仮想ロボットの最適な経路が計画される。扉DRの開閉動作が仮想ロボットVMの移動動作に置き換えられることで、扉DRの開閉動作がロボットMBの移動動作と一体に計画される。
 本開示の経路計画のポイントは、扉DRやエレベータELの振る舞いをトポロジカルマップの拡張と仮想的な自律移動型ロボット(仮想ロボットVM)の振る舞いにモデル化することである。これにより、既存のロボットMBの経路計画の手法をそのまま用いて扉DRやエレベータELの開閉の計画も行うことが可能となる。例えば、扉DRが閉まっていたり、エレベータELが他の階にいるなどで先へ進めない状態は、仮想ロボットVMが通路PAを塞いでいる状態としてモデル化される。扉DRが開いていたり、エレベータELが目的階にいて扉DRが開いていて先へ進める状態は、仮想ロボットVMが仮想ロボットVM専用の待避線SLに移動したことで通路PAが空いた状態としてモデル化される。
 待避位置SPおよび閉塞位置CPは経路地図にノードNDとして組み込まれる。待避線SLは経路地図にエッジEDとして組み込まれる。扉DRの開閉時間は、仮想ロボットVMが待避線SLに沿って待避位置SPと閉塞位置CPとの間を移動する際のコスト(移動時間)とみなされる。扉DRの開閉時間を仮想ロボットVMの移動コストとみなすことで、ロボットMBの経路探索アルゴリズムがそのまま仮想ロボットVMの経路計画に流用される。この結果、ロボットMBと仮想ロボットVMの経路計画が同一のアルゴリズムに基づいて一体的に実施される。
 仮想ロボットVMは、待避線SLに沿った移動のみが許容される。通常のロボットMBは、待避線SL上を移動することはできない。このような制約のもと、経路計画の実施に際しては、仮想ロボットVMは待避位置SP、閉塞位置CPおよび待避線SLのみを移動でき、通常のロボットMBは待避線SLおよび待避位置SPを移動することができないとする条件が付される。閉塞位置CPには、仮想ロボットVMおよび通常のロボットMBの双方が移動できる。
 待避線SLの移動コストとして、通過可否の切り替えにかかる時間を踏まえた値が設定される。例えば扉DRであれば制御信号を送信してから実際に扉DRが開閉しおわるまでの時間が移動コストとして設定される。開動作と閉動作とで時間(コスト)が異なる場合は、移動の向きに応じて異なるコストが設定される。例えばある階のエレベータELの扉DRの移動コストを設定する場合、開く方向(仮想ロボットVMが待避線SLに沿って待避位置SPに移動)の移動コストはエレベータELがその階まで移動するのにかかる平均時間と、扉DRが開く時間とを踏まえて設定される。閉まる方向(仮想ロボットVMが待避線SLに沿って待避位置SPから閉塞位置CPに移動)の移動コストは、単純にエレベータELの扉DRが閉まる時間として設定することができる。
 上述の手法は、同時にはどこか1つの階しか開けることができないエレベータELの扉DRや、2つ同時には開けない二重扉DDなど、ある地点の通過可否制御が他の地点の通過可否状態に依存するケースに適用することもできる。
[1-3-1.二重扉への適用例]
 図8は、本開示の経路計画の手法を二重扉DDに適用した例を示す図である。
 ここでは、エリアの概念を用いて、特定領域に同時に侵入可能な物体(ロボットMB、仮想ロボットVM)の数が制限される。例えば、同時には開けない地点をあらわす複数の待避線SLが、侵入制限の対象となる一つのエリアARとして設定される。図8の例では、扉DR-1に対応する待避線SL-1および待避位置SP-1と、扉DR-2に対応する待避線SL-2および待避位置SP-2が1つのエリアARとして設定される。経路計画の実施に際しては、同一のエリアARに同時に存在できるロボットMBおよび仮想ロボットVMの総数は1台だけという制約が付される。
 このように変形したトポロジカルマップを元に、追加した仮想ロボットVMを含めて複数のロボットMBの経路計画が行われる。これにより、実在のロボットMBだけでなく、仮想ロボットVMも含めてどのように移動すべきか、あるいは、待ち合わせすべきか、の計画が行われる。
 作成された経路計画に基づいて、ロボットMBや扉DRの制御が行われる。この際、ロボットMBの制御は従来通りで良いが、仮想ロボットVMの制御は扉DRの開閉制御に置き換えて実施される。例えば、閉塞位置CPから待避位置SPへの仮想ロボットVMの移動開始は、扉DRの開動作の開始に置き換えられる。待避位置SPから閉塞位置CPへの仮想ロボットVMの移動開始は、扉DRの閉動作の開始に置き換えられる。
 経路計画の実行時、現在のロボットMBの位置や各途中経路地点への到達報告を踏まえて適宜制御を行う場合がある。例えば上述の経路計画の手法では、各ロボットがどこにいるべきかが時系列のデータとして定められているが、実際には計画通りに移動できないこともある。そのため、計画実行時には時刻レベルの制御ではなく、計画で得られた順序関係(どのロボットがどの交差点をどの順番で通過するべきか)だけを実現する手法(順序制御)もある。順序制御では、あるロボットMBが現在どこにいて、そのロボットMBがポイントとなる経路途中のノードNDを通過したかどうかを確認した上で、別のロボットMBの待ち合わせを解除する、という手法がとられる。
 このような手法を用いて制御する場合、仮想ロボットVMの現在位置は、扉DRの状態を元に判定される。例えば扉DRが開放状態であれば仮想ロボットVMは待避位置SPにいるものと判定される。扉DRが閉じている最中であれば仮想ロボットVMは待避線SLを閉塞位置CPに向かって移動中であると判定される。また、扉DRの開動作の完了は仮想ロボットVMの待避位置SPへの到着として扱われる。扉DRの閉動作の完了は仮想ロボットVMの閉塞位置CPへの到着として扱われる。
[1-3-2.エレベータへの適用例]
 図9は、本開示の経路計画の手法をエレベータELに適用した例を示す図である。
 エレベータELは、複数の階の扉DRを同時に開くことができない。ある階の扉DRが開いているときには、他の全ての階の扉DRは閉まっている。そのため、同一のエレベータELに属する複数の階の扉が一つのエリアARとして設定される。
 図9の例では、エレベータELの設置場所は1階から3階までである。1階の仮想ロボットVM-1が1階の待避線SL-1上または1階の待避位置SP-1に存在するときは、2階の仮想ロボットVM-2および3階の仮想ロボットVM-3はそれぞれ2階の閉塞位置CP-2および3階の閉塞位置CP-3に存在する。
 そのため、エリアARは、1階の扉DRに対応する待避線SL-1および待避位置SP-1と、2階の扉DRに対応する待避線SL-2および待避位置SP-2と、3階の扉DRに対応する待避線SL-3および待避位置SP-3と、にまたがる領域として設定される。経路計画の実施に際しては、同一のエリアARに同時に存在できるロボットMBおよび仮想ロボットVMの総数は1台だけという制約が付される。
[2.本開示の経路計画の概要]
[2-1.グラフ構造]
 図10は、経路地図として用いられるグラフMPの一例を示す図である。
 前述のように、自律移動型のロボットMBにとって経路計画は基本的な問題の一つである。最短の経路を効率よく求めるために、図10のようなグラフMPが用いられる。グラフMPは、ノードNDおよびエッジEDをグラフ要素GEとして含む。グラフMPは、ロボットMBの動く環境を表したトポロジカルマップである。グラフMPは環境中の障害物OBの配置などを元に作成される。グラフMPは無向グラフである場合もあるし、有向グラフ(一方通行が表現可能)である場合もある。図10は有向グラフの例を示す。
[2-2.経路計画の例]
 図11および図12は、経路計画の一例を示す図である。
 経路計画は、例えば通過するノードNDやエッジEDと、それらを通過する時刻の連続で表される。エッジEDを通行する場合は、エッジEDの一端のノードNDを出発する時刻と、他方のノードNDへ到着する時刻で経路計画が表される。ノードNDで待機する場合は、待機の開始時刻と終了時刻で経路計画が表される。スタート地点(ノードND)からゴール地点(ノードND)までのエッジEDの通行時刻、ノードNDでの待機時刻の配列が経路計画となる。
 複数の異なるロボットMBが同時刻に同じノードNDで待機、もしくは同じエッジEDを通行する場合、それらの経路RTは競合(干渉ともいう)しているとみなされる。複数ロボット経路計画では、競合の無い経路RTの組が求められる。競合の無い経路RTの組は、例えばA*(A-star)やCBS(Conflict-Based Search)などのグラフ探索アルゴリズムによって求められる。
 ほとんどの複数ロボット経路計画アルゴリズムでは、経路RTの競合をチェックする処理がある。経路RTの競合のチェックでは、グラフMPの全てのノードNDおよびエッジEDについて、それぞれ、各ロボットMBのノードNDで待機する時刻もしくはエッジEDを通行する時刻の重複が存在するかが確認される。一つでも時刻の重複が存在する場合は、その経路RTの組は競合しているとみなされ、別の経路RTの組が探索される。
[2-3.経路探索方法]
 図13は、CBSを用いた経路探索方法の説明図である。
 CBSは各ロボットMBの(他のロボットMBの存在を考慮しない)最短経路から始めて、ロボットMBどうしの競合(Conflict)を一つずつ解決しながら、最終的に競合の無い最適解(=全てのロボットMBが最も速くゴールに到達できる経路計画の組)を求めるアルゴリズムである。制約ツリーCT(Constraint tree)と呼ばれる二分木を展開して解を探索していくことで最適解が実現される。
 左図(i)に図示された頂点S、S、A、・・・、A、B、・・・、B、C、GおよびGから成るグラフMPを例に考える。頂点Sおよび頂点SはそれぞれロボットMB-1およびロボットMB-2のスタート地点のノードNDであり、頂点Gおよび頂点GはそれぞれロボットMB-1およびロボットMB-2のゴール地点のノードNDである。ロボットMBは各タイムステップに1つのエッジEDを進む。このとき、制約ツリーCTは右図(ii)のように展開されていく。
 制約ツリーCTの各ノードNDは、(1)制約(Constraint)の組、(2)各ロボットMBの経路計画の組、(3)合計コスト(コストはロボットMBがゴールに到達するまでに要するステップ数)で構成される。
 まず、ルートノード(制約ツリーCTの最も上にあるノードND)は制約無しでの各ロボットMBの最短経路となる。そのため、ロボットMB-1の経路RT-1はS→A→C→Gとなり、ロボットMB-2の経路RT-2はS→B→C→Gとなる。ここで、ロボットMB-1とロボットMB-2は2ステップ目に頂点Cで競合する。そのため、2ステップ目で頂点Cに到達しないような制約を加えた子ノードが生成される。このとき、ロボットMB-1に対する制約とロボットMB-2に対する制約で2つの子ノードができる。
 制約は、(1)対象となるロボットMB、(2)到達不可能な頂点、および、(3)そのステップ数で表される。図中の「Con:{(1,C,2)}」はロボットMB-1が2ステップ目で頂点Cに到達してはいけないという制約になる。子ノードでは、制約を踏まえて各ロボットMBの最短経路が再計算される。
 例えば図中の左の子ノードでは、制約により、ロボットMB-1が頂点Aで1ステップ待つ(S→A→A→C→G)ようになっている。このようにすることで先ほどの競合を解決することができる。待機によって1ステップ増えたことにより、合計コストは親ノードに対して1だけ増えている。この操作を繰り返し行うことで、最終的に競合の無い経路RTの組み合わせが見つかる。また、合計コストの最も小さいノードNDから展開していくことで、最初に見つかった競合の無い経路RTの組み合わせが最適解(=コストが最も小さい解)となる。
 図14は、経路探索のフローチャートである。
 まず、ユーザは、環境に存在する全てのロボットMBの情報を入力する(ステップSA1)。探索システムは、制約ツリーCTのルートノードとして各ロボットMBの最適経路を探索し、コストを計算する(ステップSA2)。探索システムは、制約ツリーCT上の最もコストの小さいノードNDを選択する(ステップSA3)。探索システムは、グラフMPの各ノードNDおよび各エッジEDでの競合を検出する(ステップSA4)。
 探索システムは、2つのロボットMBの経路に競合があるか否かを判定する(ステップSA5)。競合があると判定された場合には(ステップSA5:Yes)、探索システムは、競合が生じないような制約を加えた子ノードを制約ツリーCTに追加する(ステップSA6)。そして、探索システムは、追加した子ノードにおいて、制約を満たすような最適経路を探索し、コストを計算する(ステップSA7)。その後、ステップSA3に戻り、上記の処理を繰り返す。ステップSA5において競合がないと判定された場合には(ステップSA5:No)、探索システムは、各ロボットMBの経路を最適解と認識し、処理を終了する。
[3.搬送システムの構成]
 図15は、搬送システムTSの構成の一例を示す図である。
 搬送システムTSは、物流センタなどの施設に設置された自律移動型のロボットMBを用いて搬送物を搬送する。搬送システムTSは、移動体に所定の処理を実施させる移動体システムの一種である。搬送システムTSは、サーバ1、ロボットMBおよび設備管理装置FMを有する。設備管理装置FMは、施設内に設置された各種設備を管理する。施設内の設備には、扉DRおよびエレベータELなどが含まれる。ロボットMBおよび設備管理装置FMはネットワークを介してサーバ1と接続されている。サーバ1に入力された搬送指示に応じてロボットMBおよび設備管理装置FMが制御されることで、搬送が実行される。
 本開示では搬送を目的とするシステムが説明されるが、搬送を目的としないシステムにも本開示の経路計画の手法は適用できる。搬送を目的としないシステムとしては、定期的に対象エリアをパトロールする監視システム、店舗にやってきたゲストをロボットMBで案内するシステム、および、自動運転車を対象とした自動駐車場などが挙げられる。
<ロボット>
 ロボットMBは、例えば、走行用のレールを用いない無軌道自律移動ロボットである。ロボットMBは、通信部29を介して目標地点が与えられると、自律的に軌道を計画して目標地点まで移動する。ロボットMBは、カメラ、GPS(Global Positioning System)、LiDAR(Light Detection and Ranging、Laser Imaging Detection and Ranging)およびIMU(Inertial Measurement Unit)などのセンサを内蔵する。
 ロボットMBは、自己位置推定部21、環境情報取得部22、軌道計画部23、駆動制御部および通信部29を有する。環境情報取得部22は、内蔵センサからのセンサデータに基づいてロボットMBの外部環境に関する情報(環境情報)を取得する。自己位置推定部21は、SLAMなどの技術を用いて、環境情報をもとに周辺地図の生成および自己位置(ロボットMBの位置)の推定を行う。
 環境情報および自己位置の情報は、通信部19,29を介してサーバ1に供給される。サーバ1は、環境情報から、通路PAの通行の可否に関する情報を抽出する。サーバ1は、各ロボットMBの自己位置に関する情報および通路PAの通行可否の情報に基づいて経路計画を行う。経路計画に関する情報は、通信部19,29を介して各ロボットMBに供給される。
 軌道計画部23は、環境情報に基づいて前方の障害物OBを検出する。軌道計画部23は、障害物OBを回避しつつ目標地点(次のノードND)まで移動するための望ましい軌道を計画する。軌道計画とは、近くの障害物OBから何ミリ離れて通過すべきか、コーナーをどのようなカーブを描いて通過すると安全でスムーズに移動できるか、というレベルの制御を意味する。
 駆動制御部24は、各ロボットMBの位置情報を用いて生成された経路計画、および、障害物OB等の情報に基づいて決定された軌道計画に基づいて、ロボットMBの駆動を制御する。駆動制御には、搬送物の移載処理などに関する制御も含まれる。軌道計画および駆動制御を高頻度に繰り返すことで、動いている障害物OBなどがあっても安全に移動することができる。
 図15の例では、ロボットMBとして無軌道自律移動ロボットが用いられたが、ロボットMBはこれに限定されるものではない。本開示の経路計画の手法は、通信を介して移動を制御できるロボットMBであれば適用可能である。例えば、走行用のレールを用いる有軌道自律移動ロボットや、いわゆるラジコンのように直接リモートから駆動制御を行うタイプのロボットMBでも本開示の手法を適用可能である。
<設備管理装置>
 設備管理装置FMは、施設内に設置された1以上の扉DRの開閉を制御する。扉DRは、通信部39を介した開閉指示に基づいて開閉動作が制御可能な自動扉である。施設には、扉DRの他に、扉DRの周辺を監視する監視センサが設置されている。監視センサとしては赤外線センサなどが用いられる。施設内にエレベータELが設置される場合には、各階の扉DRの開閉動作および籠の昇降動作も設備管理装置FMによって制御される。
 設備管理装置FMは、設備情報取得部31、設備制御部32および通信部39を有する。設備情報取得部31は、監視センサからのセンサデータに基づいて、扉DRの開閉状況、および、扉DRへのロボットMBの接近状況などに関する情報(監視情報)を取得する。サーバ1は、通信部19,39を介して取得した監視情報に基づいて経路計画を行う。設備制御部32は、サーバ1で生成された経路計画に基づいて扉DRの開閉を行う。エレベータELの場合は、経路計画に基づく籠の昇降も設備制御部32によって行われる。
<サーバ>
 サーバ1は、経路計画を行うための各種情報を処理する情報処理装置である。サーバ1は、外部からの搬送指示に基づいてロボットMBおよび設備管理装置FMを制御する。サーバ1は、エリア設定部11、グラフ構造生成部12、タスク計画部13、経路計画部14、ロボット制御部15、扉制御部16および通信部19を有する。
 エリア設定部11は、視覚的に扉DRの設定を行うUI(User Interface)を提示する。グラフ要素GEの数および配置に関する情報は、グラフ構造生成部12から供給される。エリア設定部11は、UIを介して入力されたユーザ入力情報に基づいてエリアARの設定を行う。
 例えば、エリア設定部11は、扉DRの設定を行うためのUIをディスプレイDP(図22参照)に表示する。ユーザは、UIを用いて扉DRに関する情報およびエリアARに関する情報を入力する。エリア設定部11は、UIを介して入力されたエリアARの情報をユーザ入力情報として取得する。
 グラフ構造生成部12は、ユーザ入力情報に基づいて、通路PA上の扉を仮想ロボットVMの待避線SLに置き換えたグラフMPを生成する。例えば、グラフ構造生成部12は、UIを介して入力された扉DRの情報に基づいて、グラフMPに仮想ロボットVM、待避線SL、待避位置SPおよび閉塞位置CPを組み込む。グラフ構造生成部12は、ユーザ入力情報に基づいてグラフMPにエリアARを設定する。エリアARは複数のグラフ要素GE(待避線SLおよび待避位置SPを示すエッジEDおよびノードND)を含む。
 各エリアARおよび各グラフ要素GEにはキャパシティが設定されている。キャパシティは、同時に存在することが許可されるロボットMBおよび仮想ロボットVMの総数を示す。グラフ構造生成部12は、ユーザ入力情報に基づいて各エリアARのキャパシティを設定する。グラフ構造生成部12は、グラフMPに含まれる全てのグラフ要素GEのキャパシティを例えば1に設定する。グラフ構造生成部12は、エリアARおよびキャパシティの情報を反映したグラフMPを生成し経路計画部14に供給する。
 タスク計画部13は、搬送指示の内容に鑑みて最も適切なロボットMBを搬送主体に割り当てる。タスク計画部13は、搬送主体となったロボットMBの作業内容を細分化し、細分化された複数のタスクを順番にロボットMBに実施させるためのタスク計画を生成する。タスク計画部13は、生成されたタスク計画を、搬送主体となるロボットMBの駆動制御部24に供給する。
 例えば「地点Aから地点Bに搬送物Xを運ぶ」という搬送指示の場合、タスク計画部13は、搬送指示が示すタスクを、地点Aへの移動タスク、地点Aで搬送物Xを積載するタスク、地点Bへの移動タスク、および、地点Bでの搬送物Xの降載タスクに分解する。タスク計画部13は、細分化された複数のタスクを搬送主体となるロボットMBに対して順番に実行させるためのタスク計画を生成する。
 搬送主体となるロボットMBを決定する方法としては様々な方法が考えられる。例えば、全てのロボットMBがタスクのない空きロボットMBである場合には、移動タスクの目的地に最も近い空きロボットMBを搬送主体として決定することができる。空きロボットMBが無い場合には、最も割り当てられているタスクが少ないロボットMBを搬送主体として決定することができる。
 経路計画部14は、各ロボットMBがどのような経路RTをたどってそれぞれの目的地に移動するべきかを決める。ここで経路計画とは、すれ違いできない一車線通路などを踏まえ、どのロボットMBがどの順番でどの通路PAを通るべきか、というレベルの計画を行うことを意味する。
 例えば、経路計画部14は、グラフMPからエリアARおよびキャパシティの情報を取得する。経路計画部14は、エリアAR内でエリアARのキャパシティを超えたロボットMBおよび仮想ロボットVMの競合が生じないように、グラフMP内での各ロボットMBおよび各仮想ロボットVMの経路RTを計画する。競合の判定は、ロボットMBどうしの競合に限らず、ロボットMBと仮想ロボットVMとの競合、および、仮想ロボットVMどうしの競合についても行われる。経路計画部14は、通路PAを通過しようとするロボットMBが通路PAと待避線SLとの交差部で仮想ロボットVMと競合しないようにロボットMBおよび仮想ロボットVMの経路RTを計画する。
 例えば、経路計画部14は、まず、エリアAR、ノードNDおよびエッジEDでの競合を考慮せずに、各ロボットMBおよび各仮想ロボットVMの最短経路を求める。最短経路の探索は、A*などの公知の手法を用いて行われる。算出された各ロボットMBおよび各仮想ロボットVMの最短経路において、エリアAR、ノードNDまたはエッジEDのいずれかにおいて競合が生じた場合には、経路計画部14は、競合が発生した部分を制約として再び各ロボットMBおよび仮想ロボットVMの最短経路を求める。これを繰り返して、経路計画部14は、競合が生じない各ロボットMBおよび各仮想ロボットVMの経路RTの組を探索する。
 経路計画部14は、最終的に得られた各ロボットMBおよび各仮想ロボットVMの経路RTに基づいて、各ロボットMBおよび各仮想ロボットVMの経路情報を生成する。経路情報は、ロボットMBおよび仮想ロボットVMの移動先および移動時刻(移動タイミング)に関する情報を含む。経路計画部14は、各ロボットMB各仮想ロボットVMの経路情報をロボット制御部15および設備制御部32に供給する。
 新しく移動目的地が追加されたロボットMBが生じた場合には、経路計画部14は、他のロボットMBの経路計画を変えずに、新しく移動目的地が追加されたロボットMBだけに追加の経路計画を行ってもよいし、他のロボットMBの経路計画の見直しを含めて全体最適化を行ってもよい。
 ロボット制御部15は、各ロボットMBの経路情報に基づいて、各ロボットMBの移動指示を生成する。移動指示は、ロボットMBの移動先および移動時刻(移動タイミング)に関する情報を含む。移動指示は、ロボットMBが、どのグラフ要素GEをどの順番で通過するかについてのデータの列として生成されてもよい。ロボット制御部15は、各ロボットMBの移動指示を通信部19を介して各ロボットMBに送信する。
 扉制御部16は、仮想ロボットVMの経路情報に基づいて、対応する扉DRの開閉指示を生成する。開閉指示は、扉DRの状態変化の方向(開く方向、閉じる方向)および状態変化の開始時刻(開動作および閉動作の開始タイミング)に関する情報を含む。扉制御部16は、閉塞位置CPから待避位置SPへの仮想ロボットVMの移動を扉DRの開動作と置き換え、待避位置SPから閉塞位置CPへの仮想ロボットVMの移動を扉DRの閉動作と置き換えて開閉指示を生成する。
 扉制御部16は、各扉DRの開閉指示を通信部19を介して各設備制御部32に送信する。扉DRがエレベータELの扉である場合には、扉制御部16は、扉DRの開閉動作に合わせたエレベータELの籠の昇降指示も生成する。例えば、1階の仮想ロボットVMが待避位置SPから閉塞位置CPに移動を完了し、その後、2階の仮想ロボットVMが閉塞位置CPから待避位置SPに向けて移動を開始する場合、扉制御部16は、1階の仮想ロボットVMが閉塞位置CPへ移動を完了したタイミングに合わせて、籠を1階から2階に移動させる動作を昇降指示として生成する。扉制御部16は、昇降指示を開閉指示とともに設備制御部32に送信する。
 グラフ構造生成部12は、開状態の扉DRが択一的に生じるように開閉動作が依存しあう複数の扉DRを1つのエリアARとして設定する。経路計画部14は、複数の扉DRに対応する複数の仮想ロボットMBが同一のエリアARにおいて競合しないように複数の仮想ロボットVMの経路RTを計画する。
 例えば、開閉動作が依存しあう複数の扉DRには、二重扉DDを構成する一対の扉DRが含まれ得る。二重扉DDが通路PAに存在する場合には、経路計画部14は、最適化の対象となる1以上のロボットMBの経路計画のコストを、各ロボットMBがそれぞれのゴールに到達するまでのステップ数、および、グラフMP内に存在する各扉DRの開閉に要する時間に基づいて算出する。
 開閉動作が依存しあう複数の扉DRには、各階に設置されたエレベータELの扉DRが含まれ得る。エレベータELが通路PAに存在する場合には、経路計画部14は、最適化の対象となる1以上のロボットMBの経路計画のコストを、各ロボットMBがそれぞれのゴールに到達するまでのステップ数、グラフMP内に存在する各扉DRの開閉に要する時間、および、開状態となる扉DRの位置までエレベータELの籠が移動する時間に基づいて算出する。
[4.経路計画の具体例]
 以下、経路計画の具体例を示す。図16は、経路計画の一例を示す図である。
 ノードNDは搬送目的地地点や、エッジEDが交差する点や、交差点の手前などの待ち合わせを行いうる地点などに配置される。図16には、ノードND-1~ND-20とそれらのノードNDを結ぶエッジEDとで構成されたグラフMPの例が示されている。各エッジEDには移動時間に応じた移動のコストが定義されている。グラフMPを用いた経路計画では、ロボットMBどうしの干渉が生じないような各ロボットMBの経路の組み合わせが算出される。そして、待ち時間をコストに含めた目的地までの総コストがロボットMBごとに算出され、全てのロボットMBの総コストを合計した値が最も小さくなるような各ロボットMBの経路の組み合わせが最適解として決定される。
 具体的な処理としては、まず、エッジEDの分割により、全てのエッジEDの移動コストが均一なグラフMP(以下、ユニットグラフと呼ぶ)が生成される。例えば、図16の例では、ノードND-7とノードND-10との間のエッジEDの移動コストが最小となっている。そのため、グラフ構造生成部12は、最小の移動コストを単位コストとし、単位コストの2倍あるいは3倍の移動コストのエッジEDを2分割あるいは3分割するべく、エッジEDの途中に1以上のノードNDを追加する。
 経路計画部14は、ユニットグラフを時系列のステップ数だけ複製する。一つのユニットグラフは、ある将来の時刻におけるロボットMBおよび仮想ロボットVMの配置状態を表す。1ステップ期間は、単位コストに応じた時間として設定される。ロボットMBは1ステップ期間だけ移動し続けることで隣のノードNDに移動することができる。
 経路計画部14は、複製された複数のユニットグラフを時系列順に並べ、隣り合う2つのユニットグラフについて次の処理を行う。まず、経路計画部14は、2つのユニットグラフを比較したときにロボットMBの位置が変わっていない場合(ロボットMBが1ステップ期間、同じノードNDに待機している場合)には、それぞれのユニットグラフにおいてそのロボットMBの位置を示すノードNDどうしを接続線で接続する。
 経路計画部14は、2つのユニットグラフを比較したときにロボットMBの位置が変わっている場合(ロボットMBが1ステップ期間で隣のノードNDに移動した場合)には、元のユニットグラフにおいてロボットMBが存在したノードNDと、1ステップ期間後のユニットグラフにおいてロボットMBが存在したノードNDと、を接続線で接続する。
 経路計画部14は、上述の処理を行った後、元のユニットグラフのエッジEDを全て削除する。この結果、新たに追加された接続線だけが残る。このようにして経路計画部14は、各時刻のユニットグラフが結合された時系列トポロジカルマップを生成する。
 時系列トポロジカルマップでは、ロボットMBは、1ステップで必ず次の時刻のユニットグラフのどこかのノードNDに移動する。ロボットMBの経路は、時間軸に沿って接続線を辿ることで把握される。一つのロボットMBの経路計画は、接続線に沿って時系列準に配列されたノードNDの座標のデータとして表現される。ロボットMBの経路は、時系列順にノードNDの座標を辿ることにより把握される。
 新しいロボットMBの経路計画を追加する際、最もシンプルな方法は、「他のロボットMBの経路計画により既に占められているノードNDを除外(その時点で他のロボットMBがいるノードNDには移動できない)」した上で、「1ステップで必ず次の時刻のユニットグラフのどこかのノードNDに移動する」という制約を満たした経路RTを選択するという方法である。これは通常のよく知られるダイクストラのアルゴリズムで経路探索する際に、上記制約を満たす経路RTのみを探索対象として制限することで実現できる。
 新しいロボットMBの経路計画を追加する際の別な方法としては、改めて全ロボットMBの経路計画をまとめてやり直す方法も考えられる。例えば、経路計画部14は、「1ステップで必ず次の時刻のユニットグラフのどこかのノードNDに移動する」、「常に、時系列トポロジカルマップのノードND上に2以上のロボットMBが存在してはいけない」、および、「常に、時系列トポロジカルマップの接続線上に、向かい合う方向で2以上のロボットMBが存在してはいけない」という制約を満たした経路計画を全探索等により選択する。この種の探索方法については、下記[文献1]に記載がある。
[文献1]Optimal Multi-Robot Path Planning on Graphs:Complete Algorithms and Effective Heuristics,Jingjin Yu Steven M.LaValle,2015
 結果として得られる時系列トポロジカルマップ上の経路計画は、待ち合わせなども含め、各ロボットMBがどの時刻にどのノードNDに存在すべきかを表すものになる。
[4-1.二重扉の開閉動作を含む経路計画]
 上述の経路探索の手法は、仮想ロボットVMを含むシステムにも適用できる。図17は、二重扉DDの開閉動作を含む経路計画の一例を示す図である。
 扉DRを含むシステムには、「仮想ロボットVMは、閉塞位置CP、待避線SLおよび待避位置SP上しか移動できない」および「ロボットMBは、待避線SLおよび待避位置SPには侵入できない」という制約が課せられる。そのため、上記制約に基づいて、複数のグラフ要素GEにまたがるエリアARが設定され、そのエリアARに対して、「エリアARのキャパシティ(エレベータELの場合は1台)を超えるロボットMBおよび仮想ロボットVMの競合は認められない」という新たな制約が課される。これらの制約を満たすように図16の経路探索の手法を変形して適用することで、ロボットMBと扉DRの最適動作を一体的に算出することができる。
 二重扉DDを含むシステムには、さらに、「二重扉DDを構成する2つの扉DRは同時に開放することはできない」という制約が課される。この制約は、それぞれの扉DRに対応する待避線SLおよび待避位置SPに対して1つのエリアARを設定した場合、「エリアAR内には同時に1つの仮想ロボットVMしか存在できない」という制約として言い換えることができる。このような制約を新たに追加して上述の経路探索の手法を適用することで、ロボットMBと二重扉DDの最適動作を一体的に算出することができる。
 上記の制約のもと、ロボットMB-1,MB-2がノードND-4、ND-20に向かって移動している最中に、ロボットMB-3をノードND-13に向かわせる指示が入力されると、ロボットMB-1,MB-2,MB-3および仮想ロボットVM-1,VM-2に対して例えば次のような経路計画が行われる。なお、経路RTは時系列に沿った経由地の座標(ノードNDの番号)の配列によって示される。配列の途中に示される括弧([])は、括弧内の条件が満たされるまでそのノードで一時停止することを意味する。
・ロボットMB-1の経路RT:
 18→13→14[MB-2:15発]→15→16[MB-3:15発]→15[VM-2:SP-2着]→12→11[VM-1:SP-1着]→7→4
・ロボットMB-2の経路RT:
 7[VM-1:SP-1着]→10→11[VM-2:SP-2着]→15→16→17→20
・ロボットMB-3の経路RT:
 9→8[MB-2:7発]→7[VM-1:SP-1着]→10→11[VM-2:SP-2着かつMB-1:15発]→12→15→14→13
・仮想ロボットVM-1の経路RT:
 10[VM-2:12着]→SP-1[MB-2:10発]→10[VM-2:12着]→SP-1[MB-3:10発]→10[MB-1:15着かつVM-2:12着]→SP-1[MB-1:10発]→10
・仮想ロボットVM-2の経路RT:
 12[MB-2:11着かつVM-1:10着]→SP-2[MB-2:12発]→12[MB-3:11着かつVM-1:10着]→SP-2[MB-3:12発かつMB-1:12発]→12
[4-2.エレベータ制御への応用]
 図18は、本開示の経路計画をエレベータELの制御に応用した例を示す図である。
 エレベータELを含むシステムには、「複数の階の扉DRは同時に開放することはできない」という制約が課される。この制約は、それぞれの階の扉DRに対応する待避線SLおよび待避位置SPに対して1つのエリアARを設定した場合、「エリアAR内には同時に1つの仮想ロボットVMしか存在できない」という制約として言い換えることができる。このような制約を新たに追加することで、ロボットMBとエレベータELの最適動作を一体的に算出することができる。
 上記の制約のもと、例えば、エレベータELの1階の扉DRを閉めて、ロボットMBを載せた籠を3階に移動させ、3階の扉DRを開いてロボットMBをノードND-1に移動させる指示が入力されると、ロボットMBおよび仮想ロボットVM-1,VM-3に対して例えば次のような経路計画が行われる。
・ロボットMBの経路RT:
 0[籠:3階着かつVM-3:SP-3着]→3→2→1
・仮想ロボットVM-1の経路RT:
 SP-1[MB:0着]→9
・仮想ロボットVM-3の経路RT:
 3[籠:3階着]→SP-3
[4-2-1.エレベータの籠内に複数のロボットが収容される例]
 図19および図20は、エレベータELの籠内に複数のロボットMBが収容される例を示す図である。
 図19の例では、籠内に2台のロボットMBが収容可能である。先に籠に入ったロボットMB-2は籠の奥のノードND-2に移動し、籠の入り口側のノードND-1を空ける。後に籠に入ったロボットMB-3は籠の入り口側のノードND-1に収容される。籠から出るときは、出口側に近いロボットMB-3から先に出る。籠内の位置をグラフMPに反映することで、複数のロボットMBがどの順番に籠に入ってどの位置にいるべきかを含めて経路計画を行うことができる。
 図20の例では、籠内に3台のロボットMBが収容可能である。先に籠に入ったロボットMB-2,MB-4は籠の奥のノードND-2,ND-3に移動し、籠の入り口側のノードND-1を空ける。後に籠に入ったロボットMB-3は籠の入り口側のノードND-1に収容される。籠の奥の2つのノードND-2,ND-3は並列の関係にあり、最初に籠に入ったロボットMBはどちらのノードNDに移動してもよい。
[4-2-2.複数のエレベータが並列に設置される例]
 図21は、複数のエレベータELが並列に設置される例を示す図である。
 図21の例では、同じフロアに2つのエレベータEL-1,EL-2が稼働している。ロボットMB-1,MB-2はどちらのエレベータELを利用してもよい。
 目的地までの移動のコストは、どちらのエレベータELを利用するかによって変わる。他のロボットMBがエレベータを利用している場合には、他のロボットとの待ち合わせが必要となり、そのぶんコストが大きくなる。例えば図21の例では、エレベータEL-1には1階から他のロボットMB-3が乗り込んでおり、ロボットMB-3がどの階で降りるかによって待ち時間が変わる。エレベータEL-2には他のロボットMBは乗っておらず、籠も3階に停まっている。他のロボットMBによる利用が予定されていなければ、エレベータEL-2を利用したほうが目的地までのコストは小さくなる。
 本開示では、エレベータELの扉DRの開閉動作および籠の昇降動作を仮想ロボットVMの移動動作に置き換えてロボットMBとの競合が判定される。他のロボットMBとの待ち合わせは、仮想ロボットVMの配置(どの階に停まっているか)および移動時間(扉DRの開閉時間および籠の昇降時間を含む)などに基づいて適切に処理される。そのため、他のロボットMBによるエレベータEL-1,EL-2の利用状況を踏まえたエレベータELの選択まで含めて最適な経路を計画することができる。
[5.ユーザインターフェース]
 図22は、扉DRの設定を行うためのUIの一例を示す図である。
 扉DRの設定を行う場合には、複数のノードNDやエッジEDを視覚的に選択できるUIが有効である。エリア設定部11は、ディスプレイDPにグラフMPを表示し、ノードNDやエッジEDなどのグラフ要素GEの追加を行えるようにする。また、エリア設定部11は、エリアARとして設定される複数のグラフ要素GEをUI上の操作でまとめて選択できるようにする。エリア設定の対象となるグラフ要素GEを選択した後は、ポップアップウィンドウなどでエリアARのキャパシティを設定することもできる。
 例えば、グラフMPに扉DRを追加する場合には、ユーザは、クリックなどの操作を用いて、グラフMP内で扉DRを設置すべき位置POSを選択する。エリア設定部11は、選択された位置POSに、扉DRの情報(扉情報)を設定するためのウィンドウWDを表示する。扉情報には、例えば、扉DRの名前、種類、開閉時間、および、連動して動作する他の扉DRの有無などの情報が含まれる。開放に要する時間と閉鎖に要する時間とが異なる場合には、それぞれの時間を別々に入力するための入力欄が設けられてもよい。
 扉情報の入力が完了すると、グラフ構造生成部12は、選択された位置POSに新しいノードNDを追加し、追加したノードNDを扉DRの閉塞位置CPとして設定する。グラフ構造生成部12は、閉塞位置CPとともに、待避位置SP、待避線SLおよび仮想ロボットVMをグラフMPに追加する。グラフ構造生成部12は、仮想ロボットVMの移動可能な範囲を待避位置SP、待避線SLおよび閉塞位置CPに限定し、ロボットMBの移動可能な範囲から待避位置SPおよび待避線SLを除外する設定を行う。
 エリア設定部11は、閉塞位置CP、待避位置SPおよび待避線SLが追加されたグラフMPをUIに表示する。ユーザは、表示されたグラフMPにエリアARを設定する。例えば、エリア設定部11は、同一エリアARに包含されるべき複数のグラフ要素GEを選択する選択ツールを表示する。エリア設定部11は、選択ツールBXによる選択が行われたことに応答して、エリアARのキャパシティを設定するためのウィンドウを表示する。選択ツールとしては、マウスやタッチパネル等で表示される矩形や投げ縄(フリーハンドで描いた図形)などの範囲選択ツール、あるいは、クリック(タッチ)で選択対象となるグラフ要素GEを個別に選択する個別選択ツールが挙げられる。
 ユーザは、現在の扉DRの開閉状態に応じたノードND(待避位置SP、閉塞位置CP)に仮想ロボットVMを配置する。設定が全て完了すると、エリア設定部11は、設定内容を扉DRの絵に変換する。エリア設定部11は、現在の仮想ロボットVMの待避線SL上の位置を扉DRの開状態または閉状態を示す図に置き換えてグラフMPに表示する。なお、図22の例は、二重扉DDの例であるが、エレベータELをグラフMPに追加する場合も同様の方法が用いられる。
[6.本開示の経路探索手法の応用例]
 図23は、本開示の経路探索手法を、無人搬送車(Automated Guided Vehicle:AGV)を用いた工場での自動搬送システムに適用した例を示す図である。
 搬送システムTSは、生産管理システム(MES)100、搬送制御システム(MCS)200、AGV制御システム(MCP)300およびAGV500を有する。MES100は製造工程を元に、MCS200へ搬送指示を出す。ここでの搬送指示は、例えば「装置Aから装置BにCを搬送せよ」である。MCS200は受け取った搬送指示を元に、どのAGV500でどのように搬送するかを決め、更にMCP300に搬送指示を出す。ここでの搬送指示は、例えば「(搬送手段として決定した)AGVが地点Aから地点BへCを搬送せよ」である。
 MCP300は搬送指示を受け取ると、AGV500の具体的な移動経路を決定する。ここで本開示の扉DRの設定を考慮した経路計画システムが用いられる。また、システムの管理者は、管理者用UI400を用いて扉DRを追加・変更・削除することができる。例えば、工場のレイアウトを変えた際に、管理者は管理者用UI400を介して扉DRの設定を変更する。経路計画部14は変更された設定を反映し、経路計画を行うことができる。また、管理者はUI上で設定した扉DRの設定を参照することができる。
[7.ハードウェア構成例]
 図24は、サーバ1のハードウェア構成例を示す図である。例えばサーバ1は、コンピュータ1000によって実現される。コンピュータ1000は、CPU1100、RAM1200、ROM(Read Only Memory)1300、HDD(Hard Disk Drive)1400、通信インタフェース1500、及び入出力インタフェース1600を有する。コンピュータ1000の各部は、バス1050によって接続される。
 CPU1100は、ROM1300又はHDD1400に格納されたプログラムに基づいて動作し、各部の制御を行う。例えば、CPU1100は、ROM1300又はHDD1400に格納されたプログラムをRAM1200に展開し、各種プログラムに対応した処理を実行する。
 ROM1300は、コンピュータ1000の起動時にCPU1100によって実行されるBIOS(Basic Input Output System)等のブートプログラムや、コンピュータ1000のハードウェアに依存するプログラム等を格納する。
 HDD1400は、CPU1100によって実行されるプログラム、及び、かかるプログラムによって使用されるデータ(各種データベースを含む)等を非一時的に記録する、コンピュータが読み取り可能な記録媒体である。具体的には、HDD1400は、プログラムデータ1450の一例である本開示に係る情報処理プログラムを記録する記録媒体である。
 通信インタフェース1500は、コンピュータ1000が外部ネットワーク1550(例えばインターネット)と接続するためのインタフェースである。例えば、CPU1100は、通信インタフェース1500を介して、他の機器からデータを受信したり、CPU1100が生成したデータを他の機器へ送信したりする。
 入出力インタフェース1600は、入出力デバイス1650とコンピュータ1000とを接続するためのインタフェースである。例えば、CPU1100は、入出力インタフェース1600を介して、キーボードやマウス等の入力デバイスからデータを受信する。また、CPU1100は、入出力インタフェース1600を介して、ディスプレイやスピーカーやプリンタ等の出力デバイスにデータを送信する。また、入出力インタフェース1600は、所定の記録媒体(メディア)に記録されたプログラム等を読み取るメディアインタフェースとして機能してもよい。メディアとは、例えばDVD(Digital Versatile Disc)、PD(Phase change rewritable Disk)等の光学記録媒体、MO(Magneto-Optical disk)等の光磁気記録媒体、テープ媒体、磁気記録媒体、または半導体メモリ等である。
 例えば、コンピュータ1000がサーバ1として機能する場合、コンピュータ1000のCPU1100は、RAM1200上にロードされたプログラムを実行することにより、上述した各種の機能を実現する。また、HDD1400には、コンピュータをサーバ1として機能させるためのプログラムが格納される。なお、CPU1100は、プログラムデータ1450をHDD1400から読み取って実行するが、他の例として、外部ネットワーク1550を介して、他の装置からこれらのプログラムを取得してもよい。
[8.効果]
 サーバ1は、グラフ構造生成部12と経路計画部14とを有する。グラフ構造生成部12は、通路PA上の扉DRを仮想ロボットVMの待避線SLに置き換えたグラフMPを生成する。経路計画部14は、通路PAを通過しようとするロボットMBが通路PAと待避線SLとの交差部で仮想ロボットVMと競合しないようにロボットMBおよび仮想ロボットVMの経路RTを計画する。本開示の情報処理方法は、サーバ1の処理がコンピュータ1000により実行される。本開示のプログラムは、サーバ1の処理をコンピュータ1000に実現させる。
 この構成によれば、扉DRの動作を仮想ロボットVMが仮想の待避線SL上を移動する動作とみなすことで、現実のロボットMBおよび仮想ロボットVM(扉DR)の経路RTが最適化される。扉DRの開閉タイミングおよび開閉時間などの制約は、仮想ロボットVMが待避線SL上を移動するタイミングおよび移動時間(コスト)として表現できる。そのため、扉DRの開閉動作を考慮した最適な経路計画が行われる。
 グラフ構造生成部12は、開状態の扉DRが択一的に生じるように開閉動作が依存しあう複数の扉DRを1つのエリアARとして設定する。経路計画部14は、複数の扉DRに対応する複数の仮想ロボットVMが同一のエリアARにおいて競合しないように複数の仮想ロボットVMの経路RTを計画する。
 この構成によれば、複数の扉DRの依存関係を考慮した最適な経路計画が行われる。
 複数の扉DRは、二重扉DDを構成する一対の扉DRを含む。
 この構成によれば、各扉DRの開閉タイミングなどの制約を考慮した最適な経路計画が行われる。
 経路計画部14は、最適化の対象となる1以上のロボットMBの経路計画のコストを、各ロボットMBがそれぞれのゴールに到達するまでのステップ数、および、グラフMP内に存在する各扉DRの開閉に要する時間に基づいて算出する。
 この構成によれば、扉DRの開閉時間を考慮して最適な経路計画が行われる。
 複数の扉DRは、各階に設置されたエレベータELの扉DRを含む。
 この構成によれば、各階の扉DRの開閉タイミングなどの制約を考慮した最適な経路計画が行われる。
 経路計画部14は、最適化の対象となる1以上のロボットMBの経路計画のコストを、各ロボットMBがそれぞれのゴールに到達するまでのステップ数、グラフMP内に存在する各扉DRの開閉に要する時間、および、開状態となる扉の位置までエレベータELの籠が移動する時間に基づいて算出する。
 この構成によれば、扉DRの開閉時間および籠の移動時間を考慮して最適な経路計画が行われる。
 サーバ1は、エリア設定部11を有する。エリア設定部11は、視覚的に扉DRの設定を行うUIを提示する。
 この構成によれば、エリアARの設定を容易に行うことができる。
 グラフ構造生成部12は、UIを介して入力された扉DRの情報に基づいて、グラフMPに仮想ロボットVMおよび待避線SLを組み込む。
 この構成によれば、仮想ロボットVMおよび待避線SLの情報をUIの入力情報に基づいて自動で組み込むことができる。
 エリア設定部11は、現在の仮想ロボットVMの待避線SL上の位置を扉DRの開状態または閉状態を示す図に置き換えてグラフMPに表示する。
 この構成によれば、扉DRの動作が仮想ロボットVMではなく扉DRそのものの絵として表現される。そのため、扉DRの動作が理解しやすくなる。
 なお、本明細書に記載された効果はあくまで例示であって限定されるものでは無く、また他の効果があってもよい。
[付記]
 なお、本技術は以下のような構成も採ることができる。
(1)
 通路上の扉を仮想移動体の待避線に置き換えたグラフを生成するグラフ構造生成部と、
 前記通路を通過しようとする移動体が前記通路と前記待避線との交差部で前記仮想移動体と競合しないように前記移動体および前記仮想移動体の経路を計画する経路計画部と、
 を有する情報処理装置。
(2)
 前記グラフ構造生成部は、開状態の扉が択一的に生じるように開閉動作が依存しあう複数の扉を1つのエリアとして設定し、
 前記経路計画部は、前記複数の扉に対応する複数の仮想移動体が同一の前記エリアにおいて競合しないように前記複数の仮想移動体の経路を計画する、
 上記(1)に記載の情報処理装置。
(3)
 前記複数の扉は、二重扉を構成する一対の扉を含む、
 上記(2)に記載の情報処理装置。
(4)
 前記経路計画部は、最適化の対象となる1以上の移動体の経路計画のコストを、各移動体がそれぞれのゴールに到達するまでのステップ数、および、前記グラフ内に存在する各扉の開閉に要する時間に基づいて算出する、
 上記(3)に記載の情報処理装置。
(5)
 前記複数の扉は、各階に設置されたエレベータの扉を含む、
 上記(2)に記載の情報処理装置。
(6)
 前記経路計画部は、最適化の対象となる1以上の移動体の経路計画のコストを、各移動体がそれぞれのゴールに到達するまでのステップ数、前記グラフ内に存在する各扉の開閉に要する時間、および、開状態となる扉の位置まで前記エレベータの籠が移動する時間に基づいて算出する、
 上記(5)に記載の情報処理装置。
(7)
 視覚的に前記扉の設定を行うUIを提示するエリア設定部を有する、
 上記(1)ないし(6)のいずれか1つに記載の情報処理装置。
(8)
 前記グラフ構造生成部は、前記UIを介して入力された前記扉の情報に基づいて、前記グラフに前記仮想移動体および前記待避線を組み込む、
 上記(7)に記載の情報処理装置。
(9)
 前記エリア設定部は、現在の前記仮想移動体の前記待避線上の位置を前記扉の開状態または閉状態を示す図に置き換えて前記グラフに表示する、
 上記(7)または(8)に記載の情報処理装置。
(10)
 通路上の扉を仮想移動体の待避線に置き換えたグラフを生成し、
 前記通路を通過しようとする移動体が前記通路と前記待避線との交差部で前記仮想移動体と競合しないように前記移動体および前記仮想移動体の経路を計画する、
 ことを有する、コンピュータにより実行される情報処理方法。
(11)
 通路上の扉を仮想移動体の待避線に置き換えたグラフを生成し、
 前記通路を通過しようとする移動体が前記通路と前記待避線との交差部で前記仮想移動体と競合しないように前記移動体および前記仮想移動体の経路を計画する、
 ことをコンピュータに実現させるプログラム。
1 サーバ(情報処理装置)
11 エリア設定部
12 グラフ構造生成部
14 経路計画部
AR エリア
DD 二重扉
DR 扉
EL エレベータ
MB ロボット(移動体)
MP グラフ
PA 通路
RT 経路
SL 待避線
VM 仮想ロボット(仮想移動体)

Claims (11)

  1.  通路上の扉を仮想移動体の待避線に置き換えたグラフを生成するグラフ構造生成部と、
     前記通路を通過しようとする移動体が前記通路と前記待避線との交差部で前記仮想移動体と競合しないように前記移動体および前記仮想移動体の経路を計画する経路計画部と、
     を有する情報処理装置。
  2.  前記グラフ構造生成部は、開状態の扉が択一的に生じるように開閉動作が依存しあう複数の扉を1つのエリアとして設定し、
     前記経路計画部は、前記複数の扉に対応する複数の仮想移動体が同一の前記エリアにおいて競合しないように前記複数の仮想移動体の経路を計画する、
     請求項1に記載の情報処理装置。
  3.  前記複数の扉は、二重扉を構成する一対の扉を含む、
     請求項2に記載の情報処理装置。
  4.  前記経路計画部は、最適化の対象となる1以上の移動体の経路計画のコストを、各移動体がそれぞれのゴールに到達するまでのステップ数、および、前記グラフ内に存在する各扉の開閉に要する時間に基づいて算出する、
     請求項3に記載の情報処理装置。
  5.  前記複数の扉は、各階に設置されたエレベータの扉を含む、
     請求項2に記載の情報処理装置。
  6.  前記経路計画部は、最適化の対象となる1以上の移動体の経路計画のコストを、各移動体がそれぞれのゴールに到達するまでのステップ数、前記グラフ内に存在する各扉の開閉に要する時間、および、開状態となる扉の位置まで前記エレベータの籠が移動する時間に基づいて算出する、
     請求項5に記載の情報処理装置。
  7.  視覚的に前記扉の設定を行うUIを提示するエリア設定部を有する、
     請求項1に記載の情報処理装置。
  8.  前記グラフ構造生成部は、前記UIを介して入力された前記扉の情報に基づいて、前記グラフに前記仮想移動体および前記待避線を組み込む、
     請求項7に記載の情報処理装置。
  9.  前記エリア設定部は、現在の前記仮想移動体の前記待避線上の位置を前記扉の開状態または閉状態を示す図に置き換えて前記グラフに表示する、
     請求項7に記載の情報処理装置。
  10.  通路上の扉を仮想移動体の待避線に置き換えたグラフを生成し、
     前記通路を通過しようとする移動体が前記通路と前記待避線との交差部で前記仮想移動体と競合しないように前記移動体および前記仮想移動体の経路を計画する、
     ことを有する、コンピュータにより実行される情報処理方法。
  11.  通路上の扉を仮想移動体の待避線に置き換えたグラフを生成し、
     前記通路を通過しようとする移動体が前記通路と前記待避線との交差部で前記仮想移動体と競合しないように前記移動体および前記仮想移動体の経路を計画する、
     ことをコンピュータに実現させるプログラム。
PCT/JP2022/046603 2022-01-13 2022-12-19 情報処理装置、情報処理方法およびプログラム WO2023136047A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2022003950 2022-01-13
JP2022-003950 2022-01-13

Publications (1)

Publication Number Publication Date
WO2023136047A1 true WO2023136047A1 (ja) 2023-07-20

Family

ID=87278861

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2022/046603 WO2023136047A1 (ja) 2022-01-13 2022-12-19 情報処理装置、情報処理方法およびプログラム

Country Status (1)

Country Link
WO (1) WO2023136047A1 (ja)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05210414A (ja) * 1992-01-30 1993-08-20 Sogo Keibi Hoshiyou Kk 移動ロボットの移動方法
JPH07287695A (ja) * 1994-04-18 1995-10-31 Fujitsu Ltd 自律的に学習、成長するコンピュータシステム、及びロボットシステム
JP2005242489A (ja) * 2004-02-24 2005-09-08 Matsushita Electric Works Ltd 自律移動体の運行制御システムおよびプログラム
JP2021056692A (ja) * 2019-09-30 2021-04-08 株式会社トップライズ 移動体の管理システム、移動体の管理装置、及び移動体の管理方法
WO2022009707A1 (ja) * 2020-07-07 2022-01-13 株式会社デンソー 制御装置、制御方法およびプログラム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05210414A (ja) * 1992-01-30 1993-08-20 Sogo Keibi Hoshiyou Kk 移動ロボットの移動方法
JPH07287695A (ja) * 1994-04-18 1995-10-31 Fujitsu Ltd 自律的に学習、成長するコンピュータシステム、及びロボットシステム
JP2005242489A (ja) * 2004-02-24 2005-09-08 Matsushita Electric Works Ltd 自律移動体の運行制御システムおよびプログラム
JP2021056692A (ja) * 2019-09-30 2021-04-08 株式会社トップライズ 移動体の管理システム、移動体の管理装置、及び移動体の管理方法
WO2022009707A1 (ja) * 2020-07-07 2022-01-13 株式会社デンソー 制御装置、制御方法およびプログラム

Similar Documents

Publication Publication Date Title
JP7228420B2 (ja) 情報処理装置、情報処理方法、情報処理システム及びコンピュータプログラム
US20210103286A1 (en) Systems and methods for adaptive path planning
CN112368661B (zh) Agv系统和控制agv系统的方法
Guney et al. Dynamic prioritized motion coordination of multi-AGV systems
JP7429372B2 (ja) 動作環境におけるルートプランを最適化するためのシステム及び方法
JP7328923B2 (ja) 情報処理装置、情報処理方法、及びコンピュータプログラム
Digani et al. Hierarchical traffic control for partially decentralized coordination of multi AGV systems in industrial environments
JP2024020457A (ja) 情報処理装置、情報処理方法、コンピュータプログラム及び情報処理システム
JP7204631B2 (ja) 走行制御装置、方法及びコンピュータプログラム
Liu A progressive motion-planning algorithm and traffic flow analysis for high-density 2D traffic
JP2022113141A (ja) 運行環境における自律車両管理
JP7237799B2 (ja) 走行制御装置及び運行システム
JP2024045465A (ja) 走行制御装置、走行制御方法及びコンピュータプログラム
de Groot et al. Topology-Driven Parallel Trajectory Optimization in Dynamic Environments
Sharma Control classification of automated guided vehicle systems
Matsui et al. Local and global path planning for autonomous mobile robots using hierarchized maps
JP7481903B2 (ja) 情報処理装置、情報処理方法、情報処理システム及びコンピュータプログラム
WO2023136047A1 (ja) 情報処理装置、情報処理方法およびプログラム
CN115638804A (zh) 一种无死锁的无人车辆在线路径规划方法
CN116940911A (zh) 用于管理材料搬运车辆的移动的系统和方法
Li Task Assignment and Path Planning for Autonomous Mobile Robots in Stochastic Warehouse Systems
WO2023145547A1 (ja) 情報処理装置、情報処理方法およびプログラム
Bhargava et al. A review of recent advances, techniques, and control algorithms for automated guided vehicle systems
von der Burg et al. Towards Autonomous Airport Surface Movement Operations Using Hierarchical Multi-Agent Planning
Hu et al. Who Plays First? Optimizing the Order of Play in Stackelberg Games with Many Robots

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22920565

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE