Robot delivery method, delivery system and computer program product

By combining robot path information in a multi-robot multi-order delivery system, the distribution path of target robots is solved, and the distribution safety and efficiency are improved.

CN119882725APending Publication Date: 2025-04-25YOUDI ROBOT (WUXI) CO LTD
View PDF 6 Cites 0 Cited by

Patent Information

Application Number
CN202411910825.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-23
Publication Date
2025-04-25

AI Technical Summary

Technical Problem

In the process of multi-robot delivery, robot path planning mainly focuses on the efficiency of a single robot, ignoring global path optimization, resulting in multiple robots passing through similar path points at the same time or in a similar time period, resulting in path conflicts, affecting delivery security.

Method used

Through the scheduling system combining the path information of each robot, the initial path of the target robot delivery order is optimized to ensure that the path planning takes into account a global perspective and avoids path conflicts and congestion. The specific steps include: allocating task orders based on order information and robot status, determining the delivery destination and planning the initial path, and optimizing the initial path based on the path information of the non-target robot.

Benefits of technology

Through global path optimization, multiple robots are avoided for space resources in complex environments, path conflicts and congestion are reduced, and safety and efficiency in robot distribution process are improved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119882725A_ABST
    Figure CN119882725A_ABST
Patent Text Reader

Abstract

The invention discloses a robot delivery method and system and a computer program product, and relates to the technical field of robots, and the method comprises the steps: a scheduling system carries out the delivery of a to-be-delivered order based on the order information of each to-be-delivered order and the robot operation state of each robot; allocating each order to be delivered to each robot to obtain a respective task order of each robot, determining a delivery destination of the task order of any target robot in each robot, and performing path planning based on the delivery destination and the current position of the target robot to obtain an initial path, optimizing the initial path based on the path information of the non-target robot to obtain a distribution path of the target robot; and the target robot distributes the corresponding task order according to the distribution path. According to the invention, path planning is carried out in combination with a global perspective, so that the safety of the robot in a delivery process can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of robotics technology, and in particular to a robotic delivery method, a delivery system, and a computer program product. Background Art

[0002] With the continuous advancement and innovation of science and technology, the multi-robot multi-order delivery model has gradually shown great potential in delivery services. Multi-robot multi-order delivery provides efficient and high-quality delivery services by utilizing automation technology, precise path planning algorithms and efficient real-time data processing capabilities. However, in actual application, when planning the path, the multi-robot system mainly focuses on optimizing the driving path of a single robot, striving to achieve the most efficient operation of the individual robot. Although this single-perspective planning method has improved the delivery efficiency of a single robot to a certain extent, it ignores the global path optimization, resulting in multiple robots in a complex delivery environment. Passing similar path points at the same time or in a similar time period, resulting in path conflicts between robots, affecting the safety of the robots during the delivery process.

[0003] The above contents are only used to assist in understanding the technical solution of the present application and do not constitute an admission that the above contents are prior art. Summary of the invention

[0004] The main purpose of this application is to provide a robot delivery method, a delivery system and a computer program product, aiming to solve the technical problem that the safety of robots is affected during the delivery of multiple orders by multiple robots.

[0005] To achieve the above objectives, the present application proposes a robot delivery method, which is applied to a scheduling system and includes:

[0006] Based on the order information of each order to be delivered and the robot operation status of each robot, each order to be delivered is assigned to each robot to obtain a task order of each robot;

[0007] For any target robot among the robots, determining a delivery destination of the task order of the target robot, and performing path planning based on the delivery destination and the current position of the target robot to obtain an initial path;

[0008] The initial path is optimized based on the path information of the non-target robot to obtain the delivery path of the target robot, wherein the target robot delivers the target order according to the delivery path, the target order is the task order of the target robot, and the non-target robot is a robot among the robots except the target robot.

[0009] In one embodiment, the step of allocating each of the orders to be delivered to each of the robots based on the order information of each of the orders to be delivered and the robot operation status of each of the robots to obtain a task order for each of the robots includes:

[0010] Constructing a cost matrix based on the order information of each order to be delivered and the robot operation status of each robot, wherein each element in the cost matrix represents the resource consumption cost of the robot delivering the order to be delivered;

[0011] Each of the orders to be delivered is allocated to each of the robots based on a preset optimization algorithm and the cost matrix.

[0012] In one embodiment, before the step of constructing a cost matrix based on the order information of each order to be delivered and the robot operation status of each robot, the step further includes:

[0013] Detecting whether there is an urgent order among the orders to be delivered;

[0014] If the urgent order does not exist, the step of constructing a cost matrix based on the order information of each order to be delivered and the robot operating status of each robot and subsequent steps are executed.

[0015] In one embodiment, after the step of detecting whether there is an urgent order in the orders to be delivered, the method further includes:

[0016] If the urgent order exists in the orders to be delivered, traverse each of the robots, perform path planning based on the urgent delivery destination corresponding to the urgent order and the current position of the robot, and obtain the delivery time of the robot;

[0017] Determine the short-distance robot with the shortest delivery time from among the robots, assign the urgent order to the short-distance robot, and perform path planning based on the delivery destination of the urgent order and the current position of the short-distance robot to obtain an urgent delivery path, wherein the short-distance robot delivers the urgent order according to the urgent delivery path;

[0018] Based on the order information of non-urgent orders and the operating status of each of the robots, each of the non-urgent orders is assigned to each of the robots to obtain a task order for each of the robots, wherein the non-urgent orders are orders among the orders to be delivered except the urgent orders.

[0019] In one embodiment, after the step of optimizing the initial path based on the path information of the non-target robot to obtain the delivery path of the target robot, the method further includes:

[0020] If the target robot has an operation fault, then based on the fault location information of the target robot when the operation fault occurs, the order information of the robot order is updated to obtain a reallocated order, wherein the robot order is an order delivered by the robot;

[0021] Determining a redistribution robot for delivering the reallocated order from among the non-target robots based on the order information of the reallocated order and the robot operation status of each of the non-target robots;

[0022] Based on the order information of the reallocated order and the environmental position of the reallocation robot, path planning is performed on the reallocation robot to obtain a target path, wherein the reallocation robot delivers the reallocation order according to the target path.

[0023] In one embodiment, after the step of optimizing the initial path based on the path information of the non-target robot to obtain the delivery path of the target robot, the method further includes:

[0024] Acquire environmental information of the operating environment of the target robot;

[0025] If it is detected based on the environmental information that there is an environmental obstacle on the delivery path of the target robot, the delivery path is optimized based on the environmental obstacle position of the environmental obstacle to obtain an optimized path, wherein the target robot delivers the target order according to the optimized path.

[0026] To achieve the above objectives, the present application proposes a robot delivery method, which is applied to any target robot among various robots, and includes:

[0027] Receiving the target order and delivery path sent by the scheduling system in the robot delivery method described above;

