Stereoscopic warehouse task scheduling method, device, equipment and medium

By establishing a multi-objective optimization model in the three-dimensional warehouse and using a multi-objective genetic algorithm, the problem of poor scheduling in the existing technology is solved, and efficient scheduling of the stacker and system efficiency are improved.

CN119476872BActive Publication Date: 2025-04-04HANGZHOU DIANZI UNIV
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202510042301.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-01-10
Publication Date
2025-04-04
Estimated Expiration
2045-01-10

AI Technical Summary

Technical Problem

In the prior art, real-time scheduling solutions based on reinforcement learning require a large amount of training data and computing resources, resulting in poor optimization results; at the same time, existing scheduling solutions have less scheduling of parallel stackers, resulting in the inability to optimize the effective operation time and path of the three-dimensional warehouse system.

Method used

By obtaining the cargo space information, stacker information and preset working mode in the three-dimensional warehouse, a multi-objective optimization model is established, and the stacker run time and delay time are aimed at, and the solution is combined with the multi-objective genetic algorithm to obtain the best task scheduling solution.

Benefits of technology

It realizes efficient scheduling of stackers in three-dimensional warehouses, optimizes the operating time and path of the system, improves the overall operating efficiency of the system, and meets the multi-target needs of the enterprise.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119476872B_ABST
    Figure CN119476872B_ABST
Patent Text Reader

Abstract

The present invention discloses a method, device, equipment and medium for scheduling tasks in a stereoscopic warehouse, including: obtaining cargo location information of multiple cargo locations in the stereoscopic warehouse, stacker information of multiple stackers and multiple preset working modes of the stackers; based on the cargo location information, stacker information and multiple preset working modes, establishing a multi-objective optimization model with the running time of the stacker executing multiple tasks and the delay time of the stacker executing at least one outbound task as the target; obtaining the task information of multiple tasks to be assigned, cargo location status information of multiple cargo locations and stacker status information of multiple stackers; inputting the task information, cargo location status information and stacker status information into the multi-objective optimization model for solving, and obtaining the best task scheduling scheme. The three decision-making processes of inbound and outbound task combination, stacker scheduling and inbound cargo location allocation are described in the form of a mathematical model, and a high-quality solution is found to meet the multi-objective needs of the enterprise.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of warehousing and logistics, and in particular to a method, device, equipment and medium for scheduling tasks in a stereoscopic warehouse. Background Art

[0002] In related technologies, reinforcement learning is usually used to train intelligent agents for real-time scheduling and optimization algorithms are used to establish mathematical models and solve them. However, real-time scheduling solutions based on reinforcement learning require a large amount of training data and computing resources for training, and are too dependent on experience and exploration. They usually obtain suboptimal solutions and are difficult to guarantee global optimality. In addition, the automated warehouse is a complex system that includes multiple parallel stackers. Currently, there are few scheduling solutions for multiple parallel stackers to perform tasks at the same time, resulting in the system's effective operating time and path not being able to achieve the optimal level, which will greatly reduce the overall operating efficiency of the system. Summary of the invention

[0003] The present invention provides a method, device, computer equipment and medium for scheduling tasks in a stereoscopic warehouse to solve the problem that a real-time scheduling solution based on reinforcement learning usually relies on a large amount of training data, resulting in poor optimization effect, and there are few existing scheduling solutions for parallel stacker scheduling, resulting in the problem that the effective operation time and path of the stereoscopic warehouse system cannot be optimized.

[0004] In a first aspect, a method for scheduling tasks in a three-dimensional warehouse is provided, comprising:

[0005] Obtaining cargo location information of multiple cargo locations in a stereoscopic warehouse, stacker information of multiple stackers, and multiple preset working modes of the stackers, wherein the preset working mode refers to the working mode of any stacker in any task process;

[0006] Based on the cargo location information, the stacker information and a plurality of preset working modes, a multi-objective optimization model is established with the running time of the stacker to perform a plurality of tasks and the delay time of the stacker to perform at least one outbound task as the objectives;

[0007] Obtaining task information of multiple tasks to be assigned, storage location status information of multiple storage locations, and stacker status information of multiple stackers;

[0008] The task information, cargo location status information and stacker status information are input into the multi-objective optimization model for solution to obtain the optimal task scheduling plan, where the optimal task scheduling plan includes the working mode of each task process corresponding to each stacker, the execution task, the execution order of multiple task processes and the storage location of each warehousing task.

[0009] In a second aspect, a three-dimensional warehouse task scheduling device is provided, which is used to implement the three-dimensional warehouse task scheduling method of the first aspect, and the device includes:

[0010] A first acquisition module is used to acquire the cargo location information of multiple cargo locations in the stereoscopic warehouse, the stacker information of multiple stackers, and multiple preset working modes of the stackers, wherein the preset working mode refers to the working mode of any stacker in any task process;

[0011] A construction module is used to establish a multi-objective optimization model with the running time of the stacker to perform multiple tasks and the delay time of the stacker to perform at least one outbound task as the target based on the cargo location information, the stacker information and a plurality of preset working modes;

[0012] A second acquisition module is used to acquire task information of multiple tasks to be assigned, cargo position status information of multiple cargo positions, and stacker status information of multiple stackers;

[0013] The calculation module is used to input the task information, cargo location status information and stacker status information into the multi-objective optimization model for solution to obtain the optimal task scheduling plan, wherein the optimal task scheduling plan includes the working mode of each task process corresponding to each stacker, the execution task, the execution order of multiple task processes and the storage location of each storage task.

[0014] In a third aspect, a computer device is provided, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the steps of the above-mentioned stereoscopic warehouse task scheduling method when executing the computer program.

[0015] In a fourth aspect, a computer-readable storage medium is provided, wherein the computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the steps of the above-mentioned stereoscopic warehouse task scheduling method are implemented.

[0016] In the scheme implemented by the above-mentioned three-dimensional warehouse task scheduling method, device, computer equipment and storage medium, by considering the selection of incoming cargo locations and the stacker operation path planning of the three-dimensional warehouse, the incoming cargo location allocation and stacker operation scheduling are used as decision variables, and a multi-objective optimization model is constructed with the total operating time and total delay time of the stacker as dual objectives. The multi-objective optimization model is solved to obtain the optimal task scheduling scheme, and the three decision-making processes of the combination of in-and-out tasks, stacker scheduling and incoming cargo location allocation are described in the form of a mathematical model, effectively handling the conflicts between different optimization objectives, obtaining the Pareto front solution set, and finding high-quality solutions to meet the multi-objective needs of the enterprise. BRIEF DESCRIPTION OF THE DRAWINGS

[0017] In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the accompanying drawings required for use in the description of the embodiments of the present invention will be briefly introduced below. Obviously, the accompanying drawings in the following description are only some embodiments of the present invention. For ordinary technicians in this field, other accompanying drawings can be obtained based on these accompanying drawings without paying creative labor.

[0018] Figure 1 It is a flow chart of a method for scheduling tasks in a three-dimensional warehouse according to an embodiment of the present invention;

[0019] Figure 2 is a schematic diagram of chromosome coding in one embodiment of the present invention;

[0020] Figure 3 is a schematic diagram of a fast non-dominated sort in one embodiment of the present invention;

[0021] Figure 4 is a schematic diagram of crowding distance of a Pareto solution in one embodiment of the present invention;

[0022] Figure 5 is a schematic diagram of a chromosome crossover operation in one embodiment of the present invention;

[0023] Figure 6 is a schematic diagram of chromosome mutation operation in one embodiment of the present invention;

[0024] Figure 7 is a schematic diagram of a chromosome correction operation in one embodiment of the present invention;

[0025] Figure 8 is a schematic diagram of the inverse generation distance between the solution set generated in one embodiment of the present invention and the ideal solution set;

[0026] Fig. 9 is a schematic diagram of a hypervolume in which a solution set generated in one embodiment of the present invention covers an ideal solution set;

[0027] Fig.10 is a schematic diagram of experimental results of experiments based on different multi-objective genetic algorithms in one embodiment of the present invention;

[0028] Fig.11 It is a schematic diagram of a process of solving an optimal solution based on an improved multi-objective optimization algorithm in one embodiment of the present invention;

[0029] Fig.12 It is a structural schematic diagram of a three-dimensional warehouse task scheduling device in one embodiment of the present invention. DETAILED DESCRIPTION

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

[0031] The stereoscopic warehouse task scheduling method provided by the present invention can be applied to the automated stereoscopic warehouse scenario. In the context of the rapid development of e-commerce, in order to cope with a large number of market demands and reduce logistics costs, automated stereoscopic warehouses are widely used as an efficient solution. Its automation characteristics can reduce labor costs, improve operational efficiency and service levels. The basic automated stereoscopic warehouse consists of a conveyor belt, shelves, stackers and I / O points. The goods are transported to or away from the I / O points by conveyor belts. After receiving the task request, the stacker is triggered from the I / O point to the target shelf to perform the task, and then returns to the I / O point.

[0032] In the process of automated warehouse operation, there are often situations where multiple goods inbound and outbound tasks arrive at the same time. Reasonable arrangement of the order of the stacker's inbound and outbound tasks and the location of the inbound cargo positions is of great significance for improving the system's operating efficiency, reducing the number of empty times for the stacker and reducing the system's operating costs.

[0033] In related technologies, reinforcement learning is usually used to train intelligent agents for real-time scheduling and to use optimization algorithms to establish mathematical models and solve them. Reinforcement learning is based on state, action, strategy and reward. The intelligent agent performs actions according to the strategy based on the state of the environment, changes the state of the environment and obtains rewards. In this scenario, the intelligent agent selects appropriate scheduling actions based on the number, level, urgency and other states of unprocessed tasks in the stereoscopic warehouse, thereby scheduling in real time. However, real-time scheduling solutions based on reinforcement learning technology can adapt to complex and dynamic scheduling scenarios, but usually require a large amount of training data and computing resources for training, and the convergence speed of powerful learning is slow when facing complex actual scenarios, and it relies too much on experience and exploration, and usually obtains suboptimal solutions, which makes it difficult to guarantee the global optimal solution.

[0034] Based on the above problems, an embodiment of the present application provides a method for scheduling tasks in a high-definition warehouse. A mathematical model is constructed with the total operating time and total delay time of the stacker as dual objectives, and an improved multi-objective genetic algorithm is designed for solving the problem. When the size of the automated high-definition warehouse, the usage of cargo space and the task information are determined, a Pareto optimal solution that balances the dual objectives can be obtained.

[0035] See also Figure 1 As shown, Figure 1A flowchart of a method for scheduling tasks in a three-dimensional warehouse provided by an embodiment of the present invention includes the following steps:

[0036] S10: Acquire cargo location information of multiple cargo locations in the stereoscopic warehouse, stacker information of multiple stackers, and multiple preset working modes of the stackers;

[0037] The preset working mode refers to the working mode of any stacker in any task process.

[0038] In actual applications, there are multiple shelves in the stereoscopic warehouse, and each shelf is provided with multiple cargo spaces. The size information and cargo space location of each cargo space are obtained. Furthermore, there are multiple parallel stackers in the stereoscopic warehouse, and each lane in the stereoscopic warehouse has a stacker to place and retrieve cargo spaces on the two shelves on its left and right sides. The number of multiple stackers, the average time for the stackers to place and retrieve cargo spaces, and the moving speed of the stackers are determined.

[0039] It should be noted that the scheduling problem of stackers in automated warehouses is essentially to arrange the sequence of stacker operation tasks in order to reduce the operation time and distance of the stacker, reduce costs, and improve operation efficiency, thereby maximizing storage benefits. This application pre-sets that the stacker can perform different working modes in different task processes, making the scheduling selection of the stacker more flexible.

[0040] Optionally, the multiple preset working modes of the stacker include: a single command working mode and a dual command working mode, wherein the single command working mode means that any stacker performs only one warehousing operation or one outbound operation in any task process, and the dual command working mode means that any stacker performs one warehousing operation and one outbound operation in any task process. For example, if the stacker 1 is in a single command working mode in the first task process and is an outbound task A, and in a single command working mode in the second task process and is an warehousing task B, then, in the process of executing the task, the stacker 1 first starts from the outbound station O, completes the outbound task at point A and returns to point O, then starts from point O to point B to complete the corresponding warehousing task, and finally returns to point O to wait for the next instruction task; if the stacker 1 is in a dual command working mode in the first task process and is an warehousing task C and an outbound task D, then when executing the task, the stacker 1 first picks up the goods from point O and sends them to point C to complete a warehousing operation, then goes from point C to point D to pick up the goods, and finally returns from point D to point O.

[0041] By means of the above method, the single command working mode and the double command working mode are set to improve the flexibility of stacker operation.

[0042] S20: Based on the cargo location information, the stacker information and the multiple preset task modes, a multi-objective optimization model is established with the running time of the stacker to perform the multiple tasks and the delay time of the stacker to perform at least one outbound task as the objectives;

[0043] Among them, the running time refers to the sum of the movement time and operation time spent by any stacker in executing all the tasks of the assigned multi-task process. By optimizing the running time, the operating efficiency of the system can be significantly improved. Furthermore, since the outbound task is to meet the customer's order requirements, it usually has a strict delivery time requirement. In order to improve customer satisfaction, it is necessary to consider the delay time of the stacker in performing the outbound task. By optimizing the delay time, it is ensured that the order can be delivered to the customer faster. In actual applications, when processing the same type and quantity of tasks, the stacker only uses a dual-command working mode to reduce the total running time of the stacker; and only using a single-command working mode will reduce the total delay time. Therefore, in order to balance the total movement time and the total delay time, this application proposes to use the total running time required for the stacker to complete the total task and the total delay time for the stacker to perform the outbound task as dual objectives, and construct a multi-objective optimization model.

[0044] Specifically, the multi-objective optimization model includes an objective function, constraints and decision variables, wherein the objective function represents the performance indicator to be optimized. The present application constructs an objective function with the goal of minimizing the total running time of the stacker to perform the task and minimizing the total delay between the stacker to perform the outbound task, specifically including:

[0045] First, define the variables: let the stacker be g, g={1,2,......,G}, G is the number of stackers; let the warehousing task be i, i={1,2,......,I}, I is the number of warehousing tasks; let the outbound task be j, j={1,2,......,J}, J is the number of outbound tasks; let the task process be a, a={1,2,......,A}, A is the number of task processes; let the shelf be k, k={1,2,......,K}, K is the number of shelves; let any shelf have M×N available storage locations, m is the horizontal coordinate of the available storage location, m=1,2,......,M, n is the vertical coordinate of the available storage location, n=1,2,......,N.

[0046] It is understandable that the stereoscopic warehouse contains multiple stackers, each stacker is located between two shelves, and is responsible for the picking and placing tasks of the shelves on both sides. The shelves controlled by the g-th stacker are numbered: 2g-1 and 2g.

