Dispatching method and device of distribution robot, computer equipment and storage medium

The delivery time is calculated through the Digestra algorithm and the task priority table, and the time matrix table is established, and the high-priority tasks are prioritized by combining the preset scheduling strategy, which solves the limitations of the existing scheduling system and improves the flexibility and efficiency of the scheduling of the delivery robot.

CN120338450AActive Publication Date: 2025-07-18SHENZHEN TODAY INT SOFTWARE TECH CO LTD

Patent Information

Application Number
CN202510823242.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-06-19
Publication Date
2025-07-18
Estimated Expiration
2045-06-19

AI Technical Summary

Technical Problem

The existing distribution robot scheduling system cannot realize the overall planning of the global task pool, resulting in some robot tasks being overloaded and busy for a long time, while other robots are idle, and lack dynamic responses to task urgency and time requirements, reducing warehousing operation efficiency.

Method used

The Digestella algorithm and the pre-constructed task priority table are used to calculate the delivery time of the delivery task, establish a time matrix table, and determine the target robot based on the preset scheduling strategy, prioritize high-priority and on-time delivery tasks, and schedule through the combination of the time matrix table and the task priority table.

Benefits of technology

It improves the flexibility and efficiency of distribution robot scheduling, avoids the inability to deliver tasks on time, and improves the overall efficiency of the logistics and warehousing system.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120338450A_ABST
    Figure CN120338450A_ABST
Patent Text Reader

Abstract

The invention provides a distribution robot scheduling method and device, computer equipment and a storage medium, and the method comprises the steps: obtaining the coordinate data of a storage space and the position information of each robot, according to a Dijkstra algorithm and a pre-constructed task priority table, calculating distribution time corresponding to a distribution task in the task priority table executed by each robot, and establishing a time matrix table based on the distribution task and the distribution time; and determining a target robot for the distribution task according to a preset scheduling strategy and the time matrix table, and issuing the distribution task to the target robot. According to the method, the robot can be subjected to task scheduling according to the task priority and the time matrix table, so that the robot can preferentially distribute the distribution task with the high priority to avoid the situation that the distribution task cannot be distributed on time, and the robot can execute the distribution task according to the task with the shortest distribution time; therefore, the scheduling flexibility of the scheduling system is improved, and the distribution efficiency is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of computer technology, and particularly to a scheduling method, device, computer equipment and storage medium for a distribution robot. Background Art

[0002] At present, with the rapid development of intelligent manufacturing and intelligent logistics, the automated logistics warehousing system has become the core link of the modern supply chain. Distribution robots, with advantages such as high efficiency, precision, and 24-hour uninterrupted operation, are widely used in various warehousing scenarios, playing an important role in tasks such as goods sorting in e-commerce warehouses and package transfer in express delivery centers. Currently, most distribution robot systems are equipped with their own scheduling systems, aiming to achieve path planning, task allocation, and operation management of robots in the warehouse to ensure the orderly development of warehousing operations.

[0003] However, the existing distribution robot scheduling systems have significant limitations. On the one hand, their scheduling logic is usually based on local task information or the running state of the robots themselves, making it difficult to conduct global analysis and overall planning of the task pool in the entire logistics warehousing system. This results in the inability to achieve the optimal assignment of distribution robots when facing a large number of complex tasks, easily leading to situations where some robots are overloaded with tasks and busy for a long time while other robots are idle, reducing the overall efficiency of warehousing operations. On the other hand, the existing scheduling systems lack a dynamic perception and response mechanism for task tolerance time and cannot flexibly adjust priorities according to the urgency and time requirements of tasks. With the explosive growth of orders in the logistics industry and the continuous improvement of customers' requirements for distribution timeliness, breaking through the limitations of the existing distribution robot scheduling systems and constructing a more efficient and intelligent scheduling scheme have become the key to enhancing the competitiveness of the automated logistics warehousing system. Summary of the Invention

[0004] Embodiments of the present invention provide a scheduling method, device, computer equipment and storage medium for a distribution robot, aiming to solve the problem of low scheduling flexibility of distribution robots and thus improve the distribution efficiency.

[0005] In a first aspect, an embodiment of the present invention provides a scheduling method for a distribution robot, which includes: obtaining coordinate data of a warehousing space and position information of each robot, calculating the distribution time for each robot to execute the distribution tasks in the task priority table according to Dijkstra's algorithm and a pre-constructed task priority table, and establishing a time matrix table based on the distribution tasks and the distribution time; determining a target robot for the distribution tasks according to a preset scheduling strategy and the time matrix table, and sending the distribution tasks to the target robot.

