Transportation planning device, transportation planning method and computer program
The transportation planning device efficiently allocates tasks by calculating execution loads and priorities, reducing total delay times by considering task priorities and deadlines.
Patent Information
- Application Number
- JP2024018364
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-02-09
- Publication Date
- 2025-08-22
AI Technical Summary
Existing transportation planning devices struggle to handle new transport tasks as they arise and do not consider task priorities, leading to prolonged total delay times.
A transportation planning device that acquires current position and task information, calculates execution loads and priorities, and allocates tasks to devices based on these factors, using a weighted index to balance load and deadline compliance.
This approach reduces total delay times by considering task priorities and deadlines, improving efficiency and compliance with delivery schedules.
Smart Images

Figure 2025122749000001_ABST
Abstract
Description
[Technical Field]
[0001] The present invention relates to a technique for planning a route for a transport device. [Background technology]
[0002] Devices that plan the movement paths of transport devices that transport cargo are known. For example, Patent Document 1 describes a method in which, in route planning for multiple transport devices, a distributed route planning device installed on each transport device repeatedly optimizes the route plans of each transport device and asynchronously communicates information wirelessly to create a route plan that minimizes the total transport time without causing interference between the transport devices as a whole. For example, Patent Document 2 describes a method in which, when a deadlock is detected in the route planning for multiple transport devices, a first route connecting the transport device and a waiting area is searched for, and a second route from the transport device to the target location is re-planned so that the first routes for each transport device do not collide. Devices that plan routes for transport devices, such as those described in Patent Documents 1 and 2, are hereinafter referred to as "transportation planning devices." [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Japanese Patent Application Laid-Open No. 2004-280213 [Patent Document 2] International Publication No. 2020 / 105189 Brochure Summary of the Invention [Problem to be solved by the invention]
[0004] Here, new transport tasks are input to the transport planning device as time passes. However, the devices described in Patent Documents 1 and 2 have a problem in that they cannot handle new transport tasks that are input as time passes. Furthermore, when allocating transport tasks to transport devices, it is preferable to consider the priority of the transport tasks. In this regard, the devices described in Patent Documents 1 and 2 do not take into consideration the allocation of transport tasks with priority in mind. As a result, the devices described in Patent Documents 1 and 2 may have a long total delay time. The total delay time means the total of the delay times that actually occurred for all transport tasks relative to the deadlines set for each of them.
[0005] The present invention has been made to solve at least part of the above-mentioned problems, and has an object to shorten the total delay time in a transportation planning device that plans routes for transportation devices. [Means for solving the problem]
[0006] The present invention has been made to solve at least part of the above-mentioned problems, and can be realized in the following aspects.
[0007] (1) According to one aspect of the present invention, there is provided a transportation planning device, comprising: an acquisition unit that acquires current position information indicating a current position of a transportation device and task information that is information on a transportation task to be executed by the transportation device; a storage unit that stores environment information indicating an execution environment of the transportation task, the acquired current position information, and the acquired task information; a load calculation unit that calculates execution loads for candidate combinations of a plurality of the transportation devices and a plurality of the transportation tasks using information in the storage unit; a priority calculation unit that calculates priorities for the candidate combinations; an allocation unit that allocates the plurality of transportation tasks to the plurality of transportation devices, respectively, based on the calculated execution loads and priorities; and an output unit that outputs a result of the allocation.
[0008] According to this configuration, the allocation unit allocates the plurality of transport tasks to the plurality of transport devices based on the calculated execution load and priority. Therefore, compared to a case where the transport tasks are allocated in consideration of only the execution load, the transport tasks can be allocated in consideration of the priority of the transport tasks, which improves the convenience of the transport planning device and reduces the total delay time.
[0009] (2) In the transportation planning device of the above aspect, the task information may include a collection location of the cargo to be transported, a delivery location, and a deadline for collection or delivery, and the priority calculation unit may use the remaining time until the deadline as the priority. According to this configuration, the remaining time until the deadline is used as the priority, and the allocation unit allocates multiple transport tasks to multiple transport devices based on the calculated execution load and remaining time (priority). This makes it possible to allocate transport tasks on the premise of compliance with the deadline, thereby shortening the total delay time.
[0010] (3) In the transportation planning device of the above aspect, if the deadline is a collection deadline, the priority calculation unit may calculate the remaining time by finding the difference between the collection deadline and the current time, and if the deadline is a delivery deadline, the priority calculation unit may calculate the time to depart from the collection location by searching for a route in reverse order from the delivery location based on the delivery deadline, and may calculate the remaining time by finding the difference between the calculated time and the current time. With this configuration, the priority calculation unit can easily calculate the remaining time for the collection deadline. Furthermore, since the reverse route search takes into account the presence of obstacles and other transport devices, the priority calculation unit can easily and accurately calculate the remaining time for the delivery deadline.
[0011] (4) In the transportation planning device of the above aspect, the allocation unit may calculate an index value for each of the combination candidates using the following formula (1) using a weight α, and allocate the plurality of transportation tasks to the plurality of transportation devices using the calculated index values. Index value = α × remaining time + (1 - α) × execution load (1) With this configuration, the allocation unit can easily obtain an index value that takes into account the execution load and remaining time (priority) using formula (1). In addition, the allocation unit can easily change the degree of consideration of the execution load and remaining time (priority) when allocating transport tasks by changing the weight α included in formula (1).
[0012] (5) In the transportation planning device of the above aspect, the route planning unit may further store the travel route determined for each of the plurality of transportation devices in the storage unit as reserved route information, and may plan the travel route while referring to the reserved route information, thereby avoiding collisions between the transportation devices. According to this configuration, the route planning unit plans a travel route while referring to the reserved route information, thereby more efficiently searching for a collision-free route.
[0013] (6) In the transportation planning device of the above form, when allocating a new transportation task to the transportation device, in addition to a first group consisting of the transportation devices to which the transportation task has not been allocated, a second group consisting of the transportation devices to which the assigned transportation task has not yet been executed may also be targeted, and the transportation task may be reallocated to the transportation devices in the second group. According to this configuration, by reallocating the transport tasks to the transport devices of the second group, the total delay time can be further reduced.
[0014] (7) The transportation planning device of the above aspect may further include a route planning unit that plans a movement route for executing the assigned transportation task for each of the plurality of transportation devices, and the output unit may output the movement route as a result of the assignment. According to this configuration, a movement route for executing a transport task can be output to the transport device.
[0015] The present invention can be realized in various aspects, for example, a transportation planning device that performs processes from inputting transportation tasks to outputting movement routes, a transportation planning device that assigns transportation devices to input transportation tasks and outputs the assignment results instead of movement routes, a transportation planning system that realizes the functions of these devices, a control method for these devices and systems, a computer program executed in these devices and systems, a server device for distributing the computer program, a non-transitory storage medium that stores the computer program, etc. [Brief explanation of the drawings]
[0016] [Figure 1] FIG. 1 is an explanatory diagram illustrating a configuration of a transportation planning device according to an embodiment of the present invention. [Figure 2] FIG. 2 is a diagram illustrating environmental information and input information. [Figure 3] 10 is a flowchart illustrating an example of a processing procedure for planning processing. [Figure 4] FIG. 10 is a diagram illustrating an example of a calculated execution load. [Figure 5] FIG. 10 is a diagram illustrating an example of calculated priorities. [Figure 6] FIG. 10 is a diagram illustrating another example of a method for calculating the remaining time. [Figure 7] FIG. 10 is a diagram illustrating an example of calculated index values. [Figure 8] 10 is a graph showing the sum of delay times when the occurrence frequency of transport tasks is low. [Figure 9] 10 is a graph showing the sum of perceived delays when the occurrence frequency of transport tasks is high. [Figure 10] FIG. 10 is an explanatory diagram illustrating the configuration of a transportation planning device according to a second embodiment. [Figure 11] 10 is a graph showing the relationship between whether or not transport tasks are switched and the total delay time. [Figure 12] FIG. 10 is an explanatory diagram illustrating the configuration of a transportation planning device according to a third embodiment. DETAILED DESCRIPTION OF THE INVENTION
[0017] First Embodiment FIG. 1 is an explanatory diagram illustrating an example of the configuration of a transportation planning device 1 according to an embodiment of the present invention. The transportation planning device 1 is a device that plans movement routes of transportation devices that transport packages. The transportation planning device 1 performs one-to-one allocation of multiple packages to be transported to multiple transportation devices, and also plans movement routes for each transportation device. Packages are not limited to wrapped packages, but also include products and parts distributed within a factory. Transportation devices are not limited to autonomously moving transportation vehicles (AGVs), but also include autonomously movable transportation robots, transportation conveyors, workers in self-driving vehicles, workers in manual drivers, and workers who move on foot. Hereinafter, an AGV will be given as an example of a transportation device.
[0018] The transportation planning device 1 includes a CPU 10, a storage unit 20, a communication unit 30, and a ROM / RAM 40, and each unit is connected to each other via a bus (not shown). The transportation planning device 1 can be configured by an information processing device such as a personal computer, for example.
[0019] The communication unit 30 controls communication with other devices via a communication interface (not shown). The other devices include multiple AGVs and a task input device. Each of the multiple AGVs transmits current position information IN1 indicating its current location to the transportation planning device 1. The AGV can acquire the current position information IN1 from, for example, a built-in GPS (Global Positioning System) receiver, a camera, LiDAR, ultrasonic waves, or other wireless location estimation system data receivers (such as Wi-Fi and mobile radio waves), or a position data receiver from a WMS (Warehouse Management System). In this embodiment, the AGV does not transmit the current position information IN1 while executing the transportation task assigned to it. Instead, it transmits the current position information IN1 voluntarily after the transportation task is completed. In this way, the transportation planning device 1 can recognize that the transportation task of the AGV has been completed by receiving the current position information IN1 from the AGV.
[0020] The task input device transmits task information IN2 to the transport planning device 1. The task information IN2 is information on a transport task to be executed by an AGV. The task input device may transmit multiple pieces of task information IN2 to the transport planning device 1 at once, or may transmit task information IN2 multiple times over time. There may be one task input device or multiple task input devices. A personal computer separate from the transport planning device 1, a smartphone, or the like is adopted as the task input device.
[0021] Task information IN2, which is information on the transport task, includes the following information a1 to a4. (a1) the package identification number, (a2) The location of the parcel collection; (a3) Delivery location of the package; (a4) Collection or delivery deadlines. The "position" of the current position information IN1 and the information a2, a3 of the task information IN2 can be any information that can uniquely identify a position in the environmental information 21, for example, coordinates (x, y) on the environmental information 21. The task information IN2 may include either a collection deadline or a delivery deadline as information a4, or may include both a collection deadline and a delivery deadline. In the following example, a case will be described in which the delivery deadline is used as information a4. The task information IN2 may include any information in addition to the information a1 to a4. The any information can be, for example, the type of package or the size of the package.
[0022] The CPU 10 loads a computer program stored in the ROM 140 into the RAM 140 and executes it to control each unit of the transportation planning apparatus 1. The CPU 10 also functions as an acquisition unit 11, a load calculation unit 12, a priority calculation unit 13, an allocation unit 14, a route planning unit 15, and an output unit 16. The acquisition unit 11, the load calculation unit 12, the priority calculation unit 13, the allocation unit 14, the route planning unit 15, and the output unit 16 cooperate to execute the planning process described below.
[0023] The acquisition unit 11 acquires current position information IN1 from the AGV and acquires task information IN2 from the task input device. The load calculation unit 12 calculates the execution load for candidate combinations of multiple AGVs and multiple transport tasks. The priority calculation unit 13 calculates priorities for candidate combinations of multiple AGVs and multiple transport tasks. The allocation unit 14 performs one-to-one allocation of multiple packages to multiple AGVs based on the execution load calculated by the load calculation unit 12 and the priorities calculated by the priority calculation unit 13. The route planning unit 15 plans, for each of the multiple AGVs, a movement route for executing the transport task assigned by the allocation unit 14. The output unit 16 outputs route information OUT1 representing the movement route planned by the route planning unit 15 to each of the multiple AGVs.
[0024] The storage unit 20 is composed of a hard disk, a flash memory, a memory card, etc. The storage unit 20 contains environmental information 21, input information 22, and reservation route information 23. The environmental information 21 is prepared in advance of the planning process and stored in the storage unit 20. The environmental information 21 is static information. The contents of the input information 22 and reservation route information 23 are updated as necessary during the planning process. The input information 22 and reservation route information 23 are dynamic information.
[0025] FIG. 2 is a diagram illustrating the environmental information 21 and the input information 22. The environmental information 21 is a set of rectangular frames laid out in a tiled pattern from (1,1) to (m,n) in FIG. 2. Hereinafter, each rectangular frame will also be referred to as a "cell." In other words, the environmental information 21 is a grid environment represented by m x n cells. White cells represent locations where AGVs can move. Black cells A1 represent locations where AGVs cannot move, such as pillars, walls, and grooves. Diagonally hatched cells A2 represent evacuation locations for AGVs. Evacuation locations are locations used for emergency evacuation of AGVs to avoid AGV deadlock when multiple AGVs travel through the environmental information 21.
[0026] The input information 22 in FIG. 1 includes multiple pieces of current location information IN1 acquired from multiple AGVs and multiple pieces of task information IN2 acquired from a task input device. In FIG. 2, objects based on the input information 22 are drawn against the environment information 21. The circles placed in the cells in FIG. 2 represent the positions V1 to V19 of AGVs 1 to 19, respectively. The triangles placed in the cells in FIG. 2 represent the collection locations of packages. The squares placed in the cells in FIG. 2 represent the delivery locations of packages. In FIG. 2, for package B1, the collection location B1a corresponds to the delivery location B1b. Similarly, for package B2, the collection location B2a corresponds to the delivery location B2b. For ease of illustration, not all packages are labeled and are omitted in FIG. 2.
[0027] The reserved route information 23 is the movement route (route information OUT1) planned by the route planning unit 15 for all AGVs.
[0028] FIG. 3 is a flowchart showing an example of a processing procedure for planning processing. The planning processing is a process for allocating a plurality of packages to be transported to a plurality of AGVs on a one-to-one basis, and for planning the movement routes of each AGV. The planning processing can be started at any trigger. For example, the planning processing may be started by turning on the power of the transportation planning device 1, or by executing a predetermined application installed in the transportation planning device 1.
[0029] In step S10, the acquisition unit 11 determines whether or not the termination condition for the planning process is met. The termination condition for the planning process can be set arbitrarily. For example, the termination condition can be the end of execution of the application described above, the passage of a predetermined time since the start of the planning process, or the arrival of a predetermined time. If the termination condition is met (step S10: YES), the acquisition unit 11 terminates the planning process. If the termination condition is not met (step S10: NO), the acquisition unit 11 transitions the process to step S12.
[0030] In step S12, the acquiring unit 11 acquires input information. Specifically, the acquiring unit 11 acquires current position information IN1 transmitted from a plurality of AGVs connected to the transportation planning device 1. The acquiring unit 11 also acquires task information IN2 transmitted from the task input device. In step S14, the acquiring unit 11 updates the input information 22 in the storage unit 20 using the current position information IN1 and task information IN2 acquired in step S12. Note that steps S12 and S14 (acquisition and update of the input information 22) do not need to be executed before the subsequent steps S16 to S26, and may be executed independently in parallel with steps S16 to S26.
[0031] FIG. 4 is a diagram showing an example of the calculated execution load. In step S16 of FIG. 3, the load calculation unit 12 calculates the execution load for each transport task. Specifically, the load calculation unit 12 refers to the input information 22 and finds all AGVs that can be assigned at present (FIG. 4: L1). AGVs that can be assigned at present are AGVs to which no transport task has been assigned at present. The load calculation unit 12 refers to the input information 22 and finds all packages that can be assigned at present (FIG. 4: L2). Packages that can be assigned at present are packages to which no task has been assigned to an AGV at present. The load calculation unit 12 calculates the execution load for each of the found candidate combinations CM of AGVs and packages. In the example of FIG. 4, the execution load is the distance (meters) from the AGV to the package. According to FIG. 4, for example, the distance from AGV2 to package 1 is 50 meters.
[0032] FIG. 5 is a diagram showing an example of calculated priorities. In step S18 of FIG. 3, the priority calculation unit 13 calculates a priority for each transport task. In this embodiment, the priority is determined by the remaining time until the delivery deadline (information a4 of task information IN2), in other words, how close the delivery deadline is. In step S18, the priority calculation unit 13 calculates the remaining time (seconds) for each candidate combination CM of all currently assignable AGVs and all currently assignable packages by calculating the difference between the delivery deadline and the current time (delivery deadline - current time). According to FIG. 5, for example, when the transport task of package 1 is assigned to AGV2, the remaining time is 10 seconds.
[0033] FIG. 6 is a diagram illustrating another example of a method for calculating the remaining time. In FIG. 6, as another example of a method for calculating the remaining time, assuming that AGV3 is at the collection location, the time required for AGV3 to depart from the collection location and travel to delivery location G3 is calculated, and the remaining time is calculated using the time required for this travel. FIG. 6(A) shows an example of reserved route information 23. As shown in FIG. 6(A), the reserved route information 23 stores the sequential travel routes of other AGVs 1 and 8 that have already been assigned transportation tasks. In FIG. 6(B), the collection location (departure point) of AGV3 is represented by a black circle, and G3 is written as the delivery location of AGV3. In this embodiment, the delivery deadline is used as information a4 in task information IN2. The delivery deadline for the package being calculated is time t=6.
[0034] Figure 6(C) shows the positions of each AGV at time t=6, which is the delivery deadline. At time t=6, AGV3 reaches delivery position G3. The other AGV1 is at position VA1, and the other AGV8 is at position VA8. The positions of AGV1 and AGV8 can be obtained from the reserved route information 23. Figure 6(D) shows the positions of each AGV at time t=5, before the delivery deadline. At time t=5, AGV3 reaches the cell just before delivery position G3. The other AGV1 is at position VA1, and the other AGV8 is at position VA8. Figure 6(E) shows the positions of each AGV at time t=4, before time t=5. At time t=4, AGV3 reaches the cell just before delivery position G3. The other AGV1 is at position VA1, and the other AGV8 is at position VA8. Figure 6(F) shows the positions of each AGV at time t=3, before time t=4. At time t=3, AGV3 arrives at the "collection position of AGV3" shown in Figure 6(B), which is three cells before delivery position G3. The other AGV1 is at position VA1, and the other AGV8 is at position VA8. From the above, it can be seen that in order for AGV3 to arrive at delivery position G3 at time t=6, which is the delivery deadline, it needs to depart from the collection position at t=3.
[0035] In this way, the priority calculation unit 13 can calculate the time (t=3) at which to depart from the collection location (starting point) by searching for a route in reverse order from delivery location G3 using the delivery deadline t=6 as a reference. Thereafter, the priority calculation unit 13 calculates the remaining time by finding the difference between the calculated time (t=3) and the current time. As described above, the priority calculation unit 13 may calculate the remaining time using the method described in FIG. 6 instead of the difference between the delivery deadline and the current time (delivery deadline - current time) described in FIG. 5. Note that when a collection deadline is used as information a4 of task information IN2, the collection deadline may be used as the time at which to depart from the collection location without using the method shown in FIG. 6.
[0036] Note that the execution order of step S16 (calculation of execution load) and step S18 (calculation of priority) in FIG. 3 may be interchanged, or may be executed in parallel.
[0037] FIG. 7 is a diagram showing an example of a calculated index value. In step S20 of FIG. 3, the allocation unit 14 allocates multiple transport tasks to multiple AGVs based on the execution load calculated in step S16 and the remaining time (priority) calculated in step S18. Specifically, the allocation unit 14 calculates an index value for each candidate combination CM of an AGV and a load using the following formula (1). In formula (1), α is a weight that represents the degree of consideration given to the execution load and the remaining time (priority). The weight α is an arbitrary value greater than or equal to 0.0 and less than or equal to 1.0. If the weight α is set to 0.0, the remaining time is ignored and task allocation is performed taking only the execution load into consideration. For this reason, it is preferable that the weight α be a value greater than 0.0. In the example of FIG. 7, the weight α is set to 0.2. Index value = α × remaining time + (1-α) × execution load (1)
[0038] 7, for example, when the task of transporting package 1 is assigned to AGV2, the index value is 42. After calculating the index values, the allocation unit 14 assigns the transport task with the smallest index value to each AGV. In the illustrated example, the task of transporting package 1 is assigned to AGV2, the task of transporting package 6 is assigned to AGV3, and the task of transporting package 3 is assigned to AGV5.
[0039] In step S22 of FIG. 3, the route planning unit 15 plans routes for all AGVs to which transport tasks were assigned in step S20 in order to execute the transport tasks. Specifically, the route planning unit 15 uses a well-known route search algorithm for each AGV to search for an efficient travel route that prevents collisions between AGVs. For example, a conflict-based search (CBS) can be used as the route search algorithm. At this time, the route planning unit 15 avoids collisions with other AGVs by searching for a route while referring to the reserved route information 23.
[0040] In step S24, the output unit 16 outputs the routes planned in step S22 to each of the AGVs. Specifically, the output unit 16 outputs a movement route for executing the transport task of package 1 to AGV2. Similarly, the output unit 16 outputs a movement route for executing the transport task of package 6 to AGV3, and outputs a movement route for executing the transport task of package 3 to AGV5. After this, AGVs 2, 3, and 5 move along the acquired movement routes to execute the transport tasks.
[0041] In step S26, the output unit 16 stores the travel route output in step S24 in the reserved route information 23. Thereafter, the output unit 16 transitions the process to step S10, and repeatedly executes the above-described process until the end condition is met.
[0042] Figure 8 is a graph showing the total delay time when the frequency of transport tasks is low. Figure 9 is a graph showing the total perceived delay when the frequency of transport tasks is high. Here, in a 35x21 virtual grid environment (Figure 2), 1,000 transport tasks were generated over time, and the transport tasks were assigned to 15 AGVs using the method described above, and a simulation was performed in which each AGV performed the transport task. Here, the weight α was set to 0.2. In Figures 8 and 9, the horizontal axis represents the elapsed time from the start, and the vertical axis represents the total delay time (i.e., the integrated value of the delay time).
[0043] The "solid lines" in Figures 8 and 9 represent the total delay time when the weight α in Equation (1) is set to 0.0, i.e., when transport tasks are assigned while ignoring the remaining time and taking only the execution load into consideration. The "dashed lines" in Figures 8 and 9 represent the total delay time when the weight α in Equation (1) is set to 0.2, i.e., when transport tasks are assigned while taking both the remaining time and the execution load into consideration. As is clear from Figures 8 and 9, regardless of the frequency of transport tasks, the total delay time is smaller when transport tasks are assigned while taking both the remaining time and the execution load into consideration (dashed line) than when transport tasks are assigned while taking only the execution load into consideration (solid line). As is clear from Figure 8, when the frequency of transport tasks is relatively low, the total delay time can be maintained close to zero by assigning transport tasks while taking both the remaining time and the execution load into consideration (dashed line).
[0044] As described above, according to the transportation planning device 1 of the first embodiment, the allocation unit 14 allocates a plurality of transport tasks to a plurality of AGVs based on the calculated execution loads and priorities (FIG. 3: step S20). Therefore, compared to the case where transport tasks are allocated in consideration of only the execution loads, it is possible to allocate transport tasks in consideration of the priority of the transport tasks. This improves the convenience of the transportation planning device 1 and shortens the total delay time as described in FIGS. 8 and 9.
[0045] Furthermore, according to the transportation planning device 1 of the first embodiment, the remaining time until the deadline is used as the priority (FIG. 3: step S18), so the allocation unit 14 allocates multiple transportation tasks to multiple AGVs based on the calculated execution load and remaining time (priority). Therefore, it is possible to allocate transportation tasks on the premise of compliance with the deadline, and as explained in FIGS. 8 and 9, the total delay time can be shortened.
[0046] Furthermore, according to the transportation planning device 1 of the first embodiment, the priority calculation unit 13 can easily calculate the remaining time for the collection deadline. As described in Fig. 6, the reverse route search takes into account the presence of obstacles and other AGVs, so the priority calculation unit 13 can easily and accurately calculate the remaining time for the delivery deadline.
[0047] Furthermore, according to the transportation planning device 1 of the first embodiment, the allocating unit 14 can easily obtain an index value that takes into account the execution load and remaining time (priority) using formula (1). Also, the allocating unit 14 can easily change the degree of consideration of the execution load and remaining time (priority) when allocating transportation tasks by changing the weight α included in formula (1).
[0048] Furthermore, according to the transportation planning device 1 of the first embodiment, the route planning unit 15 plans a travel route while referring to the reserved route information 23, thereby making it possible to more efficiently search for a collision-free route.
[0049] Second Embodiment FIG. 10 is an explanatory diagram illustrating the configuration of a transportation planning device 1A according to a second embodiment. In the second embodiment, a configuration for switching transportation tasks that have been assigned to an AGV will be described. The transportation planning device 1A according to the second embodiment includes a CPU 10A instead of the CPU 10 in the configuration described in the first embodiment. The CPU 10A includes an acquisition unit 11A instead of the acquisition unit 11, a load calculation unit 12A instead of the load calculation unit 12, a priority calculation unit 13A instead of the priority calculation unit 13, an allocation unit 14A instead of the allocation unit 14, a route planning unit 15A instead of the route planning unit 15, and an output unit 16A instead of the output unit 16.
[0050] In step S14 of Fig. 3, the acquisition unit 11A updates the storage unit 20 and notifies the load calculation unit 12A of the addition of a new transport task. In step S16, the load calculation unit 12A calculates the execution load for each transport task. Here, the load calculation unit 12A targets both of the following b1 and b2 when calculating all AGVs that can be assigned at this time (Fig. 4: L1). (b1) The first group consists of AGVs with no transport tasks assigned; (b2) A second group of AGVs that have been assigned a transport task but have not yet executed the assigned transport task. In this embodiment, "not yet executing the transport task" means that the AGV has not yet arrived at the collection location for the transport task. Furthermore, the load calculation unit 12A considers both of the following c1 and c2 when calculating all currently allocatable loads (FIG. 4: L2). (c1) The cargo corresponding to the newly added transportation task, (c2) The cargo corresponding to the transportation task assigned to the second group of AGVs.
[0051] The load calculation unit 12A calculates the execution load for the candidate combination CM' of the AGV consisting of the above b1 and b2 and the cargo consisting of the above c1 and c2. Thereafter, in step S18, the priority calculation unit 13A calculates the priority for the candidate combination CM'. In step S20, the allocation unit 14A allocates transport tasks to AGVs based on the calculated execution load and priority. In step S22, the route planning unit 15A plans a route, and in step S24, the output unit 16A outputs the route. The details of the processing of each of these steps are as described in the first embodiment. In this way, it is possible to replace transport tasks once allocated to AGVs, taking into account the priority of the newly added transport task, in other words, it is possible to swap transport tasks.
[0052] Fig. 11 is a graph showing the relationship between whether or not transport tasks are swapped and the total delay time. Here, in a 35 x 21 virtual grid environment (Fig. 2), 151 transport tasks are generated over time, and the transport tasks are assigned to 15 AGVs using the method described in the first or second embodiment. Thirty simulations were performed in which each AGV executes a transport task. In Fig. 11, the horizontal axis represents the value of the weight α, and the vertical axis represents the average value of the total delay time in the 30 simulations.
[0053] The "solid line" in FIG. 11 represents the average value of the total delay time when the transport tasks are assigned using the method described in the first embodiment, i.e., when the transport tasks are not swapped. The "dashed line" in FIG. 11 represents the average value of the total delay time when the transport tasks are assigned using the method described in the second embodiment, i.e., when the transport tasks are swapped. As is clear from FIG. 11, the total delay time can be reduced more when the transport tasks are swapped (dashed line) than when the transport tasks are not swapped (solid line). It can also be seen that the total delay time can be reduced most when the transport tasks are swapped (dashed line) and the weight α is 0.1.
[0054] As described above, the configuration of the transport planning device 1A can be modified in various ways, and the transport planning device 1A may also switch transport tasks that have been assigned to AGVs. The configuration of the second embodiment described above can also achieve the same effects as the first embodiment. Furthermore, when assigning a new transport task to an AGV, the transport planning device 1A of the second embodiment targets not only the first group of AGVs to which no transport task has been assigned, but also the second group of AGVs to which the assigned transport task has not yet been executed, thereby reallocating the transport task to the AGVs in the second group. Therefore, by reallocating the transport task to the AGVs in the second group, the total delay time can be further shortened, as shown in FIG. 11 .
[0055] <Third embodiment> 12 is an explanatory diagram illustrating the configuration of a transport planning device 1B according to a third embodiment. In the third embodiment, an example in which the device configuration is different from that of the first embodiment will be described. The transport planning device 1B according to the third embodiment includes a CPU 10B instead of the CPU 10 in the configuration described in the first embodiment, and further includes a position information acquisition device 50, a task information acquisition device 60, and an output device 70. The CPU 10B does not include the acquisition unit 11 and the output unit 16 described in the first embodiment.
[0056] The position information acquisition device 50 is communicably connected to the transport planning device 1B. The position information acquisition device 50 has the same function as the acquisition unit 11 described in the first embodiment. The task information acquisition device 60 is communicably connected to the transport planning device 1B. The task information acquisition device 60 has the same function as the acquisition unit 11 described in the first embodiment. The output device 70 is communicably connected to the transport planning device 1B. The output device 70 has the same function as the output unit 16 described in the first embodiment.
[0057] As described above, the configuration of the transport planning device 1B can be modified in various ways, and at least some of the functional units executed by the CPU may be realized by an independent device provided outside the transport planning device 1B. The load calculation unit 12, the priority calculation unit 13, the allocation unit 14, and the route planning unit 15 may also be realized by an information processing device (external server, etc.) different from the transport planning device 1B. The configuration of the third embodiment as described above can also achieve the same effects as those of the first embodiment.
[0058] <Modification of this embodiment> The present invention is not limited to the above-described embodiment, and can be embodied in various forms without departing from the spirit of the present invention. For example, a part of the configuration realized by hardware may be replaced by software, and conversely, a part of the configuration realized by software may be replaced by hardware. In addition, for example, the following modifications are also possible.
[0059] [Variation 1] In the above embodiment, an example of the configuration of the transport planning device 1, 1A, 1B is shown. However, various modifications are possible to the configuration of the transport planning device 1, 1A, 1B. For example, the storage unit 20 may be realized by an independent device (e.g., a storage device, a cloud server, etc.) provided outside the transport planning device. For example, the reservation route information 23 may be omitted.
[0060] FIG. 2 shows an example of the environmental information 21. However, the environmental information 21 does not have to be a grid environment represented by m×n cells. For example, the environmental information 21 may be realized by combining road network data represented by nodes and links with map data. In this case, the route planning unit 15 may perform route search using Dijkstra's algorithm or the like instead of CBS.
[0061] For example, the transportation planning device 1 may not have some of the above-mentioned functional units. For example, the transportation planning device 1 may not have the above-mentioned route planning unit 15, and may have an external device or the AGV itself perform route search. In this case, the output unit 16 may transmit task information IN2 of the assigned transportation task to the AGV instead of the route information OUT1.
[0062] For example, each AGV connected to the transportation planning device 1 may periodically transmit its current position to the transportation planning device 1 regardless of whether the transportation task has been completed. In this case, it is preferable that each AGV transmits the status of the transportation task along with its current position so that the transportation planning device 1 can easily determine whether the transportation task has been completed. If transmission of the transportation task status is omitted, the transportation planning device 1 may determine that the transportation task has been completed when the current position of the AGV becomes equal to the delivery position.
[0063] [Variation 2] In the above embodiment, an example of the planning process (FIG. 3) is shown. However, the contents of the planning process can be modified in various ways. For example, the execution order of each step may be changed, some steps may be omitted, or other steps not described may be executed.
[0064] For example, in step S18, the priority calculation unit 13 may adopt a priority different from the remaining time. For example, robustness to inventory can be used as the priority. If priority = robustness, it becomes possible to execute a task such as taking out packages in a balanced manner from each shelf or base. For example, an order constraint can be used as the priority. If priority = order constraint, it becomes possible to execute a transport task such as delivering parts required for assembling a finished product in the assembly order.
[0065] For example, the allocation unit 14 may use a combination of multiple indices (e.g., remaining time and robustness) as the priority. In this case, the priority calculation unit 13 calculates a first priority index and a second priority index. The allocation unit 14 may allocate transportation tasks after calculating the index values using Equation (1) modified to include both the first index and the second index.
[0066] For example, the allocation unit 14 may dynamically change the weight α according to a predetermined condition. Conditions for changing the weight α may include, for example, time change, the frequency of occurrence of transport tasks, the number of operating AGVs, and performance with the current weight α (the length of the delay time due to the current weight α).
[0067] [Variation 3] The transport planning devices 1, 1A, and 1B of the first to third embodiments and the transport planning devices 1, 1A, and 1B of the first and second modifications may be combined as appropriate. For example, a configuration may be adopted in which both the allocation process of the first embodiment and the allocation process of the second embodiment can be switched and implemented depending on predetermined conditions or settings by an administrator. For example, the transport planning device 1B of the third embodiment may be configured to be able to execute the planning process of the second embodiment.
[0068] This aspect has been described above based on embodiments and modifications. However, the above-described embodiments are intended to facilitate understanding of this aspect and are not intended to limit this aspect. This aspect may be modified or improved without departing from the spirit and scope of the claims, and equivalents thereof are included in this aspect. Furthermore, if a technical feature is not described as essential in this specification, it may be deleted as appropriate.
[0069] The present invention can also be realized in the following forms. [Application example 1] A transportation planning device, an acquisition unit that acquires current position information that indicates a current position of a transport device and task information that is information on a transport task to be executed by the transport device; a storage unit that stores environment information representing an execution environment of the transport task, the acquired current position information, and the acquired task information; a load calculation unit that calculates an execution load for a candidate combination of a plurality of the transport devices and a plurality of the transport tasks using information in the storage unit; a priority calculation unit that calculates priorities for the combination candidates; an allocation unit that allocates the plurality of transport tasks to the plurality of transport devices based on the calculated execution loads and the priorities; an output unit that outputs the result of the allocation; A transportation planning device comprising: [Application example 2] The transportation planning device according to Application Example 1, The task information includes a pickup location, a delivery location, and a deadline for pickup or delivery of the package to be transported, The transportation planning apparatus, wherein the priority calculation unit uses a remaining time until the deadline as the priority. [Application example 3] The transportation planning device according to Application Example 1 or Application Example 2, The priority calculation unit If the deadline is a collection deadline, calculate the remaining time by finding the difference between the collection deadline and the current time; When the deadline is a delivery deadline, a transportation planning device calculates the time to depart from the collection location by searching for a route in reverse order from the delivery location based on the delivery deadline, and calculates the remaining time by finding the difference between the calculated time and the current time. [Application example 4] The transportation planning device according to any one of Application Examples 1 to 3, The allocation unit For each of the combination candidates, an index value is calculated using the following formula (1) using a weight α, Index value = α × remaining time + (1 - α) × execution load (1) The transportation planning device allocates the plurality of transport tasks to the plurality of transport devices, respectively, using the calculated index values. [Application example 5] The transportation planning device according to any one of Application Examples 1 to 4, The route planning unit further storing the travel route determined for each of the plurality of transport devices as reserved route information in the storage unit; A transportation planning device that avoids collisions by planning the movement route while referring to the reserved route information. [Application Example 6] The transportation planning device according to any one of Application Examples 1 to 5, When allocating the new transport task to the transport device, In addition to a first group consisting of the transport devices to which the transport task has not been assigned, a transportation planning device that reallocates the transport tasks to the transport devices in the second group by also targeting a second group consisting of the transport devices that have not yet executed the assigned transport tasks. [Application Example 7] The transportation planning device according to any one of Application Examples 1 to 6, further comprising: a route planning unit that plans a movement route for executing the assigned transport task for each of the plurality of transport devices; The output unit outputs the movement route as a result of the allocation. [Application Example 8] A transportation planning method, comprising: acquiring current position information indicating a current position of a transport device and task information which is information on a transport task to be executed by the transport device; storing environment information representing an execution environment of the transport task, the acquired current position information, and the acquired task information; calculating an execution load for a combination candidate of a plurality of the transport devices and a plurality of the transport tasks using the environmental information, the current position information, and the task information; calculating priorities of the combination candidates; assigning the plurality of transport tasks to the plurality of transport devices based on the calculated execution loads and the priorities; outputting the results of the allocation; A transportation planning method that performs the following: [Application Example 9] A computer program for an information processing device, A function of acquiring current position information indicating the current position of the transport device and task information which is information on a transport task to be executed by the transport device; a function of storing environment information representing an execution environment of the transport task, the acquired current position information, and the acquired task information; a function of calculating an execution load for a combination candidate of a plurality of the transport devices and a plurality of the transport tasks using the environmental information, the current position information, and the task information; a function of calculating priorities for the combination candidates; a function of allocating the plurality of transport tasks to the plurality of transport devices based on the calculated execution loads and the priorities; a function of outputting the result of the allocation; A computer program that executes [Explanation of symbols]
[0070] 1, 1A, 1B...Transportation planning device 10, 10A, 10B...CPU 11,11A…Acquisition Department 12,12A…Load calculation section 13,13A…Priority calculation unit 14, 14A...Allocation section 15, 15A...Route planning section 16,16A...Output section 20...Storage section 21…Environmental information 22...Input information 23...Reservation route information 30…Communications Department 40...ROM / RAM 50…location information acquisition device 60...Task information acquisition device 70...Output device
Claims
1. A transportation planning device, an acquisition unit that acquires current position information that indicates a current position of a transport device and task information that is information on a transport task to be executed by the transport device; a storage unit that stores environment information representing an execution environment of the transport task, the acquired current position information, and the acquired task information; a load calculation unit that calculates an execution load for a candidate combination of a plurality of the transport devices and a plurality of the transport tasks using information in the storage unit; a priority calculation unit that calculates priorities for the combination candidates; an allocation unit that allocates the plurality of transport tasks to the plurality of transport devices based on the calculated execution loads and the priorities; an output unit that outputs the result of the allocation; A transportation planning device comprising:
2. The transportation planning device according to claim 1 , The task information includes a pickup location, a delivery location, and a deadline for pickup or delivery of the package to be transported, The transportation planning apparatus, wherein the priority calculation unit uses a remaining time until the deadline as the priority.
3. The transportation planning device according to claim 2, The priority calculation unit If the deadline is a collection deadline, calculate the remaining time by finding the difference between the collection deadline and the current time; When the deadline is a delivery deadline, a transportation planning device calculates the time to depart from the collection location by searching for a route in reverse order from the delivery location based on the delivery deadline, and calculates the remaining time by finding the difference between the calculated time and the current time.
4. The transportation planning device according to claim 3, The allocation unit For each of the combination candidates, an index value is calculated using the following formula (1) using a weight α, Index value = α × remaining time + (1 - α) × execution load (1) The transportation planning device allocates the plurality of transport tasks to the plurality of transport devices, respectively, using the calculated index values.
5. The transportation planning device according to any one of claims 1 to 4, The route planning unit further storing the travel route determined for each of the plurality of transport devices as reserved route information in the storage unit; A transportation planning device that avoids collisions by planning the movement route while referring to the reserved route information.
6. The transportation planning device according to any one of claims 1 to 4, When allocating the new transport task to the transport device, In addition to a first group consisting of the transport devices to which the transport task has not been assigned, The transportation planning device reallocates the transport tasks to the transport devices in the second group by also targeting a second group consisting of the transport devices that have not yet executed the assigned transport tasks.
7. The transportation planning device according to any one of claims 1 to 4, further comprising: a route planning unit that plans a movement route for executing the assigned transport task for each of the plurality of transport devices; The output unit outputs the movement route as a result of the allocation.
8. A transportation planning method, comprising: acquiring current position information indicating a current position of a transport device and task information which is information on a transport task to be executed by the transport device; storing environment information representing an execution environment of the transport task, the acquired current position information, and the acquired task information; calculating an execution load for a combination candidate of a plurality of the transport devices and a plurality of the transport tasks using the environmental information, the current position information, and the task information; calculating priorities of the combination candidates; assigning the plurality of transport tasks to the plurality of transport devices based on the calculated execution loads and the priorities; outputting the results of the allocation; A transportation planning method that performs the following:
9. A computer program for an information processing device, A function of acquiring current position information indicating the current position of the transport device and task information which is information on a transport task to be executed by the transport device; a function of storing environment information representing an execution environment of the transport task, the acquired current position information, and the acquired task information; a function of calculating an execution load for a combination candidate of a plurality of the transport devices and a plurality of the transport tasks using the environmental information, the current position information, and the task information; a function of calculating priorities for the combination candidates; a function of allocating the plurality of transport tasks to the plurality of transport devices based on the calculated execution loads and the priorities; a function of outputting the result of the allocation; A computer program that executes
Citation Information
Patent Citations
Distributed path planning device and method, and distributed path planning program
JP2004280213A
Route planning device, route planning method, and computer-readable recording medium
WO2020105189A1