[0047] In the task allocation process, the selection of the storage location for the storage task can be determined by the decision variable P ikmn Calculate. ikmnIndicates whether the storage location of the i-th storage task is (m, n) of the k-th shelf. For example, P 1311 =1, that is, the first warehousing task is assigned to the storage location in the 3rd row and 3rd column of the 3rd shelf.

[0048] Based on the cargo location information, stacker information and multiple preset working modes, an optimization model for the allocation of incoming cargo locations and the scheduling of stackers is established. Specifically, the optimization model for the allocation of incoming cargo locations and the scheduling of stackers includes:

[0049] The calculation formula for the horizontal coordinates of the storage location assigned to any storage task is:

[0050] ; (1)

[0051] Among them, the above x i is the horizontal coordinate of the storage location assigned to any shelf by the i-th storage task; m is the horizontal coordinate of the storage location in the shelf; P is ikmn A 0-1 variable that represents whether the storage location assigned to the i-th storage task is the (m, n) of the k-th shelf. If the storage location of the i-th storage task is the k-th shelf k (m, n), then P ikmn =1, otherwise P ikmn =0;

[0052] The calculation formula for the longitudinal coordinate of the storage location assigned to any storage task is:

[0053] ; (2)

[0054] Among them, the above y i is the longitudinal coordinate of the storage location assigned to any shelf by the i-th storage task; the above n is the longitudinal coordinate of the storage location in the shelf.

[0055] The total running time of the stacker to perform a task consists of the stacker's moving time and the operation time of picking up and placing goods. The running time of the stacker to perform a task needs to consider whether the task process is a single-command working mode or a dual-command working mode. Therefore, it is necessary to calculate the running time based on the task process of the stacker in different working modes. Specifically:

[0056] When any stacker is in single command working mode in any task process and performs warehousing task, the calculation formula of the stacker's movement time is:

[0057] ; (3)

[0058] Among them, the above T i,0 is the running time of the stacker in executing the i-th single command storage task; the above w is the side length of the cargo space; the above Vx is the horizontal running speed of the stacker; the above V y is the vertical running speed of the stacker; the above (x i ,y i ) is the cargo location coordinate of the i-th warehousing task; the above t0 is the average time for the stacker to pick up and put goods;

[0059] Optionally, the cargo spaces in the three-dimensional warehouse are all cubes.

[0060] When any stacker is in single command working mode in any task process and performs outbound task, the calculation formula of the stacker's running time is:

[0061] ; (4)

[0062] Among them, the above T 0,j is the running time of the stacker to execute the jth single command outbound task; the above (x j ,y j ) is the cargo location coordinates of the outbound cargo location of the jth outbound task;

[0063] When any stacker is in dual-command working mode in any task process, the calculation formula for the stacker's operating time is:

[0064] ; (5)

[0065] Among them, the above T i,j is the running time of the stacker when executing the dual-command working mode consisting of the i-th storage task and the j-th storage task;

[0066] After allocating the warehousing task to any available storage location on any shelf in the above manner, substitute it into formulas (3) to (5) to calculate the operation time of the stacker crane after the warehousing task is located at any available storage location on any shelf.

[0067] The calculation formula for the running time of any stacker in performing all tasks in any task process is:

[0068] ; (6)

[0069] Among them, the above is the running time of the g-th stacker to perform the a-th task process; is a 0-1 variable indicating that the a-th task process of the g-th stacker is a dual-command working mode composed of the i-th storage task and the j-th outbound task. If the a-th task process of the g-th stacker is a dual-command working mode composed of the i-th storage task and the j-th outbound task, the variable is 1, otherwise; is a 0-1 variable indicating whether the i-th inbound task and the j-th outbound task are combined into a dual-command working mode. If the i-th inbound task and the j-th outbound task are combined into a dual-command working mode, the variable is 1, otherwise it is 0; is the running time of the stacker to execute the i-th single command storage task; is a 0-1 variable indicating that the a-th task process of the g-th stacker is in single-command working mode and is a warehousing task. If the a-th task process of the g-th stacker is only the i-th single-command warehousing task, the variable is 1, otherwise it is 0; is the running time of the stacker to execute the jth single command outbound task; It is a 0-1 variable indicating that the a-th task process of the g-th stacker is in single-command working mode and is an outbound task. If the a-th task process of the g-th stacker is only the j-th single-command outbound task, the variable is 1, otherwise it is 0.

[0070] It should be noted that =0 and =0 respectively indicates that the i-th storage task and the j-th storage task are both tasks in the single command working mode that are not combined.

[0071] Furthermore, by summing up the running time of each task process of any stacker, the total running time of the stacker to perform task process A can be obtained. Therefore, the calculation formula for the total running time of any stacker to perform all task processes is:

[0072] ; (7)

[0073] Among them, the above TT g The total running time for the g-th stacker to execute the A-task process;

[0074] It is understandable that since multiple stackers in the high-bay warehouse run in parallel, when constructing the objective function with the goal of minimizing the total running time of the stackers, it is necessary to consider the minimization of the maximum value of the running time of each stacker. Therefore, with the goal of minimizing the maximum value of the total running time of multiple stackers executing all task processes, the first objective function is constructed as:

[0075] . (8)

[0076] Furthermore, when the stacker performs an outbound task, if the actual completion time exceeds the specified completion time of the outbound task, the delay of the stacker needs to be considered. When a group of tasks arrive at the same time, each time the stacker performs a task process that includes an outbound task, it is necessary to calculate the actual completion time and the specified completion time of the outbound task in the task process, and then determine whether the stacker is delayed. Specifically:

[0077] The calculation formula for the actual completion time of any stacker to perform any task process is:

[0078] ; (9)

[0079] Among them, the above is the actual completion time of the first a-step task process performed by the g-th stacker; is the running time of the g-th stacker in executing the a0-th task process; is a 0-1 variable indicating that the a-th task process of the g-th stacker is in single-command working mode and is a warehousing task. If the a-th task process of the g-th stacker is only the i-th single-command warehousing task, the variable is 1, otherwise it is 0;

[0080] It is understandable that when calculating the actual completion time of the g-th stacker executing the first a task processes, it is necessary to accumulate the actual completion time of the first task process to the actual completion time of the a-th task process in sequence.

[0081] The calculation formula for the specified completion time of any stacker to perform any task process is:

[0082] ; (10)

[0083] Among them, the above is the specified completion time for the g-th stacker to perform the first a task process; the above DL j is the specified completion time of the jth outbound task; is a 0-1 variable indicating that the a-th task process of the g-th stacker is a dual-command working mode composed of the i-th storage task and the j-th outbound task. If the a-th task process of the g-th stacker is a dual-command working mode composed of the i-th storage task and the j-th outbound task, the variable is 1, otherwise it is 0; the above is a 0-1 variable indicating that the a-th task process of the g-th stacker is in single-command working mode and is a warehouse-out task. If the a-th task process of the g-th stacker is only the j-th single-command warehouse-out task, the variable is 1, otherwise it is 0;

[0084] It is understandable that if the actual completion time of the stacker to perform the outbound task is less than the specified completion time, there is no need to consider its delay problem. In other words, the delay time needs to be calculated only when the actual completion time exceeds the specified completion time. Therefore, the calculation formula for the delay time of any stacker to perform any task process is:

[0085] ; (11)

[0086] Among them, the above TD g,a is the delay time for the g-th stacker to perform the a-th task process; is the actual completion time of the a-th task process performed by the g-th stacker; The specified completion time for the g-th stacker to perform the a-th task process.

[0087] Considering the parallel scheduling problem of stacker cranes, the second objective function is constructed with the goal of minimizing the total delay time of the outbound task of the stacker crane in performing all task processes:

[0088] . (12)

[0089] Furthermore, the multi-objective optimization model needs to meet the following constraints:

[0090] The first constraint is:

[0091] ;

[0092] Among them, the first constraint condition indicates that any task process of any stacker is in dual-command working mode or single-command working mode;

[0093] The second constraint is:

[0094] ;

[0095] The third constraint is:

[0096] ;

[0097] The second constraint and the third constraint indicate that the sum of the number of inbound tasks and outbound tasks is equal to the number of tasks to be assigned;

[0098] The fourth constraint is:

[0099] ;

[0100] The fifth constraint is:

[0101] ;

[0102] Among them, the fourth constraint and the fifth constraint indicate that each inbound task and each outbound task are assigned;

[0103] The sixth constraint is:

[0104] ;

[0105] Among them, the sixth constraint condition indicates that the storage locations allocated for the storage task are all available storage locations;

[0106] The seventh constraint is:

[0107] ;

[0108] Among them, the seventh constraint condition indicates that all warehousing tasks are processed and warehousing is completed.

[0109] Optionally, the multi-objective optimization model needs to make the following assumptions:

[0110] (1) The working mode of any stacker in any task process can be switched between single-command working mode and dual-command working mode, and each task process can only carry one working mode; (2) The task information of the outbound task includes the outbound storage location of the outbound task, that is, the outbound storage location of each outbound task is known; (3) In the task allocation process, the inbound storage location of the inbound task is selected from the idle storage location, where the idle storage location does not include the idle storage location after the outbound task is completed; (4) The idle storage location and the specified completion time of the outbound task are known; (5) The stacker can move in the vertical and horizontal directions at the same time, and the distance between the shelf locations is calculated using the Chebyshev distance.

[0111] Optionally, the multiple decision variables of the multi-objective optimization model are:

[0112] How to combine inbound tasks and outbound tasks; (2) How to assign multiple tasks to multiple stackers and determine the order in which each stacker executes the tasks; (3) Determine the inbound storage location for inbound tasks.

[0113] Through the above method, a multi-objective optimization model with the stacker's running time and delay time as dual objectives is constructed, aiming to optimize the stacker's task scheduling, provide guidance and suggestions, and give a reasonable task sequence while considering the running time and delay time.

[0114] S30: Acquire task information of multiple tasks to be assigned, cargo location status information of multiple cargo locations, and stacker status information of multiple stackers;

[0115] S40: Inputting the task information, the cargo position status information and the stacker status information into the multi-objective optimization model for solving, and obtaining the best task scheduling solution;

[0116] Among them, the optimal task scheduling plan includes the working mode of each task process corresponding to each stacker, the execution task, the execution order of multiple task processes, and the storage location of each warehousing task.

[0117] For steps S30-S40, after receiving multiple tasks to be assigned, the system obtains the task information of the multiple tasks to be assigned, including the number of tasks, the task type (warehouse-in or warehouse-out task), the warehouse-out cargo position of the warehouse-out task, etc., and simultaneously obtains the current status information of all cargo positions and all stackers in the stereoscopic warehouse, including the current status information of each cargo position (such as idle, occupied, damaged, maintained, etc.), the current status information of each stacker (such as idle, executing tasks, faulty, etc.), and the multiple cargo positions that each stacker is responsible for. Afterwards, the obtained task information, cargo position status information, and stacker status information are input into the constructed multi-objective optimization model for solution to obtain the optimal task scheduling solution.

[0118] Optionally, the NSGA-Ⅱ algorithm can be used to solve the optimal solution. The NSGA-Ⅱ (Non-dominated Sorting Genetic Algorithm II) algorithm is an improved version of the NSGA (non-dominated sorting genetic algorithm) and is used to solve complex, multi-objective optimization problems. Based on the NSGA algorithm, NSGA-Ⅱ improves the original non-dominated sorting algorithm, proposes a fast non-dominated sorting, speeds up the algorithm, adds an elite strategy to improve the phenomenon that some excellent individuals in the population are not inherited, and abandons the individual evaluation method in NSGA where individuals on the same level share fitness values ​​and then use microhabitat technology to distinguish them. Instead, the concept of crowding is used to compare the density around the individual, distinguish the sparse distribution of individuals, ensure individual diversity, and make the distribution of the solution set more uniform. In one embodiment of the present application, a specific solution for solving the optimal solution is provided. In S40, the task information, cargo position status information, and stacker status information are input into the multi-objective optimization model for solution to obtain the optimal task scheduling solution, which specifically includes the following steps S41-S49:

[0119] S41: Based on the preset solution quantity, task information, cargo location status information, stacker status information and multiple constraints, a random generation strategy is adopted to generate an initial candidate solution set;

[0120] The initial candidate solution set includes multiple candidate solutions, and each candidate solution represents a set of task allocation schemes.

[0121] Specifically, initialize the parameters: determine the population size (i.e., the number of preset solutions) N, obtain the list T of all tasks, and the list M of all stacker cranes. For each task, randomly select a stacker crane for assignment, ensuring that the number of tasks assigned to each stacker crane does not exceed its processing capacity. Randomly sort the tasks assigned to each stacker crane to generate the sequence of task processes, as well as the working mode (single-command working mode or double-command working mode) and the tasks to be executed (inbound tasks and / or outbound tasks) for each task process, and at the same time randomly select the inbound storage location for each inbound task. Ensure that the randomly generated solutions are feasible, that is, they satisfy all constraints. Repeat the above steps to generate N random task assignment schemes to form the initial population (i.e., the initial set of candidate solutions).

[0122] In practical application scenarios, the rationality of coding determines the optimization effect of the genetic algorithm and is the primary task in algorithm design. This application adopts a double-layer real-number coding based on task processes and storage location coordinates. As Figure 2 shown, it is a schematic diagram of chromosome coding. Assume that the tasks to be assigned include I inbound tasks and J outbound tasks. In the first part of the coding, scan the chromosome from left to right. The pair of numbers that appears for the i-th time is the stacker crane and task process for the i-th inbound task (1 < i < I); the pair of numbers that appears for the (I + j)-th time is the stacker crane and task process for the j-th outbound task (1 < j < J). Among them, the task process number in the figure represents the relative order of task process execution. If the order numbers of the inbound task and the outbound task are the same, it means that the stacker crane is in the double-command working mode for this task process. For example, the first inbound task is assigned to stacker crane 2 and assigned to task process 3. At the same time, the first outbound task is also assigned to stacker crane 2 and also assigned to task process 3. This indicates that stacker crane 2 is in the double-command working mode for task process 3, that is, stacker crane 2 needs to execute the first inbound task and the first outbound task in task process 3. Further, in the second part of the coding, scan the chromosome from left to right. The pair of numbers that appears for the i-th time is the inbound storage location coordinate for the i-th inbound task.

[0123] It should be noted that when the coordinate value of the inbound storage location is greater than the maximum length or width of the shelf, it means that the inbound storage location is greater than the right shelf of the two shelves corresponding to the task-executing stacker crane. The actual location is the coordinate value of the inbound task minus the maximum width or length of the shelf. Conversely, it means that it is located on the left shelf of the two shelves corresponding to the task-executing stacker crane.

