Task allocation method, system, device and equipment and storage medium

By adjusting the task allocation strategy and optimizing the warehousing and outbound task allocation of the first type of robots based on the number of free cache slots and the preset water level, the problem of tight cache slots in warehousing operations is solved, and the overall warehousing and outbound efficiency is improved.

CN120688788APending Publication Date: 2025-09-23HANGZHOU HIKROBOT TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510773170.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-06-10
Publication Date
2025-09-23

AI Technical Summary

Technical Problem

In warehousing operations, the uneven work efficiency of AGVs and first-class robots leads to an imbalance in the workload of warehousing and outbound tasks, which can easily lead to a shortage of free cache slots, resulting in stuck warehousing and outbound tasks and low overall efficiency.

Method used

By obtaining the number of free cache locations in the target shelf, the task allocation strategy is adjusted according to the preset water level, and the warehousing and outbound tasks of the first type of robots are suspended or alternately allocated to optimize the use of cache locations and improve the overall warehousing and outbound efficiency.

Benefits of technology

Effectively release cache positions, avoid jamming of inbound and outbound tasks, improve overall inbound and outbound efficiency, optimize cache position usage, and improve robot handling efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120688788A_ABST
    Figure CN120688788A_ABST
Patent Text Reader

Abstract

The embodiment of the invention provides a task allocation method, system and device, equipment and a storage medium, and relates to the technical field of warehouse logistics. According to the specific scheme, the first number of idle cache positions in a target goods shelf is obtained; if the first number is lower than a first preset water level, allocating a first type of warehouse-in tasks to the first type of robots based on the current to-be-executed order, and pausing to allocate the first type of warehouse-out tasks to the first type of robots; if the first number is not lower than the first preset water level, the second number of the to-be-warehoused material boxes stored in the cache position is obtained; if the second number exceeds a second preset water level, allocating a first-class warehousing task for the to-be-warehoused material box in the cache position to the first-class robot, and pausing to allocate a first-class ex-warehouse task to the first-class robot; or alternately distributing the first-class warehouse-in tasks and the first-class warehouse-out tasks to the first-class robots. According to the scheme, the warehouse-in and warehouse-out efficiency 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 warehousing and logistics technology, and in particular to a task allocation method, system, device, equipment and storage medium. Background Art

[0002] At present, in warehousing operations, a cache position is usually set at the bottom layer of the shelf. In this way, the AGV (Automated Guided Vehicle) can transfer the material boxes between the cache position and the work area, and the material boxes can be transferred between the cache position and the storage position of the shelf by robots that can carry the material boxes on and off the shelves (which can be called first-class robots), such as CTU (Carton Transfer Unit, material box handling robot) and / or STU (Sky Transfer Unit, material box sky rail robot). For example, in the outbound task, the first-class robot first removes the material box from the storage position of the shelf, that is, moves it to the cache position, and then the AGV moves the material box from the cache position to the work area; in the inbound task, the AGV moves the material box from the work area to the cache position, and then the first-class robot puts the material box from the cache position on the shelf, that is, moves it to the storage position. Therefore, through the set cache position and the coordinated cooperation of the two robots, the inbound and outbound tasks of the material box can be completed.

[0003] However, due to the different operating efficiencies of AGVs and first-class robots, and the often uneven workload of inbound and outbound tasks, a shortage of free buffer slots can easily occur during operations. If there are no free buffer slots during an operation, inbound and outbound tasks will be stuck, resulting in overall low operational efficiency. Specifically, due to a lack of free buffer slots, bins that need to be shipped out of the storage area cannot be removed from the shelf, or bins that need to be shipped into the work area cannot be returned to the buffer slot, causing inbound and outbound tasks to be stuck and overall inbound and outbound efficiency to be low. Summary of the Invention

[0004] The purpose of the embodiments of the present application is to provide a task allocation method, system, device, equipment, and storage medium to improve the overall efficiency of storage and retrieval. The specific technical solution is as follows:

[0005] In a first aspect, an embodiment of the present application provides a task allocation method, the method comprising:

[0006] Obtain the number of free cache locations in the target shelf to obtain a first number;

[0007] If the first quantity is lower than a first preset level, based on the task indicated by the current pending order, a first type of warehousing task is assigned to the first type of robot used for performing the transport task in the target shelf, and the assignment of the first type of outbound task to the first type of robot is suspended; wherein the first type of warehousing task represents transporting the to-be-warehoused material boxes in the cache position of the target shelf to the storage position of the target shelf, and the first type of outbound task represents transporting the to-be-warehoused material boxes in the storage position of the target shelf to the cache position of the target shelf;

[0008] If the first quantity is not lower than the first preset level, obtaining the number of to-be-stocked material boxes stored in the cache position of the target shelf to obtain a second quantity;

[0009] If the second quantity exceeds the second preset level, the first type of warehousing task for the to-be-stored material boxes in the cache position of the target shelf indicated by the current order to be executed is assigned to the first type of robot, and the assignment of the first type of outbound task to the first type of robot is suspended; or, based on the tasks indicated by the current order to be executed, the first type of warehousing task and the first type of outbound task are alternately assigned to the first type of robot.

[0010] Optionally, the method further includes:

[0011] In the case where the first type of warehousing tasks and the first type of outbound tasks are alternately assigned to the first type of robots based on the tasks indicated by the current order to be executed, when it is detected that any second type of robot performing the second type of warehousing tasks runs to the target shelf, the second type of outbound tasks are assigned to the second type of robots based on the tasks indicated by the current order to be executed; wherein, the second type of warehousing tasks represent transporting the boxes to be warehousing outside the target shelf to the cache position of the target shelf, and the second type of outbound tasks represent outbound boxes to be warehousing in the cache position of the target shelf.

[0012] Optionally, the method further includes:

[0013] If the second quantity does not exceed the second preset level, the first type of warehousing task and the first type of outbound task are assigned to the first type of robot based on the tasks indicated by the current order to be executed.

[0014] Optionally, allocating the first type of warehousing task and the first type of outbound task to the first type of robot based on the task indicated by the current to-be-executed order includes:

[0015] Determine the first-category inbound task and the first-category outbound task indicated by the current pending order;

[0016] For each determined task, calculate the distance between the position of the material box corresponding to the task and the first type of robot to obtain a first distance;

[0017] Assign the corresponding first-distance minimum task to the first-type robot, and after the first-type robot completes the currently assigned task, return to the step of determining the first-type warehousing task and the first-type outbound task indicated by the current order to be executed.

[0018] Optionally, the method further includes:

[0019] Obtain the quantity of the first type of outbound tasks indicated by the current pending order to obtain the third quantity;

[0020] If the third quantity is greater than a preset threshold, the number of boxes to be shipped stored in the cache of the target shelf is obtained to obtain a fourth quantity;

[0021] If the fourth quantity exceeds the third preset level, the second type of outbound task is assigned to the second type of robot based on the task indicated by the current order to be executed, and the assignment of the second type of inbound task to the second type of robot is suspended; wherein, the second type of inbound task represents the transportation of the inbound material boxes outside the target shelf to the cache position of the target shelf, and the second type of outbound task represents the outbound material boxes in the cache position of the target shelf.

[0022] Optionally, the method further includes:

[0023] If the fourth quantity does not exceed the third preset level, the second type of warehousing task and the second type of outbound task are assigned to the second type of robot based on the task indicated by the current order to be executed.

