WO2023020213A1 - Procédé et appareil d'attribution de tâches, dispositif, support de stockage et produit-programme - Google Patents

Procédé et appareil d'attribution de tâches, dispositif, support de stockage et produit-programme Download PDF

Info

Publication number
WO2023020213A1
WO2023020213A1 PCT/CN2022/107839 CN2022107839W WO2023020213A1 WO 2023020213 A1 WO2023020213 A1 WO 2023020213A1 CN 2022107839 W CN2022107839 W CN 2022107839W WO 2023020213 A1 WO2023020213 A1 WO 2023020213A1
Authority
WO
WIPO (PCT)
Prior art keywords
boxes
task
handling
segmentation result
tasks
Prior art date
Application number
PCT/CN2022/107839
Other languages
English (en)
Chinese (zh)
Inventor
喻润方
周红霞
Original Assignee
深圳市库宝软件有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 深圳市库宝软件有限公司 filed Critical 深圳市库宝软件有限公司
Publication of WO2023020213A1 publication Critical patent/WO2023020213A1/fr

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/04Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"

Definitions

  • the present application relates to intelligent storage technology, and in particular to a method, device, equipment, storage medium and program product for task assignment.
  • Task assignment is to assign the handling task of the box to the robot.
  • the box handling task includes which box is transported to which destination.
  • For the robot assignment and handling task it generally refers to assigning which robot performs which box handling tasks, that is, assigning which robot carries which boxes to which destinations.
  • the usual task allocation strategy is to assign handling tasks to each robot in sequence from the perspective of the robot.
  • the boxes closest to the robot are added to the task list of the robot in turn until the capacity of the robot is met.
  • the handling tasks assigned by the robots earlier in the order are better and can usually be completed quickly, but the robots in the lower order may only have poor handling tasks left, and the handling efficiency of the robots is very low, resulting in low overall handling efficiency of the robots.
  • the present application provides a task allocation method, device, equipment, storage medium and program product.
  • the present application provides a method for assigning tasks, including:
  • the boxes with the same destination are divided into tasks according to the lanes where the boxes are located, and at least one handling task is generated, wherein each of the handling tasks includes one or more boxes, and each The number of boxes included in the handling task is less than or equal to the maximum capacity of the robot;
  • Each of the handling tasks is assigned to a robot in an idle state.
  • the task segmentation is performed on the box with the same destination to generate at least one handling task, including:
  • the boxes with the same destination are grouped into the same box group;
  • the tasks of the boxes in each box group are divided to generate at least one handling task.
  • the task segmentation is performed on the box with the same destination to generate at least one handling task, including:
  • the tasks are divided according to the lanes where the boxes are located, and the initial segmentation results are generated, wherein the initial segmentation results include one or more initial handling tasks, each of the initial handling tasks
  • the number of boxes contained in the task is less than or equal to the maximum capacity of the robot;
  • the optimization goal of the iterative optimization is: the total number of cross-lanes during the execution of the at least one handling task is the smallest, and/ Or, when the at least one carrying task is performed, the total distance span across the roadway is the smallest.
  • the greedy algorithm is used to divide the tasks of the boxes with the same destination according to the lanes where the boxes are located, and generate an initial segmentation result, including:
  • the boxes in each lane are divided into tasks according to the maximum capacity of the robot, and one or more handling tasks are obtained.
  • the tasks of the boxes in each lane are divided according to the maximum capacity of the robot to obtain one or more handling tasks, including:
  • the boxes in the next lane are added to the current handling task in turn until The current handling task is full.
  • the fullness of any carrying task means that the number of boxes included in the carrying task is equal to the maximum capacity of the robot.
  • using a heuristic algorithm to iteratively optimize the initial segmentation result to obtain the at least one handling task includes:
  • the neighborhood feasible solution of the initial segmentation result of the current round is generated, and the optimized segmentation result of the current round is obtained;
  • the next round of iterative optimization is performed according to the initial segmentation result of the next iteration, until the iteration stop condition is met, and the iterative optimization is stopped.
  • the next round of iterative optimization is performed according to the initial segmentation result of the next iteration, until the iterative optimization is stopped when the iteration stop condition is satisfied, according to the initial segmentation
  • the objective function value of the result, and the objective function value of the optimized segmentation result of each iteration determine the segmentation result with the smallest objective function value, and the segmentation result with the smallest objective function value contains at least one handling task.
  • the objective function value includes:
  • the initial segmentation result includes one or more handling tasks, each of which includes one or more lanes, and at least one box in each of the lanes.
  • the neighborhood feasible solution of the initial segmentation result of the current round is generated to obtain the optimal segmentation result of the current round, including:
  • each handling task The number of contained boxes is less than or equal to the robot's maximum capacity.
  • the neighborhood feasible solution of the initial segmentation result of the current round is generated to obtain the optimal segmentation result of the current round, including:
  • the two handling tasks of the initial segmentation result include boxes in the first lane, exchange the boxes in any one of the two handling tasks in the first lane to obtain the optimized segmentation result of this round , the number of boxes contained in each handling task in the optimized segmentation result is less than or equal to the maximum capacity of the robot.
  • the neighborhood feasible solution of the initial segmentation result of the current round is generated to obtain the optimal segmentation result of the current round, including:
  • the number of boxes in each lane in each handling task of the initial segmentation result determine the target lane of the target handling task, the number of boxes in the target lane is the least among all lanes of the target handling task, and all The number of boxes in the target lane of the target transport task in the transport task is the least;
  • the assigning each of the handling tasks to a robot in an idle state includes:
  • each of the handling tasks is assigned to the robot in an idle state in sequence.
  • said sorting said at least one handling task includes:
  • the ranking factors include at least one of the following:
  • the priority of the handling task the queuing congestion level of the destination of the handling task, the congestion level of the laneway included in the handling task, the number of lanes crossed during the execution of the handling task, the distance span across the lanes during the execution of the handling task, and the total number of boxes included in the handling task .
  • sequentially assigning each of the handling tasks to robots in an idle state includes:
  • the boxes included in the next handling task are used as boxes to be allocated;
  • the next handling task is assigned to the idle robot with the smallest minimum distance to the box to be assigned.
  • the present application provides a device for assigning tasks, including:
  • the task segmentation module is used to divide the tasks of the boxes with the same destination according to the destination of the boxes to be transported according to the lanes where the boxes are located, and generate at least one transport task, wherein each transport task includes one or Multiple boxes, the number of boxes contained in each said handling task is less than or equal to the maximum capacity of the robot;
  • the task assignment module is used to assign each of the handling tasks to the robots in the idle state.
  • the present application provides a task allocation device, including: a memory, a processor;
  • processor a memory
  • computer program stored on said memory and executable on said processor
  • the processor implements the method described in any one of the above when running the computer program.
  • the present application provides a computer-readable storage medium, where computer-executable instructions are stored in the computer-readable storage medium, and when the computer-executable instructions are executed by a processor, they are used to implement any of the methods described above .
  • the present application provides a computer program product, including a computer program, and when the computer program is executed by a processor, the method described in any one of the foregoing is implemented.
  • the task allocation method, device, equipment, storage medium and program product provided in this application generate at least one transport Tasks, where each handling task includes one or more boxes, and the number of boxes contained in each handling task is less than or equal to the maximum capacity of the robot, so that the boxes in the same handling task have the same destination and are concentrated in the same lane or Concentrated in a few lanes, and the distance between the lanes is relatively short, each handling task is assigned to an idle robot, and the robot completes the handling of the boxes in the handling task assigned to it, which can be carried out based on global planning Task allocation greatly improves the overall handling efficiency of boxes in the intelligent storage system.
  • FIG. 1 is an overall framework diagram of the method for task assignment provided by this embodiment
  • FIG. 2 is a flow chart of a task assignment method provided in Embodiment 1 of the present application.
  • FIG. 3 is a flow chart of the task assignment method provided in Embodiment 2 of the present application.
  • FIG. 4 is a schematic structural diagram of a device for assigning tasks provided in Embodiment 3 of the present application.
  • FIG. 5 is a schematic structural diagram of a task allocation device provided by Embodiment 5 of the present invention.
  • the task allocation method provided in this embodiment can be applied to the application scenario where a large number of box tasks to be transported are generated in the field of intelligent warehousing, such as inbound and outbound, and box tasks need to be allocated to robots, where one box task corresponds to one
  • the handling requirements of the box include at least moving the box from the location to the designated destination (such as the operation table, the location in the warehouse, etc.).
  • the intelligent warehousing system will generate orders in real time, and generate storage/outbound tasks corresponding to the orders. Each storage/outbound task will involve multiple box tasks, and the box tasks need to be assigned to robots.
  • the task allocation device can execute the task allocation method at regular intervals, and assign the currently unassigned box tasks to the robot. For example, the task assignment method may be performed periodically.
  • the task assignment device 10 obtains the information of the box to be transported, at least including the destination of the box and the roadway where it is located; according to the destination of the box to be transported, According to the lanes where the boxes are located, the boxes with the same destination are divided into tasks to generate at least one handling task; each handling task includes one or more boxes, and the number of boxes contained in each handling task is less than or equal to the robot's maximum Capacity, each handling task is assigned to a robot 20, so that the overall planning of the handling task can be carried out based on the location of the box, and the handling tasks assigned to each robot include multiple box tasks with the same destination, and the roadway
  • the location is centralized, and the division of handling tasks is more reasonable, which can improve the overall handling efficiency of the robot.
  • FIG. 2 is a flow chart of the task allocation method provided by Embodiment 1 of the present application.
  • the execution subject of the method for assigning tasks provided in this application may be a warehouse management system in an intelligent warehouse system, or other equipment for assigning tasks, which is not specifically limited in this embodiment.
  • the specific steps of the method are as follows:
  • Step S101 according to the destination of the boxes to be transported, the boxes with the same destination are divided into tasks according to the lanes where the boxes are located, and at least one transport task is generated, wherein each transport task includes one or more boxes, each The number of boxes contained in the handling task is less than or equal to the maximum capacity of the robot.
  • the boxes to be transported are sorted and distinguished, and multiple sets of boxes with the same destination are determined, and the boxes in each set have the same destination.
  • the tasks are divided according to the lanes where the boxes are located, so that the boxes in the same handling task have the same destination and are concentrated in the same lane or in a few lanes, and the distance between the lanes is relatively small. close.
  • Step S102 assigning each transport task to a robot in an idle state.
  • each transport task After at least one transport task is determined, a corresponding idle robot is determined for each transport task, each transport task is assigned to the corresponding robot, and the robot completes the transport of the boxes in the assigned transport task. Since the destination of the boxes in each handling task is the same, and they are concentrated in a few lanes, and the distance between these lanes is relatively short, the handling efficiency of the handling task can be improved.
  • tasks are divided into boxes with the same destination to generate at least one handling task, wherein each handling task includes one or more boxes, each The number of boxes contained in the handling task is less than or equal to the maximum capacity of the robot, so that the boxes in the same handling task have the same destination, and are concentrated in the same lane or in a few lanes, and the distance between the lanes is relatively short,
  • Each handling task is assigned to a robot in an idle state, and the robot completes the handling of the boxes in the handling task assigned to it.
  • Task allocation can be performed based on global planning, which greatly improves the overall handling efficiency of boxes in the intelligent storage system.
  • FIG. 3 is a flow chart of the task allocation method provided by Embodiment 2 of the present application.
  • the boxes with the same destination can be grouped into the same box group; according to the aisle where the boxes are located, the boxes in each box group Perform task segmentation to generate at least one handling task.
  • the process of dividing the tasks of the boxes in each box group is the process of dividing the tasks of the boxes with the same destination according to the lanes where the boxes are located, and generating at least one handling task.
  • This process can be implemented in the following way: use a greedy algorithm to divide the tasks of boxes with the same destination according to the lanes where the boxes are located, and generate an initial segmentation result, where the initial segmentation result includes one or more initial handling tasks , the number of boxes contained in each initial handling task is less than or equal to the maximum capacity of the robot; use a heuristic algorithm to iteratively optimize the initial segmentation results to obtain at least one handling task, and the optimization goal of the iterative optimization is: at least one handling task The total number of crossing aisles is the smallest during execution, and/or, the total distance span across aisles is the smallest when at least one handling task is executed.
  • Step S201 use the greedy algorithm to divide the tasks of the boxes with the same destination according to the lanes where the boxes are located, and generate an initial segmentation result, wherein the initial segmentation result includes one or more initial handling tasks, and each initial handling task
  • the number of contained boxes is less than or equal to the robot's maximum capacity.
  • the several restriction conditions may include at least one of the following: capacity limitation of the robot, number of crossing lanes when carrying out the carrying task, and range of crossing lanes when carrying out the carrying task.
  • the range across the roadway when the carrying task is executed may be the distance span across the roadway when the carrying task is executed.
  • a greedy algorithm may be used to sequentially segment each transport task according to the sequence of lane IDs.
  • the boxes in each lane are sequentially divided into tasks according to the maximum capacity of the robot, and one or more handling tasks are obtained.
  • the tasks of the boxes in each lane are divided according to the maximum capacity of the robot to obtain one or more handling tasks, which can be implemented in the following way:
  • the fullness of any handling task means that the number of boxes included in the handling task is equal to the maximum capacity of the robot.
  • the boxes to be transported with a certain destination are distributed in multiple lanes, and the arrangement order of the multiple lanes and the number of the first boxes are as follows: There are 12 first boxes in the first lane. Chests, 9 first chests in the second lane, 4 first chests in the second lane, ... . Assuming that the maximum capacity of the robot is 5, according to the arrangement order of the lanes, first divide the tasks of the first box in the first lane, and get 3 handling tasks, the number of the first boxes included respectively: 5, 5 ,2. By dividing the task of the first box in the second lane, two handling tasks can be obtained, and the number of the first box included is: 5 and 4 respectively. Then divide the task of the first box in the third lane to get 1 handling task, including 4 first boxes. By analogy, the first box in each lane is divided into tasks to obtain one or more handling tasks.
  • the boxes in the next lane can be sequentially added to the current handling task until the current handling task is full.
  • the boxes to be transported with a certain destination are distributed in multiple lanes, and the arrangement order of the multiple lanes and the number of the first boxes are as follows: There are 12 first boxes in the first lane. Chests, 9 first chests in the second lane, 4 first chests in the third lane, ... . Assuming that the maximum capacity of the robot is 5, according to the arrangement order of the lanes, the first box in the first lane is first divided into tasks, and two full-staffed handling tasks can be obtained. After adding the remaining 2 boxes to the third handling task, the third handling task is not full, you can continue to add the 3 boxes in the second lane to the third handling task, so that the third handling task full.
  • the fourth handling task is full. Add the last remaining box in the second lane to the fifth handling task. If the third handling task is not full, you can continue to add 4 boxes in the third lane to the fifth handling task, making the fifth handling task Five moving tasks are full.
  • the task segmentation is performed until the first boxes in all lanes are added to the handling task, and the task division of the box at the destination is completed according to the laneway where the box is located, and the handling task is obtained.
  • the last box in the current lane is added to the current handling task, if the current handling task is not full, then judge the number of tasks that can be added to the current handling task, if the number of tasks that can be added is less than the preset number threshold, If not, then the boxes in the next lane can be sequentially added to the current handling task until the current handling task is full; if so, the assignment of the current handling task can be completed.
  • the optimization objective of the iterative optimization is: the total number of crossing lanes is minimized when at least one handling task is executed, and/or the total distance span across lanes is minimized when at least one handling task is executed.
  • Step S202 according to the neighborhood operator, generate the neighborhood feasible solution of the initial segmentation result of the current round, and obtain the optimal segmentation result of the current round.
  • the initial segmentation result includes one or more transport tasks, each transport task includes one or more lanes, and at least one box in each lane.
  • the initial segmentation result of the first round of iteration is the initial segmentation result obtained in step S201, and the initial segmentation result of the second round and subsequent iterations is determined in the previous iteration.
  • the neighborhood operator used is used to generate a neighborhood feasible solution from the initial segmentation result, and the neighborhood feasible solution of the initial segmentation result is used as the optimization segmentation result of this round.
  • the quantity is less than or equal to the robot's maximum capacity.
  • the box in the aisle with ID 3 of the first handling task in the initial segmentation result can be moved to the third handling task or any other handling task, and the box is included in the moving task
  • the number of boxes is less than or equal to the robot's maximum capacity.
  • Another optional implementation of this step is:
  • the two handling tasks of the initial segmentation result both contain boxes in the first lane, exchange the boxes in any one of the first lanes in the two handling tasks to obtain the optimized segmentation result of this round.
  • the number of boxes contained in each handling task is less than or equal to the maximum capacity of the robot.
  • the third handling task contains boxes in the lane with ID 1
  • the fifth handling task also includes boxes in the lane with ID 1
  • the boxes in the aisle with ID 1 in the five handling tasks are exchanged, and the number of boxes contained in the two handling tasks after the exchange is guaranteed to be less than or equal to the maximum capacity of the robot.
  • Another optional implementation of this step is:
  • the target lane of the target handling task determines the target lane of the target handling task.
  • the number of boxes in the target lane is the least among all the lanes of the target handling task, and the target handling task among all handling tasks
  • the number of boxes in the target lane is the least; move the boxes in the target lane of the target handling task to another handling task that includes the target lane, and obtain the optimized segmentation result of this round, and optimize each handling task in the segmentation result
  • the number of contained boxes is less than or equal to the robot's maximum capacity.
  • the third handling task contains 1 box in the lane with ID 1
  • the fifth handling task also includes 3 boxes in the lane with ID 1
  • the third handling task includes The number of boxes in the lane with ID 1 is the least.
  • Step S203 calculating the objective function value of the optimized segmentation result.
  • the quality of the optimized segmentation result of the current round is evaluated, and the objective function value of the optimal segmentation result is calculated.
  • the objective function values include:
  • the total number of lanes crossed during the execution of all the handling tasks included in the segmentation result, and/or the total distance span across the lanes of all the handling tasks included in the segmentation result are the total number of lanes crossed during the execution of all the handling tasks included in the segmentation result, and/or the total distance span across the lanes of all the handling tasks included in the segmentation result.
  • the number of lanes crossed during the execution of any handling task refers to the number of lanes that the robot needs to cross when picking up multiple boxes in the handling task.
  • a transport task includes a box in an aisle with ID 1 and a box in aisle with ID 3, and there is an aisle with ID 2 between the aisle with ID 1 and the aisle with ID 3.
  • the robot performs the handling task, it needs to cross the lane with ID 1 to the lane with ID 3, and cross the three lanes with ID 1, 2, and 3, that is, the number of crossed lanes is 3.
  • the distance span across the lanes during the execution of any handling task refers to the longest distance span of the lanes that the robot needs to cross when picking up multiple boxes in the handling task.
  • the distance span across the lanes during the execution of any transport task can be the actual moving distance between the lanes; or, if the distance between adjacent lanes is the same, the distance span across the lanes can be the distance between the lanes The total length; or, the distance span across the lanes can be determined according to the lanes included in the handling task and the positions of the contained boxes in the lanes, and the walking distance of the robot across the lanes when picking up multiple boxes in the handling task.
  • a certain handling task includes boxes in the lane with ID 1 and boxes in the lane with ID 3, and the lane with ID 1 and ID are There is an alleyway with ID 2 in the middle of the alleyway of 3.
  • the robot performs the handling task, it needs to cross from the lane with ID 1 to the lane with ID 3, and across the three lanes with ID 1, 2, and 3.
  • the distance across the lanes is: the distance between lanes ⁇ 2.
  • Step S204 according to the objective function value of the optimized segmentation result and the objective function value of the initial segmentation result of the current round, determine the initial segmentation result of the next iteration.
  • the initial segmentation result of the next iteration is determined.
  • any one of the existing technologies can be used.
  • the method of determining the initial feasible solution of the next iteration according to the neighborhood feasible solution and the objective function value of the initial feasible solution is implemented, and this embodiment will not repeat it here.
  • the optimized segmentation result of the current round is smaller than the objective function value of the initial segmentation result of the current round, it means that the optimized segmentation result of the current round is relatively
  • the initial segmentation result of this round is better, and the optimized segmentation result of this round is used as the initial segmentation result of the next iteration.
  • the objective function value of the optimized segmentation result is not less than the objective function value of the initial segmentation result of the current round, there is still a certain probability that it is better than the initial segmentation result in the subsequent iterations of the optimized segmentation result.
  • the optimized segmentation result of this round is used as the initial segmentation result of the next iteration, and the iterative optimization continues.
  • the following uses the simulated annealing algorithm as an example of the heuristic algorithm. If the objective function value of the optimized segmentation result is smaller than the objective function value of the initial segmentation result of the current round, the optimized segmentation of the current round is performed with a certain probability.
  • the implementation of the segmentation result as the initial segmentation result of the next round of iteration is exemplified:
  • delta_score is the difference between the objective function value of the optimized segmentation result of the current round and the objective function value of the initial segmentation result of the current round
  • temperature is the temperature parameter
  • random_value is a generated random number
  • the random number takes a value between 0-1.
  • the objective function value of the optimized segmentation result is smaller than the objective function value of the initial segmentation result of the current round, and the implementation method of using the optimized segmentation result of the current round as the initial segmentation result of the next iteration with a certain probability can be as follows: Generate a random number random_value, calculate the difference delta_score between the objective function value of the optimized segmentation result of this round and the objective function value of the initial segmentation result of this round, and judge whether the random_value and delta_score satisfy the above inequality, and if so, accept this round The optimal segmentation result of the round is used as the initial segmentation result of the next iteration. If it is not satisfied, the optimized segmentation result of the current round will not be accepted, and the optimized segmentation result of the current round will not be used as the initial segmentation result of the next iteration.
  • the objective function value of the optimized segmentation result is smaller than the objective function value of the initial segmentation result of the current round, that is, delta_score is a negative number, and the temperature parameter temperature is a large positive integer at the beginning, and each iteration follows a certain rate.
  • Exponential decay then the value range of delta_score/temperature is from 0 to negative infinity.
  • the value range of exp delta_score/temperature is gradually reduced from 1 to 0 .
  • the part on the right side of the above inequality is a random number between 0 and 1, so when the temperature parameter temperature is high at the primary stage of iteration, the value of the left part of the above inequality is close to 1, and the possibility of the inequality is very high. With the attenuation of the temperature parameter temperature, the value of the left part of the above inequality is getting closer to 0, and the possibility of the inequality is gradually reduced, and the further to the back, the less possibility of the inequality. Therefore, the probability of accepting the optimized segmentation result of this round as the initial segmentation result of the next iteration is actually high at the beginning, and gradually decreases as the number of iterations increases. In this way, a greater search possibility can be reserved in the early stage of iterative optimization, and worse optimization segmentation results are allowed to be accepted; at the end of the iteration, it is hoped that the algorithm will converge and gradually stabilize.
  • Step S205 judging whether the iteration stop condition is satisfied.
  • step S206 is executed to determine the optimal segmentation result, that is, the segmentation result with the smallest objective function value.
  • the iteration stop condition may be: the number of iterations is greater than the number threshold, the iteration duration reaches a preset duration, etc., and the iteration stop condition may be set and adjusted according to the actual application scenario, which is not specifically limited in this embodiment.
  • Step S206 according to the objective function value of the initial segmentation result and the objective function value of the optimized segmentation result of each iteration, determine the segmentation result with the smallest objective function value, and the segmentation result with the smallest objective function value contains at least one transport Task.
  • the optimal segmentation result is selected according to the objective function value of the initial segmentation result and the objective function value of the optimized segmentation result of each iteration.
  • the segmentation result with the smallest objective function value can be determined, and the segmentation result with the smallest objective function value can be used as the optimal value.
  • At least one handling task included in the segmentation result with the smallest objective function value is taken as the final task segmentation result.
  • each handling task is allocated to an idle robot through steps S207-S208.
  • Step S207 sorting at least one transport task.
  • the at least one handling task is sorted according to the sorting factor.
  • the ranking factors include at least one of the following:
  • the priority of the handling task the queuing congestion level of the destination of the handling task, the congestion level of the laneway included in the handling task, the number of lanes crossed during the execution of the handling task, the distance span across the lanes during the execution of the handling task, and the total number of boxes included in the handling task .
  • the priority of the transport task may be determined according to the priority of boxes included in the transport task.
  • weights can be set for multiple sorting factors according to the importance (or priority) of each sorting factor, and the information of each sorting factor is quantified and standardized.
  • the sorting value corresponding to each handling task is determined, and the handling tasks are sorted according to the sorting value.
  • Step S208 according to the sorting result, sequentially assign each transport task to the robot in the idle state.
  • each handling task can be assigned to the idle robots in turn according to the sorting results until the handling tasks are assigned or all idle robots are assigned.
  • This step can specifically be implemented in the following manner:
  • the boxes included in the next handling task are used as the boxes to be allocated; according to the location of the boxes to be allocated and the positions of the robots in the idle state, the minimum distance between each idle robot and the boxes to be allocated is calculated. Distance; assign the next handling task to the idle robot with the smallest minimum distance to the box to be assigned.
  • all boxes contained in the unassigned handling tasks can be used as boxes to be assigned for the next task assignment, and the task assignment process can be performed again .
  • the priority of the boxes included in the unassigned handling tasks will be increased, and they will be used as the boxes to be allocated for the next task allocation, so as to give priority to the next task allocation.
  • Assign the move tasks where these boxes are located a certain condition that the box meets may be that the box has timeliness, etc., and can be set and adjusted according to the actual application scenario, which is not specifically limited here.
  • the boxes with the same destination are grouped into the same box group; the boxes in each box group are boxes with the same destination, and the greedy algorithm is used to group the boxes with the same destination.
  • the boxes are divided into tasks according to the lanes where the boxes are located, and the initial segmentation results are generated.
  • the initial segmentation results include one or more initial handling tasks, and the number of boxes contained in each initial handling task is less than or equal to the maximum capacity of the robot. ; Use a heuristic algorithm to iteratively optimize the initial segmentation results to obtain at least one handling task.
  • the optimization goal of the iterative optimization is: the total number of cross-lanes is minimized when at least one handling task is executed, and/or, at least one handling task is executed
  • the total distance span across the lanes is the smallest, so that the boxes in the same handling task have the same destination, and they are concentrated in the same lane or in a few lanes, and the distance between the lanes is relatively short.
  • Each handling task is assigned For a robot in an idle state, the robot completes the handling of the boxes in the handling task assigned to it, and can assign tasks based on the global plan, which greatly improves the overall handling efficiency of the boxes in the intelligent storage system, and improves the storage/exit library efficiency.
  • FIG. 4 is a schematic structural diagram of an apparatus for assigning tasks provided by Embodiment 3 of the present application.
  • the task allocation apparatus provided in the embodiment of the present application may execute the processing procedure provided in the task allocation method embodiment.
  • the task allocation apparatus 40 includes: a task segmentation module 401 and a task allocation module 402 .
  • the task segmentation module 401 is configured to perform task segmentation on boxes with the same destination according to the destination of the boxes to be transported according to the aisle where the boxes are located, and generate at least one transport task, wherein each transport task includes One or more boxes, the number of boxes contained in each handling task is less than or equal to the maximum capacity of the robot.
  • the task assignment module 402 is configured to assign each handling task to an idle robot.
  • the device provided in the embodiment of the present application may be specifically configured to execute the method embodiment provided in the first embodiment above, and the specific functions will not be repeated here.
  • tasks are divided into boxes with the same destination to generate at least one handling task, wherein each handling task includes one or more boxes, each The number of boxes contained in the handling task is less than or equal to the maximum capacity of the robot, so that the boxes in the same handling task have the same destination, and are concentrated in the same lane or in a few lanes, and the distance between the lanes is relatively short,
  • Each handling task is assigned to a robot in an idle state, and the robot completes the handling of the boxes in the handling task assigned to it.
  • Task allocation can be performed based on global planning, which greatly improves the overall handling efficiency of boxes in the intelligent storage system.
  • the task segmentation module is also used for:
  • the boxes with the same destination are grouped into the same box group; according to the aisle where the boxes are located, the tasks of the boxes in each box group are divided to generate at least one handling task.
  • the task segmentation module includes:
  • the initial segmentation result generation sub-module is used to use the greedy algorithm to divide the tasks of the boxes with the same destination according to the lanes where the boxes are located, and generate the initial segmentation results, wherein the initial segmentation results include one or more initial handling task, the number of boxes contained in each initial handling task is less than or equal to the maximum capacity of the robot.
  • the segmentation result optimization sub-module is used to use a heuristic algorithm to iteratively optimize the initial segmentation results to obtain at least one handling task.
  • the optimization goal of the iterative optimization is: the total number of cross-lanes is minimized when at least one handling task is executed, and /or, at least one transport task is executed with a minimum total distance span across the aisles.
  • the initial segmentation result generation submodule is also used to:
  • the boxes in each lane are divided into tasks according to the maximum capacity of the robot, and one or more handling tasks are obtained.
  • the initial segmentation result generation submodule is also used to:
  • the initial segmentation result generation submodule is also used to:
  • the fullness of any handling task means that the number of boxes included in the handling task is equal to the maximum capacity of the robot.
  • segmentation result optimization submodule is also used to:
  • the neighborhood feasible solution of the initial segmentation result of the current round is generated, and the optimized segmentation result of the current round is obtained; the objective function value of the optimal segmentation result is calculated; according to the objective function value of the optimal segmentation result, and the objective function value of the initial segmentation result of the current round to determine the initial segmentation result of the next iteration; if the iteration stop condition is not satisfied, the next round will be performed according to the initial segmentation result of the next iteration Iterative optimization until the iterative optimization is stopped when the iteration stop condition is satisfied.
  • segmentation result optimization submodule is also used to:
  • the next round of iterative optimization will be carried out according to the initial segmentation result of the next iteration, until the iterative optimization is stopped when the iteration stop condition is satisfied, according to the objective function value of the initial segmentation result, and each Optimizing the objective function value of the segmentation result for one round of iterations, determining the segmentation result with the smallest objective function value, and the segmentation result with the smallest objective function value includes at least one handling task.
  • objective function values include:
  • the total number of lanes crossed during the execution of all the handling tasks included in the segmentation result, and/or the total distance span across the lanes of all the handling tasks included in the segmentation result are the total number of lanes crossed during the execution of all the handling tasks included in the segmentation result, and/or the total distance span across the lanes of all the handling tasks included in the segmentation result.
  • the initial segmentation result includes one or more transport tasks, each transport task includes one or more lanes, and at least one box in each lane.
  • segmentation result optimization submodule is also used to:
  • the quantity is less than or equal to the robot's maximum capacity.
  • segmentation result optimization submodule is also used to:
  • the two handling tasks of the initial segmentation result both contain boxes in the first lane, exchange the boxes in any one of the first lanes in the two handling tasks to obtain the optimized segmentation result of this round.
  • the number of boxes contained in each handling task is less than or equal to the maximum capacity of the robot.
  • segmentation result optimization submodule is also used to:
  • the target lane of the target handling task determines the target lane of the target handling task.
  • the number of boxes in the target lane is the least among all the lanes of the target handling task, and the target handling task among all handling tasks
  • the number of boxes in the target lane is the least; move the boxes in the target lane of the target handling task to another handling task that includes the target lane, and obtain the optimized segmentation result of this round, and optimize each handling task in the segmentation result
  • the number of contained boxes is less than or equal to the robot's maximum capacity.
  • the task allocation module includes:
  • the task sorting submodule is used to sort at least one handling task
  • the task assignment sub-module is used to assign each handling task to an idle robot in turn according to the sorting result.
  • the task ordering submodule is also used to:
  • Sorting at least one handling task according to the sorting factor.
  • the ranking factors include at least one of the following:
  • the priority of the handling task the queuing congestion level of the destination of the handling task, the congestion level of the laneway included in the handling task, the number of lanes crossed during the execution of the handling task, the distance span across the lanes during the execution of the handling task, and the total number of boxes included in the handling task .
  • the task assignment submodule is also used to:
  • the boxes included in the next handling task are used as the boxes to be allocated; according to the location of the boxes to be allocated and the positions of the robots in the idle state, the minimum distance between each idle robot and the boxes to be allocated is calculated. Distance; assign the next handling task to the idle robot with the smallest minimum distance to the box to be assigned.
  • the device provided in the embodiment of the present application may be specifically used to execute the method embodiment provided in the second embodiment above, and specific functions will not be repeated here.
  • the boxes with the same destination are grouped into the same box group; the boxes in each box group are boxes with the same destination, and the greedy algorithm is used to classify boxes with the same destination.
  • the boxes are divided into tasks according to the lanes where the boxes are located, and the initial segmentation results are generated.
  • the initial segmentation results include one or more initial handling tasks, and the number of boxes contained in each initial handling task is less than or equal to the maximum capacity of the robot. ; Use a heuristic algorithm to iteratively optimize the initial segmentation results to obtain at least one handling task.
  • the optimization goal of the iterative optimization is: the total number of cross-lanes is minimized when at least one handling task is executed, and/or, at least one handling task is executed
  • the total distance span across the lanes is the smallest, so that the boxes in the same handling task have the same destination, and they are concentrated in the same lane or in a few lanes, and the distance between the lanes is relatively short.
  • Each handling task is assigned For a robot in an idle state, the robot completes the handling of the boxes in the handling task assigned to it, and can assign tasks based on the global plan, which greatly improves the overall handling efficiency of the boxes in the intelligent storage system, and improves the storage/exit library efficiency.
  • FIG. 5 is a schematic structural diagram of a task allocation device provided by Embodiment 5 of the present invention.
  • the task allocation device 100 includes: a processor 1001 , a memory 1002 , and a computer program stored in the memory 1002 and executable on the processor 1001 .
  • the processor 1001 implements the task allocation method provided by any one of the above method embodiments when running the computer program.
  • tasks are divided into boxes with the same destination to generate at least one handling task, wherein each handling task includes one or more boxes, each The number of boxes contained in the handling task is less than or equal to the maximum capacity of the robot, so that the boxes in the same handling task have the same destination, and are concentrated in the same lane or in a few lanes, and the distance between the lanes is relatively short,
  • Each handling task is assigned to a robot in an idle state, and the robot completes the handling of the boxes in the handling task assigned to it.
  • Task allocation can be performed based on global planning, which greatly improves the overall handling efficiency of boxes in the intelligent storage system.
  • An embodiment of the present invention also provides a computer-readable storage medium, in which a computer program is stored, and the computer program is used by a processor to execute the task allocation method provided by any one of the above method embodiments.
  • the embodiment of the present invention also provides a computer program product, the program product includes: a computer program, the computer program is stored in a readable storage medium, at least one processor of the warehouse management system can read the computer program from the readable storage medium, at least A processor executes the computer program so that the warehouse management system executes the task assignment method provided in any one of the above method embodiments.
  • the disclosed devices and methods can be implemented in other ways.
  • the device embodiments described above are only illustrative.
  • the division of units is only a logical function division. In actual implementation, there may be other division methods.
  • multiple units or components can be combined or integrated. to another system, or some features may be ignored, or not implemented.
  • the mutual coupling or direct coupling or communication connection shown or discussed may be through some interfaces, and the indirect coupling or communication connection of devices or units may be in electrical, mechanical or other forms.
  • a unit described as a separate component may or may not be physically separated, and a component displayed as a unit may or may not be a physical unit, that is, it may be located in one place, or may be distributed to multiple network units. Part or all of the units can be selected according to actual needs to achieve the purpose of the solution of this embodiment.
  • each functional unit in each embodiment of the present invention may be integrated into one processing unit, each unit may exist separately physically, or two or more units may be integrated into one unit.
  • the above-mentioned integrated units can be implemented in the form of hardware, or in the form of hardware plus software functional units.
  • the above-mentioned integrated units implemented in the form of software functional units may be stored in a computer-readable storage medium.
  • the above-mentioned software functional units are stored in a storage medium, and include several instructions to make a computer device (which may be a personal computer, a server, or a network device, etc.) or a processor (processor) execute some steps of the method in each embodiment of the present invention .
  • the aforementioned storage media include: U disk, mobile hard disk, read-only memory (Read-Only Memory, ROM), random access memory (Random Access Memory, RAM), magnetic disk or optical disc and other media that can store program codes. .

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Economics (AREA)
  • Strategic Management (AREA)
  • Marketing (AREA)
  • Game Theory and Decision Science (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Development Economics (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Manipulator (AREA)

Abstract

La présente demande concerne un procédé et un appareil d'attribution de tâches, un dispositif, un support de stockage et un produit-programme. Dans le procédé de la présente demande, selon les destinations de boîtes à transporter, un partitionnement de tâches est effectué sur des boîtes ayant la même destination conformément à des allées où les boîtes sont situées, de manière à générer au moins une tâche de transport, chaque tâche de transport comprenant une ou plusieurs boîtes, et le nombre de boîtes contenues dans chaque tâche de transport étant inférieur ou égal à la capacité maximale d'un robot, de telle sorte que les boîtes dans la même tâche de transport ont la même destination et sont concentrées dans la même allée ou en quelques allées, et les distances entre les allées sont relativement petites ; et chaque tâche de transport est attribuée à un robot dans un état de repos, et le robot mène à bien le transport des boîtes dans la tâche de transport attribuée à celui-ci. Par conséquent, l'attribution de tâches peut être effectuée sur la base d'une planification globale, ce qui permet d'améliorer considérablement l'efficience globale de transport de boîtes dans un système d'entreposage intelligent.
PCT/CN2022/107839 2021-08-16 2022-07-26 Procédé et appareil d'attribution de tâches, dispositif, support de stockage et produit-programme WO2023020213A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202110935525.4 2021-08-16
CN202110935525.4A CN115907051A (zh) 2021-08-16 2021-08-16 任务分配的方法、装置、设备、存储介质及程序产品

Publications (1)

Publication Number Publication Date
WO2023020213A1 true WO2023020213A1 (fr) 2023-02-23

Family

ID=85239464

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/107839 WO2023020213A1 (fr) 2021-08-16 2022-07-26 Procédé et appareil d'attribution de tâches, dispositif, support de stockage et produit-programme

Country Status (2)

Country Link
CN (1) CN115907051A (fr)
WO (1) WO2023020213A1 (fr)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116307645A (zh) * 2023-05-22 2023-06-23 浙江凯乐士科技集团股份有限公司 仓储车辆作业区域的分区方法、装置、电子设备及介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2420980A1 (fr) * 2010-08-06 2012-02-22 Logotecna S.R.L. Système de stockage automatique pour pharmacies
CN106892233A (zh) * 2017-02-23 2017-06-27 北京京东尚科信息技术有限公司 用于商品仓储布局的方法、装置、电子设备和存储介质
CN110111048A (zh) * 2019-04-29 2019-08-09 西安电子科技大学 仓储系统中的订单任务调度方法
WO2020006010A1 (fr) * 2018-06-25 2020-01-02 Ahmann Robert D Système d'entrepôt automatisé et procédé de préparation par lot optimisé
CN110803447A (zh) * 2019-09-20 2020-02-18 北京旷视机器人技术有限公司 一种物品运输管理方法、装置、系统及存储介质
CN112101620A (zh) * 2020-08-12 2020-12-18 久恒理树 一种物流线路规划方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2420980A1 (fr) * 2010-08-06 2012-02-22 Logotecna S.R.L. Système de stockage automatique pour pharmacies
CN106892233A (zh) * 2017-02-23 2017-06-27 北京京东尚科信息技术有限公司 用于商品仓储布局的方法、装置、电子设备和存储介质
WO2020006010A1 (fr) * 2018-06-25 2020-01-02 Ahmann Robert D Système d'entrepôt automatisé et procédé de préparation par lot optimisé
CN110111048A (zh) * 2019-04-29 2019-08-09 西安电子科技大学 仓储系统中的订单任务调度方法
CN110803447A (zh) * 2019-09-20 2020-02-18 北京旷视机器人技术有限公司 一种物品运输管理方法、装置、系统及存储介质
CN112101620A (zh) * 2020-08-12 2020-12-18 久恒理树 一种物流线路规划方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116307645A (zh) * 2023-05-22 2023-06-23 浙江凯乐士科技集团股份有限公司 仓储车辆作业区域的分区方法、装置、电子设备及介质

Also Published As

Publication number Publication date
CN115907051A (zh) 2023-04-04

Similar Documents

Publication Publication Date Title
US11724879B2 (en) Management method, device and system applied to goods-to-person system, server and computer storage medium
WO2020238657A1 (fr) Procédé de tri de marchandises et système de tri de marchandises
US20210133534A1 (en) Cloud task scheduling method based on phagocytosis-based hybrid particle swarm optimization and genetic algorithm
Pan et al. Storage assignment problem with travel distance and blocking considerations for a picker-to-part order picking system
US8984085B2 (en) Apparatus and method for controlling distributed memory cluster
WO2022057248A1 (fr) Procédé et appareil de traitement de commandes, dispositif, système et support de stockage
Wutthisirisart et al. A two-phased heuristic for relation-based item location
JP6376865B2 (ja) 並列ツリー・ベースの予測のための、コンピュータにより実行される方法、ストレージ媒体、およびコンピュータ・システム
CN111476413A (zh) 基于大数据的仓库储位分配方法及系统
CN109146349B (zh) 订单分配方法及装置
US10363659B2 (en) System and method for load balancing of robots to create more equivalent task loads across task servers
CN112785132B (zh) 一种用于智能仓库的多机器人移动货架任务分配方法
WO2023020213A1 (fr) Procédé et appareil d'attribution de tâches, dispositif, support de stockage et produit-programme
CN112685138B (zh) 云环境下基于多种群混合智能优化的多工作流调度方法
CN115660380B (zh) 货到人拣选的订单处理方法及装置
Kofler et al. Affinity based slotting in warehouses with dynamic order patterns
Beckschäfer et al. Simulating storage policies for an automated grid-based warehouse system
CN116542365A (zh) 移动机器人履行系统中订单分配和agv调度联合优化方法
Zhuang et al. Rack retrieval and repositioning optimization problem in robotic mobile fulfillment systems
Shafahi et al. An efficient task scheduling in cloud computing based on ACO algorithm
EP1524599B1 (fr) Méthode pour redistribuer des objets à des unités de traitement
WO2023173992A1 (fr) Procédé et appareil de distribution de marchandises, et dispositif
CN116629495A (zh) 用于输出信息的方法和装置
Xie et al. Efficient order picking methods in robotic mobile fulfillment systems
CN112862212B (zh) 基于改进麻雀搜索算法的多agv调度方法、装置及设备

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22857526

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE