Mobile body group control device, mobile body group control system, and mobile body group control method

By dynamically adjusting movement rules based on congestion predictions, the mobile body group control device optimizes route planning, reducing congestion and improving efficiency in mobile body systems.

WO2025120918A1PCT designated stage expired Publication Date: 2025-06-12HITACHI LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
PCT/JP2024/028536
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2023-12-05
Filing Date
2024-08-08
Publication Date
2025-06-12

AI Technical Summary

Technical Problem

Conventional mobile body group control systems face inefficiencies due to the rigid grid-based movement restrictions, which can lead to excessive detours and waiting among mobile bodies, especially in densely congested areas.

Method used

A mobile body group control device that dynamically adjusts movement rules based on congestion prediction, allowing diagonal movement in less congested areas and restricting it in predicted congestion zones to optimize route planning and reduce bottlenecks.

Benefits of technology

This approach equalizes the density of moving bodies, reducing congestion and improving overall efficiency by minimizing detours and waiting times, thereby enhancing the productivity of mobile body systems.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure JP2024028536_12062025_PF_FP_ABST
    Figure JP2024028536_12062025_PF_FP_ABST
Patent Text Reader

Abstract

The purpose of the present invention is to provide a mobile body group control device, a mobile body group control system, and a mobile body group control method capable of improving the overall efficiency of mobile bodies. In order to achieve the purpose, a movement route creation unit (615) creates a provisional movement route to a destination of each of a plurality of mobile bodies (101) after applying a predetermined pre-movement rule to the entire region of a movement space (200) of the plurality of mobile bodies (101), evaluates, on the basis of a predetermined evaluation item, a movement prediction result when the plurality of mobile bodies (101) move along the provisional movement route, sets a region of the movement space (200) to which a special movement rule different from the pre-movement rule is applied as a special region (1201) on the basis of the evaluation result of the movement prediction result, and creates a movement route to the destination of each of the plurality of mobile bodies (101) after applying the special movement rule to the special region (1201) and applying the pre-movement rule to a region other than the special region (1201) in the movement space (200).
Need to check novelty before this filing date? Find Prior Art

Description

Mobile object group control device, mobile object group control system, and mobile object group control method

[0001] The present invention relates to a mobile object group control device, a mobile object group control system, and a mobile object group control method for controlling a plurality of mobile objects.

[0002] With the labor shortage caused by the declining birthrate and aging population and the expansion of the e-commerce market, labor saving and improved work efficiency in logistics warehouses and factories have become issues. To solve these issues, the introduction of mobile object group control systems that efficiently operate multiple mobile objects such as automated guided vehicles (AGVs) is being promoted.

[0003] In the past, mobile object group control systems generally divided the space into a rectangular grid, and mobile objects could only move in a straight line along the grid in all directions and turn on the spot, due to the computational costs required to control all mobile objects and the need to avoid collisions between them. In this case, the basic configuration is a centralized route planning function that manages the positions of all mobile objects using a single control server (host computer) and sequentially calculates the routes to the destinations of all mobile objects.

[0004] The path planning function is required to optimize overall efficiency while avoiding collisions and interference between moving objects. As a specific example, the mobile object control device in Patent Document 1 treats path planning calculations as a mixed integer programming problem, with the movement path and movement process as inputs and the objective being to minimize a predetermined evaluation value while satisfying constraints. By adding a collision prohibition condition to the constraints and minimizing the evaluation value, it becomes possible to calculate a transportation schedule that minimizes the movement paths of all moving objects while avoiding collisions between moving objects.

[0005] Japanese Patent Application Laid-Open No. 2023-72447

[0006] In Patent Document 1, the same rules (constraints) are set for the entire moving space. More specifically, if no other moving objects are scheduled to enter any route in the moving space, the route is allowed to be traveled. In this case, if one moving object occupies a route, other moving objects may be forced to make excessive detours or wait around the route. Therefore, the moving object control device in Patent Document 1 has room for improvement in terms of optimizing overall efficiency.

[0007] The present invention has been made in consideration of the above-mentioned problems, and its object is to provide a mobile object group control device, a mobile object group control system, and a mobile object group control method that can improve the overall efficiency of mobile objects.

[0008] In order to achieve the above object, the present invention provides a mobile body group control device that controls a plurality of moving bodies, comprising a destination determination unit that determines the destination of the plurality of moving bodies, a movement path creation unit that creates movement paths to the destination of the plurality of moving bodies, and a communication unit that transmits the movement paths to the plurality of moving bodies, wherein the movement path creation unit applies a predetermined advance movement rule to the entire area of ​​the movement space of the plurality of moving bodies, creates a tentative movement path to the destination of the plurality of moving bodies, evaluates a movement prediction result when the plurality of moving bodies moves along the tentative movement path based on predetermined evaluation items, and based on the evaluation result of the movement prediction result, sets an area of ​​the movement space to which a special movement rule different from the advance movement rule is applied as a special area, applies the special movement rule to the special area, and applies the advance movement rule to areas of the movement space other than the special area, and creates the movement path.

[0009] The present invention also provides a mobile object group control system for controlling a plurality of mobile objects, the system comprising a plurality of mobile objects and the mobile object group control device.

[0010] Furthermore, the present invention provides a mobile body group control method for controlling a plurality of moving bodies, comprising a first step of determining the destination of the plurality of moving bodies, a second step of applying a predetermined advance movement rule to the entire area of ​​the movement space of the plurality of moving bodies and then creating a tentative movement route to the destination of the plurality of moving bodies, a third step of evaluating the movement prediction results when the plurality of moving bodies move along the tentative movement route based on predetermined evaluation items, a fourth step of setting an area of ​​the movement space to which a special movement rule different from the advance movement rule is applied as a special area based on the evaluation result of the third step, and a fifth step of applying the special movement rule to the special area and applying the advance movement rule to areas of the movement space other than the special area and then creating a movement route to the destination of the plurality of moving bodies.

