Warehouse scheduling method and device, computing equipment and storage medium

By dynamically controlling the occupancy ratio of the container buffer area and the container score in the warehousing system, the problem of low efficiency caused by repeated transfer of containers in traditional warehousing and logistics is solved, and efficient utilization of containers and resource saving are achieved.

CN117163517BActive Publication Date: 2026-02-17BEIJING GEEKPLUS TECH CO LTD

Patent Information

Application Number
CN202210590668.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-05-27
Publication Date
2026-02-17
Estimated Expiration
2042-05-27

AI Technical Summary

Technical Problem

In traditional warehousing and logistics, the repeated transfer of containers between storage location, buffer location, workstation, buffer location, and storage location leads to low outbound efficiency, low item picking efficiency, and waste of robot transportation resources.

Method used

By determining the occupancy ratio of the container cache bits and the container score, the occupancy ratio of the cache bits is dynamically controlled, a return task is generated, and the containers to be returned are returned to the storage area. The cache bits serve both the function of container handover and storage.

Benefits of technology

It improved container outbound and item picking efficiency, saved robot transportation resources, and optimized the utilization of buffer space.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117163517B_ABST
    Figure CN117163517B_ABST
Patent Text Reader

Abstract

The present specification provides a warehouse scheduling method and device, wherein the warehouse scheduling method comprises: determining the occupancy proportion of the buffer sites in the container buffer area; if the occupancy proportion of the buffer sites exceeds a set proportion threshold, it indicates that too many containers are stored in the container buffer area, and the buffer sites for performing container handover may be insufficient; at this time, the container scores of the containers stored in each buffer site in the container buffer area are determined to determine the buffer sites to be released in the container buffer area, and a corresponding return task is generated to return the containers to be returned in the buffer sites to be released to the container storage area, so as to dynamically control the occupancy proportion of the buffer sites in the container buffer area and ensure that there are sufficient buffer sites in the container buffer area for container handover. In this way, the container buffer area can be used for container storage in addition to container handover, thereby improving the container reuse rate and further improving the container outbound efficiency and target object picking efficiency, greatly saving the transportation resources of the robot.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This specification relates to the field of warehousing and logistics technology, and in particular to a warehousing scheduling method. This specification also relates to a warehousing scheduling device, a computing device, and a computer-readable storage medium. Background Technology

[0002] In traditional warehousing and logistics, when containers in high-level storage locations in a warehouse are taken out of the warehouse, a handling robot can first move the container from the high place to the first-level buffer position on the shelf. Then, a transfer robot goes to the buffer position to deliver the container to the workstation, where staff will pick the items.

[0003] Currently, containers can only be stored in the upper storage positions of the shelves. When a workstation needs a container, the handling robot can remove the container and place it in the buffer position to wait for the transfer robot to pick it up. After the item is picked, the transfer robot sends it back to the buffer position from the workstation. Since the transfer robot that receives the container to the workstation can only obtain the container from the buffer position on the first floor of the shelf, that is, the buffer position is used for the handover of the container, and the number of buffer positions is limited, the container sent back to the buffer position cannot stay in the buffer position. Instead, the handling robot returns it to the upper storage position for storage.

[0004] However, in the above method, the container will repeatedly perform the transfer operation from storage location to cache location to workstation to cache location and storage location, resulting in low container outbound efficiency in warehousing and logistics, which in turn leads to low item picking efficiency and greatly consumes the robot's transportation resources. Summary of the Invention

[0005] In view of this, embodiments of this specification provide a warehouse scheduling method. This specification also relates to a warehouse scheduling device, a computing device, and a computer-readable storage medium, to address the technical deficiencies existing in the prior art.

[0006] According to a first aspect of the embodiments of this specification, a warehouse scheduling method is provided, comprising:

[0007] Determine the occupancy ratio of cache bits in the container cache area, wherein the container cache area includes at least one cache bit;

[0008] If the occupancy rate of the cache bits exceeds the set threshold, determine the container score of each cache bit in the container cache area. The container score is determined based on the picking task to be executed and the number of target items in the container.

[0009] Based on the container score, determine the cache bits to be released in the container cache area, and generate a return task for the container to be returned in the cache bit to be released. The return task is used to instruct the container to be returned from the cache bit to be released to the container storage area.

[0010] Optionally, determine the proportion of cache bits occupied in the container cache, including:

[0011] Determine the number of occupied cache bits in the container cache;

[0012] Based on the current container migration task, determine the number of cache bits to be occupied and the number of cache bits to be released;

[0013] The occupancy ratio of cache bits in the container cache area is determined based on the number of occupied cache bits, the number of cache bits to be occupied, and the number of cache bits to be released.

[0014] Optionally, based on the container score, determine the cache bits to be released in the container cache, including:

[0015] Determine the difference between the occupancy rate and the set threshold rate, and determine the number of cache bits to be released based on the difference;

[0016] Sort the container scores of the containers stored in each cache location, and select a number of cache locations to be released based on the sorting results.

[0017] Optionally, a return task is generated for the container to be returned in the cache bit to be released, including:

[0018] Determine the target storage location corresponding to the cache bit to be released;

[0019] A return task is generated based on the cache bit to be released and the target storage bit. The return task is used to return the container to be returned stored in the cache bit to the target storage bit.

[0020] Optionally, before determining the container score stored in each cache bit of the container cache, the following steps are also included:

[0021] At each first preset time interval, identify the containers in the container storage area that are to be transferred to the container cache area;

[0022] Determine the first cache bit in the container cache area corresponding to the container to be transferred;

[0023] A container transfer task is generated based on the first storage location and the first cache location. The first storage location is the storage location of the container to be transferred in the container storage area, and the container transfer task is used to instruct the container to be transferred from the first storage location to the first cache location.

[0024] Optionally, the warehousing system includes at least two aisles, each aisle being equipped with a container storage area and a container buffer area;

[0025] Determine the first cache bit in the container cache area corresponding to the container to be transferred, including:

[0026] Determine whether there are available cache bits in the first container buffer area, wherein the first container buffer area and the container storage area where the container to be transferred is located belong to the same lane;

[0027] If an available cache bit exists, determine the first cache bit from the available cache bits;

[0028] If no available cache bit is available, the first cache bit is determined from the second container cache area, wherein the second container cache area and the container storage area where the container to be transferred is located do not belong to the same lane.

[0029] Optionally, the first buffer bit and the first storage bit belong to the same lane;

[0030] A container transfer task is generated based on the first storage bit and the first cache bit, including:

[0031] Determine if the first cache bit currently contains a container;

[0032] If a container is stored, a replacement task is generated for the container stored in the first buffer position. The replacement task is used to instruct the handling robot to return the container stored in the first buffer position to the container storage area and to move the container to be transferred from the first storage position to the first buffer position.

[0033] If no container is stored, a first container handling task is generated for the container to be transferred based on the first storage location and the first cache location. The first container handling task is used to instruct the handling robot to move the container to be transferred from the first storage location to the first cache location.

[0034] Optionally, the first buffer bit and the first storage bit belong to different lanes;

[0035] A container transfer task is generated based on the first storage bit and the first cache bit, including:

[0036] A second container handling task is generated based on the first storage location for the container to be transferred. The second container handling task is used to instruct the handling robot to move the container to be transferred from the first storage location to the second buffer location. The second buffer location and the first storage location belong to the same lane.

[0037] When the container to be transferred is moved to the second cache position, a transfer task is generated for the container to be transferred based on the second cache position and the first cache position. The transfer task is used to instruct the transfer robot to transfer the container to be transferred from the second cache position to the first cache position.

[0038] Optionally, a transfer task is generated for the container to be transferred based on the second cache bit and the first cache bit, including:

[0039] Determine if the first cache bit currently contains a container;

[0040] If a container is stored, a third container handling task is generated for the container stored in the first buffer position. The third container handling task is used to instruct the handling robot to move the container stored in the first buffer position from the first buffer position to the second storage position. The first buffer position and the second storage position are in the same lane or different lanes.

[0041] If a container is moved out of the first cache location, a transfer task is generated for the container to be transferred based on the second cache location and the first cache location.

[0042] Optionally, before determining the container score stored in each cache bit of the container cache, the following steps are also included:

[0043] Determine the number of picking tasks that match at least one target group in the first container, wherein the first container is any container stored in the container buffer area and the container storage area, and target items with the same target item identifier constitute a target group;

[0044] The heat value of the first container is determined based on the number of picking tasks matched with at least one group of target items.

[0045] Determine the container type of the first container, and based on the container type, determine the base score for the first container;

[0046] The container score for the first container is determined based on the heat value and the base score.

[0047] Optionally, the base score for the first container is determined based on the container type, including:

[0048] When the container type of the first container is a hit container, the base score of the first container is determined to be a first set value, where a hit container refers to the container selected to perform the picking task, and the first set value is the lower boundary value of the first score range.

[0049] If the container type of the first container is a miss container and it is a container in the container cache, the base score of the first container is determined to be a second set value, wherein the second set value is the lower boundary value of the second score range;

[0050] If the container type of the first container is a non-hit container and it is a container in the container storage area, the base score of the first container is determined to be a third set value, wherein the third set value is the lower boundary value of the third score range;

[0051] The first, second, and third score ranges are obtained based on the container score division, with the first set value being higher than the second set value, and the second set value being higher than the third set value.

[0052] According to a second aspect of the embodiments of this specification, a warehouse scheduling device is provided, comprising:

[0053] The first determining module is configured to determine the occupancy ratio of cache bits in the container cache area, wherein the container cache area includes at least one cache bit;

[0054] The second determining module is configured to determine the container score of each cached container in the container cache area when the occupancy ratio of the cached bits exceeds a set ratio threshold. The container score is determined based on the picking task to be executed and the number of target items in the container.

[0055] The generation module is configured to determine the cache bits to be released in the container cache area based on the container score, and generate a return task for the container to be returned in the cache bit to be released. The return task is used to instruct the container to be returned from the cache bit to be released to the container storage area.

[0056] According to a third aspect of the embodiments of this specification, a computing device is provided, comprising:

[0057] Memory and processor;

[0058] The memory is used to store computer-executable instructions, and the processor is used to execute the computer-executable instructions to implement the steps of the warehouse scheduling method.

[0059] According to a fourth aspect of the embodiments of this specification, a computer-readable storage medium is provided that stores computer-executable instructions that, when executed by a processor, implement the steps of a warehouse scheduling method.

[0060] The warehouse scheduling method provided in this specification determines the occupancy ratio of cache slots in a container buffer area, wherein the container buffer area includes at least one cache slot; when the occupancy ratio of cache slots exceeds a set ratio threshold, the container score of each cache slot in the container buffer area is determined, wherein the container score is determined based on the picking task to be executed and the number of target items in the container; based on the container score, the cache slots to be released in the container buffer area are determined, and a return task is generated for the containers to be returned in the cache slots to be released, wherein the return task is used to instruct the containers to be returned from the cache slots to be released to the container storage area.

[0061] In this scenario, the occupancy rate of cache slots in the container buffer can be determined. If the occupancy rate exceeds a set threshold, it indicates that the container buffer contains too many containers, and the available cache slots for container handover may be insufficient. In this case, based on the container score of each cache slot in the container buffer, the cache slots to be released can be determined, and corresponding return tasks can be generated. The containers to be returned from these cache slots are then returned to the container storage area, thus dynamically controlling the occupancy rate of cache slots in the container buffer to ensure sufficient cache slots for container handover. In this way, the container buffer can be used not only for container handover but also for container storage. After a container is picked at the workstation, the transfer robot returns the container from the workstation to the container buffer without needing to return it to the container storage area; the container can be directly stored in the buffer. Subsequent container transfers within the buffer can be dynamically controlled based on the occupancy rate of the cache slots. Containers can be stored in the container buffer, improving container reuse rates, thereby increasing container outbound efficiency and target item picking efficiency, and significantly saving robot transport resources. Attached Figure Description

[0062] Figure 1a This is a schematic diagram of the structure of a warehousing system provided in one embodiment of this specification;

[0063] Figure 1b This is a flowchart illustrating a container transfer method in warehouse scheduling provided by one embodiment of this specification;

[0064] Figure 1c This is a flowchart illustrating a warehouse scheduling method provided in one embodiment of this specification.

[0065] Figure 2 This is a flowchart of a warehouse scheduling method provided in one embodiment of this specification;

[0066] Figure 3a This is a schematic diagram illustrating the execution process of a container handling task in a tunnel, provided in one embodiment of this specification.

[0067] Figure 3b This is a schematic diagram illustrating the execution process of a roadway container replacement task according to an embodiment of this specification;

[0068] Figure 3c This is a schematic diagram illustrating the execution process of a cross-lane container handling task provided in one embodiment of this specification;

[0069] Figure 3d This is a schematic diagram illustrating the execution process of a cross-lane container replacement task according to an embodiment of this specification;

[0070] Figure 4This is a schematic diagram of the structure of a warehouse scheduling device provided in one embodiment of this specification;

[0071] Figure 5 This is a structural block diagram of a computing device provided in one embodiment of this specification. Detailed Implementation

[0072] Many specific details are set forth in the following description to provide a full understanding of this specification. However, this specification can be implemented in many other ways than those described herein, and those skilled in the art can make similar extensions without departing from the spirit of this specification. Therefore, this specification is not limited to the specific implementations disclosed below.

[0073] The terminology used in one or more embodiments of this specification is for the purpose of describing particular embodiments only and is not intended to be limiting of the one or more embodiments of this specification. The singular forms “a” and “the” as used in one or more embodiments of this specification and the appended claims are also intended to include the plural forms, unless the context clearly indicates otherwise. It should also be understood that the term “and / or” as used in one or more embodiments of this specification refers to and includes any or all possible combinations of one or more associated listed items.

[0074] It should be understood that although the terms first, second, etc., may be used to describe various information in one or more embodiments of this specification, such information should not be limited to these terms. These terms are only used to distinguish information of the same type from one another. For example, first may also be referred to as second without departing from the scope of one or more embodiments of this specification, and similarly, second may also be referred to as first. Depending on the context, the word "if" as used herein may be interpreted as "when," "when," or "in response to a determination."

[0075] Figure 1a This is a schematic diagram of the structure of a warehousing system provided in one embodiment of this specification, such as... Figure 1a As shown, the warehousing system includes a warehouse storage area comprising multiple shelves arranged in a matrix, on which container buffer areas and container storage areas are provided; the warehousing system also includes a workstation area comprising at least one workstation configured for picking containers.

[0076] It should be noted that when transferring containers from the warehouse storage area to the workstation for picking, the RS+P container-to-person solution can be used. This solution is a high-storage, high-flexibility, and high-efficiency warehouse scheduling solution. In practice, when containers are taken out of the upper storage positions on the shelves, RS robots (i.e., handling robots) first move the containers from the upper storage positions to the first-level buffer position on the shelf. Then, P robots (i.e., transfer robots) go to the buffer position to deliver the containers to the workstation. The RS+P container-to-person solution uses 5-8 meter single-depth or double-depth storage to maximize storage capacity. It can be matched with RS robots of various box-carrying forms. The P robots achieve highly flexible picking without conveyor lines. It is mainly used in container-to-person split-pick scenarios with small volume, many SKUs (Stock Keeping Units), and high flexibility requirements, as well as retail MFC scenarios. In the retail MFC scenario, a retail management system built on MFC (Microsoft Foundation Classes) is a proactive micro-implementation center that enables proactive picking. Online orders replace human staff, and robotic order picking and restocking replace human staff, thereby reducing the retailer's operating costs. It can help retailers provide convenient e-commerce services, thereby further increasing sales.

[0077] In the above scheme, the P robot, which receives and transports containers to the workstation, can only retrieve containers from the buffer position on the first level of the shelf. Therefore, the rational utilization of the buffer position has a significant impact on the overall container outbound efficiency. Currently, the buffer position is only used for container handover. In this method, containers can only be stored in the storage position on the upper level. When the workstation needs a container, the RS robot removes the container and places it in the buffer position to wait for the P robot to transfer it. After picking is completed, the container is sent back from the workstation to the buffer position to wait for the RS robot to return it to the storage position on the upper level. Figure 1b This is a flowchart illustrating a container transfer method in warehouse scheduling, as provided in one embodiment of this specification. Figure 1b As shown, the container will repeatedly perform the transfer operation from storage location to cache location to workstation to cache location and back to storage location.

[0078] As shown above, high-value containers may be picked by multiple picking tasks. Therefore, after the first picking task is completed, the container is returned to the upper storage location. When the next picking task arrives, the container needs to be removed from the upper storage location. In fact, besides its function of handling containers with the robot, the buffer location can also serve as a storage space for some containers. For example, the high-value container mentioned above can be temporarily stored in the buffer location after the first order is completed. This frees up some of the RS robot's transport resources, improving efficiency. However, temporarily storing containers in the buffer location can easily fill up the buffer space, requiring corresponding scheduling and management methods to regulate buffer space resources.

[0079] Therefore, based on the characteristics of the RS+P product solution, this specification provides a warehouse scheduling method in the embodiments. The cache slots serve both as container handover and container storage functions. Based on the occupancy ratio of the cache slots in the container cache area and the container score of each cache slot, container return tasks can be automatically generated and the occupancy ratio of the cache slots in the container cache area can be automatically adjusted. Figure 1c This is a flowchart illustrating a warehouse scheduling method provided in one embodiment of this specification, as shown below. Figure 1c As shown, the container is moved from the storage location to the cache location and then transferred to the workstation. After the container is used, it is returned to the cache location, and the process ends. Then, the occupancy ratio of the cache location is introduced. Based on the occupancy ratio of the cache location and the value of the container, an automatic return task is scheduled to return the container to the higher-level storage location. Since the process ends when the container is returned to the cache location, the occupancy ratio of the cache location will always increase. Therefore, there needs to be a function to automatically return the container to the container storage area to control the balance of the occupancy ratio of the cache location.

[0080] This specification provides a warehouse scheduling method, and also relates to a warehouse scheduling device, a computing device, and a computer-readable storage medium, which will be described in detail in the following embodiments.

[0081] Figure 2 A flowchart of a warehouse scheduling method according to an embodiment of this specification is shown, which specifically includes the following steps:

[0082] Step 202: Determine the occupancy ratio of cache bits in the container cache area, wherein the container cache area includes at least one cache bit.

