Method and system for planning transportation operation path of AGV (Automatic Guided Vehicle) of wharf warehouse
By using digital warehouse models and rapid expansion random tree algorithms in dock warehouses, combined with crown porcupine optimization and sparrow optimization algorithms, the transportation path of AGV is optimized, and the problem of low efficiency of AGV path planning in the existing technology is solved, and the problem of low efficiency of AGV path planning in the existing technology is realized. More efficient and economical transportation.
Patent Information
- Application Number
- CN202411482455.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-10-23
- Publication Date
- 2025-02-11
AI Technical Summary
The prior art is difficult to plan the global optimal path for the AGV of the dock warehouse, resulting in low transportation efficiency, large energy consumption and high transportation costs.
A multi-objective path mathematical model based on the digital warehouse model is used, combined with the fast-scaling random tree algorithm (RRT) and the crown porcupine optimization algorithm (CPO) and the sparrow optimization algorithm (SSA) to optimize the optimal path of AGV.
It has realized the global optimal path for the AGV in the dock warehouse, improved transportation efficiency and management efficiency, and reduced the energy consumption and transportation costs of AGV.
Smart Images

Figure CN119417348A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to path planning, and in particular to a method and system for planning an AGV transport operation path in a dock warehouse. Background Art
[0002] Terminal warehouses are important hubs for cargo loading, unloading and storage. AGVs (automatic guided vehicles), as an efficient and flexible automated transportation equipment, play an increasingly important role in cargo transportation in terminal warehouses. How to plan a reasonable transportation route for AGVs to reduce driving distance, improve transportation efficiency and adapt to dynamically changing transportation needs is one of the hot issues in the current logistics industry.
[0003] Traditional path planning methods mainly rely on manual experience and perform transportation operations through preset fixed paths. Manual experience makes it difficult to take into account all transportation details, such as cargo type, size, quantity, loading and unloading area distribution, etc., resulting in insufficient precision in path planning and inability to fully utilize warehouse space, thus affecting transportation efficiency. Secondly, the preset fixed path cannot be dynamically adjusted according to changes in actual transportation needs, such as cargo arrival time, quantity, destination, etc., and has poor flexibility and difficulty in responding to emergencies. In addition, the process of manual path planning is time-consuming and error-prone, further reducing transportation efficiency.
[0004] In order to overcome the limitations of traditional path planning methods, researchers have begun to explore algorithm-based path planning methods in recent years, such as Dijkstra algorithm, A* algorithm, etc. These algorithms can find feasible paths, but their computational efficiency is low and it is difficult to meet real-time requirements. In addition, existing heuristic path planning methods, such as genetic algorithms and ant colony algorithms, can quickly find feasible paths, but they are prone to fall into local optimal solutions and are difficult to find the global optimal path. Summary of the invention
[0005] Purpose of the invention: The first purpose of the present invention is to provide a planning method for the AGV transport operation path of a terminal warehouse that can obtain the global optimal path, so as to improve the transportation efficiency and management efficiency of the terminal warehouse, reduce the energy consumption of the AGV, and reduce the transportation cost; the second purpose of the present invention is to provide a planning system for the AGV transport operation path of a terminal warehouse.
[0006] Technical solution: The method for planning the transport operation path of the terminal warehouse AGV of the present invention comprises:
[0007] (1) Based on the digital warehouse model, the warehouse is divided into K small intervals, each of which represents a storage interval point. The AGV is set to start from the initial position, transport the goods to the target storage interval position, and return to the initial position after the task is completed. A multi-target path mathematical model is constructed;
[0008] (2) According to the multi-target path mathematical model, the rapidly expanding random tree algorithm (RRT) is used to find N feasible paths from the initial position to the target position for the AGV transportation operation;
[0009] (3) The crown porcupine optimization algorithm (CPO) and the sparrow optimization algorithm (SSA) are combined, and N feasible paths are used as the initial solution of the CPO-SSA algorithm to optimize the optimal path of the AGV and ensure that the path distance is minimized.
[0010] Further, step (1) comprises:
[0011] The initial position of the AGV transport operation path is P start , the target position is P goal There are m transport tasks and M AGVs in total; the coordinate position of the storage interval point is represented by P i =(x i ,y i ),i∈[1,K], then the transportation path of any AGV is expressed as
[0012] The multi-objective path mathematical model is:
[0013]
[0014] Among them, the objective function min{·} represents minimizing the AGV transportation path distance; d(·) represents the Euclidean distance; represents the first storage interval point position passed by the zth AGV when performing the kth transportation task; i and j represent random numbers selected in [1, K-1]; represents the Euclidean distance between storage interval point i and storage interval point j at the kth transportation task; It represents the two-dimensional coordinates of any storage interval point i and storage interval point j when the zth AGV performs the kth transportation task; It represents the target storage interval point position when the zth AGV performs the kth transportation task;
[0015] Define the constraints as:
[0016]
[0017] in, It means that when the zth AGV performs any kth task, it can only be performed by one AGV; It means that each AGV can only perform one task; Indicates that the load capacity of the zth AGV must be greater than the weight of the kth transport task each time, c z represents the load capacity of the zth AGV, ωk represents the weight of the kth transport task; P k represents the priority of the kth transport task, Indicates the priority of the k-th transport task; A z represents the available time of the zth AGV, Indicates judging the availability of each AGV.
[0018] Further,
[0019] And i,j∈[1,K-1]
[0020] Among them, (x i ,y i ) represents the two-dimensional coordinates of the storage interval point i, (x j ,y j ) represents the two-dimensional coordinates of the storage interval point j;
[0021]
[0022] Further, step (2) comprises:
[0023] Assuming that the path planning space of AGV transportation operation is P, it is necessary to plan the AGV transportation operation from the initial position P start To the target position P goal The feasible path between can be expressed by the following formula:
[0024]
[0025] Where G represents the Gth target location node; p(t) represents the tth location node in the feasible path; P free =P / P obj , P free Indicates barrier-free walkable area, P obj represents the obstacle area; p(0) = P start represents the initial position node; p(G) represents the target position node and p(G)∈P goal ;
[0026] P start As the starting point of AGV transportation operation, a random tree T is established and used as the root node, P goal As the target point of AGV transportation operation; each cycle generates a random point P through random sampling rand , in the random tree T, calculate the relationship between all nodes and the random point P generated in the current loop rand The distance between
[0027]
[0028] Among them, d rand,i Represents other nodes and random points P rand The distance between rand,x ,P rand,y ) represents a random point P rand The horizontal and vertical coordinates of (p i,x ,p i,y ) represents other nodes p i The horizontal and vertical coordinates of
[0029] Traverse all nodes and calculate their intersection with the random point P rand The distance between them, find the node P with the smallest distance near , denoted as P near = argmin{d rand,i}; Find P near Then continue to P near With P rand Connection direction extension L limit After the length is obtained, the new node P new ;
[0030] Use global adaptive step size and set the step size L limit The step value is the measurement of the motion trajectory of the AGV. The step value indicator should be appropriately set to avoid the situation where the step length is too large and cannot enter the obstacle-dense area, and the step length is too small and causes useless search in the obstacle-free area;
[0031]
[0032] in, represents the initial adaptation global step size; M size represents the distance between the initial point and the target point; u1 represents the global complexity coefficient of the environment;
[0033] After detecting obstacles near the node and obtaining the local complexity coefficient u2, each node has a corresponding adaptive step size, and a new node is obtained by expanding with the new step size;
[0034] P new =|P near -P rand | / |P near -P rand |u2+P near
[0035] In exploring new nodes P new In the path of, collision detection is performed; if P near , P new and P near To P new The points between them are in the obstacle space P obj or with P objIf they intersect, they are considered invalid extension points;
[0036]
[0037] Regenerate a new random point P in the next cycle new , add the new node into the random tree T through collision detection; iterate to the newly added node P in the random tree T new Equal to the target point P goal When the self P start To P goal A feasible collision-free path.
[0038] Furthermore, a fourth-order cubic B-spline curve is used for path smoothing.
[0039] Furthermore, the k-order B-spline curve formula is:
[0040]
[0041] Where w represents the parameter variable; P(w) represents the control point on the curve corresponding to the parameter w; n represents the number of control points; P i represents the i-th control point of a given curve; B i,k (w) represents the k-order B-spline basis function of the i-th control point;
[0042]
[0043] Among them, w,w i ,w i+1 Represents a series of control nodes; B i,1 (w) represents the 1st-order B-spline basis function of the i-th control point; B i,k-1 represents the i-th k-1 order B-spline basis function; B i+1,k-1 represents the i+1th k-1th order B-spline basis function;
[0044] The expression of the fourth-order cubic B-spline curve is:
[0045]
[0046] Among them, P i-1 ,P i ,P i+1 ,P i+2 Represents the i-1, i, i+1, i+2th control points of a given curve;
[0047] When the path nodes are given, a series of spatial sequence points that satisfy the B-spline interpolation can be obtained, thereby constructing an interpolation curve and obtaining a smooth path for the AGV.
[0048] Further, step (3) comprises:
[0049] (301) Population initialization and population update using cyclic population reduction method
[0050] First, set the population size of the CPO-SSA algorithm N, that is, N feasible paths; the maximum number of iterations T max ; Convergence factor α; Minimum population size N min ;
[0051] The f(·) function is introduced to represent the fitness value of the individual, which represents the path length;
[0052] The cyclic population reduction method is further used to continue updating the population to accelerate the convergence speed while maintaining population diversity; the cycle is based on the loop variable T to determine the number of times the process is executed during the optimization process. The specific formula is as follows:
[0053]
[0054] Among them, N new Represents the size of the newly generated population; N min Indicates the minimum number of newly generated populations; N indicates the original population size; t indicates the current number of iterations; % indicates the remainder or modulus operator; T indicates the variable parameter used to determine the number of loop cycles;
[0055] (302) Global Exploration Phase
[0056] A normal distribution is used for preliminary global exploration, and in the newly generated population N new The position of each individual All are in the search space, select an individual As the initial reference solution position at the tth iteration; use normal distribution to generate random value τ1 to control the individual position update, τ1∈(-1,1);
[0057] The individual position update formula is as follows:
[0058]
[0059] in, represents the position of the i-th individual solution at the t+1-th iteration; represents the position of the i-th individual solution at the t-th iteration; τ2 represents a random number between [0,1]; Indicates the best solution position of the current t-th iteration; is a vector generated by an individual solution position of the current t-th iteration and an individual solution position randomly selected from the population, serving as the initial reference solution position at the t-th iteration;
[0060] Continue to search the area randomly and update individual positions;
[0061] Introducing a binary vector Used to determine the position of individual solutions With reference solution position When the distance is close, When the distance is far,
[0062] The specific formula for updating the individual's position is as follows:
[0063]
[0064] Among them, τ3 represents a random number between [0,1]; represents the position of a randomly selected individual solution in the population; r1, r2 are random integers between [1, N];
[0065] Use the finder in the SSA optimization algorithm to explore the target and select a certain proportion of individuals with higher fitness values As the discoverer, it is responsible for searching for the optimal solution. The discoverer's position update formula is as follows:
[0066]
[0067] in, represents the new position updated by the i-th individual in the t+1th iteration; represents the position of the i-th individual in the t-th iteration of the discoverer with a higher fitness value; α represents the convergence factor, α∈(0,1); Q represents a random number that obeys a normal distribution; L represents a matrix of size 1×d, each element is 1, and d represents the dimension; R2 represents the warning value; ST represents the safety value;
[0068] When R2<ST, it means that the discoverer has found a suitable solution in the surrounding area, and the individual enters the area near the discoverer to conduct a large-scale search mode;
[0069] When R2 ≥ ST, it means that some discoverers have not found a suitable solution, so individuals need to quickly continue searching in other areas;
[0070] (303) Local Search Development Phase
[0071] Introducing a directional control factor Used to influence the search direction of the algorithm; introduce γ t As a defense factor, it is used to control the selection of exploration areas at different iteration stages; at the same time, a diffusion factor is introduced By adjusting The size of controls the diffusion direction and intensity of the search, further affecting the search direction and scope of the algorithm; when When is large, the algorithm searches around the current individual solution position to find a better solution; when When it is smaller, the algorithm searches between the current individual and the random individual to expand the search range;
[0072] The specific formula for updating the individual's position is as follows:
[0073]
[0074] Among them, r3 represents a random integer greater than 1, represents the position of a randomly selected individual solution in the population; τ3 represents a random number between [0,1];
[0075]
[0076] in, Represents a random value to avoid falling into the local optimal solution;
[0077]
[0078] Among them, rand represents a random number between [0,1];
[0079]
[0080] Where exp(·) represents the exponential function; Represents the fitness value of the position of the i-th individual solution at the t-th iteration; Represents the sum of the fitness values of all individual solution positions in the tth iteration; ∈ represents a very small positive number to avoid the situation where the denominator is 0;
[0081]
[0082] in, represents the global optimal position of the tth iteration; represents the global worst position of the tth iteration; β represents the step size and direction control parameter; λ represents a random number, λ∈[-1,1]; f i Indicates the current sparrow's fitness value; f g represents the appropriate value of the global optimal position; f ω represents the appropriate value of the global worst position; ε represents a very small constant;
[0083] When f i >f g When f i =f g When , it means that the individual is in the population, but there is also the possibility of danger approaching, and it needs to move closer to other individuals;
[0084] The final position update adjusts the position update formula of each individual according to the difference between the current fitness value of individual i and the global optimal solution to find a better solution;
[0085] The position update formula is as follows:
[0086]
[0087] Among them, τ4 and τ5 represent random numbers; Represents the movement factor of individual i in the current t-th iteration, which is used to control the movement of individuals in the solution space, helping the algorithm to jump out of the local optimum and gradually approach the global optimum;
[0088] (304) Repeat the above global exploration and local search development steps until the termination condition is met and the maximum number of iterations is reached; finally, the individual with the highest fitness in the current population is returned, that is, the optimal path for the AGV transportation operation of the terminal warehouse is finally found.
[0089] Further, step (301) includes:
[0090] The population is randomly initialized, and the formula is as follows:
[0091]
[0092] in, Represents the i-th possible solution in the search solution space; represents the upper boundary of the search solution space, Represents the lower boundary of the search solution space; represents a random vector between [0,1];
[0093] The initial population can be expressed as follows:
[0094]
[0095] Among them, x i,j represents the jth position of the ith solution; d represents the dimension of the given problem, d = 2;
[0096] The fitness vector of an individual is expressed as:
[0097]
[0098] Furthermore, in step (302), 10% to 20% of individuals with higher fitness values are selected. As a discoverer, it is responsible for searching for the optimal solution.
[0099] The planning system for the terminal warehouse AGV transport operation path described in the present invention includes a memory and a processor. The memory stores a computer program. When the computer program is executed by the processor, the steps of the planning method for the terminal warehouse AGV transport operation path are implemented.
[0100] Beneficial effects: Compared with the prior art, the present invention has the following significant advantages: the present invention constructs a multi-objective path mathematical model based on a digital warehouse model, then uses the RRT algorithm to obtain multiple feasible paths, and then uses the CPO-SSA optimization algorithm to optimize the path. The CPO-SSA algorithm can perform global search to find potential better solutions during the iteration process, and can also perform local search to refine the path, and finally find the optimal path for the AGV transportation operation of the terminal warehouse. Therefore, the present invention can improve the transportation efficiency and management efficiency of the terminal warehouse, reduce the energy consumption of AGV, and reduce transportation costs. BRIEF DESCRIPTION OF THE DRAWINGS
[0101] Figure 1 It is a flowchart of a method for planning a transport operation path of an AGV in a terminal warehouse provided by an embodiment of the present invention;
[0102] Figure 2 It is a flowchart of an improved RRT algorithm in an embodiment of the present invention;
[0103] Figure 3 It is a flowchart of the CPO-SSA algorithm in an embodiment of the present invention. DETAILED DESCRIPTION
[0104] The present invention will be further described below in conjunction with the accompanying drawings.
[0105] An embodiment of the present invention provides a method for planning the transport operation path of an AGV in a terminal warehouse. In order to realize the efficient transportation of AGV in the terminal warehouse, a multi-objective path mathematical model based on a digital warehouse model is proposed, and the model aims to minimize the driving distance of the AGV; then an improved RRT algorithm is used to find a feasible path from a starting point to a target point for the AGV transport operation; finally, a crown porcupine optimization (CPO) algorithm is combined with a sparrow optimization (SSA) algorithm to optimize the feasible path, quickly find the optimal path of the AGV, and ensure that the distance cost of the path is minimized to improve the transportation efficiency.
[0106] like Figure 1 As shown, the planning method specifically includes the following steps:
[0107] (1) Based on the digital warehouse model, the warehouse is divided into K small intervals, each of which represents a storage interval point. The AGV is set to start from the initial position, transport the goods to the target storage interval position, and return to the initial position after the task is completed. A multi-target path mathematical model is constructed;
[0108] The purpose of dividing the warehouse into multiple small areas is to efficiently manage the different types, sizes and quantities of goods in the warehouse. Each storage area is dedicated to storing specific goods, and each storage area has coordinates for identification and positioning. The goods arriving at the dock are unloaded and sorted by the staff and then sent to a specific warehouse storage area. The AGV's driving path is to find the shortest path between these small areas to ensure that the AGV can complete the transportation task efficiently and accurately.
[0109] In the present invention, a multi-objective path mathematical model based on a digital warehouse model is constructed to minimize the travel distance of AGV and improve transportation efficiency. First, by defining decision variables to indicate whether the AGV visits each interval node in the warehouse, an objective function is established to minimize the travel distance of the AGV, while considering constraints to ensure that each node is visited only once and to prevent the occurrence of sub-rings.
[0110] Specifically, assuming that the area of the terminal warehouse is 1000 meters × 500 meters, the warehouse entrance is located at one end of the long side, and the loading and unloading area is located at the other end, the warehouse is divided into K small areas. The initial position of the AGV transport operation path is P start , the target position is P goal , there are K storage intervals, m transportation tasks, and M AGVs; the coordinate position of the storage interval point is represented by P i =(x i ,y i ),i∈[1,K], then the transportation path of any AGV is expressed as
[0111] The multi-objective path mathematical model is:
[0112]
[0113] Among them, the objective function min{·} represents minimizing the AGV transportation path distance; d(·) represents the Euclidean distance; represents the first storage interval point position passed by the zth AGV when performing the kth transportation task; i and j represent random numbers selected in [1, K-1]; It represents the target storage interval point position when the zth AGV performs the kth transportation task; It represents the two-dimensional coordinates of any storage interval point i and storage interval point j when the zth AGV performs the kth transportation task; represents the Euclidean distance between storage interval point i and storage interval point j at the kth transportation task;
[0114]
[0115] And i,j∈[1,K-1]
[0116] Among them, (x i ,y i ) represents the two-dimensional coordinates of the storage interval point i, (x j ,y j ) represents the two-dimensional coordinates of the storage interval point j;
[0117] Define the constraints as:
[0118]
[0119] in, It means that when the zth AGV performs any kth task, it can only be performed by one AGV; It means that each AGV can only perform one task; Indicates that the load capacity of the zth AGV must be greater than the weight of the kth transport task each time, c z represents the load capacity of the zth AGV, ω k represents the weight of the kth transport task; P k represents the priority of the kth transport task, Indicates the priority of the k-th transport task; A z represents the available time of the zth AGV, Indicates judging the availability of each AGV.
[0120] (2) Based on the multi-objective path mathematical model constructed in step (1), the rapidly expanding random tree algorithm RRT is used to find N feasible paths from the initial position to the target position for the AGV transportation operation. The flow chart is as follows: Figure 2 The specific implementation process is as follows:
[0121] Assuming that the path planning space of AGV transportation operation is P, it is necessary to plan the AGV transportation operation from the initial position P start To the target position P goal The feasible path between is defined as follows:
[0122]
[0123] Where G represents the Gth target location node; p(t) represents the tth location node in the feasible path; P free =P / P obj , P free Indicates barrier-free walkable area, P obj represents the obstacle area; p(0) = P start represents the initial position node; p(G) represents the target position node and p(G)∈P goal ;
[0124] P start As the starting point of AGV transportation operation, a random tree T is established and used as the root node, P goal As the target point of AGV transportation operation; each cycle generates a random point P through random sampling rand , in the random tree T, calculate the relationship between all nodes and the random point P generated in the current loop rand The distance between
[0125]
[0126] Among them, d rand,i Represents other nodes and random points P rand The distance between rand,x ,P rand,y ) represents a random point P rand The horizontal and vertical coordinates of (p i,x ,p i,y ) represents other nodes p i The horizontal and vertical coordinates of
[0127] Traverse all nodes and calculate their intersection with the random point P rand The distance between them, find the node P with the smallest distance near , denoted as P near = argmin{d rand,i}; Find P near Then continue to P near With P rand Connection direction extension L limit After the length is obtained, the new node P new ;
[0128] Use global adaptive step size and set the step size L limit The step value is the measurement of the motion trajectory of the AGV. The step value indicator should be appropriately set to avoid the situation where the step length is too large and cannot enter the obstacle-dense area, and the step length is too small and causes useless search in the obstacle-free area;
[0129]
[0130] in, represents the initial adaptation global step size; M size represents the distance between the initial point and the target point; u1 represents the global complexity coefficient of the environment;
[0131] After detecting obstacles near the node and obtaining the local complexity coefficient u2, each node has a corresponding adaptive step size, and a new node is obtained by expanding with the new step size;
[0132] P new =|P near -Prand | / |P near -P rand |u2+P near
[0133] Among them, P new represents the new node after step exploration; P near represents the nearest node nearby; P rand Indicates that random sampling generates random points; u2 represents the local complexity coefficient.
[0134] In exploring new nodes P new In the path of, collision detection is performed; if P near , P new and P near To P new The points between them are in the obstacle space P obj or with P obj If they intersect, they are considered invalid extension points;
[0135]
[0136] Regenerate a new random point P in the next cycle new , add the new node into the random tree T through collision detection; iterate to the newly added node P in the random tree T new Equal to the target point P goal When the self P start To P goal A feasible collision-free path.
[0137] In the RRT algorithm planning, the path obtained after randomly generating points in the search space is a continuous broken line segment, with poor path quality and many redundant nodes. Therefore, a fourth-order cubic B-spline curve is further used to smooth the path and delete redundant nodes.
[0138] The k-order B-spline curve formula is:
[0139]
[0140] Where w represents the parameter variable; P(w) represents the control point on the curve corresponding to the parameter w; n represents the number of control points; P i represents the i-th control point of a given curve; B i,k (w) represents the k-order B-spline basis function of the i-th control point;
[0141]
[0142] Among them, w,w i ,w i+1 Represents a series of control nodes; B i,1(w) represents the 1st-order B-spline basis function of the i-th control point; B i,k-1 represents the i-th k-1 order B-spline basis function; B i+1,k-1 represents the i+1th k-1th order B-spline basis function.
[0143] The expression of the fourth-order cubic B-spline curve is:
[0144]
[0145] Among them, P i-1 ,P i ,P i+1 ,P i+2 Represents the i-1, i, i+1, i+2th control points of a given curve.
[0146] When the path nodes are given, a series of spatial sequence points that satisfy the B-spline interpolation can be obtained through the above formula, thereby constructing an interpolation curve and obtaining a smooth path for the AGV.
[0147] (3) The crown porcupine optimization algorithm (CPO) and the sparrow optimization algorithm (SSA) are combined, and N feasible paths are used as the initial solution of the CPO-SSA algorithm to optimize the optimal path of the AGV and ensure that the path distance is minimized.
[0148] Each individual in the CPO-SSA algorithm is regarded as a potential feasible transportation path, and its path length is the target fitness value. The process of solving the AGV transportation operation of the terminal warehouse using the CPO-SSA algorithm is the process of achieving the shortest path. First, according to the N initial feasible transportation paths generated by the improved RRT algorithm, these paths are used as the initial solution of the algorithm, and then the CPO-SSA algorithm is continuously iterated and optimized to finally obtain the optimal solution, which is the optimal path for the AGV transportation operation of the terminal warehouse. Through repeated iterations, the CPO-SSA algorithm can gradually approach the shortest solution of the feasible path in the search space.
[0149] According to the N feasible paths generated by the improved RRT algorithm, the CPO-SSA improved optimization algorithm is used to define the feasible path as the solution space of the algorithm, and each individual represents a feasible path. The present invention uses the CPO-SSA optimization algorithm to solve the optimal value of the feasible path. The flow chart is as follows: Figure 3 The specific implementation process is as follows:
[0150] (301) Population initialization and population update using cyclic population reduction method
[0151] First, set the population size of the CPO-SSA algorithm N, that is, N feasible paths; the maximum number of iterations T max ; Convergence factor α; Minimum population size N min ;
[0152] The population is randomly initialized, and the formula is as follows:
[0153]
[0154] in, Represents the i-th possible solution in the search solution space; represents the upper boundary of the search solution space, Represents the lower boundary of the search solution space; represents a random vector between [0,1]; N represents the size of the population, that is, the number of candidate solution individuals;
[0155] The initial population can be expressed as follows:
[0156]
[0157] Among them, x i,j represents the jth position of the ith solution; d represents the dimension of the given problem, d = 2;
[0158] The f(·) function is introduced to represent the fitness value of the individual, which represents the path length; the fitness vector of the individual is expressed as:
[0159]
[0160] The cyclic population reduction method (CPR) is further used to continue updating the population to accelerate the convergence speed while maintaining the diversity of the population. During the optimization process, some individual candidate solutions are extracted from the population to accelerate the convergence speed and obtained again in the population to improve diversity and avoid falling into the local minimum.
[0161] The loop determines the number of times the process is executed during the optimization process based on the loop variable T. The specific formula is as follows:
[0162]
[0163] Among them, N new Represents the size of the newly generated population; N min Represents the minimum number of newly generated populations; N represents the original population size; t represents the current number of iterations; % represents the remainder or modulus operator; T represents the variable parameter used to determine the number of loop cycles.
[0164] (302) Global Exploration Phase
[0165] A normal distribution is used for preliminary global exploration, and in the newly generated population N new The position of each individual All are in the search space, select an individual As the initial reference solution position at the tth iteration; use normal distribution to generate random value τ1 to control the individual position update, τ1∈(-1,1);
[0166] The individual position update formula is as follows:
[0167]
[0168] in, represents the position of the i-th individual solution at the t+1-th iteration; represents the position of the i-th individual solution at the t-th iteration; τ2 represents a random number between [0,1]; Indicates the best solution position of the current t-th iteration; is a vector generated by an individual solution position of the current t-th iteration and an individual solution position randomly selected from the population, serving as the initial reference solution position at the t-th iteration;
[0169] Continue to search the area randomly and update individual positions;
[0170] Introducing a binary vector Used to determine the position of individual solutions With reference solution position When the distance is close, When the distance is far,
[0171] The specific formula for updating the individual's position is as follows:
[0172]
[0173] Among them, τ3 represents a random number between [0,1]; represents the position of a randomly selected individual solution in the population; r1, r2 are random integers between [1, N];
[0174] Use the finder in the SSA optimization algorithm to explore the target and select 10% to 20% of individuals with higher fitness values As the discoverer, it is responsible for searching for the optimal solution. The discoverer's position update formula is as follows:
[0175]
[0176] in, represents the new position updated by the i-th individual in the t+1th iteration; represents the position of the i-th individual in the t-th iteration of the discoverer with a higher fitness value; α represents the convergence factor, α∈(0,1); Q represents a random number that obeys a normal distribution; L represents a matrix of size 1×d, each element is 1, and d represents the dimension; R2 represents the warning value; ST represents the safety value;
[0177] When R2<ST, it means that the discoverer has found a suitable solution in the surrounding area, and the individual enters the area near the discoverer to conduct a large-scale search mode;
[0178] When R2≥ST, it means that some discoverers have not found a suitable solution, so individuals need to quickly continue searching in other areas.
[0179] (303) Local Search Development Phase
[0180] Introducing a directional control factor Used to influence the search direction of the algorithm; introduce γ t As a defense factor, it is used to control the selection of exploration areas at different iteration stages; at the same time, a diffusion factor is introduced By adjusting The size of controls the diffusion direction and intensity of the search, further affecting the search direction and scope of the algorithm; when When is large, the algorithm searches around the current individual solution position to find a better solution; when When it is smaller, the algorithm searches between the current individual and the random individual to expand the search range;
[0181] The specific formula for updating the individual's position is as follows:
[0182]
[0183] Among them, r3 represents a random integer greater than 1, represents the position of a randomly selected individual solution in the population; τ3 represents a random number between [0,1];
[0184]
[0185] in, Represents a random value to avoid falling into the local optimal solution;
[0186]
[0187] Among them, rand represents a random number between [0,1];
[0188]
[0189] Where exp(·) represents the exponential function; Represents the fitness value of the position of the i-th individual solution at the t-th iteration; Represents the sum of the fitness values of all individual solution positions in the tth iteration; ∈ represents a very small positive number to avoid the situation where the denominator is 0;
[0190]
[0191] in, represents the global optimal position of the tth iteration; represents the global worst position of the tth iteration; β represents the step size and direction control parameter; λ represents a random number, λ∈[-1,1]; f i Indicates the current sparrow's fitness value; f g represents the appropriate value of the global optimal position; f ω represents the appropriate value of the global worst position; ε represents a very small constant;
[0192] When f i >f g When f i =f g When , it means that the individual is in the population, but there is also the possibility of danger approaching, and it needs to move closer to other individuals;
[0193] The final position update adjusts the position update formula of each individual according to the difference between the current fitness value of individual i and the global optimal solution to find a better solution;
[0194] The position update formula is as follows:
[0195]
[0196] Among them, τ4 and τ5 represent random numbers; It represents the movement factor of individual i in the current iteration t, which is used to control the movement of individuals in the solution space, helping the algorithm to escape from the local optimum and gradually approach the global optimum.
[0197] (304) Repeat the above global exploration and local search development steps until the termination condition is met and the maximum number of iterations is reached; finally, the individual with the highest fitness in the current population is returned, that is, the optimal path for the AGV transportation operation of the terminal warehouse is finally found.
[0198] In the present invention, the CPO-SSA algorithm can perform global search to find potential better solutions and local search to refine the path during the iteration process, and finally find the optimal path for the AGV transportation operation of the terminal warehouse, thereby improving the transportation efficiency and management efficiency of the terminal warehouse. The optimal path planning reduces the energy consumption of the AGV and reduces the transportation cost.
[0199] An embodiment of the present invention also provides a planning system for the AGV transport operation path of a terminal warehouse, including a memory and a processor, wherein a computer program is stored in the memory. When the computer program is executed by the processor, the steps of the planning method for the AGV transport operation path of a terminal warehouse described in the embodiment of the present invention are implemented.
Claims
1. A method for planning a transport operation path of an AGV in a terminal warehouse, characterized in that: include: (1) Based on the digital warehouse model, the warehouse is divided into K small intervals, each of which represents a storage interval point. The AGV is set to start from the initial position, transport the goods to the target storage interval position, and return to the initial position after the task is completed. A multi-target path mathematical model is constructed; (2) According to the multi-target path mathematical model, the rapidly expanding random tree algorithm (RRT) is used to find N feasible paths from the initial position to the target position for the AGV transportation operation; (3) The crown porcupine optimization algorithm (CPO) and the sparrow optimization algorithm (SSA) are combined, and N feasible paths are used as the initial solution of the CPO-SSA algorithm to optimize the optimal path of the AGV and ensure that the path distance is minimized.
2. The method for planning the AGV transport operation path in a terminal warehouse according to claim 1 is characterized in that: Step (1) comprises: The initial position of the AGV transport operation path is P start , the target position is P goal There are m transport tasks and M AGVs in total; the storage interval point coordinates are represented by P i =(x i ,y i ),i∈[1,K], then the transportation path of any AGV is expressed as The multi-objective path mathematical model is: Among them, the objective function min{·} represents minimizing the AGV transportation path distance; d(·) represents the Euclidean distance; represents the first storage interval point position passed by the zth AGV when performing the kth transportation task; i and j represent random numbers selected in [1, K-1]; represents the Euclidean distance between storage interval point i and storage interval point j at the kth transportation task; It represents the two-dimensional coordinates of any storage interval point i and storage interval point j when the zth AGV performs the kth transportation task; It represents the target storage interval point position when the zth AGV performs the kth transportation task; Define the constraints as: in, It means that when the zth AGV performs any kth task, it can only be performed by one AGV; It means that each AGV can only perform one task; Indicates that the load capacity of the zth AGV must be greater than the weight of the kth transport task each time, c z represents the load capacity of the zth AGV, ω k represents the weight of the kth transport task; P k represents the priority of the kth transport task, Indicates the priority of the k-th transport task; A z represents the available time of the zth AGV, Indicates judging the availability of each AGV.
3. The method for planning the AGV transport operation path in a terminal warehouse according to claim 2 is characterized in that: i≠j and i,j∈[1,K-1] Among them, (x i ,y i ) represents the two-dimensional coordinates of the storage interval point i, (x j ,y j ) represents the two-dimensional coordinates of the storage interval point j; 4. The method for planning the AGV transport operation path in a terminal warehouse according to claim 2 is characterized in that: Step (2) comprises: Assuming that the path planning space of AGV transportation operation is P, it is necessary to plan the AGV transportation operation from the initial position P start To the target position P goal The feasible path between can be expressed by the following formula: p(t)∈P free :p(0)=P start →p(G)∈P goal Where G represents the Gth target location node; p(t) represents the tth location node in the feasible path; P free =P / P obj , P free Indicates barrier-free walkable area, P obj represents the obstacle area; p(0) = P start represents the initial position node; p(G) represents the target position node and p(G)∈P goal ; P start As the starting point of AGV transportation operation, a random tree T is established and used as the root node, P goal As the target point of AGV transportation operation; each cycle generates a random point P through random sampling rand , in the random tree T, calculate the relationship between all nodes and the random point P generated in the current loop rand The distance between Among them, d rand,i Represents other nodes and random points P rand The distance between rand,x ,P rand,y ) represents a random point P rand The horizontal and vertical coordinates of (p i,x ,p i,y ) represents other nodes p i The horizontal and vertical coordinates of Traverse all nodes and calculate their differences from the random point P rand The distance between them, find the node P with the smallest distance near , denoted as P near = argmin{d rand,i }; Find P near Then continue to P near With P rand Connection direction extension L limit After the length is obtained, the new node P new ; Use global adaptive step size and set the step size L limit The step value is the measurement of the motion trajectory of the AGV. The step value indicator should be appropriately set to avoid the situation where the step length is too large and cannot enter the obstacle-dense area, and the step length is too small and causes useless search in the obstacle-free area; in, represents the initial adaptation global step size; M size represents the distance between the initial point and the target point; u1 represents the global complexity coefficient of the environment; After detecting obstacles near the node and obtaining the local complexity coefficient u2, each node has a corresponding adaptive step size, and a new node is obtained by expanding with the new step size; P new =|P near -P rand | / |P near -P rand |u2+P near In exploring new nodes P new In the path of, collision detection is performed; if P near , P new and P near To P new The points between them are in the obstacle space P obj or with P obj If they intersect, they are considered invalid extension points; Regenerate a new random point P in the next cycle new , add the new node into the random tree T through collision detection; iterate to the newly added node P in the random tree T new Equal to the target point P goal When the self P start To P goal A feasible collision-free path.
5. The method for planning the AGV transport operation path in a terminal warehouse according to claim 4 is characterized in that: A fourth-order cubic B-spline curve is used for path smoothing.
6. The method for planning the AGV transport operation path in a terminal warehouse according to claim 5 is characterized in that: The k-order B-spline curve formula is: Where w represents the parameter variable; P(w) represents the control point on the curve corresponding to the parameter w; n represents the number of control points; P i represents the i-th control point of a given curve; B i,k (w) represents the k-order B-spline basis function of the i-th control point; Among them, w,w i ,w i+1 Represents a series of control nodes; B i,1 (w) represents the 1st-order B-spline basis function of the i-th control point; B i,k-1 represents the i-th k-1 order B-spline basis function; B i+1,k-1 represents the i+1th k-1th order B-spline basis function; The expression of the fourth-order cubic B-spline curve is: Among them, P i-1 ,P i ,P i+1 ,P i+2 Represents the i-1, i, i+1, i+2th control points of a given curve; When the path nodes are given, a series of spatial sequence points that satisfy the B-spline interpolation can be obtained, thereby constructing an interpolation curve and obtaining a smooth path for the AGV.
7. The method for planning a transport operation path of an AGV in a terminal warehouse according to any one of claims 4 to 6, characterized in that: Step (3) includes: (301) Population initialization and population update using cyclic population reduction method First, set the population size of the CPO-SSA algorithm N, that is, N feasible paths; the maximum number of iterations T max ; Convergence factor α; Minimum population size N min ; The f(·) function is introduced to represent the fitness value of the individual, which represents the path length; The cyclic population reduction method is further used to continue updating the population to accelerate the convergence speed while maintaining population diversity; the cycle is based on the loop variable T to determine the number of times the process is executed during the optimization process. The specific formula is as follows: Among them, N new Represents the size of the newly generated population; N min Indicates the minimum number of newly generated populations; N indicates the original population size; t indicates the current number of iterations; % indicates the remainder or modulus operator; T indicates the variable parameter used to determine the number of loop cycles; (302) Global Exploration Phase A normal distribution is used for preliminary global exploration, and in the newly generated population N new The position of each individual All are in the search space, select an individual As the initial reference solution position at the tth iteration; use normal distribution to generate random value τ1 to control the individual position update, τ1∈(-1,1); The individual position update formula is as follows: in, represents the position of the i-th individual solution at the t+1-th iteration; represents the position of the i-th individual solution at the t-th iteration; τ2 represents a random number between [0,1]; Indicates the best solution position of the current t-th iteration; is a vector generated by an individual solution position of the current t-th iteration and an individual solution position randomly selected from the population, serving as the initial reference solution position at the t-th iteration; Continue to search the area randomly and update individual positions; Introducing a binary vector Used to determine the position of individual solutions With reference solution position When the distance is close, When the distance is far, The specific formula for updating the individual's position is as follows: Among them, τ3 represents a random number between [0,1]; represents the position of a randomly selected individual solution in the population; r1, r2 are random integers between [1, N]; Use the finder in the SSA optimization algorithm to explore the target and select a certain proportion of individuals with higher fitness values As the discoverer, it is responsible for searching for the optimal solution. The discoverer's position update formula is as follows: in, represents the new position updated by the i-th individual in the t+1th iteration; represents the position of the i-th individual in the t-th iteration of the discoverer with a higher fitness value; α represents the convergence factor, α∈(0,1); Q represents a random number that obeys a normal distribution; L represents a matrix of size 1×d, each element is 1, and d represents the dimension; R2 represents the warning value; ST represents the safety value; When R2<ST, it means that the discoverer has found a suitable solution in the surrounding area, and the individual enters the area near the discoverer to conduct a large-scale search mode; When R2 ≥ ST, it means that some discoverers have not found a suitable solution, so individuals need to quickly continue searching in other areas; (303) Local Search Development Phase Introducing a directional control factor Used to influence the search direction of the algorithm; introduce γ t As a defense factor, it is used to control the selection of exploration areas at different iteration stages; at the same time, a diffusion factor is introduced By adjusting The size of controls the diffusion direction and intensity of the search, further affecting the search direction and scope of the algorithm; when When is large, the algorithm searches around the current individual solution position to find a better solution; when When it is smaller, the algorithm searches between the current individual and the random individual to expand the search range; The specific formula for updating the individual's position is as follows: Among them, r3 represents a random integer greater than 1, represents the position of a randomly selected individual solution in the population; τ3 represents a random number between [0,1]; in, Represents a random value to avoid falling into the local optimal solution; Among them, rand represents a random number between [0,1]; Where exp(·) represents the exponential function; Represents the fitness value of the position of the i-th individual solution at the t-th iteration; Represents the sum of the fitness values of all individual solution positions in the tth iteration; ∈ represents a very small positive number to avoid the situation where the denominator is 0; in, represents the global optimal position of the tth iteration; represents the global worst position of the tth iteration; β represents the step size and direction control parameter; λ represents a random number, λ∈[-1,1]; f i Indicates the current sparrow's fitness value; f g represents the appropriate value of the global optimal position; f ω represents the appropriate value of the global worst position; ε represents a very small constant; When f i >f g When f i =f g When , it means that the individual is in the population, but there is also the possibility of danger approaching, and it needs to move closer to other individuals; The final position update adjusts the position update formula of each individual according to the difference between the current fitness value of individual i and the global optimal solution to find a better solution; The position update formula is as follows: Among them, τ4 and τ5 represent random numbers; Represents the movement factor of individual i in the current t-th iteration, which is used to control the movement of individuals in the solution space, helping the algorithm to jump out of the local optimum and gradually approach the global optimum; (304) Repeat the above global exploration and local search development steps until the termination condition is met and the maximum number of iterations is reached; finally, the individual with the highest fitness in the current population is returned, that is, the optimal path for the AGV transportation operation of the terminal warehouse is finally found.
8. The method for planning the AGV transport operation path in a terminal warehouse according to claim 7, characterized in that: Step (301) comprises: The population is randomly initialized, and the formula is as follows: in, Represents the i-th possible solution in the search solution space; represents the upper boundary of the search solution space, Represents the lower boundary of the search solution space; represents a random vector between [0,1]; The initial population can be expressed as follows: Among them, x i,j represents the jth position of the ith solution; d represents the dimension of the given problem, d = 2; The fitness vector of an individual is expressed as:
9. The method for planning the AGV transport operation path in a terminal warehouse according to claim 7, characterized in that: In step (302), 10% to 20% of individuals with higher fitness values are selected. As a discoverer, it is responsible for searching for the optimal solution.
10. A planning system for AGV transport operation paths in a terminal warehouse, comprising a memory and a processor, wherein a computer program is stored in the memory, characterized in that: When the computer program is executed by a processor, the steps of the method for planning a terminal warehouse AGV transport operation path according to any one of claims 1 to 9 are implemented.
Citation Information
Cited By
Automatic guided vehicle (AGV) trajectory planning-based intelligent transportation method and system for lyocell fiber raw materials
CN119916768A