[0028] The target order is delivered according to the delivery route.

[0029] In one embodiment, if an environmental obstacle is detected, detecting whether the operational fault is a movement obstacle;

[0030] If the operation fault is not the movement obstacle, the environmental obstacle is sent to the dispatching system, and the obstacle avoidance path returned by the dispatching system is received, and the task order is delivered according to the obstacle avoidance path, wherein the dispatching system optimizes the delivery path based on the environmental obstacle position of the environmental obstacle to obtain the optimized path;

[0031] If the environmental obstacle is the mobile obstacle, obstacle avoidance processing is performed based on the obstacle type of the environmental obstacle, and after the environmental obstacle no longer exists, the target order is delivered according to the delivery path.

[0032] In addition, to achieve the above purpose, the present application also proposes a distribution system, which includes:

[0033] A dispatching system in a robotic delivery method as described above;

[0034] The target robot in the robot delivery method as described above.

[0035] In addition, to achieve the above-mentioned objectives, the present application also provides a computer program product, which includes a computer program, and when the computer program is executed by a processor, it implements the steps of the robot delivery method described above.

[0036] In the present application, the scheduling system allocates each order to be delivered to each robot based on the order information of each order to be delivered and the robot operating status of each robot to obtain the respective task orders of each robot. By reasonably allocating each order to be delivered to each robot, it is ensured that each robot can obtain the order to be delivered that matches its status and capability, thereby avoiding excessive loading of the robot and improving the operating safety of the robot.

[0037] For any target robot among the robots, the delivery destination of the task order of the target robot is determined, and the path planning is performed based on the delivery destination and the current position of the target robot to obtain the initial path; the initial path is optimized based on the path information of the non-target robot to obtain the delivery path of the target robot, wherein the target robot delivers the target order according to the delivery path. By optimizing the initial path of the target robot's delivery order in combination with the path information of each robot through the scheduling system, it is possible to implement path planning in combination with a global perspective in the path planning stage, avoiding the situation in which multiple robots compete for the same space resources at the same time or in a similar time period in a complex delivery environment, thereby avoiding path conflicts and congestion in the delivery process of each robot, and improving the safety of the robot delivery process. BRIEF DESCRIPTION OF THE DRAWINGS

[0038] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present application and, together with the description, serve to explain the principles of the present application.

[0039] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, for ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.

[0040] Figure 1 A schematic diagram of a flow chart provided for the first embodiment of the robot delivery method of the present application;

[0041] Figure 2 A schematic diagram of the flow chart provided for the second embodiment of the robot delivery method of the present application;

[0042] Figure 3 A timing diagram of a robot delivery method provided in one embodiment of the present application;

[0043] Figure 4 This is a schematic diagram of the structure of the distribution system involved in the embodiment of the present application;

[0044] Figure 5 This is a schematic diagram of the equipment structure of the hardware operating environment involved in the robot delivery method in the embodiment of the present application.

[0045] The purpose, features and advantages of this application will be further described in conjunction with the embodiments and with reference to the accompanying drawings. DETAILED DESCRIPTION

[0046] It should be understood that the specific embodiments described herein are only used to explain the technical solutions of the present application and are not used to limit the present application.

[0047] In order to better understand the technical solution of the present application, a detailed description will be given below in conjunction with the accompanying drawings and specific implementation methods.

[0048] The main solution of the embodiment of the present application is: the scheduling system allocates each order to be delivered to each robot based on the order information of each order to be delivered and the robot operation status of each robot to obtain the task order of each robot; for any target robot among each robot, the delivery destination of the target robot's task order is determined, and the path planning is performed based on the delivery destination and the current position of the target robot to obtain the initial path; the initial path is optimized based on the path information of the non-target robot to obtain the delivery path of the target robot, wherein the target robot delivers the target order according to the delivery path, the target order is the task order of the target robot, and the non-target robot is the robot among each robot except the target robot.

[0049] In actual applications, when planning paths, multi-robot systems mainly focus on optimizing the driving path of a single robot, striving to achieve the most efficient operation of individual robots. Although this single-perspective planning method improves the delivery efficiency of a single robot to a certain extent, it ignores the global path optimization. As a result, in a complex delivery environment, multiple robots may pass through detailed path points at the same time or in a similar time period, resulting in path conflicts between robots, affecting the safety of the robots during the delivery process.

[0050] The present application provides a solution, which optimizes the initial path of the target robot to deliver the order by combining the path information of each robot with the scheduling system. It can realize path planning with a global perspective in the path planning stage, and avoid the situation where multiple robots compete for the same space resources at the same time or in a similar time period in a complex delivery environment, thereby avoiding path conflicts and congestion in the delivery process of each robot and improving the safety of the robot delivery process.

[0051] It should be noted that the execution subject of this embodiment can be a computing service device with data processing, network communication and program running functions, such as a tablet computer, a personal computer, a mobile phone, etc., or an electronic device capable of realizing the above functions, etc. The following takes the scheduling system as the execution subject to describe this embodiment and the following embodiments.

[0052] Based on this, the present application embodiment provides a robot delivery method, referring to Figure 1 , Figure 1 This is a flow chart of the first embodiment of the robot delivery method of the present application.

[0053] In this embodiment, the robot delivery method includes steps S10 to S30:

[0054] Step S10, based on the order information of each order to be delivered and the robot operation status of each robot, each order to be delivered is assigned to each robot to obtain a task order for each robot;

[0055] It should be noted that the delivery order is an order that needs to be delivered. The order information of the delivery order includes at least the order location information representing the delivery destination and the delivery starting point, and may also include the order content, order priority, recipient information, etc., so as to allocate the order based on the order information. Among them, the delivery starting points of different orders in the same place can be the same or different, and the delivery destinations of different orders in the same place can be the same or different, and there is no restriction here. For example, for places that allow guests to purchase items outside, the robot can deliver items held inside the place, and can also deliver items purchased by guests from outside the place. The items in the place can be delivered from the kitchen, laundry room and other locations in the place, and the items outside the place can be delivered from the lobby, that is, there are different delivery starting points in the same place.

[0056] The running status of the robot includes at least load information characterizing the load status of the robot and task information characterizing the current task execution status of the robot. The load information may include information such as the robot's power level and accumulated running time. The task information may include information such as whether the robot is currently performing a task, task progress, and estimated task completion time. The load information and task information in the running status can reflect whether the robot can currently perform the task and how many delivery tasks it can perform. Therefore, the strategy for allocating orders to the robot can be determined based on the running status and order information.

[0057] In this embodiment, the orders to be delivered that each robot needs to execute are called the task orders of the robots. In an order allocation process, each robot may be allocated to at least one task order, or some of the robots may be allocated to task orders. The specific determination may be based on the running status of the robots. For example, in a feasible implementation, before allocating the orders to be delivered based on the order information and the running status, robots whose running statuses meet the preset conditions may be determined from the robots as candidate robots. Then, the orders are allocated based on the running status of the candidate robots and the order information to obtain the task orders of the candidate robots, so that the candidate robots can execute the current order delivery task based on the candidate robots in the subsequent process. The preset conditions include: the current load of the robot is less than the preset load and the current task volume of the robot is less than the preset task volume. It should be noted that the method of judging whether the current load of the robot is less than the preset load and judging whether the current task volume of the robot is less than the preset task volume is not limited here. Specifically, the judgment may be made based on the indicator representing the current load and the indicator representing the current task volume. For example, when the power of the robot is greater than the preset power threshold, it may be determined that the current load of the robot is less than the preset load.

[0058] It is understandable that the process of making order allocation decisions based on the operating status of the robot and the order information of the order to be delivered is not limited here and can be set according to actual needs. For example, in one feasible implementation, each order to be delivered can be traversed, the resource consumption cost of each robot delivering the order to be delivered can be determined, and the order to be delivered can be allocated to the robot with the lowest resource consumption cost among the robots; for example, in another feasible implementation, the order allocation decision can be made based on an optimization algorithm such as a greedy strategy, a heuristic algorithm, or a hybrid strategy, which is not limited here.

[0059] Step S20, for any target robot among the robots, determining a delivery destination of the task order of the target robot, and performing path planning based on the delivery destination and the current position of the target robot to obtain an initial path;

[0060] After obtaining the task orders of each robot, traverse each robot and call the currently traversed robot the target robot. Determine the delivery destination based on the order information of the target robot's task order, and perform path planning with the delivery destination as the end point and the current position of the target robot as the starting point to obtain the initial path.

[0061] It should be noted that the current position of the target robot may or may not coincide with the delivery starting point of the task order. In one feasible implementation, if the current position coincides with the delivery starting point, path planning is performed with the delivery destination as the end point and the current position of the target robot as the starting point; if the current position does not coincide with the delivery starting point, path planning is performed with the delivery destination as the end point, the current position as the starting point, and the delivery starting point as the waypoint to obtain the initial path.

[0062] Step S30, optimizing the initial path based on the path information of the non-target robot to obtain the delivery path of the target robot, wherein the target robot delivers the target order according to the delivery path, the target order is the task order of the target robot, and the non-target robot is a robot among the robots except the target robot.

[0063] In this embodiment, the robots other than the target robot are called non-target robots. The initial path is optimized in combination with the path information of each non-target robot to obtain a delivery path, so as to avoid conflicts or congestion between the target robot and other robots when performing tasks. Among them, the path information of the non-target robot is used to characterize the running path of the non-target robot in the process of the target robot delivering the task order. Based on the path information of the non-target robot and the initial path of the target robot, it can be determined whether there is a conflict between the running paths of the target robot and other robots in the process of delivering the target order. It should be noted that since the delivery tasks of each robot are different and the delivery time may be different, the path information of the non-target robot may be the complete initial path corresponding to the non-target robot, or the partial initial path corresponding to the non-target robot, or the running path of the robot that is not assigned to the task order in the current order allocation, which is not limited here.

[0064] The process of optimizing the initial path is not limited in this embodiment and can be set according to actual needs. For example, in a feasible implementation, the path of the target robot can be locally adjusted according to the path information of the non-target robot and the dynamic environment change, such as the artificial potential field method, the dynamic window method, etc. For example, in a feasible implementation, it can also be established during the operation of each robot. The information sharing mechanism between multiple robots enables each robot to obtain the path information of other robots in real time, and then perform collaborative planning based on the real-time path information. Exemplarily, in a feasible implementation, the path optimization can be performed based on the time window, and a time window is set for each task order. The time window is used to characterize that the task order needs to be delivered within a certain time period. According to the speed and path length of the target robot, the first estimated arrival time of the target robot to the preset path node (such as a road junction, intersection, etc.) is calculated; for any non-target robot among the non-target robots, the second estimated arrival time of the non-target robot to the preset path node is determined based on the path information; if the first estimated arrival time is consistent with the second estimated arrival time, it is determined that the non-target robot and the target robot conflict at the preset path node, and the preset path node is used as an obstacle point to adjust the initial path to obtain the delivery path.

[0065] The target robot receives the delivery path and target order (i.e., the task order of the target robot) sent by the scheduling system, and runs according to the delivery path to deliver the target order.

[0066] It should be noted that, in the current order allocation, the target robot may or may not have a task to execute. In a feasible implementation, a path obtained by path planning with the delivery destination as the end point and the current position of the target robot as the starting point is determined as a candidate path, that is, a path planning is performed with the delivery destination as the end point and the current position of the target robot as the starting point to obtain a candidate path, and then based on the running state of the target robot, it is determined whether the target robot currently has a delivery task in execution. If there is a delivery task in execution, it is detected whether the task path corresponding to the delivery task in execution coincides with the candidate path. If the task path coincides with the candidate path, the candidate path is used as the initial path; if the task path does not coincide with the candidate path, it is detected whether the destination of the delivery task in execution (hereinafter referred to as the task destination for distinction) is on the candidate path. If the task destination is on the candidate path, the initial path is obtained by path planning with the delivery destination as the end point, the current position of the target robot as the starting point, and the task destination as the waypoint. If the task destination is not on the candidate path, the candidate path is used as the initial path, and after the delivery task in execution is completed, the target order is delivered.

[0067] In this embodiment, the scheduling system allocates each order to be delivered to each robot based on the order information of each order to be delivered and the robot operation status of each robot to obtain the task order of each robot. By reasonably allocating each order to be delivered to each robot, it is ensured that each robot can obtain the order to be delivered that matches its status and capabilities, thereby avoiding excessive load on the robot and improving the operation safety of the robot. Then, the scheduling system optimizes the initial path of the target robot delivery order in combination with the path information of each robot, so that path planning can be combined with a global perspective in the path planning stage, avoiding the situation where multiple robots compete for the same space resources at the same time or in a similar time period in a complex delivery environment, thereby avoiding path conflicts and congestion in the delivery process of each robot and improving the safety of the robot delivery process.

[0068] Based on the first embodiment of the present application, in the second embodiment of the present application, the same or similar contents as those in the above-mentioned embodiment 1 can be referred to the above introduction, and will not be repeated in the following. Figure 2 The step S10: based on the order information of each order to be delivered and the robot operation status of each robot, the step of allocating each order to be delivered to each robot to obtain the task order of each robot includes steps S101 to S102:

[0069] Step S101, constructing a cost matrix based on the order information of each order to be delivered and the robot operation status of each robot, wherein each element in the cost matrix represents the resource consumption cost of the robot delivering the order to be delivered;