[0083] Specifically, the warehousing system includes a warehouse storage area, which comprises multiple shelves arranged in a matrix. These shelves are equipped with container buffer areas and container storage areas. The container buffer areas are located on the lower levels of the shelves, providing container transfer and storage functions; the container storage areas are located on the upper levels of the shelves, providing container storage functions. In other words, the container storage areas are located above the container buffer areas; for example, the bottom level of the shelf serves as the container buffer area, and all other levels of the shelf serve as container storage areas.

[0084] The container buffer may include at least one cache bit, and each cache bit may cache a container. The container is a structure used to store the target object, which may be an item that needs to be picked. In this case, the container may be a cargo box for storing the item.

[0085] It should be noted that the warehousing system also includes a workstation area, comprising at least one workstation configured for picking containers. Containers are typically stored in a container storage area. When transferring containers from the storage area to the workstation for picking—that is, when containers are taken out of the storage area—a handling robot first moves the container from its storage location to a buffer location in the container buffer area. A transfer robot then moves the container to the buffer location and delivers it to the workstation. After picking is complete, the container is returned from the workstation to the buffer location and stored there. This frees up some of the handling robot's resources, improving container outbound efficiency. However, storing containers in the buffer location can easily fill up the buffer space. Therefore, the occupancy ratio of the buffer locations in the container buffer area can be determined, and the occupancy of the buffer locations can be dynamically adjusted based on this ratio to ensure sufficient buffer locations are available for container handover tasks.

[0086] In practical applications, the cache bit occupancy rate in a container cache refers to the proportion of occupied cache bits out of the total cache bits. This occupancy rate can be obtained by dividing the number of occupied cache bits by the total number of cache bits. Therefore, in a specific implementation, the number of occupied cache bits in the container cache can be determined first, and then the cache bit occupancy rate in the container cache can be determined based on this number and the total number of cache bits.

[0087] In one optional implementation of this embodiment, the number of cache bits occupied in the container cache is dynamically changing. Therefore, determining the occupancy ratio of cache bits in the container cache can be achieved through the following steps:

[0088] Determine the number of occupied cache bits in the container cache;

[0089] Based on the current container migration task, determine the number of cache bits to be occupied and the number of cache bits to be released;

[0090] The occupancy ratio of cache bits in the container cache area is determined based on the number of occupied cache bits, the number of cache bits to be occupied, and the number of cache bits to be released.

[0091] Specifically, the cache slots in the container cache can be divided into four categories: currently occupied, currently vacant, about to be occupied, and about to be released. Currently occupied refers to a cache slot in the container cache that currently stores a container; currently vacant refers to a cache slot in the container cache that currently does not store a container; about to be occupied refers to a cache slot in the container cache that currently does not store a container but is about to be moved in; and about to be released refers to a cache slot in the container cache that currently stores a container but is about to be returned to the container storage area.

[0092] Therefore, the number of occupied cache bits refers to the number of cache bits currently occupied. The number of occupied cache bits can be determined by directly reading the cache bits currently storing containers in each cache bit and counting their number; the number of cache bits to be occupied refers to the number of cache bits that will be occupied soon; and the number of cache bits to be released refers to the number of cache bits that will be released soon.

[0093] It should be noted that since the transfer of containers from the container storage area to the cache and the return of containers from the cache to the container storage area are both accomplished by the robot based on container transfer tasks, the warehouse scheduling platform can generate container transfer tasks and send them to the robot. After receiving the task, the robot executes each task in sequence, transferring containers from the container storage area to the cache or returning containers from the cache to the container storage area.

[0094] Therefore, the number of cache slots to be occupied and the number of cache slots to be released can be determined based on the current container transfer tasks. In practical applications, the warehouse scheduling platform can store various container transfer tasks that are to be executed or are in progress. Each container transfer task carries a transfer start position and an end position. For each container transfer task, if the transfer start position is a cache slot, the number of cache slots to be released is incremented by 1; if the transfer start position is a container storage area, the number of cache slots to be occupied is incremented by 1. By iterating through each container transfer task, the number of cache slots to be occupied and the number of cache slots to be released can be determined.

[0095] In addition, when determining the occupancy ratio of cache bits in the container cache area based on the number of occupied cache bits, the number of cache bits to be occupied, and the number of cache bits to be released, you can first determine the sum of the number of occupied cache bits and the number of cache bits to be occupied, and then subtract the number of cache bits to be released to determine the updated occupancy number of cache bits in the container cache area. Dividing this updated occupancy number by the total number of cache bits will give you the occupancy ratio of cache bits in the container cache area.

[0096] In the embodiments described in this specification, the number of cache bits to be occupied and the number of cache bits to be released can be determined based on the current container migration task. Then, by combining the number of occupied cache bits, the number of cache bits to be occupied, and the number of cache bits to be released, the occupancy ratio of cache bits in the container cache area can be determined. In this way, the dynamic changes of cache bits in the container cache area are considered when determining the occupancy ratio, making the occupancy ratio of cache bits in the container cache area more accurate, conforming to actual application scenarios, and ensuring the accuracy and real-time performance of dynamic adjustment of cache bits in the container cache area.

[0097] Step 204: If the occupancy rate of the cache slots exceeds the set threshold, determine the container score of each cache slot in the container cache area. The container score is determined based on the picking task to be executed and the number of target items in the container.

[0098] Specifically, the set percentage threshold refers to a set water level to ensure that the number of occupied buffer spaces in the container buffer area is not excessive. For example, the set percentage threshold can be 60%, 70%, 80%, etc. The pending picking task refers to the task waiting to pick the target item from the container, and the quantity of the target item in the container refers to the container's inventory.

[0099] In addition, the container score can represent the value of the container, that is, the probability that the container will be frequently selected by the picking task. The container score is obtained by scoring the container, and the container score is a standard for judging the value of the container. The higher the container score, the higher the value of the container. After being sent back to the cache from the workstation, if the container score is high, it should be kept in the cache as much as possible. That is, the container cache area stores containers with higher container scores, and the container storage area stores containers with lower container scores.

[0100] In practical applications, warehouse scheduling platforms can score containers based on their matching degree with real-time picking tasks. A higher score indicates a container can supply multiple picking tasks. Furthermore, containers in the buffer zone have higher scores than those in the storage zone, ensuring that hot containers in the buffer zone are not replaced. Conversely, containers in the storage zone have higher scores than those in the buffer zone that do not match picking tasks or contain an excessive number of items, ensuring that unused containers in the buffer zone are returned to the storage zone. A hot container is defined as one whose temperature exceeds a set threshold. Container temperature refers to the number of times a container might be matched and used to execute picking tasks, i.e., the number of times a container might be moved. This system ensures that container scores make buffer slots in the buffer zone a dynamically scarce resource, contested by containers, allowing containers that match picking tasks more frequently to remain in the buffer zone for a longer period.

[0101] It should be noted that if the occupancy rate of cache slots exceeds a set threshold, it indicates that the container cache contains too many containers, and the available cache slots for container handover may be insufficient. In this case, it is necessary to release containers from some cache slots in the container cache and return them to the container storage area. To determine which cache slots to return to the container storage area, the container score of each cache slot in the container cache can be determined. This container score is based on the picking task to be performed and the quantity of target items in the container. It represents the matching procedure between the container and the picking task to be performed, thus identifying the value of the container. Therefore, based on the container score of each cache slot in the container cache, the cache slots to be released can be determined, and the containers to be returned from the cache slots to be released can be returned to the container storage area.

[0102] In addition, the container score of each container in the warehouse storage area can be determined periodically, that is, the container score can be updated periodically based on the current picking task to be performed and the current quantity of target items in the container.

[0103] In an optional implementation of this embodiment, the container score can be divided into a base score and a popularity score. That is, before determining the container score of each cache location in the container cache, the following may also be included:

[0104] Determine the number of picking tasks that match at least one target group in the first container, wherein the first container is any container stored in the container buffer area and the container storage area, and target items with the same target item identifier constitute a target group;

[0105] The heat value of the first container is determined based on the number of picking tasks matched with at least one group of target items.

[0106] Determine the container type of the first container, and based on the container type, determine the base score for the first container;

[0107] The container score for the first container is determined based on the heat value and the base score.

[0108] It's important to note that containers are stored in a container storage area or a container buffer area. The transfer robot can only transfer containers located in the container buffer area. In this scenario, it's desirable for containers stored in the container buffer area to have a high turnover rate, meaning they can be matched multiple times by pending picking tasks and transferred multiple times by the transfer robot. Therefore, scoring containers involves giving high scores to containers with the potential for multiple uses and placing them in the container buffer area in advance. Regarding the target items within a container, regardless of the number of target items required by the pending picking task (e.g., 1 or 10), if all of them match the same container, it's still just one transfer of that container, making no difference to the robot picking the container. Therefore, the importance of a container can be judged by the number of times it might be matched by currently unexecuted picking tasks, rather than the number of items it might match.

[0109] In practical applications, for the first container, all target items with the same target item identifier within the first container can be defined as a target item group. The number of target items in a container can be considered as consisting of several target item groups; that is, a container includes at least one target item group, a target item group includes at least one target item, and all included target items have the same target item identifier. For any target item group within the container, the inventory of that target item group can be calculated to meet the needs of which picking tasks to be performed. The number of picking tasks matched with that target item group is counted, and this number of picking tasks represents the potential number of times the target item group can be used. By summing the number of picking tasks for each target item group in the first container, the potential usage count of the first container can be obtained. Then, the heat value of the first container is determined based on this potential usage count. This process is repeated to determine the heat value of each container.

