Information processing apparatus, information processing method and program

By setting boundary lines and the number of lanes in an obstacle environment, a dynamically updated route map is generated, which solves the problem of mobile bodies stalling in environments where the passable area changes, and achieves efficient mobile body operation.

CN115968457BActive Publication Date: 2026-04-21SONY GROUP CORP
View PDF 5 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
SONY GROUP CORP
Filing Date
2021-06-07
Publication Date
2026-04-21

AI Technical Summary

Technical Problem

In environments where the passable area of ​​a mobile object changes, existing technologies cannot effectively prevent the mobile object from stalling due to increased obstacle density.

Method used

By setting boundary lines formed by equally spaced obstacles in an obstacle environment, the number of lanes is determined, and a route map with lane number information is generated. Using Voronoi region division and topology mapping techniques, the route map is dynamically updated to adapt to environmental changes.

Benefits of technology

Even in environments where obstacle layouts change dynamically, it can still effectively plan the route of moving objects, avoid stalling, and improve the operational efficiency of moving objects.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115968457B_ABST
    Figure CN115968457B_ABST
Patent Text Reader

Abstract

In an environment with obstacles, the route map generation unit 33 generates a route map including lane number information by setting boundary lines between obstacles in a movable area that is the area where a mobile body can move. These boundary lines are composed of a group of points equidistant from the obstacles. The number of lanes relative to the boundary lines is determined based on the distance from the obstacles and the size of the mobile body moving between the obstacles. Furthermore, the route map generation unit 33 updates the route map when the movable area changes. The route planning unit 37 plans a route for each mobile object based on the route map, ensuring that the number of mobile bodies does not exceed the number of lanes indicated by the lane number information. The mobile body 20 performs its movement task based on the route plan generated by the route planning unit 37. Even in environments where the area allowing mobile bodies to move changes, multiple mobile bodies can be operated effectively.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This technology relates to information processing apparatus, information processing methods and programs, and enables the effective operation of mobile bodies even when the density of mobile bodies increases in an environment where the area through which mobile bodies can be changed. Background Technology

[0002] In related technologies, systems using mobile bodies have been used for various purposes, such as transporting goods, inspecting facilities, and security. For a mobile body to move, it must reach its destination without colliding with static and dynamic obstacles in the environment (including other mobile robots). Therefore, for example, in Patent Document 1, the generation and updating of a map of an arbitrary environment instructing the operation of multiple robots, as well as the provision of data used by one or more robots in the environment, are performed by a manager.

[0003] Reference List

[0004] Patent documents

[0005] Patent Document 1: WO 2009 / 102970 A Summary of the Invention

[0006] The problem to be solved by the present invention

[0007] Incidentally, in route maps generated by existing methods, it is impossible to determine whether it is possible for two vehicles to pass each other. Therefore, for example, when another vehicle approaches from the opposite direction on a narrow straight road, or at a narrow orthogonal intersection, another vehicle suddenly appears and simultaneously enters the intersection from the side, a situation arises where the two vehicles cannot move towards each other simultaneously (also known as stalling).

[0008] The purpose of this technology is to provide an information processing apparatus, information processing method, and program that can effectively operate mobile bodies even when the density of mobile bodies increases in an environment where the area through which mobile bodies can be changed.

[0009] Solution to the problem

[0010] According to a first aspect of the present technology, an information processing apparatus is provided, the information processing apparatus including a route map generation unit configured to, in an environment containing obstacles, establish boundary lines between obstacles in a movable area (i.e., an area where a moving body can move) formed by a group of points having equal distances from two different obstacles, and determine the number of lanes for the boundary lines based on the distance from each obstacle to the boundary lines and the size of the moving body moving in the environment.

[0011] In this technology, in an environment with obstacles, the route map generation unit performs, for example, Voronoi region division on the movable area (i.e., the area where a moving body can move), sets a boundary line formed by a group of points equidistant from the obstacles, determines the number of lanes for the boundary line based on the distance from the obstacles and the size of the moving body moving between the obstacles, and generates a route map with lane number information based on the boundary line and the number of lanes determined for the boundary line. The number of lanes corresponds to the number of moving bodies that can pass simultaneously, and the size of the moving body is the maximum value of the width of the moving body perpendicular to the direction of movement, and may include a margin.

[0012] The route map generation unit sets nodes at the branch points and endpoints of the boundary line, as well as at points where the number of lanes on the boundary line changes. If the distance between nodes is less than a first threshold, a new node is added to replace the two nodes whose distance is less than the first threshold. Furthermore, if the distance between nodes is greater than a second threshold (greater than the first threshold), the route map generation unit adds a new node to the boundary line between the nodes and uses this new node to define the edges between the nodes as edges. Additionally, if the maximum separation distance between the edges of the nodes and the boundary line is greater than a separation distance threshold, the route map generation unit adds a new node to the boundary line between the nodes and uses this new node to define the edges between the nodes as edges. The route map generation unit sets the number of lanes determined for the boundary line as the lane number information of the edges corresponding to the boundary line, and sets the minimum number of lanes in the edges connected to the nodes as the lane number information of the nodes. It then generates a topology map as the route map, in which nodes are connected by edges and have lane number information. Furthermore, the route map generation unit can provide edges corresponding to the number of lanes determined for the boundary lines, and set nodes at the opposite ends of the edges to generate a lane map where the number of lanes at the nodes and edges is 1, which serves as the route map. The route map generation unit updates the route map based on changes in the movable area.

[0013] Furthermore, the information processing apparatus includes a route planning unit that plans the route of a mobile body using a route map with lane number information. The route planning unit plans a route for each mobile body such that the number of mobile bodies does not exceed the number of lanes indicated by the lane number information. Additionally, the route map generation unit can determine the number of lanes as the size of the mobile body by using basic lane widths corresponding to multiple mobile bodies of different sizes, and the route planning unit can plan the route using the number of lanes having basic lane widths occupied by multiple mobile bodies of different sizes.

