Route plan search method and computation device
The method optimizes AGV route planning by determining initial and destination positions and excluding certain locations, addressing congestion and delivery delays in large warehouses and factories.
Patent Information
- Application Number
- PCT/JP2024/016498
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-04-26
- Publication Date
- 2025-10-30
AI Technical Summary
Existing methods struggle to efficiently plan routes for automated guided vehicles (AGVs) in large warehouses and factories, leading to congestion, delays, and uncertainty in transport and production throughput, especially when handling high-priority or urgent goods.
A method and computing device that determines initial and destination positions, generates multiple path plans, and excludes certain locations based on time and speed constraints to minimize congestion by reducing unnecessary calculations and searching for efficient routes.
Reduces the amount of calculation required for route planning, shortens search time, and increases the number of routes found, thereby minimizing congestion and ensuring timely delivery of goods.
Smart Images

Figure JP2024016498_30102025_PF_FP_ABST
Abstract
Description
Path planning search method and computing device
[0001] The present technology relates to a method and a computing device for searching a route plan for moving a moving object.
[0002] When transporting goods, parts, products, etc. using automated guided vehicles or automated guided robots (hereinafter collectively referred to as Automatic Guided Vehicles or AGVs) in warehouses, factories, etc., the AGV's movement path is calculated in advance and optimized.
[0003] WO 2022 / 097460 discloses a technology for the purpose of quickly and efficiently finding an optimal solution to an optimization problem using a simple optimization algorithm, which technology includes a plurality of data generation units, a fluctuation setting unit that supplies fluctuation probabilities to the data generation units to non-uniformly set the occurrence frequency of data generated by the data generation units and sets the occurrence frequency of a specific variable to a value different from the occurrence frequency of other variables, a plurality of data conversion units that read the data generated by the data generation units and convert it into information, an output adjustment unit that transmits an output adjustment signal to the data generation units, or an output adjustment signal and a fluctuation probability value, and a feedback control unit that repeatedly controls the operation of transmitting the output adjustment signal to the data generation units, or an output adjustment signal and a fluctuation probability value, if an optimal solution is not obtained.
[0004] As warehouses and factories become larger, and hundreds or even thousands of AGVs are used, congestion between AGVs can become frequent, leading to uncertainty in transport plans and processes and reduced transport and production throughput.
[0005] International Publication No. 2022 / 097460 Pamphlet Japanese Patent No. 6029048 Patent No. 6011928 JP 2015-184829 A JP 2019-198902 A JP 2019-198903 A International Publication No. 2019 / 017412 Pamphlet Japanese Patent No. 2018-166194 A
[0006] M. Aono, et al., Proceedings of NOLTA 2012, 586-589 (2012) Kasai, S., Aono, M. and Naruse, M.: Amoeba-inspired computing architecture implemented using charge dynamics in parallel capacitance network, Appl. Phys. Lett., Vol.103, 163703 (2013) Wakamiya, R., Kasai, S., Aono, M., Naruse, M., Hara-Azumi, H., "Electronic circuit implementation of an amoeba-type optimization problem solution search algorithm," IEICE Technical Report 114 (442) pp. 81-85 (2015) AH Ngoc Nguyen, M. Aono, Y. Hara-Azumi, "FPGA-Based amoeba-inspired SAT solver for cyber-physical systems," ACM / IEEE International Conference on Cyber-Physical Systems (ICCPS), 316-317 (2019).AH Ngoc Nguyen, M. Aono, Y. Hara-Azumi, "FPGA-based hardware / software co-design of a bio-inspired SAT solver," IEEE Access, DOI: 10.1109 / ACCESS.2020.2980008 (2020)YJ Yan, H. Amano, M. Aono, K. Ohkoda, S. Fukuda, K. Saito, S. Kasai, "Resource-saving FPGA Implementation of the Satisfiability Problem Solver: AmoebaSATslim," FPT 2021: 1-5 (2021)P. Huang, K. Wei, H. Amano, K. Ohkoda, M.Aono, Implementing Multi Agent Path Finding Algorithm for Smart Factory on a Multi-FPGA system, IEICE Technical Report (Web), 174 (RECONF2022 26-41), pp. 17-18 (2022)P. Huang, K. Wei, H. Amano, K. Ohkoda, M. Aono, Multi-board FPGA Implementation to Solve the Satisfiability Problem for Multi-Agent Path Finding in Smart Factory, 2022 Tenth International Symposium on Computing and Networking Workshops (CANDAR), pp. 406-410 (2022)T. Okuyama, H. Amano, K. Ohkoda, M. Aono, "Efficient FPGA Implementation of Amoeba-inspired SAT Solver with Feedback and Bounceback Control: Harnessing Variable-Level Parallelism for Large-Scale Problem Solving in Edge Computing," HEART 2023 (2023)N. Takeuchi, M. Aono, Y. Hara-Azumi and C. L. Ayala, "A Circuit-Level Amoeba-Inspired SAT Solver," in IEEE Transactions on Circuits and Systems II: Express Briefs, vol. 67, no.10, pp. 2139-2143 (2020)K. Hara, N. Takeuchi, M. Aono, Y.Hara-Azumi, "Amoeba-inspired stochastic hardware SAT solver," International Symposium on Quality Electronic Design (ISQED) (2019); Aono, M., Kujirai, Y., Nozaki, T., "Amoeba computing paradigm merging cyberspace and physical space," Journal of the Japanese Society for Artificial Intelligence, Vol. 33(5), pp. 561-569 (2018); L. Zhu, S.-J. Kim, M. Hara, M. Aono, "Remarkable problem-solving ability of unicellular amoeboid organism and its mechanism," Royal Society Open Science 5: 180396 (2018); Saito, Kasai, Aono et al., Poster presentation at the Japan Society of Applied Physics (2019); K. Saito, M. Aono, S. Kasai, "Amoeba-inspired analog electronic computing system integrating resistance crossbar for solving the traveling salesman problem," Scientific Reports 10, 20772 (2020)M. Aono, "Amoeba-inspired combinatorial optimization machines," Japanese Journal of Applied Physics 59, 060502, (2020).
[0007] Even when many AGVs are used, a method and a calculation device are required to search for a route plan that minimizes congestion caused by traffic congestion due to loading and unloading of goods, waiting due to early arrival, merging of routes, etc.
[0008] In determining a route plan, a method and a computing device that can reduce the amount of calculation required for route search, shorten the time required for route search, search for more routes, or a combination thereof is desired.
[0009] When determining a route plan, if a route that will arrive in time at a specified time is searched for, it is possible that congestion of multiple AGVs will occur at or near the destination where goods are loaded and unloaded.
[0010] In addition, congestion may cause delays in AGVs transporting high-priority or urgent goods to reach their destinations.
[0011] Furthermore, there may be cases where it is desired to specify in advance the time and order of arrival of products, etc.
[0012] It is desirable to eliminate or reduce congestion caused by AGVs and transport necessary products at the required time.
[0013] In determining route planning, it is desirable to search for a route that will arrive exactly at a predetermined time.
[0014] The present technology includes, for example, a method for a computer to search for a path plan for moving a moving body, the method including: determining a first initial position where a first moving body capable of moving at a first speed is located at a first time; and a first destination position where the first moving body should be located at a second time later than the first time; determining a first plurality of path plans where the first moving body can move from the first initial position at the first time to the first destination position at the second time, the first plurality of path plans being expressible by pairs of time and position; determining a position at each time that is not included in any of the first plurality of path plans; and determining at least one first movement position at a third time between the first time and the second time that is a position to which the first moving body can move after a predetermined time has elapsed from the third time, excluding positions that are not included in any of the first plurality of path plans.
[0015] Fig. 1 is a diagram showing a moving body according to an embodiment of the present technology; Fig. 2 is a plan view showing a route along which a plurality of moving bodies can move according to an embodiment of the present technology; Fig. 3 is a flowchart showing a route planning search method according to an embodiment of the present technology; Fig. 4 is a flowchart showing a route planning search method for moving a plurality of moving bodies according to an embodiment of the present technology;
[0016] FIG. 1 shows a vehicle 100 in accordance with an embodiment of the present technology.
[0017] The mobile object 100 may include a position sensor 102, a central processing unit (CPU) 104, a memory 106, a communication device 108, an input / output device 110, a drive mechanism 112, a loading platform 114, and a LiDAR sensor 116. The mobile object 100 may be an automated guided vehicle used in a transport system that can transport objects, a wafer transport robot, a glass transport robot, an AGV, or an autonomous mobile robot (AMR).
[0018] The location sensor 102 may be a Global Positioning System (GPS), a beacon, Bluetooth, RFID, or a camera.
[0019] The CPU 104 executes computer-executable instructions and may be a general-purpose computing device or a special-purpose computing device, such as the control unit of the hybrid optimal solution calculation system described in WO 2022 / 097460.
[0020] Memory 106 may be volatile memory (eg, registers, cache, RAM), non-volatile memory (eg, ROM, EFPROM, flash memory), or some combination of both.
[0021] The communication device 108 may be a wired communication device or a wireless communication device, and may be communicatively connected to other computers via a network (not shown) configured by wired or wireless communication or a combination thereof. The network may be the Internet, a local area network (LAN), or a wide area network (WAN).
[0022] The input / output device 110 may be a keyboard, a touch screen, a display, or a combination thereof, and may be communicatively connected to the mobile object 100 via a wired or wireless connection.
[0023] The drive mechanism 112 may be a combination of a motor and wheels.
[0024] The loading platform 114 may be one onto which products or parts are manually loaded, or may be one onto which products or parts are automatically loaded using a conveyor or lifter.
[0025] The LiDAR (Light Detection And Ranging) sensor 116 may be an optical phase type solid-state LiDAR sensor, a MEMS type solid-state LiDAR sensor, or a mechanical rotation type LiDAR sensor.
[0026] FIG. 2 shows a path on the xy plane along which multiple moving bodies can move according to an embodiment of the present technology.
[0027] The movable path may be a path applicable to a one-way transport rail. Furthermore, the movable path may be a passageway that allows movement in both directions or in any direction. Furthermore, the movable path may be a plane or space that can be displayed in two-dimensional coordinates. The two-dimensional coordinates may be displayable in coarse-grained two-dimensional coordinates. The coarse-grained two-dimensional coordinates may be, for example, cells that can be expressed as squares on a plane. Furthermore, the coarse-grained two-dimensional coordinates may be a simplified representation of three-dimensional space as a plane.
[0028] The movable path may be a space that can be displayed in three-dimensional coordinates. The three-dimensional coordinates may be displayed in coarse-grained three-dimensional coordinates. The coarse-grained two-dimensional coordinates may be, for example, cells that can be expressed as a cube in three-dimensional space.
[0029] The numbered cells in Figure 2 indicate locations where one mobile object can pass or stop at a specific time, and multiple mobile objects cannot be located in the same cell at the same time.
[0030] 2, the arrows attached to each cell indicate the direction in which the mobile object can move next. In this embodiment, the mobile object can move according to the following restrictions.
[0031] (1) A mobile object (not shown) can move in one direction or branch off into two directions in each cell. In Figure 1, in cell 1 (c1), movement is only possible to cell 9 (c9), and movement to cell 2 (c2) is not possible. Also, in cell 10 (c10), movement to cell 11 (c11) or cell 17 (c17) is possible, but movement to cell 9 (c9) is not possible.
[0032] (2) A mobile object can move at a predetermined speed in the direction indicated by the arrow of a cell, and can move to one adjacent cell per unit time.
[0033] (3) During the passage of one unit time (hereinafter also referred to as one step), the mobile object may move to an adjacent cell in the specified direction or may remain stationary in the same cell.
[0034] As an example, at initial time t0, moving body v1 is located in cell 5 (c5), and moving body v2 is located in cell 6 (c6). At time t16 (>t0), moving body v1 is moved to cell 49 (c49), and moving body v2 is moved to cell 50 (c50).
[0035] Referring to Figure 1, a mobile unit v1 (not shown) can move to cell 4 (c4) at t1, one step later, and then move to cell 3 (c3) at t2, two steps later. In this way, it can move to cells 2, 1, 9, 10, 11, 12, 13, 14, 19, 26, 25, 33, and 41, and then move to cell 49 (c49) at t16, 16 steps later. The route plan for mobile unit v1 may be expressed as a time-location pair as shown in route A below.
[0036] Route A (t0, c5), (t1, c4), (t2, c3), (t3, c2), (t4, c1), (t5, c9), (t6, c10), (t7, c11), (8, c12), (t9, c13), (t10, c14), (t11, c19), (t12, c26), (t13, c25), (t14, c33), (t15, c41), (t16, c49)
[0037] Furthermore, the route plan for the moving object v1 may be a route different from route A, such as route B below. In this case, the moving object v1 passes through the same cell multiple times.
[0038] Route B (t0, c5), (t1, c4), (t2, c3), (t3, c2), (t4, c1), (t5, c9), (t6, c10), (t7, c11), (t8, c12), (t9, c13), (t10, c14), (t11, c15), (t12, c16), (t13, c8), (t14, c7), (t15, c6), (t16, c5), (t17, c4), (t18, c3), (t19, c2), (t20, c1), (t21, c9), (t22, c10), (t23, c11), (t24, c12), (t25, c13), (t26, c14), (t27, c19), (t28, c26), (t29, c25), (t30, c33), (t31, c41), (t32, c49)
[0039] Furthermore, the route plan for the moving body v1 may include a temporary stop, as in the following route C. In this case, the moving body v1 stops for one elapsed step time at cell 14 (c14) and for three elapsed steps time at cell 49 (c49).
[0040] Route C (t0, c5), (t1, c4), (t2, c3), (t3, c2), (t4, c1), (t5, c9), (t6, c10), (t7, c11), (8, c12), (t9, c13), (t10, c14), (t11, c14), (t12, c19), (t13, c26), (t14, c25), (t15, c33), (t16, c41), (t17, c49) , (t18, c49) , (t19, c49) , (t20, c49)
[0041] Similarly, mobile unit v2 (not shown) can move to cell 5 (c5) at t1, one step later, and then to cell 4 (c4) at t2, two steps later. In this way, it can move to cells 3, 2, 1, 9, 10, 11, 12, 13, 14, 19, 26, 34, and 42, and then to cell 50 (c50) at t16, 16 steps later. The route plan for mobile unit v2 may be expressed as a time-position pair as shown in route D below.
[0042] Route D (t0, c6), (t1, c5), (t2, c4), (t3, c3), (t4, c2), (t5, c1), (t6, c9), (t7, c10), (t8, c11), (t9, c12), (t10, c13), (t11, c14), (t12, c19), (t13, c26), (t14, c34), (t15, c42), (t16, c50)
[0043] FIG. 3 illustrates a route planning search method according to an embodiment of the present technology.
[0044] A path planning search method 300 according to an embodiment of the present technology starts in step 302, and in step 304, a first initial position where a first moving body v1 capable of moving at a first speed is located at a first time is determined. The first initial position may be determined by a CPU based on position information recognized by the position sensor 102 of the first moving body v1. Alternatively, the first initial position may be input in advance by the input / output device 110 or via the communication device 108. The first speed may be a normal moving speed of the first moving body v1, a maximum speed, or an average speed taking acceleration and deceleration into account.
[0045] Next, in step 306, a first arrival position where the first moving object v1 should be at a second time later than the first time is determined. The first arrival position may be input in advance by the input / output device 110 or via the communication device 108. The arrival position may also be a position where the moving object v1 loads or unloads an item.
[0046] Next, in step 308, a first plurality of path plans are determined along which the first moving body v1 can travel from a first initial position at a first time to a first destination position at a second time.
[0047] The first plurality of route plans are generated by the CPU 104 or another computer connected via the communication device 108 and a network, which searches for all possible routes according to the above-mentioned conditions and limitations. Instead of all possible routes, the first plurality of route plans may be routes searched within a predetermined time period, a predetermined number of routes, or routes that satisfy other predetermined criteria.
[0048] For example, if the first time is t0, the second time is t20, the first initial position is c5, and the first destination position is c49, then route A and route C satisfy the above-mentioned conditions and restrictions, and both are possible routes.
[0049] On the other hand, since path B is not at the first arrival position c49 at the second time t20, it does not satisfy the above conditions and restrictions and cannot be one of the possible paths.
[0050] The route planning may be determined to limit movement to routes, such as route B, that may result in the first moving body arriving at the first arrival position later.
[0051] Furthermore, when the movement range of the first moving body becomes larger than a predetermined value, for example, when the passing cell is far from the arrival position, movement to the first movement position may be restricted. Restricting movement to the first movement position may include, for example, searching to reduce the probability of movement to the first movement position.
[0052] Next, in step 310, a location that is not included in any of the first plurality of route plans at each time is determined. The location that is not included in any of the routes determined in step 308 corresponds to, for example, a cell or a set of cells that is not included in any of the routes at any time.
[0053] A location that is not included in either may include a location that is at a distance greater than the product of the difference between the time in question and the first time and the speed of the first moving body, for example, a location that is clearly not reachable by the first moving body at the time in question.
[0054] Similarly, a position that is not included in either may include a position that is at a distance greater than the product of the difference between the time and the second time and the speed of the first moving body, for example, a position where it is clear that the first moving body cannot reach the first arrival position at the second time.
[0055] Furthermore, the location that is not included in either of these locations may include the first arrival location itself at that time in order to prevent an earlier arrival than necessary and the resulting traffic congestion.
[0056] Next, in step 312, at a third time, at least one first movement position is determined, which is a position to which the first moving body can move after a predetermined time has elapsed from the third time, excluding positions that are not included in any of the first plurality of route plans.
[0057] The third time may be any time between the first time and the second time, and may be expressed as a time after an integer multiple of a predetermined unit time has elapsed since the first time t0, such as t1 (one step later) or t2 (t2 (two steps later).
[0058] At least one first movement position is determined, which is a position to which the first moving body can move after a predetermined time has elapsed from the third time, excluding positions that are not included in any of the first plurality of route plans.
[0059] For example, if the first time is t0, the second time is t20, the first initial position is c5, and the first destination position is c49, and the third time is t6, then cells c11 and c17 are both locations to which the first moving object can move. However, if cell c11 is a location that is not included in any of the first plurality of route plans, cell c11 is not determined as the first movement location, and no routes that pass through cell c11 are searched for at or after t6.
[0060] This may suggest that a route that passes through cell c11 at t6 cannot reach cell c49 at time t20 in the determined first plurality of route plans, and that there is no need to search for routes thereafter (from t7 onwards.) However, it should be noted that if the first plurality of route plans include all possible routes, or if they include routes searched over a longer period of time or a larger number of routes, there may be routes that can reach cell c49 at time t20.
[0061] Furthermore, since cell c11 is not determined to be the first movement position, and therefore a route passing through cell c11 is not searched for at t6, the amount of calculation required for route search may be reduced, the calculation may be completed sooner, and more routes may be searched for.
[0062] In this way, at any given time, a position to which the robot can move one step later may be searched, and then a position to which the robot can move two steps later may be searched from the position to which the robot can move one step later, and so on, until the destination position is reached, a predetermined time has elapsed, or a predetermined number of routes have been searched, or until a predetermined termination condition is met.
[0063] In addition, the route search may involve searching for a position that can be moved one step back at any given time, then searching for a position that can be moved two steps back from the position that can be moved one step back, and so on, sequentially searching for routes step by step until the initial position is reached, until a predetermined time has elapsed, or until a predetermined number of routes have been searched.
[0064] Furthermore, the route search may be performed from any position at any time, or searches may be performed simultaneously from multiple positions at multiple times.
[0065] Next, in step 314, the route search meets a predetermined termination condition, and the route planning search method 300 according to an embodiment of the present technology ends.
[0066] FIG. 4 shows a route planning search method for moving a plurality of moving objects according to an embodiment of the present technology.
[0067] The route planning search method 400 according to an embodiment of the present technology may be implemented in combination with or independently of the route planning search method 300 described in FIG.
[0068] A path planning search method 400 according to an embodiment of the present technology begins at step 402, and at step 404, a second initial position where a second moving body v2 capable of moving at a second speed is located at a fourth time is determined.
[0069] The fourth time may be the same as or different from the first time.
[0070] The second initial position may be determined by the CPU based on position information recognized by the position sensor 102 of the second moving body v2. Alternatively, the second initial position may be input in advance by the input / output device 110 or via the communication device 108. The second speed may be the normal moving speed of the second moving body v2, its maximum speed, or an average speed taking into account acceleration and deceleration. Alternatively, the second speed may be the same as or different from the first speed of the first moving body v1.
[0071] Next, in step 406, a second arrival position where the second moving body v2 should be at a fifth time later than the third time is determined. The second arrival position may be input in advance by the input / output device 110 or via the communication device 108.
[0072] The fifth time may be the same as or different from the second time.
[0073] Next, in step 408, a second plurality of path plans are determined along which the second moving body v2 can travel from the second initial position at the fourth time to the second destination position at the fifth time.
[0074] The second plurality of route plans are generated by the CPU 104 or another computer connected via the communication device 108 and a network, searching for all possible routes in accordance with the above-mentioned conditions and limitations. Instead of searching for all possible routes, the second plurality of route plans may be generated by searching for routes within a predetermined time period, a predetermined number of routes, or routes that satisfy other predetermined criteria. The second plurality of route plans may be generated by the same CPU or computer as the first plurality of route plans, or by a different CPU or computer.
[0075] For example, if the fourth time is t0, the fifth time is t16, the second initial position is c6, and the second destination position is c50, then route D satisfies the above conditions and restrictions and can be a possible route.
[0076] Next, in step 410, a location that is not included in any of the second plurality of route plans at each time is determined. The location that is not included in any of the routes determined in step 408 corresponds to, for example, a cell or a set of cells that is not included in any of the routes at any time.
[0077] Next, in step 412, at a sixth time, at least one second movement position is determined, which is a position to which the first moving body can move after a predetermined time has elapsed from the sixth time, excluding positions that are not included in any of the second plurality of route plans.
[0078] The sixth time may be any time between the fourth time and the fifth time, and may be expressed as a time after an integer multiple of a predetermined unit time has elapsed since the fourth time t0, such as t1 (one step later) or t2 (t2 (two steps later).
[0079] At least one second movement position is determined, which is a position to which the second moving body can move after a predetermined time has elapsed from the sixth time, excluding positions that are not included in any of the second plurality of route plans.
[0080] In cases where multiple moving bodies cannot exist in the same cell, the second movement position may be determined so as not to include the first movement position.
[0081] In addition, the second movement position may be determined so as not to include positions within a predetermined range from the first movement position, for example, in cases where unintended contact due to the presence of multiple moving objects in adjacent cells is to be prevented.
[0082] For example, if the fourth time is t0, the fifth time is t16, the second initial position is c6, and the second destination position is c50, and the sixth time is t7, then cells c11 and c17 are both locations to which the second moving object can move. However, if cell c11 is a location that is not included in any of the second plurality of route plans, cell c11 is not determined as the second movement location, and no route that passes through cell c11 is searched for at or after t7.
[0083] This may suggest that a route that passes through cell c11 at t7 cannot reach cell c50 at time t16 in the determined second plurality of route plans, and that there is no need to search for routes thereafter (from t8 onwards.) However, it should be noted that if the second plurality of route plans include all possible routes, or if they include routes searched within a longer time period or a larger number of routes, there may be routes that can reach cell c50 at time t16.
[0084] Furthermore, since cell c11 is not determined to be the second movement position, and therefore a route passing through cell c11 is not searched for at t7, the amount of calculation required for route search may be reduced, the calculation may be completed sooner, and more routes may be searched for.
[0085] In this way, at any given time, a position to which the robot can move one step later may be searched, and then a position to which the robot can move two steps later may be searched from the position to which the robot can move one step later, and so on, until the destination position is reached, a predetermined time has elapsed, or a predetermined number of routes have been searched, or until a predetermined termination condition is met.
[0086] In addition, the route search may involve searching for a position that can be moved one step back at any given time, then searching for a position that can be moved two steps back from the position that can be moved one step back, and so on, sequentially searching for routes step by step until the initial position is reached, until a predetermined time has elapsed, or until a predetermined number of routes have been searched.
[0087] Furthermore, the route search may be performed from any position at any time, or searches may be performed simultaneously from multiple positions at multiple times.
[0088] Next, in step 414, the route search meets a predetermined termination condition, and the route planning search method 400 according to an embodiment of the present technology ends.
[0089] In the embodiment shown in Figure 3, if no route plan is found after searching all possible routes in step 308, after performing route searches within a specified time or a specified number of times, or after performing route searches that meet other specified criteria, it may be determined that no route plan is found in which the first moving body is at the first arrival position at the second time, and the second time may be increased or decreased by a specified amount to search for a route plan.
[0090] In this case, the time for increasing or decreasing may be set within a predetermined range.
[0091] When searching for a route plan by incrementing or decrementing the second time by a predetermined time, a third plurality of route plans that can be expressed by pairs of time and position are determined, where the third plurality of route plans are capable of moving a first moving body from a first initial position at the first time to a first destination position at a seventh time obtained by incrementing or decrementing the second time by a predetermined time, and a position that is not included in any of the third plurality of route plans at each time is determined, and at an eighth time between the first time and the seventh time, at least one first movement position is determined, which is a position to which the first moving body can move after a predetermined time has elapsed from the eighth time, excluding positions that are not included in any of the third plurality of route plans.
[0092] Furthermore, in the embodiment shown in FIG. 3, if no route plan is found after searching all possible routes in step 308, after performing a predetermined number of route searches within a predetermined time, or after performing route searches that meet other predetermined criteria, it may be determined that if the first moving body is at the first initial position at the first time, a route plan for moving to the first destination position at the second time cannot be found, and the first time may be increased or decreased by a predetermined amount to search for a route plan.
[0093] In this case, the time for increasing or decreasing may be set within a predetermined range.
[0094] When searching for a route plan by incrementing or decrementing the first time by a predetermined time, a fourth plurality of route plans that can be expressed by pairs of time and position are determined, where the fourth plurality of route plans are those that allow the first moving body to move from a first initial position at a ninth time when the first time is incremented or decremented by the predetermined time to a first destination position at a second time, and a position that is not included in any of the fourth plurality of route plans at each time is determined, and at a tenth time between the ninth time and the second time, at least one first movement position is determined, where the first moving body can move to a position after a predetermined time has elapsed from the tenth time, excluding any position that is not included in any of the fourth plurality of route plans.
[0095] Furthermore, the above-described incrementing or decrementing of the second time and incrementing or decrementing of the first time may be performed in combination.
[0096] The route planning search method according to the present embodiment described in FIGS. 3 and 4 may be implemented by the CPU 104 and memory 106 using hard-wired logic, software, or a combination thereof.
[0097] According to the present technology, it is possible to determine an efficient route plan by reducing the amount of calculation required for route search, shortening the time required for route search, searching for more routes, or a combination of these.
[0098] 100 Mobile object 102 Position sensor 104 CPU 106 Memory 108 Communication device 110 Input / output device 112 Drive mechanism 114 Cargo bed 116 LiDAR sensor
Claims
1. A method for a computer to search for a path plan for moving a moving object, the method comprising: determining a first initial position at a first time where a first moving object capable of moving at a first speed will be located, and a first destination position where the first moving object should be located at a second time later than the first time; determining a first plurality of path plans that can be expressed by a time-position pair, along which the first moving object can move from the first initial position at the first time to the first destination position at the second time; determining a position at each time that is not included in any of the first plurality of path plans; and determining at least one first movement position at a third time between the first time and the second time, a position to which the first moving object can move after a predetermined time has elapsed from the third time, excluding any position that is not included in any of the first plurality of path plans.
2. The route planning search method according to claim 1, wherein the third time is any time between the first time and the second time.
3. The route planning search method according to claim 2, wherein the third time can be expressed as a time that is an integer multiple of a predetermined unit time after the first time.
4. The route planning search method according to claim 1, wherein the range in which the first moving body can move can be displayed in two-dimensional coordinates, and the two-dimensional coordinates can be displayed in coarse-grained two-dimensional coordinates.
5. The route planning search method according to claim 1, wherein the range in which the first moving body can move can be displayed in three-dimensional coordinates, and the three-dimensional coordinates can be displayed in coarse-grained three-dimensional coordinates.
6. The route planning search method according to claim 4, wherein the distance between the cell and an adjacent cell corresponds to the distance traveled by the first moving object at the first speed in a predetermined time.
7. The route planning search method of claim 1, wherein determining the route plan includes searching from any location at any time.
8. The route planning search method of claim 1, wherein determining the route plan includes simultaneously searching from multiple locations at multiple times.
9. The route plan search method according to claim 1, further comprising: determining a second initial position where a second moving body capable of moving at a second speed should be at a fourth time; and a second destination position where the second moving body should be at a fifth time that is later than the fourth time; determining a second plurality of route plans where the second moving body can move from the second initial position at the fourth time to the second destination position at the fifth time, the second plurality of route plans being expressible by pairs of time and position; determining a position at each time that is not included in any of the second plurality of route plans; and determining at least one second movement position at a sixth time between the fourth time and the fifth time, a position to which the second moving body can move after a predetermined time has elapsed from the sixth time, excluding a position that is not included in any of the second plurality of route plans.
10. The route planning search method according to claim 9, further comprising determining the second movement position so as not to include the first movement position.
11. The route planning search method according to claim 9, further comprising determining the second movement position so as not to include a position within a predetermined range from the first movement position.
12. The route plan search method of claim 1, further comprising: determining that a route plan in which the first moving body is at the first arrival position at the second time cannot be found; and incrementing or decrementing the second time by a predetermined amount to search for the route plan.
13. The route planning search method according to claim 12, wherein the predetermined time is a time within a predetermined range.
14. The route plan search method according to claim 12, comprising: determining a third plurality of route plans that can be expressed by pairs of time and position, along which the first moving body can move from the first initial position at the first time to the first destination position at a seventh time obtained by incrementing or decrementing the second time by a predetermined amount; determining a position at each time that is not included in any of the third plurality of route plans; and determining at least one first movement position, at an eighth time between the first time and the seventh time, that is a position to which the first moving body can move after a predetermined time has elapsed from the eighth time, excluding a position that is not included in any of the third plurality of route plans.
15. The route plan search method of claim 1, further comprising: determining that a route plan in which the first moving body is at the first arrival position at the second time cannot be found; and incrementing or decrementing the first time by a predetermined amount to search for the route plan.
16. The route plan search method according to claim 15, comprising: determining fourth multiple route plans that can be expressed by pairs of time and position, along which the first moving body can move from the first initial position at the ninth time when the first time is increased or decreased by a predetermined amount to the first destination position at the second time; determining a position at each time that is not included in any of the fourth multiple route plans; and determining at least one first movement position, at a tenth time between the ninth time and the second time, a position to which the first moving body can move after a predetermined time has elapsed from the tenth time, excluding a position that is not included in any of the fourth multiple route plans.
17. The path planning search method according to claim 1, wherein the moving body is an automated guided vehicle capable of transporting goods, and the arrival position includes a position where the goods are loaded or unloaded.
18. The route planning search method according to claim 12, further comprising restricting movement to a route plan that will result in a later arrival time of the first moving body at the first arrival position.
19. The route planning search method according to claim 18, further comprising restricting movement to the first movement position when the movement range of the first moving body becomes larger than a predetermined value.
20. The route planning search method according to claim 19, wherein restricting movement to the first movement position includes searching to reduce the probability of movement to the first movement position.
21. A route planning search method according to claim 1, wherein the positions not included in any of the first plurality of route plans at each said time include positions at a distance greater than the product of the difference between that time and the first time and the speed of the first moving body.
22. The route planning search method according to claim 1, wherein the positions not included in any of the first plurality of route plans at each of the times include positions at a distance greater than the product of the difference between the time and the second time and the speed of the first moving body.
23. A computing device that searches for a path plan for moving a moving object, the computing device being configured to: determine a first initial position at which a first moving object capable of moving at a first speed is located at a first time, and a first destination position at which the first moving object should be located at a second time later than the first time; determine a first plurality of path plans that the first moving object can move from the first initial position at the first time to the first destination position at the second time, the first plurality of path plans being expressible by a time-position pair; determine a position at each time that is not included in any of the first plurality of path plans; and determine at least one first movement position at a third time between the first time and the second time, a position to which the first moving object can move after a predetermined time has elapsed from the third time, excluding a position that is not included in any of the first plurality of path plans.
24. A computer-readable medium storing a program for searching for a path plan for moving a moving object, the computer-readable medium causing the computer to perform the following steps: determine a first initial position at a first time where a first moving object capable of moving at a first speed will be located, and a first destination position where the first moving object should be located at a second time later than the first time; determine a first plurality of path plans along which the first moving object can move from the first initial position at the first time to the first destination position at the second time, the first plurality of path plans being expressible by pairs of time and position; determine a position at each time that is not included in any of the first plurality of path plans; and determine at least one first movement position at a third time between the first time and the second time, a position to which the first moving object can move after a predetermined time has elapsed from the third time, excluding positions that are not included in any of the first plurality of path plans.
25. An automated guided vehicle including a platform capable of carrying an item, a drive mechanism, and a computing device, wherein the computing device is configured to: determine a first initial position at which a first moving body capable of moving at a first speed is located at a first time, and a first destination position at which the first moving body should be located at a second time later than the first time; determine first multiple path plans that can be expressed by pairs of time and position, along which the first moving body can move from the first initial position at the first time to the first destination position at the second time; determine a position that is not included in any of the first multiple path plans at each time; and determine at least one first movement position at a third time between the first time and the second time, a position to which the first moving body can move after a predetermined time has elapsed from the third time, excluding a position that is not included in any of the first multiple path plans.
26. A transportation system including at least one mobile body having a platform capable of loading items and a drive mechanism, and a computing device mounted on the mobile body or capable of communicating with the mobile body, wherein the computing device is configured to: determine a first initial position where a first mobile body capable of moving at a first speed is located at a first time and a first destination position where the first mobile body should be located at a second time later than the first time; determine first multiple route plans along which the first mobile body can move from the first initial position at the first time to the first destination position at the second time, the first multiple route plans being expressible by pairs of time and position; determine a position at each time that is not included in any of the first multiple route plans; and determine at least one first movement position at a third time between the first time and the second time, a position to which the first mobile body can move after a predetermined time has elapsed from the third time, excluding positions that are not included in any of the first multiple route plans.
Citation Information
Patent Citations
Material search system and method, and material search program
JP2015184829A
Crossbar structure and solution search system for optimization problem
JP2018166194A
Device
JP2019198902A
Robot, robot control method, and program
JP2019198903A
SOLUTION SEARCH SYSTEM AND METHOD, SOLUTION SEARCH PROGRAM
JP6011928B2