[0006] In a second aspect, an embodiment of the present invention further provides a scheduling device for a distribution robot, which includes units for executing the above method.

[0007] In a third aspect, an embodiment of the present invention further provides a computer device, which includes a memory and a processor. A computer program is stored on the memory, and when the processor executes the computer program, the above method is implemented.

[0008] In a fourth aspect, an embodiment of the present invention further provides a computer-readable storage medium. The storage medium stores a computer program, and the computer program includes program instructions. When the program instructions are executed by a processor, the above method can be implemented.

[0009] The present application provides a scheduling method, device, computer device, and storage medium for a delivery robot, which are applied to a logistics system. The present application calculates the delivery time for each robot to execute the delivery tasks in the task priority table by using Dijkstra's algorithm based on the coordinate data and the position information of the robot, so as to establish the time matrix table, and determines the target robot for the delivery tasks according to a preset scheduling strategy and the time matrix table. Thus, the tasks of the robot can be scheduled according to the task priority and the time matrix table, so that the robot can preferentially deliver the delivery tasks with a high task priority to avoid the situation that the delivery tasks cannot be delivered on time, and the robot can execute the delivery tasks according to the task with the shortest delivery time, thereby improving the flexibility of the scheduling system and the delivery efficiency. BRIEF DESCRIPTION OF THE DRAWINGS

[0010] In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings required for the description of the embodiments will be briefly introduced below. Obviously, the drawings in the following description are some embodiments of the present invention. For those of ordinary skill in the art, other drawings can be obtained based on these drawings without creative efforts.

[0011] Figure 1 It is a schematic flowchart of the scheduling method for the delivery robot provided by the embodiment of the present invention; Figure 2 It is a schematic diagram of a sub-process of the scheduling method for the delivery robot provided by the embodiment of the present invention; Figure 3 It is a schematic diagram of a sub-process of the scheduling method for the delivery robot provided by the embodiment of the present invention; Figure 4 It is a schematic diagram of a sub-process of the scheduling method for the delivery robot provided by the embodiment of the present invention; Figure 5 It is a schematic diagram of a sub-process of the scheduling method for the delivery robot provided by the embodiment of the present invention; Figure 6 It is a schematic diagram of a sub-process of the scheduling method for the delivery robot provided by the embodiment of the present invention; Figure 7 It is a schematic diagram of a sub - process of the scheduling method for the delivery robot provided by an embodiment of the present invention; Figure 8 It is a schematic block diagram of the scheduling device for the delivery robot provided by an embodiment of the present invention; Figure 9 It is a schematic block diagram of the computer device provided by an embodiment of the present invention. Detailed implementation manners

[0012] Next, the technical solutions in the embodiments of the present invention will be clearly and completely described in conjunction with the accompanying drawings in the embodiments of the present invention. Obviously, the described embodiments are some, but not all, of the embodiments of the present invention. All other embodiments obtained by those of ordinary skill in the art based on the embodiments of the present invention without creative efforts shall fall within the protection scope of the present invention.

[0013] It should be understood that when used in this specification and the appended claims, the terms "comprising" and "including" indicate the presence of the described features, wholes, steps, operations, elements, and / or components, but do not exclude the presence or addition of one or more other features, wholes, steps, operations, elements, components, and / or their combinations.

[0014] It should also be understood that the terms used in this specification of the present invention are only for the purpose of describing specific embodiments and are not intended to limit the present invention. As used in this specification of the present invention and the appended claims, unless the context clearly indicates otherwise, the singular forms "a", "an", and "the" are intended to include the plural forms.

[0015] It should be further understood that the term "and / or" used in this specification of the present invention and the appended claims refers to any combination and all possible combinations of one or more of the associated listed items, and includes these combinations.

[0016] Please refer to Figure 1 It is a schematic flowchart of the scheduling method for the delivery robot provided by an embodiment of the present invention. In this application, the scheduling method for the delivery robot is applied to a logistics system, especially in a production and warehousing scenario. By the priority of the delivery tasks and the time matrix table of each delivery task for the delivery robot, the delivery tasks are sent to the delivery robot, thereby improving the flexibility of the scheduling system in scheduling the delivery tasks, and further improving the delivery efficiency. For example, during the process of beer finished product warehousing to delivery, robot handling is used for inbound and outbound. According to the priority and time matrix, the most reasonable tasks are sent to the robot, resulting in a 10% increase in the efficiency of material inbound and outbound, meeting the efficiency of the planning and design, and effectively improving the comprehensive utilization rate of the equipment.