[0110] The target item identifier refers to the characters / codes used to identify the target item. Target items with the same target item identifier belong to the same target item group, and target items with different target item identifiers belong to different target item groups. For example, when the target item is a commodity, the target item identifier can be the product number (skuCode) and the batch number (batchCode). Commodities with the same product number (skuCode) and batch number (batchCode) belong to the same commodity group, and commodities with different product numbers (skuCode) and batch numbers (batchCode) belong to different commodity groups.

[0111] Additionally, when calculating which picking tasks can be fulfilled by the inventory of the target item group, and counting the number of picking tasks matching the target item group, for each picking task, if the inventory of the target item group does not meet the demand of the picking task, a coefficient can be set. The inventory is divided by the demand, and then multiplied by the coefficient to obtain the picking task count. For example, if the coefficient is 0.5, and the inventory is 8 and the picking task demand is 10, then the picking task count for the picking task is: 0.5*(8 / 10). If the inventory of the target item group meets the demand of the picking task, then the picking task count for the picking task is determined to be 1. This process is repeated for each picking task, and the final count result is the number of picking tasks matching the target item group.

[0112] Secondly, different picking tasks can have different priorities, and each priority has a corresponding priority coefficient. After determining the count of each picking task, the count of each picking task can be multiplied by the corresponding priority coefficient, and then summed to obtain the number of picking tasks matching the target group.

[0113] In practice, some picking tasks may have already determined which container to retrieve the target item from. In this case, the target item group in that container is the pre-hit. Thus, the number of picking tasks for each target item group in the first container is determined. After summing the number of picking tasks for each target item group in the first container, it can also be determined whether each target item group includes the pre-hit target item group. If it does, the corresponding count can be added to the summation result based on the number of pre-hit target item groups to obtain the potential retrieval count of the first container.

[0114] Furthermore, when determining the popularity value of the first container based on the potential usage count, the potential usage count can be mapped to a set fourth score range, the upper and lower boundaries of which are the difference between the upper and lower boundaries of the first score range. In implementation, the popularity value of the first container can be obtained by dividing the potential usage count of the first container by the maximum potential usage count of all containers, and then multiplying by the difference between the upper and lower boundaries of the fourth score range. For example, if the fourth score range is 0-20, and assuming the maximum potential usage count of all containers is 38, then the potential usage count of the first container T / 38*20 will give the popularity value of the first container.

[0115] Specifically, the container scores can be divided into three ranges: a first range, a second range, and a third range, with the first range having a higher score than the second range, which in turn has a higher score than the third range. These three ranges can be used to determine the base score for different types of containers.

[0116] In the embodiments of this specification, the container score can be divided into a container popularity value and a base score. Different types of containers can be set with different base scores. Then, a popularity value that matches the picking task is added to the base score to determine the container score, thereby improving the accuracy of container score determination.

[0117] In one optional implementation of this embodiment, a corresponding base score can be pre-set for different container types. That is, the base score of the first container is determined according to the container type. The specific implementation process can be as follows:

[0118] When the container type of the first container is a hit container, the base score of the first container is determined to be a first set value, where a hit container refers to the container selected to perform the picking task, and the first set value is the lower boundary value of the first score range.

[0119] If the container type of the first container is a miss container and it is a container in the container cache, the base score of the first container is determined to be a second set value, wherein the second set value is the lower boundary value of the second score range;

[0120] If the container type of the first container is a non-hit container and it is a container in the container storage area, the base score of the first container is determined to be a third set value, wherein the third set value is the lower boundary value of the third score range;

[0121] The first, second, and third score ranges are obtained based on the container score division, with the first set value being higher than the second set value, and the second set value being higher than the third set value.

[0122] It should be noted that for some picking tasks to be performed, it may have been determined which container to retrieve the target item from. At this time, the container has been determined to be hit and needs to be moved to the workstation to pick the target item from the container. Therefore, if the container type of the first container is a hit container, the base score of the first container is determined to be the first set value.

[0123] In practical applications, for containers that are not matched, their base score can be set based on their storage location. If the first container's container type is a container in the container cache, its base score is determined to be a second set value; if the first container's container type is a container in the container storage area, its base score is determined to be a third set value. The first set value is higher than the second set value, which in turn is higher than the third set value.

[0124] The first score range is the score range of the hit container, the second score range is the score range of the containers in the container cache, and the third score range is the score range of the containers in the container storage area. For example, if the first score range is 80-100, the first set value is 80; if the second score range is 60-80, the second set value is 60; and if the third score range is 40-60, the third set value is 40.

[0125] In practice, for each target item group (skuCode, batchCode) stored in the warehouse storage area, the number of picking tasks associated with that target item group is calculated (i.e. how many picking tasks need this target item group). The more associated tasks, the more important the target item group is considered. Subsequent calculations start from the most important target item group.

[0126] When determining the base score of containers in the container cache, the process starts with the most important target group. For each target group, there is a series of candidate available containers that can satisfy the picking task requirements of that target group. The process begins with the container in the container cache with the highest heat value (i.e., the highest match with the picking task to be executed), until the picking task requirements of that target group are met (i.e., the requirements of each picking task to be executed for that target group), or until all containers in the container cache that can satisfy the picking task requirements of that target group are used up. During this process, each time a container in the container cache is used, the base score of that container is set to a second preset value (e.g., 60 points). The container score is the sum of the base score of 60 points and the corresponding heat value of that container. Simultaneously, based on the picking task requirements that the containers in the container cache can satisfy, the remaining demand for the picking tasks of that target group is updated. This remaining demand can be satisfied by containers in the container storage area.

[0127] When determining the base score of containers in the container storage area, the picking requirements of some target groups can already be met by containers in the container buffer (i.e., the container buffer has sufficient stock of that target group), while the requirements of some target groups cannot be met by containers in the container buffer (i.e., the container buffer has insufficient stock of that target group), and it is necessary to continue to obtain containers from the container storage area. The process starts with the most important target group. If the picking requirements of that target group have already been met by containers in the container buffer, it is skipped. If the picking requirements of that target group have not been met by containers in the container buffer, there are also candidate containers available in the container storage area for that target group. Similar to the container buffer process, the process starts with the container with the highest popularity value in the container storage area until the picking requirements of that target group are met, or until all containers in the container storage area that can meet the picking requirements of that target group are used up. During this process, each time a container in the container storage area is used, its base score is set to a third preset value (e.g., 40 points). The container score is the sum of the base score of 40 points and the corresponding heat value. Simultaneously, based on the picking task demand that the containers in the storage area can meet, the remaining picking demand for that target item group is updated. If the picking task demand for some target item groups remains unmet, indicating insufficient inventory, no further action is taken.

[0128] For the remaining containers that are not selected, scores are assigned based on the fourth score range. For the remaining containers in the container cache that are not selected, their base score can be set to the fourth set value (e.g., 20 points). For the remaining containers in the container storage area that are not selected, their base score can be set to the fifth set value (e.g., 0 points).

[0129] The scoring range is defined as follows: the first score range is higher than the second score range, which is higher than the third score range, which is higher than the fourth score range. These four score ranges constitute the interval of the container's score. The first set value is higher than the second set value, which is higher than the third set value, which is higher than the fourth set value, which is higher than the fifth set value. The fourth and fifth set values ​​are values ​​within the fourth score range, such as the fourth set value being the middle value of the fourth score range, and the fifth set value being the lower boundary value of the fourth score range. For example, if the first score range is 80-100, the first set value is 80; the second score range is 60-80, the second set value is 60; the third score range is 40-60, the third set value is 40; the fourth score range is 0-40, the fourth set value is 20, and the fifth set value is 0.

[0130] It's important to note that for a hit container, the handling robot has already determined to move it. This means the hit container isn't necessarily a high-traffic container, but it's confirmed to have been selected for a specific picking task and will definitely be moved to the workstation. Therefore, regardless of whether the hit container is in the storage area or the buffer area, its score should be set relatively high to ensure it remains in the buffer area (or is moved there) and is subsequently moved to the workstation by the robot. A score of 80 or higher is given to ensure consistency with reality, but this score is not very meaningful. Therefore, after the hit container is moved to the workstation for picking and returned to the buffer area, it still needs to be re-scored to determine whether it should remain in the buffer area or be returned to the storage area.

[0131] For containers in the storage area with high scores (40-60) matching orders, when these containers are moved to the cache area, if there is no free space in the cache area, they should not replace the more frequently used containers (60-80 points) in the cache area, but can replace the relatively less frequently used containers (20-40 points). Also, two identical containers in the cache area, where one matched an order demand and the other did not, might have the same initial popularity value of 15, but according to the above logic, they might be scored as 75 and 35 respectively. This physically means that too many containers containing a certain target item have been moved to the cache area, and some need to be moved back to the storage area. It could also simply be that the algorithm did not reserve redundant space. Therefore, when replacing low-scoring containers in the cache area with high-scoring containers in the storage area, the container with the lowest score in the lowest partition should be selected for replacement. This is because the score setting is comparative for each layer; a container with a mapping score of 15 is more likely to be used multiple times than a container with a mapping score of 10.

[0132] Step 206: Based on the container score, determine the cache bits to be released in the container cache area, and generate a return task for the containers to be returned in the cache bits to be released. The return task is used to instruct the containers to be returned from the cache bits to be released to the container storage area.