[0024] Optionally, allocating the second type of warehousing task and the second type of outbound task to the second type of robot based on the task indicated by the current to-be-executed order includes:

[0025] Determine the second-category inbound task and the second-category outbound task indicated by the current pending order;

[0026] For each determined task, calculate the distance between the position of the material box corresponding to the task and the second type of robot to obtain a second distance;

[0027] Assign the corresponding second-distance minimum task to the second-type robot, and after the second-type robot completes the currently assigned task, return to the step of determining the second-type warehousing task and the second-type outbound task indicated by the current order to be executed.

[0028] Optionally, the target shelves are shelves on both sides of an aisle; the cache position is located at the bottom layer of the target shelf; the first type of robot is a CTU and / or STU, and the second type of robot is an AGV.

[0029] In a second aspect, an embodiment of the present application provides a task allocation system, the system comprising a first type of robot, a second type of robot, and a control device;

[0030] The control device is used to execute the task allocation method described in the first aspect above;

[0031] The first type of robot and the second type of robot are used to carry material boxes under the control of the control device.

[0032] In a third aspect, an embodiment of the present application provides a task allocation device, the device comprising:

[0033] A first acquisition module is used to acquire the number of free cache locations in the target shelf to obtain a first number;

[0034] A first allocation module is configured to allocate a first type of warehousing task to a first type of robot for performing the transport task within the target shelf, and suspend allocation of a first type of outbound task to the first type of robot, if the first quantity is lower than a first preset level, based on the task indicated by the current to-be-executed order; wherein the first type of warehousing task represents transporting the to-be-warehoused material boxes in the cache position of the target shelf to the storage position of the target shelf, and the first type of outbound task represents transporting the to-be-warehoused material boxes in the storage position of the target shelf to the cache position of the target shelf;

[0035] A second acquisition module is configured to acquire the number of to-be-stocked material boxes stored in the cache position of the target shelf to obtain a second number if the first number is not lower than the first preset level;

[0036] The second allocation module is used to allocate the first type of warehousing task of the to-be-stored material box in the cache position of the target shelf indicated by the current order to be executed to the first type of robot if the second quantity exceeds a second preset level, and to suspend allocation of the first type of outbound task to the first type of robot; or, based on the task indicated by the current order to be executed, alternately allocate the first type of warehousing task and the first type of outbound task to the first type of robot.

[0037] Optionally, the device further comprises:

[0038] The third allocation module is used to allocate the first type of warehousing tasks and the first type of outbound tasks alternately to the first type of robots when the second allocation module performs the tasks indicated by the current order to be executed. When it is detected that any second type of robot performing the second type of warehousing tasks runs to the target shelf, the third allocation module allocates the second type of outbound tasks to the second type of robots based on the tasks indicated by the current order to be executed; wherein, the second type of warehousing tasks represent the transportation of the incoming material boxes outside the target shelf to the cache position of the target shelf, and the second type of outbound tasks represent the outbound material boxes in the cache position of the target shelf.

[0039] Optionally, the device further comprises:

[0040] The fourth allocation module is used to allocate the first type of warehousing tasks and the first type of outbound tasks to the first type of robots based on the tasks indicated by the current order to be executed if the second quantity does not exceed the second preset level.

[0041] Optionally, the fourth allocation module is specifically configured to:

[0042] Determine the first-category inbound task and the first-category outbound task indicated by the current pending order;

[0043] For each determined task, calculate the distance between the position of the material box corresponding to the task and the first type of robot to obtain a first distance;

[0044] Assign the corresponding first-distance minimum task to the first-type robot, and after the first-type robot completes the currently assigned task, return to the step of determining the first-type warehousing task and the first-type outbound task indicated by the current order to be executed.

[0045] Optionally, the device further comprises:

[0046] A third acquisition module is used to acquire the quantity of the first type of outbound tasks indicated by the current pending order to obtain a third quantity;

[0047] a fourth acquisition module configured to acquire the number of to-be-shipped material boxes stored in the cache of the target shelf to obtain a fourth number if the third number is greater than a preset threshold;

[0048] The fifth allocation module is used to allocate the second type of outbound task to the second type of robot based on the task indicated by the current order to be executed, and suspend the allocation of the second type of inbound task to the second type of robot if the fourth quantity exceeds the third preset level; wherein the second type of inbound task represents the transportation of the inbound material boxes outside the target shelf to the cache position of the target shelf, and the second type of outbound task represents the outbound material boxes in the cache position of the target shelf.

[0049] Optionally, the device further comprises:

[0050] The sixth allocation module is used to allocate the second type of warehousing tasks and the second type of outbound tasks to the second type of robot based on the tasks indicated by the current order to be executed if the fourth quantity does not exceed the third preset water level.

[0051] Optionally, the sixth allocation module is specifically configured to:

[0052] Determine the second-category inbound task and the second-category outbound task indicated by the current pending order;

[0053] For each determined task, calculate the distance between the position of the material box corresponding to the task and the second type of robot to obtain a second distance;

[0054] Assign the corresponding second-distance minimum task to the second-type robot, and after the second-type robot completes the currently assigned task, return to the step of determining the second-type warehousing task and the second-type outbound task indicated by the current order to be executed.

[0055] Optionally, the target shelves are shelves on both sides of an aisle; the cache position is located at the bottom layer of the target shelf; the first type of robot is a CTU and / or STU, and the second type of robot is an AGV.

[0056] In a fourth aspect, an embodiment of the present application provides an electronic device, including:

[0057] Memory for storing computer programs;

[0058] The processor is configured to implement the task allocation method described in the first aspect when executing the program stored in the memory.

[0059] In a fifth aspect, an embodiment of the present application provides a computer-readable storage medium, wherein the computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the task allocation method described in the first aspect is implemented.

[0060] In a sixth aspect, an embodiment of the present application provides a computer program product, which includes executable instructions. When the executable instructions are executed on a computer, the computer executes the task allocation method described in the first aspect above.

[0061] Beneficial effects of the embodiments of the present application:

[0062] In the solution provided by the embodiment of the present application, if the first quantity is lower than the first preset level, it indicates that the number of free cache locations in the target shelf is small. At this time, by suspending the allocation of the first type of outbound tasks to the first type of robots, the first type of robots only perform the first type of inbound tasks of transporting the to-be-stored material boxes in the cache locations to the storage locations when there are few free cache locations. This frees up some cache locations and reserves a certain number of cache locations for material boxes that need to be transported from outside the storage area to the target shelf. Furthermore, if the first quantity is not lower than the first preset level, there are many free cache locations. If the number of to-be-stored material boxes stored in the cache locations of the target shelf exceeds the second preset level at this time, it indicates that a large number of to-be-stored material boxes are stored in the cache locations of the target shelf. Then, by assigning the first type of warehousing task for the to-be-stored material boxes in the cache position of the target shelf indicated by the current order to be executed to the first type of robot, and suspending the assignment of the first type of outbound task to the first type of robot, the cache position can be further released to further avoid the jam of the warehousing and outbound tasks, thereby improving the overall warehousing and outbound efficiency; or, by alternately assigning the first type of warehousing task and the first type of outbound task to the first type of robot based on the tasks indicated by the current order to be executed, the outbound efficiency can be improved without increasing the occupancy of the idle cache positions, thereby improving the overall warehousing and outbound efficiency.