[0124] Optionally, in the first part of the encoding, since each column of encoding represents the executing stacker and task process of each task, the encoding satisfies the second to fifth constraints. Since the task process number represents the relative order of execution of the task process, for a type of task (warehouse-in or warehouse-out task), any pair of stacker numbers and sequence numbers are not exactly the same, that is, the first constraint is satisfied. In the second part of the encoding, the x-coordinate and the y-coordinate are located on the same side of the shelf at the same time. This is a legal chromosome representing a feasible solution, which contains decision variables: the target position of the warehouse-in task (x i ,y i ), variable COM indicating whether to combine the inbound and outbound tasks into a dual-command working mode i,j , variables including stacker number task and task process .

[0125] Furthermore, according to the chromosome encoding method, the initial solution is generated in the scenario of confirming the cargo location of the outbound task, that is, confirming the stacker for executing the task. The NSGA-Ⅱ algorithm automatically generates the stackers and task procedures for the inbound task and the stackers and task procedures for the outbound task based on the total number of inbound and outbound tasks and the total number of stackers. At the same time, the NSGA-Ⅱ algorithm optimizes the method of automatically generating the inbound cargo location corresponding to the inbound task to a random selection method, randomly selecting the inbound cargo location from the idle cargo locations on the shelf, thereby reducing the number of infeasible solutions.

[0126] S42 performs fast non-dominated sorting on multiple candidate solutions in the initial candidate solution set to determine a Pareto optimal solution in the initial candidate solution set;

[0127] Among them, the Pareto optimal solution refers to a solution that cannot be simultaneously better than other solutions in all objectives.

[0128] In practical applications, there are situations in multi-objective problems where the objective values ​​of solutions conflict with each other and it is impossible to compare the advantages and disadvantages of the solutions. Therefore, the concept of "dominance" is introduced to evaluate solutions. In this minimization problem, for any objective value, if the value of solution A is not greater than solution B, and at least one of the objective values ​​of solution A is less than the objective value of solution B, then solution A is said to dominate solution B; if solution A is not dominated by other solutions, then solution A is called a non-dominated solution, that is, a Pareto solution. Figure 3 The figure shows a schematic diagram of fast non-dominated sorting. Fast non-dominated sorting sorts a large number of individuals that meet the conditions of domination and non-domination, and solves the Pareto solution and the frontier of each solution. Each frontier represents a Pareto level. All frontiers are sorted from low to high according to the level to obtain the optimal frontier (i.e., the Pareto optimal solution).

[0129] Specifically, the fast non-dominated sorting process of NSGA-II is as follows:

[0130] Let the population be P and its size be N;

[0131] For each individual pi∈P, two parameters are initialized:

[0132] Count how many individuals dominate pi, denoted as n(i), which represents the number of dominant individuals i in the population;

[0133] Record the set of individuals dominated by pi, denoted as S(i), which represents the set dominated by individual i.

[0134] Initialize F=1 (Pareto level starts from 1);

[0135] Initialize the current frontier F1 to be empty;

[0136] In population P, for each individual pi: if n(i)=0 (i.e. no individual dominates pi), then put pi into F1 (i.e. the solution set of Pareto level 1);

[0137] For the current frontier Fm (initially m=1), for each individual pi in Fm: for each individual pj∈S(j) dominated by pi: reduce n(j) of each individual j by 1. If n(j)=0 (i.e., no individual dominates pj now), store individual pj in F(m+1) (the next frontier);

[0138] Continue processing F(m+1) until all frontiers are confirmed.

[0139] Each frontier Fi represents a Pareto level. The individuals in Fi have the same Pareto level, that is, level i. All frontiers are sorted from low to high according to their levels. F1 is the optimal frontier (that is, the Pareto optimal solution), followed by F2, and so on.

[0140] S43: Calculate the crowding degree of the Pareto solution to obtain the crowding distance of each candidate solution in the Pareto solution;

[0141] In this step, the calculation of crowding distance is introduced to ensure population diversity. The crowding distance is the sum of the distance differences between an individual and its two adjacent individuals on each target. First, sort each target: for each objective function, sort the solutions on the Pareto optimal solution according to the target value. Then, calculate the crowding distance: for each solution, calculate its crowding distance in the target space, where the crowding distance is an indicator to measure the distribution of solutions in the target space. Specifically: initialize the crowding distance of each solution to 0, for each objective function, traverse the sorted solutions from the maximum value to the minimum value, and use the crowding distance calculation formula to calculate the crowding distance of each solution, where the crowding distance calculation formula commonly used in the field can be used for calculation, and is not specifically limited here. For example Figure 4The figure shows the crowding distance of Pareto solutions, where the crowding distance of candidate solution i is the perimeter of the dotted rectangle. A larger crowding distance means that the Pareto front solutions are more dispersed, which enables the algorithm to find more high-quality solutions and is conducive to the diversity of solutions. Therefore, when selecting candidate solutions, the candidate solutions with larger crowding distances have a greater probability of being selected.

[0142] S44: Based on the Pareto level and crowding distance of the Pareto solution, the first target candidate solution is determined by the tournament selection method;

[0143] In this step, the Pareto rank refers to the rank of the candidate solution in the Pareto front. The lower the Pareto rank, the better the candidate solution. In the selection process, the NSGA-II algorithm uses a binary tournament selection method. The binary tournament selection is a deterministic selection method that selects two candidate solutions for comparison in each tournament and then selects the one with higher fitness (or lower, depending on the problem type) as the winner. Specifically, when selecting the first target candidate solution, first sort it according to the Pareto rank, and the candidate solution with the lower rank is preferred. If multiple candidate solutions have the same Pareto rank, they are selected according to the crowding distance, and the candidate solution with the larger crowding distance is preferred.

[0144] Optionally, the number of first target candidate solutions generally depends on the size of the population, the design of the crossover operation and the mutation operation, so as to ensure that the generated new generation population has both diversity and convergence toward the Pareto front. For example, if the population size is N, the number of target candidate solutions can be set to N, which depends on the design of the crossover operation and the mutation operation, and this application does not make specific limitations here.

[0145] S45: performing a crossover operation and a mutation operation on the first target candidate solution set based on a preset crossover rule and a preset mutation point to obtain a second target candidate solution set;

[0146] In this step, the preset crossover rule is to cross the chromosomes by two-point crossover for the first part of the chromosomes, wherein the two-point crossover introduces two crossover points, divides the parent individual (candidate solution) into three segments, and exchanges the middle segments to generate new individuals. Specifically, the parent to be crossed is determined, the crossover position is determined according to the preset crossover rule, and the data at the two positions are crossed. In the above manner, the crossover operation is performed on two individuals in the first target candidate solution set in turn to introduce new combinations between the genes of the two individuals and increase the diversity of the population.

[0147] In actual application scenarios, such as Figure 5The figure shows a schematic diagram of chromosome crossing operation, in which the warehousing task simultaneously executes the stacker and the task process of the delivery task; since the outbound task determines the execution stacker, only the task process is exchanged and the execution stacker is retained to the offspring; the warehousing cargo location of the warehousing task is not crossed.

[0148] Furthermore, in order to prevent the algorithm from falling into a local optimum and increase the algorithm's solution space search capability, a multi-point mutation method is adopted. Specifically, multiple mutation points are pre-set, and mutation operations are performed on individuals based on multiple preset mutation points, randomly changing some genes of the individuals, introducing new features, and obtaining the second target candidate solution set.