[0011] According to the present invention, the density of moving objects in a moving space is leveled, so that the overall efficiency of moving objects can be improved.

[0012] 1. Diagram showing an example of the operating environment of a transport system within a warehouse or factory Diagram showing the movement space of a mobile object Conceptual diagram of blockage control Diagram showing a graph structure Diagram showing an example of a movement path Diagram showing an example of a movement path Conceptual diagram of a mobile object Functional block diagram of a mobile object and an on-board controller Functional block diagram of a mobile object group control system Conceptual diagram of the space-time A* method Conceptual diagram of cost setting according to mobile object movement in the space-time A* method Conceptual diagram showing the movement prediction results of multiple mobile objects using the space-time A* method Flowchart showing a series of processes executed by a mobile object group control device Conceptual diagram showing mobile object movement around a congestion prediction grid (before movement constraint) Conceptual diagram showing mobile object movement around a congestion prediction grid (before movement constraint) Diagram showing the pattern of constraint links in a special area Diagram showing the pattern of constraint links in a special area Conceptual diagram showing mobile object movement around a congestion prediction grid (after movement constraint) Conceptual diagram showing mobile object movement around a congestion prediction grid (after movement constraint)

[0013] 1 to 13B, an embodiment of the present invention will be described in detail below. Note that in this embodiment, an explanation will be given of inter-process transport within a warehouse or factory as an example.

[0014] <Operational Environment 100> FIG. 1 is a diagram showing an example of an operational environment 100 of a transportation system in a warehouse or factory. In the operational environment 100, mobile objects 101 that perform transportation work are used. Each mobile object 101 is controlled via wireless communication by a mobile object group control device 601. The mobile object group control device 601 includes a control server 601a, an input device 601b such as a keyboard or a mouse, and a display 601c. The input device 601b is a device for inputting information on orders (tasks) required for the entire transportation system to the control server 601a. ​​The display 601c is a device for displaying the operation status of each mobile object 101 (such as the planned route and task execution status), which is the result of calculations by the control server 601a.

[0015] In the operational environment 100, an operator 105 at a station 104 transfers items 103 transported from another area by a conveyor 102 to a mobile object 101, the mobile object 101 loaded with the items 103 moves to another station 106, and another operator 108 at the station 106 combines the transported items 103 and places them on a conveyor 109. The mobile object 101 repeatedly travels between the station 104 adjacent to the conveyor 102 and the combining station 106, and if charging is required or if there are no tasks that can be executed, it heads to an adjacent dock 107.

[0016] <Movement Space 200> Figure 2 is a diagram showing the movement space 200 of the moving body 101. The entire movement space 200 is divided into quadrangular (square) grids 201. The centers of the grids 201 are nodes 202, and information connecting the nodes 202 is links 203. A path is planned using a graph structure 204 consisting of the nodes 202 and the links 203.

[0017] <Block Control> In general, group control has a function to occupy specific sections of the route to the destination to prevent collisions and interference between moving objects, and to prohibit other moving objects from entering the occupied sections. This function is called block control or exclusion control, and is a safety function that operates independently of route planning. Hereinafter, in this embodiment, it will be referred to as block control. FIG. 3 is a conceptual diagram of block control. In FIG. 3, two moving objects 301 and 302 exist, and their routes to their respective destinations 303 and 304 partially overlap. Because moving object 301 is blocking a four-grid area 305, moving object 302 is only permitted to travel in a three-grid area 306 ahead. The number of grids (length) of the above-mentioned block section (occupied section) significantly affects the productivity of the entire system. The length of the block section has a trade-off relationship between the productivity of the entire system and the computational load, and must be appropriately set depending on the performance of the moving object group control device 601 and the on-board controller 501 and the number of moving objects.

[0018] <Graph Structure> In this embodiment, in order to more clearly demonstrate the effects of the present invention, a graph structure 401 is used that allows movement in a total of eight directions, as shown in Figure 4A, instead of the graph structure 204 (shown in Figure 2) that allows movement only in four directions (up, down, left, and right), and also four directions at 45 degrees diagonal. Here, Figure 4B shows an example of a movement path that uses only up, down, left, and right movement and turning on the spot, and Figure 4C shows an example of a movement path that also uses diagonal movement. The advantage of diagonal movement is that when a destination 403 is diagonally located from the mobile object 402, the travel distance is shorter than when using only up, down, left, right, and right movement and turning on the spot, and since only a 45-degree turn is required for one direction change, depending on the drive configuration and control method of the mobile object, it is possible to change the direction of movement without having to decelerate and stop each time.

[0019] On the other hand, if diagonal travel is permitted, the grid occupancy rate due to blockage control will increase depending on the shape of the moving object 101 and the size of the grid, which will hinder the progress of other moving objects 101. As an example, as shown in a comparison of the occupied area 404 in FIG. 4B and the occupied area 405 in FIG. 4C, when moving diagonally forward by one grid, a total of four grids' worth of area will be occupied, which is inefficient space usage. More specifically, when diagonal travel is utilized, focusing only on a specific moving object 101 can allow the destination to be reached quickly, but the area already occupied by other moving objects 101 will become larger (wider), which may result in excessive detours and waiting, leading to a deterioration in overall efficiency.

[0020] The above-mentioned situation is likely to occur because it depends on the congestion of mobile objects 101 in a specific area, and the denser the mobile objects 101, the greater the grid occupation amount. Therefore, in this embodiment, a function is proposed that aggregates the planned travel routes of each mobile object, uses the results to predict in advance areas where mobile objects will be congested, and distinguishes between areas where diagonal movement continues to be utilized and areas where movement is limited to, for example, left, right, up, and down, based on any evaluation criteria. Compared to conventional technology, a new element is that the movement rules for each area are changed sequentially depending on the congestion of mobile objects 101. The following describes in detail the specific system configuration and processing that realizes the above-mentioned new element.

[0021] <Mobile body 101> Fig. 5A is a conceptual diagram of the mobile body 101. In this embodiment, the mobile body 101 is a differential two-wheel type, but it may be a mobile body of other drive types such as an omni-wheel type or a mecanum wheel type. Here, x is the x-coordinate value of the mobile body 101, y is the y-coordinate value of the mobile body 101, and θ is the orientation (direction) of the mobile body 101. Self-position calculation, which will be described later, means obtaining the current (x, y, θ) values.

[0022] <Functional Blocks of the Mobile Object 101 and the On-Board Controller 501> Fig. 5B is a functional block diagram illustrating the control operation of the mobile object 101. The mobile object 101 is equipped with an on-board controller 501 that performs control calculations. The on-board controller 501 includes a target route management unit 502, an on-board sensor 503, a driving map management unit 504, a control command generation unit 505, a self-position calculation unit 506, and a communication unit 509 that communicates with the mobile object group control device 601. The mobile object 101 also includes a drive unit 507 that includes drive wheels, and an encoder 508 that acquires the amount of rotation of the drive wheels. An overview of each function will be described below.

[0023] The target route management unit 502 receives the target route planned by the mobile object group control device 601 via the communication unit 509. The target route is a set of the nodes and links, and receives sequentially updated information from the mobile object group control device 601.

[0024] The on-board sensor 503 corresponds to an external sensor mounted on the mobile object 101. In this embodiment, as an example, the mobile object 101 is equipped with a LiDAR (Light Detection and Ranging) sensor. LiDAR is a sensor that measures the distance to an object within the irradiation range by changing the irradiation angle of a laser beam. Regarding mobile object group control technology, including AGVs, a method of installing AR (Augmented Reality) tags or RFID (Radio Frequency Identification) on the road surface and reading these tags with a dedicated sensor to obtain the traveling position and direction of the mobile object has been common. On the other hand, in recent years, position estimation technology utilizing active sensors such as LiDAR and cameras has become inexpensive and highly accurate. This makes it possible to accurately control the mobile object 101 even in the complex graph structure with the aforementioned 45-degree diagonal links.

[0025] The driving map management unit 504 manages a driving map (an image map different from that shown in FIG. 2 ) showing obstacle information in the operational environment 100. The map is created in advance before the start of operation using SLAM (Simultaneous Localization and Mapping) with input of measurement data (a LiDAR point cloud set) obtained during driving from the onboard sensor 503 (LiDAR) and moving object distance information obtained from the encoder 508 (described later). Creating a grid map using SLAM is a well-known technique, so a description thereof will be omitted.

[0026] The self-position calculation unit 506 combines the measurement results obtained from the on-board sensor 503 and the encoder 508 to calculate the self-position (coordinate values ​​x, y) and orientation θ of the mobile object 101. Specifically, map matching technology is used. Map matching is a technology that takes the measurement data acquired by the on-board sensor 503 and a driving map as input, and estimates the position of the mobile object on the driving map by utilizing the similarity between the point cloud set and the driving map. For example, there is an Adaptive Monte Carlo Localization method that uses a particle filter. Since the self-position estimation technology using map matching is also a publicly known technology, a detailed description will be omitted.

[0027] The control command generation unit 505 performs calculations related to the travel control of the mobile object. Here, the target route and the self-position are input, and calculations are performed to determine control commands for following the target route, more specifically, the speed v and angular velocity ω. For example, a process can be considered in which the node nearest to the vehicle's position, which constitutes the target route, is set as the target node, and the speed v and angular velocity ω are sequentially calculated to reach the target node. Specifically, a method such as a forward gaze model (pure pursuit method) can be considered, and since this method is also a publicly known technique, a detailed description will be omitted.

[0028] The drive unit 507 drives the drive wheels in accordance with the command value input from the control command generation unit 505. The encoder 508 estimates the travel distance and current speed of the mobile object 101 from the amount of rotation of the drive wheels, and transmits the estimated values ​​to the self-position calculation unit 506.

[0029] The above is an overview of the functions of the moving object 101 and the on-board controller 501. Next, an overview of the moving object group control system and an overview of the functions of the moving object group control device 601, which is the main focus of this embodiment, will be described.

[0030] <Mobile Object Group Control System> Figure 6 is a functional block diagram of a mobile object group control system 600. The mobile object group control system 600 in this embodiment includes a mobile object group control device 601, an on-board controller 501, and a mobile object 101. The mobile object group control device 601 executes route planning for each mobile object while managing the progress of orders (tasks) requested throughout the system and the status of each mobile object (the progress status of tasks assigned to each mobile object and its traveling position). The mobile object group control device 601 includes a graph structure management unit 602, a mobile object structure management unit 603, a blockage status management unit 604, a blockage control unit 605, a mobile object status management unit 606, a destination determination unit 607, a route planning unit 608, a congestion level determination unit 609, a graph structure dynamic change unit 610, a route determination unit 611, a communication unit 612, an instruction unit 613, and a display unit 614. The blockage control unit 605, route planning unit 608, congestion level determination unit 609, graph structure dynamic change unit 610, and route determination unit 611 constitute a travel route creation unit 615. In Fig. 6, lines with arrows indicate the flow of data. Below, an overview of each functional block provided in the mobile object group control device 601 will be described based on the configuration example of Fig. 6.

[0031] <Graph Structure Management Unit 602> The graph structure management unit 602 manages a graph structure composed of node and link shapes. In this embodiment, as shown in FIG. 4A, a graph structure is created and managed in which 45-degree diagonal links are added to the up, down, left, and right links for a node. Furthermore, a format is adopted in which weights can be assigned to links when passing through links as needed. In this embodiment, the grid constituting the movement space 200 is square, and there is no difference in movement distance between up and down and left and right. As an example, left, right, up and down links are assigned a weight of 1.0, and diagonal links are assigned a weight of 1.4. Furthermore, if it is desired to prohibit passage through a specific area, the weights of the links constituting that area are assigned a sufficiently large value (utilized by the graph structure dynamic modification unit 610, described later). Attribute information may also be assigned to nodes. 2, the grid closest to the worker 105 (or station 104) according to the task is set as the destination, and an operation is assumed in which a load picked up (manually placed) at the destination located in the top grid is transported to the destination located in the bottom grid, and the mobile object 101 repeatedly performs a round trip operation between the destinations located in the top and bottom grids. Therefore, the nodes corresponding to the top and bottom grids are set as destination nodes, and the route to the destination node (the order of links to be traversed) is determined in the route planning processing function described below.

[0032] <Mobile object structure management unit 603> The mobile object structure management unit 603 stores basic information about the mobile object 101. Specifically, the unit manages dimensional values ​​related to the vehicle size, such as the mobile object width, mobile object length, mobile object height, and wheelbase, as well as values ​​related to running performance, such as the maximum (minimum) value of speed, the maximum (minimum) value of angular velocity, and the maximum (minimum) value of acceleration. The unit also manages the maximum battery capacity of the mobile object and, in the case of transporting cargo, the maximum weight of the cargo to be transported. The unit also manages the maximum block section length handled by the block control unit 605, which will be described later.

[0033] <Blocking Status Management Unit 604 / Blocking Control Unit 605> To avoid collisions and interference between moving objects, the blocking control unit 605 occupies a specific section of the route to the destination and does not allow other moving objects to enter the occupied section. Based on the (pre-set) maximum blocked section length managed by the moving object structure management unit 603, the blocking control unit 605 calculates up to which grids the planned route can be occupied. Therefore, grids with the maximum blocked section length are not always allowed to be blocked; as explained with reference to FIG. 3, the travelable range changes each time depending on the blocking status of other moving objects. However, to avoid interference with other moving objects, the grid corresponding to the current position is always blocked. Furthermore, when moving diagonally at a 45-degree angle, which is a feature of the present invention, four grids in the direction of travel are blocked (see FIG. 4C).

[0034] The blockage status management unit 604 manages which grids each mobile object is currently blocking (occupying). Because the blocked areas of mobile objects change from moment to moment, the blockage status management unit 604 updates the information it manages internally in conjunction with input and output information from the route planning unit 608 and blockage control unit 605, which will be described later.

[0035] <Mobile object status management unit 606> The mobile object status management unit 606 manages the current status of each mobile object. Specifically, it manages the progress of tasks assigned to each mobile object, as well as the position information, remaining battery charge, and weight of the load of each mobile object transmitted from the on-board controller 501 via the communication unit 612. In addition, it calculates the current remaining battery charge and weight of the load based on information from the mobile object structure management unit 603. For example, if the remaining battery charge falls below a specific threshold or if an excessively heavy load is being carried, it is deemed to be in an error state, and an abnormal status different from that of a normal mobile object is transmitted to the route plan described below.

[0036] <Destination Determination Unit 607> The destination determination unit 607 determines the next destination of each mobile object based on information about orders (tasks) to be completed throughout the system, input from the instruction unit 613 (described later). While there are methods for changing the order of destinations to maximize productivity within a given time period according to the content of the order, this is not a core aspect of the present invention. Therefore, in this embodiment, the list in the order is assigned to mobile objects waiting for a task, starting from the top. However, for a mobile object for which the mobile object status management unit 606 has detected an abnormal status due to a low battery or overload, the dock area 205 (shown in FIG. 2 ), which is made up of a grid associated with the dock 107, is set as the destination.

[0037] Since the series of flows of the route planning unit 608, the congestion level determination unit 609, the graph structure dynamic change unit 610, and the route determination unit 611 are the focus of the present invention, only an outline of the processing will be described here, and the actual processing flow will be described later in accordance with the flowchart shown in Figure 10.

[0038] <Route Planning Unit 608> The route planning unit 608 receives the graph structure managed by the graph structure management unit 602, the current position and status of each mobile object output from the mobile object state management unit 606, and the destination (grid) output from the destination determination unit 607 as inputs, and performs global route planning from the mobile object's current position to the destination. The global route is generated based on the graph structure. There are many known global route planning methods, such as the Dijkstra algorithm and the A* (A star) algorithm, and detailed descriptions will be omitted. In this embodiment, an algorithm based on the A* algorithm is used. The generated global route is expressed as a set of links to be traversed, and travelling through these links in order guarantees arrival at the destination. The route 206 shown in FIG. 2 is an example of a generated global route. In this embodiment, diagonal movement is also permitted, so the global route is generated by combining routes in up to eight directions.

[0039] In this embodiment, the output of the route planning unit 608 is used in the congestion level determination unit 609 (described later), and therefore the spatiotemporal A* method is used as a specific algorithm for route planning. The spatiotemporal A* method is an A* method that adds a time axis and can calculate the shortest route while taking into account the presence of dynamic obstacles. FIG. 7 shows a conceptual diagram of the spatiotemporal A* method. As shown in this diagram, the route search area is a lattice space on a two-dimensional plane, and the search space is a three-dimensional map with the depth direction as the time axis. Since the positions of dynamic obstacles are managed in grid units (discrete values), dynamic obstacles are handled in implementation using a hash map (a data structure consisting of pairs of position and time). When calculating the shortest route from point A to point B, static obstacles such as walls are taken into account in the same way as in the conventional A* method, and collision detection with registered dynamic obstacles is also performed to determine the shortest route.

[0040] In this embodiment, the space-time A* method is used to treat the planned routes of other vehicles as dynamic obstacles, thereby enabling sequential planning of the shortest route while resolving route conflicts between moving objects. Many prior research and inventions using the space-time A* method often do not use accurate moving object motion models when planning routes, and instead assume that each moving object moves one grid in one calculation step. However, actual moving objects have maximum speeds, angular velocities, and acceleration / deceleration. Furthermore, this embodiment actively utilizes multi-directional travel, including diagonal travel. Therefore, the travel distance and time differ between, for example, moving one grid in the left / right, up / down, and diagonal directions and moving one grid in a 45-degree diagonal direction. Furthermore, the time required for changing direction by turning on the spot is different from that for normal forward travel.