[0063] Of course, it is not necessary to achieve all the advantages described above at the same time when implementing any product or method of the present application. BRIEF DESCRIPTION OF THE DRAWINGS

[0064] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the following briefly introduces the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other embodiments can also be obtained based on these drawings.

[0065] Figure 1 A flowchart of a task allocation method provided in an embodiment of the present application;

[0066] Figure 2 A schematic diagram of a warehousing operation scenario provided in an embodiment of the present application;

[0067] Figure 3 A schematic diagram of an AGV operation scenario provided in an embodiment of the present application;

[0068] Figure 4 A schematic top view of a warehousing operation scene provided in an embodiment of the present application;

[0069] Figure 5 A schematic diagram of a CTU operation scenario provided in an embodiment of the present application;

[0070] Figure 6 A schematic diagram of the structure of a task allocation system provided in an embodiment of the present application;

[0071] Figure 7 A schematic diagram of the structure of a task allocation device provided in an embodiment of the present application;

[0072] Figure 8 A block diagram of an electronic device for implementing the task allocation method provided in an embodiment of the present application. DETAILED DESCRIPTION

[0073] The following will be combined with the drawings in the embodiments of this application to clearly and completely describe the technical solutions in the embodiments of this application. Obviously, the embodiments described are only part of the embodiments of this application, not all of the embodiments. Based on the embodiments in this application, all other embodiments obtained by ordinary technicians in this field based on this application are within the scope of protection of this application.

[0074] The task allocation method provided in the embodiments of the present application can be applied to various control devices, such as personal computers, servers, and other devices with data processing capabilities. In addition, it is understood that the task allocation method provided in the embodiments of the present application can be implemented through software, hardware, or a combination of software and hardware.

[0075] like Figure 1 As shown, the task allocation method provided in the embodiment of the present application includes steps S101-S104:

[0076] S101, obtaining the number of free cache locations in a target shelf to obtain a first number;

[0077] In this embodiment, the number of free cache slots in the target shelf (i.e., a first number) can be obtained to allocate inbound and outbound tasks based on the relationship between the first number and a first preset level. In one implementation, the control device can obtain the first number when a new handling task is received. In another implementation, the control device can obtain the first number in response to reaching a predetermined first detection period. That is, the number of free cache slots in the target shelf can be detected according to the predetermined first detection period.

[0078] In this way, the availability of cache locations can be monitored, and inbound and outbound tasks can be allocated based on the availability of cache locations. The target shelves are shelves on both sides of an aisle, and the cache locations can be independent of the shelves. For example, the cache locations corresponding to the target shelves can be set in the area near the target shelves. Alternatively, the cache locations can be set at the bottom layer of the shelves. In this case, the storage space in the bottom layer of the target shelves is set as at least one cache location, and the storage space in all layers of the shelves except the bottom layer is set as storage locations. This is all reasonable. The passage in the warehouse area consisting of the passage points for robots used to transport boxes on the shelves for loading and unloading and the shelves on both sides is called an aisle.

[0079] For example, the first detection cycle can be 1 minute, 2 minutes, and so on. In actual applications, when the robot performs the in-and-out task, it can report the status of the task to the RCS (Robot Control System). For example, the robot reports after moving the to-be-outbound material box on the storage position of the target shelf to the cache position, and reports after moving the to-be-inbound material box in the cache position of the target shelf to the storage position. In this way, the RCS can determine the occupancy of the cache position of the target shelf based on the information reported by the robot, and thus can determine the number of free cache positions in the target shelf. Therefore, when the first detection cycle is reached, the number of free cache positions in the target shelf can be obtained from the RCS as the first number.

[0080] For example, Figure 2 As shown in the figure, in the actual warehousing operation scenario, the warehouse area includes multiple shelves arranged in a matrix, and the walking passage between two adjacent shelves is a lane. The shelves are provided with storage spaces for storing material boxes, and the bottom layer of the shelves is provided with a cache space. AGV travels back and forth between the warehouse area and the work area, such as Figure 3 As shown, the AGV is used to perform the second type of outbound task of transporting the material box from the cache location to the work area, and the second type of inbound task of transporting the material box from the work area to the cache location.

[0081] like Figure 4 As shown in FIG, a schematic diagram of a top view of a warehousing operation scene is shown. The warehouse area contains multiple lanes. The shelves on both sides of each lane are the target shelves mentioned above. The cache positions on both sides of each lane are the cache positions of the lane, that is, the cache positions in the target shelves mentioned above. Figure 5 As shown in the figure, the first type of robot is a CTU. The CTU performs tasks in the warehouse area, and when assigning tasks to the CTU, the principle of non-empty CTUs not crossing aisles is followed. That is, a CTU cannot carry a container from aisle 1 to aisle 2, nor can it place a container from aisle 1 in a cache or storage location in aisle 2. The CTU is used to perform the first type of outbound task, which is to move a container from a storage location on a shelf to a cache location, and the first type of inbound task, which is to move a container from a cache location to a storage location.

[0082] S102: If the first quantity is lower than a first preset level, then based on the task indicated by the current pending order, assign a first-type warehousing task to the first-type robot for performing the transport task within the target shelf, and suspend assigning the first-type outbound task to the first-type robot; wherein the first-type warehousing task represents transporting the to-be-warehoused material boxes in the cache position of the target shelf to the storage position of the target shelf, and the first-type outbound task represents transporting the to-be-warehoused material boxes in the storage position of the target shelf to the cache position of the target shelf;

[0083] In this embodiment, the first preset water level represents the critical value at which the number of free cache locations in the target shelf is tight. For example, the first preset water level can be 20%-30% of the number of all cache locations in the target shelf. For example, if 100 cache locations are set in the target shelf, the first preset water level can be set to 20. In actual applications, the first preset water level can be set by relevant technical personnel based on experience, and the embodiments of the present application are not limited to this. The first type of robot is used to perform handling tasks within the target shelf, that is, the first type of robot works in the lane corresponding to the target shelf, and is used to perform the first type of warehousing task of transporting the to-be-warehoused material boxes in the cache location of the target shelf to the storage location of the target shelf, and the first type of outbound task of transporting the to-be-outbound material boxes in the storage location of the target shelf to the cache location of the target shelf. For example, the first type of robot can be a robot such as CTU and / or STU that can transport material boxes for loading and unloading.

[0084] In actual applications, the tasks indicated by the current pending order may include a second type of incoming warehousing task indicating that the incoming material boxes outside the target shelf are moved to the cache position of the target shelf, and a first type of incoming warehousing task indicating that the incoming material boxes in the cache position of the target shelf are moved to the storage position of the target shelf, or, a first type of outgoing warehousing task indicating that the outgoing material boxes in the storage position of the target shelf are moved to the cache position of the target shelf, and a second type of outgoing warehousing task indicating that the outgoing material boxes in the cache position of the target shelf are taken out, or, a first type of incoming warehousing task, a first type of outgoing warehousing task, a second type of incoming warehousing task, and a second type of outgoing warehousing task, and so on.

