Intelligent storing and taking method for multi-deep-position stereoscopic warehouse

By pre-sorting, conflict detection, and occlusion judgment of multi-depth vertical storage tasks, the location selection of storage locations is optimized, solving the problem of handling conflicts in the intelligent warehousing system and improving operational efficiency and resource utilization.

CN121119902APending Publication Date: 2025-12-12浙江海蜂智能科技有限公司
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202511142295.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-08-15
Publication Date
2025-12-12

AI Technical Summary

Technical Problem

Existing intelligent warehousing systems lack intelligent scheduling methods, leading to conflicts in the handling process, inefficient task execution, and insufficient resource utilization.

Method used

By pre-sorting, conflict detection, occlusion judgment, and pre-moving strategies for multi-deep vertical storage tasks, the location of storage locations is optimized, and storage and retrieval task execution queues and moving task execution queues are established to avoid handling conflicts and improve resource utilization.

Benefits of technology

It improves the operational efficiency of multi-level vertical warehouses, reduces repetitive handling, avoids handling conflicts, and increases equipment utilization.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121119902A_ABST
    Figure CN121119902A_ABST
Patent Text Reader

Abstract

The invention discloses an intelligent storing and taking method for a multi-deep-position stereoscopic warehouse. The problems that an existing intelligent warehousing system lacks an intelligent scheduling method, conflicts exist in the carrying process, task execution is not efficient, and resource utilization is not sufficient are solved. The method comprises the steps of obtaining access tasks of multi-deep-position goods shelves in the same time period; performing conflict detection on the access tasks to establish an access task execution queue; respectively carrying out shielding detection on storage tasks in the access task execution queue, obtaining shielded goods locations, establishing a moving task execution queue, and distributing vacant sites to move goods in the shielded goods locations; and after the goods are shielded from being moved, storing and taking the goods according to the storing and taking task execution queue. According to goods storing and taking of a multi-deep-position goods shelf structure, through task pre-sequencing, conflict detection and shielding detection, shielding goods positions are pre-moved, the operation efficiency is improved, repeated and invalid carrying is reduced, and the equipment utilization rate is increased.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of warehouse storage technology, and in particular to a multi-depth vertical warehouse intelligent storage and retrieval method. Background Technology

[0002] In current intelligent warehousing systems, multi-level storage (MLS) warehouses are widely used in manufacturing, pharmaceuticals, e-commerce, and other industries due to their high storage density and high land utilization. However, traditional MLS operations generally face the following problems: inefficient path scheduling, frequent repetitive handling, long equipment waiting times, and a lack of overall optimization strategies. For example, patent application number 202410575672.9, entitled "Goods Inbound / Outbound System and Method," has a buffer space at the bottom of the storage layer. During goods storage and retrieval, it can buffer goods, improving system flexibility and increasing the efficiency of goods entering the warehouse. However, this patent also has some drawbacks. When multiple inbound / outbound tasks exist in a single aisle, task conflicts are likely to occur. This patent lacks scheduling functions for inbound / outbound tasks and cannot adapt to high-frequency dynamic operation scenarios in dense warehousing. Summary of the Invention

[0003] This invention primarily addresses the problems of existing intelligent warehousing systems lacking intelligent scheduling methods and experiencing conflicts during handling, leading to inefficient task execution and insufficient resource utilization. It provides a multi-depth automated warehouse intelligent storage and retrieval method. Through task pre-sorting, conflict detection, occlusion judgment, pre-movement strategies, and optimal location of storage spaces, it improves operational efficiency, reduces redundant handling, avoids handling conflicts, and enhances resource utilization.

[0004] The above-mentioned technical problem of the present invention is mainly solved by the following technical solution: a multi-depth vertical storage intelligent access method, comprising the following steps: Retrieve storage and retrieval tasks for multi-depth shelving within the same time period; Perform conflict detection on access tasks to establish an access task execution queue; Obstruction detection is performed on each stored task in the storage task execution queue. Obstructed storage locations are obtained and a transfer task execution queue is established. Empty spaces are allocated to transfer goods to obstructed storage locations. After the goods are obstructed from being moved, the goods are stored and retrieved according to the storage and retrieval task execution queue.

[0005] This invention addresses the storage and retrieval of goods in multi-depth racking structures. By pre-sorting tasks, detecting conflicts, and detecting obstructions, it pre-moves obstructed storage locations, thereby improving operational efficiency, reducing repetitive and ineffective handling, and increasing equipment utilization.

[0006] As a preferred embodiment, the method of performing conflict detection on storage tasks to establish an access task execution queue includes: Determine whether the retrieved access task is a single task. If so, check if there is a conflict in the task path. If not, check if there is a conflict in the task path. Then, schedule and sort the access tasks to form an access task execution queue.

[0007] In multi-depth racking systems, multiple storage locations are typically located within the rack, with only one entrance / exit. Conflict detection checks for conflicts in the access paths of storage tasks. A conflict occurs when goods for a later-executed access task block the path of the current task. The principle behind conflict detection is that if multiple access tasks exist within the same multi-depth rack at the same time period, a potential access path conflict is identified. In cases of conflicting access tasks, these tasks are scheduled and ordered, adjusting their execution order to ensure that goods move along the access paths without conflict during task execution. This reordering creates a new sequence, forming the access task execution queue, and tasks are executed according to the order of this queue.

[0008] As a preferred approach, an access task execution queue is established, including: Access rules are set based on non-conflict. The access rules include the execution order of access tasks set based on spatial location. Access tasks are sorted according to the access rules to establish an access task execution queue.

[0009] In multi-level racking systems, the access tasks of inner and outer storage locations have a sequential dependency. To prevent access path conflicts and resource occupation, the scheduling system pre-sets access rules, automatically determines the priority of each access task based on its spatial location, dynamically adjusts the order of access tasks, and constructs an access task execution queue. The following uses four typical access task conflict scenarios to illustrate the priority execution strategy.

[0010] Assuming there are access tasks T1 and T2, in the first conflict scenario, access task T1 moves goods out of the outer / inner layer, while access task T2 moves goods into the inner / outer layer. In this case, the strategy is to execute access task T1 first, and then execute access task T2.

[0011] In the second conflict scenario, if access task T1 moves goods into the outer / inner layer and access task T2 moves goods out of the inner / outer layer, then the strategy is to execute access task T2 first, and then access task T1.

[0012] In the third conflict scenario, where both storage and retrieval tasks T1 and T2 involve moving goods into the warehouse, the strategy is to first execute the storage and retrieval task with the target location in the inner layer, and then execute the storage and retrieval task with the target location in the outer layer.

[0013] In the fourth conflict scenario, where both storage and retrieval tasks T1 and T2 involve moving goods out, the strategy is to execute the storage and retrieval task with the outer storage location first, followed by the storage and retrieval task with the inner storage location.

[0014] Based on the above typical conflict scenarios, the execution order of multiple access tasks can be obtained, forming access rules. Specifically, access rules can be expressed as follows: first, access tasks for goods leaving the warehouse are executed, then access tasks for goods entering the warehouse are executed. For the same type of goods leaving the warehouse, the access tasks for goods located in the outer layer are executed first, then those located in the inner layer. For the same type of goods entering the warehouse, the access tasks for goods located in the inner layer are executed first, then those located in the outer layer.

[0015] As a preferred embodiment, the occlusion detection performed on each stored task in the access task execution queue includes: Determine the storage path based on the target storage location of the current storage task, and construct the forward storage location set by obtaining the storage locations on the storage path. Specifically, the target storage location is obtained based on the access task. If access task T is defined, then the target storage location of access task T is loc(T). The access path is determined based on the target storage location, and the access path is represented as path(loc(T)). All storage locations along the access path are obtained to form the forward storage location set, represented as F={L1,L2,…L… k}, where L i , i=1,2,…k represent the storage locations on the access path.

[0016] Determine if the storage location ahead is occupied by goods. If so, there is an obstruction. Obtain all obstructed storage locations and establish a transfer task execution queue according to the storage and retrieval rules. If not, there is no obstruction.

[0017] This solution detects storage locations along the path of goods entering and exiting multi-depth shelving in storage and retrieval tasks. It checks if these locations are occupied by other goods. If occupied, it determines there is an obstruction. In cases of obstruction, all obstructing goods on the path must be moved before the current storage and retrieval task can proceed. All obstructing storage locations are retrieved, and separate relocation tasks are created for each. These relocation tasks are then sorted according to the aforementioned storage and retrieval rules, and a relocation task execution queue is established.

[0018] As a preferred option, allocating empty spaces includes acquiring static and dynamic empty spaces, and moving obstructing goods to static or dynamic empty spaces. Static empty spaces are designated temporary buffer spaces, while dynamic empty spaces are the remaining empty spaces on various multi-depth shelves.

[0019] Empty spaces are categorized into two types: static empty spaces and dynamic empty spaces. Static empty spaces are pre-defined temporary buffer spaces used to temporarily store goods for transfer tasks. The area containing static empty spaces includes multiple entrances and exits, eliminating the need for sorting transfer tasks. Dynamic empty spaces are unoccupied spaces within various multi-depth shelving units, changing dynamically based on goods access. Static empty spaces are preferentially allocated during allocation; dynamic empty spaces are allocated only when static empty spaces are insufficient.

[0020] As a preferred option, static empty spaces are allocated first, and goods are moved to the static empty spaces. When there are fewer static empty spaces than the number of obstructing spaces, dynamic empty spaces are allocated, and the remaining obstructing items are moved to the dynamic empty spaces.