[0070] A cost function is constructed based on order information and operating status. The cost function is used to calculate the cost of the robot delivering orders. Each robot is traversed, and the cost value of the robot delivering each order to be delivered is calculated based on the cost function. A two-dimensional array is constructed based on the cost values ​​corresponding to each robot to obtain a cost matrix, wherein the cost matrix is ​​constructed with the robot as the row attribute and the order to be delivered as the column attribute, or alternatively, the robot as the column attribute and the order to be delivered as the row attribute. The elements in the cost matrix represent the resource consumption cost of the robot delivering the order to be delivered.

[0071] In this embodiment, there is no restriction on the way of constructing the cost function, which can be set according to actual needs. For example, a comprehensive cost function based on delivery distance, time and energy consumption can be constructed: C(i,j)=α*D(i,j)+β*T(i,j)+γ*E(i,j), wherein C(i,j) represents the cost of robot j delivering order i to be delivered, D(i,j) represents the straight-line distance from the current position of robot j to the starting delivery position of order i to be delivered, T(i,j) represents the time required for robot j to deliver order i to be delivered, which can be calculated based on factors such as the robot's delivery speed and delivery distance, E(i,j) represents the energy consumption required for robot j to deliver order i to be delivered, which can be calculated based on the robot's power factor, α, β, γ are weight coefficients used to adjust the proportion of different cost factors in the total cost, and the weight coefficients can be set and adjusted according to actual needs.

[0072] Step S102, allocating each of the to-be-delivered orders to each of the robots based on a preset optimization algorithm and the cost matrix.

[0073] It should be noted that the preset optimization algorithm is used for order allocation to minimize the overall cost of delivery by each robot. The specific algorithm may be an ant colony algorithm, a genetic algorithm, a simulated annealing algorithm, etc., which is not limited here and can be set according to actual needs.

[0074] Specifically, the cost matrix is ​​input into a preset optimization algorithm, and the initial parameters of the preset optimization algorithm are set (such as initializing the population or the solution space), the optimization algorithm is run to obtain multiple order allocation plans, the total cost of each order allocation plan is determined, and the order allocation plan with the lowest total cost is crossover or mutated to generate a new order allocation plan, and the steps of determining the total cost of each order allocation plan and crossover or mutating the order allocation plan with the lowest total cost to generate a new order allocation plan are repeated until the number of iterations reaches a preset number, and the optimal order allocation plan is obtained, and each of the orders to be delivered is allocated to each of the robots according to the optimal order allocation plan.

[0075] It can be understood that compared to traversing each delivery order and allocating the delivery order to the robot with the lowest resource consumption cost among each robot, this embodiment uses an optimization algorithm to perform order allocation, which can more comprehensively consider the overall resource consumption of order delivery and avoid falling into a local optimal situation, thereby minimizing the overall delivery cost.

[0076] In one feasible implementation, since the optimization algorithm process is complex and requires a lot of time and computing resources, when the number of orders to be delivered is small, the efficiency and resource utilization of order allocation using the optimization algorithm are low. Therefore, before allocating each of the orders to be delivered to each of the robots based on the preset optimization algorithm and the cost matrix, it is possible to detect whether the order quantity of the orders to be delivered is greater than the preset quantity. If the order quantity is greater than the preset quantity, then each of the orders to be delivered is traversed, and based on the cost matrix, the delivery robot with the lowest resource consumption cost for delivering the orders to be delivered is determined from each of the robots, and the orders to be delivered are allocated to the delivery robots; if the order quantity is less than or equal to the preset quantity, then each of the orders to be delivered is allocated to each of the robots based on the preset optimization algorithm and the cost matrix.

[0077] In a feasible implementation manner, before the step S102 of constructing a cost matrix based on the order information of each order to be delivered and the robot operation status of each robot, the step further includes:

[0078] Step S103, detecting whether there is an urgent order among the orders to be delivered;

[0079] It should be noted that urgent orders are orders with tight delivery time and high delivery item priority. For example, drug delivery orders are generally urgent. By detecting whether there are urgent orders in the orders to be delivered, it is determined whether it is necessary to enter the urgent delivery process, providing a basis for subsequent order allocation.

[0080] Step S104: if the urgent order does not exist, execute the step of constructing a cost matrix based on the order information of each order to be delivered and the robot operation status of each robot and subsequent steps.

[0081] If there is no urgent order in the orders to be delivered, a cost matrix is ​​constructed based on the order information of each order to be delivered and the robot operation status of each robot, and the order is allocated according to the cost matrix, and subsequent path planning is performed according to the order allocation result. It can be understood that by detecting whether there is an urgent order before order allocation, it is possible to perform flexible and efficient processing when facing urgent orders, thereby improving the efficiency of order allocation.

[0082] In a feasible implementation manner, after the step S103: detecting whether there is an urgent order in the orders to be delivered, the method further includes:

[0083] Step S105, if the urgent order exists in the orders to be delivered, traverse each of the robots, perform path planning based on the urgent delivery destination corresponding to the urgent order and the current position of the robot, and obtain the delivery time of the robot;

[0084] When an urgent order is detected, all available robots are traversed and the robot plans the shortest path from the current location to the urgent order delivery destination. Based on the length of the shortest path and the robot's moving speed, the system calculates the time required for the robot to complete the delivery.

[0085] Step S106, determining a short-distance robot with the shortest delivery time from among the robots, assigning the urgent order to the short-distance robot, and performing path planning based on the delivery destination of the urgent order and the current position of the short-distance robot to obtain an urgent delivery path, wherein the short-distance robot delivers the urgent order according to the urgent delivery path;

[0086] The robot with the shortest delivery time is selected from each robot as the short-distance robot, and the urgent order is assigned to this short-distance robot. After the urgent order is assigned, the dispatching system uses the delivery destination of the urgent order and the current position of the short-distance robot to perform path planning to obtain the delivery path of the urgent order (hereinafter referred to as the urgent delivery path for distinction), and sends the urgent order and the urgent delivery path to the short-distance robot, which delivers the urgent order according to the urgent delivery path.

[0087] It can be understood that by assigning urgent orders to the robot with the shortest delivery time, it can ensure that urgent orders are delivered as quickly as possible, reduce delivery delays for urgent orders, and enhance the emergency handling capabilities of robot delivery.

[0088] Step S107, based on the order information of non-urgent orders and the operating status of each of the robots, each of the non-urgent orders is assigned to each of the robots to obtain a task order for each of the robots, wherein the non-urgent orders are orders among the orders to be delivered except the urgent orders.

[0089] The orders other than urgent orders in the orders to be delivered are called non-urgent orders. After the urgent orders are assigned, the non-urgent orders are assigned. The specific order assignment process is not described in detail here, and the embodiment described above can be referred to. It should be noted that when assigning non-urgent orders, each robot can be used as a robot to perform the task, or robots other than short-range robots can be used as robots to perform the task, that is, non-urgent orders can be assigned to each robot, or non-urgent orders can be assigned to machines other than short-range robots. The specific settings can be made according to actual needs and are not limited here.