[0085] Exemplarily, there are multiple orders to be executed, and there is a receiving order between the multiple orders to be executed. When assigning tasks to the first type of robots based on the tasks indicated by the current orders to be executed, the order of the first type of warehousing tasks indicated by the current orders to be executed can be determined according to the order of receiving the orders to be executed. Thus, the first type of warehousing tasks can be assigned to the first type of robots according to the order of the first type of warehousing tasks indicated by the current orders to be executed.

[0086] It can be understood that if the first number is lower than the first preset level, it means that the number of free cache positions in the target shelf is small. At this time, by suspending the allocation of the first type of outbound task to the first type of robot, the first type of robot only executes the first type of inbound task of transporting the to-be-warehoused material boxes in the cache position to the storage position when there are fewer free cache positions, thereby releasing some cache positions and reserving a certain number of cache positions for the to-be-warehoused material boxes that need to be transported from outside the warehouse area to the target shelf.

[0087] S103, if the first quantity is not lower than the first preset level, obtaining the number of to-be-stocked material boxes stored in the cache position of the target shelf to obtain a second quantity;

[0088] It is understood that the target shelf's cache contains boxes waiting to be stored, which have been moved from outside the storage area to the cache, and boxes waiting to be shipped out of the storage area, which have been moved from storage locations on the shelf to the cache. If the first quantity is not less than the first preset level, it indicates that a certain number of cache locations are currently vacant. In this case, the number of boxes waiting to be stored in the target shelf's cache can be obtained to determine whether to resume assigning the first type of shipping task to the first type of robot based on the number of boxes waiting to be stored.

[0089] For example, in actual applications, when performing inbound and outbound tasks, the robot can report the task status to the RCS. For example, the robot may report after moving a to-be-outbound material box from a storage location on a target shelf to a cache location, and after moving a to-be-inbound material box from outside the storage area to a cache location on the target shelf. In this way, the RCS can determine the number of to-be-inbound material boxes stored in each cache location on the target shelf based on the information reported by the robot. Consequently, the number of to-be-inbound material boxes stored in the cache location on the target shelf can be obtained from the RCS as the second quantity.

[0090] S104, if the second quantity exceeds the second preset level, the first type of warehousing task of the to-be-warehoused material boxes in the cache position of the target shelf indicated by the current order to be executed is assigned to the first type of robot, and the assignment of the first type of outbound task to the first type of robot is suspended; or, based on the tasks indicated by the current order to be executed, the first type of warehousing task and the first type of outbound task are alternately assigned to the first type of robot.

[0091] In this embodiment, the second preset water level represents the critical value at which the number of to-be-warehoused boxes stored in the cache positions of the target shelf is too large. For example, the second preset water level can be 50%-60% of the number of all cache positions in the target shelf. For example, if there are 100 cache positions in the target shelf, the second preset water level can be set to 55. In actual applications, the second preset water level can be set by relevant technical personnel based on experience, and the embodiments of the present application are not limited to this. For example, in one way, the second preset water level can be set to be higher than the first preset water level, so that the first type of robot will suspend the execution of the first type of outbound task only when the number of to-be-warehoused boxes occupies a large proportion of the cache positions, so as to improve the outbound efficiency.

[0092] If the second quantity exceeds the second preset level, it indicates that there are a large number of boxes waiting to be stored in the buffer locations of the target shelf. In this case, the first-type warehousing tasks can still be preferentially assigned to the first-type robots. In other words, the first-type warehousing tasks for the boxes waiting to be stored in the buffer locations of the target shelf indicated by the currently pending orders are assigned to the first-type robots, and the first-type outbound tasks assigned to the first-type robots are temporarily suspended.

[0093] It can be understood that by suspending the allocation of the first type of out-of-warehouse tasks to the first type of robots when the second number exceeds the second preset level, the first type of robots will give priority to executing the first type of in-warehouse tasks of transporting the in-warehouse boxes in the cache position to the storage position when there are more in-warehouse boxes in the cache position, thereby further releasing the cache position to further avoid the in-warehouse and out-of-warehouse tasks from being stuck, thereby improving the overall in-warehouse and out-of-warehouse efficiency.

[0094] Alternatively, when the second quantity exceeds the second preset level, the first type of warehousing tasks and the first type of outbound tasks can be alternately assigned to the first type of robots based on the tasks indicated by the current order to be executed, so as to ensure the outbound efficiency without increasing the occupancy of idle cache positions, thereby improving the overall warehousing and outbound efficiency.

[0095] For example, the order of first-category inbound tasks and second-category inbound tasks indicated by the currently pending orders can be determined based on the order in which they were received. When assigning tasks to the first-category robots, the robot is assigned the first-category inbound task with the highest ranking, followed by the first-category outbound task with the highest ranking, and so on, alternating between first-category inbound tasks and first-category outbound tasks.

[0096] Optionally, in one implementation, when the first type of warehousing tasks and the first type of outbound tasks are alternately assigned to the first type of robots based on the tasks indicated by the current order to be executed, when it is detected that any second type of robot performing the second type of warehousing tasks runs to the target shelf, the second type of outbound tasks are assigned to the second type of robots based on the tasks indicated by the current order to be executed; wherein the second type of warehousing tasks represent the transportation of the boxes to be warehousing outside the target shelf to the cache position of the target shelf, and the second type of outbound tasks represent the outbound boxes to be warehousing in the cache position of the target shelf.

[0097] It can be understood that if the second number exceeds the second preset level, it indicates that there are too many boxes waiting to be stored in the current cache. Therefore, while first-type storage tasks and first-type outbound tasks are alternately assigned to the first-type robots, a second-type outbound task can also be assigned to each second-type robot that performs a second-type storage task when it reaches the target shelf. This allows the second-type robot to also pick up a box waiting to be stored in the same aisle after completing the storage task, further improving outbound efficiency. Furthermore, more cache locations can be quickly freed up, further improving overall storage efficiency.

[0098] In the solution provided by the embodiment of the present application, if the first quantity is lower than the first preset level, it indicates that the number of free cache locations in the target shelf is small. At this time, by suspending the allocation of the first type of outbound tasks to the first type of robots, the first type of robots only perform the first type of inbound tasks of transporting the to-be-stored material boxes in the cache locations to the storage locations when there are few free cache locations. This frees up some cache locations and reserves a certain number of cache locations for material boxes that need to be transported from outside the storage area to the target shelf. Furthermore, if the first quantity is not lower than the first preset level, there are many free cache locations. If the number of to-be-stored material boxes stored in the cache locations of the target shelf exceeds the second preset level at this time, it indicates that a large number of to-be-stored material boxes are stored in the cache locations of the target shelf. Then, by assigning the first type of warehousing task for the to-be-stored material boxes in the cache position of the target shelf indicated by the current order to be executed to the first type of robot, and suspending the assignment of the first type of outbound task to the first type of robot, the cache position can be further released to further avoid the jam of the warehousing and outbound tasks, thereby improving the overall warehousing and outbound efficiency; or, by alternately assigning the first type of warehousing task and the first type of outbound task to the first type of robot based on the tasks indicated by the current order to be executed, the outbound efficiency can be improved without increasing the occupancy of the idle cache positions, thereby improving the overall warehousing and outbound efficiency.

[0099] In addition, compared with the solution of suspending the allocation of the first type of out-of-warehouse task to the first type of robot only when the first number is lower than the first preset level, this avoids the problem that the second type of robot performs the task faster, resulting in the first type of robot starting to empty the cache position when the number of free cache positions is small, and cannot keep up with the speed at which the second type of robot occupies the free cache positions when performing the second type of in-warehousing task, thereby causing the in-warehousing and out-of-warehouse tasks to be stuck.