[0021] Empty space allocation prioritizes static empty spaces. If there are insufficient static empty spaces, dynamic empty spaces are then selected, and the remaining goods obstructing the storage space are moved to the dynamic empty spaces. The specific process for allocating static empty spaces includes: obtaining all static empty spaces, determining whether a space is empty (i.e., whether it is occupied by goods), removing the static empty space if not, and finally obtaining all empty static empty spaces. Goods are then moved to the static empty spaces according to the moving task execution queue.

[0022] As a preferred approach, the distance from the static empty space to the multi-depth shelf where the obstructed storage location is located is calculated, the static empty spaces are sorted in ascending order according to the distance, and the static empty spaces are assigned to the moving tasks in the moving task execution queue in turn.

[0023] The distance from a static empty space to an obstructed storage location is the shortest movement distance from the entrance / exit of the multi-depth rack where the obstructed storage location is located to the static empty space. These static empty spaces are sorted from nearest to farthest according to the distance, and then assigned to the moving tasks in the moving task execution queue in order.

[0024] As a preferred approach, dynamic empty spaces are obtained, sorted according to the depth of the multi-depth racks they are located in, and a dynamic empty space set is established by obtaining the deepest dynamic empty space in each multi-depth rack. The distance from the dynamic empty space in the dynamic empty space set to the multi-depth rack where the obstructing storage location is located is calculated, and the dynamic storage locations are sorted in ascending order according to the distance. The dynamic empty spaces are then assigned to the moving tasks in the moving task execution queue in turn.

[0025] All empty spaces (dynamic empty spaces) on multi-depth shelves are obtained and sorted by depth. The deepest dynamic empty space on each multi-depth shelf is then selected as the target dynamic storage location. These target dynamic storage locations together constitute the dynamic empty space set. The distance from a dynamic empty space in the dynamic empty space set to the multi-depth shelf containing an obstructed storage location is the shortest travel distance from the entrance / exit of the obstructed storage location to the dynamic empty space. These dynamic empty spaces are sorted from nearest to farthest based on distance and then assigned in order to the transfer task execution queue or the remaining transfer tasks after the static empty space allocation.

[0026] As a preferred approach, dynamic empty spaces are obtained, and obstruction detection is performed on the multi-depth shelf moving path where the dynamic empty space is located. Unobstructed dynamic empty spaces are selected as candidate dynamic empty spaces. Candidate dynamic empty spaces are sorted according to the depth of the multi-depth racks they are located in. The deepest candidate dynamic empty space in each multi-depth rack is obtained to establish a dynamic empty space set. The distance from the candidate dynamic empty space in the dynamic empty space set to the multi-depth rack where the obstructed storage location is located is calculated. The dynamic storage locations are sorted in ascending order according to the distance, and the dynamic empty spaces are assigned to the moving tasks in the moving task execution queue in turn.

[0027] In this scheme, dynamic empty spaces with unobstructed movement paths are preferred to facilitate goods movement. Unobstructed dynamic empty spaces are selected as candidate dynamic empty spaces, sorted by depth, and then the deepest candidate dynamic empty space on each multi-depth shelf is selected as the target dynamic storage location. These target dynamic storage locations together constitute the dynamic empty space set. The distance from a dynamic empty space in the dynamic empty space set to the multi-depth shelf containing an obstructed storage location is the shortest movement distance from the entrance / exit of the multi-depth shelf containing the obstructed storage location to the dynamic empty space. These dynamic empty spaces are sorted from nearest to farthest according to distance, and then assigned in order to the movement tasks in the movement task execution queue or the remaining movement tasks after the static empty space allocation.

[0028] As a preferred option, after the storage and retrieval task execution queue is completed, the goods in the static empty space are moved back to their original positions in reverse order according to the moving task execution queue.

[0029] Once all tasks in the relocation task execution queue are completed, the current storage and retrieval tasks in the storage and retrieval task execution queue will be executed. After the current storage and retrieval task is completed, the goods temporarily stored in the static empty space need to be moved back to their original positions. Specifically, the relocation tasks are executed in reverse order according to the relocation task execution queue, and the goods in the static empty space are moved back to their original positions along the original route.

[0030] Therefore, the advantages of this invention are: for the storage and retrieval of goods in multi-depth racking structures, by pre-sorting tasks, detecting conflicts, detecting obstructions, and pre-moving obstructed storage locations, operational efficiency is improved, repetitive and ineffective handling is reduced, handling conflicts are avoided, and equipment utilization is increased. Attached Figure Description

[0031] Figure 1 This is a flowchart of the present invention.

[0032] Figure 2 This is a schematic diagram of a process for allocating empty spaces in this invention. Detailed Implementation

[0033] The technical solution of the present invention will be further described in detail below through embodiments and in conjunction with the accompanying drawings.