[0041] Therefore, in this embodiment, the drive mode and running capacity of the moving body are taken into consideration and the required time (cost) for each movement of the moving body is set. Here, as shown in Fig. 8, the time required for the moving body to move one grid left, right, up, or down without changing direction is set as 1.0, and the relative time (cost) required for turning or diagonal movement is set. Fig. 9 is a conceptual diagram showing the movement prediction results for multiple moving bodies, and as an example, the moving body movements of four moving bodies every 0.5 seconds are illustrated.

[0042] The top table shows the movement changes of the moving object, and the drawing (filling) pattern of each cell shows the moving object's movement at each time (forward, diagonal forward, turning on the spot, etc.). The bottom table shows the change in the moving object's position (coordinate value) at each time when the movement changes in the top table are performed.

[0043] In conventional methods, travel time is estimated by assuming that the mobile object moves forward one grid step per step (one second in the figure) or turns on the spot, whereas in this embodiment, travel time is estimated based on the time required for each operation of the mobile object. As a result, although the accuracy varies depending on the control cycle of the mobile object group control device 601, the difference in travel time between the planned and actual operation of each mobile object is reduced, making it possible to make accurate congestion predictions.

[0044] In the general A* method, when calculating the travel cost during route search, the actual cost of moving to the target grid is g(n), and the heuristic cost h(n) (often the distance between the target grid and the destination) is the sum of these to calculate the travel cost f(n). In this embodiment, when calculating the actual cost g(n), the sum of the pre-set link cost (passing weight) and the cost according to the movement of the mobile unit is used.

[0045] As described above, in this embodiment, when searching for a route using the space-time A* method, calculations are performed taking into account the direction of movement and the posture of the moving object. At this time, the route planning results of each moving object are also input for other moving objects (dynamic obstacles for the moving object), so that the estimated travel time in the time direction can be handled.

[0046] <Congestion Degree Determination Unit 609> The congestion degree determination unit 609 successively changes the area in which diagonal travel is permitted according to the degree of congestion of mobile objects, and by leveling out the degree of congestion of mobile objects, suppresses a decrease in productivity due to blockage control when diagonal travel is utilized. Specifically, the planned routes of each mobile object planned by the route planning unit 608 are aggregated once, and as a result, nodes where congestion is expected are identified. The specific processing content will be described later.

[0047] <Graph structure dynamic change unit 610> The graph structure dynamic change unit 610 disables diagonal links around the congestion predicted node calculated as a result of the congestion degree determination unit 609 (details of the process will be described later). This makes it possible to realize a more efficient mobile object control method by actively utilizing diagonal travel in areas where the mobile objects 101 are sparse, and by using the conventional method of travel in left / right / up / down directions plus turning on the spot in areas where the mobile objects 101 are densely located.

[0048] <Route determination unit 611> The route determination unit 611 transmits the routes of all moving bodies output through processing by the route planning unit 608, congestion level determination unit 609, and graph structure dynamic change unit 610 to the target route management unit 502 of each moving body 101 via the communication unit 612.

[0049] <Instruction Unit 613 / Display Unit 614> The instruction unit 613 is composed of an input device 601b, and transmits information on orders (tasks) required for the entire transportation system to the destination determination unit 607. The display unit 614 is composed of a display 601c, and displays the overall shape of the movement space 200, a graph structure, the current planned routes of all moving objects, the status of the moving objects, etc., as shown in FIG.

[0050] Hereinafter, the flow of the route planning process for multiple moving objects will be described with reference to the flowchart shown in FIG. 10 and with reference to FIGS. 9 and 11A to 13B.

[0051] <Flow of Route Planning Process for Multiple Moving Objects> The flowchart shown in FIG. 10 shows a series of processes executed by the moving object group control device 601.

[0052] When the mobile object group control device 601 starts processing, it acquires the self-position of each mobile object (process 1001). Here, the current position and azimuth of each mobile object, which are the calculation results of the self-position calculation unit 506 provided in each mobile object, are acquired via the communication units 509 and 612.

[0053] Following process 1001, the mobile object status of each mobile object is acquired (process 1002). In this embodiment, the current remaining battery level and the weight of the load are acquired as the mobile object status. After that, mobile objects that are overloaded or have a low remaining battery level are detected from the acquired information, and the current position and status (normal, low battery, overload state) of each mobile object are transmitted to the subsequent process 1003. Note that processes 1001 and 1002 are executed by the mobile object status management unit 606.

[0054] Following process 1002, the destination of each moving object is determined (process 1003). The destination is the grid 201 associated with the station 104, 106, and as described above, is the grid 201 in the top or bottom row that is closest to the station 104, 106 according to the task. However, if a moving object is detected to be overloaded or have a low remaining battery in process 1002, the destination is changed to the dock area 205.

[0055] Following process 1003, a search priority is determined (process 1004). This process determines which moving object will be the first to plan a route in the route planning process described below. In the route planning process, target moving objects are picked up one by one, a route search is performed taking into account the movement status of other moving objects, blockage control is performed, and then the local target positions (subgoals) of each moving object are determined. Therefore, basically, the earlier the order of route planning, the more likely it is that a route that can reach the destination will be obtained with priority. There are various policies for determining the order of moving objects in which route planning is performed, but as an example, a policy is adopted here in which route planning is performed starting with the moving object with the shortest distance between the current position and the destination of each moving object. However, if there is a moving object that is overloaded or in a low battery state, the search priority of that moving object is set to the last.

[0056] Following process 1004, route planning parameters are set (process 1005). Specifically, the route planning parameters may include the length of a blocked section in blockage control and a weighting coefficient for the search cost (heuristic cost) within the space-time A* method, which is the base algorithm of the route planning method. Regarding the length of the blocked section, in this embodiment, a preset fixed value is continuously used. As an example, the length of the blocked section is set to 3 grids in the case of a normal status, and to 2 grids in the case of an overloaded or low battery state. The shorter the blocked section, the more limited the range of movement becomes depending on the blocking status of other moving objects, which may result in a longer (slower) arrival time to the destination. Therefore, in this embodiment, different block section lengths are set depending on the status of each moving object in order to prioritize moving objects in a normal status to reach the destination.