[0133] It should be noted that the container score can represent the value of the container. Therefore, based on the container score, the cache bits to be released in the container cache area can be determined. The cache bits with the lower container score in the container cache area are selected as the cache bits to be released, and the containers in them are released.

[0134] In practical applications, once the cache slots to be released in the container cache area are identified, it means that the containers stored in the cache slots need to be returned to the container storage area. Therefore, the warehouse scheduling platform can generate a return task for the containers to be returned in the cache slots. This return task can be sent to the handling robot, which will then return the containers to be returned from the cache slots to the container storage area.

[0135] In one optional implementation of this embodiment, the number of cache bits to be released can be determined based on the difference between the occupancy ratio and a set ratio threshold, thereby determining the cache bits to be released in the container cache area. That is, the cache bits to be released in the container cache area are determined based on the container score. The specific implementation process can be as follows:

[0136] Determine the difference between the occupancy rate and the set threshold, sort the container scores of each cache location, and determine the number of cache locations to be released based on the difference.

[0137] Sort the container scores of the containers stored in each cache location, and select a number of cache locations to be released based on the sorting results.

[0138] It should be noted that the difference between the occupancy rate and the set threshold rate represents the number of cache bits that are over-occupied in the container's cache area. Therefore, the number of cache bits to be released can be determined based on this difference. Specifically, the difference can be directly multiplied by the total number of cache bits to obtain the number of cache bits to be released, that is, the number of over-occupied cache bits is the number of cache bits to be released; or, to avoid frequently releasing containers in the cache, the set value of the difference can be multiplied by the total number of cache bits to obtain the number of cache bits to be released, that is, releasing more cache bits at once.

[0139] In this embodiment of the specification, after determining the number of cache slots to be released, the container scores of the containers stored in each cache slot can be sorted from high to low (or from low to high). The cache slots corresponding to the number of container scores that are ranked lower (or higher) are selected as the cache slots to be released. In this way, if the occupancy rate of cache slots in the container cache area exceeds a set threshold, the containers with lower container scores in the container cache area can be returned to the container storage area to release the container cache slots in the container cache area.

[0140] For example, if there are 8 containers in the container buffer area in the current lane, and the total number of buffer slots is 10, that is, the current occupancy rate is 0.8. Assuming the set ratio threshold is 0.6, the difference is determined to be 0.2. Multiplying by 10, we can get the number of buffer slots to be released as 2. At this time, we can keep the 6 containers with the highest container scores in the container buffer area, and take the buffer slots of the containers with the lowest 2 container scores as the buffer slots to be released, so as to return the 2 containers with the lowest container scores to the container storage area.

[0141] In one optional implementation of this embodiment, the destination location can be carried in the return task, that is, a return task is generated for the container to be returned in the cache to be released. The specific implementation process can be as follows:

[0142] Determine the target storage location corresponding to the cache bit to be released;

[0143] A return task is generated based on the cache bit to be released and the target storage bit. The return task is used to return the container to be returned stored in the cache bit to the target storage bit.

[0144] It should be noted that the target storage location can be any storage location in the container storage area of ​​each aisle in the warehouse storage area, that is, the containers to be returned in the buffer location to be released can be returned to any storage location in the container storage area.

[0145] In practical applications, an empty storage location can be randomly selected from the container storage areas of each aisle in the warehouse storage area as the target storage location. Priority is given to storage locations in the same aisle as the cache location to be released. If there is no empty storage location in the container storage area in the same aisle as the cache location to be released, a storage location in a different aisle from the cache location to be released can be selected as the target storage location.

[0146] In the embodiments of this specification, a return task is generated based on the cache bit to be released and the target storage bit. That is, the location identifiers of the cache bit to be released and the target storage bit are carried in the return task. When the robot receives the return task, it can return the container to be returned stored in the cache bit to the target storage bit to release the container cache bit in the container cache area, thereby dynamically adjusting the occupancy ratio of the cache bit in the container cache area.

[0147] It should be noted that the warehousing system (i.e., the warehouse storage area) includes at least two aisles, each with a container storage area and a container buffer area. After the containers are scored, the automatic container return mechanism can generally ensure that high-scoring containers are more likely to remain in the buffer than low-scoring containers. However, due to the imbalance of picking tasks and aisle tasks, passively keeping high-scoring containers in the buffer may result in a low proportion of high-scoring containers in the buffer. It is also possible that one aisle is full of high-scoring containers while another aisle is full of low-scoring containers. Therefore, in the embodiments of this specification, in addition to returning low-scoring containers in the container buffer area to the container storage area as described above, high-scoring containers in the container storage area can also be transferred to the container buffer area.

[0148] In practical applications, in order to ensure that the occupancy ratio of containers stored in the cache area remains stable, the transfer task of moving high-scoring containers from the container storage area to the container cache area can be roughly divided into two categories: single-box transfer task and replacement task, which will be discussed one by one in the following embodiments.

[0149] In an optional implementation of this embodiment, in addition to periodically determining the occupancy ratio of cache bits in the container cache to return low-scoring containers in the container cache to the container storage area, high-scoring containers in the container storage area can also be periodically determined and transferred to the container cache area. That is, this warehouse scheduling method further includes:

[0150] At each first preset time interval, identify the containers in the container storage area that are to be transferred to the container cache area;

[0151] Determine the first cache bit in the container cache area corresponding to the container to be transferred;

[0152] A container transfer task is generated based on the first storage location and the first cache location. The first storage location is the storage location of the container to be transferred in the container storage area, and the container transfer task is used to instruct the container to be transferred from the first storage location to the first cache location.

[0153] It should be noted that at each first preset time interval, the containers to be transferred from the container storage area to the container cache area are periodically identified. Specifically, when identifying the containers to be transferred from the container storage area to the container cache area, a pre-set maximum number of containers that can be transferred to the container cache area in each update process can be obtained first. After determining this maximum number of containers, the containers with the highest container scores of this maximum number of containers are selected from each storage location in the container storage area. The selected containers are the containers to be transferred and can be transferred to the container cache area.

[0154] Alternatively, candidate containers with scores higher than the threshold can be selected from each storage location in the container storage area. If the number of candidate containers exceeds the maximum number of containers, then the maximum number of candidate containers with the highest scores are selected, and these selected candidate containers are the containers to be transferred. If the number of candidate containers is not greater than the maximum number of containers, then each candidate container is directly used as the container to be transferred.

[0155] For example, every 5 minutes, containers in 20 container storage areas can be transferred to the container cache area for storage. Therefore, the 20 containers with the highest scores can be selected from the containers in the container storage area as the containers to be transferred. Alternatively, a score threshold can be used to select candidate containers from the containers in the container storage area whose scores are greater than the threshold. If there are fewer than 20 candidate containers, such as only 10, then those 10 candidate containers are the containers to be transferred.

[0156] In practical applications, after identifying the containers to be transferred from the container storage area to the container buffer area, the first buffer location corresponding to the container to be transferred can be determined. This first buffer location can be located in the same aisle as the first storage location or in different aisles. Then, the warehouse scheduling platform can generate a container transfer task based on the first storage location and the first buffer location, and issue this task to the corresponding robot so that the robot can execute the transfer task and move the container from the first storage location to the first buffer location.

[0157] In the embodiments of this specification, in addition to returning the low-scoring containers in the container cache to the container storage area as described above, it is also possible to periodically determine the containers in the container storage area that are to be transferred to the container cache. These containers to be transferred are the high-scoring containers in the current container storage area. This allows the high-scoring containers in the container storage area to be transferred to the container cache periodically, ensuring both the quantity of cache slots occupied in the container cache area and the quality of the containers occupying the cache slots.

[0158] In one optional implementation of this embodiment, the warehousing system includes at least two aisles, each aisle being equipped with a container storage area and a container buffer area; determining the first buffer location corresponding to the container to be transferred in the container buffer area can be achieved as follows:

[0159] Determine whether there are available cache bits in the first container buffer area, wherein the first container buffer area and the container storage area where the container to be transferred is located belong to the same lane;

[0160] If an available cache bit exists, determine the first cache bit from the available cache bits;

[0161] If no available cache bit is available, the first cache bit is determined from the second container cache area, wherein the second container cache area and the container storage area where the container to be transferred is located do not belong to the same lane.

[0162] It should be noted that when determining the first cache location of the container to be transferred within the container cache area, priority can be given to checking whether there are available cache locations within the first container cache area that belongs to the same lane as the container storage area where the container to be transferred is located. In other words, the container to be transferred can be preferentially transferred to a cache location within the same lane of the container cache area. Available cache locations include free cache locations and / or cache locations with lower container scores.

[0163] In practical applications, if there are available cache slots in the first container cache area, it means that the container to be transferred can be moved to a cache slot in the same lane. That is, the first cache slot can be determined from the available cache slots in the first container cache area. In specific implementation, the free cache slot among the available cache slots can be preferentially determined as the first cache slot (if there are multiple free cache slots, one can be selected randomly). If all available cache slots are cache slots with lower container scores, it means that there are containers stored in the available cache slots, but the scores of the containers stored in them are low. In this case, the cache slot with the lowest score can be preferentially selected as the first cache slot. At this time, the container to be transferred can be moved to the first cache slot to replace the container with the lower score in the first cache slot.