[0034] Example 1: This embodiment presents a multi-depth, vertical storage intelligent access method, such as... Figure 1 As shown, it includes the following steps: S1. Retrieve storage and retrieval tasks for multi-depth shelves within the same time period.

[0035] This embodiment of the intelligent access method is designed for access tasks of a multi-depth shelf within a time period. The task time period can be divided according to the average or maximum execution time of an access task, and the access tasks within the previous time period can be retrieved at the current time node.

[0036] S2. Perform conflict detection on access tasks to establish an access task execution queue.

[0037] In multi-depth racking structures, multiple storage locations are typically located within the racking system, with only one entrance / exit. Conflict detection checks for conflicts in the access paths of storage tasks. A conflict occurs when goods for a later-executed access task block the access path of the current access task. The principle behind conflict detection is that if multiple access tasks exist within the same multi-depth racking system at the same time period, a potential access path conflict is identified. This includes the following steps: Determine whether the retrieved access task is a single task. If so, check that there is no conflict in the task path and proceed to the next step. If not, check that there is a conflict in the task path and schedule and sort the access tasks to form an access task execution queue.

[0038] When multiple access tasks conflict, they are scheduled and ordered, adjusting their execution order to ensure that goods do not conflict during the movement of goods along the access path. This scheduling and ordering creates a new sequence, forming an access task execution queue, which is then executed according to the order of this queue.

[0039] As a preferred embodiment, establishing the access task execution queue includes: Access rules are set based on non-conflict. The access rules include the execution order of access tasks set based on spatial location. Access tasks are sorted according to the access rules to establish an access task execution queue.

[0040] In multi-level racking systems, the access tasks of inner and outer storage locations have a sequential dependency. To prevent access path conflicts and resource occupation, the scheduling system pre-sets access rules, automatically determines the priority of each access task based on its spatial location, dynamically adjusts the order of access tasks, and constructs an access task execution queue. The following uses four typical access task conflict scenarios to illustrate the priority execution strategy.

[0041] Assuming there are access tasks T1 and T2, in the first conflict scenario, access task T1 moves goods out of the outer / inner layer, while access task T2 moves goods into the inner / outer layer. In this case, the strategy is to execute access task T1 first, and then execute access task T2.

[0042] In the second conflict scenario, if access task T1 moves goods into the outer / inner layer and access task T2 moves goods out of the inner / outer layer, then the strategy is to execute access task T2 first, and then access task T1.

[0043] In the third conflict scenario, where both storage and retrieval tasks T1 and T2 involve moving goods into the warehouse, the strategy is to first execute the storage and retrieval task with the target location in the inner layer, and then execute the storage and retrieval task with the target location in the outer layer.

[0044] In the fourth conflict scenario, where both storage and retrieval tasks T1 and T2 involve moving goods out, the strategy is to execute the storage and retrieval task with the outer storage location first, followed by the storage and retrieval task with the inner storage location.

[0045] Based on the above typical conflict scenarios, the execution order of multiple access tasks can be derived, forming access rules. Specifically, access rules can be expressed as follows: access tasks for goods leaving the warehouse are executed first, followed by access tasks for goods entering the warehouse. For the same type of goods leaving the warehouse, access tasks with goods located in the outer layer are executed first, followed by those with goods located in the inner layer. For the same type of goods entering the warehouse, access tasks with the target location in the inner layer are executed first, followed by those with the target location in the outer layer. Access tasks within the same time period are then scheduled and ordered according to these access rules.

[0046] S3. Perform occlusion detection on each stored task in the storage task execution queue, obtain the occluded storage location, establish a transfer task execution queue, and allocate empty spaces to transfer the goods in the occluded storage location.

[0047] S31. Determine the storage path based on the target location of the current storage task, and construct the forward storage location set by obtaining the storage locations on the storage path.

[0048] Specifically, the target storage location is obtained based on the access task. If access task T is defined, then the target storage location of access task T is loc(T). The access path is determined based on the target storage location, and the access path is represented as path(loc(T)). All storage locations along the access path are obtained to form the forward storage location set, represented as F={L1,L2,…L… k}, where L i , i=1,2,…k represent the storage locations on the access path.

[0049] S32. Determine whether the storage location in front is occupied by goods. If yes, there is an obstruction. Obtain all obstructed storage locations, establish a transfer task execution queue according to the storage and retrieval rules, and allocate empty locations to transfer the goods in the obstructed storage locations. If no, there is no obstruction, proceed to the next step.

[0050] This step detects the storage locations along the path of goods entering and exiting multi-depth shelving in the storage task, checking if they are occupied by other goods. If occupied, it determines that there is an obstruction. In the case of obstruction, all obstructing goods on the path must be moved out before the current storage task can proceed. All obstructing storage locations are retrieved, and separate moving tasks are created for each. These moving tasks are then sorted according to the aforementioned storage and retrieval rules, creating a moving task execution queue.

