Multi-target constraint evolution unmanned aerial vehicle path planning method based on hash table approximate calculation
Through the multi-objective constraint evolution method based on hash table approximation calculation, the calculation complexity and real-time problems of drone path planning in complex environments are solved, and efficient, smooth and real-time path planning is achieved.
Patent Information
- Application Number
- CN202411567462.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-05
- Publication Date
- 2025-02-14
- Estimated Expiration
- 2044-11-05
AI Technical Summary
The existing drone path planning algorithm has high computational complexity when dealing with complex environments, which is easy to fall into local optimization, resulting in low efficiency of path planning and insufficient real-time performance.
The multi-objective constrained evolutionary drone path planning method based on hash table approximation calculation is adopted, and the target value and constraint value are quickly approximately calculated through the hash table, and the path planning process is optimized by combining the B-spline curve and the constrained multi-objective evolution algorithm.
It significantly reduces computing resource consumption, improves the response speed of path planning, ensures the optimality and smoothness of paths, and meets the needs of real-time and practicality.
Smart Images

Figure CN119440053A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of unmanned aerial vehicle path planning, and more specifically to a multi-objective constrained evolutionary unmanned aerial vehicle path planning method based on hash table approximate calculation. Background Art
[0002] With the rapid development of drone technology, drones have been widely used in many fields such as smart agriculture, resource exploration, disaster relief and military activities. The maneuverability and stability of drones enable them to perform tasks in various complex environments. However, how to plan flight paths efficiently and safely in these environments has become one of the focuses of current drone technology research.
[0003] Although the UAV path planning problem has been widely studied and has made some progress, existing methods still face many challenges when dealing with path planning in complex environments. Traditional path planning methods can be mainly divided into three categories: path planning algorithms based on node optimization, path planning algorithms based on sampling, and path planning algorithms based on artificial intelligence.
[0004] Node optimization-based path planning algorithms, such as the Dijkstra algorithm and the A* algorithm, construct a loss function and use heuristic information to find the optimal path. However, these algorithms have high computational complexity when processing large-scale node searches and are prone to falling into local optimality, making it difficult to find an ideal path in complex environments.
[0005] Sampling-based path planning algorithms, such as the RRT (Rapid Random Tree) algorithm, construct a roadmap by randomly sampling the environment and searching for feasible paths from the starting point to the end point. However, in complex environments, such algorithms have difficulty generating effective roadmaps and also face the problems of low computational efficiency and local optimality.
[0006] Artificial intelligence-based path planning algorithms, such as swarm intelligence algorithms and reinforcement learning, have gradually become a research hotspot in the field of drone path planning because of their ease of operation and ability to effectively avoid local optimal solutions. However, existing solutions often require a long computing time when dealing with path planning problems, which limits the real-time performance of path planning.
[0007] Therefore, there is an urgent need to develop a new and efficient path planning algorithm to overcome the above technical problems. Summary of the invention
[0008] In view of this, the present invention provides a multi-objective constrained evolutionary UAV path planning method based on hash table approximate calculation, so as to design an innovative hash table-based approximate calculation strategy for target values and constraint values, so as to quickly approximate the target and constraint values in UAV flight path planning, so as to improve the efficiency of the entire path planning.
[0009] In order to achieve the above object, the present invention adopts the following technical solution:
[0010] A multi-objective constrained evolutionary UAV path planning method based on hash table approximate calculation, comprising:
[0011] S1. Obtain the three-dimensional environment terrain of the flight area;
[0012] S2, dividing the three-dimensional environment terrain into n hash units, calculating the target value and constraint value of each hash unit and storing them in the hash table;
[0013] S3, determining the path points by using B-spline sampling based on the three-dimensional environment terrain;
[0014] S4. Query the hash table to determine the target value and constraint value of each path point, and plan the UAV path considering the path target function and constraint function.
[0015] Preferably, in S2, the target value and constraint value of the current hash unit are calculated according to the center point of the hash unit on the terrain.
[0016] Preferably, the target value of the hash unit includes the terrain collision risk, which is calculated as follows:
[0017]
[0018] In the formula, pb represents the number of path points, mg represents the AP of the path points j After projecting onto the horizontal plane, take the corresponding projection point as the center, d safe The number of projection points that intersect the terrain grid points in a circular area with a radius of d safe Indicates the safety distance, d j,k Represents the distance between the jth path point and the kth projection point;
[0019] The constraint values of the hash unit include the flight altitude above the ground and the maximum flight altitude, where
[0020] The calculation formula of flight altitude from the ground is:
[0021]
[0022] In the formula, z' j , denote the flight altitude of the UAV at the jth path point and the height of the terrain below the path point, h min Indicates the minimum flying altitude above the ground that the drone should maintain;
[0023] The maximum flight altitude calculation formula is:
[0024]
[0025] h 4j =max(z′ j -h max ,0)
[0026] In the formula, h max Indicates the maximum allowed flight altitude of the drone.
[0027] Preferably, in S3, the path points are determined by using B-spline sampling, including determining the path points according to the control points on the B-spline curve by the following formula;
[0028]
[0029] In the formula, (x' j ,y' j ,z' j ) is the coordinate of the path point, (x j ,y j ,z j ) is the coordinate of the control point, cb represents the number of control points, pb represents the number of path points, B j,d (·) represents the basis function of the jth segment of the d-order B-spline curve, with a domain of [0, cb+d], d is the degree of the B-spline curve, reflecting the smoothness of the curve, t i Represents the i+1th sampling value among the pb+1 equally spaced sampling values in the domain.
[0030] Preferably, in S4, the path objective function is the total path length, expressed as:
[0031]
[0032] Where AP j represents the jth path point of the UAV;
[0033] The path constraint function includes constraints on the flight slope and flight turning angle, where:
[0034] The flight slope constraint function is:
[0035]
[0036] In the formula, S j represents the flight slope of the UAV, (x′ j ,y' j ,z' j ) are the path point coordinates; They represent the maximum climbing slope and the minimum diving slope allowed between two path points of the UAV respectively;
[0037] The turning angle constraint function is:
[0038]
[0039] h 2j =max(Δθ j ,0)
[0040] Among them, Δθ j =θ max -θ(B j,j-1 ,B j+1,j ),B j,j-1 It is a waypoint AP j To AP j-1 vector, θ(B j,j-1 ,B j+1,j ) is the vector B j,j-1 and B j+1,j Angle.
[0041] Preferably, the maximum climbing slope and the minimum allowable diving slope are obtained by the following formulas:
[0042]
[0043] In the formula, (x' j ,y' j ,z' j ) are the path point coordinates.
[0044] Preferably, in S4, the UAV path is planned using a constrained multi-objective evolutionary algorithm, and the steps include:
[0045] S41, using the paths formed by the path points as individuals, initialize the main population P1 and the auxiliary population P2;
[0046] S42, respectively calculating the fitness of individuals in the main population P1 and the auxiliary population P2;
[0047] S43, based on individual fitness, executing genetic operators on the main population P1 to generate sub-population O1; and executing genetic operators on the auxiliary population P2 to generate sub-population O2;
[0048] S44, merging the main population P1 and the sub-populations O1 and O2, and updating the main population P1 after screening based on fitness, and merging the auxiliary population P2 and the sub-populations O1 and O2, and updating the main population P2 after screening based on fitness;
[0049] S45, determine whether the termination condition is met, if not, return to S42 to continue iteration, if so, output the solution in the main population P1.
[0050] Preferably, in S42, calculating the fitness of individuals in the main population P1 and the auxiliary population P2 includes:
[0051] S421, traverse all pairs of individuals in the population, and determine the dominant individual x according to the individual constraint value i The number of individuals R(i); including:
[0052] Compare individual pairs x i and x j The constraint value of i The constraint value is greater than the individual x j The constraint value of individual x j Dominant individual x i , if the constraint values are equal, compare the target values, individual x j Better than individual x i When individual x j Dominant individual x i ;
[0053] And determine the individual density in the population according to the individual target value, including:
[0054] Calculate the individual pair x i and the distance from The closest individual The Euclidean distance of , and the individual density is determined based on the distance value;
[0055] D(i)=(1 / (dis+2))
[0056] In the formula, D(i) represents the individual density, dis represents the Euclidean distance between pairs of individuals, and +2 is to avoid the situation where the distance is zero;
[0057] S422, based on dominant individual x i The number of individuals and individual density are determined by the following formula to determine the individual fitness;
[0058] Fit(i)=R(i)+D(i).
[0059] Preferably, when calculating the fitness of individuals in the auxiliary population P2, the constraint value of the individuals is set to 0.
[0060] Preferably, the step of generating a subpopulation in S43 includes:
[0061] S431. Based on individual fitness, a binary tournament selection method is used to select 3N / 2 individuals and put them into the mating pool;
[0062] S432, release the 1st to N / 2nd pairs in the mating pool into (N / 2)+1 to N released N+1 to 3N / 2 free entry And execute the DE / rand / 1 operator to generate N / 2 offspring o. The expression of the DE / rand / 1 operator is as follows:
[0063]
[0064] In the formula, δ i =0.5 is the scaling factor of the ith individual, r is a random number in the interval [0,1], and Cr=1 is the crossover probability;
[0065] S433: When the offspring population independent variable violates the boundary conditions, the following boundary conditions are used for repair:
[0066]
[0067] Where, L i and R i are the lower and upper bounds of the ith decision variable, respectively. i represents the i-th decision variable of individual o;
[0068] S434. Perform a polynomial mutation operation on each offspring o. The expression of the polynomial mutation operator is as follows:
[0069]
[0070] Where η=20 is the distribution index and ν is a random number in the interval [0,1].
[0071] Preferably, in S44, the main population is updated after screening based on fitness, the steps comprising:
[0072] Mark population individuals with fitness less than 1 as candidates for the next generation;
[0073] Sort in ascending order and select the first N / 2 individuals as the next generation, including:
[0074] If the number of candidate individuals is less than N / 2, the individuals in the population are sorted in ascending order according to their fitness, and the first N / 2 individuals are selected as the next generation; if the number of candidate individuals is more than N / 2, the excess candidate individuals are truncated according to their fitness to reduce the number to N / 2 individuals.
[0075] It can be seen from the above technical solutions that the present invention discloses a multi-objective constrained evolutionary UAV path planning method based on hash table approximate calculation. Compared with the prior art, the present invention can significantly reduce the consumption of computing resources and improve the response speed of path planning while ensuring the optimality of the UAV path, so as to meet the requirements of real-time and practicality. Specifically, the advantages of the present application are:
[0076] 1) Path smoothness: By using B-spline curves to represent the flight path of the UAV, the present invention ensures the smoothness of the generated path, thereby satisfying the requirements of the UAV dynamic constraints;
[0077] 2) Fast evaluation technology: This paper proposes a hash approximate calculation technology to approximate the target value and constraint violation value of the UAV path, thereby significantly reducing the calculation cost and improving the efficiency of path planning;
[0078] 3) Efficiency and adaptability: This application has fast evaluation speed and strong adaptability, and can conduct effective experiments in different scenarios and tasks, showing excellent performance compared to other existing methods. BRIEF DESCRIPTION OF THE DRAWINGS
[0079] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on the provided drawings without paying creative work.
[0080] Figure 1 This is a flow chart of the multi-objective constrained evolutionary UAV path planning method based on hash table approximate calculation of the present invention;
[0081] Figure 2 A schematic diagram of the three-dimensional environment terrain of the present invention;
[0082] Figure 3 The present invention is a schematic diagram of a method for dividing terrain into a plurality of hash units according to hash intervals and determining the center point of the hash unit. DETAILED DESCRIPTION
[0083] The following will be combined with the drawings in the embodiments of the present invention to clearly and completely describe the technical solutions in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.
[0084] The embodiment of the present invention discloses a multi-objective constrained evolutionary UAV path planning method based on hash table approximate calculation, such as Figure 1 , the steps include:
[0085] S1. Obtain the three-dimensional environment terrain of the flight area;
[0086] S2, dividing the three-dimensional environment terrain into n hash units, calculating the target value and constraint value of each hash unit and storing them in the hash table;
[0087] S3, determining the path points by using B-spline sampling based on the three-dimensional environment terrain;
[0088] S4. Query the hash table to determine the target value and constraint value of each path point, and plan the UAV path considering the path target function and constraint function.
[0089] The innovation of this invention lies in that in order to solve the problem of slow calculation speed caused by the huge number of path points and complex evaluation functions in UAV path planning research, an efficient evolutionary algorithm framework based on the UAV path planning approximate evaluation model is proposed. By utilizing the fast mapping characteristics of hash functions, the efficiency of UAV path evaluation can be significantly improved, thereby accelerating the convergence speed of the algorithm.
[0090] In an exemplary embodiment, the execution process of each step is as follows:
[0091] Step S1, obtaining the three-dimensional environment terrain of the flight area;
[0092] In this embodiment, the implementation details of constructing the three-dimensional environment terrain of the drone flight area are as follows:
[0093] Use MATLAB to build a virtual simulation environment for the UAV flight area; or design a terrain generation function to build a three-dimensional environment terrain in the flight area. The corresponding mathematical expression is:
[0094]
[0095] Among them, ψ1, ψ2, ψ3, ψ4, ψ5, ψ6 and ψ7 are control parameters used to simulate the terrain of a three-dimensional environment. They work together to generate a smooth terrain surface with mountain and valley features, and (x, y, z) is the coordinate of the terrain point in the ground coordinate system.
[0096] Assume ψ1, ψ2, ψ3, ψ4, ψ5, ψ6 and ψ7 are 7.8, 4.5, 3.5, 2.5, 3.5, 2.5 and 1.5 respectively, and determine the three-dimensional environment terrain, such as Figure 2 As shown; further determine the sampling accuracy of terrain points.
[0097] Step S2, dividing the three-dimensional environment terrain into n hash units, calculating the target value and constraint value of each hash unit and storing them in a hash table;
[0098] In this embodiment, refer to Figure 3 , first determine the target value and constraint value of the hash unit, that is, let the target value of the hash unit include the terrain collision risk, and the calculation formula is:
[0099]
[0100] In the formula, pb represents the number of path points, d safe Indicates the safety distance, mg indicates the path point AP j After projecting onto the horizontal plane, take the corresponding projection point as the center, dsafe The number of projection points that intersect the terrain grid points in a circular area with a radius of d j,k Represents the distance between the jth path point and the kth projection point;
[0101] Let the constraint values of the hash unit include the flight height above the ground and the maximum flight height, where
[0102] The calculation formula of flight altitude from the ground is:
[0103]
[0104] In the formula, z' j , denote the flight altitude of the UAV at the jth path point and the height of the terrain below the path point, h min Indicates the minimum flying altitude above the ground that the drone should maintain;
[0105] The maximum flight altitude calculation formula is:
[0106]
[0107] h 4j =max(z′ j -h max ,0)
[0108] In the formula, h max Indicates the maximum allowed flight altitude of the drone.
[0109] Preferably, in S3, the path points are determined by using B-spline sampling, including determining the path points according to the control points on the B-spline curve by the following formula;
[0110]
[0111] In the formula, (x' j ,y' j ,z' j ) is the coordinate of the path point, (x i ,y j ,z j ) is the coordinate of the control point, cb represents the number of control points, pb represents the number of path points, B j,d (·) represents the basis function of the jth segment of the d-order B-spline curve, with a domain of [0, cb+d], d being the degree of the B-spline curve, t i Represents the i+1th sampling value among the pb+1 equally spaced sampling values in the domain.
[0112] In an exemplary embodiment, before executing step S2, the above calculation function is first initialized, including defining the drone starting point (40, 250, 1.5), the end point (250, 70, 1), the objective function dimension od = 2, the decision space dimension vd = 3, the safety distance d safe =10, minimum flight altitude h min =2, Maximum flight altitude h max =20, maximum turning angle θ max =2π / 3 and other parameters initialization.
[0113] Then, the hash table is initialized and the terrain is divided into hn hash units according to the hash interval sp = 2.5, that is, For each hash unit Calculate and store the collision risk f of the unit based on the center point of the unit on the terrain 2j , Flight altitude constraint value h 3j and the maximum safe height constraint value h 4j .
[0114] Furthermore, with a hash unit For example, its center point on the terrain is represented by z j =(z j,1 ,z j,2 ,z j,3 ), the collision risk f corresponding to this unit 2j , Flight altitude constraint value h 3j and the maximum safe height constraint value h 4j , the calculation formula is as follows:
[0115] 1) According to the center point z j The distance from all terrain points De within the safety distance is used to calculate the collision risk f2, and the formula is as follows:
[0116]
[0117] Among them k =(de k,1 ,de k,2 ,de k,3 ),d safe represents the safety distance, mg represents the center point z j After projecting onto the horizontal plane, the point is taken as the center and the radius is d. safe The number of projection points that intersect with exactly mg terrain grid points in the circular area.
[0118] 2) According to the center point z j The height z j,3 The height from the terrain below the center point and the minimum flight altitude hmin Calculate the flight altitude constraint value h 3j , the formula is as follows:
[0119]
[0120] in is the height of the terrain below the center point.
[0121] 3) According to the center point z j The height z j,3 With the maximum flight altitude h max The maximum safe height constraint value h4 is calculated as follows:
[0122] h 4j =max(z j,3 -h max ,0)
[0123] Step S3, determining the path points by using B-spline sampling based on the three-dimensional environment terrain;
[0124] In this embodiment,
[0125] 1) A d-order B-spline curve is used to represent the path, which is determined by a set of control points in the flight area. The control points are expressed as:
[0126] CL0(x0,y0,z0),CL1(x1,y1,z1),…,CL cb-1 (x cb-1 ,y cb-1 ,z cb-1 )
[0127] cb represents the number of control points; preferably, the number of initialization control points is cb=5;
[0128] 2) The path is reflected by uniformly sampled path points on the B-spline curve. This set of path points is represented by: AP0(x'0,y'0,z'0),AP1(x'1,y'1,z'1),…,AP pb (x' pb ,y' pb ,z' pb ), pb+1 represents the number of path points;
[0129] 3) Combined with the properties of the B-spline curve, the relationship between the path point and the control point is established by the following formula:
[0130]
[0131] Among them, B j,d (·) represents the basis function of the jth segment of the d-order B-spline curve, with a domain of [0, cb+d], t irepresents the i+1th sampling value among the pb+1 equally spaced sampling values in the domain, satisfying B j,d (·) The recursive definition is as follows:
[0132]
[0133] Among them, r j ∈R={r0,r1,…,r k}, represents the jth node of the B-spline curve, satisfying:
[0134]
[0135] Step S4: query the hash table to determine the target value and constraint value of each path point, and plan the drone path by considering the path target function and constraint function.
[0136] In this embodiment, the path objective function is the total path length, which is expressed as:
[0137]
[0138] Where AP j represents the jth path point of the UAV;
[0139] The path constraint function includes constraints on the flight slope and flight turning angle, where:
[0140] The flight slope constraint function is:
[0141]
[0142] In the formula, S j represents the flight slope of the UAV, (x′ j ,y′ j ,z′ j ) are the path point coordinates; They represent the maximum climbing slope and the minimum diving slope allowed between two path points of the UAV respectively;
[0143] The turning angle constraint function is:
[0144]
[0145] h 2j =max(Δθ j ,0)
[0146] Among them, Δθ j =θ max -θ(B j,j-1 ,B j+1,j ),B j,j-1 It is a waypoint AP jTo AP j-1 vector, θ(B j,j-1 ,B j+1,j ) is the vector B j,j-1 and B j+1,j Angle.
[0147]
[0148] Preferably, the maximum climbing slope and the minimum allowable diving slope are obtained by the following formulas:
[0149]
[0150] In a preferred embodiment, the constrained multi-objective evolutionary algorithm is used to plan the path of the UAV, and the steps include:
[0151] S41, using the paths formed by the path points as individuals, initialize the main population P1 and the auxiliary population P2;
[0152] S42, respectively calculating the fitness of individuals in the main population P1 and the auxiliary population P2;
[0153] S43, based on individual fitness, executing genetic operators on the main population P1 to generate sub-population O1; and executing genetic operators on the auxiliary population P2 to generate sub-population O2;
[0154] S44, merging the main population P1 and the sub-populations O1 and O2, and updating the main population P1 after screening based on fitness, and merging the auxiliary population P2 and the sub-populations O1 and O2, and updating the main population P2 after screening based on fitness;
[0155] S45, determine whether the termination condition is met, if not, return to S42 to continue iteration, if so, output the solution in the main population P1.
[0156] Among them, in step S41, firstly, the path formed by the path points is used as an individual to initialize the main population P1 and the auxiliary population P2; specifically, the size of the main population and the auxiliary population is initialized as N / 2=50, the evolutionary generation number Gen=1, and the maximum number of iterations FES=60000; that is,
[0157] P1={x1,x2,…,x N / 2}
[0158] P2={x1,x2,…,x N / 2}
[0159] x=(CL0,CL1,…CL cb-1 ) T
[0160] At the same time, the target value and constraint value of the population individuals are calculated, including determining the path point AP by querying the hash tablej The target values and constraint values, and determine the path target values and constraint values based on the path objective function and constraint function. Obtain the target values and constraint values of the population individuals by summing the target values and constraint values of each path point and the target values and constraint values of the path.
[0161] S42. Calculate the fitness of individuals in the main population P1 and the auxiliary population P2 respectively; the steps include:
[0162] S421. Traverse all pairs of individuals in the population through a double loop, and determine the dominant individual x i The number of individuals R(i);
[0163] For each pair of individuals (x i , x j )(where i < j), compare the constraint violation values of the two individuals. If the constraint violation value of individual x i is less than the constraint violation value of individual x j , then individual x i dominates individual x j ; if the constraint violation value of individual x i is greater than the constraint violation value of individual x j , then individual x j dominates individual x i ; if the constraint violation values of the two individuals are equal, then compare the target values. If individual x i is superior to individual x j in any objective function, then individual x i dominates individual x j ;
[0164] 1) Calculate the number of individuals S(i) dominated by each individual. For each individual x i , calculate the number of other individuals it dominates;
[0165] 2) Calculate the number of individuals R(i) that dominate each individual. For each individual x i , calculate the number of other individuals that dominate it.
[0166] And determine the individual density in the population according to the individual target values, including:
[0167] Calculate the Euclidean distance between any two individuals in the population, and determine the individual density based on the distance value;
[0168] For each individual x i , find the i th nearest individual to individual x ; Take x i , The Euclidean distance is denoted as dis, and then calculate x i The density D(i) of is the reciprocal of this distance value, that is
[0169] D(i) = (1 / (dis + 2))
[0170] In the formula, D(i) represents the individual x i 's density, and dis represents the Euclidean distance between individuals; where +2 is to avoid the case of zero distance.
[0171] S422. Determine the individual fitness based on the number of individuals dominated by the individual x i and the individual density according to the following formula;
[0172] Fit(i) = R(i) + D(i).
[0173] Preferably, when calculating the individual fitness in the auxiliary population P2, the constraint value of the individual is set to 0.
[0174] S43. Based on the individual fitness, perform genetic operators on the main population P1 to generate the sub-population O1; and perform genetic operators on the auxiliary population P2 to generate the sub-population O2; the steps include:
[0175] S431. Based on the individual fitness, use the binary tournament selection method to select 3N / 2 individuals and put them into the mating pool; that is, randomly select a group of individuals (x i , x j ), compare the fitness values of the individual x i and the individual x j . If Fit(i) < Fit(j), then put the individual x i into the mating pool; if Fit(i) ≥ Fit( j ), then put the individual x j into the mating pool, and continuously execute this process until the number of solutions in the mating pool is (3N / 2);
[0176] S432. Put the 1st to N / 2th solutions in the mating pool into (N / 2) + 1 to Nth solutions into N + 1 to 3N / 2th solutions into and execute the DE / rand / 1 operator to generate N / 2 offspring o. The expression of the DE / rand / 1 operator is as follows:
[0177]
[0178] In the formula, δ i = 0.5 is the scaling factor of the i-th individual, r is a random number in the interval [0, 1], and Cr = 1 is the crossover probability;
[0179] S433, when the offspring population independent variable violates the boundary condition, repair the independent variable of the individual p that violates the boundary condition, including if o i The value of the i-th decision variable is less than the lower bound L i , set it to 2 times L i Subtract the current value; if it is greater than the upper bound R i , set it to 2 times R i Subtract the current value; the corresponding formula is:
[0180]
[0181] Where, L i and R i are the lower and upper bounds of the ith decision variable, respectively. i represents the i-th decision variable of individual o;
[0182] S434, perform a polynomial mutation operation on each offspring o, and then return to execute step S433; in this embodiment, the expression of the polynomial mutation operator is as follows:
[0183] o i =o i +Δd
[0184]
[0185] Where η=20 is the distribution index and ν is a random number in the interval [0,1].
[0186] S44, merging the main population P1 and the subpopulations O1 and O2 into R1, and updating the main population P1 after screening R1 based on fitness, and merging the auxiliary population P2 and the subpopulations O1 and O2 into R2, and updating the main population P2 after screening R2 based on fitness; including:
[0187] 1) Calculate the fitness of individuals in R1 and R2 respectively, and mark the individuals in the population with fitness less than 1 as candidates for the next generation;
[0188] 2) Update the population; if the number of candidate individuals is less than N / 2, sort the population according to fitness and select the first N / 2 individuals with the lowest fitness as the next generation; if the number of candidate individuals is more than N / 2, truncate the excess candidate individuals according to fitness to reduce to N / 2 individuals.
[0189] S45, determine whether the termination condition is met, if not, return to S42 to continue iteration, if so, output all non-dominated individuals in the main population P1, which are the optimized drone path set.
[0190] In order to further demonstrate the advantages of the constrained multi-objective evolutionary algorithm based on hash table approximate calculation proposed in the present invention in UAV path planning, the following section will briefly introduce the performance differences between the method of the present invention and the original algorithm in comparative experiments.
[0191] As shown in Table 1, multiple test problems are generated by adjusting the parameters of the generated terrain function and the multi-objective optimization problem.
[0192] Table 1
[0193]
[0194] Initialize the UAV path planning method using a constrained multi-objective evolutionary algorithm based on hash table approximate calculation, N: = 100, p m :=cb,η:=20.
[0195] The MTCMO, CCMO, and BICO algorithms of the proposed UAV path planning method using a constrained multi-objective evolutionary algorithm based on hash table approximate calculation are experimentally compared with their original algorithms on the test set, where the initialization parameter settings of these original algorithms are consistent with the description above.
[0196] Table 2: The original algorithms and the algorithms using the method of the present invention were run on three test problems to obtain the average values and standard deviations of the HV values. The suffix "_n" indicates the original algorithm, and the suffix "_r" indicates the algorithm using the method of the present invention.
[0197] Table 2
[0198]
[0199]
[0200] Table 3: The average and standard deviation of the time taken by the original algorithms and the algorithms using the method of the present invention to run on three test problems. The suffix "_n" indicates the original algorithm, and the suffix "_r" indicates the algorithm using the method of the present invention.
[0201] Table 3
[0202]
[0203]
[0204] Table 4: Ratio of the time taken by the algorithm using the method of the present invention to the original algorithms in running on three test problems. The suffix "_n" indicates the original algorithm, and the suffix "_r" indicates the algorithm using the method of the present invention;
[0205] Table 4
[0206]
[0207] The hypervolume matrix (HV) and running time (T), two indicators commonly used to evaluate multi-objective optimization algorithms, are used to evaluate the experimental performance of each algorithm. The larger the HV and the smaller the T, the better the experimental performance.
[0208] Tables 2 and 3 show the HV and T values obtained after running the original algorithms and the algorithm using the method of the present invention on each test problem. Table 4 shows the ratio of the running time and the ratio of HV of the original algorithms and the algorithm using the method of the present invention on three test problems.
[0209] It can be seen from Table 3 that the average running time of the algorithm using the method of the present invention (suffixed with "_r") on all test problems (CMOP1, CMOP2, CMOP3) is much lower than the average running time of the original algorithm (suffixed with "_n"). Taking CCMO as an example, specifically:
[0210] CMOP1: The average running time of the original algorithm is 3.193679E+03 seconds, while the average running time of the proposed method is 2.147432E+02 seconds.
[0211] CMOP2: The average running time of the original algorithm is 2.350136E+03 seconds, while the average running time of the proposed method is 2.162444E+02 seconds.
[0212] CMOP3: The average running time of the original algorithm is 2.345213E+03 seconds, while the average running time of the proposed method is 2.152778E+02 seconds.
[0213] This indicates that the proposed method is faster in obtaining the Pareto optimal solution because it requires much less time than the comparison method.
[0214] As can be seen from Table 2, the algorithm using the method of the present invention obtains HV values close to those of the original algorithm on all test problems, which indicates that its convergence performance is good. Taking CCMO as an example, specifically:
[0215] CMOP1: The HV average value of the proposed method is 1.287137E+05, while that of the original algorithm is 1.189676E+05.
[0216] CMOP2: The HV average value of the proposed method is 1.373612E+05, while that of the original algorithm is 1.202984E+05.
[0217] CMOP3: The HV average value of the proposed method is 1.402816E+05, while that of the original algorithm is 1.198961E+05.
[0218] Although the HV value of the solution obtained by the method of the present invention is slightly lower than that of the original algorithm, the running time is significantly reduced, which shows that the method of the present invention can achieve a solution quality close to that of the original algorithm in a shorter time, showing good convergence performance.
[0219] By analyzing the data in Table 4, we can conclude that the algorithm using the method of the present invention has a significant improvement in running time compared to the original algorithm, while only making a small compromise in the quality of the solution. Taking CCMO as an example, specifically:
[0220] CMOP1: The running time ratio is 14.9:1, and the HV ratio is 1.08:1, which shows that the running time of the proposed method is 1 / 14.3 of the original algorithm, while the algorithm performance is only 1 / 1.08.
[0221] CMOP2: The running time ratio is 10.9:1, and the HV ratio is 1.14:1, which shows that the running time of the proposed method is 1 / 10.9 of the original algorithm, while the algorithm performance is only 1 / 1.14.
[0222] CMOP3: The running time ratio is 10.9:1, and the HV ratio is 1.17:1, which shows that the running time of the proposed method is 1 / 10.9 of the original algorithm, while the algorithm performance is only 1 / 1.17.
[0223] This further proves that the method of the present invention is faster in obtaining feasible solutions.
[0224] The above experimental results show that the algorithm method of the present invention is faster in obtaining feasible solutions in UAV path planning and shows good convergence performance. This method can effectively handle the UAV path planning problem under multiple constraints and still obtain a safe and efficient UAV flight path while using less computing resources.
[0225] In this specification, each embodiment is described in a progressive manner, and each embodiment focuses on the differences from other embodiments. The same or similar parts between the embodiments can be referred to each other. For the device disclosed in the embodiment, since it corresponds to the method disclosed in the embodiment, the description is relatively simple, and the relevant parts can be referred to the method part.
[0226] The above description of the disclosed embodiments enables one skilled in the art to implement or use the present invention. Various modifications to these embodiments will be apparent to one skilled in the art, and the general principles defined herein may be implemented in other embodiments without departing from the spirit or scope of the present invention. Therefore, the present invention will not be limited to the embodiments shown herein, but rather to the widest scope consistent with the principles and novel features disclosed herein.
Claims
1. A multi-objective constrained evolutionary UAV path planning method based on hash table approximate calculation, characterized in that: include: S1. Obtain the three-dimensional environment terrain of the flight area; S2, dividing the three-dimensional environment terrain into n hash units, calculating the target value and constraint value of each hash unit and storing them in the hash table; S3, determining the path points by using B-spline sampling based on the three-dimensional environment terrain; S4. Query the hash table to determine the target value and constraint value of each path point, and plan the UAV path considering the path target function and constraint function.
2. The UAV path planning method according to claim 1, characterized in that: In S2, the target value and constraint value of the current hash unit are calculated according to the center point of the hash unit on the terrain.
3. The UAV path planning method according to claim 1 or 2, characterized in that: The target value of the hash unit includes the terrain collision risk, which is calculated as: In the formula, pb represents the number of path points, mg represents the AP of the path points j After projecting onto the horizontal plane, take the corresponding projection point as the center, d safe The number of projection points that intersect the terrain grid points in a circular area with a radius of d safe Indicates the safety distance, d j,k Represents the distance between the jth path point and the kth projection point; The constraint values of the hash unit include the flight altitude above the ground and the maximum flight altitude, where The calculation formula of flight altitude from the ground is: In the formula, z' j represents the flight altitude of the UAV at the jth path point, represents the height of the terrain below the jth path point, h min Indicates the minimum flying altitude above the ground that the drone should maintain; The maximum flight altitude calculation formula is: h 4j =max(z′ j -h max ,0) In the formula, h max Indicates the maximum allowed flight altitude of the drone.
4. The UAV path planning method according to claim 1, characterized in that: In S3, the path points are determined by using B-spline sampling, including determining the path points according to the control points on the B-spline curve by the following formula; In the formula, (x' j ,y' j ,z' j ) is the coordinate of the path point, (x j ,y j ,z j ) is the coordinate of the control point, cb represents the number of control points, pb represents the number of path points, B j,d (·) represents the basis function of the jth segment of the d-order B-spline curve, with a domain of [0, cb+d], d being the degree of the B-spline curve, and t i Represents the i+1th sampling value among the pb+1 equally spaced sampling values in the domain.
5. The UAV path planning method according to claim 1, characterized in that: In S4, the path objective function is the total length of the path, expressed as: Where AP j represents the jth path point of the UAV; The path constraint function includes constraints on the flight slope and flight turning angle, where: The flight slope constraint function is: In the formula, S j represents the flight slope of the UAV, (x′ j ,y′ j ,z' j ) are the path point coordinates; They represent the maximum climbing slope and the minimum diving slope allowed between two path points of the UAV respectively; The turning angle constraint function is: h 2j =max(Δθ j ,0) Among them, Δθ j =θ max -θ(B j,j-1 ,B j+1,j ),B j,j-1 It is a waypoint AP j To AP j-1 vector, θ(B j,j-1 ,B j+1,j ) is the vector B j,j-1 and B j+1,j Angle.
6. The UAV path planning method according to claim 5, characterized in that: The maximum climbing slope and the minimum allowable diving slope are obtained by the following formulas: In the formula, (x' j ,y' j ,z′ j ) are the path point coordinates.
7. The UAV path planning method according to claim 1, characterized in that: In S4, the constrained multi-objective evolutionary algorithm is used to plan the UAV path. The steps include: S41, using the paths formed by the path points as individuals, initialize the main population P1 and the auxiliary population P2; S42, respectively calculating the fitness of individuals in the main population P1 and the auxiliary population P2; S43, based on individual fitness, executing genetic operators on the main population P1 to generate sub-population O1; and executing genetic operators on the auxiliary population P2 to generate sub-population O2; S44, merging the main population P1 and the sub-populations O1 and O2, and updating the main population P1 after screening based on fitness, and merging the auxiliary population P2 and the sub-populations O1 and O2, and updating the main population P2 after screening based on fitness; S45, determine whether the termination condition is met, if not, return to S42 to continue iteration, if so, output the solution in the main population P1.
8. The UAV path planning method according to claim 7, characterized in that: In S42, the fitness of individuals in the main population P1 and the auxiliary population P2 is calculated, including: S421, traverse all pairs of individuals in the population, and determine the dominant individual x according to the individual constraint value i The number of individuals R(i) and the individual density in the population are determined according to the individual target value. S422, based on dominant individual x i The number of individuals and their density determine the individual fitness.
9. The UAV path planning method according to claim 7, characterized in that: The steps of generating subpopulations in S43 include: S431. Based on individual fitness, a binary tournament selection method is used to select 3N / 2 individuals and put them into the mating pool; S432, release the 1st to N / 2nd pairs in the mating pool into (N / 2)+1 to N released N+1 to 3N / 2 free entry And execute the DE / rand / 1 operator to generate N / 2 offspring o. The expression of the DE / rand / 1 operator is as follows: In the formula, δ i is the scaling factor of the ith individual, r is a random number in the interval [0,1], and Cr is the crossover probability; S433: When the offspring population independent variable violates the boundary conditions, the following boundary conditions are used for repair: Where, L i and R i are the lower and upper bounds of the ith decision variable, respectively. i represents the i-th decision variable of individual o; S434. Perform a polynomial mutation operation on each offspring o. The expression of the polynomial mutation operator is as follows: o i =o i +Δd Where η is the distribution index and ν is a random number in the interval [0,1].
10. The UAV path planning method according to claim 7, characterized in that: In S44, the main population is updated after screening based on fitness, and the steps include: Mark the population individuals with fitness less than 1 as candidate individuals for the next generation, sort them in ascending order, and select the first N / 2 individuals as the next generation.
Citation Information
Patent Citations
Unmanned aerial vehicle group path planning method based on improved multi-objective evolutionary algorithm
CN116126032A
AGA-UAV path planning method based on improved constraint multi-objective optimization evolutionary algorithm
CN117032274A
Path planning method and system based on visibility graph and D*Lite algorithm
CN117419738A
Path planning for an unmanned vehicle
US20200391384A1
Device and method for performing localization of a robot device
WO2024112255A1