[0057] Note that steps 1003, 1004, and 1005 are executed by the destination determination unit 607. The above steps are pre-processing steps that are performed before the actual route planning process. Details of the route planning process will be described below.

[0058] First, a moving object to be the target of path planning is determined (step 1006). Here, the subsequent steps are executed according to the search order for moving objects determined in step 1004.

[0059] Following process 1006, the previous planned route and blocked area of ​​another moving object (a moving object not targeted for route planning in process 1006) are acquired (process 1007) toward route planning for the target moving object. Here, as described in the explanation of the route planning unit 608, a three-dimensional vector is inputted, in which the grid position along which the other moving object will move is added with the predicted time to reach that grid. Note that if this is the first step after control has started, there is no planned route for the other moving object, and therefore only a three-dimensional vector combining the initial position of the other moving object with the current time is inputted.

[0060] Following process 1007, a route planning process is executed (process 1008). Here, the planned route of the other vehicle and the blocked area acquired in process 1007 are input, and the current graph structure is also input to execute the route planning. The route planning is performed in accordance with the space-time A* method described above. Processes 1006 to 1008 are executed by the route planning unit 608.

[0061] Following process 1008, the blocked area is updated (process 1009). Process 1009 is executed by the blockage control unit 605. Here, the area that can be blocked (occupied) by the target moving object is determined according to the maximum blocked section length set in process 1006, as described in the explanation of the blockage control unit 605. Thereafter, the blockage status management unit 604 updates the area (grid) that can be blocked by the target moving object, and, if there is a grid that was blocked in the previous step but has already been traveled through, the blocked state of the target grid is released.

[0062] In process 1010, it is confirmed whether the route planning and blockage area updating (processes 1006 to 1009) for all moving bodies have been completed. If they have been completed, the process proceeds to the next process 1011. If they have not been completed, the process returns to process 1006, and route planning for the remaining moving bodies is carried out. Note that the movement routes created in processes 1006 to 1010 are tentative movement routes (provisional movement routes), and do not necessarily match the movement routes transmitted to the moving body 101.

[0063] In process 1011, the congestion level is determined based on the route planning results. Process 1011 is executed by the congestion level determination unit 609. Here, the planned routes of each mobile object obtained in the previous processes are aggregated, and as a result, grids where congestion is expected are identified. As an example, based on the planned routes of each mobile object, cases where two or more mobile objects pass the same grid within a three-second period are determined (double arrow 901 in FIG. 9 ). Hereinafter, these grids are referred to as congestion forecast grids. In the example of FIG. 9 , the time (step) marked with an inverted triangle mark 902 corresponds to the timing when a congestion forecast grid is generated. In this embodiment, all of the congestion forecast grids obtained are not used in the next process, but are selected in advance. Specifically, in this embodiment, considering the continuous generation time (number of steps) of the congestion forecast grid and the predicted generation time, only grids that are above or below a given threshold are input for subsequent processing. Here, only grids where congestion forecast grids occur at the same location for two or more steps and whose generation time (for the second step) is within five seconds of the current time are input to the subsequent process 1011.

[0064] Following process 1011, based on the results obtained in process 1011, a movement direction constraint is imposed to prohibit passage through links around the congested grid in the graph structure created in advance (process 1012). However, the movement direction constraint may also be implemented by combining a number of processes, such as a process that allows only specific moving objects to travel diagonally or a process that causes specific moving objects to wait in place. Therefore, in this embodiment, a combination of movement direction constraints that minimizes an arbitrary evaluation function is found.

[0065] Specific processing details will be described below with reference to FIGS. 11A to 13B. FIG. 11A shows a cropped area 1102 cropped from the movement space 200, with the congestion prediction grid 1101 obtained in process 1011 at its center. In this embodiment, the cropped area 1102 is seven grids square, but the shape and size of the cropped area 1102 are not limited to this. For example, if the congestion prediction grid 1101 occurs near the periphery of the entire travel area and a square area of ​​a predetermined size cannot be cropped, the shape or size of the cropped area 1102 may be changed each time. However, the larger the cropped size (total number of grids), the greater the computational load of the optimization calculation (described later). Therefore, an appropriate upper limit cropped size is set based on the performance of the mobile object group control device 601.

[0066] In FIG. 11A, four mobile objects 101a-101d are moving toward their respective subgoals 201a-201d. The subgoals 201a-201d are the grids located on the periphery of the cutout region 1102, among the grids that constitute the route to the original destination determined in process 1008. Each mobile object 101a-101d is assigned a route that actively utilizes diagonal movement toward its respective subgoal 201a-201d. Therefore, in FIG. 11B, which shows the state three seconds after FIG. 11A, the mobile objects 101a-101d attempt to block each other's direction of travel, resulting in a congestion state in which certain mobile objects or all mobile objects remain in place. This is in line with the congestion prediction shown in FIG. 9. Thus, applying a movement rule (pre-movement rule) that does not restrict the movement of each link in the graph structure can result in a congestion state among mobile objects.

[0067] To improve the above situation, this embodiment applies a movement rule (special movement rule) that prohibits diagonal links, thereby diverging the paths of moving objects and preventing a dense situation. As an example, the sum of the movement costs of all moving objects to the subgoals is calculated for each of the preset constrained link patterns shown in FIG. 12B , and the pattern (special movement rule) that minimizes this cost is identified. The constrained link string in FIG. 12B indicates combinations of links that are prohibited from being passed through, and the characters in parentheses correspond to the graph structure of the special 5-grid area 1201 (part of the cutout area 1102) shown in FIG. 12A . Note that the listed links are prohibited from being passed through in both directions. Even within the special 5-grid area 1201 alone, there are many combinations of diagonal links. Therefore, the example in FIG. 12B is only a partial list, and more patterns may be added. However, care must be taken because increasing the number of patterns increases the computational load of this process. Furthermore, although not implemented in this embodiment, the cost of patterns that allow diagonal movement only for specific moving objects may also be calculated. However, if different movement constraints are given to each moving object, it is necessary to prepare a different graph structure for each moving object in the subsequent processing, which makes management and processing more complicated.