[0051] After establishing a task execution queue, empty spaces are allocated to it. In this embodiment, empty spaces include static empty spaces and dynamic empty spaces. After allocation, obstructing goods are moved to static or dynamic empty spaces. Static empty spaces are pre-set temporary buffer spaces used to temporarily store goods for task transfer. The area where static empty spaces are located includes multiple entrances and exits, so there is no need to sort the task transfers. Dynamic empty spaces are the remaining empty spaces in each multi-depth shelf, that is, the empty spaces in each multi-depth shelf that are not occupied by goods, and they change dynamically according to the storage and retrieval of goods.

[0052] When allocating empty spaces, priority is given to static empty spaces. Goods are moved to static empty spaces. When there are fewer static empty spaces than obstructed empty spaces, dynamic empty spaces are allocated, and the remaining obstructed items are moved to dynamic empty spaces. Figure 2 The allocation of empty spaces specifically includes the following steps: S321. Get the static empty space status.

[0053] Obtain all static empty spaces, determine whether they are empty spaces (i.e., whether they are occupied by goods), and remove the static empty space if not. Finally, obtain all static empty spaces, forming a static empty space set X.

[0054] S322. Determine if the static empty space set X is empty. If yes, proceed to S324; otherwise, proceed to the next step. If the current static empty space set is empty, it means there are no unoccupied static empty spaces, so dynamic empty spaces need to be retrieved to allocate the relocation task.

[0055] S323. Determine if the number of static empty spaces is less than the number of obstructed storage spaces. If not, calculate the distance from the static empty space to the multi-depth shelf where the obstructed storage location is located, sort the static empty spaces in ascending order according to the distance, and assign the static empty spaces to the moving tasks in the moving task execution queue in turn. The empty space allocation step ends.

[0056] The distance from a static empty space to an obstructed storage location is the shortest movement distance from the entrance / exit of the multi-depth rack where the obstructed storage location is located to the static empty space. These static empty spaces are sorted from nearest to farthest according to the distance, and then assigned to the moving tasks in the moving task execution queue in order.

[0057] If so, the current static empty space will be preferentially allocated to the moving tasks of the obstructed storage location. The specific process is the same: calculate the distance from the static empty space to the multi-depth rack where the obstructed storage location is located, sort the static empty spaces in ascending order according to the distance, and then allocate the static empty spaces to the moving tasks at the front of the moving task execution queue in turn. The remaining moving tasks will be allocated by scheduling dynamic empty spaces.

[0058] S324. Obtain dynamic vacancy spaces and form a dynamic vacancy space set Y.

[0059] Determine if the set of available slots Y is empty. If yes, the slot allocation step ends; otherwise, proceed to the next step. If the current set of dynamic available slots is empty, it means there are no available dynamic available slots. Therefore, there are no available slots to allocate for the transfer task, and the transfer task cannot be performed. The current access task needs to be stopped, and manual intervention is required to resolve the issue.

[0060] S325. Sort the dynamic empty spaces according to the depth of the multi-depth racks they are in, obtain the dynamic empty spaces with the deepest depth in each multi-depth rack, establish a dynamic empty space set, calculate the distance from the dynamic empty spaces in the dynamic empty space set to the multi-depth racks where the obstructing storage locations are located, sort the dynamic storage locations in ascending order according to the distance, and allocate the dynamic empty spaces to the moving tasks in the moving task execution queue in turn. The empty space allocation step ends.

[0061] All empty spaces (dynamic empty spaces) on multi-depth shelves are acquired and sorted by depth. The deepest dynamic empty space on each multi-depth shelf is then selected as the target dynamic storage location. These target dynamic storage locations together constitute the dynamic empty space set. The distance from a dynamic empty space in the dynamic empty space set to the multi-depth shelf containing an obstructed storage location is the shortest movement distance from the entrance / exit of the obstructed storage location to the dynamic empty space. These dynamic empty spaces are sorted from nearest to farthest based on distance and then assigned in order to moving tasks in the moving task execution queue or to the remaining moving tasks after the static empty space allocation. Similarly, when assigning moving tasks to dynamic empty spaces, obstruction detection is performed during execution. If obstruction exists, a further moving task is generated to move the goods in the obstructed storage location first.

[0062] S4. After obstructing the movement of goods, store and retrieve the goods according to the storage and retrieval task execution queue.

[0063] After the goods in the obstructed storage location corresponding to the current storage task are moved, the current storage task continues to be executed. This storage task enters the system's task queue and is executed sequentially. The storage tasks in the storage task execution queue are executed in sequence according to the above steps. For a given storage task, after all the moving tasks in its corresponding moving task execution queue are completed, the goods temporarily stored in static empty locations need to be moved back to their original positions. Specifically, the moving tasks are executed in reverse order according to the moving task execution queue, moving the goods in static empty locations back to their original storage locations along the original path. Goods in dynamic empty locations do not need to be moved back to their original positions; only the positions of the moved goods need to be updated in the system.