[0017] Meanwhile, the method is also applicable to the scenarios of food delivery and express logistics.

[0018] The present application provides a scheduling method, device, computer device and storage medium for a delivery robot, which is applied to a logistics system. The scheduling method for the delivery robot includes: obtaining coordinate data of a storage space and position information of each robot, calculating the delivery time corresponding to each delivery task in the task priority table executed by each robot according to Dijkstra's algorithm and a pre-constructed task priority table, and establishing a time matrix table based on the delivery tasks and the delivery times; determining a target robot for the delivery task according to a preset scheduling strategy and the time matrix table, and sending the delivery task to the target robot.

[0019] The present application calculates the delivery time of each robot executing the delivery tasks in the task priority table by using Dijkstra's algorithm through the coordinate data and the position information of the robot, so as to establish the time matrix table, and determines the target robot for the delivery task according to a preset scheduling strategy and the time matrix table, so that the tasks of the robot can be scheduled according to the task priority and the time matrix table, so that the robot can give priority to delivering the delivery tasks with high task priority to avoid the delivery tasks from not being delivered on time, and the robot can execute the delivery task according to the task with the shortest delivery time, thereby improving the flexibility of the scheduling system and improving the delivery efficiency.

[0020] Figure 1 It is a schematic flow chart of the scheduling method for a delivery robot provided by an embodiment of the present invention. As Figure 1 shown, the method includes the following steps S110-S120.

[0021] S110. Obtain coordinate data of a storage space and position information of each robot, calculate the delivery time corresponding to each delivery task in the task priority table executed by each robot according to Dijkstra's algorithm and a pre-constructed task priority table, and establish a time matrix table based on the delivery tasks and the delivery times; In this embodiment, the delivery robot delivers the corresponding objects in the logistics, and delivers the corresponding objects from the starting point of the task to the ending point of the task; the scheduling system in this embodiment schedules the delivery tasks according to the delivery times of each robot for each delivery task and a preset scheduling strategy to improve the delivery efficiency.

[0022] The coordinate data of the storage space refers to the path coordinate data for each robot to run to each delivery task. That is, in the coordinate data of the storage space, there is a corresponding delivery path for each robot to a certain delivery task. When the robot delivers the delivery task, it moves along the delivery path; the position information refers to the position coordinate information where the robot is currently located; the Dijkstra algorithm is a classic algorithm for solving the single-source shortest path problem in a directed graph or an undirected graph with non-negative weights; the task priority table is the delivery priority table for each delivery task. The higher the priority, the more urgently the delivery task needs to be delivered. The task priority table is pre-constructed in the system.

[0023] The scheduling system obtains the coordinate data of the storage space according to the coordinate topology map of the storage space, and obtains the position information of each robot according to the positioning device of each robot. Therefore, the Dijkstra algorithm can be used to calculate the delivery time of each robot to each delivery task; and based on the priority of the delivery task in the pre-constructed task priority table, the delivery task and the delivery time are associated with each robot to establish the time matrix table. The time matrix table is the delivery time matrix table of each delivery task corresponding to the priority of the task for each robot, that is, the time matrix table is associated with the task priority table. So that in the subsequent steps, the delivery can be carried out according to the delivery time.

[0024] In one embodiment, as Figure 2 shown, step S110 includes steps S111 - S112.

[0025] S111. Calculate the shortest path distance D from each robot to each delivery task. The formula is D = D1 + D2 + D3, where D1 is the distance from the current position of the robot to the end point of the current task; D2 is the distance from the end point of the current task to the start point of the next delivery task; D3 is the distance from the start point to the end point of the delivery task. S112. Calculate the delivery time T1 = D / V * α, where V is the moving speed of the robot and α is the correction coefficient.

[0026] Specifically, among all the robots, the robots are divided into a busy state and an idle state. The robots in the busy state refer to those that are still executing the current task and need some time to complete it before they can execute the next delivery task according to the dispatched delivery task. The robots in the idle state refer to those that need to execute the next delivery task after completing the current task and reporting the information of successful delivery to the scheduling system. Therefore, when calculating the shortest path distance D from each robot to each delivery task using Dijkstra's algorithm based on the coordinate data and location information, it includes three segments of distance, that is, D = D1 + D2 + D3, where D1 refers to the distance from the current location of the robot to the end point of the current task; D2 refers to the distance from the end point location of the current task to the starting point location of the next delivery task; D3 refers to the distance from the starting point of the next delivery task to the end point of the next delivery task, so as to obtain the shortest path distance from each robot to each delivery task.