[0068] Here, in accordance with the listed patterns, a path plan is executed in the cutout region 1102 using the space-time A* method, with the subgoal of each moving body as the destination, and the travel cost to the subgoal is calculated. More specifically, steps 1006 to 1010 are executed again for each moving body. The sum of the travel costs to the subgoals of all moving bodies is then calculated, and the pattern that minimizes this cost is identified. As an example, as a result of the above process, the cost (C12) of pattern #12 shown in FIG. 12B is assumed to be the best result, and the subsequent process is then carried out.

[0069] Following process 1012, the graph structure is modified based on the results of process 1012 (process 1013). For links determined to not allow diagonal movement, the weight (passing cost) assigned to the link is increased sufficiently for a certain period of time, intentionally generating a route that does not pass through the link. In FIG. 13A, link 1301, represented by a solid line, is targeted, and all moving objects are prevented from passing through link 1301 for a certain period of time. Furthermore, in the congestion level determination process in process 1011, the weight of link 1301 is returned to its original state after a predetermined time (e.g., three seconds) has elapsed since the time congestion was predicted to occur. Note that processes 1012 and 1013 are executed by the graph structure dynamic modification unit 610. FIG. 13B shows the results of the route planning process for the next control cycle based on the set movement constraints. By temporarily disallowing diagonal links in the central five-grid area, routes are generated that bypass the center area for all moving objects, resulting in a uniform distribution of moving objects and improved overall efficiency.

[0070] The above is the flow of the route planning process for multiple moving objects. In this embodiment, the above processes are repeated until all moving objects reach their destinations (process 1014). More precisely, even after any moving object reaches its destination, the system continues to operate until the list of orders is completed, and therefore the above processes are repeated until all tasks (traveling to the destination) sequentially assigned to each moving object are completed.

[0071] The above is the content of the mobile object group control device 601, the mobile object group control system 600, and the mobile object group control method according to this embodiment.

[0072] (Summary) In this embodiment, the mobile body group control device 601, which controls the multiple moving bodies 101, includes a destination determination unit 607 that determines the destination of the multiple moving bodies 101, a movement path creation unit 615 that creates movement paths for the multiple moving bodies 101 to the destination, and a communication unit 612 that transmits the movement paths to the multiple moving bodies 101. The movement path creation unit 615 applies a predetermined advance movement rule to the entire area of ​​the movement space 200 of the multiple moving bodies 101, creates tentative movement paths for the multiple moving bodies 101 to the destination, evaluates movement prediction results when the multiple moving bodies 101 move along the tentative movement paths based on predetermined evaluation items, and sets an area of ​​the movement space 200 to which a special movement rule different from the advance movement rule is applied as a special area 1201 based on the evaluation result of the movement prediction result, and creates the movement path by applying the special movement rule to the special area 1201 and applying the advance movement rule to areas of the movement space 200 other than the special area 1201.

[0073] The mobile object group control system 600 in this embodiment includes a mobile object group control device 601 and a plurality of mobile objects 101 .

[0074] In addition, in this embodiment, the mobile body group control method for controlling multiple mobile bodies 101 includes a first step (process 1003) of determining the destination of the multiple mobile bodies 101, a second step (processes 1006 to 1010) of creating a tentative movement path for the multiple mobile bodies 101 after applying a predetermined advance movement rule to the entire area of ​​the movement space 200 of the multiple mobile bodies 101, a third step (process 1011) of evaluating the movement prediction results when the multiple mobile bodies 101 move along the tentative movement path based on predetermined evaluation items, a fourth step (process 1012) of setting an area of ​​the movement space 200 to which a special movement rule different from the advance movement rule is applied as a special area 1201 based on the evaluation result of the third step, and a fifth step (process 1013) of applying the special movement rule to the special area 1201 and applying the advance movement rule to areas of the movement space 200 other than the special area 1201, and creating a movement path to the destination of the multiple mobile bodies 101.

[0075] According to the present embodiment configured as described above, a movement path for the moving object 101 is created by applying a special movement rule different from the pre-emptive movement rule to the special area 1201 set based on the evaluation result of the movement prediction result of the tentative movement path created under the application of the pre-emptive movement rule. This equalizes the density of the moving objects 101 in the movement space 200, thereby preventing the moving objects 101 from making excessive detours or waiting, thereby improving overall efficiency.

[0076] Furthermore, the movement path creation unit 615 in this embodiment extracts predicted congestion points (congestion prediction grids 1101) that two or more of the multiple moving bodies 101 are expected to pass through within a predetermined time frame based on the evaluation result of the movement prediction results, and sets a predicted congestion area 1201 that includes the predicted congestion points as a special area 1201. This makes it possible to avoid congestion of the moving bodies 101 in the predicted congestion area 1201.

[0077] In this embodiment, the special movement rule includes setting a movement direction constraint that prohibits passage of a route (link 1301) in a specific direction in the expected congested area 1201. This makes it possible to avoid congestion of the mobile objects 101 in the expected congested area 1201 while allowing passage of routes in directions other than the specific direction in the expected congested area 1201.

[0078] Furthermore, the travel path creation unit 615 in this embodiment sets the travel direction constraint only for a specific mobile body 101 among the multiple mobile bodies 101. This makes it possible to avoid congestion of mobile bodies 101 in the expected congested area 1201 without restricting the travel of mobile bodies 101 other than the specific mobile body 101 in the expected congested area 1201.

[0079] Furthermore, the travel path creation unit 615 in this embodiment releases the setting of the travel direction restriction after a predetermined time has elapsed from the predicted occurrence time of the anticipated congested area 1201. This makes it possible to prevent excessive restrictions on the travel of the mobile object 101 in the anticipated congested area 1201.