[0064] Example 2: This embodiment also includes a second implementation of a multi-depth vertical storage intelligent access method, comprising the following steps: S1. Retrieve storage and retrieval tasks for multi-depth shelves within the same time period.

[0065] This embodiment of the intelligent access method is designed for access tasks of a multi-depth shelf within a time period. The task time period can be divided according to the average or maximum execution time of an access task, and the access tasks within the previous time period can be retrieved at the current time node.

[0066] S2. Perform conflict detection on access tasks to establish an access task execution queue.

[0067] In multi-depth racking structures, multiple storage locations are typically located within the racking system, with only one entrance / exit. Conflict detection checks for conflicts in the access paths of storage tasks. A conflict occurs when goods for a later-executed access task block the access path of the current access task. The principle behind conflict detection is that if multiple access tasks exist within the same multi-depth racking system at the same time period, a potential access path conflict is identified. This includes the following steps: Determine whether the retrieved access task is a single task. If so, check that there is no conflict in the task path and proceed to the next step. If not, check that there is a conflict in the task path and schedule and sort the access tasks to form an access task execution queue.

[0068] When multiple access tasks conflict, they are scheduled and ordered, adjusting their execution order to ensure that goods do not conflict during the movement of goods along the access path. This scheduling and ordering creates a new sequence, forming an access task execution queue, which is then executed according to the order of this queue.

[0069] As a preferred embodiment, establishing the access task execution queue includes: Access rules are set based on non-conflict. The access rules include the execution order of access tasks set based on spatial location. Access tasks are sorted according to the access rules to establish an access task execution queue.

[0070] In multi-level racking systems, the access tasks of inner and outer storage locations have a sequential dependency. To prevent access path conflicts and resource occupation, the scheduling system pre-sets access rules, automatically determines the priority of each access task based on its spatial location, dynamically adjusts the order of access tasks, and constructs an access task execution queue. The following uses four typical access task conflict scenarios to illustrate the priority execution strategy.

[0071] Assuming there are access tasks T1 and T2, in the first conflict scenario, access task T1 moves goods out of the outer / inner layer, while access task T2 moves goods into the inner / outer layer. In this case, the strategy is to execute access task T1 first, and then execute access task T2.

[0072] In the second conflict scenario, if access task T1 moves goods into the outer / inner layer and access task T2 moves goods out of the inner / outer layer, then the strategy is to execute access task T2 first, and then access task T1.

[0073] In the third conflict scenario, where both storage and retrieval tasks T1 and T2 involve moving goods into the warehouse, the strategy is to first execute the storage and retrieval task with the target location in the inner layer, and then execute the storage and retrieval task with the target location in the outer layer.

[0074] In the fourth conflict scenario, where both storage and retrieval tasks T1 and T2 involve moving goods out, the strategy is to execute the storage and retrieval task with the outer storage location first, followed by the storage and retrieval task with the inner storage location.

[0075] Based on the above typical conflict scenarios, the execution order of multiple access tasks can be derived, forming access rules. Specifically, access rules can be expressed as follows: access tasks for goods leaving the warehouse are executed first, followed by access tasks for goods entering the warehouse. For the same type of goods leaving the warehouse, access tasks with goods located in the outer layer are executed first, followed by those with goods located in the inner layer. For the same type of goods entering the warehouse, access tasks with the target location in the inner layer are executed first, followed by those with the target location in the outer layer. Access tasks within the same time period are then scheduled and ordered according to these access rules.

[0076] S3. Perform occlusion detection on each stored task in the storage task execution queue, obtain the occluded storage location, establish a transfer task execution queue, and allocate empty spaces to transfer the goods in the occluded storage location.

[0077] S31. Determine the storage path based on the target location of the current storage task, and construct the forward storage location set by obtaining the storage locations on the storage path.

[0078] Specifically, the target storage location is obtained based on the access task. If access task T is defined, then the target storage location of access task T is loc(T). The access path is determined based on the target storage location, and the access path is represented as path(loc(T)). All storage locations along the access path are obtained to form the forward storage location set, represented as F={L1,L2,…L… k}, where L i , i=1,2,…k represent the storage locations on the access path.

[0079] S32. Determine whether the storage location in front is occupied by goods. If yes, there is an obstruction. Obtain all obstructed storage locations, establish a transfer task execution queue according to the storage and retrieval rules, and allocate empty locations to transfer the goods in the obstructed storage locations. If no, there is no obstruction, proceed to the next step.

[0080] This step detects the storage locations along the path of goods entering and exiting multi-depth shelving in the storage task, checking if they are occupied by other goods. If occupied, it determines that there is an obstruction. In the case of obstruction, all obstructing goods on the path must be moved out before the current storage task can proceed. All obstructing storage locations are retrieved, and separate moving tasks are created for each. These moving tasks are then sorted according to the aforementioned storage and retrieval rules, creating a moving task execution queue.