[0014] According to a second aspect of the present technology, an information processing method is provided, comprising: in an environment containing obstacles, establishing a boundary line between obstacles in a movable area (i.e., an area where a mobile body can move) formed by a group of points having equal distances from two different obstacles; and determining the number of lanes for the boundary line based on the distance from each obstacle to the boundary line and the size of the mobile body moving in the environment.

[0015] According to a third aspect of the present technology, a program is provided that enables a computer to generate route maps, the program causing the computer to perform:

[0016] In an environment with obstacles, the step of setting a boundary line between obstacles in a movable area (i.e., an area where a moving body can move) is a group of points that are equidistant from two different obstacles.

[0017] The steps of determining the number of lanes relative to the boundary line based on the distance from each obstacle to the boundary line and the size of the moving body moving in the environment; and

[0018] The steps to generate a route map with lane number information based on the boundary lines and the number of lanes determined for the boundary lines.

[0019] Note that the program of this technology can be provided, for example, to a general-purpose computer capable of executing various program codes via a storage medium (e.g., optical disc, magnetic disk, or semiconductor memory) or a communication medium (e.g., a network) provided in a computer-readable format. By providing such a program in a computer-readable format, processing corresponding to the program is implemented on the computer. Attached Figure Description

[0020] Figure 1 This is a diagram showing the configuration of the mobile body control system.

[0021] Figure 2 This is a diagram showing the configuration of the mobile device and the server.

[0022] Figure 3 This is a flowchart illustrating the process of generating a route map.

[0023] Figure 4 It is a map showing the movable area.

[0024] Figure 5 This is a diagram showing the results of the Voronoi region division.

[0025] Figure 6 This is a diagram showing the boundary lines where lane number information has been assigned.

[0026] Figure 7This is a diagram showing the processing results when processes 4-1 and 4-3 are performed.

[0027] Figure 8 This is a diagram used to illustrate the situation of performing processes 4-4 and 4-5 on region AR.

[0028] Figure 9 This is a graph showing the processing results when processes 4-4 and 4-5 are performed.

[0029] Figure 10 This is a graph showing the processing results when processes 4-6 and 4-7 are performed.

[0030] Figure 11 This is a diagram used to illustrate the generation of lane maps.

[0031] Figure 12 It is a map showing the lane layout. Detailed Implementation

[0032] The following sections will describe the modes used to implement this technology. Note that the descriptions will be presented in the following order.

[0033] 1. Configuration of the mobile body control system

[0034] 2. Configuration of mobile devices and servers

[0035] 3. Operation of mobile devices and servers

[0036] 3-1. About generating route maps

[0037] 3-2. About the generation of route plans

[0038] 3-3. Examples of modifications to route maps and route plans

[0039] 3-4. Regarding the use of lane maps

[0040] 4. Application Examples

[0041] <1. Configuration of the mobile body control system>

[0042] Figure 1 The configuration of the mobile body control system is shown. The mobile body control system 10 includes multiple mobile bodies 20 and a server 30.

[0043] In the mobile body control system 10, server 30 receives a movement task to be performed by mobile body 20, and server 30 generates a route plan for performing the movement task and provides the route plan to mobile body 20. Mobile body 20 plans a path to move along the route indicated by the route plan provided by server 30 and performs the movement task.

[0044] A movement task is a task involving the movement of a mobile body 20, such as a robot or an automated guided vehicle (AGV), and the movement task can be performed by any mobile body, a mobile body with a predetermined function or capability, a designated mobile body, etc. Furthermore, a movement task can simply be arriving at a point and performing a task (e.g., inspection), or it can be other movements (e.g., transport) performed to another point.

[0045] Server 30 executes task planning to determine which mobile body (or whether to change the existing assignment) is assigned to a movement task input from the user, etc. Various methods can be used in the task planning without particular limitations. For example, when using any mobile body, a method can be used to select the empty mobile body closest to the destination of the movement task, or a method can be used to select the mobile body with the fewest assigned tasks when no empty mobile body is available.

[0046] When a mobile entity is assigned a movement task, server 30 generates a route plan based on the current route map. The route map is represented, for example, as a topology graph, which includes groups of relay nodes that are candidates for intermediate destinations in the environment and groups of edges that connect directly traversable relay nodes. In methods using route maps, a route plan is initially executed to determine which relay node or edge the mobile entity will pass through between its current location and final destination, and movement to the next node is performed according to the route plan. This reduces the computational cost of the path compared to calculating the path from the current location to the final destination and performing the movement without using nodes. Algorithms such as Dijkstra's algorithm are commonly used as route planning methods. Route planning can be a method of adding a target mobile entity's route plan without changing the route plan of another mobile entity, or it can optimize the entire route plan, including re-evaluating the route plan of another mobile entity.

[0047] <2. Configuration of Mobile Units and Servers>

[0048] The configuration of the mobile body (e.g., a trackless automated guided vehicle) and the server will be described next. Figure 2 The configuration of the mobile device and the server is shown.

[0049] The mobile body 20 includes a sensor unit 21, a surrounding map generation unit 22, a self-position estimation unit 23, a communication unit 24, a path planning unit 25, a drive control unit 26, and a drive unit 27.