[0100] Optionally, in another embodiment of the present application, the task allocation method further includes:

[0101] If the second quantity does not exceed the second preset level, the first type of warehousing task and the first type of outbound task are assigned to the first type of robot based on the tasks indicated by the current order to be executed.

[0102] It is understood that if the second number does not exceed the second preset level, it indicates that the number of incoming bins is at a normal level. At this time, since there are a large number of free cache slots and there are not a large number of incoming bins in the cache slots, the first-category incoming tasks and the first-category outgoing tasks can be normally allocated. For example, in an actual application, if there are multiple pending orders, the order of priority between the first-category incoming tasks and the first-category outgoing tasks indicated by the pending orders can be determined according to the order in which the pending orders are received. Then, the first-category incoming tasks and the first-category outgoing tasks are allocated to the first-category robots according to the order in which the tasks are received.

[0103] Optionally, in one implementation, allocating the first type of warehousing task and the first type of outbound task to the first type of robot based on the task indicated by the current to-be-executed order may include steps A1-A3:

[0104] A1: Determine the first-category inbound task and the first-category outbound task indicated by the current pending order;

[0105] A2, for each determined task, calculating the distance between the position of the material box corresponding to the task and the first type of robot to obtain a first distance;

[0106] A3, assign the corresponding first-distance minimum task to the first-type robot, and after the first-type robot completes the currently assigned task, return to the step of determining the first-type warehousing task and the first-type outbound task indicated by the current order to be executed.

[0107] In this implementation, the first-category inbound task and the first-category outbound task indicated by the current pending order can be first determined. For example, each first-category inbound task or first-category outbound task indicated by the current pending order carries an identifier of the material box indicated by the task. Based on the identifier of the material box carried by each task, the location of the material box corresponding to each task can be obtained from a storage system that pre-records the locations of each material box. Thus, for each determined task, the distance between the location of the material box corresponding to the task and the first-category robot can be calculated as the first distance.

[0108] For example, in actual applications, the first type of robot may be the CTU and / or STU in the aisle corresponding to the target shelf, and the method for calculating the distance between the position of the material box corresponding to a determined task and the first type of robot may be to calculate the horizontal distance between the position of the material box corresponding to the task and the first type of robot.

[0109] It can be understood that when assigning tasks to the first-type robots, the task with the shortest first distance among the currently pending tasks is assigned to the first-type robots. After the first-type robots complete the currently assigned task, the process returns to step A1 to determine the next task with the shortest first distance and assign it to the first-type robots. This allows the first-type robots to prioritize completing the task with the shortest distance. This reduces the distance traveled by the first-type robots when performing handling tasks, further improving the handling efficiency of the first-type robots.

[0110] Optionally, in another embodiment of the present application, the task allocation method further includes:

[0111] Step 1: Obtain the quantity of the first type of outbound tasks indicated by the current pending order to obtain the third quantity;

[0112] Step 2: If the third quantity is greater than a preset threshold, the number of boxes to be shipped stored in the cache of the target shelf is obtained to obtain a fourth quantity;

[0113] Step three: if the fourth quantity exceeds the third preset level, based on the task indicated by the current order to be executed, the second type of outbound task is assigned to the second type of robot, and the assignment of the second type of inbound task to the second type of robot is suspended; wherein, the second type of inbound task means transporting the incoming material boxes outside the target shelf to the cache position of the target shelf, and the second type of outbound task means taking out the outbound material boxes in the cache position of the target shelf.

[0114] In this embodiment, the number of the first type of outbound tasks indicated by the current order to be executed (i.e., the third number) can also be obtained to allocate the inbound and outbound tasks based on the size relationship between the third number and the preset threshold. In one implementation, when a new handling task is received, the control device can obtain the third number. In another implementation, the control device can obtain the third number in response to reaching a predetermined second detection cycle. Exemplarily, the second detection cycle can be 1 minute, 2 minutes, and so on. The second detection cycle and the first detection cycle can be the same, or they can be different. When the second detection cycle is reached, the number of the first type of outbound tasks is obtained from each task indicated by the current order to be executed to obtain the third number.

[0115] The preset threshold value represents the critical value for the presence of a large number of first-category outbound tasks. Exemplarily, the preset threshold value can be set by relevant technical personnel based on experience. For example, the preset threshold value can be set to 200%, 300%, and so on, of the total number of cache locations of the target shelf, and the embodiments of the present application are not limited to this. The third preset water level represents the critical value for the excessive number of boxes to be outbound stored in the cache locations of the target shelf. Exemplarily, the third preset water level can be 30%-40% of the number of all cache locations in the target shelf. For example, if there are 100 cache locations in the target shelf, the third preset water level can be set to 33. In actual applications, the third preset water level can be set by relevant technical personnel based on experience, and the embodiments of the present application are not limited to this.

[0116] It is understood that if the third quantity is greater than the preset threshold, it indicates that there are currently a large number of first-category outbound tasks. At this time, the number of boxes to be outbound stored in the cache of the target shelf can be obtained to obtain the fourth quantity. If the fourth quantity exceeds the third preset level, it indicates that a large number of boxes to be outbound are already stored in the current cache. Since there are still a large number of first-category outbound tasks in the current pending orders, the second-category outbound tasks can be assigned to the second-category robots, and the assignment of second-category inbound tasks to the second-category robots can be suspended. This allows the second-category robots to quickly vacate the cache occupied by boxes to be outbound, making it available for the first-category robots to perform the first-category outbound tasks.

[0117] It can be understood that by suspending the allocation of the second type of warehousing tasks to the second type of robots, the second type of robots will give priority to executing the second type of outbound tasks of outbound materials in the cache when there are more first type of outbound tasks to be executed, thereby freeing up the cache positions so that there will be free cache positions available when the first type of robots subsequently execute the first type of outbound tasks, so as to avoid the warehousing and outbound tasks from being stuck, thereby improving the overall warehousing and outbound efficiency.

[0118] Accordingly, in this embodiment, the task allocation method further includes:

[0119] If the fourth quantity does not exceed the third preset level, the second type of warehousing task and the second type of outbound task are assigned to the second type of robot based on the tasks indicated by the current order to be executed.

[0120] In this embodiment, if the fourth quantity does not exceed the third preset level, it means that the number of boxes to be shipped stored in the cache of the target shelf is small, and the first type of warehousing tasks and the first type of shipping tasks can be allocated normally.

[0121] For example, in actual applications, there are multiple orders to be executed. The order of priority between the second-category warehousing tasks and the second-category outbound tasks indicated by the orders to be executed can be determined according to the order of receipt between the orders to be executed. Then, the second-category warehousing tasks and the second-category outbound tasks can be assigned to the second-category robots according to the order of priority between the tasks.

[0122] Optionally, in one implementation, based on the tasks indicated by the current pending order, the second type of inbound tasks and the second type of outbound tasks are assigned to the second type of robots, including steps B1-B3:

[0123] B1, determining the second type of inbound task and the second type of outbound task indicated by the current pending order;

[0124] B2, for each determined task, calculating a second distance between the position of the material box corresponding to the task and the second type of robot;