[0081] After establishing a task execution queue, empty spaces are allocated to it. In this embodiment, empty spaces include static empty spaces and dynamic empty spaces. After allocation, obstructing goods are moved to static or dynamic empty spaces. Static empty spaces are pre-set temporary buffer spaces used to temporarily store goods for task transfer. The area where static empty spaces are located includes multiple entrances and exits, so there is no need to sort the task transfers. Dynamic empty spaces are the remaining empty spaces in each multi-depth shelf, that is, the empty spaces in each multi-depth shelf that are not occupied by goods, and they change dynamically according to the storage and retrieval of goods.

[0082] When allocating empty spaces, priority is given to static empty spaces. Goods are moved to static empty spaces. When there are fewer static empty spaces than obstructed storage spaces, dynamic empty spaces are allocated, and the remaining obstructing items are moved to dynamic empty spaces. The allocation of empty spaces specifically includes the following steps: S321. Get the static empty space status.

[0083] Obtain all static empty spaces, determine whether they are empty spaces (i.e., whether they are occupied by goods), and remove the static empty space if not. Finally, obtain all static empty spaces, forming a static empty space set X.

[0084] S322. Determine if the static empty space set X is empty. If yes, proceed to S324; otherwise, proceed to the next step. If the current static empty space set is empty, it means there are no unoccupied static empty spaces, so dynamic empty spaces need to be retrieved to allocate the relocation task.

[0085] S323. Determine if the number of static empty spaces is less than the number of obstructed storage spaces. If not, calculate the distance from the static empty space to the multi-depth shelf where the obstructed storage location is located, sort the static empty spaces in ascending order according to the distance, and assign the static empty spaces to the moving tasks in the moving task execution queue in turn. The empty space allocation step ends.

[0086] The distance from a static empty space to an obstructed storage location is the shortest movement distance from the entrance / exit of the multi-depth rack where the obstructed storage location is located to the static empty space. These static empty spaces are sorted from nearest to farthest according to the distance, and then assigned to the moving tasks in the moving task execution queue in order.

[0087] If so, the current static empty space will be preferentially allocated to the moving tasks of the obstructed storage location. The specific process is the same: calculate the distance from the static empty space to the multi-depth rack where the obstructed storage location is located, sort the static empty spaces in ascending order according to the distance, and then allocate the static empty spaces to the moving tasks at the front of the moving task execution queue in turn. The remaining moving tasks will be allocated by scheduling dynamic empty spaces.

[0088] S324. Obtain dynamic vacancy spaces and form a dynamic vacancy space set Y.

[0089] Determine if the set of available slots Y is empty. If yes, the slot allocation step ends; otherwise, proceed to the next step. If the current set of dynamic available slots is empty, it means there are no available dynamic available slots. Therefore, there are no available slots to allocate for the transfer task, and the transfer task cannot be performed. The current access task needs to be stopped, and manual intervention is required to resolve the issue.

[0090] S325. Perform occlusion detection on the multi-depth shelf moving path where the dynamic empty space is located, and obtain the unobstructed dynamic empty spaces as candidate dynamic empty spaces.

[0091] S326. Candidate dynamic empty spaces are sorted according to the depth of the multi-depth racks they are located in. The deepest candidate dynamic empty space in each multi-depth rack is obtained to establish a dynamic empty space set. The distance from the candidate dynamic empty space in the dynamic empty space set to the multi-depth rack where the obstructing storage location is located is calculated. The dynamic storage locations are sorted in ascending order according to the distance. The dynamic empty spaces are then assigned to the moving tasks in the moving task execution queue in turn. The empty space allocation step ends.

[0092] In this scheme, dynamic empty spaces with unobstructed movement paths are preferred to facilitate goods movement. Unobstructed dynamic empty spaces are selected as candidate dynamic empty spaces, sorted by depth, and then the deepest candidate dynamic empty space on each multi-depth shelf is selected as the target dynamic storage location. These target dynamic storage locations together constitute the dynamic storage location set. The distance from a dynamic empty space in the dynamic empty space set to the multi-depth shelf containing an obstructed storage location is the shortest movement distance from the entrance / exit of the multi-depth shelf containing the obstructed storage location to the dynamic empty space. These dynamic empty spaces are sorted from nearest to farthest according to distance, and then assigned in order to the movement tasks in the movement task execution queue or the remaining movement tasks after the static empty space allocation.

[0093] S4. After obstructing the movement of goods, store and retrieve the goods according to the storage and retrieval task execution queue.