[0027] Then, based on the shortest path distance and the moving speed of each robot, calculate the delivery time T1 for each robot to deliver each delivery task. The formula is T1 = D / V * α, where V is the moving speed of the robot and α is a correction factor. Thus, the predicted delivery time for each robot to deliver to each delivery task can be calculated, and the accuracy of the delivery time is high. Thus, a time matrix table can be established for each robot based on the delivery task and the delivery time.

[0028] More specifically, step S1121 is further included in step S112.

[0029] S1121. Establish a time prediction error compensation mechanism. The specific formula is α = α0 + β × (T real - T pred ) / T real , where α0 = 1.2, β is the learning rate, defaulting to 1, T real refers to the actual time for the robot to complete the delivery task, and T pred refers to the predicted time for the robot to complete the delivery task.

[0030] Specifically, since some abnormalities may occur during the operation of the robot, in order to improve the tolerance to errors, α is set to perform error compensation on the prediction of the delivery time, thereby improving the accuracy of the delivery time.

[0031] In this embodiment, a time prediction error compensation mechanism is established. The specific formula is α = α0 + β × (T real - T pred ) / T real , where α0 = 1.2, β is the learning rate, defaulting to 1, Treal Refers to the time when the robot actually completes the delivery task, T pred Refers to the time when the robot predicts to complete the delivery task. By calculating α and then applying α to calculate the delivery time, the accuracy of the calculation can be further improved.

[0032] In one embodiment, as Figure 3 shown, step S110 further includes steps S113 - S114.

[0033] S113. Calculate the tolerance time T for each delivery task. The formula is T = T target - T task - T current - T0, where T target is the target completion time, T task is the duration required to execute the task, T current is the current time, and T0 is the error time; S114. Update the task priority table according to the tolerance time and the priority adjustment rule.

[0034] Specifically, the task priority table sorts the priorities of each delivery task according to the tolerance time of each delivery task and the priority adjustment rule, and thus is constructed; the tolerance time is also the remaining time of the delivery task. The tolerance time T is calculated according to the target completion time T target , the duration required to execute the task T task , the current time T current and the error time T0. The calculation formula is: T = T target - T task - T current - T0, where the target completion time T target is the time issued by the business system, such as manually entered or passed in by other systems or modules. All delivery tasks have a target completion time. For example, the stock preparation task can refer to the estimated delivery time on the delivery note as the target completion time, and the production warehousing task can refer to the pallet production time that the remaining buffer space at the offline port can bear as the target completion time; more specifically, the target completion time may change with certain conditions. The target completion times of each delivery task in the scheduling system can be adjusted flexibly accordingly. For example, if the vehicle that was originally expected to arrive at 4 pm arrives at 1 pm, the estimated completion time of the stock preparation task corresponding to this vehicle is adjusted from 3:40 to 1:15; therefore, the target completion time will change in special cases, thereby affecting the tolerance time of the corresponding delivery task.

[0035] The duration required to perform the task is a preset value, which is calculated based on the pick-up location (starting point) and drop-off location (ending point) of the corresponding delivery task. The current time refers to the current moment, and as the current time progresses, the tolerance time gradually decreases, that is, the closer the delivery task is to the target completion time, thereby increasing the priority of the delivery task. The error time is a preset value that can be adjusted according to the actual situation and is generally set to 1 minute.

[0036] Since the target completion time may change and the current time has dynamic changes, the size of the tolerance time will change with the changes of the target completion time and the current time. Therefore, sorting the priorities according to the tolerance time can dynamically adjust the priorities of the delivery tasks, so that each delivery task can be delivered more flexibly, avoiding the inability to complete the delivery task on time. Among them, when the tolerance time is less than or equal to 0, the corresponding delivery task is the highest-level task, indicating that the closer or exceeding the target completion time the delivery task is, at this time the delivery task needs to be immediately delivered and must be sent to the delivery robot for handling, otherwise the delivery task cannot be completed on time.

[0037] At the same time, update the task priority table according to the tolerance time and the priority adjustment rule. The priority adjustment rule refers to a rule preset manually according to the actual situation. Each delivery task corresponds to its own priority adjustment rule. The priority adjustment rule can be the range of the tolerance time corresponding to the delivery task at a specified priority. For example, in the delivery task with an initial priority of level 1, the priority adjustment rule stipulates that when T is in the range of 60 - 20, the priority is upgraded to level 2, when it is in the range of 20 - 10, it is upgraded to level 3, when it is in the range of 10 - 5, it is upgraded to level 4, and so on. As the current time progresses, if the tolerance time T of a certain delivery task changes to 15, the priority of this delivery task needs to be upgraded to level 3. Therefore, the scheduling system can update the task priority table in real time according to the tolerance time and the priority adjustment rule, so that the priority of each delivery task more meets the actual needs, avoiding the phenomenon of incomplete delivery due to missing high-priority delivery tasks.

[0038] In one embodiment, as Figure 4 shown, step S114 includes steps S1141 - S1142.

[0039] S1141. If the priorities of multiple delivery tasks are the same, then sort them according to the size of the tolerance time, and the smaller the tolerance time, the higher the sorting; S1142. If the priorities and the tolerance times of multiple delivery tasks are all the same, then sort the tasks according to the task number or the task creation time.

[0040] Specifically, in the delivery task, there may be a situation where the priorities of multiple delivery tasks are the same. When the priorities of the multiple delivery tasks are the same, the multiple delivery tasks are sorted according to the size of the tolerance time corresponding to the delivery tasks. Among them, the smaller the tolerance time, the higher the risk that the delivery cannot be completed. Therefore, the smaller the tolerance time, the higher the sorting, so that the scheduling system first dispatches the delivery tasks with higher sorting.

[0041] Meanwhile, if the priorities and the tolerance times of multiple delivery tasks are all the same, the multiple delivery tasks are sorted according to the task numbers or task creation times of the delivery tasks. The earlier the created delivery task, the higher the sorting, for priority dispatch.

[0042] Therefore, in this embodiment, through a three-level sorting mechanism (from priority to tolerance time and then to task number / task creation time), the delivery tasks are further sorted, so as to improve the accuracy of the scheduling system and avoid the risk of untimely delivery.

[0043] S120. Determine a target robot for the delivery task according to a preset scheduling strategy and the time matrix table, and send the delivery task to the target robot; In this embodiment, the preset scheduling strategy refers to the scheduling strategy for each delivery task and each robot preset in the scheduling system, which can be adjusted according to actual needs; the time matrix table has the delivery times of each robot corresponding to each delivery task, and the time matrix table also has the priorities of the delivery tasks, that is, the time matrix table is associated with the task priority table. Therefore, according to the preset scheduling strategy and the time matrix table, a target robot is determined for the delivery task. The scheduling system in this embodiment can select the target robot in two dimensions of task priority and delivery time, so as to send the delivery task to the target robot, so that the target robot delivers the delivery task, so as to improve the flexibility of scheduling and thus improve the delivery efficiency of the delivery robot; at the same time, since the task priority table is a dynamically changing table, the flexibility of the scheduling system when scheduling delivery tasks can be further improved, and the delivery efficiency can be further improved.

[0044] In one embodiment, as Figure 5 shown, step S120 may include steps S121-S122.

[0045] S121. Determine whether there is a top-level task in the time matrix table; S122. If there is a top-level task, obtain the robot with the shortest delivery time corresponding to the top-level task as the target robot, and give priority to delivering the top-level task.

[0046] Specifically, since the time matrix table is associated with the task priority table, each of the delivery tasks located in the time matrix table contains its corresponding priority information. The highest-level task refers to a delivery task with a tolerance time less than or equal to 0, indicating that the delivery task needs to be delivered immediately; otherwise, it will cause the task to not be delivered on time, thus affecting the next process or user experience.

[0047] Therefore, it is determined whether there is a highest-level task according to the time matrix table. If there is a highest-level task in the time matrix table, for the highest-level task, delivery needs to be carried out immediately. When it is found that there is a highest-level task among the delivery tasks in the time matrix table, the robot with the shortest delivery time corresponding to the highest-level task is obtained in the time matrix table as the target robot, and the highest-level task is sent to the target robot. The target robot delivers the highest-level task, thereby preferentially delivering the highest-level task to improve the flexibility of the scheduling system of the dispatching system, ensuring that the highest-level task can be delivered in time, avoiding the phenomenon of untimely delivery, and improving work efficiency.

[0048] More specifically, if the target robot is an idle robot, where an idle robot refers to a robot with a current idle state and no delivery task, the highest-level task is directly sent to the idle robot to quickly deliver the highest-level task.

[0049] If the target robot is not the idle robot, then the first distance from each robot to the end point of its current task, the second distance from the end point of the current task of the delivery robot to the start point of the highest-level task, and the third distance from the start point of the highest-level task to the end point of the highest task are calculated, and the sum of the first distance, the second distance, and the third distance constitutes the delivery distance; according to the delivery distance and the moving speeds corresponding to the respective delivery robots, the delivery times of the respective delivery robots to the highest-level task are obtained; the delivery robot corresponding to the smallest delivery time is selected as the target robot, and the highest-level task is sent to it.

[0050] In an embodiment, as Figure 6 shown, step S121 may include steps S1211 - S1212.

[0051] S1211. Determine the magnitude relationship between the tolerance time of each delivery task and a preset time; S1212. If the tolerance time is less than or equal to the preset time, the corresponding delivery task is the highest-level task.

[0052] Specifically, the tolerance time is also the remaining time of the delivery task, and the tolerance time T is calculated based on the target completion time T target , the duration required to execute the task T task , the current time T current and the error time T0, and the calculation formula is: T = T target - T task - T current - T0; the preset time refers to the time value preset artificially according to actual needs and can be adjusted according to actual situations. In this embodiment, the preset time refers to 0.

[0053] Judge the magnitude relationship between the tolerance time of the delivery task and the preset time. If the tolerance time is less than or equal to the preset time, it indicates that the tolerance time of the delivery task is too small and there is a risk of overtime delivery. Therefore, the delivery task is set as the highest-level task, and then the highest-level task is sent to the target robot, so as to give priority to delivering the highest-level task and avoid overtime delivery.

[0054] In one embodiment, as Figure 7 shown, step S120 further includes steps S123 - S124.

[0055] S123. Judge whether there is an idle robot among all the robots; S124. If there is an idle robot, screen out the target task with the shortest delivery time corresponding to each idle robot according to the time matrix table, and send the target task to the corresponding idle robot.

[0056] Among all the robots, if all the robots are in a busy state, after the current task of a certain robot reports the completion of goods delivery to the scheduling system, the robot is in an idle state, that is, the robot is the idle robot. The idle robot has no current task to execute. Therefore, the scheduling system needs to send the next task to the idle robot according to the time matrix table to prevent the idle robot from remaining idle all the time, thereby reducing the delivery efficiency.

[0057] The scheduling system needs to first judge whether there is an idle robot among all the robots. If there is an idle robot, screen out the target task with the shortest delivery time corresponding to the idle robot according to the data in the time matrix table, and send the target task to the corresponding idle robot, so that the idle robot delivers the target task. Moreover, when the idle robot delivers the target task, its delivery time is the shortest, thereby improving the delivery efficiency.

[0058] In this application, the delivery time for each robot to execute the delivery tasks in the task priority table is calculated using Dijkstra's algorithm based on the coordinate data and the position information of the robot, so as to establish the time matrix table. Then, according to the preset scheduling strategy and the time matrix table, the target robot is determined for the delivery tasks. Therefore, the tasks of the robot can be scheduled according to the task priority and the time matrix table, so that the robot can preferentially deliver the delivery tasks with high task priority to avoid the situation where the delivery tasks cannot be delivered on time. Moreover, the robot can execute the delivery tasks according to the tasks with the shortest delivery time, thereby improving the flexibility of the scheduling system and the delivery efficiency.

[0059] Figure 8 FIG. 4 is a schematic block diagram of a scheduling device 300 for a delivery robot provided by an embodiment of the present invention. As Figure 8 shown, corresponding to the above scheduling method for the delivery robot, the present invention also provides a scheduling device 300 for a delivery robot. The scheduling device for the delivery robot includes units for executing the above scheduling method for the delivery robot, and the device can be configured in a computer device. Specifically, please refer to Figure 8 FIG. 4, the scheduling device 300 for the delivery robot includes an acquisition unit 301, a calculation unit 302, a distribution unit 303, and a judgment unit 304.

[0060] The acquisition unit 301 acquires the coordinate data of the storage space and the position information of each robot; The calculation unit 302 calculates the delivery time corresponding to each robot's execution of the delivery tasks in the task priority table according to Dijkstra's algorithm and a pre-constructed task priority table, and establishes a time matrix table based on the delivery tasks and the delivery time; if the tolerance time is less than or equal to the preset time, the corresponding delivery task is the highest-level task; calculates the shortest path distance D from each robot to each delivery task, and the formula is D = D1 + D2 + D3, where D1 is the distance from the current position of the robot to the end point of the current task; D2 is the distance from the end point of the current task of the robot to the start point of the next delivery task; D3 is the distance from the start point to the end point of the delivery task; calculates the delivery time T1 = D / V * α, where V is the moving speed of the robot and α is a correction coefficient; calculates the tolerance time T of each delivery task, and the formula is T = T target -T task -T current -T0, where T target is the target completion time, T task is the duration required to execute the task, T currentis the current time, and T0 is the error time; update the task priority table according to the tolerance time and the priority adjustment rule; if the priorities of multiple delivery tasks are the same, sort them according to the size of the tolerance time, and the smaller the tolerance time, the higher the sorting; if the priorities of multiple delivery tasks and the tolerance times are the same, sort the tasks according to the task number or the task creation time; The sending unit 303 determines a target robot for the delivery task according to a preset scheduling strategy and the time matrix table, and sends the delivery task to the target robot; if there is the highest-level task, obtain the robot corresponding to the shortest delivery time of the highest-level task as the target robot, and give priority to delivering the highest-level task; if there is, screen the target task with the shortest delivery time corresponding to each idle robot according to the time matrix table, and send the target task to the corresponding idle robot; The judgment unit 304 judges whether there is a highest-level task in the time matrix table; judges the size of the tolerance time of each delivery task and a preset time; judges whether there is an idle robot among all the robots.