[0090] In a feasible implementation manner, after the step S30: optimizing the initial path based on the path information of the non-target robot to obtain the delivery path of the target robot, the method further includes:

[0091] Step S40, if the target robot has an operation fault, then based on the fault location information of the target robot when the operation fault occurs, the order information of the robot order is updated to obtain a reallocated order, wherein the robot order is an order delivered by the robot;

[0092] The target robot may have an operational failure during the delivery process, and the operational failure is sent to the dispatching system. The dispatching system reallocates the target robot's orders based on the operational failure. It should be noted that the operational failure refers to a failure in the robot's own operation, such as a program failure, power shortage, etc. The location information of the target robot when the operational failure occurs is called the fault location information. The robot order is the order delivered by the target robot, which at least includes the target order assigned to the target robot in the current order allocation, and may include other orders that the robot is executing. There is no restriction here. The fault location information is used as the location information of the delivery starting point to update the order information of the robot order to obtain the reallocated order, that is, the reallocated order is the order that the target robot encounters an operational failure and cannot continue to deliver, and needs to be reallocated to other robots for delivery. It can be understood that by timely updating the order information and marking it as a reallocated order, it is possible to respond quickly to the operational failure, ensure that the order will not be lost or delayed due to the robot failure, and improve the reliability of robot delivery.

[0093] In one feasible implementation, the target robot may have no orders being executed or may have orders being executed when an operational failure occurs. Before updating the order information of the robot order to obtain a reallocated order based on the fault location information of the target robot when the operational failure occurs, it is detected whether there is a robot order for the target robot. If so, then based on the fault location information of the target robot when the operational failure occurs, the order information of the robot order is updated to obtain a reallocated order.

[0094] Step S50, determining a redistribution robot for delivering the redistribution order from among the non-target robots based on the order information of the redistribution order and the robot operation status of each of the non-target robots;

[0095] Based on the order information of the reallocated order and the operating status of each non-target robot, the most suitable reallocation robot is determined from the remaining non-target robots to perform the delivery task of the reallocated order. The specific order allocation process will not be described here, and you can refer to the aforementioned order allocation processing process.

[0096] Step S60, based on the order information of the redistribution order and the environmental position of the redistribution robot, path planning is performed on the redistribution robot to obtain a target path, wherein the redistribution robot distributes the redistribution order according to the target path.

[0097] According to the order information of the reallocated order and the environmental position of the delivery robot, the redistribution robot is path-planned to obtain the target path, and then the redistribution robot performs the delivery task according to the planned target path. The specific process of path planning is not described here, and the aforementioned path planning process can be referred to. It can be understood that by reallocating the orders of robots with operating obstacles, it is possible to avoid the failure of robot failure to deliver orders and improve the efficiency of robot delivery.

[0098] In a feasible implementation manner, after the step of optimizing the initial path based on the path information of the non-target robot to obtain the delivery path of the target robot, the method further includes:

[0099] Step S70, obtaining environmental information of the operating environment of the target robot;

[0100] During operation, the target robot can collect environmental information in the operating environment through the sensors it carries and report the environmental information to the scheduling system. The scheduling system can perform obstacle detection and obstacle avoidance based on the environmental information.

[0101] It should be noted that the operating environment is the environment formed by the target robot as the center and the preset distance as the radius during the process of the target robot delivering orders according to the delivery path. The preset distance can be set according to actual needs and is not limited here. Environmental information is used to characterize static entities, dynamic entities, and the relationship between static entities and dynamic entities in the operating environment. For example, static entities can be objects such as walls and furniture that are relatively still or cannot move freely in the operating environment, and dynamic entities can be pedestrians, other non-target robots in operation, and other entities that can move freely in the operating environment. It should be noted that the delivery paths of each robot may be the same or different, so the operating environment and environmental information of each robot may be the same or different. In addition, as the target robot runs, the operating environment and environmental information change accordingly.

[0102] Step S80: If it is detected based on the environmental information that there is an environmental obstacle on the delivery path of the target robot, the delivery path is optimized based on the environmental obstacle position of the environmental obstacle to obtain an optimized path, wherein the target robot delivers the target order according to the optimized path.

[0103] Based on the environmental information, it is detected whether there are any obstacles that cannot be passed on the delivery path of the target robot, which are hereinafter referred to as environmental obstacles for distinction. The specific detection process is not limited here, and the conventional obstacle detection process can be referred to. If there are environmental obstacles, the path is optimized based on the location of the environmental obstacle (hereinafter referred to as the location of the environmental obstacle for distinction) and the delivery path, and the optimized path obtained after optimization is used as the path for the target robot to deliver the order.

[0104] It can be understood that by real-time identification of obstacles during the operation of the target robot and dynamic adjustment of the path based on the obstacles, the robot can avoid failures and delays caused by collisions with obstacles, ensuring that orders can be delivered on time and safely, and improving the safety and efficiency of robot delivery.

[0105] Based on the first embodiment of the present application, in the first and / or second embodiments of the present application, the same or similar contents as those in the first and / or second embodiments can be referred to the above description, and will not be described in detail later. On this basis, the third embodiment of the robot delivery method proposed in this embodiment, in which the execution subject is any target robot among the robots, the robot delivery method includes steps A10 to A20:

[0106] Step A10, receiving the target order and delivery path sent by the scheduling system in the robot delivery method in the above embodiment;

[0107] In this embodiment, the scheduling system allocates each order to be delivered to each robot based on the order information of each order to be delivered and the robot operating status of each robot to obtain the respective task orders of each robot, determines the delivery destination of the task order of the target robot, performs path planning based on the delivery destination and the current position of the target robot to obtain an initial path, and optimizes the initial path based on the path information of the non-target robot to obtain the delivery path of the target robot. The specific order allocation and path planning processes can refer to the first and second embodiments and will not be repeated here.

[0108] The target robot dispatches the delivery path and target order sent by the system for order delivery.

[0109] Step A20: delivering the target order according to the delivery route.

[0110] After receiving the delivery path and the target order, the target robot delivers the target order according to the delivery path.

[0111] In a feasible implementation, the target robot may encounter environmental obstacles during operation, which may cause the order delivery to be unable to proceed according to the original route. During operation, the target robot can collect environmental information in the operating environment through the sensors it carries, so as to perform obstacle detection and obstacle avoidance processing based on the environmental information. In a specific implementation, the obstacle avoidance process can be divided into three processes: obstacle detection, generation of obstacle avoidance scheme, and obstacle avoidance processing. Obstacle detection can be processed by the scheduling system or the target robot, and generation of obstacle avoidance scheme can also be processed by the scheduling system or the target robot. There is no limitation here, and it can be set according to actual needs. Exemplarily, in a feasible implementation, the target robot may report environmental information to the scheduling system, and the scheduling system may perform obstacle detection and generate obstacle avoidance scheme based on the environmental information. The target robot receives the obstacle avoidance scheme and performs obstacle avoidance processing. The specific obstacle detection and obstacle avoidance processing process is not described in detail here; Exemplarily, in another feasible implementation, the robot may perform obstacle detection and generate obstacle avoidance scheme based on environmental information, and perform obstacle avoidance processing.