[0094] After the goods in the obstructed storage location corresponding to the current storage task are moved, the current storage task continues to be executed. This storage task enters the system's task queue and is executed sequentially. The storage tasks in the storage task execution queue are executed in sequence according to the above steps. For a given storage task, after all the moving tasks in its corresponding moving task execution queue are completed, the goods temporarily stored in static empty locations need to be moved back to their original positions. Specifically, the moving tasks are executed in reverse order according to the moving task execution queue, moving the goods in static empty locations back to their original storage locations along the original path. Goods in dynamic empty locations do not need to be moved back to their original positions; only the positions of the moved goods need to be updated in the system.

[0095] The specific embodiments described herein are merely illustrative of the spirit of the invention. Those skilled in the art to which this invention pertains may make various modifications or additions to the described specific embodiments or use similar methods to substitute them, without departing from the spirit of the invention or exceeding the scope defined by the appended claims.

Claims

1. A method for intelligent storage and retrieval of multi-depth vertical storage systems, characterized in that, Includes the following steps: Retrieve storage and retrieval tasks for multi-depth shelving within the same time period; Perform conflict detection on access tasks to establish an access task execution queue; Obstruction detection is performed on each stored task in the storage task execution queue. Obstructed storage locations are obtained and a transfer task execution queue is established. Empty spaces are allocated to transfer goods to obstructed storage locations. After the goods are obstructed from being moved, the goods are stored and retrieved according to the storage and retrieval task execution queue.

2. The multi-depth vertical storage intelligent access method according to claim 1, characterized in that, The aforementioned conflict detection of storage tasks to establish an access task execution queue includes: Determine whether the retrieved access task is a single task. If so, check if there is a conflict in the task path. If not, check if there is a conflict in the task path. Then, schedule and sort the access tasks to form an access task execution queue.

3. The multi-depth vertical storage intelligent access method according to claim 2, characterized in that, Establish a task execution queue, including: Access rules are set based on non-conflict. The access rules include the execution order of access tasks set based on spatial location. Access tasks are sorted according to the access rules to establish an access task execution queue.

4. The multi-depth vertical storage intelligent access method according to claim 3, characterized in that, The aforementioned occlusion detection for each stored task in the access task execution queue includes: Determine the storage path based on the target storage location of the current storage task, and construct the forward storage location set by obtaining the storage locations on the storage path. Determine if the storage location ahead is occupied by goods. If so, there is an obstruction. Obtain all obstructed storage locations and establish a transfer task execution queue according to the storage and retrieval rules. If not, there is no obstruction.

5. A multi-depth vertical storage intelligent access method according to claim 1, 2, 3, or 4, characterized in that: Allocating empty spaces includes acquiring static and dynamic empty spaces, and moving obstructed goods to static or dynamic empty spaces. Static empty spaces are designated temporary buffer spaces, while dynamic empty spaces are the remaining empty spaces on each multi-depth shelf.

6. The multi-depth vertical storage intelligent access method according to claim 5, characterized in that: Prioritize allocating static empty spaces and move goods to them. When there are fewer static empty spaces than obstructed spaces, allocate dynamic empty spaces and move the remaining obstructed items to them.

7. The multi-depth vertical storage intelligent access method according to claim 6, characterized in that: Calculate the distance from the static empty space to the multi-depth shelf where the obstructed storage location is located, sort the static empty spaces in ascending order according to the distance, and assign the static empty spaces to the moving tasks in the moving task execution queue in turn.

8. The intelligent storage and retrieval method for multi-depth vertical storage according to claim 6, characterized in that: Obtain dynamic empty spaces, sort the dynamic empty spaces according to the depth of the multi-depth racks they are located in, obtain the dynamic empty spaces with the deepest depth in each multi-depth rack to establish a dynamic empty space set, calculate the distance from the dynamic empty spaces in the dynamic empty space set to the multi-depth racks where the obstructing storage locations are located, sort the dynamic storage locations in ascending order according to the distance, and assign the dynamic empty spaces to the moving tasks in the moving task execution queue in turn.

9. The multi-depth vertical storage intelligent access method according to claim 6, characterized in that: Obtain dynamic empty spaces, perform occlusion detection on the multi-depth shelf moving path where the dynamic empty space is located, and obtain unobstructed dynamic empty spaces as candidate dynamic empty spaces; Candidate dynamic empty spaces are sorted according to the depth of the multi-depth racks they are located in. The deepest candidate dynamic empty space in each multi-depth rack is obtained to establish a dynamic empty space set. The distance from the candidate dynamic empty space in the dynamic empty space set to the multi-depth rack where the obstructed storage location is located is calculated. The dynamic storage locations are sorted in ascending order according to the distance, and the dynamic empty spaces are assigned to the moving tasks in the moving task execution queue in turn.

10. The multi-depth vertical storage intelligent access method according to claim 7, characterized in that: After the storage and retrieval task execution queue is completed, the goods in the static empty space will be moved back to their original positions in reverse order according to the moving task execution queue.

Citation Information

Patent Citations

  • Goods warehouse-in and warehouse-out system and method

    CN118419453A