[0164] Furthermore, if there are no available cache slots in the first container cache area, it means that the cache slots in the same lane are full and all occupied by high-scoring containers. Therefore, the container to be transferred can be moved to a cache slot in another lane, i.e., a cross-lane transfer. In other words, the first cache slot is determined from the second container cache area, which is not in the same lane as the container storage area where the container to be transferred is located. In specific implementation, the first cache slot can be selected from the second container cache area by combining whether there are free cache slots in each second container cache area and the container scores of the occupied cache slots.

[0165] In the embodiments of this specification, the container to be transferred can be transferred to the buffer position in the same lane or to the buffer position in other lanes. When transferring high-scoring containers in the container storage area to the container buffer area, it can be transferred within the same lane or across lanes, which balances the container scores of containers stored in the container buffer areas of different lanes and avoids high-scoring containers accumulating in a certain lane.

[0166] In an optional implementation of this embodiment, when the first cache bit and the first storage bit belong to the same lane, i.e., when transferring within the same lane, a container transfer task for the container to be transferred is generated based on the first storage bit and the first cache bit. The specific implementation process can be as follows:

[0167] Determine if the first cache bit currently contains a container;

[0168] If a container is stored, a replacement task is generated for the container stored in the first buffer position. The replacement task is used to instruct the handling robot to return the container stored in the first buffer position to the container storage area and to move the container to be transferred from the first storage position to the first buffer position.

[0169] If no container is stored, a first container handling task is generated for the container to be transferred based on the first storage location and the first cache location. The first container handling task is used to instruct the handling robot to move the container to be transferred from the first storage location to the first cache location.

[0170] It should be noted that a container transfer task is generated based on the first storage location and the first cache location. This container transfer task is to transfer the container to be transferred from the first storage location to the first cache location. Therefore, it can be determined first whether there is a container currently stored in the first cache location. If there is a container, the container to be transferred needs to replace the container currently stored in the first cache location. Therefore, a replacement task for the container stored in the first cache location can be generated at this time. The warehouse scheduling platform can send this scheduling task to the handling robot. The handling robot can return the container stored in the first cache location to the container storage area and move the container to be transferred from the first storage location to the first cache location.

[0171] The process of returning the container in the first buffer location to the container storage area and moving the container to be transferred from the first storage location to the first buffer location can be performed sequentially by one handling robot or simultaneously by two handling robots. When returning the container in the first buffer location to the container storage area, the destination storage location needs to be determined. At this time, a storage location can be randomly selected from the container storage area as the target storage location, and the location identifier of the destination storage location is carried in the replacement task so that the handling robot can return the container in the first buffer location to the destination storage location.

[0172] In addition, if no container is stored, it means that the first cache position is currently free. At this time, the container to be transferred can be directly moved to the first cache position. That is, a first container transfer task is generated based on the first storage position and the first cache position. In other words, the first container transfer task carries the location identifiers of the first storage position and the first cache position so that the transfer robot can move the container to be transferred from the first storage position to the first cache position.

[0173] Example, Figure 3a This is a schematic diagram illustrating the execution process of a container handling task in a tunnel, provided by one embodiment of this specification. Figure 3aAs shown, the shelf is equipped with a container buffer area and a container storage area. High-scoring containers represent containers to be transferred, and the target storage location represents the first buffer location. At this time, a handling robot can perform the handling task to move the high-scoring containers from the first storage location to the first buffer location. Figure 3b This is a schematic diagram illustrating the execution process of a container replacement task in the same roadway, provided in one embodiment of this specification. Figure 3b As shown, the shelf is equipped with a container buffer area and a container storage area. High-scoring containers represent containers to be transferred, and low-scoring containers represent containers stored in the first buffer position. The handling robot performs the replacement task, replacing the low-scoring containers in the first buffer position with the high-scoring containers in the first storage position.

[0174] In the embodiments described in this specification, container handling or container replacement tasks can be performed in the same lane, thereby transferring high-resolution containers in the container storage area of ​​the lane to the container buffer area in the same lane. This ensures both the quantity of buffer slots occupied in the container buffer area and the quality of the containers occupying the buffer slots.

[0175] In an optional implementation of this embodiment, the first buffer bit and the first storage bit belong to different lanes. That is, when transferring across lanes, a container transfer task for the container to be transferred is generated based on the first storage bit and the first buffer bit. The specific implementation process can be as follows:

[0176] A second container handling task is generated based on the first storage location for the container to be transferred. The second container handling task is used to instruct the handling robot to move the container to be transferred from the first storage location to the second buffer location. The second buffer location and the first storage location belong to the same lane.

[0177] When the container to be transferred is moved to the second cache position, a transfer task is generated for the container to be transferred based on the second cache position and the first cache position. The transfer task is used to instruct the transfer robot to transfer the container to be transferred from the second cache position to the first cache position.

[0178] It should be noted that the cross-lane transfer task is divided into two stages. In the first stage, the container to be transferred is moved to the container buffer area in the same lane. In the second stage, the container to be transferred is transferred from the container buffer area in the same lane to the first buffer position of the container buffer area in the cross-lane.

[0179] In practical applications, a second container handling task can be generated based on the first storage location for the container to be transferred. Based on the second container handling task, the handling robot can move the container to be transferred from the first storage location to the second buffer location. The second buffer location and the first storage location belong to the same lane. The second buffer location is any buffer location of the container buffer area in the same lane. That is, the first stage is the handling from the container storage area to the container buffer area in the same lane.

[0180] Then, when the container to be transferred is moved to the second buffer position, a transfer task is generated for the container based on the second buffer position and the first buffer position. The transfer robot can transfer the container to be transferred from the second buffer position to the first buffer position based on the transfer task, that is, cross-lane transfer, which transfers the container to be transferred from the current lane to the buffer position of other lanes.

[0181] In the embodiments described in this specification, the container to be transferred can be moved to the buffer position of other lanes, which balances the container scores of the containers stored in the container buffer areas of different lanes and avoids high-scoring containers from piling up in a certain lane.

[0182] In one optional implementation of this embodiment, a transfer task is generated for the container to be transferred based on the second cache bit and the first cache bit. The specific implementation process can be as follows:

[0183] Determine if the first cache bit currently contains a container;

[0184] If a container is stored, a third container handling task is generated for the container stored in the first buffer position. The third container handling task is used to instruct the handling robot to move the container stored in the first buffer position from the first buffer position to the second storage position. The first buffer position and the second storage position are in the same lane or different lanes.

[0185] If a container is moved out of the first cache location, a transfer task is generated for the container to be transferred based on the second cache location and the first cache location.

[0186] It should be noted that the specific implementation process of generating a transfer task for the container to be transferred based on the second cache bit and the first cache bit is similar to the container transfer task process of generating the container to be transferred based on the first storage bit and the first cache bit described above, and will not be repeated here.

[0187] Example, Figure 3c This is a schematic diagram illustrating the execution process of a cross-lane container handling task according to an embodiment of this specification, as shown below. Figure 3c As shown, assuming the containers stored in the buffer slots of the container buffer area in Zone 6 are all high-temperature containers, high-temperature containers are not currently dominant on the shelf. However, Zone 1 has available buffer slots, meaning the first buffer slot is within the container buffer area of ​​Zone 1. A single-box handling task can then be generated. Since the handling requires crossing zones, cross-zone handling robots are cumbersome. Therefore, as... Figure 3c The diagram shows a container relay method where the handling robot and the transfer robot work together to move the container; that is, the handling robot first performs the handling task, and then the transfer robot performs the transfer task.

[0188] Figure 3dThis is a schematic diagram illustrating the execution process of a cross-channel container replacement task according to an embodiment of this specification, as shown below. Figure 3d As shown, if it is difficult to find an available cache slot in the container cache area of ​​area 6, a cross-area replacement task needs to be generated. Suppose we want to move a high-scoring container from area 6 to the cache slot of a low-scoring container in area 1, and that cache slot already contains a low-hot container (i.e., a low-scoring container), such as... Figure 3d As shown, at this point, a transport robot can be used to perform the transport task, moving the low-scoring container to the upper level (such as the upper level of zone 2), and then performing the following... Figure 3c The relay method shown illustrates the transportation process.

[0189] The storage scheduling method provided in this manual can determine the occupancy ratio of cache slots in the container cache area. If the occupancy ratio of cache slots exceeds a set threshold, it indicates that too many containers are stored in the container cache area, and there may be insufficient cache slots for container handover. In this case, based on the container score of each cache slot in the container cache area, the cache slots to be released in the container cache area can be determined, and corresponding return tasks can be generated to return the containers to be returned in the cache slots to be released to the container storage area. This dynamically controls the occupancy ratio of cache slots in the container cache area, ensuring that there are sufficient cache slots in the container cache area for container handover. In this way, in addition to container handover, the container buffer can also be used for container storage. That is, after a container is picked at the workstation, the transfer robot sends the container back to the container buffer from the workstation. There is no need to send the container back to the container storage area. The container can be directly stored in the buffer. Subsequently, the transfer of containers in the buffer is dynamically controlled based on the occupancy ratio of the buffer slots. Containers can be stored in the container buffer, which improves the container reuse rate, thereby improving the container outbound efficiency and target item picking efficiency, and greatly saving the robot's transportation resources.

[0190] Corresponding to the above method embodiments, this specification also provides embodiments of a warehouse scheduling device. Figure 4 A schematic diagram of a warehouse scheduling device according to an embodiment of this specification is shown. Figure 4 As shown, the device includes:

[0191] The first determining module 402 is configured to determine the occupancy ratio of cache bits in the container cache area, wherein the container cache area includes at least one cache bit;

[0192] The second determining module 404 is configured to determine the container score of each cached container in the container cache area when the occupancy ratio of the cached bits exceeds a set ratio threshold. The container score is determined based on the picking task to be executed and the number of target items in the container.

[0193] The generation module 406 is configured to determine the cache bits to be released in the container cache area based on the container score, and generate a return task for the container to be returned in the cache bit to be released, wherein the return task is used to instruct the container to be returned from the cache bit to be released to the container storage area.

[0194] The storage scheduling device provided in this manual can determine the occupancy ratio of cache slots in the container buffer area. If the occupancy ratio of cache slots exceeds a set threshold, it indicates that too many containers are stored in the container buffer area, and there may be insufficient cache slots for container handover. In this case, based on the container score of each cache slot in the container buffer area, the device can determine the cache slots to be released in the container buffer area and generate corresponding return tasks to return the containers to be returned in the cache slots to the container storage area. This dynamically controls the occupancy ratio of cache slots in the container buffer area, ensuring that there are sufficient cache slots in the container buffer area for container handover. In this way, in addition to container handover, the container buffer can also be used for container storage. That is, after a container is picked at the workstation, the transfer robot sends the container back to the container buffer from the workstation. There is no need to send the container back to the container storage area. The container can be directly stored in the buffer. Subsequently, the transfer of containers in the buffer is dynamically controlled based on the occupancy ratio of the buffer slots. Containers can be stored in the container buffer, which improves the container reuse rate, thereby improving the container outbound efficiency and target item picking efficiency, and greatly saving the robot's transportation resources.

[0195] Optionally, the first determining module 402 is further configured to:

[0196] Determine the number of occupied cache bits in the container cache;

[0197] Based on the current container migration task, determine the number of cache bits to be occupied and the number of cache bits to be released;

[0198] The occupancy ratio of cache bits in the container cache area is determined based on the number of occupied cache bits, the number of cache bits to be occupied, and the number of cache bits to be released.

[0199] Optionally, the generation module 406 is further configured as follows:

[0200] Determine the difference between the occupancy rate and the set threshold rate, and determine the number of cache bits to be released based on the difference;

[0201] Sort the container scores of the containers stored in each cache location, and select a number of cache locations to be released based on the sorting results.

[0202] Optionally, the generation module 406 is further configured as follows:

[0203] Determine the target storage location corresponding to the cache bit to be released;

[0204] A return task is generated based on the cache bit to be released and the target storage bit. The return task is used to return the container to be returned stored in the cache bit to the target storage bit.

[0205] Optionally, the device further includes a transfer module configured to:

[0206] At each first preset time interval, identify the containers in the container storage area that are to be transferred to the container cache area;

[0207] Determine the first cache bit in the container cache area corresponding to the container to be transferred;

[0208] A container transfer task is generated based on the first storage location and the first cache location. The first storage location is the storage location of the container to be transferred in the container storage area, and the container transfer task is used to instruct the container to be transferred from the first storage location to the first cache location.

[0209] Optionally, the warehousing system includes at least two aisles, each aisle being equipped with a container storage area and a container buffer area; the transfer module is further configured to:

[0210] Determine whether there are available cache bits in the first container buffer area, wherein the first container buffer area and the container storage area where the container to be transferred is located belong to the same lane;

[0211] If an available cache bit exists, determine the first cache bit from the available cache bits;

[0212] If no available cache bit is available, the first cache bit is determined from the second container cache area, wherein the second container cache area and the container storage area where the container to be transferred is located do not belong to the same lane.

[0213] Optionally, the first buffer bit and the first storage bit belong to the same lane; the transfer module is further configured as follows:

[0214] Determine if the first cache bit currently contains a container;

[0215] If a container is stored, a replacement task is generated for the container stored in the first buffer position. The replacement task is used to instruct the handling robot to return the container stored in the first buffer position to the container storage area and to move the container to be transferred from the first storage position to the first buffer position.

[0216] If no container is stored, a first container handling task is generated for the container to be transferred based on the first storage location and the first cache location. The first container handling task is used to instruct the handling robot to move the container to be transferred from the first storage location to the first cache location.

[0217] Optionally, the first buffer bit and the first storage bit belong to different lanes; the transfer module is further configured as follows:

[0218] A second container handling task is generated based on the first storage location for the container to be transferred. The second container handling task is used to instruct the handling robot to move the container to be transferred from the first storage location to the second buffer location. The second buffer location and the first storage location belong to the same lane.

[0219] When the container to be transferred is moved to the second cache position, a transfer task is generated for the container to be transferred based on the second cache position and the first cache position. The transfer task is used to instruct the transfer robot to transfer the container to be transferred from the second cache position to the first cache position.

[0220] Optionally, the transfer module is further configured as follows:

[0221] Determine if the first cache bit currently contains a container;

[0222] If a container is stored, a third container handling task is generated for the container stored in the first buffer position. The third container handling task is used to instruct the handling robot to move the container stored in the first buffer position from the first buffer position to the second storage position. The first buffer position and the second storage position are in the same lane or different lanes.

[0223] If a container is moved out of the first cache location, a transfer task is generated for the container to be transferred based on the second cache location and the first cache location.

[0224] Optionally, the device also includes a scoring module configured to:

[0225] Determine the number of picking tasks that match at least one target group in the first container, wherein the first container is any container stored in the container buffer area and the container storage area, and target items with the same target item identifier constitute a target group;

[0226] The heat value of the first container is determined based on the number of picking tasks matched with at least one group of target items.

[0227] Determine the container type of the first container, and based on the container type, determine the base score for the first container;

[0228] The container score for the first container is determined based on the heat value and the base score.

[0229] Optionally, the scoring module is further configured as follows:

[0230] When the container type of the first container is a hit container, the base score of the first container is determined to be a first set value, where a hit container refers to the container selected to perform the picking task, and the first set value is the lower boundary value of the first score range.

[0231] If the container type of the first container is a miss container and it is a container in the container cache, the base score of the first container is determined to be a second set value, wherein the second set value is the lower boundary value of the second score range;

[0232] If the container type of the first container is a non-hit container and it is a container in the container storage area, the base score of the first container is determined to be a third set value, wherein the third set value is the lower boundary value of the third score range;

[0233] The first, second, and third score ranges are obtained based on the container score division, with the first set value being higher than the second set value, and the second set value being higher than the third set value.

[0234] The above is a schematic scheme of a warehouse scheduling device according to this embodiment. It should be noted that the technical solution of this warehouse scheduling device and the technical solution of the warehouse scheduling method described above belong to the same concept. For details not described in detail in the technical solution of the warehouse scheduling device, please refer to the description of the technical solution of the warehouse scheduling method described above.

[0235] Figure 5 A structural block diagram of a computing device 500 according to an embodiment of this specification is shown. The components of the computing device 500 include, but are not limited to, a memory 510 and a processor 520. The processor 520 is connected to the memory 510 via a bus 530, and a database 550 is used to store data.

[0236] The computing device 500 also includes an access device 540, which enables the computing device 500 to communicate via one or more networks 560. Examples of these networks include Public Switched Telephone Network (PSTN), Local Area Network (LAN), Wide Area Network (WAN), Personal Area Network (PAN), or combinations of communication networks such as the Internet. The access device 540 may include one or more of any type of wired or wireless network interface (e.g., Network Interface Controller (NIC)), such as an IEEE 802.11 Wireless Local Area Networks (WLAN) wireless interface, Wi-MAX (Worldwide Interoperability for Microwave Access) interface, Ethernet interface, Universal Serial Bus (USB) interface, cellular network interface, Bluetooth interface, Near Field Communication (NFC) interface, and so on.

[0237] In one embodiment of this specification, the above-described components of the computing device 500 and Figure 5 Other components, not shown, can also be connected to each other, for example, via a bus. It should be understood that... Figure 5 The block diagram of the computing device shown is for illustrative purposes only and is not intended to limit the scope of this specification. Those skilled in the art can add or replace other components as needed.

[0238] The computing device 500 can be any type of stationary or mobile computing device, including mobile computers or mobile computing devices (e.g., tablet computers, personal digital assistants, laptop computers, notebook computers, netbooks, etc.), mobile phones (e.g., smartphones), wearable computing devices (e.g., smartwatches, smart glasses, etc.) or other types of mobile devices, or stationary computing devices such as desktop computers or PCs. The computing device 500 can also be a mobile or stationary server.

[0239] The processor 520 is used to execute the following computer-executable instructions to implement the steps of the warehouse scheduling method.

[0240] The above is an illustrative scheme of a computing device according to this embodiment. It should be noted that the technical solution of this computing device and the technical solution of the above-described warehouse scheduling method belong to the same concept. For details not described in detail in the technical solution of the computing device, please refer to the description of the technical solution of the above-described warehouse scheduling method.

[0241] An embodiment of this specification also provides a computer-readable storage medium storing computer instructions that, when executed by a processor, are used to implement the steps of a warehouse scheduling method.

[0242] The above is an illustrative scheme of a computer-readable storage medium according to this embodiment. It should be noted that the technical solution of this storage medium and the technical solution of the above-described warehouse scheduling method belong to the same concept. For details not described in detail in the technical solution of the storage medium, please refer to the description of the technical solution of the above-described warehouse scheduling method.