[0112] In one feasible implementation, when an operational failure occurs in a target robot, the operational failure can be sent to a scheduling system, and the scheduling system reallocates orders for the target robot based on the operational failure. The specific process is not described in detail here.

[0113] In a feasible implementation manner, after the step A20: delivering the target order according to the delivery path, the step further includes:

[0114] Step A30, if an environmental obstacle is detected in the operating environment of the target robot, detecting whether the environmental obstacle is a mobile obstacle;

[0115] It should be noted that the operating environment is the environment formed with the target robot as the center and a preset distance as the radius during the process of the target robot delivering orders according to the delivery path. The environmental information of the operating environment is collected, and whether there are environmental obstacles is detected based on the environmental information.

[0116] If an environmental obstacle is detected, it is detected whether the environmental obstacle is a mobile obstacle. The specific method of detecting whether the environmental obstacle is a mobile obstacle is not limited here, for example, it can be identified by a target detection algorithm or the like.

[0117] Step A40: if the environmental obstacle is not the mobility obstacle, the environmental obstacle is sent to the dispatching system, and the optimized path returned by the dispatching system is received, and the target order is delivered according to the optimized path, wherein the dispatching system optimizes the delivery path based on the environmental obstacle position of the environmental obstacle to obtain the optimized path;

[0118] If the environmental obstacle is not a mobile obstacle, in order to ensure the normal execution of order delivery, the environmental obstacle is sent to the scheduling system. The scheduling system optimizes the delivery path based on the environmental obstacle position of the environmental obstacle to obtain the optimized path. The target robot receives the optimized path returned by the scheduling system and delivers the target order according to the optimized path.

[0119] Step A50: If the environmental obstacle is the mobile obstacle, obstacle avoidance processing is performed based on the obstacle type of the environmental obstacle, and after the environmental obstacle no longer exists, the target order is delivered according to the delivery path.

[0120] If the environmental obstacle is the mobile obstacle, the robot will autonomously generate an obstacle avoidance plan and perform obstacle avoidance processing to improve the robot's obstacle avoidance efficiency. The target robot identifies the obstacle type of the environmental obstacle, and then performs corresponding obstacle avoidance processing based on the obstacle type. Among them, the obstacle type is used to characterize the entity type of the environmental obstacle, which may include pedestrians, life forms without autonomous consciousness (such as animals), and movable objects (such as balls). Different obstacle types can use different obstacle avoidance processing. After there are no environmental obstacles in the operating environment, the target order is delivered according to the delivery path.

[0121] The specific obstacle avoidance process is not limited here and can be set according to actual needs and obstacle types. For example, when the obstacle type represents that the environmental obstacle is a pedestrian, the process of performing obstacle avoidance processing based on the obstacle type of the environmental obstacle is: prompting the pedestrian to leave the operating environment through the onboard audio device to complete the obstacle avoidance process. When the obstacle type represents that the environmental obstacle is a living being or a movable object without autonomous consciousness, the process of performing obstacle avoidance processing based on the obstacle type of the environmental obstacle is: stopping operation until the environmental obstacle leaves the operating environment to complete the obstacle avoidance process. Furthermore, when the movable object is a non-target robot, the running target robot may also be an environmental obstacle to the robot. At this time, the target robot obtains the first order priority of the non-target robot's delivery order by communicating with the scheduling system or the non-target robot. When the first order priority is higher than the second order priority of the target order, the target robot stops running until the non-target robot leaves the operating environment to complete the obstacle avoidance process. When the first order priority is lower than the second order priority, after determining that the non-target robot has stopped running, an obstacle avoidance path is planned based on the position of the non-target robot, and the robot travels along the obstacle avoidance path until the non-target robot leaves the operating environment to complete the obstacle avoidance process. The specific process of planning the obstacle avoidance path is not limited here and can be set according to actual needs.

[0122] In this embodiment, the scheduling system allocates each order to be delivered to each robot based on the order information of each order to be delivered and the robot operation status of each robot to obtain the task order of each robot. By reasonably allocating each order to be delivered to each robot, it is ensured that each robot can obtain the order to be delivered that matches its status and capabilities, thereby avoiding excessive load on the robot and improving the operation safety of the robot. Then, the scheduling system optimizes the initial path of the target robot delivery order in combination with the path information of each robot, so that path planning can be combined with a global perspective in the path planning stage, avoiding the situation where multiple robots compete for the same space resources at the same time or in a similar time period in a complex delivery environment, thereby avoiding path conflicts and congestion in the delivery process of each robot and improving the safety of the robot delivery process.

[0123] For example, to help understand the implementation process of the robot delivery method obtained by combining the above-mentioned embodiments 1, 2 and 3, please refer to Figure 3 , Figure 3 A timing diagram of a robot delivery method is provided. In this embodiment, the delivery system includes dispatching robots A, B, C and a dispatching system.

[0124] Robots A, B, and C respectively send their own robot operation status and path information to the scheduling system.

[0125] The dispatching system obtains orders 1, 2, 3, and 4 to be delivered, detects that order 1 to be delivered is an urgent order, determines that the short-range robot for the urgent order is robot A from robots A, B, and C, plans an emergency delivery path based on the delivery destination of order 1 and the current position of robot A, and sends the emergency delivery path to robot A.

[0126] Robot A delivers order 1 along the emergency delivery route. Robot A collects environmental information of the operating environment during the delivery process. Since Robot A delivers urgent orders, in order to reduce the resource consumption and time cost caused by the communication between Robot A and the dispatching system, Robot A detects environmental obstacles based on environmental information and determines that the environmental obstacles are mobility obstacles. Robot A performs corresponding fault processing based on the obstacle type.

[0127] The dispatch system allocates non-urgent orders 2, 3, and 4. In this embodiment, non-urgent orders 2, 3, and 4 are allocated to robots B and C. Specifically, order 2 is allocated to robot B, and orders 3 and 4 are allocated to robot C. Delivery path 1 is planned for robot B, and delivery path 2 is planned for robot C. Delivery path 1 and order 2 are sent to robot B, and delivery path 2 and orders 3 and 4 are sent to robot C.

[0128] Robots B and C deliver according to the received orders and routes. Robot B collects environmental information of the operating environment during the delivery process. Since robot B delivers non-urgent order 2, the environmental information is reported to the dispatching system. The dispatching system performs obstacle detection to provide the accuracy of obstacle detection. In this embodiment, the dispatching system detects environmental obstacles, optimizes delivery route 1 based on environmental obstacles to obtain an optimized path, and sends the optimized path to robot B. Robot B delivers order 2 according to the optimized path. Robot C collects environmental information during operation, does not detect environmental obstacles, and maintains the original path, that is, runs according to delivery route 2.