[0125] B3, assign the corresponding second-distance minimum task to the second-type robot, and after the second-type robot completes the currently assigned task, return to the step of determining the second-type warehousing task and the second-type outbound task indicated by the current order to be executed.

[0126] In this implementation, step B1 may refer to the relevant content of step A1 above, which will not be repeated here.

[0127] For example, in actual applications, the second type of robot is an AGV, and the method for calculating the distance between the position of the material box corresponding to each determined task and the second type of robot can be to calculate the horizontal distance between the position of the material box corresponding to the task and the second type of robot.

[0128] It can be understood that when assigning tasks to the second-type robots, the task with the shortest second distance among the currently pending tasks is assigned to the second-type robots. After the second-type robots complete the currently assigned task, the process returns to step B1 to determine the next task with the shortest second distance and assign it to the second-type robots. This allows the second-type robots to prioritize completing the task with the shortest distance. This reduces the distance traveled by the second-type robots when performing handling tasks, further improving their handling efficiency.

[0129] In order to better understand the solution provided by the embodiment of the present application, a task allocation method provided by the embodiment of the present application is introduced below with reference to a specific example.

[0130] In the warehouse operation scenario where large and small vehicles work together, the task of moving the material box from the storage location on the shelf to the work area is called an outbound task. The outbound task can be divided into a large vehicle (taking CTU as an example) outbound task (corresponding to the first type of outbound task mentioned above) and a small vehicle (i.e., AGV) outbound task (corresponding to the second type of outbound task mentioned above). Among them, the large vehicle outbound task means moving the material box from the storage location to the cache location, and the small vehicle outbound task means moving the material box from the cache location to the work area. The task of moving the material box from the work area to the storage location on the shelf is called an inbound task. The inbound task can be divided into a large vehicle inbound task (corresponding to the first type of inbound task mentioned above) and a small vehicle inbound task (corresponding to the second type of inbound task mentioned above). Among them, the large vehicle inbound task means moving the material box from the cache location to the storage location, and the small vehicle inbound task means moving the material box from the work area to the cache location.

[0131] The CTU's operating range is limited to the warehouse area, performing the outbound delivery phase, moving containers from storage to the buffer zone, and the inbound delivery phase, returning containers from the buffer zone to storage. The AGV travels back and forth between the warehouse and workspace, performing outbound delivery phases, moving containers from the buffer zone to the workspace, and returning containers from the workspace to the buffer zone. By separating the operational phases and operating ranges for large and small vehicles, congestion can be reduced and overall task completion efficiency improved.

[0132] To ensure efficient completion of outbound and inbound tasks, a flexible buffer level control strategy is required to dynamically adjust buffer occupancy and prevent inbound and outbound tasks from being stuck. Caches are shared by CTUs and AGVs. Both large-cart outbound tasks and small-cart inbound tasks occupy caches, and both large-cart inbound and small-cart outbound tasks release caches. Because bins returned to the cache by small-cart inbound tasks may be used by other outbound tasks, to improve subsequent outbound efficiency, in this example, the inbound bins in the cache can be stored for a period of time before being returned to storage.

[0133] In actual scenarios, a fixed strategy can be used to adjust the level of free cache slots. For example, the fixed strategy includes: when the number of free cache slots is lower than level 1, suspending the allocation of large vehicle outbound tasks to reserve a certain number of free cache slots for small vehicle inbound tasks when the number of free cache slots is low; when the number of free cache slots exceeds level 2, suspending the allocation of large vehicle inbound tasks and prioritizing large vehicle outbound tasks. This allows the incoming material boxes stored in the cache to be stored for a period of time when the number of free cache slots is high, thereby improving subsequent outbound efficiency; when the number of free cache slots is between level 1 and level 2, normal allocation of large vehicle outbound tasks and large vehicle inbound tasks is performed. In this case, level 2 is greater than level 1.

[0134] However, due to the varying operational efficiencies of small and large vehicles, the fixed strategy still results in some small vehicles being unable to deliver tasks due to a lack of free cache slots. For example, when the number of free cache slots falls below level 1, even though large vehicle outbound tasks are temporarily suspended, the AGVs are executing small vehicle inbound tasks faster than the CTUs, preventing the CTUs from freeing up cache slots in time. Consequently, the occupancy of free cache slots by small vehicle inbound tasks further reduces the number of free cache slots, significantly impacting overall operational efficiency.

[0135] In order to further improve the overall operational efficiency, this example provides two dynamic strategies to ensure that the CTU can free up cache positions in a timely manner. The task allocation method provided in this example can adjust the water level of the idle cache positions to prevent the inbound and outbound tasks from getting stuck. Three standard control water levels are set, including water level 1 (corresponding to the first preset water level above), water level 2 (corresponding to the second preset water level above) and water level 3 (corresponding to the third preset water level above). For each lane, water level 1 can be set to 20%-30% of the total number of cache positions in the lane, water level 2 can be set to 50%-60% of the total number of cache positions in the lane, and water level 3 can be set to 30%-40% of the total number of cache positions in the lane.

[0136] Dynamic strategy 1 includes: when the number of free cache positions (corresponding to the first number in the above text) is lower than water level 1, suspending the allocation of large vehicle outbound tasks to reserve a certain number of free cache positions for small vehicle inbound tasks when the number of free cache positions is small; when the number of free cache positions is not lower than water level 1, and the number of to-be-warehoused material boxes in the cache positions (corresponding to the second number in the above text) exceeds water level 2, forcibly executing large vehicle inbound tasks to release cache positions occupied by to-be-warehoused material boxes; or, when the number of free cache positions is not lower than water level 1, and the number of to-be-warehoused material boxes in the cache positions exceeds water level 2, alternately executing large vehicle inbound tasks and large vehicle outbound tasks to ensure outbound efficiency. At the same time, after the AGV executes the small vehicle inbound task, it needs to take away the to-be-warehoused material boxes in the same aisle.

[0137] It can be understood that when the number of free cache positions is not lower than water level 1, the number of material boxes to be stored in the cache positions is judged. If the material boxes to be stored exceed water level 2, the large vehicle entry task is forced to be executed. When the number of free cache positions is sufficient, when there are more material boxes to be stored in the cache positions, the large vehicle entry task is allocated to the CTU, so as to release the cache positions in the lane in advance, and avoid the situation where the number of free cache positions is tight in the future and the cache positions cannot be vacated in time due to the slow CTU shelving speed.

[0138] Dynamic Strategy 2 is suitable for scenarios where outbound efficiency needs to be prioritized, that is, scenarios where there are a large number of urgent outbound orders. Including: when there are a large number of large cart outbound tasks and the number of boxes to be outbound in the cache (corresponding to the fourth number above) exceeds water level 3, the AGV is assigned to perform the small cart outbound task and the assignment of the small cart entry task is suspended. When there are a large number of urgent outbound orders and there are a large number of boxes to be outbound in the cache, the AGV is given priority to perform the small cart outbound task to free up cache positions for the subsequent CTU to perform the large cart outbound task, thereby ensuring the outbound efficiency; when the number of free cache positions is not lower than water level 1 and the number of boxes to be entered in the cache exceeds water level 2, the large cart entry task is forced to be executed to release the cache positions occupied by the boxes to be entered; or, when the number of free cache positions is not lower than water level 1 and the number of boxes to be entered in the cache exceeds water level 2, the large cart entry task and the large cart outbound task are executed alternately to ensure the outbound efficiency. At the same time, after the AGV performs the small cart entry task, it needs to take away the boxes to be entered in the same lane.

