A multi-load type stacker scheduling method based on a hybrid genetic co-evolution algorithm
Patent Information
- Application Number
- CN202311600118.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-11-28
- Publication Date
- 2026-10-27
- Estimated Expiration
- 2043-11-28
AI Technical Summary
[0004]针对现有技术的以上缺陷或改进需求,本发明提供了一种基于混合遗传协同进化算法的多载式堆垛机调度方法,解决了现有立体仓库中的堆垛机完成订单池里的存储和检索请求时效率较低的问题,充分利用了多载式堆垛机执行双指令循环时多载量的优势,降低完成存储检索清单的时间和能量消耗,提升立体仓库的调度效率和工作效果
[0048]1.将多载式堆垛机工作周期内的路径规划问题和存储请求选择问题集成在一起解决,以堆垛机完成当前所有货物请求的能量消耗与完成存储请求时在不同存储位置间产生的潜在能量消耗之和得到的预估能量消耗最小化为目标构建目标函数,建立了新的目标函数,有利于降低完成存储检索清单的时间和能量消耗,提升立体仓库的调度效率和工作效果,且覆盖范围更广,可以对立体仓库运行过程进行更长期的优化;
Smart Images

Figure CN117494920B_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the technical field of automated warehouse scheduling, and more specifically, relates to a multi-load stacker crane scheduling method based on a hybrid genetic co-evolutionary algorithm. Background Technology
[0002] Since their introduction in the 1950s, automated storage and retrieval systems (AS / RS) have been used to provide better operational planning, such as distribution centers, warehouses, and cross-docking storage and retrieval activities, and have now become one of the most important tools in the modern logistics industry. The demand for efficient order storage and retrieval continues to grow, placing increasingly higher demands on the scheduling of automated storage and retrieval systems and multi-load stacker cranes.
[0003] Currently, most automated warehouses (AS / RS) use a First Come First Serve (FCFS) approach, processing storage and retrieval requests from the existing order pool one after another. This method does not consider the optimization of stacker crane paths or the dynamic selection of storage locations for goods, resulting in low efficiency. Especially during peak inbound and outbound periods with a high volume of orders, inefficient stacker crane storage and retrieval paths and storage location arrangements can easily lead to delays in subsequent orders. Therefore, AS / RS urgently need a scientific and rational scheduling method to effectively manage multi-load stacker cranes. Summary of the Invention
[0004] To address the aforementioned deficiencies or improvement needs of existing technologies, this invention provides a multi-load stacker crane scheduling method based on a hybrid genetic co-evolutionary algorithm. This method solves the problem of low efficiency of stacker cranes in existing automated warehouses when completing storage and retrieval requests in the order pool. It fully utilizes the advantage of multi-load stacker cranes with multiple loads when executing dual-instruction cycles, reducing the time and energy consumption for completing the storage and retrieval list, and improving the scheduling efficiency and work effectiveness of the automated warehouse.
[0005] To achieve the above objectives, according to the present invention, a multi-load stacker crane scheduling method based on a hybrid genetic co-evolutionary algorithm is provided, comprising:
[0006] S1, determine the number of stored requests and retrieval requests in the order pool of the stacker crane, the maximum rated load of the stacker crane, and the initial empty space information on the rack, wherein the initial empty space information includes the number and location of empty spaces;
[0007] S2, construct a global objective function for the scheduling scheme with the goal of minimizing the estimated energy consumption obtained by summing the energy consumption of the stacker crane in completing all orders in the order pool and the potential energy consumption generated between different storage locations when completing storage requests;
[0008] S3, The global objective function is optimized and solved based on a hybrid genetic co-evolutionary algorithm to obtain the optimal scheduling scheme, specifically including:
[0009] S31, Initialize the global population: Randomly allocate the storage request and the retrieval request to multiple work cycles of the stacker machine to form a global population composed of multiple feasible solution individuals, each of the feasible solution individuals including the movement route of the stacker machine in the multiple work cycles respectively;
[0010] S32, the multiple feasible solutions in the global population are decomposed into multiple subpopulations according to the number of working cycles, and each subpopulation includes multiple movement routes corresponding to one working cycle;
[0011] S33, optimize the multiple movement routes in each of the subpopulations;
[0012] S34, merge the optimized subpopulations and use a global objective function to evaluate the individual feasible solutions;
[0013] S35, determine whether the termination requirement is met. If so, output the optimal feasible solution as the optimal scheduling scheme; otherwise, return to S32.
[0014] According to the multi-load stacker crane scheduling method based on a hybrid genetic co-evolutionary algorithm provided by the present invention, the potential energy consumption generated by the stacker crane between different storage locations when completing a storage request in S2 is calculated based on the weight of the goods corresponding to the storage request and the throughput frequency; specifically, the global objective function is:
[0015]
[0016]
[0017]
[0018] Where, f1 is the energy consumption calculation formula for the stacker crane to complete all current orders; f2 is the potential energy consumption generated by the stacker crane between different storage locations when completing a storage request; T is the number of times the stacker crane returns to the I / O port to exchange goods, that is, the number of stacker crane work cycles; j max dX represents the number of times the stacker crane moves within a single work cycle; F is the energy consumption calculation formula; i,j dZ i,j Q i,j x represents the relative horizontal and vertical displacements of the stacker crane during the j-th movement in the i-th work cycle, and the load on the stacker crane during that movement; i,j z i,j q i,jThese represent the column coordinates, row coordinates, and cargo mass of the target rack during the j-th movement of the stacker crane in the i-th work cycle. and This is a 0-1 variable; if the stacker crane completes a storage request (S request) in the j-th move of the i-th task, then... otherwise If the stacker crane completes a retrieval storage request (RS request) in the j-th move of the i-th task, then otherwise χ i,j This refers to the frequency of the same type of goods entering and leaving the warehouse over a recent period, based on historical data.
[0019] According to the multi-load stacker crane scheduling method based on hybrid genetic co-evolutionary algorithm provided by the present invention, in S33, the subpopulation objective function is used to evaluate and optimize each movement route. The subpopulation objective function is:
[0020]
[0021]
[0022]
[0023] Where f1 is the energy consumption calculation formula for the stacker crane to complete all orders in the current work cycle; f2 is the potential energy consumption generated by the stacker crane between different storage locations when completing a storage request; j max dX represents the number of times the stacker crane moves within a single work cycle; F is the energy consumption calculation formula; j dZ j Q j x represents the relative horizontal and vertical displacements of the stacker crane during the j-th movement, and the load on the stacker crane during that movement; j z j q j These represent the column coordinates, row coordinates, and cargo mass of the target shelf during the j-th movement of the stacker crane; and This is a 0-1 variable; if the stacker crane completes a storage request (S request) in the j-th move of the current work cycle, then... otherwise If the stacker crane completes a retrieval storage request (RS request) in the j-th move of the current work cycle, then otherwise χ j This refers to the frequency of the same type of goods entering and leaving the warehouse over a recent period, based on historical data.
[0024] According to the multi-load stacker crane scheduling method based on hybrid genetic co-evolutionary algorithm provided by the present invention, in S31, the cargo load of the feasible solution individual in any work cycle during the stacker crane's pick-up and delivery process must satisfy the following load constraints:
[0025]
[0026]
[0027]
[0028] Where, m i,j M represents the cargo load capacity of the stacker crane during the j-th movement in the i-th work cycle; M is the maximum rated load capacity of the stacker crane; j max This represents the number of times the stacker crane moves within a single work cycle. and This is a 0-1 variable; if the stacker crane completes a storage request (S request) in the j-th move of the i-th work cycle, then... otherwise If the stacker crane completes a retrieval request (R request) in the j-th move of the i-th work cycle, then otherwise If the j-th movement of the stacker crane in the i-th work cycle is effective, then otherwise
[0029] According to the multi-load stacker scheduling method based on hybrid genetic co-evolutionary algorithm provided by the present invention, the feasible solution individuals in S31 adopt a multi-layer coding method, wherein the first layer coding is a random sorting of all the storage requests; the 2-T+1 layer coding is an adaptive length coding, corresponding to the movement route in the stacker machine in T working cycles, the 2-T+1 layer coding is a random combination of the empty slot number on the shelf and the sequence number of the retrieval request, and the position of the last retrieval request is the maximum length position of the coding, and the excess part is invalid coding.
[0030] According to the multi-load stacker scheduling method based on hybrid genetic co-evolutionary algorithm provided by the present invention, any movement of the stacker is one of storage request (S request), retrieval request (R request), and retrieval-storage request (RS request);
[0031] The encoding of the feasible solution at layer 2-T+1 is adjusted in the following way to make the movement route conform to the load constraint:
[0032] Adjust the encoding so that the first encoding is an empty sequence number;
[0033] The empty slot numbers that appear after the number of empty slot numbers in the code reaches the maximum rated load of the stacker crane are moved to the end of the code;
[0034] The number and location of retrieval and storage operations are determined during the movement route by decoding the encoding.
[0035] According to the multi-load stacker scheduling method based on a hybrid genetic co-evolutionary algorithm provided by the present invention, the vacancy index in the encoding of the feasible solution individual at layer 2-T+1 corresponds to the E request, and the index of the retrieval request corresponds to the R request. The number and location of retrieval and storage operations are determined in the movement route by decoding the encoding, specifically including:
[0036] First, delete the invalid encoding parts;
[0037] Then, starting from the left side of the code, search for the first E request to the right. After finding it, search for the first matching R request to its right. The condition for the two to match is that the next request after the R request is no longer an R request.
[0038] Remove the matched E and R requests from the encoding;
[0039] Starting from the original E request position, continue searching for the next E request to the right, repeating this process until all E requests have been deleted. The sequence number of the remaining retrieval request is the RS request.
[0040] According to the multi-load stacker crane scheduling method based on hybrid genetic co-evolutionary algorithm provided by the present invention, in S3, the coordinates of the cargo location corresponding to the empty space number are updated after each movement of each moving route.
[0041] According to the multi-load stacker scheduling method based on hybrid genetic co-evolutionary algorithm provided by the present invention, the number of storage requests and the number of retrieval requests in S1 are N respectively.
[0042] According to the multi-load stacker crane scheduling method based on hybrid genetic co-evolutionary algorithm provided by the present invention, the stacker crane's pick-up and delivery process within the movement route of the feasible solution individual in any work cycle in S31 must also satisfy the following positional constraints:
[0043]
[0044] 1≤x i,j ≤L x
[0045] 1≤z i,j ≤L z ;
[0046] Where, x i,j z i,jThese represent the column coordinates and row coordinates of the target rack during the j-th movement of the stacker crane in the i-th work cycle, respectively; j max L represents the number of times the stacker crane moves within a single work cycle. x L z These represent the depth and width of the aisles in the automated warehouse, respectively.
[0047] In summary, compared with the prior art, the multi-load stacker crane scheduling method based on the hybrid genetic co-evolutionary algorithm provided by this invention offers the following advantages:
[0048] 1. The path planning problem and storage request selection problem within the working cycle of a multi-load stacker crane are integrated into a single solution. The objective function is constructed with the goal of minimizing the estimated energy consumption obtained by summing the energy consumption of the stacker crane in completing all current cargo requests and the potential energy consumption generated between different storage locations when completing storage requests. This new objective function helps to reduce the time and energy consumption for completing the storage retrieval list, improves the scheduling efficiency and work effect of the automated warehouse, and has a wider coverage, allowing for longer-term optimization of the automated warehouse operation process.
[0049] 2. By embedding a hybrid genetic algorithm into a co-evolutionary framework to enhance search performance, evolutionary operations are used to optimize subpopulation encoding during the subpopulation optimization stage, and selection, mutation, and local search operations are performed on feasible solutions during the global optimization stage to optimize all individuals, thereby improving search efficiency and accelerating the convergence speed of the algorithm.
[0050] 3. A multi-layer adaptive length coding method is proposed, which can completely realize the mapping from the solution space to the problem space. The adaptability of the coding length can effectively solve the coding difficulties caused by the different number of cargo points in the working cycle.
[0051] 4. The concept of shared storage locations has been further utilized, and the Retrieval Storage Operation (RS operation) has been made an optional option within a work cycle of the stacker crane, making scheduling more flexible. Attached Figure Description
[0052] Figure 1 This is a schematic diagram of an automated warehouse scenario to which the multi-load stacker crane scheduling method provided by the present invention is applicable;
[0053] Figure 2 This is a flowchart of the multi-load stacker crane scheduling method based on the hybrid genetic co-evolutionary algorithm provided by the present invention;
[0054] Figure 3 This is a diagram illustrating the coding composition of the algorithm initialization phase provided by the present invention, in which multi-layer adaptive length coding is used to encode the global population, sub-population, and individual feasible solutions.
[0055] Figure 4 This is a schematic diagram illustrating two repair methods for repairing the encoding of infeasible solutions provided by the present invention.
[0056] Figure 5 This is a diagram illustrating the parsing process of the retrieval storage request (RS request) within the working cycle of a multi-load stacker crane provided by the present invention;
[0057] Figure 6 This invention provides a demonstration of the transfer of empty spaces during the working cycle of a multi-load stacker crane;
[0058] Figure 7 This is a schematic diagram of the optimal working route for the stacker crane to complete all storage and retrieval requests in a specific embodiment provided by the present invention. Detailed Implementation
[0059] To make the objectives, technical solutions, and advantages of this invention clearer, the invention will be further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the invention. Furthermore, the technical features involved in the various embodiments of this invention described below can be combined with each other as long as they do not conflict with each other.
[0060] Please see Figure 1 and Figure 2 This invention provides a multi-load stacker crane scheduling method based on a hybrid genetic co-evolutionary algorithm, so as to... Figure 1 Taking the illustrated automated warehouse scenario as an example, the stacker crane moves along the XZ plane within the aisles, responsible for maintaining single or double rows of racks and completing the transfer of goods between the pallet and the racks. The stacker crane completes one work cycle from leaving the pallet to returning to it. This scheduling method includes:
[0061] S1, determine the number of stored requests and retrieval requests in the order pool of the stacker crane, the maximum rated load of the stacker crane, and the initial empty space information on the rack, wherein the initial empty space information includes the number and location of empty spaces;
[0062] S2, construct a global objective function for the scheduling scheme with the goal of minimizing the estimated energy consumption obtained by summing the energy consumption of the stacker crane in completing all orders in the order pool and the potential energy consumption generated between different storage locations when completing storage requests;
[0063] S3, The global objective function is optimized and solved based on a hybrid genetic co-evolutionary algorithm to obtain the optimal scheduling scheme, specifically including:
[0064] S31, Initialize the global population: Randomly allocate the storage request and the retrieval request to multiple work cycles of the stacker machine to form a global population composed of multiple feasible solution individuals, each of the feasible solution individuals including the movement route of the stacker machine in the multiple work cycles respectively;
[0065] S32, the multiple feasible solutions in the global population are decomposed into multiple subpopulations according to the number of working cycles, and each subpopulation includes multiple movement routes corresponding to one working cycle;
[0066] S33, optimize the multiple movement routes in each of the subpopulations;
[0067] S34, merge the optimized subpopulations and use a global objective function to evaluate the individual feasible solutions;
[0068] S35, determine whether the termination requirement is met. If so, output the optimal feasible solution as the optimal scheduling scheme; otherwise, return to S32.
[0069] For example Figure 1 Taking the illustrated automated warehouse scenario as an example, a stacker crane moves along the XZ plane within the aisles, responsible for maintaining single or double rows of racks and completing the transfer of goods between the loading dock and the racks. The scheduling problem for multi-load stacker cranes in an automated warehouse can be described as follows: For a stacker crane, its order pool contains N storage requests and N retrieval requests. The maximum rated load capacity of the stacker crane is M. Therefore, within one work cycle from when the stacker crane leaves the picking dock to when it returns to the picking dock, it can complete at most M storage requests and M retrieval requests. The number of work cycles required for the stacker crane to complete all requests is T, where T can be N / M. In this scheduling problem, it is necessary to rationally allocate storage and retrieval requests to each work cycle and select appropriate rack locations for all storage requests to ensure the entire process proceeds smoothly and generates the minimum estimated energy consumption.
[0070] The stacker crane's different work cycles are numbered i∈{1,2,...,T}, the movement number of the stacker crane in each work cycle is j, and the number of times the stacker crane moves in the i-th work cycle is j. maxi To explore more possible operational methods and enhance the flexibility of stacker crane scheduling, each movement of the stacker crane is divided into three categories: R-movement, S-movement, and RS-movement. During an R-movement, the stacker crane completes a pickup task; during an S-movement, it completes a delivery task upon reaching the destination; and during an RS-movement, it first retrieves one item and then places another. Due to the existence of RS-movement, the number of movements within each work cycle of the stacker crane is not necessarily equal, and the maximum number of movements satisfies j. max ∈[M+2,2M+1].
[0071] Therefore, in the i-th task of the stacker crane, the number of each move is further represented as j∈{1,2,...,j}. maxi The energy consumption calculation formula for a stacker crane is F; the relative displacements in the horizontal and vertical directions generated by the stacker crane in the j-th movement of the i-th work cycle are dX and dX, respectively. i,j and dZ i,j In the j-th movement of the i-th work cycle, the load of the stacker crane is Q. i,j ;x i,j z i,j q i,j These represent the column coordinates, row coordinates, and cargo mass of the target rack during the j-th movement of the stacker crane in the i-th work cycle. and This is a 0-1 variable; if the stacker crane completes a storage request (S request) in the j-th move of the current work cycle, then... otherwise If the stacker crane completes a retrieval storage request (RS request) in the j-th move of the current work cycle, then otherwise χ i,j The formula for calculating the frequency of inbound and outbound goods of the same type of goods in a recent period is based on historical data. The statistical time interval can be the past two months, and the specific time is not limited. The energy consumption calculation formula for the stacker crane to complete all current goods requests is f1. The formula for calculating the potential energy consumption generated between different storage locations when completing storage requests is f2, which is the estimated potential energy consumption required to complete the task based on the current goods weight and throughput frequency.
[0072] The stacker crane controls its movement in the horizontal and vertical directions using horizontal and vertical movement motors. The global objective function of this invention, from an energy perspective, aims to minimize the estimated energy consumption obtained by summing the energy consumption of the stacker crane to complete the transport of all current goods and the potential energy consumption estimated based on the current goods weight and throughput frequency. This global objective function is expressed as:
[0073]
[0074]
[0075]
[0076] Where, f1 is the energy consumption calculation formula for the stacker crane to complete all current orders, i.e., all goods requests; f2 is the estimated potential energy consumption required to complete the task based on the current goods weight and throughput frequency, i.e., the potential energy consumption when the goods are stored in different locations; T is the number of times the stacker crane returns to the I / O port, i.e., the number of times the goods are exchanged at the platform, i.e., the number of stacker crane work cycles; j max dX represents the number of times the stacker crane moves within a single work cycle, which is also the length of the adaptive length code; F is the energy consumption calculation formula; i,j dZ i,j Q i,j Let x represent the relative horizontal and vertical displacements of the stacker crane during the j-th movement of the i-th task, and the load on the stacker crane during that movement. i,j z i,j q i,j Let be the column coordinates, row coordinates, and cargo mass of the target shelf during the j-th movement of the stacker crane in the i-th task, respectively. and This is a 0-1 variable; if the stacker crane completes a storage request (S request) in the j-th move of the i-th task, then... otherwise If the stacker crane completes a retrieval storage request (RS request) in the j-th move of the i-th task, then otherwise χ i,j This refers to the frequency of the same type of goods entering and leaving the warehouse over a recent period based on historical data. For example, the statistical time interval could be the past two months.
[0077] To solve this problem, the following assumptions need to be made:
[0078] (1) The retrieval location for all outbound requests is known in advance;
[0079] (2) The locations of all empty spaces on the shelves are known in advance;
[0080] (3) When the first request in the stacker crane's working cycle begins, the number of empty spaces on the rack is greater than the stacker crane's maximum rated load.
[0081] (4) The additional energy consumption generated when the stacker crane retrieves or stores goods after reaching the target location is not considered, such as the energy consumption generated by the robotic arm that drives the goods to move.
[0082] (5) The frequency of storage and retrieval of the same type of goods is relatively uniform over a period of time;
[0083] (6) The number of storage requests and retrieval requests in the order pool is the same.
[0084] Specifically, such as Figure 2As shown, the multi-load stacker scheduling method based on the hybrid genetic co-evolutionary algorithm in this application includes the following five stages.
[0085] (1) Initialization phase:
[0086] Initialize algorithm parameters; use multi-layer adaptive length encoding to encode the initial feasible solution individuals; randomly allocate N storage requests and N retrieval requests to T working cycles of a stacker crane with a maximum rated load of M, forming the initial population for encoding the initial feasible solution individuals, that is, each feasible solution individual completes N storage and N retrieval requests within T working cycles.
[0087] like Figure 3 As shown, the way the stacker crane completes all storage and retrieval requests is encoded, resulting in a multi-layer adaptive length encoding with T+1 layers. The first layer is a fixed-length encoding, representing all storage request sequences (i.e., S requests), generated by randomly sorting all storage requests. Layers 2-T+1 are adaptive-length encodings, representing the stacker crane's movement route within each work cycle. The movement route includes both the empty location number (empty location number) and the retrieval request number, which can be a random arrangement of all empty location numbers and the retrieval request numbers assigned to that work cycle. The number of retrieval requests assigned to that work cycle can be the stacker crane's maximum rated load. When the encoding is an empty location (E), the stacker crane moves to the corresponding empty location, completing one storage request; when the encoding is a retrieval request (R), the stacker crane moves to the location of the retrieval request, completing one retrieval request or retrieving a storage request. In the adaptive-length encoding portion of layers 2-T+1, the position of the last retrieval request (R) is used as the maximum length position of the encoding; any excess is invalid. By combining the storage request sequence in the first layer with the empty slot number and retrieval request number in the second-T+1 layer, a feasible scheduling scheme or feasible solution individual for the stacker crane can be formed, including multiple movement routes corresponding to multiple work cycles. Figure 3 It mainly demonstrates the coding structure of feasible solutions and the adaptive length coding method, without imposing limitations on the actual parameters.
[0088] In a specific example, this embodiment uses a storage request / retrieval request quantity of N=12, a stacker crane maximum rated load of M=3, and a work cycle number of T=4 as an example for illustration. The relevant information of all storage request / retrieval requests is shown in Table 1:
[0089] Table 1 shows the relevant information for all storage / retrieval requests in the specific instance.
[0090]
[0091] Frequency χ represents the inbound / outbound frequency of the goods type corresponding to the storage request over a past period, which can be expressed as the ratio of the number of inbound / outbound transactions to the time interval. Since the number of empty storage locations on the racks must be greater than the stacker crane's maximum rated load capacity before the first work cycle begins (the stacker crane's maximum rated load capacity is its maximum load capacity), this example assumes that initially there are 5 empty storage locations on the racks. The relevant information for these empty locations is shown in Table 2.
[0092] Table 2 Information on Empty Cargo Spaces in Specific Examples
[0093]
[0094] According to the algorithm settings, the number of feasible solution individuals of the corresponding population is initialized in the same way. After random initialization, the first layer encoding of one of the feasible solution individuals is shown in Table 3, and the adaptive length encoding of the second to T+1 layers is shown in Table 4.
[0095] Table 3 shows the first-level encoding of an initial feasible solution in a specific example.
[0096]
[0097] Table 4 shows the 2nd-5th layer encoding of an initial feasible solution in a specific example.
[0098]
[0099] (2) Problem decomposition: Decompose the entire global population into several subpopulations. For example... Figure 3 As shown, all feasible solutions are merged to form the global population. Encodings with the same layer number among different feasible solutions are merged to form subpopulations. Since the multi-layer adaptive length encoding has T+1 layers, a total of T+1 subpopulations can be generated. However, because the first layer fixed-length encoding is a storage request sequence, an effective objective evaluation function cannot be established. Therefore, the subpopulations that actually play a collaborative optimization role are: T subpopulations composed of adaptive length encodings from the second to the (T+1)th layers.
[0100] (3) Subpopulation optimization stage: Use the subpopulation objective function to evaluate and optimize each movement route in any subpopulation, use the evolution operation of the subpopulation to update the code of each movement route in the subpopulation; optimize the movement route of the stacker in a single work cycle; output the optimized movement route, that is, output the individual with the best movement route.
[0101] The expression for the objective function of the subpopulation is:
[0102]
[0103]
[0104]
[0105] Where f1 is the energy consumption calculation formula for the stacker crane to complete all cargo requests in the current work cycle; f2 is the potential energy consumption estimated based on the cargo weight and throughput frequency in the current work cycle; j max dX represents the number of times the stacker crane moves within a single work cycle, which is also the length of the adaptive length code; F is the energy consumption calculation formula; j dZ j Q j x represents the relative horizontal and vertical displacements of the stacker crane during the j-th movement, and the load on the stacker crane during that movement; j z j q j These represent the column coordinates, row coordinates, and cargo mass of the target shelf during the j-th movement of the stacker crane; and This is a 0-1 variable; if the stacker crane completes a storage request (S request) in the j-th move of the current work cycle, then... otherwise If the stacker crane completes a retrieval storage request (RS request) in the j-th move of the current work cycle, then otherwise χ j This is based on historical data, which statistically analyzes the frequency of inbound and outbound goods of the same type over a recent period, specifically the past two months. The sub-population objective function, as part of the global objective function, represents the total estimated energy consumption of the stacker crane in completing the entire movement route within a single work cycle.
[0106] Evolutionary operations are further used to update the subpopulation encoding, optimizing the stacker crane's movement routes within a single work cycle. Each stacker crane's work route in all subpopulations can be viewed as a special type of Vehicle Path Problem (VRP). Therefore, during the subpopulation optimization process, readily available advanced search operators for solving VRP problems can be used to efficiently optimize all work routes. That is, advanced search operators for solving VRP problems are used to search for any movement route, and then the subpopulation objective function is used for optimization to optimize any given movement route.
[0107] During the initialization phase, within the stacker crane's working route encoded by multi-layer adaptive length, there is a load constraint at any point within a work cycle:
[0108]
[0109]
[0110]
[0111] Where, m i,j M represents the cargo load capacity of the stacker crane during the j-th movement in the i-th work cycle; M is the maximum rated load capacity of the stacker crane; j max The number of times the stacker crane moves within a single work cycle, which is also the length of the adaptive length code; and This is a 0-1 variable; if the stacker crane completes a storage request (S request) in the j-th move of the i-th work cycle, then... otherwise If the stacker crane completes a retrieval request (R request) in the j-th move of the i-th work cycle, then otherwise If the j-th movement of the stacker crane in the i-th work cycle is effective, then otherwise A move that corresponds to an invalid code is an invalid move.
[0112] The first formula for the load constraint states that the stacker crane can be fully loaded at the beginning of a work cycle. Therefore, when the stacker crane is initially fully loaded, it will definitely visit the first empty space and place a unit load there first.
[0113]
[0114] in, and This is a 0-1 variable; if the stacker crane completes a storage request (S request) in the first movement of the i-th work cycle, then... otherwise If the stacker crane completes a retrieval request (R request) in the first movement of the i-th work cycle, then otherwise If the stacker crane completes a retrieval storage request (RS request) in the first movement of the i-th work cycle, then otherwise This means that the first request completed in all work cycles of the stacker crane must be a storage request (S request).
[0115] The total number of storage requests and retrieval requests is N:
[0116]
[0117]
[0118] This indicates that all storage and retrieval requests need to be routed onto the stacker crane's work cycle path.
[0119] Any movement of the stacker crane must be one of three: a store request (S request), a retrieval request (R request), or a retrieve store request (RS request). It cannot be repeated or omitted, and is represented as follows:
[0120] In addition, the stacker crane's picking and delivery process must also meet the rack space constraints. In one cycle, the stacker crane cannot repeatedly visit the same location, nor can it exceed the rack's range.
[0121]
[0122] 1≤x i,j ≤L x
[0123] 1≤z i,j ≤L z ;
[0124] Where x i,j z i,j These represent the column coordinates and row coordinates of the target rack during the j-th movement of the stacker crane in the i-th work cycle, respectively; j max L represents the number of times the stacker crane moves within a single work cycle, which is also the length of the adaptive length code; x L z These represent the depth and width of the aisles in the automated warehouse, respectively.
[0125] The second formula for the aforementioned load capacity constraint states that the stacker crane's load capacity cannot be less than 0, and the load capacity cannot decrease during ineffective movements. The third formula states that the stacker crane's load capacity cannot exceed its maximum rated load capacity. During the picking and delivery process within a single work cycle of the stacker crane, when the maximum loading capacity exceeds the rated capacity and the constraint requirements are not met, the stacker crane's capacity constraint requirements are met by adjusting the adaptive coding length and sequence. Specifically, this means prioritizing storage tasks for the stacker crane to free up loading space and meet the constraint requirements.
[0126] Specifically, the encoding of the feasible solution at layer 2-T+1 can be adjusted in the following way to ensure that the movement route meets the load constraint:
[0127] Adjust the encoding so that the first encoding is an empty sequence number;
[0128] The empty slot numbers that appear after the number of empty slot numbers in the code reaches the maximum rated load of the stacker crane are moved to the end of the code;
[0129] The number and location of retrieval and storage operations are determined during the movement route by decoding the encoding.
[0130] Specifically, when a work cycle does not meet the constraint requirements of the stacker crane's maximum rated load, the coding of that work cycle needs to be adjusted and repaired. The coding adjustment and repair process is as follows: Figure 4 As shown, there are two main steps. The first step is to identify all invalid codes whose first code is not an E-type request, find the first E-request that appears, and insert it into the code header. The second step is that during the stacker crane's work cycle, when the number of empty slot numbers in the code reaches the stacker crane's maximum rated load, that is, after the stacker crane has unloaded the last item from the empty position where the E-request was located, and the next position specified by the code is still empty, then the E-request is moved to the end of the code. Figure 4 The example uses a stacker crane with a maximum rated load of 2 to demonstrate two ways to fix the code to meet the load constraint, without limiting the actual parameters.
[0131] To ensure this load capacity constraint is met, each work cycle of the stacker crane also needs to be decoded. The decoding process within a work cycle is as follows: Figure 5 As shown, the empty position number (E number) in the encoding corresponds to the E request, and the retrieval request number (R number) corresponds to the R request. The main purpose of decoding is to find the number and location of retrieval storage requests (RS requests). During the RS request parsing process, invalid encoding parts need to be deleted first. Then, starting from the left side of the encoding, the first E request is searched for to the right. After finding it, the first matching R request to its right is searched. The condition for the two to match is that the next request after the R request is no longer an R request (it can be an E request or an invalid encoding). Subsequently, the matched E and R are deleted from the encoding. Starting from the original E request position, the next E request is searched for to the right, and this process is repeated until all E requests have been deleted. The remaining requests are the RS requests. An RS request means that at a storage location, a retrieval request is completed to retrieve an item, and then a storage request is completed to place an item. If there are still E requests that have not been deleted at the end of this process, it means that the load constraint was violated in this stacker crane's work cycle, and the crane went to an unnecessary empty storage location. Taking the adaptive length encoding in Table 4 as an example, the parsed RS requests are shown in Table 5.
[0132] Table 5 shows the parsed RS requests in specific examples.
[0133]
[0134]
[0135] By following the steps of repairing the encoding and parsing the RS request, the stacker crane path planning problem can be perfectly transformed into a TSP / VRP problem. Mature and efficient evolutionary operators can be used to synchronously optimize all encodings in the subpopulation, and no infeasible solutions will be generated in this process. Figure 5 This example demonstrates the parsing process for RS requests using three different encodings and does not impose limitations on the actual parameters.
[0136] Furthermore, during the stacker crane's inbound and outbound tasks, the empty spaces on the racks are constantly changing, while the empty space numbers in the coding remain unchanged. Therefore, an empty space record table is needed to record and update the changing empty spaces in real time; that is, in S3, the coordinates of the storage location corresponding to the empty space number are updated after each movement along each route. For example... Figure 6 As shown in (a), after the first work cycle begins, the stacker crane first moves to position E1 and places an item there, at which point the empty space in E1 disappears. Next, the stacker crane moves to position R1 and retrieves an item, creating an empty space in position R1. Therefore, the empty space has actually moved from position E1 to position R1, and the key-value pair between E1 and R1 is recorded in the empty space record table. The stacker crane then continues to move sequentially to positions E2 and R2, and similarly, the empty space moves from position E2 to position R2, recording the relationship between E2 and R2 in the empty space record table. Figure 6 As shown in (b), in the second work cycle of the stacker crane, E2 reappears in the adaptive length encoding. At this time, the position of E2 has been moved to the position of R2. So the stacker crane moves directly to the position of R2 through E2 and R2 in the empty space record table and puts in an item. At this time, the empty space disappears again. Then the stacker crane moves to the position of R3 and learns that R3 is an RS request and will not cause an empty space change. Finally, the stacker crane moves to the position of R4, retrieves an item and creates an empty space. Therefore, the empty space is actually moved from the position of E2 to the position of R4. The key-value pair of E2 and R2 is updated to E2 and R4 in the empty space record table. Finally, the stacker crane returns to the origin and completes the second work cycle.
[0137] (4) Global optimization stage: Use the global objective function to evaluate all feasible solutions and obtain elite individuals; select, mutate and perform at least one of the following operations to generate new individuals: select, mutate and perform local search; then use the global objective function to evaluate the new individuals and output the optimal solution.
[0138] First, the optimized subpopulations are merged to form multiple locally optimized feasible solutions. Then, a global objective function is used to evaluate all individuals. The expression for the global objective function is:
[0139]
[0140]
[0141]
[0142] Where f1 is the energy consumption calculation formula for the stacker crane to complete all current cargo requests; f2 is the estimated potential energy consumption required to complete the process based on the current cargo weight and throughput frequency; T is the number of times the stacker crane returns to the I / O port to exchange cargo, i.e., the number of stacker crane work cycles; j max dX represents the number of times the stacker crane moves within a single work cycle, which is also the length of the adaptive length code; F is the energy consumption calculation formula; i,j dZ i,j Q i,j x represents the relative horizontal and vertical displacements of the stacker crane during the j-th movement in the i-th work cycle, and the load on the stacker crane during that movement; i,j z i,j q i,j These represent the column coordinates, row coordinates, and cargo mass of the target rack during the j-th movement of the stacker crane in the i-th work cycle. and This is a 0-1 variable; if the stacker crane completes a storage request (S request) in the j-th move of the i-th work cycle, then... otherwise If the stacker crane completes a retrieval storage request (RS request) in the j-th move of the i-th work cycle, then otherwise χ i,j This is based on historical data to calculate the frequency of the same type of goods entering and leaving the warehouse over a recent period, with the statistical timeframe being the past two months.
[0143] Furthermore, the selection and mutation operations for elite individuals specifically include the following: Firstly, for the S-encoding of layer 1, an elite individual is selected from every n feasible solutions using a roulette wheel approach. Then, operators such as swapping, head insertion, and interval reversal are used to mutate this elite individual. Secondly, for the work cycle encoding of the stacker crane in layers 2-T+1, the same method is used to select elite individuals. All R-encodings are extracted from the numerous sequences of the 2-T+1 layer encoding for the same individual. Mutation operations such as swapping, head insertion, and interval reversal are performed on the R-encodings, and then the sequences are returned to their original positions, thus generating new individuals similar to the elite individuals. When selecting elite individuals using the roulette wheel approach, the probability of selecting individuals with better global objective functions is higher.
[0144] Furthermore, the local search operation for elite individuals specifically includes: during the local search process, for the 2-T+1 layer encoding, randomly selecting several work cycle sequences, changing the empty storage position sequence on the stacker crane's work route (i.e., the position of the E-encoding in the sequence), conducting a local search, and selectively accepting new solutions. This means that the new solutions need to be encoded and repaired to satisfy the load constraint, i.e., using... Figure 4 The repair method shown repairs infeasible solutions that do not meet the constraints.
[0145] (5) Termination Phase: Determine whether the termination requirement is met. If yes, output the optimal solution; otherwise, return to phase (2) to redo the subpopulation division and optimization. The termination requirement is the preset number of iterations. When the number of iterations reaches the maximum number of iterations, the optimal solution is output as the optimal scheduling scheme.
[0146] Specifically, the algorithm determines whether the termination condition is met. If the termination condition is not met, it returns to stage (2) to divide the updated global population into multiple subpopulations and performs stage (3) subpopulation optimization and stage (4) global optimization. If the algorithm meets the termination condition, it outputs the optimal solution obtained from the search and parses the optimal working route map of the stacker crane based on the optimal solution. In the specific instance of this example, the final working route of the stacker crane is as follows: Figure 7 As shown in Table 6 below:
[0147] Table 6 shows the optimal scheduling schemes in specific examples.
[0148] Work Cycle 2 E4S4 R10S1 R2S12 R6 E13 E3 E2 E5 Work Cycle 3 E1S9 R8 E4S8 E3S11 R4 R7 E2 E5 Work Cycle 4 E2S7 R12S6 R3 E5S10 R11 E1 E4 E3
[0149] This invention provides a multi-load stacker crane scheduling method based on a hybrid genetic co-evolutionary algorithm. The method includes: allocating N storage requests and N retrieval requests to T work cycles of a stacker crane with a maximum rated capacity of M; constructing an objective function with the goal of minimizing the energy consumption of the stacker crane in completing the current inventory list and the estimated potential energy consumption based on the current inventory weight and throughput frequency; employing a multi-layer adaptive length encoding method to address the variation in the number of movements within a single work cycle caused by storage and retrieval at the same storage location; embedding the hybrid genetic algorithm into the co-evolutionary framework, utilizing global search to change the structure of the encoded solution, and utilizing local search to improve the optimization efficiency of the stacker crane within the subspace of the solution within a single work cycle. This method can fully utilize the multi-load advantage of multi-load stacker cranes executing dual-instruction cycles, reducing the time and energy consumption for completing storage and retrieval lists, and improving the scheduling efficiency and work effectiveness of automated warehouses.
[0150] This invention integrates the path planning problem and storage request selection problem within the working cycle of a multi-load stacker crane, and establishes a new objective function. The objective function is constructed with the goal of minimizing the estimated energy consumption obtained by the stacker crane to complete all current goods and the sum of the estimated potential energy consumption based on the current goods weight and throughput frequency. This objective function has a wider coverage and can optimize the operation of automated warehouses over a longer period of time.
[0151] This invention further utilizes the concept of shared storage locations, making the Retrieval Storage Operation (RS operation) an optional option within a work cycle of the stacker crane, thus increasing scheduling flexibility.
[0152] This invention proposes a multi-layer adaptive length coding method that can completely realize the mapping from the solution space to the problem space. The adaptability of the coding length can effectively solve the coding difficulties caused by the different number of cargo points in the working cycle.
[0153] This invention embeds a hybrid genetic algorithm into a co-evolutionary framework to enhance search performance. In the subpopulation optimization phase, evolutionary operations are used to optimize the subpopulation encoding. In the global optimization phase, selection, mutation, and local search operations are performed on feasible solutions to optimize all individuals, improving search efficiency and accelerating the algorithm's convergence speed.
[0154] Those skilled in the art will readily understand that the above description is merely a preferred embodiment of the present invention and is not intended to limit the present invention. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of the present invention should be included within the scope of protection of the present invention.
Claims
1. A scheduling method for multi-load stacker cranes based on a hybrid genetic co-evolutionary algorithm, characterized in that, include: S1, determine the number of stored requests and retrieval requests in the order pool of the stacker crane, the maximum rated load of the stacker crane, and the initial empty space information on the rack, wherein the initial empty space information includes the number and location of empty spaces; S2, construct a global objective function for the scheduling scheme with the goal of minimizing the estimated energy consumption obtained by summing the energy consumption of the stacker crane in completing all orders in the order pool and the potential energy consumption generated between different storage locations when completing storage requests; S3, The global objective function is optimized and solved based on a hybrid genetic co-evolutionary algorithm to obtain the optimal scheduling scheme, specifically including: S31, Initialize the global population: Randomly allocate the storage request and the retrieval request to multiple work cycles of the stacker machine to form a global population composed of multiple feasible solution individuals, each of the feasible solution individuals including the movement route of the stacker machine in the multiple work cycles respectively; S32, the multiple feasible solutions in the global population are decomposed into multiple subpopulations according to the number of working cycles, and each subpopulation includes multiple movement routes corresponding to one working cycle; S33, optimize the multiple movement routes in each of the subpopulations; S34, merge the optimized subpopulations and use a global objective function to evaluate the individual feasible solutions; S35, determine whether the termination requirement is met. If so, output the optimal feasible solution as the optimal scheduling scheme; otherwise, return to S32. The potential energy consumption generated by the stacker crane between different storage locations when fulfilling a storage request in S2 is calculated based on the weight of the goods corresponding to the storage request and the throughput frequency; specifically, the global objective function is: ; in, The energy consumption calculation formula for a stacker crane to complete all current orders; The potential energy consumption that occurs when a stacker crane completes a storage request between different storage locations; This refers to the number of times the stacker crane returns to the I / O port to exchange goods, i.e., the number of stacker crane work cycles; This represents the number of times the stacker crane moves within a single work cycle. Here is the energy consumption calculation formula; , , These represent the relative horizontal and vertical displacements of the stacker crane during the j-th movement in the i-th work cycle, as well as the load on the stacker crane during that movement. , , These represent the column coordinates, row coordinates, and cargo mass of the target rack during the j-th movement of the stacker crane in the i-th work cycle. and This is a 0-1 variable; if the stacker crane completes a storage request (S request) in the j-th move of the i-th task, then... ,otherwise If the stacker crane completes a retrieval storage request (RS request) in the j-th move of the i-th task, then ,otherwise ; This refers to the frequency of the same type of goods entering and leaving the warehouse over a recent period, based on historical data.
2. The multi-load stacker crane scheduling method based on a hybrid genetic co-evolutionary algorithm as described in claim 1, characterized in that, In S33, the subpopulation objective function is used to evaluate and optimize each movement route. The subpopulation objective function is: ; in, The formula for calculating the energy consumption of a stacker crane to complete all orders within the current work cycle; The potential energy consumption that occurs when a stacker crane completes a storage request between different storage locations; This represents the number of times the stacker crane moves within a single work cycle. Here is the energy consumption calculation formula; , , These represent the relative displacements of the stacker crane in the horizontal and vertical directions during the j-th movement, as well as the load on the stacker crane during that movement. , , These represent the column coordinates, row coordinates, and cargo mass of the target shelf during the j-th movement of the stacker crane; and This is a 0-1 variable; if the stacker crane completes a storage request (S request) in the j-th move of the current work cycle, then... ,otherwise If the stacker crane completes a retrieval storage request (RS request) during the j-th move of the current work cycle, then ,otherwise ; This refers to the frequency of the same type of goods entering and leaving the warehouse over a recent period, based on historical data.
3. The multi-load stacker crane scheduling method based on a hybrid genetic co-evolutionary algorithm as described in claim 1 or 2, characterized in that, Within the movement route of the feasible solution individual described in S31 in any work cycle, the cargo load of the stacker crane during the pickup and delivery process must satisfy the following loading constraints: ; in, The cargo load of the stacker crane during the j-th move in the i-th work cycle; This refers to the maximum rated load capacity of the stacker crane. This represents the number of times the stacker crane moves within a single work cycle. , and This is a 0-1 variable; if the stacker crane completes a storage request (S request) in the j-th move of the i-th work cycle, then... ,otherwise If the stacker crane completes a retrieval request (R request) in the j-th move of the i-th work cycle, then ,otherwise If the j-th movement of the stacker crane in the i-th work cycle is valid, then ,otherwise .
4. The multi-load stacker crane scheduling method based on a hybrid genetic co-evolutionary algorithm as described in claim 3, characterized in that, The feasible solution in S31 adopts a multi-layer coding method, wherein the first layer of coding is a random sorting of all the storage requests; the second to T+1 layers of coding is an adaptive length coding, which corresponds to the movement route in the stacker crane's T working cycles. The second to T+1 layers of coding is a random combination of the empty slot number on the shelf and the sequence number of the retrieval request, and the position of the last retrieval request is the maximum length position of the coding, and the part exceeding the length is invalid coding.
5. The multi-load stacker crane scheduling method based on a hybrid genetic co-evolutionary algorithm as described in claim 4, characterized in that, Any movement of the stacker crane is one of the following: storage request (S request), retrieval request (R request), and retrieval-storage request (RS request). The encoding of the feasible solution at layer 2-T+1 is adjusted in the following way to make the movement route conform to the load constraint: Adjust the encoding so that the first encoding is an empty sequence number; The empty slot numbers that appear after the number of empty slot numbers in the code reaches the maximum rated load of the stacker crane are moved to the end of the code; The number and location of retrieval and storage operations are determined during the movement route by decoding the encoding.
6. The multi-load stacker crane scheduling method based on a hybrid genetic co-evolutionary algorithm as described in claim 5, characterized in that, In the encoding of the feasible solution individual at layer 2-T+1, the empty position index corresponds to the E request, and the index of the retrieval request corresponds to the R request. The number and location of retrieval and storage operations are determined in the movement route by decoding the encoding, specifically including: First, delete the invalid encoding parts; Then, starting from the left side of the code, search for the first E request to the right. After finding it, search for the first matching R request to its right. The condition for the two to match is that the next request after the R request is no longer an R request. Remove the matched E and R requests from the encoding; Starting from the original E request position, continue searching for the next E request to the right, repeating this process until all E requests have been deleted. The sequence number of the remaining retrieval request is the RS request.
7. The multi-load stacker crane scheduling method based on a hybrid genetic co-evolutionary algorithm as described in claim 1 or 2, characterized in that, In S3, the coordinates of the cargo location corresponding to the empty space number are updated after each movement along each movement route.
8. The multi-load stacker crane scheduling method based on a hybrid genetic co-evolutionary algorithm as described in claim 1 or 2, characterized in that, The number of storage requests and the number of retrieval requests in S1 are N, respectively.
9. The multi-load stacker crane scheduling method based on a hybrid genetic co-evolutionary algorithm as described in claim 1 or 2, characterized in that, For the feasible solution described in S31, within the movement route of the stacker crane's pickup and delivery process in any work cycle, the following positional constraints must also be satisfied: ; in, , Let represent the column coordinates and row coordinates of the target shelf during the j-th movement of the stacker crane in the i-th work cycle, respectively. This represents the number of times the stacker crane moves within a single work cycle. , These represent the depth and width of the aisles in the automated warehouse, respectively.