[0061] It should be noted that those skilled in the art can clearly understand the specific implementation processes of the above-mentioned scheduling device of the delivery robot and each unit, which can refer to the corresponding descriptions in the foregoing method embodiments. For the sake of convenience and brevity of description, they will not be elaborated here.

[0062] The above-mentioned scheduling device 300 of the delivery robot can be implemented in the form of a computer program, and this computer program can run on a computer device as shown in Figure 9 shown.

[0063] Please refer to Figure 9 , Figure 9 which is a schematic block diagram of a computer device provided by an embodiment of the present application. The computer device 500 can be a terminal or a server. Among them, the terminal can be an electronic device with a communication function such as a smart phone, a tablet computer, a notebook computer, a desktop computer, a personal digital assistant, and a wearable device. The server can be an independent server or a server cluster composed of multiple servers.

[0064] Refer to Figure 9 , the computer device 500 includes a processor 502, a memory, and a network interface 505 connected through a system bus 501. Among them, the memory can include a non-volatile storage medium 503 and an internal memory 504.

[0065] The non-volatile storage medium 503 can store an operating system 5031 and a computer program 5032. The computer program 5032 includes program instructions that, when executed, enable the processor 502 to execute a scheduling method for a delivery robot.

[0066] The processor 502 is used to provide computing and control capabilities to support the operation of the entire computer device 500.

[0067] The internal memory 504 provides an environment for the operation of the computer program 5032 in the non-volatile storage medium 503. When the computer program 5032 is executed by the processor 502, it enables the processor 502 to execute a scheduling method for a delivery robot.

[0068] The network interface 505 is used for network communication with other devices. Those skilled in the art can understand that Figure 9 the structure shown in

[0069] is only a block diagram of some structures related to the solution of this application, and does not constitute a limitation on the computer device 500 to which the solution of this application is applied. The specific computer device 500 may include more or fewer components than those shown in the figure, or combine some components, or have different component arrangements.

[0070] Among them, the processor 502 is used to run the computer program 5032 stored in the memory to implement the steps of the above-mentioned scheduling method for the delivery robot.

[0071] Those of ordinary skill in the art can understand that all or part of the processes in the methods of the above embodiments can be completed by instructing relevant hardware through a computer program. The computer program includes program instructions, and the computer program can be stored in a storage medium, which is a computer-readable storage medium. The program instructions are executed by at least one processor in the computer system to implement the process steps of the embodiments of the above methods.

[0072] Therefore, the present invention also provides a storage medium. The storage medium can be a computer-readable storage medium. The storage medium stores a computer program, where the computer program includes program instructions. When the program instructions are executed by a processor, the processor executes the steps of the scheduling method of the above-mentioned delivery robot.

[0073] The storage medium can be a USB flash drive, a mobile hard disk, a read-only memory (ROM), a magnetic disk, or an optical disc, etc., which are all computer-readable storage media that can store program codes.

[0074] Those of ordinary skill in the art can realize that the units and algorithm steps of the examples described in combination with the embodiments disclosed herein can be implemented by electronic hardware, computer software, or a combination of both. To clearly illustrate the interchangeability of hardware and software, the components and steps of the examples have been generally described according to their functions in the above description. Whether these functions are executed in a hardware or software manner depends on the specific application and design constraints of the technical solution. Professional technicians can use different methods to implement the described functions for each specific application, but such implementation should not be considered to exceed the scope of the present invention.

[0075] In several embodiments provided by the present invention, it should be understood that the disclosed devices and methods can be implemented in other ways. For example, the device embodiments described above are merely illustrative. For example, the division of each unit is only a logical function division, and there can be other division methods in actual implementation. For example, multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed.