[0139] It can be seen that through this solution, the water level of the idle cache position can be reasonably controlled to prevent the inbound and outbound tasks from being stuck; by reasonably setting water level 1 and water level 2, the inbound and outbound efficiency can be improved; it is suitable for the task and cache position allocation requirements in various warehousing scenarios, and realizes efficient inbound and outbound task allocation.

[0140] Corresponding to the above method embodiment, the present application embodiment also provides a task allocation system, such as Figure 6 As shown, it includes a control device 610, a first type of robot 620 and a second type of robot 630;

[0141] A control device 610, configured to execute any of the above-mentioned task allocation methods;

[0142] The first type robot 620 and the second type robot 630 are used to carry material boxes under the control of the control device 610.

[0143] In this embodiment, the functions of the control device, the first type of robot and the second type of robot are introduced in the above method embodiments and will not be repeated here.

[0144] Corresponding to the above method embodiment, the present application embodiment also provides a task allocation device, such as Figure 7 As shown, the device includes:

[0145] A first acquisition module 710 is configured to acquire the number of free cache locations in a target shelf to obtain a first number;

[0146] The first allocation module 720 is configured to allocate a first type of warehousing task to a first type of robot for performing the transport task within the target shelf based on the task indicated by the current pending order, and suspend allocating a first type of outbound task to the first type of robot if the first quantity is lower than a first preset level; wherein the first type of warehousing task represents transporting the to-be-inbound material boxes in the cache position of the target shelf to the storage position of the target shelf, and the first type of outbound task represents transporting the to-be-outbound material boxes in the storage position of the target shelf to the cache position of the target shelf;

[0147] A second obtaining module 730 is configured to obtain the number of to-be-stocked material boxes stored in the cache of the target shelf to obtain a second number if the first number is not lower than the first preset level;

[0148] The second allocation module 740 is used to allocate the first type of warehousing task of the to-be-stored material box in the cache position of the target shelf indicated by the current order to be executed to the first type of robot if the second quantity exceeds the second preset level, and to suspend allocation of the first type of outbound task to the first type of robot; or, based on the task indicated by the current order to be executed, alternately allocate the first type of warehousing task and the first type of outbound task to the first type of robot.

[0149] Optionally, the device further comprises:

[0150] The third allocation module is used to allocate the first type of warehousing tasks and the first type of outbound tasks alternately to the first type of robots when the second allocation module 740 performs the tasks indicated by the current order to be executed. When it is detected that any second type of robot performing the second type of warehousing tasks runs to the target shelf, the second type of outbound tasks are allocated to the second type of robots based on the tasks indicated by the current order to be executed; wherein, the second type of warehousing tasks represent the transportation of the incoming material boxes outside the target shelf to the cache position of the target shelf, and the second type of outbound tasks represent the outbound material boxes in the cache position of the target shelf.

[0151] Optionally, the device further comprises:

[0152] The fourth allocation module is used to allocate the first type of warehousing tasks and the first type of outbound tasks to the first type of robots based on the tasks indicated by the current order to be executed if the second quantity does not exceed the second preset level.

[0153] Optionally, the fourth allocation module is specifically configured to:

[0154] Determine the first-category inbound task and the first-category outbound task indicated by the current pending order;

[0155] For each determined task, calculate the distance between the position of the material box corresponding to the task and the first type of robot to obtain a first distance;

[0156] Assign the corresponding first-distance minimum task to the first-type robot, and after the first-type robot completes the currently assigned task, return to the step of determining the first-type warehousing task and the first-type outbound task indicated by the current order to be executed.

[0157] Optionally, the device further comprises:

[0158] A third acquisition module is used to acquire the quantity of the first type of outbound tasks indicated by the current pending order to obtain a third quantity;

[0159] a fourth acquisition module configured to acquire the number of to-be-shipped material boxes stored in the cache of the target shelf to obtain a fourth number if the third number is greater than a preset threshold;

[0160] The fifth allocation module is used to allocate the second type of outbound task to the second type of robot based on the task indicated by the current order to be executed, and suspend the allocation of the second type of inbound task to the second type of robot if the fourth quantity exceeds the third preset level; wherein the second type of inbound task represents the transportation of the inbound material boxes outside the target shelf to the cache position of the target shelf, and the second type of outbound task represents the outbound material boxes in the cache position of the target shelf.

[0161] Optionally, the device further comprises:

[0162] The sixth allocation module is used to allocate the second type of warehousing tasks and the second type of outbound tasks to the second type of robot based on the tasks indicated by the current order to be executed if the fourth quantity does not exceed the third preset water level.

[0163] Optionally, the sixth allocation module is specifically configured to:

[0164] Determine the second-category inbound task and the second-category outbound task indicated by the current pending order;

[0165] For each determined task, calculate the distance between the position of the material box corresponding to the task and the second type of robot to obtain a second distance;

[0166] Assign the corresponding second-distance minimum task to the second-type robot, and after the second-type robot completes the currently assigned task, return to the step of determining the second-type warehousing task and the second-type outbound task indicated by the current order to be executed.

[0167] Optionally, the target shelves are shelves on both sides of an aisle; the cache position is located at the bottom layer of the target shelf; the first type of robot is a CTU and / or STU, and the second type of robot is an AGV.

[0168] In the technical solution of this application, the operations of acquiring, storing, using, processing, transmitting, providing and disclosing information such as orders to be executed and cache occupancy status in the warehouse operation scenarios involved are all carried out with the user's authorization.

[0169] The present application also provides an electronic device, such as Figure 8 Shown, including:

[0170] Memory 801, used for storing computer programs;

[0171] The processor 802 is configured to implement any one of the above-mentioned task allocation methods when executing the program stored in the memory 801;

[0172] Furthermore, the electronic device may further include a communication bus and / or a communication interface, and the processor 802, the communication interface, and the memory 801 communicate with each other via the communication bus.

[0173] The communication bus mentioned in the electronic device mentioned above may be a Peripheral Component Interconnect (PCI) bus or an Extended Industry Standard Architecture (EISA) bus. This communication bus can be divided into an address bus, a data bus, a control bus, etc. For ease of illustration, only one thick line is used in the figure, but this does not mean that there is only one bus or only one type of bus.

[0174] The communication interface is used for communication between the above electronic device and other devices.

[0175] The memory may include random access memory (RAM) or non-volatile memory (NVM), such as at least one disk storage. Alternatively, the memory may be at least one storage device located away from the processor.

[0176] The above-mentioned processor can be a general-purpose processor, including a central processing unit (CPU), a network processor (NP), etc.; it can also be a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components.

[0177] In another embodiment provided by the present application, a computer-readable storage medium is further provided, wherein a computer program is stored in the computer-readable storage medium. When the computer program is executed by a processor, the steps of any of the above-mentioned task allocation methods are implemented.

[0178] In another embodiment provided by the present application, a computer program product including instructions is also provided, which, when executed on a computer, enables the computer to execute any one of the task allocation methods in the above embodiments.