[0149] Optionally, in order to better mutate the task execution stacker and the task execution process so as to regenerate the execution stacker number and the task execution process number within a feasible range, the present application pre-sets three preset mutation points in the execution stacker and the task execution process part of the warehousing task, and sets three preset mutation points in the task execution process part of the outbound task, which helps to introduce more effective gene combinations at these positions and improve the quality of the solution.

[0150] In actual application scenarios, such as Figure 6 As shown, it is a schematic diagram of chromosome mutation operation, in which three mutation points are set in the execution stacker and the execution task process part of the warehousing task respectively. Since the execution stacker of the outbound task is determined, only three mutation points are set in the execution task process part, and the incoming cargo position of the warehousing task does not mutate.

[0151] S47: Modify the second target candidate solution set to obtain a modified third target candidate solution set;

[0152] In this step, after the crossover mutation operation is performed on the chromosome, illegal situations may occur in the offspring chromosome. In order to ensure that the candidate solution after the crossover mutation satisfies all constraints, it is necessary to perform a repair operation on the chromosome after the crossover mutation.

[0153] In one embodiment of the present application, a specific optimal solution is provided. In S47, the second target candidate solution set is corrected to obtain a corrected third target candidate solution set, which specifically includes the following steps S471-S472:

[0154] S471: Determine whether there is a duplicate solution in the second target candidate solution set, wherein a duplicate solution is a stacker number between any two sets of solutions and a task process number of the same task type that is duplicated;

[0155] S472: When there are duplicate solutions in the second target candidate solution set, the stacker number and the task process number in any set of duplicate solutions are modified, and the storage location corresponding to the storage task is reallocated to obtain a third target candidate solution set.

[0156] For steps S471-S473, for the same type of tasks (warehouse-in or warehouse-out tasks), it is necessary to satisfy that any pair of stacker numbers and task process numbers are not exactly the same. Therefore, the chromosome numbers in the second target candidate solution set are detected to determine whether there are repeated value pairs in the chromosome segments of the same type of tasks (i.e., executing stacker g and executing task process a). After confirming that any two pairs of value pairs under the same task type in the second target candidate solution set are repeated, the chromosomes are repaired until there are no duplications in the chromosome segments.

[0157] Specifically, the repair rule formula is:

[0158] ;

[0159] Among them, the above g n Indicates the number of the repaired stacker; the above a n Indicates the task process number after repair; the above g r Indicates a repeated stacker number; the above a r Indicates the repeated task process number; in g r =1,a r = 1, (G, A) is used as the repaired stacker number and task process number; in g r =1,a r ≠1, take G as the repaired stacker number, and get the repaired task process number by repeatedly subtracting 1 from the task process number; r ≠1, a r = 1, the repaired stacker number is obtained by repeatedly subtracting 1 from the stacker number, and A is used as the repaired task process number; in g r ≠1, a r When ≠1, the stacker number after repair is obtained by repeatedly subtracting 1 from the stacker number, and the task process number after repair is obtained by repeatedly subtracting 1 from the task process number.

[0160] Furthermore, in the related art, the multi-objective genetic algorithm also uses crossover and mutation operations on the storage location positions assigned to the storage tasks, which may result in an infeasible solution or a feasible solution but the storage location position is unavailable. In order to ensure the feasibility of the solution after crossover and mutation, the present application proposes not to perform crossover and mutation operations on the assigned storage location positions, but to generate new storage location positions for the storage tasks after determining that the execution stacker and task process of each task are legal. By improving the multi-objective genetic algorithm, the crossover and mutation of the storage location positions are optimized to reselect from the available locations, thereby improving the rationality of the storage location allocation.

[0161] Optionally, in the process of generating the storage location of a new storage task, the probability of each storage location being selected is related to the distance from the storage location to the I / O point. The closer the distance, the greater the probability of being selected. For any optional storage location, its distance is calculated through its position coordinates, and then the weight value is obtained by the inverse of the distance. Finally, the probability of each storage location being selected is obtained by dividing the weight of the storage location by the total weight. The calculation formula is:

[0162] ;

[0163] Among them, the above weight p is the weight of the optional storage location; the above (x n ,y n ) are the location coordinates of the optional storage location;

[0164] ;

[0165] Among them, the above PR p is the probability of the optional storage location; It is the total weight of multiple optional storage locations.

[0166] In actual application scenarios, such as Figure 7 As shown, this is a schematic diagram of the chromosome correction operation, in which there are repeated number pairs in the outbound task in the illegal solution, that is, the execution stacker number is 3, and the execution task process number is 4. At this time, it is necessary to modify the value of the first group of the two groups of repeated number pairs to a relatively small value of the task number, that is, to correct the value of the first number pair to the execution stacker number of 2 and the execution task process number of 3, so as to obtain the corrected legal solution.

[0167] Through the above method, an efficient solution is achieved through the improved NSGA-Ⅱ algorithm to reduce the number of infeasible solutions, thereby finding a satisfactory solution faster, reducing the solution repair time, and improving the convergence effect of the algorithm.

[0168] In the actual application scenario, the scenario where the height and width ratio of the shelf in the stereoscopic warehouse is 5×5, 5×6, and 5×7 is taken as an example, the lateral movement speed V x =1, stacker longitudinal movement speed V y =1, the length of the cargo space w=0.8, the time t0=5 for the stacker to store and take goods, the number of initial generated solutions is 15, the number of iterations is 200, and the delay time of the task is calculated by the formula:

[0169] The calculation formula is:

[0170] ;

[0171] Among them, the above T is the average delay factor, the above R is the relative range of the deadline, T and R are 0.4 and 0.8, and the above P is the average total stacker running time in the current scenario. When evaluating the multi-objective optimization algorithm, the inverted generational distance (IGD) and hypervolume (HV) are selected to evaluate the convergence of the algorithm and the diversity of solutions. Specifically, the inverted generational distance is used to evaluate the closeness and distribution uniformity between the solution set generated by the optimization algorithm and the ideal solution set (ie, the Pareto frontier). By selecting a series of reference points from the ideal solution set, and then calculating the average distance from these reference points to the nearest solution in the solution set. The smaller this indicator is, the closer the solution set generated by the optimization algorithm is to the ideal solution set, and the more uniform the distribution is. Such as Figure 8 As shown in the figure, it is a schematic diagram of the reverse generation distance between the generated solution set and the ideal solution set. The reverse generation distance calculates the minimum sum of the distances between each point in the Pareto optimal solution set and the points in the solution set obtained by the algorithm. Further, as Fig. 9 As shown in the figure, it is a schematic diagram of the hypervolume of the generated solution set covering the ideal solution set. The hypervolume is used to measure the volume of a generated solution set covering the ideal solution set (i.e., the Pareto frontier). The larger the hypervolume, the higher the quality of the solution set and the wider the Pareto frontier area covered. The hypervolume selects a reference point and measures the spatial volume formed by the reference point and the solution set obtained by the algorithm. The Pareto optimal solution set is calculated as follows: the algorithm is set to iterate 1000 times, and 3 experiments are conducted, and the results are quickly non-dominated sorted. Fig.10As shown in the figure, it is a schematic diagram of the experimental results based on different multi-objective genetic algorithms. Specifically, the experiment was carried out 5 times in each scenario, and the best result was selected as the experimental result. The improved multi-objective genetic algorithm (Improved-NSGA-Ⅱ) was compared with the unimproved multi-objective genetic algorithm (Basic-NSGA-II). Under the same number of iterations, the inversion generation distance and hypervolume indicators were better, indicating that the algorithm convergence was better and the diversity and quality of the solution were higher. Since the time complexity of repairing the solution in the unimproved multi-objective genetic algorithm was too large, the illegal solution was directly deleted, so the running time of the algorithm was slightly reduced. The improved multi-objective genetic algorithm was compared with the multi-objective particle swarm algorithm (NSPSO). Under the same number of iterations, the improved multi-objective genetic algorithm had a faster running time and better solution quality. In summary, the improved multi-objective genetic algorithm is feasible and has good calculation effect. The calculated Pareto optimal solution is more in line with the actual needs of enterprises than the existing solution.

[0172] S48: merging the third target candidate solution set with the initial candidate solution set to obtain a fourth target candidate solution set;

[0173] S49: Perform fast non-dominated sorting and crowding distance calculation on the fourth target candidate solution set, select multiple target individuals from the fourth target candidate solution set to enter the next generation candidate solution set based on a preset number, update the number of iterations until the algorithm termination condition is met, and output the optimal solution set.

[0174] For steps S48-S49, in order to prevent the loss of excellent individuals (i.e., individuals with good fitness values), the multi-objective genetic algorithm adopts an elite strategy to directly retain the best performing individuals in the current population to the next generation, ensuring that these excellent individuals will not be lost due to crossover and mutation operations. Specifically, the parent population (i.e., the initial candidate solution set) and the child population (i.e., the third target candidate solution set) are merged to obtain a temporary population with a population size of 2N (i.e., the fourth target candidate solution set) to retain individuals with better Pareto levels and larger crowding distances as new parents. Subsequently, the temporary population is subjected to fast non-dominated sorting and crowding distance calculation, and the first N excellent individuals are selected from the temporary population to enter the next generation population, and the number of iterations is updated until the algorithm termination condition is met, and the Pareto solution set (i.e., the optimal solution set) is output.

[0175] In actual application scenarios, such as Fig.11 As shown in FIG. 1 , it is a flow chart of solving the optimal solution based on the improved multi-objective optimization algorithm. Specifically, the algorithm flow is as follows:

[0176] (1) Initialize the population: randomly generate a population consisting of multiple individuals, each of which represents a set of solutions;

[0177] (2) Fast non-dominated sorting: fast non-dominated sorting of individuals in the population and output of the Pareto frontier;

[0178] (3) Calculate crowding distance: To ensure the diversity of the Pareto front, calculate the crowding distance and measure the density of individuals in space;

[0179] (4) Selection, crossover, and mutation: select individuals based on their Pareto rank and crowding degree, and perform multi-point crossover and multi-point mutation on the task execution stacker and task process parts in the chromosome;

[0180] (5) Repair the solution and generate a new storage location for the storage task: Repair the illegal solution generated in step (4), and update the storage location in a probabilistic manner according to the execution stacker of the storage task;

[0181] (6) Merge the parent generation and offspring and perform fast non-dominated sorting: Merge the offspring generated in step (4) and step (5) with the parent generation, and perform fast non-dominated sorting to determine the Pareto rank of each individual;

[0182] (7) Calculate the new crowding distance: Calculate the new crowding distance for the individuals in the merged population;

[0183] (8) Elite strategy for selecting new parents: individuals with higher Pareto levels and larger crowding distances are retained as new parents;

[0184] (9) If the number of generations Gen is less than the maximum number of iterations MaxGen, return to step (2); otherwise, terminate the algorithm.

[0185] It can be seen that in the above scheme, by considering the selection of incoming cargo locations and the operation path planning of stacker cranes in the stereoscopic warehouse, the allocation of incoming cargo locations and the scheduling of stacker crane operations are taken as decision variables, and a multi-objective optimization model is constructed with the total operating time and total delay time of the stacker crane as dual objectives. The optimal task scheduling scheme is obtained through the NSGA-Ⅱ algorithm, and the three decision-making processes of the combination of in-and-out tasks, stacker crane scheduling, and allocation of incoming cargo locations are described in the form of a mathematical model. The conflicts between different optimization objectives are effectively handled, the Pareto frontier solution set is obtained, and high-quality solutions are found to meet the multi-objective needs of the enterprise.

[0186] In one embodiment, a three-dimensional warehouse task scheduling device is provided, and the three-dimensional warehouse task scheduling device corresponds to the three-dimensional warehouse task scheduling method in the above embodiment. Fig.12 As shown, the stereoscopic warehouse task scheduling device includes: a first acquisition module 101, a construction module 102, a second acquisition module 103 and a calculation module 104. The detailed description of each functional module is as follows:

[0187] The first acquisition module 101 is used to acquire the cargo location information of multiple cargo locations in the stereoscopic warehouse, the stacker information of multiple stackers, and multiple preset working modes of the stackers, wherein the preset working mode refers to the working mode of any stacker in any task process;

[0188] A construction module 102 is used to establish a multi-objective optimization model with the running time of the stacker performing multiple tasks and the delay time of the stacker performing at least one outbound task as objectives based on the cargo location information, the stacker information and a plurality of preset working modes;

[0189] The second acquisition module 103 is used to acquire task information of multiple tasks to be assigned, storage location status information of multiple storage locations, and stacker status information of multiple stackers;

[0190] The calculation module 104 is used to input the task information, the cargo location status information and the stacker status information into the multi-objective optimization model for solving, so as to obtain the best task scheduling plan, wherein the best task scheduling plan includes the working mode of each task process corresponding to each stacker, the execution task, the execution order of multiple task processes and the storage location of each storage task.

[0191] The present invention provides a task scheduling device for a stereoscopic warehouse. By considering the selection of incoming cargo locations and the operation path planning of stackers in the stereoscopic warehouse, the allocation of incoming cargo locations and the operation scheduling of stackers are taken as decision variables, and a multi-objective optimization model is constructed with the total operating time and the total delay time of the stackers as dual objectives. The multi-objective optimization model is solved to obtain the optimal task scheduling scheme, and the three decision-making processes of the combination of in-and-out tasks, the scheduling of stackers, and the allocation of incoming cargo locations are described in the form of a mathematical model. The conflicts between different optimization objectives are effectively handled, the Pareto front solution set is obtained, and a high-quality solution is found to meet the multi-objective needs of the enterprise.

[0192] The specific definition of the stereoscopic warehouse task scheduling device can be found in the definition of the stereoscopic warehouse task scheduling method above, which will not be repeated here. Each module in the above-mentioned stereoscopic warehouse task scheduling device can be implemented in whole or in part by software, hardware and a combination thereof. The above-mentioned modules can be embedded in or independent of the processor in the computer device in the form of hardware, or can be stored in the memory of the computer device in the form of software, so that the processor can call and execute the operations corresponding to the above modules.

[0193] In one embodiment, a computer device is provided, including a memory, a processor, and a computer program stored in the memory and executable on the processor. When the processor executes the computer program, the above-mentioned steps of high-bay warehouse task scheduling are implemented.

[0194] In one embodiment, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, the above-mentioned steps of scheduling tasks in a high-bay warehouse are implemented.

[0195] It should be noted that the above functions or steps that can be implemented by the computer-readable storage medium or computer device can refer to the relevant descriptions on the server side and the client side in the aforementioned method embodiment. To avoid repetition, they will not be described one by one here.

[0196] Through the description of the above implementation methods, those skilled in the art can clearly understand that the present application can be implemented by hardware, or by means of software plus a necessary general hardware platform. Based on such an understanding, the technical solution of the present application can be embodied in the form of a software product, which can be stored in a non-volatile readable storage medium (which can be a CD-ROM, a USB flash drive, a mobile hard disk, etc.), including a number of instructions for enabling an electronic device (which can be a personal computer, a server, or a network device, etc.) to execute the methods described in each implementation scenario of the present application.

[0197] Those skilled in the art can clearly understand that for the convenience and simplicity of description, only the division of the above-mentioned functional units and modules is used as an example. In actual applications, the above-mentioned functions can be distributed and completed by different functional units and modules as needed, that is, the internal structure of the device can be divided into different functional units or modules to complete all or part of the functions described above.

[0198] The embodiments described above are only used to illustrate the technical solutions of the present invention, rather than to limit the same. Although the present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that the technical solutions described in the aforementioned embodiments may still be modified, or some of the technical features may be replaced by equivalents. Such modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present invention, and should all be included in the protection scope of the present invention.

Claims

1. A method for scheduling tasks in a three-dimensional warehouse, characterized in that: include: Obtaining cargo location information of multiple cargo locations in a stereoscopic warehouse, stacker information of multiple stackers, and multiple preset working modes of the stackers, wherein the preset working mode refers to the working mode of any stacker in any task process; Based on the cargo location information, the stacker information and the multiple preset working modes, a multi-objective optimization model is established with the running time of the stacker performing multiple tasks and the delay time of the stacker performing at least one outbound task as objectives; Acquire task information of a plurality of tasks to be assigned, cargo location status information of the plurality of cargo locations, and stacker status information of the plurality of stackers; The task information, the cargo position status information and the stacker status information are input into the multi-objective optimization model for solving to obtain an optimal task scheduling solution, wherein the optimal task scheduling solution includes the working mode of each task process corresponding to each stacker, the execution task, the execution order of multiple task processes and the storage cargo position of each storage task; The step of inputting the task information, the cargo position status information and the stacker status information into the multi-objective optimization model for solving to obtain the best task scheduling solution specifically includes: Based on the preset number of solutions, the task information, the cargo position status information, the stacker status information and multiple constraints, a random generation strategy is adopted to generate an initial candidate solution set, wherein the initial candidate solution set includes multiple candidate solutions, each candidate solution represents a set of task allocation schemes; Performing fast non-dominated sorting on multiple candidate solutions in the initial candidate solution set to determine a Pareto solution in the initial candidate solution set, wherein the Pareto solution refers to a solution that cannot be simultaneously superior to other solutions in all objectives; Calculating the crowding distance of the Pareto solution to obtain the crowding distance of each candidate solution in the Pareto solution; Based on the Pareto levels and crowding distances of the Pareto solutions, determining a first target candidate solution set by a tournament selection method; Based on a preset crossover rule and a preset mutation point, performing a crossover operation and a mutation operation on the first target candidate solution set to obtain a second target candidate solution set; Modifying the second target candidate solution set to obtain a modified third target candidate solution set; Merging the third target candidate solution set with the initial candidate solution set to obtain a fourth target candidate solution set; The fourth target candidate solution set is subjected to fast non-dominated sorting and crowding distance calculation. Based on a preset number, multiple target individuals are selected from the fourth target candidate solution set to enter the next generation candidate solution set. The number of iterations is updated until the algorithm termination condition is met, and the optimal solution set is output as the optimal task scheduling solution.

2. The method according to claim 1, characterized in that The multiple preset working modes of the stacker include: a single-command working mode and a dual-command working mode, wherein the single-command working mode means that any stacker only performs one warehousing operation or one out-of-warehouse operation in any task process, and the dual-command working mode means that any stacker performs one warehousing operation and one out-of-warehouse operation in any task process.

3. The method according to claim 2, characterized in that The multi-objective optimization model includes an objective function. The step of establishing the multi-objective optimization model with the running time of the stacker performing multiple tasks and the delay time of the stacker performing at least one outbound task as objectives based on the cargo location information, the stacker information and the multiple preset working modes specifically includes: Based on the cargo location information, the stacker information and the multiple preset working modes, establishing a storage cargo location allocation and stacker scheduling optimization model; Based on the warehouse cargo location allocation and stacker crane scheduling optimization model, a first objective function is established with the goal of minimizing the maximum total operating time of multiple stackers performing all task processes, and a second objective function is established with the goal of minimizing the total delay time of the outbound task of the stacker performing all task processes.

4. The method according to claim 3, characterized in that The optimization model of warehouse storage allocation and stacker crane scheduling includes: Calculate the horizontal and vertical coordinates of the storage location assigned to any storage task; Calculate the running time of any stacker when it is in single command working mode and performs warehousing task in any task process; Calculate the running time of any stacker when it is in single command working mode in any task process and performs outbound task; Calculate the running time of any stacker when it is in dual-command working mode in any task process; Calculate the running time of any stacker in executing all tasks in any task process; Calculate the total running time of any stacker to perform all task processes; Calculate the required completion time for any stacker to perform any task process; Calculate the delay time for any stacker to perform any task process.

5. The method according to claim 4, characterized in that The multiple constraints of the multi-objective optimization model include: Any task process of any stacker crane must be in dual-command working mode or single-command working mode; The sum of the number of inbound tasks and outbound tasks must be equal to the number of tasks to be assigned; Every inbound task and every outbound task is assigned; Each warehousing task is processed and warehousing is completed.

6. The method according to claim 1, characterized in that The step of correcting the second target candidate solution set to obtain a corrected third target candidate solution set specifically includes: Determine whether there is a duplicate solution in the second target candidate solution set, wherein the duplicate solution is a stacker number and a task process number of the same task type repeated between any two sets of solutions; When there are duplicate solutions in the second target candidate solution set, the stacker number and task process number in any set of duplicate solutions are modified, and the storage cargo location corresponding to the storage task is reallocated to obtain the third target candidate solution set.

7. A device for implementing the stereoscopic warehouse task scheduling method of claim 1, characterized in that: include: A first acquisition module is used to acquire the cargo location information of multiple cargo locations in the stereoscopic warehouse, the stacker information of multiple stackers, and multiple preset working modes of the stackers, wherein the preset working mode refers to the working mode of any stacker in any task process; A construction module, for establishing a multi-objective optimization model with the running time of the stacker performing multiple tasks and the delay time of the stacker performing at least one outbound task as objectives based on the cargo location information, the stacker information and the multiple preset working modes; A second acquisition module is used to acquire task information of a plurality of tasks to be assigned, storage location status information of the plurality of storage locations, and stacker status information of the plurality of stackers; A calculation module is used to input the task information, the cargo location status information and the stacker status information into the multi-objective optimization model for solving to obtain an optimal task scheduling plan, wherein the optimal task scheduling plan includes the working mode of each task process corresponding to each stacker, the execution task, the execution order of multiple task processes and the storage location of each storage task.

8. A computer device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that: When the processor executes the computer program, the steps of the method for scheduling tasks in a high-bay warehouse as claimed in any one of claims 1 to 6 are implemented.

9. A computer-readable storage medium storing a computer program, characterized in that: When the computer program is executed by a processor, the steps of the method for scheduling tasks in a high-bay warehouse as claimed in any one of claims 1 to 6 are implemented.

Citation Information

Patent Citations

  • Warehouse stacker task scheduling method based on simulated annealing algorithm

    CN117829504A