[0050] Sensor unit 21 includes external sensors and internal sensors. The external sensors of sensor unit 21 acquire information about the surrounding environment of the moving body (e.g., information about surrounding objects, etc.). Examples of external sensors include distance measurement sensors (light detection and ranging, or laser imaging detection and ranging (LIDAR) sensors, time-of-flight (TOF), stereo cameras, etc.). The external sensors generate sensing data (also called "distance measurement data") indicating the distance to surrounding objects and output the sensing data to the surrounding map generation unit 22 and the self-position estimation unit 23. Furthermore, the internal sensors of sensor unit 21 acquire information about the moving body itself (e.g., information indicating the moving body's position and orientation, its changes, etc.). Examples of internal sensors include position sensors, angle sensors, accelerometers, gyroscopes, etc. The internal sensors output the generated sensing data (also called "internal sensing data") to the self-position estimation unit 23.

[0051] The surrounding map generation unit 22 generates map information indicating nearby objects based on distance measurement data generated by the sensor unit 21. The surrounding map generation unit 22 outputs the generated map information to the communication unit 24 and the route planning unit 25.

[0052] The self-position estimation unit 23 estimates its own position based on internal sensing data generated by internal sensors and distance measurement data generated by external sensors, and outputs self-position information indicating the estimated self-position to the communication unit 24 and the path planning unit 25.

[0053] Communication unit 24 is connected to a network and performs wireless communication with server 30. Wireless communication may include cellular communication using, for example, any of LTE, WCDMA (registered trademark), 5G, etc., and may include near-field communication using any of Wi-Fi, Bluetooth (registered trademark), etc. Communication unit 24 performs wireless communication with server 30 and sends map information generated by surrounding map generation unit 22 and its own position estimated by self-position estimation unit 23 to server 30. Note that communication unit 24 of mobile body 20 may send mobile body information indicating the size, performance, etc. of mobile body 20 to server 30. Communication unit 24 receives information such as route planning sent from server 30 and outputs the received information to route planning unit 25.

[0054] The path planning unit 25 plans the path of the mobile body 20 using map information generated by the surrounding map generation unit 22 and the estimation results of its own position estimation unit 23, so that the mobile body 20 moves along the route indicated by the route plan provided by the server 30. In the route planning, as will be described later, nodes to the destination are sequentially indicated based on the route map indicating the routes that the mobile body can take and the movement tasks assigned to the mobile body, and the path planning unit 25 determines the path from the current position to the first node and the path from the current node to the next node. The path planning unit 25 uses, for example, the A* algorithm or the Rapid Random Tree Exploration (RRT) algorithm as the path search algorithm to perform the identification of the surrounding environment of the mobile body 20 and the path search for the next node or destination, and by repeatedly determining the optimal movement speed, angular velocity, etc., it can perform the movement operation while avoiding collisions, even when there are dynamic obstacles. The path planning unit 25 outputs the determined path to the drive control unit 26.

[0055] The drive control unit 26 generates a drive signal, causing the moving body 20 to move on the path determined by the path planning unit 25, and outputs the drive signal to the drive unit 27.

[0056] The drive unit 27 is configured by using wheels, a drive source (e.g., a motor), etc., and uses the drive source to drive the wheels to move the moving body 20 based on the drive signal from the drive control unit 26.

[0057] Server 30 includes a communication unit 31, a movable area map generation unit 32, a route map generation unit 33, a map storage unit 34, a mobile body information storage unit 35, a task planning unit 36, and a route planning unit 37.

[0058] Communication unit 31 is configured to perform wireless communication with communication unit 24 of mobile body 20. Wireless communication may include cellular communication as described above, or it may include near-field communication. Communication unit 31 performs wireless communication with mobile body 20 and receives map information generated by mobile body 20 and self-location information indicating its estimated self-location. Communication unit 31 outputs the received map information and self-location information to movable area map generation unit 32. Furthermore, communication unit 31 receives mobile body information and outputs the mobile body information to mobile body information storage unit 35. Additionally, communication unit 31 sends a route plan generated by route planning unit 37 to mobile body 20.

[0059] The movable area map generation unit 32 integrates the map information generated by each mobile body 20 to generate a movable area map indicating the areas that the mobile body 20 can traverse throughout the environment. The movable area map generation unit 32 outputs the generated movable area map to the route map generation unit 33. Furthermore, the movable area map generation unit 32 can generate the movable area map based on sensing data acquired by external sensors located separately from the mobile body, or it can acquire a pre-generated movable area map from an external device, etc. In addition, the movable area map generation unit 32 updates the movable area map according to changes in the movable areas. For example, when it is determined that a movable area that the mobile body 20 can traverse has changed due to the installation, movement, or removal of obstacles, the movable area map generation unit 32 automatically updates the movable area map.

[0060] The route map generation unit 33 generates a route map with lane number information related to the access road and access road width based on the movable area map generated by the movable area map generation unit 32. Note that the details of route map generation will be described later. Furthermore, the route map generation unit 33 automatically updates the route map when the movable area map generation unit 32 determines that the movable area has been changed and updates the movable area map.

[0061] Map storage unit 34 stores the route map generated by route map generation unit 33. Furthermore, mobile body information storage unit 35 stores mobile body information for each mobile body. As described above, mobile body information can be obtained through communication with mobile body 20, or the user can pre-input mobile body information.

[0062] The task planning unit 36 ​​receives a movement task request made by a user or other entity, and determines the mobile body to perform the movement task. Furthermore, the task planning unit 36 ​​outputs task allocation information, including instructions for the mobile body and the movement task assigned to it, to the route planning unit 37.

[0063] The route planning unit 37 generates a route plan for each mobile body to perform the assigned mobile task. In generating the route plan, the route to the destination is determined based on the number of pathways and lanes indicated in the route map generated by the route map generation unit 33, and, for example, a list of nodes sequentially indicating the mobile route is generated. Furthermore, the route planning unit 37 determines routes to increase the overall system's mobility efficiency when multiple mobile bodies perform mobile tasks. Additionally, the route planning unit 37 performs route plan updates when the route map is updated or when new task assignment information is provided. For example, when updating the number of lanes in the mobile route, or when the mobile routes of mobile bodies performing newly received mobile tasks overlap, the route planning unit 37 considers the updated lane number information, the route of another mobile body, etc., to generate a new route plan. The route planning unit 37 sends the route plan generated for each mobile body to the corresponding mobile body 20 via the communication unit 31.

[0064] <3. Operations of Mobile Bodies and Servers>

[0065] In an environment with obstacles, the server establishes boundary lines between obstacles in the movable area (i.e., the area where a mobile object can move), consisting of a group of points equidistant from the obstacles. The server then determines the number of lanes for each boundary line based on the distance to each obstacle and the size of the mobile object moving between the obstacles. Furthermore, the server generates a route map with lane number information based on the boundary lines and the determined number of lanes for each boundary line. For example, the server places nodes at branch points and endpoints of the boundary lines, as well as at points where the number of lanes on the boundary lines changes, and automatically generates a topology map of the nodes connected by edges as the route map.

[0066] Furthermore, the server selects a mobile body to perform the movement task, sequentially assigns nodes along the direction of travel to the selected mobile body, releases nodes traversed by the mobile body, and generates a route plan by limiting the number of mobile bodies existing simultaneously based on the number of lanes determined by nodes and edges. Additionally, if the route map is updated, the server generates a route plan again based on the updated route map and the current position of each mobile body. The server sends the generated route plan to the mobile body. The mobile body plans its path to move along the route indicated by the route plan generated by the server and performs the movement task.

[0067] <3-1. About the generation of route maps>

[0068] Next, we will describe the generation of route maps that include lane number information. Figure 3 This is a flowchart illustrating the process of generating a route map.

[0069] In step ST1, the movable area map generation unit generates a movable area map. The movable area map generation unit 32, for example, integrates map information generated by each mobile body to generate a movable area map indicating areas the mobile body can traverse throughout the environment, and then proceeds to step ST2. Note that the movable area map generation unit 32 can generate the movable area map based on sensing data acquired by external sensors located separately from the mobile body, or it can acquire the movable area map from an external device, etc. Figure 4 A map of the movable area is shown, and detected obstacles are indicated by lines (or dots). Obstacles are objects present in the environment, and in addition to supports, cardboard boxes, tables, and chairs, include moving bodies such as people or automated mobile robots. Furthermore, objects that define the environment (such as walls or pillars) are also included as obstacles.

[0070] In step ST2, the route map generation unit extracts the boundary lines of the skeleton indicating the movable area. Route map generation unit 33 extracts the boundary lines of the skeleton indicating the movable area from the movable area map generated in step ST1. The boundary lines of the skeleton are extracted using, for example, a Voronoi region division method. Two-dimensional Voronoi region division is a method of dividing a plane into regions based on "which is the closest point" when multiple points are pre-set on the plane. Route map generation unit 33 performs Voronoi region division on the entire movable area, extracts the boundary lines formed by groups of points with the same distance to two different obstacles as the boundary lines of the skeleton, and proceeds to step ST3. Note that... Figure 5 The results of the Voronoi region partitioning are shown, and are obtained using... Figure 4 The movable area map shown illustrates the processing of step ST2.

[0071] In step ST3, the route map generation unit generates lane number information. The route map generation unit 33 generates lane number information, indicating the number of lanes corresponding to the number of mobile bodies that can pass simultaneously, based on the boundary lines extracted in step ST2. For example, at each point on the boundary line indicating the skeleton, if the distance W to an obstacle is less than half the size of the mobile body (hereinafter referred to as "size R"), the mobile body cannot pass. Therefore, the route map generation unit 33 deletes the boundary lines where the mobile body cannot pass. Note that the size of the mobile body is the maximum value of the width of the mobile body perpendicular to the direction of movement. Furthermore, in the case of a trackless automated guided vehicle (AGV) or the like, the width of the mobile body includes the size of the item to be transported. Additionally, the size of the mobile body may include a margin. Note that the width of the mobile body including the item to be transported can be determined by the assigned movement task, and for example, when it is clear what kind of item is being transported by the movement task, the width of the mobile body can be calculated based on the item to be transported and the shape of the mobile body.

[0072] After separating the boundary lines, the route map generation unit 33 retains only the boundary line with the longest total distance and deletes the remaining boundary lines. Furthermore, the route map generation unit 33 generates lane number information for the remaining boundary lines. For example, if the distance W from the boundary line to the obstacle is equal to or greater than N times the size R and less than (N+1) times the size R, the route map generation unit 33 sets the lane number information on the boundary line to the number of lanes N. The route map generation unit 33 assigns the generated lane number information to the boundary lines and proceeds to step ST4.

[0073] Figure 6 The boundary lines with lane number information are shown, and the information on lanes is also shown. Figure 5 The Voronoi region partitioning results shown are processed according to step ST3. Figure 6 In this process, the boundary lines indicating paths that moving objects cannot pass through are deleted, and when the remaining boundary lines are separated, only the boundary line with the longest total distance remains, while the other boundary lines are deleted. Note that in Figure 6 In the middle, a thick line indicates a boundary line with two lanes, and a thin line indicates a boundary line with one lane.

[0074] In step ST4, the route map generation unit generates a topology map. The route map generation unit 33 assigns nodes to boundary lines with lane number information and connects nodes via edges to generate a topology map. The route map generation unit 33 performs the following processing on the boundary lines with lane number information to generate the topology map.

[0075] · Process 4-1: Set nodes at the endpoints, branch points, and points where the number of lanes changes on the boundary line.

[0076] · Process 4-2: Instead of the boundary line between nodes, set an edge connecting the nodes with a straight line.

[0077] Figure 7 The processing results obtained in the case of executing Process 4-1 and Process 4-2 are shown, and the case of executing the process on the boundary line with the lane number information shown is also shown. Figure 6 shown lane number information.

[0078] · Process 4-3: When the distance between nodes is less than the first threshold Lth1, perform node combination processing by setting a new node between the two nodes with a distance shorter than the first threshold Lth1 instead of the two nodes with a short distance between them. Note that the first threshold Lth1 is a distance such that even when two nodes are combined into one node, the difference in the moving path of the moving body is less than a predetermined amount.

[0079] · Process 4-4: When the maximum separation distance between the edge between nodes and the boundary line is greater than the separation distance threshold DSth, newly set a node on the boundary line between the nodes, and the edge between the nodes is divided into edges by the newly set node.

[0080] · Process 4-5: When the edge length is longer than the second threshold Lth2 (Lth1 < Lth2), newly set a node on the boundary line between the nodes, and the edge between the nodes is divided into edges by the newly set node. Note that the second threshold Lth2 is set to a value slightly larger than the width of the moving body, for example, so that the moving route can be set finely.

[0081] Figure 8 is used to illustrate the case of executing Process 4-4 and Process 4-5 on the Figure 7 shown area AR. Note that Figure 8 (a) shows the state before the process, and Figure 8(b) shows the processed state. For example, when the maximum separation distance between the edge connecting node Nd1 and node Nd2 and the boundary line is distance DSa and is greater than the separation distance threshold DSth, a new node Nda is set on the boundary line between node Nd1 and node Nd2, and then the edge connecting node Nd1 and node Nd2 is divided into the edge connecting node Nd1 and node Nda and the edge connecting node Nda and node Nd2. Furthermore, when the maximum separation distance between the edge connecting node Nd4 and node Nd5 and the boundary line is distance DSc and is greater than the separation distance threshold DSth, a new node Ndc is set on the boundary line between node Nd4 and node Nd5, and then the edge connecting node Nd4 and node Nd5 is divided into the edge connecting node Nd4 and node Ndc and the edge connecting node Ndc and node Nd5.

[0082] Furthermore, for example, if the edge connecting nodes Nd3 and Nd4 is longer than the second threshold Lth2, a new node Ndb is created on the boundary line between nodes Nd3 and Nd4, and then the edge connecting nodes Nd3 and Nd4 is divided into the edge connecting nodes Nd3 and Ndb and the edge connecting nodes Ndb and Nd4. Similarly, if the edges connecting nodes Nd6 and Nd7 and the edges connecting nodes Nd6 and Nd8 are longer than the second threshold Lth2, nodes Ndd and Nde are created on the boundary line between nodes Nd6 and Nd7 and the boundary line between nodes Nd6 and Nd8 to perform node partitioning.

[0083] Therefore, when for Figure 7 When processing steps 4-4 and 4-5 are executed, the results are obtained. Figure 9 The processing results.

[0084] Processing 4-6: Set the number of lanes for each edge to the number N of lanes determined for the boundary line corresponding to the edge.

[0085] Processing 4-7: Set the number of lanes for each node to the minimum number of lanes in the edges connected to the node.

[0086] Figure 10 It shows the results of the study on the topic of Figure 9 The processing results shown are the results obtained by performing processes 4-6 and 4-7.

[0087] The route map generation unit 33, for example, performs the processing from steps ST2 to ST4 by using the movable area map generated in step ST1 to generate a map with... Figure 10The topology map showing the number of lanes is stored in map storage unit 34 as a route map.

[0088] <3-2. About the generation of route plans>

[0089] Next, the generation of the route plan will be described. As described above, the route map generated by the route map generation unit 33 and stored in the map storage unit 34 is a topology map configured with nodes and edges, and the edge length is limited to a certain distance or less. Furthermore, in the route map, information indicating the number of lanes that can simultaneously contain moving bodies is assigned to each node.

[0090] The route planning unit 37 generates a route plan by using a topology map (route map) generated by the route map generation unit 33 according to the number of steps in the time series. That is, one of the time series topology maps indicates the topology map at a future time, and the moving body can move to an adjacent node connected by an edge by continuing to move during a step in the time series.

[0091] In route planning, the topology of each time series step is arranged in a time series.

[0092] • The topology graph is connected by new edges that correspond to nodes at the same locations in the original topology graph between adjacent topologies. In this case, the moving body is instructed to wait at the same node during a time-series step.

[0093] • The topology is connected by new edges, which are adjacent nodes connected by edges in the original topology. In this case, the moving body is instructed to move to an adjacent node during one time series step.

[0094] In this way, by connecting adjacent topologies in the time direction with edges as described above, a time series topology graph formed by combining topologies in each time series step can be configured.

[0095] The route planning unit 37 tracks nodes on the time-series topology map in a manner that satisfies the constraint that a mobile body always moves to any node on the topology map in the next time-series step, and generates a path plan in the form of the node where the mobile body arrives at its destination. Furthermore, the route planning unit 37 sets the route by limiting the number of mobile bodies to no more than the number of lanes indicated by the lane number information allocated to nodes and edges, and releases nodes that the mobile body has already passed.

[0096] When adding route planning for new mobile entities, the simplest approach is, for example, to exclude nodes in the time-series topology that have reached the lane limit due to the route planning of another mobile entity, and to select routes that satisfy the constraint that a mobile entity always moves to the next time-series step in the topology. For example, when searching for routes using Dijkstra's algorithm, route planning unit 37 restricts the search to routes that satisfy the above constraints.

[0097] Furthermore, as another method for route planning when adding new mobile entities, route planning for all mobile entities can be performed collectively again. Specifically, a route plan is selected through a full search or similar method, satisfying the constraints that "a mobile entity always moves to any node in the topology of the next time series step in one time series step" and "mobiles corresponding to the number or more lanes should not exist on nodes in a particular time series topology." For example, route planning unit 37 uses the method described in the literature "Optimal Multi-Robot Path Planning on Graphs: Complete Algorithms and Effective Heuristics," Jingjin Yu, Steven M. LaValle, 2015.

[0098] The route planning unit 37 sends the route plan generated for each mobile body to the corresponding mobile body, and the mobile body performs movement control and completes the movement task based on the route plan generated by the route planning unit 37.

[0099] As described above, when generating a route map with lane number information, even in environments where obstacle layouts dynamically change and the passable area for moving vehicles changes, a route plan is generated based on the route map with lane number information. This allows movement tasks to be handled without causing stalling or other issues, even when using many moving vehicles. Furthermore, not only is a route map with lane number information generated, but it is also automatically updated based on changes in the movable area. Therefore, there is no need to manually reset the route map based on changes in obstacle layouts, and efficient operations can be performed easily and at low cost.

[0100] <3-3. Examples of modifications to route maps and route plans>

[0101] Incidentally, when using multiple mobile bodies, mobile bodies with different shapes can be used. In this case, mobile body information of mobile bodies with different shapes is stored in the mobile body information storage unit 35, a basic lane width is determined based on the width of the mobile bodies with different shapes, and the number of lanes is calculated using the basic lane width. Furthermore, in route planning, the routes of the mobile bodies are planned based on the number of lanes occupied by mobile bodies with different shapes. In this case, the number of lanes corresponds to the number of mobile bodies that can pass simultaneously, but it does not always indicate the number of mobile bodies that can pass simultaneously, and the number of lanes calculated using the basic lane width is used as the number of mobile bodies that can be calculated to pass simultaneously, as described later.

[0102] Next, the use of three types of mobile bodies MOa, MOb, and MOc in the mobile body control system 10 will be described. The width of mobile body MOa is the mobile body width MWA, the width of mobile body MOb is the mobile body width MWb, and the width of mobile body MOc is the mobile body width MWc. The margin required for mobile body MOa to move is the width ma, the margin required for mobile body MOb to move is the width mb, and the margin required for mobile body MOc to move is the width mc. Note that the mobile body width is the dimension including the size of the item to be transported, as described above. In this case, the width occupied when mobile body MOa moves is (MWa+ma). Similarly, the width occupied when mobile body MOb moves is (MWb+mb), and the width occupied when mobile body MOc moves is (MWc+mc). Therefore, the basic lane width BW satisfying equations (1), (2), and (3) is calculated. Note that the number of occupied lanes Ka, Kb, and Kc are natural numbers, and the margin widths ma, mb, and mc are values ​​less than the basic lane width BW.

[0103] MWa+ma=Ka×BW...(1)

[0104] MWb+mb=Kb×BW...(2)

[0105] MWc+mc=Kc×BW...(3)

[0106] For example, with widths (MWa+ma) = 40cm, (MWb+mb) = 60cm, and (MWc+mc) = 100cm, 20cm, which is the greatest common divisor of each width, is set as the basic lane width BW. In this case, the movement of the moving body MOa occupies two rows (Ka=2), the movement of the moving body MOb occupies three rows (Kb=3), and the movement of the moving body MOc occupies five rows (Kc=5).

[0107] When using moving bodies with different shapes, the route map generation unit 33 calculates the number of lanes for each node based on the basic lane width BW determined according to the moving body information of each moving body stored in the moving body information storage unit 35. Specifically, in Figure 3 In step ST3, the number of lanes N is calculated using the dimension R, which is half the basic lane width BW.

[0108] When using mobile bodies with different shapes, the route planning unit 37 sets the number of lanes to be occupied for each mobile body and generates a route plan such that the total number of lanes occupied at each node does not exceed the number of lanes at any time.

[0109] Specifically, as described above, the basic lane width BW is 20cm, the number of lanes occupied by mobile body MOa is two (Ka = 2), the number of lanes occupied by mobile body MOb is three (Kb = 3), and the number of lanes occupied by mobile body MOc is five. In this case, in a node with six lanes, there can be three mobile bodies MOa (total number of lanes occupied = 2 × 3 rows), two mobile bodies MOb (total number of lanes occupied = 3 × 2 rows), one mobile body MOc (total number of lanes occupied = 1 × 5 rows), or one mobile body MOa and one mobile body MOb (total number of lanes occupied = 2 + 3 rows). However, mobile body MOc cannot coexist with other mobile bodies MOa and MOb (total number of lanes occupied > 6 rows). Therefore, the route planning unit 37 sets the route based on the number of lanes occupied by each mobile body to ensure that the number of lanes in the node does not exceed the total number of lanes. For example, when a new route plan is executed for a mobile MOb, if the number of lanes occupied by the mobile MOb is three, a route is searched while excluding nodes with two or fewer empty lanes, and a route plan is generated.

[0110] <3-4. Regarding the use of lane maps>

[0111] Incidentally, in the above embodiments, the case in which the topology map in which lane number information is assigned to nodes and edges is generated as a route map has been described. However, a route plan can also be generated by providing the same number of edges as the number of lanes to set nodes at opposite ends, and using a lane map in which the number of lanes for nodes and edges is 1 as a route map.

[0112] The following processing is performed during the generation of the lane map.

[0113] • Process 5-1: Generate N new nodes (hereinafter referred to as "waypoints (WP)") near the opposite end nodes of the edge with the number of lanes N, and set the number of lanes to "1" by connecting WP with the edge.

[0114] • Processing 5-2: WP is connected by edges in the grid (connected by edges in a loop), and the number of lanes is set to "1".

[0115] Figure 11 This is a diagram used to illustrate the generation of lane maps, where... Figure 11 (a) shows a topology map in which lane number information is assigned to nodes and edges, and Figure 11 (b) shows the lane map corresponding to the topology graph. When processes 5-1 and 5-2 are performed on the topology graph in which lane number information is assigned to nodes and edges, a lane map in which the number of lanes for WP and edges is "1" can be generated.

[0116] Figure 12 It shows the use of Figure 10 The route map shown is the lane map generated from the route map. In the lane number information of the route map, one edge is set for the route with a lane number of "1", and two edges are set for the route with a lane number of "2".

[0117] The route planning unit 37 plans the route by using a lane map in a manner similar to that used in the case of a route map that includes lane number information.

[0118] When route planning unit 37 generates a route plan based on a route map (without using a lane map), since the route is determined to allow N or fewer mobile bodies to pass through nodes with N lanes, the space required for the parallel operation of N or fewer mobile bodies or for N or fewer mobile bodies to pass each other is guaranteed. However, in actual parallel operation or when mobile bodies pass each other, control must be implemented to prevent contact or collisions from occurring due to the path planning of the mobile bodies. For example, in the case of passing each other, when a mobile body detects the presence of another mobile body while passing through the center of the path, the mobile body needs to perform a collision avoidance operation by decelerating or changing direction, which leads to a reduction in movement speed, etc.

[0119] However, when generating route plans based on lane maps, route planning unit 37 can specify the lanes that each moving body will pass through, allowing them to travel side-by-side or pass each other. Therefore, moving bodies are less likely to perform deceleration or avoidance maneuvers, thus avoiding contact or collisions due to route planning. Furthermore, compared to route planning without lane maps, movement speed is reduced less, and movement tasks can be handled more efficiently.

[0120] <4. Application Examples>

[0121] The technology according to this disclosure can be applied to various fields. For example, it can be implemented as a device mounted on any type of mobile body (such as automobiles, electric vehicles, hybrid electric vehicles, motorcycles, bicycles, personal mobility devices, ships, or robots). Furthermore, it can be implemented as a device mounted on equipment used in factory production processes, equipment used in the construction industry, or equipment used in agriculture, forestry, etc. When the technology according to this disclosure is applied to such fields, even in environments where the passable area of ​​a mobile body changes according to working conditions, multiple devices can be used to efficiently perform tasks.

[0122] The series of processes described in the manual can be executed by hardware, software, or a combination of both. When processing is performed by software, a program recording the processing sequence is installed in the memory of a computer containing dedicated hardware, and the program is executed. Alternatively, the program can be installed and executed in a general-purpose computer capable of performing various types of processing.

[0123] For example, the program can be pre-recorded on a hard disk, solid-state drive (SSD), or read-only memory (ROM) as the recording medium. Alternatively, the program can be temporarily or permanently stored (recorded) on a removable recording medium such as a floppy disk, CD-ROM, magneto-optical disk (MO), digital versatile optical disk (DVD), Blu-ray disc (BD) (registered trademark), magnetic disk, or semiconductor memory card. Such removable storage media can be provided as so-called packaged software.

[0124] In addition to installing programs from removable recording media to a computer, programs can also be wirelessly or wiredly transferred from a download site to the computer via a network such as a local area network (LAN) or the Internet. In the computer, programs transferred as described above can be received and installed on recording media such as an internal hard drive.

[0125] Note that the effects described in this specification are merely illustrative and not limiting, and additional effects not described may be provided. Furthermore, this technology should not be construed as limited to the embodiments described above. Embodiments of this technology are disclosed by way of illustration, and it is apparent that those skilled in the art can modify or substitute the embodiments without departing from the spirit of this technology. That is, the claims should be considered in order to determine the spirit of this technology.

[0126] In addition, the information processing device of this technology may also have the following configuration.

[0127] (1) An information processing apparatus, comprising a route map generation unit configured to, in an environment containing obstacles, between the obstacles in a movable area that is a region in which a mobile body can move, establish a boundary line formed by a group of points having equal distances from two different obstacles, and determine the number of lanes for the boundary line based on the distance from each of the obstacles to the boundary line and the size of the mobile body moving in the environment.

[0128] (2) The information processing device according to (1), wherein the number of lanes corresponds to the number of moving bodies that can pass through simultaneously.

[0129] (3) The information processing apparatus according to (1) or (2), wherein the route map generation unit performs Voronoi region division on the movable area and sets the boundary line.

[0130] (4) The information processing apparatus according to any one of (1) to (3), wherein the size of the moving body is the maximum value of the width of the moving body perpendicular to the direction of movement.

[0131] (5) The information processing apparatus according to any one of (1) to (4), wherein the size of the moving body includes a margin.

[0132] (6) The information processing apparatus according to any one of (1) to (5), wherein the route map generation unit generates a route map including lane number information based on the boundary line and the number of lanes determined for the boundary line.

[0133] (7) The information processing apparatus according to any one of (1) to (6), wherein the route map generation unit sets nodes at the branch points and endpoints of the boundary line and at the points where the number of lanes of the boundary line changes, and generates a topology map in which the nodes are connected by edges as the route map.

[0134] (8) According to the information processing apparatus of (7), wherein, when the distance between the nodes is shorter than a first threshold, the route map generation unit sets a new node between the nodes to replace the two nodes whose distance between the nodes is shorter than the first threshold.

[0135] (9) The information processing apparatus according to (7) or (8), wherein, when the maximum separation distance between the edge between the nodes and the boundary line is greater than the separation distance threshold, the route map generation unit sets a new node on the boundary line between the nodes and divides the edge between the nodes into an edge through the newly set node.

[0136] (10) The information processing apparatus according to (8) or (9), wherein, when the distance between the nodes is longer than a second threshold longer than the first threshold, the route map generation unit sets a new node on the boundary line between the nodes and divides the edge between the nodes into an edge through the newly set node.

[0137] (11) The information processing apparatus according to any one of (7) to (10), wherein the route map generation unit sets the number of lanes determined for the boundary line as lane number information of the edge corresponding to the boundary line.

[0138] (12) The information processing apparatus according to any one of (7) to (11), wherein the route map generation unit sets the minimum number of lanes in the edges connected to the node as the lane number information of the node.

[0139] (13) The information processing apparatus according to any one of (7) to (10), wherein the route map generation unit provides the same number of edges as the number of lanes determined for the boundary line, and sets nodes at opposite ends of the edges to generate a lane map as the route map wherein the number of lanes of the nodes and the edges is 1.

[0140] (14) The information processing apparatus according to any one of (6) to (13), wherein the route map generation unit updates the route map according to the changes in the movable area.

[0141] (15) The information processing apparatus according to any one of (6) to (14) further includes a route planning unit configured to plan the route of the moving body by using the route map including the lane number information.

[0142] (16) The information processing apparatus according to (15), wherein the route planning unit plans a route for each mobile body such that the number of mobile bodies does not exceed the number of lanes indicated by the lane number information.

[0143] (17) The information processing apparatus according to (15) or (16), wherein the route map generation unit determines the number of lanes by using a basic lane width corresponding to a moving body having multiple different sizes as the size of the moving body, and

[0144] The route planning unit plans a route by using the number of lanes having the basic lane width occupied by each mobile body having multiple different sizes.

[0145] List of reference numerals

[0146] 10. Movement Control System

[0147] 20 moving bodies

[0148] 21 sensor units

[0149] 22 Surrounding Map Generation Units

[0150] 23 Self-position estimation units

[0151] Communication units 24 and 31

[0152] 25 Path Planning Units

[0153] 26 drive control unit

[0154] 27 drive units

[0155] 30 servers

[0156] 32 movable area map generation units

[0157] 33 Route Map Generation Unit

[0158] 34 map storage units

[0159] 35 mobile information storage units

[0160] 36 Task Planning Units

[0161] 37 Route Planning Unit

Claims

1. An information processing apparatus, comprising: A route map generation unit is configured to, in an environment containing obstacles, establish boundary lines between obstacles in a movable area that is a region where a mobile body can move, formed by groups of points equidistant from two different obstacles, and determine the number of lanes for the boundary lines based on the distance from each of the obstacles to the boundary lines and the size of the mobile body moving in the environment. The route map generation unit sets nodes at the branch points and endpoints of the boundary line and at the points where the number of lanes on the boundary line changes, and generates a topology map in which the nodes are connected by edges as the route map.

2. The information processing apparatus according to claim 1, wherein... The number of lanes corresponds to the number of moving objects that can pass through simultaneously.

3. The information processing apparatus according to claim 1, wherein... The route map generation unit performs Voronoi region division on the movable area and sets the boundary lines.

4. The information processing apparatus according to claim 1, wherein... The size of the moving body is the maximum value of the width of the moving body perpendicular to the direction of movement.

5. The information processing apparatus according to claim 1, wherein... The dimensions of the moving body include allowances.

6. The information processing apparatus according to claim 1, wherein The route map includes information on the number of lanes.

7. The information processing apparatus according to claim 1, wherein... If the distance between the nodes is shorter than a first threshold, the route map generation unit sets a new node between the nodes to replace the two nodes whose distance is shorter than the first threshold.

8. The information processing apparatus according to claim 1, wherein If the maximum separation distance between the edge between the nodes and the boundary line is greater than the separation distance threshold, the route map generation unit sets a new node on the boundary line between the nodes and divides the edge between the nodes into edges through the newly set node.

9. The information processing apparatus according to claim 7, wherein If the distance between the nodes is longer than a second threshold that is longer than the first threshold, the route map generation unit sets a new node on the boundary line between the nodes and divides the edge between the nodes into an edge through the newly set node.

10. The information processing apparatus according to claim 1, wherein The route map generation unit sets the number of lanes determined for the boundary line as the lane number information of the edge corresponding to the boundary line.

11. The information processing apparatus according to claim 1, wherein The route map generation unit sets the minimum number of lanes in the edges connected to the node as the lane number information of the node.

12. The information processing apparatus according to claim 1, wherein The route map generation unit provides the same number of edges as the number of lanes determined for the boundary lines, and sets nodes at opposite ends of the edges to generate a lane map where the number of lanes of the nodes and the edges is 1 as the route map.

13. The information processing apparatus according to claim 6, wherein The route map generation unit updates the route map based on changes in the movable area.

14. The information processing apparatus according to claim 6, further comprising: A route planning unit is configured to plan the route of the moving body using the route map that includes the lane number information.

15. The information processing apparatus according to claim 14, wherein The route planning unit plans a route for each mobile vehicle such that the number of mobile vehicles does not exceed the number of lanes indicated by the lane number information.

16. The information processing apparatus according to claim 14, wherein The route map generation unit determines the number of lanes by using a basic lane width corresponding to a moving body with multiple different sizes as the size of the moving body, and The route planning unit plans a route by using a number of lanes with a basic lane width occupied by each mobile body having multiple different sizes.

17. An information processing method, comprising: In an environment with obstacles, between obstacles in a movable area that is a region where a moving body can move, a boundary line is set by a group of points having equal distances from two different obstacles. The number of lanes is determined for the boundary line based on the distance from each of the obstacles to the boundary line and the size of the moving body moving in the environment. as well as Nodes are set at the branch points and endpoints of the boundary line and at the points where the number of lanes on the boundary line changes, and a topology map is generated where the nodes are connected by the edges as a route map.

18. The information processing method according to claim 17, wherein... The route map includes information on the number of lanes.

19. A program product that enables a computer to generate route maps, the program product causing the computer to perform: In an environment with obstacles, the step of setting a boundary line between obstacles in a movable area that is a region where a moving body can move, consisting of a group of points that are equidistant from two different obstacles. The step of determining the number of lanes relative to the boundary line based on the distance from each of the obstacles to the boundary line and the size of the moving body moving in the environment; and The steps include setting nodes at the branch points and endpoints of the boundary line and at the points where the number of lanes on the boundary line changes, and generating a topology map of the route map, wherein the nodes are connected by edges, and the route map has lane number information.

Citation Information

Patent Citations

  • Distributed multi-robot system

    WO2009102970A2

  • Method and apparatus for planning path of mobile robot

    CN101480795A

  • Vehicle path planning method based on storage unmanned vehicle

    CN107037812A

  • Integrated detection and restoration method for solving problems of flying spots and spot density of road network data

    CN110619134A

  • Relieving Urban Traffic Congestion

    US20090125160A1