[0080] In this embodiment, the predetermined evaluation item is the travel cost of the multiple moving bodies 101, and the travel route creation unit 615 creates multiple travel route candidates while changing the special travel rule, and selects the travel route candidate with the smallest travel cost as the travel route from among the multiple travel route candidates. This makes it possible to optimize the overall efficiency of the multiple moving bodies 101.

[0081] Furthermore, the mobile object group control device 601 in this embodiment includes a display unit 601c that displays the operation status of the multiple mobile objects 101. This allows the manager of the mobile object group control system 600 to grasp the operation status of the multiple mobile objects 101, making it possible to quickly perform maintenance on the mobile object group control system 600 as needed.

[0082] Furthermore, the movement path creation unit 615 in this embodiment calculates the movement cost by adding up the time required for each operation when the multiple moving bodies 101 move along the temporary movement path, thereby making it possible to accurately calculate the movement cost when the moving bodies 101 move along the temporary movement path.

[0083] It should be noted that the present invention is not limited to the above-described embodiment, and includes various modifications. For example, the above-described embodiment is shown to clearly explain the present invention, and the present invention is not necessarily limited to an embodiment having all of the described configurations.

[0084] 100...operational environment, 101, 101a to 101d...mobile body, 102...conveyor, 103...item, 104...station, 105...worker, 106...station, 107...dock, 108...worker, 109...conveyor, 200...movement space, 201...grid, 201a to 201d...subgoal, 202...node, 203...link, 204...graph structure, 205...dock area, 206...route, 301, 302...mobile body, 303, 304...destination, 305, 306...area, 401...graph structure, 402...mobile body, 403...destination, 404, 405...occupied area, 501...vehicle controller, 502...target route management unit, 503...vehicle sensor, 504...driving map management unit, 505...control command generation unit, 506...self-position calculation unit, 507...driving unit, 5 08...Encoder, 509...Communication unit, 600...Mobile object group control system, 601...Mobile object group control device, 601a...Control server, 601b...Input device, 601c...Display (display unit), 602...Graph structure management unit, 603...Mobile object structure management unit, 604...Blockage state management unit, 605...Blockage control unit, 606...Mobile object state management unit, 607...Destination determination unit, 608...Route planning unit, 609...congestion degree determination unit, 610...graph structure dynamic change unit, 611...route determination unit, 612...communication unit, 613...instruction unit, 614...display unit, 615...travel route creation unit, 901...double arrow, 902...inverted triangle mark, 1001 to 1014...processing, 1101...congestion prediction grid (congestion prediction point), 1102...cut area, 1201...predicted congestion area (special area), 1301...link.

Claims

1. A mobile body group control device for controlling a plurality of moving bodies, comprising: a destination determination unit for determining a destination of the plurality of moving bodies; a movement path creation unit for creating movement paths to the destination of the plurality of moving bodies; and a communication unit for transmitting the movement paths to the plurality of moving bodies, wherein the movement path creation unit creates a tentative movement path to the destination of the plurality of moving bodies after applying a predetermined advance movement rule to all areas of a movement space of the plurality of moving bodies; evaluates a movement prediction result when the plurality of moving bodies moves along the tentative movement path based on predetermined evaluation items; sets an area of ​​the movement space to which a special movement rule different from the advance movement rule is applied as a special area based on an evaluation result of the movement prediction result; and creates the movement path after applying the special movement rule to the special area and applying the advance movement rule to areas of the movement space other than the special area.

2. A mobile object group control device as described in claim 1, characterized in that the movement route creation unit extracts predicted congested points through which two or more of the plurality of moving objects are expected to pass within a specified time frame based on an evaluation result of the movement prediction result, and sets a predicted congested area including the predicted congested points as the special area.

3. A mobile object group control device as described in claim 2, characterized in that the special movement rule includes setting a movement direction restriction that makes it impossible to pass through a route in a specific direction in the expected congested area.

4. A mobile object group control device according to claim 3, wherein the movement path creation unit sets the movement direction constraint only for a specific mobile object among the plurality of mobile objects.

5. A mobile object group control device as described in claim 3, characterized in that the movement route creation unit releases the setting of the movement direction constraint after a predetermined time has elapsed from the predicted time of occurrence of the expected congested area.

6. A mobile body group control device as described in claim 1, characterized in that the specified evaluation item is the movement cost of the multiple moving bodies, and the movement route creation unit creates multiple movement route candidates while changing the special movement rule, and selects, from the multiple movement route candidates, the movement route candidate with the smallest movement cost as the movement route.

7. A mobile body group control device as described in claim 6, characterized in that the movement route creation unit calculates the movement cost by adding up the time required for each operation when the multiple mobile bodies move along the tentative movement route.

8. A mobile object group control device according to claim 1, further comprising a display unit for displaying the operation status of the plurality of mobile objects.

9. A mobile object group control system comprising: a mobile object group control device according to claim 1; and a plurality of mobile objects.

10. A mobile body group control method for controlling a plurality of moving bodies, comprising: a first step of determining a destination of the plurality of moving bodies; a second step of creating a tentative movement route to the destination of the plurality of moving bodies after applying a predetermined pre-movement rule to all areas of a movement space of the plurality of moving bodies; a third step of evaluating a movement prediction result when the plurality of moving bodies moves along the tentative movement route based on predetermined evaluation items; a fourth step of setting an area of ​​the movement space to which a special movement rule different from the pre-movement rule is applied as a special area based on the evaluation result of the third step; and a fifth step of applying the special movement rule to the special area and applying the pre-movement rule to areas of the movement space other than the special area to create a movement route to the destination of the plurality of moving bodies.

Citation Information

Patent Citations

  • Intelligent carrying robot for industrial manufacturing

    CN116890340A

  • AGVS dynamic collision-free path planning method based on multi-agent simulation

    CN116993255A

  • Map utilization device and program

    JP2023098174A