[0243] The foregoing has described specific embodiments of this specification. Other embodiments are within the scope of the appended claims. In some cases, the actions or steps recited in the claims may be performed in a different order than that shown in the embodiments and may still achieve the desired result. Furthermore, the processes depicted in the drawings do not necessarily require the specific or sequential order shown to achieve the desired result. In some embodiments, multitasking and parallel processing are possible or may be advantageous.

[0244] Computer instructions include computer program code, which can be in the form of source code, object code, executable files, or certain intermediate forms. Computer-readable media can include: any entity or device capable of carrying computer program code, recording media, USB flash drives, portable hard drives, magnetic disks, optical disks, computer memory, read-only memory (ROM), random access memory (RAM), electrical carrier signals, telecommunication signals, and software distribution media, etc.

[0245] It should be noted that, for the sake of simplicity, the foregoing method embodiments are all described as a series of actions. However, those skilled in the art should understand that this specification is not limited to the described order of actions, as some steps may be performed in other orders or simultaneously according to this specification. Furthermore, those skilled in the art should also understand that the embodiments described in this specification are preferred embodiments, and the actions and modules involved are not necessarily essential to this specification.

[0246] In the above embodiments, the descriptions of each embodiment have different focuses. For parts not described in detail in a certain embodiment, please refer to the relevant descriptions of other embodiments.

[0247] The preferred embodiments disclosed above are merely illustrative of this specification. The optional embodiments do not exhaustively describe all details, nor do they limit the invention to the specific implementations described. Clearly, many modifications and variations can be made based on the content of this specification. These embodiments have been selected and specifically described in this specification to better explain the principles and practical applications of this specification, thereby enabling those skilled in the art to better understand and utilize this specification. This specification is limited only by the claims and their full scope and equivalents.

Claims

1. A warehouse scheduling method, characterized in that, The method includes: Determine the occupancy ratio of cache bits in the container cache area, wherein the container cache area includes at least one cache bit, and the container cache area includes a first container cache area and a second container cache area; If the occupancy rate of the cache slots exceeds a set threshold, the container score of each cache slot in the container cache area is determined, wherein the container score is determined based on the picking task to be executed and the number of target items in the container. Based on the container score, determine the cache position to be released in the container cache area, and generate a return task for the container to be returned in the cache position to be released, wherein the return task is used to instruct the container to be returned from the cache position to be released to the container storage area. If there are available cache bits in the first container buffer area, then a first cache bit is determined from the available cache bits, and a container transfer task for the container to be transferred is generated based on the first storage bit and the first cache bit. The first storage bit is the storage location of the container to be transferred in the container storage area, and the container transfer task is used to instruct the container to be transferred from the first storage bit to the first cache bit. The first container buffer area and the container storage area where the container to be transferred is located belong to the same lane.

2. The warehouse scheduling method according to claim 1, characterized in that, Determining the occupancy ratio of cache bits in the container cache area includes: Determine the number of occupied cache bits in the container cache area; Based on the current container migration task, determine the number of cache bits to be occupied and the number of cache bits to be released; The occupancy ratio of cache bits in the container cache area is determined based on the number of occupied cache bits, the number of cache bits to be occupied, and the number of cache bits to be released.

3. The warehouse scheduling method according to claim 1, characterized in that, The step of determining the cache bits to be released in the container cache area based on the container score includes: Determine the difference between the occupancy ratio and the set ratio threshold, and determine the number of cache bits to be released based on the difference; The container scores of the containers stored in each cache location are sorted, and the specified number of cache locations to be released are selected based on the sorting results.

4. The warehouse scheduling method according to claim 1, characterized in that, The generation of the return task for the container to be returned in the cache bit to be released includes: Determine the target storage location corresponding to the cache location to be released; The return task is generated based on the cache bit to be released and the target storage bit, wherein the return task is used to return the container to be returned stored in the cache bit to the target storage bit.

5. The warehouse scheduling method according to any one of claims 1-4, characterized in that, The step of determining the first cache bit from the available cache bits if there are available cache bits in the first container cache area further includes: At each first preset time interval, determine the containers in the container storage area that are to be transferred to the container buffer area; Determine the first cache bit corresponding to the container to be transferred in the container cache area; A container transfer task is generated based on the first storage location and the first cache location, wherein the first storage location is the storage location of the container to be transferred in the container storage area, and the container transfer task is used to instruct the container to be transferred from the first storage location to the first cache location.

6. The warehouse scheduling method according to claim 1, characterized in that, Also includes; If there is no available cache bit in the first container buffer area, the first cache bit is determined from the second container buffer area, wherein the second container buffer area and the container storage area where the container to be transferred is located do not belong to the same lane.

7. The warehouse scheduling method according to claim 1, characterized in that, The first cache location and the first storage location belong to the same lane; The process of generating the container transfer task based on the first storage bit and the first cache bit includes: Determine whether the first cache bit currently contains a container; If a container is stored, a replacement task is generated for the container stored in the first cache position. The replacement task is used to instruct the handling robot to return the container stored in the first cache position to the container storage area and to move the container to be transferred from the first storage position to the first cache position. If no container is stored, a first container handling task is generated for the container to be transferred based on the first storage location and the first cache location. The first container handling task is used to instruct the handling robot to move the container to be transferred from the first storage location to the first cache location.

8. The warehouse scheduling method according to claim 6, characterized in that, The first cache location and the first storage location belong to different lanes; The process of generating the container transfer task based on the first storage bit and the first cache bit includes: A second container handling task is generated based on the first storage location for the container to be transferred. The second container handling task is used to instruct the handling robot to move the container to be transferred from the first storage location to a second buffer location. The second buffer location and the first storage location belong to the same lane. When the container to be transferred is moved to the second buffer position, a transfer task is generated for the container to be transferred based on the second buffer position and the first buffer position, wherein the transfer task is used to instruct the transfer robot to transfer the container to be transferred from the second buffer position to the first buffer position.

9. The warehouse scheduling method according to claim 8, characterized in that, The step of generating a transfer task for the container to be transferred based on the second cache bit and the first cache bit includes: Determine whether the first cache bit currently contains a container; If a container is stored, a third container handling task is generated for the container stored in the first cache position. The third container handling task is used to instruct the handling robot to move the container stored in the first cache position from the first cache position to the second storage position. The first cache position and the second storage position are in the same lane or different lanes. When a container is moved out of the first cache location, the transfer task is generated for the container to be transferred based on the second cache location and the first cache location.

10. The warehouse scheduling method according to any one of claims 1-4, characterized in that, Before determining the container score of each cache bit in the container cache area, the method further includes: Determine the number of picking tasks that match at least one target group in the first container, wherein the first container is any container stored in the container buffer area and the container storage area, and target items with the same target item identifier constitute a target group; The heat value of the first container is determined based on the number of picking tasks matched with the at least one group of target objects. Determine the container type of the first container, and determine the base score of the first container based on the container type; The container score of the first container is determined based on the heat value and the base score.

11. The warehouse scheduling method according to claim 10, characterized in that, The step of determining the base score of the first container based on the container type includes: When the container type of the first container is a hit container, the base score of the first container is determined to be a first set value, wherein the hit container refers to the container selected to perform the picking task, and the first set value is the lower boundary value of the first score range. If the container type of the first container is a miss container and it is a container in the container cache, the base score of the first container is determined to be a second set value, wherein the second set value is the lower boundary value of the second score range; If the container type of the first container is a non-hit container and it is a container in the container storage area, the base score of the first container is determined to be a third set value, wherein the third set value is the lower boundary value of the third score range; The first score range, the second score range, and the third score range are obtained based on the container score division. The first set value is higher than the second set value, and the second set value is higher than the third set value.

12. A warehouse scheduling device, characterized in that, The device includes: The first determining module is configured to determine the occupancy ratio of cache bits in the container cache area, wherein the container cache area includes at least one cache bit, and the container cache area includes a first container cache area and a second container cache area. The second determining module is configured to determine the container score of each cached container in the container cache area when the occupancy ratio of the cached slots exceeds a set ratio threshold, wherein the container score is determined based on the picking task to be executed and the number of target items in the container. The generation module is configured to determine the cache slots to be released in the container cache area based on the container score, and generate a return task for the container to be returned in the cache slot. The return task is used to instruct the container to be returned from the cache slot to the container storage area. If there are available cache slots in the first container cache area, a first cache slot is determined from the available cache slots. A container transfer task for the container to be transferred is generated based on the first storage slot and the first cache slot. The first storage slot is the storage location of the container to be transferred in the container storage area. The container transfer task is used to instruct the container to be transferred from the first storage slot to the first cache slot. The first container cache area and the container storage area where the container to be transferred is located belong to the same channel.

13. A computing device, comprising: Memory and processor; The memory is used to store computer-executable instructions, and the processor is used to execute the computer-executable instructions to implement the steps of the warehouse scheduling method according to any one of claims 1-11.

14. A computer-readable storage medium storing computer instructions that, when executed by a processor, implement the steps of the warehouse scheduling method according to any one of claims 1 to 11.

Citation Information

Patent Citations

  • Scheduling method and device as well as equipment and storage medium

    CN112278674A

  • Warehousing system

    CN215709084U

Cited By

  • Warehousing system and warehousing scheduling method

    WO2023025222A1