[0076] The steps in the method embodiments of the present invention can be adjusted, combined, and deleted according to actual needs. The units in the device embodiments of the present invention can be combined, divided, and deleted according to actual needs. In addition, the functional units in each embodiment of the present invention can be integrated into a processing unit, or each unit can exist physically alone, or two or more units can be integrated into one unit.

[0077] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a storage medium. Based on this understanding, the technical solution of the present invention, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. The computer software product is stored in a storage medium and includes several instructions for causing a computer device (which can be a personal computer, a terminal, or a network device, etc.) to execute all or part of the steps of the methods described in each embodiment of the present invention.

Claims

1. A scheduling method for a distribution robot, characterized in that, Applied to a logistics system, the method includes: Obtaining coordinate data of a storage space and position information of each robot, calculating the delivery time corresponding to each robot executing the delivery tasks in the task priority table according to Dijkstra's algorithm and a pre-built task priority table, and establishing a time matrix table based on the delivery tasks and the delivery time; Determining a target robot for the delivery task according to a preset scheduling strategy and the time matrix table, and sending the delivery task to the target robot.

2. The method according to claim 1, wherein The determining a target robot for the delivery task according to a preset scheduling strategy and the time matrix table, and sending the delivery task to the target robot includes: Judging whether there is a top-level task in the time matrix table; If there is the top-level task, obtaining the robot corresponding to the shortest delivery time of the top-level task as the target robot, and preferentially delivering the top-level task.

3. The method according to claim 2, wherein The judging whether there is a top-level task in the time matrix table includes: Judging the magnitude relationship between the tolerance time of each delivery task and a preset time; If the tolerance time is less than or equal to the preset time, the corresponding delivery task is the top-level task.

4. The method according to claim 1, wherein The determining a target robot for the delivery task according to a preset scheduling strategy and the time matrix table, and sending the delivery task to the target robot includes: Judging whether there is an idle robot among all the robots; If there is, screening the target task with the shortest delivery time corresponding to each idle robot according to the time matrix table, and sending the target task to the corresponding idle robot.

5. The method according to claim 1, wherein The obtaining coordinate data of a storage space and position information of each robot, calculating the delivery time corresponding to each robot executing the delivery tasks in the task priority table according to Dijkstra's algorithm and a pre-built task priority table, and establishing a time matrix table based on the delivery tasks and the delivery time includes: Calculating the shortest path distance D from each robot to each delivery task, and the formula is D = D1 + D2 + D3, where D1 is the distance from the current position of the robot to the end point of the current task; D2 is the distance from the end point of the current task to the start point of the next delivery task; D3 is the distance from the start point to the end point of the delivery task; Calculating the delivery time T1 = D / V * α, where V is the moving speed of the robot and α is a correction coefficient.

6. The method according to claim 1, wherein The obtaining coordinate data of a storage space and position information of each robot, calculating the delivery time corresponding to each robot executing the delivery tasks in the task priority table according to Dijkstra's algorithm and a pre-built task priority table, and establishing a time matrix table based on the delivery tasks and the delivery time includes: Calculate the tolerance time T for each delivery task. The formula is T = T target - T task - T current - T0, where T target is the target completion time, T task is the duration required to execute the task, T current is the current time, and T0 is the error time; Updating the task priority table according to the tolerance time and the priority adjustment rule.

7. The method according to claim 6, wherein The updating the task priority table according to the tolerance time and the priority adjustment rule includes: If the priorities of multiple delivery tasks are the same, sorting according to the magnitude of the tolerance time, and the smaller the tolerance time, the higher the sorting; If the priorities and the tolerance times of multiple delivery tasks are all the same, the tasks are sorted according to the task numbers or the task creation times.

8. A scheduling device for a delivery robot, characterized in that, It includes a unit for executing the method according to any one of claims 1-7.

9. A computer device, characterized in that, The computer device includes a memory and a processor. A computer program is stored on the memory. When the processor executes the computer program, the method according to any one of claims 1-7 is implemented.

10. A storage medium, characterized in that, The storage medium stores a computer program, and the computer program includes program instructions. When the program instructions are executed by a processor, the method according to any one of claims 1-7 can be implemented.

Citation Information

Patent Citations

  • Robot distribution task scheduling method and system

    CN112183932A

  • Robot delivery method and device, storage medium and electronic equipment

    CN113011820A

  • Multi-AGV task scheduling method based on double-layer strategy

    CN114692939A

  • Robot task scheduling method for improving population initialization strategy and related device

    CN116663819A

  • Distribution robot scheduling method, distribution equipment and storage medium

    CN117893110A

Cited By

  • Robot scheduling method and device, electronic equipment and storage medium

    CN122412076A