[0179] In the above embodiments, it can be implemented in whole or in part by software, hardware, firmware or any combination thereof. When implemented using software, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the process or function described in the embodiment of the present application is generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, the computer instructions can be transmitted from one website, computer, server or data center to another website, computer, server or data center via a wired (e.g., coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) method. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that includes one or more available media integrations. The available medium can be a magnetic medium (e.g., a floppy disk, a hard disk, a tape), an optical medium (e.g., a DVD), or a solid-state drive (SSD).

[0180] It should be noted that, in this document, relational terms such as first and second, etc., are used only to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply the existence of any such actual relationship or order between these entities or operations. Moreover, the terms "comprises," "comprising," or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article, or device comprising a series of elements includes not only those elements, but also other elements not explicitly listed, or elements inherent to such process, method, article, or device. In the absence of further limitations, an element defined by the phrase "comprising a ..." does not exclude the presence of other identical elements in the process, method, article, or device comprising the element.

[0181] Each embodiment in this specification is described in a related manner. Similar portions between the various embodiments can be referenced to each other. Each embodiment focuses on the differences between the other embodiments. In particular, the system, device, electronic device, computer-readable storage medium, and computer program product embodiments are generally similar to the method embodiments, so their descriptions are relatively simplified. For related portions, reference can be made to the descriptions of the method embodiments.

[0182] The above description is only a preferred embodiment of the present application and is not intended to limit the scope of protection of the present application. Any modifications, equivalent replacements, improvements, etc. made within the spirit and principles of the present application are included in the scope of protection of the present application.

Claims

1. A task allocation method, characterized in that: The method comprises: Obtain the number of free cache locations in the target shelf to obtain a first number; If the first quantity is lower than a first preset level, based on the task indicated by the current pending order, a first type of warehousing task is assigned to the first type of robot used for performing the transport task in the target shelf, and the assignment of the first type of outbound task to the first type of robot is suspended; wherein the first type of warehousing task represents transporting the to-be-warehoused material boxes in the cache position of the target shelf to the storage position of the target shelf, and the first type of outbound task represents transporting the to-be-warehoused material boxes in the storage position of the target shelf to the cache position of the target shelf; If the first quantity is not lower than the first preset level, obtaining the number of to-be-stocked material boxes stored in the cache position of the target shelf to obtain a second quantity; If the second quantity exceeds the second preset level, the first type of warehousing task for the to-be-stored material boxes in the cache position of the target shelf indicated by the current order to be executed is assigned to the first type of robot, and the assignment of the first type of outbound task to the first type of robot is suspended; or, based on the tasks indicated by the current order to be executed, the first type of warehousing task and the first type of outbound task are alternately assigned to the first type of robot.

2. The method according to claim 1, characterized in that The method further comprises: In the case where the first type of warehousing tasks and the first type of outbound tasks are alternately assigned to the first type of robots based on the tasks indicated by the current order to be executed, when it is detected that any second type of robot performing the second type of warehousing tasks runs to the target shelf, the second type of outbound tasks are assigned to the second type of robots based on the tasks indicated by the current order to be executed; wherein, the second type of warehousing tasks represent transporting the boxes to be warehousing outside the target shelf to the cache position of the target shelf, and the second type of outbound tasks represent outbound boxes to be warehousing in the cache position of the target shelf.

3. The method according to claim 1 or 2, characterized in that The method further comprises: If the second quantity does not exceed the second preset level, the first type of warehousing task and the first type of outbound task are assigned to the first type of robot based on the tasks indicated by the current order to be executed.

4. The method according to claim 3, characterized in that The allocating the first type of warehousing task and the first type of outbound task to the first type of robot based on the task indicated by the current to-be-executed order includes: Determine the first-category inbound task and the first-category outbound task indicated by the current pending order; For each determined task, calculate the distance between the position of the material box corresponding to the task and the first type of robot to obtain a first distance; Assign the corresponding first-distance minimum task to the first-type robot, and after the first-type robot completes the currently assigned task, return to the step of determining the first-type warehousing task and the first-type outbound task indicated by the current order to be executed.

5. The method according to claim 1 or 2, characterized in that The method further comprises: Obtain the quantity of the first type of outbound tasks indicated by the current pending order to obtain the third quantity; If the third quantity is greater than a preset threshold, the number of boxes to be shipped stored in the cache of the target shelf is obtained to obtain a fourth quantity; If the fourth quantity exceeds the third preset level, the second type of outbound task is assigned to the second type of robot based on the task indicated by the current order to be executed, and the assignment of the second type of inbound task to the second type of robot is suspended; wherein, the second type of inbound task represents the transportation of the inbound material boxes outside the target shelf to the cache position of the target shelf, and the second type of outbound task represents the outbound material boxes in the cache position of the target shelf.

6. The method according to claim 5, characterized in that The method further comprises: If the fourth quantity does not exceed the third preset level, the second type of warehousing task and the second type of outbound task are assigned to the second type of robot based on the task indicated by the current order to be executed.

7. The method according to claim 6, characterized in that The allocating the second type of warehousing task and the second type of outbound task to the second type of robot based on the task indicated by the current to-be-executed order includes: Determine the second-category inbound task and the second-category outbound task indicated by the current pending order; For each determined task, calculate the distance between the position of the material box corresponding to the task and the second type of robot to obtain a second distance; Assign the corresponding second-distance minimum task to the second-type robot, and after the second-type robot completes the currently assigned task, return to the step of determining the second-type warehousing task and the second-type outbound task indicated by the current order to be executed.

8. The method according to claim 2, characterized in that The target shelves are shelves on both sides of an aisle; the cache position is located at the bottom layer of the target shelf; the first type of robot is a container handling robot CTU and / or a container overhead robot STU, and the second type of robot is an automatic guided vehicle AGV.

9. A task allocation system, characterized in that: The system includes a first type of robot, a second type of robot and a control device; The control device is used to execute the method according to any one of claims 1 to 8; The first type of robot and the second type of robot are used to carry material boxes under the control of the control device.

10. A task allocation device, characterized in that: The device comprises: A first acquisition module is used to acquire the number of free cache locations in the target shelf to obtain a first number; A first allocation module is configured to allocate a first type of warehousing task to a first type of robot for performing the transport task within the target shelf, and suspend allocation of a first type of outbound task to the first type of robot, if the first quantity is lower than a first preset level, based on the task indicated by the current to-be-executed order; wherein the first type of warehousing task represents transporting the to-be-warehoused material boxes in the cache position of the target shelf to the storage position of the target shelf, and the first type of outbound task represents transporting the to-be-warehoused material boxes in the storage position of the target shelf to the cache position of the target shelf; A second acquisition module is configured to acquire the number of to-be-stocked material boxes stored in the cache position of the target shelf to obtain a second number if the first number is not lower than the first preset level; The second allocation module is used to allocate the first type of warehousing task of the to-be-stored material box in the cache position of the target shelf indicated by the current order to be executed to the first type of robot if the second quantity exceeds a second preset level, and to suspend allocation of the first type of outbound task to the first type of robot; or, based on the task indicated by the current order to be executed, alternately allocate the first type of warehousing task and the first type of outbound task to the first type of robot.

11. An electronic device, characterized in that: include: Memory for storing computer programs; A processor, configured to implement the method according to any one of claims 1 to 8 when executing a program stored in a memory.

12. A computer-readable storage medium, characterized in that The computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the method according to any one of claims 1 to 8 is implemented.