[0129] Robot C detects an operation failure during operation and reports the operation failure to the dispatch system. In this embodiment, Robot C has delivered Order 3 but has not delivered Order 4. Therefore, the dispatch system reallocates Order 4 to Robot A, plans the target path for Robot A to deliver, sends the target path and Order 4 to Robot A, and Robot A delivers the order.

[0130] It should be noted that the above examples are only used to understand the present application and do not constitute a limitation on the robot delivery method of the present application. More simple transformations based on this technical concept are all within the scope of protection of the present application.

[0131] The present application provides a distribution system, referring to Figure 4 , the distribution system includes:

[0132] Like the dispatching system in the robot delivery method in the above embodiment, the dispatching system provided by the present application adopts the robot delivery method in the above embodiment, which can solve the technical problem that the safety of robots is affected during the delivery of multiple robots and multiple orders;

[0133] Like the target robot in the robot delivery method in the above embodiment, the target robot provided in the present application adopts the robot delivery method in the above embodiment, which can solve the technical problem that the robot safety is affected during the delivery of multiple orders by multiple robots.

[0134] Compared with the prior art, the beneficial effects of the delivery system provided in the present application are the same as the beneficial effects of the robot delivery method provided in the above-mentioned embodiment, and other technical features in the delivery system are the same as the features disclosed in the above-mentioned embodiment method, which will not be repeated here.

[0135] The present application provides a robot delivery device, which can be a scheduling system or a robot. When the robot delivery device is a scheduling system, the robot delivery device in the embodiments of the present application can include but is not limited to mobile terminals such as mobile phones, laptop computers, PDAs (Personal Digital Assistants), PADs (Portable Application Descriptions), etc., and fixed terminals such as desktop computers, etc.

[0136] The robot delivery device includes: at least one processor; and a memory in communication with the at least one processor; wherein the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor so that the at least one processor can execute the robot delivery method in the above embodiment. Figure 5 , which shows a schematic structural diagram of a robot delivery device suitable for implementing an embodiment of the present application. Figure 5 The robot delivery device shown is merely an example and should not bring any limitation to the functions and scope of use of the embodiments of the present application.

[0137] like Figure 5As shown, the robot delivery device may include a processing device 1001 (e.g., a central processing unit, a graphics processor, etc.), which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM: Read Only Memory) 1002 or a program loaded from a storage device 1003 to a random access memory (RAM: Random Access Memory) 1004. In RAM1004, various programs and data required for the operation of the robot delivery device are also stored. The processing device 1001, ROM1002, and RAM1004 are connected to each other through a bus 1005. An input / output (I / O) interface 1006 is also connected to the bus. Generally, the following systems can be connected to the I / O interface 1006: an input device 1007 including, for example, a touch screen, a touch pad, a keyboard, a mouse, an image sensor, a microphone, an accelerometer, a gyroscope, etc.; an output device 1008 including, for example, a liquid crystal display (LCD: Liquid Crystal Display), a speaker, a vibrator, etc.; a storage device 1003 including, for example, a magnetic tape, a hard disk, etc.; and a communication device 1009. The communication device 1009 can allow the robot delivery device to communicate with other devices wirelessly or by wire to exchange data. Although the figure shows a robot delivery device with various systems, it should be understood that it is not required to implement or have all the systems shown. More or fewer systems can be implemented or have alternatively.

[0138] In particular, according to the embodiments disclosed in the present application, the process described above with reference to the flowchart can be implemented as a computer software program. For example, the embodiments disclosed in the present application include a computer program product, which includes a computer program carried on a computer-readable medium, and the computer program includes a program code for executing the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from a network through a communication device, or installed from a storage device 1003, or installed from a ROM 1002. When the computer program is executed by the processing device 1001, the above-mentioned functions defined in the method of the embodiment disclosed in the present application are executed.

[0139] The robot delivery device provided by the present application adopts the robot delivery method in the above embodiment, which can solve the technical problem that the safety of the robot is affected during the delivery of multiple robots and multiple orders. Compared with the prior art, the beneficial effects of the robot delivery device provided by the present application are the same as the beneficial effects of the robot delivery method provided by the above embodiment, and the other technical features of the robot delivery device are the same as the features disclosed in the above embodiment method, which will not be repeated here.

[0140] It should be understood that the various parts disclosed in this application can be implemented by hardware, software, firmware or a combination thereof. In the description of the above embodiments, specific features, structures, materials or characteristics can be combined in any one or more embodiments or examples in a suitable manner.

[0141] The above is only a specific implementation of the present application, but the protection scope of the present application is not limited thereto. Any person skilled in the art who is familiar with the present technical field can easily think of changes or substitutions within the technical scope disclosed in the present application, which should be included in the protection scope of the present application. Therefore, the protection scope of the present application should be based on the protection scope of the claims.

[0142] The present application provides a computer-readable storage medium having computer-readable program instructions (ie, computer programs) stored thereon, wherein the computer-readable program instructions are used to execute the robot delivery method in the above-mentioned embodiment.

[0143] The computer-readable storage medium provided in the present application may be, for example, a USB flash drive, but is not limited to electrical, magnetic, optical, electromagnetic, infrared, or semiconductor systems or devices, or any combination of the above. More specific examples of computer-readable storage media may include, but are not limited to: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM: Random Access Memory), a read-only memory (ROM: Read Only Memory), an erasable programmable read-only memory (EPROM: Erasable Programmable Read Only Memory or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM: CD-Read Only Memory), an optical storage device, a magnetic storage device, or any suitable combination of the above. In this embodiment, the computer-readable storage medium may be any tangible medium containing or storing a program that can be used by or in combination with an instruction execution system or device. The program code contained on the computer-readable storage medium may be transmitted using any appropriate medium, including but not limited to: wires, optical cables, RF (Radio Frequency: Radio Frequency), etc., or any suitable combination of the above.

[0144] The computer-readable storage medium may be included in the robot delivery device; or it may exist independently without being assembled into the robot delivery device.

[0145] The computer-readable storage medium carries one or more programs. When the one or more programs are executed by the robot delivery device, the robot delivery device implements the robot delivery method of the above embodiment.

[0146] Computer program code for performing the operations of the present application may be written in one or more programming languages ​​or a combination thereof, including object-oriented programming languages ​​such as Java, Smalltalk, C++, and conventional procedural programming languages ​​such as "C" or similar programming languages. The program code may be executed entirely on the user's computer, partially on the user's computer, as a separate software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (e.g., via the Internet using an Internet service provider).

[0147] The flow chart and block diagram in the accompanying drawings illustrate the possible architecture, function and operation of the system, method and computer program product according to various embodiments of the present application. In this regard, each square box in the flow chart or block diagram can represent a module, a program segment or a part of a code, and the module, the program segment or a part of the code contains one or more executable instructions for realizing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the square box can also occur in a sequence different from that marked in the accompanying drawings. For example, two square boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each square box in the block diagram and / or flow chart, and the combination of the square boxes in the block diagram and / or flow chart can be implemented with a dedicated hardware-based system that performs a specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.

[0148] The modules involved in the embodiments described in this application may be implemented by software or hardware, wherein the name of the module does not constitute a limitation on the unit itself in some cases.

[0149] The readable storage medium provided by the present application is a computer-readable storage medium, which stores computer-readable program instructions (i.e., computer programs) for executing the above-mentioned robot delivery method, and can solve the technical problem that the safety of robots is affected during the multi-robot multi-order delivery process. Compared with the prior art, the beneficial effects of the computer-readable storage medium provided by the present application are the same as the beneficial effects of the robot delivery method provided by the above-mentioned embodiment, and will not be repeated here.

[0150] The present application also provides a computer program product, including a computer program, which implements the steps of the above-mentioned robot delivery method when executed by a processor.

[0151] The computer program product provided by this application can solve the technical problem that the safety of robots is affected during the multi-robot multi-order delivery process. Compared with the prior art, the beneficial effects of the computer program product provided by this application are the same as the beneficial effects of the robot delivery method provided by the above embodiment, which will not be repeated here.

[0152] The above descriptions are only some embodiments of the present application, and are not intended to limit the patent scope of the present application. All equivalent structural changes made using the contents of the present application specification and drawings under the technical concept of the present application, or direct / indirect applications in other related technical fields are included in the patent protection scope of the present application.

Claims

1. A robot delivery method, characterized in that: The robot delivery method is applied to a dispatching system, and the robot delivery method includes: Based on the order information of each order to be delivered and the robot operation status of each robot, each order to be delivered is assigned to each robot to obtain a task order of each robot; For any target robot among the robots, determining a delivery destination of the task order of the target robot, and performing path planning based on the delivery destination and the current position of the target robot to obtain an initial path; The initial path is optimized based on the path information of the non-target robot to obtain the delivery path of the target robot, wherein the target robot delivers the target order according to the delivery path, the target order is the task order of the target robot, and the non-target robot is a robot among the robots except the target robot.

2. The robot delivery method according to claim 1, characterized in that: The step of allocating each of the orders to be delivered to each of the robots based on the order information of each of the orders to be delivered and the robot operation status of each of the robots to obtain a task order for each of the robots comprises: Constructing a cost matrix based on the order information of each order to be delivered and the robot operation status of each robot, wherein each element in the cost matrix represents the resource consumption cost of the robot delivering the order to be delivered; Each of the orders to be delivered is allocated to each of the robots based on a preset optimization algorithm and the cost matrix.

3. The robot delivery method according to claim 2, characterized in that: Before the step of constructing a cost matrix based on the order information of each order to be delivered and the robot operation status of each robot, the step further includes: Detecting whether there is an urgent order among the orders to be delivered; If the urgent order does not exist, the step of constructing a cost matrix based on the order information of each order to be delivered and the robot operating status of each robot and subsequent steps are executed.

4. The robot delivery method according to claim 3, characterized in that: After the step of detecting whether there is an urgent order in the orders to be delivered, the method further includes: If the urgent order exists in the orders to be delivered, traverse each of the robots, perform path planning based on the urgent delivery destination corresponding to the urgent order and the current position of the robot, and obtain the delivery time of the robot; Determine the short-distance robot with the shortest delivery time from among the robots, assign the urgent order to the short-distance robot, and perform path planning based on the delivery destination of the urgent order and the current position of the short-distance robot to obtain an urgent delivery path, wherein the short-distance robot delivers the urgent order according to the urgent delivery path; Based on the order information of non-urgent orders and the operating status of each of the robots, each of the non-urgent orders is assigned to each of the robots to obtain a task order for each of the robots, wherein the non-urgent orders are orders among the orders to be delivered except the urgent orders.

5. The robot delivery method according to claim 1, characterized in that: After the step of optimizing the initial path based on the path information of the non-target robot to obtain the delivery path of the target robot, the method further includes: If the target robot has an operation fault, then based on the fault location information of the target robot when the operation fault occurs, the order information of the robot order is updated to obtain a reallocated order, wherein the robot order is an order delivered by the robot; Determining a redistribution robot for delivering the reallocated order from among the non-target robots based on the order information of the reallocated order and the robot operation status of each of the non-target robots; Based on the order information of the reallocated order and the environmental position of the reallocation robot, path planning is performed on the reallocation robot to obtain a target path, wherein the reallocation robot delivers the reallocation order according to the target path.

6. The robot delivery method according to any one of claims 1 to 5, characterized in that: After the step of optimizing the initial path based on the path information of the non-target robot to obtain the delivery path of the target robot, the method further includes: Acquire environmental information of the operating environment of the target robot; If it is detected based on the environmental information that there is an environmental obstacle on the delivery path of the target robot, the delivery path is optimized based on the environmental obstacle position of the environmental obstacle to obtain an optimized path, wherein the target robot delivers the target order according to the optimized path.

7. A robot delivery method, characterized in that: The robot delivery method is applied to any target robot among the robots, and the robot delivery method includes: Receiving a target order and a delivery path sent by a scheduling system in the robot delivery method according to any one of claims 1 to 6; The target order is delivered according to the delivery route.

8. The robot delivery method according to claim 7, characterized in that: After the step of delivering the target order according to the delivery path, the method further includes: If an environmental obstacle is detected, detecting whether the operational fault is a movement obstacle; If the operation fault is not the movement obstacle, the environmental obstacle is sent to the dispatching system, and the obstacle avoidance path returned by the dispatching system is received, and the task order is delivered according to the obstacle avoidance path, wherein the dispatching system optimizes the delivery path based on the environmental obstacle position of the environmental obstacle to obtain the optimized path; If the environmental obstacle is the mobile obstacle, obstacle avoidance processing is performed based on the obstacle type of the environmental obstacle, and after the environmental obstacle no longer exists, the target order is delivered according to the delivery path.

9. A distribution system, characterized in that: The delivery system comprises: A dispatching system in a robot delivery method as claimed in any one of claims 1 to 6; The target robot in the robot delivery method according to claim 7 or 8.

10. A computer program product, characterized in that The computer program product comprises a computer program, and when the computer program is executed by a processor, the steps of the robot delivery method according to any one of claims 1 to 8 are implemented.

Citation Information

Patent Citations

  • Article distribution method, distribution system and computer readable storage medium

    CN113780932A

  • Path planning method, path planning device and electronic device

    CN114063612A

  • Multi-logistics robot path planning method based on improved time window algorithm

    CN115328113A

  • Multi-robot scheduling method and device

    CN116245257A

  • Drug real-time distribution method and device

    CN116307332A