Multi-objective constrained evolutionary unmanned aerial vehicle path planning method based on hash table approximate calculation
By optimizing UAV path planning through hash table approximation calculation and multi-objective constrained evolutionary algorithm, the problems of high computational complexity and low efficiency of existing algorithms in complex environments are solved, and efficient and real-time path planning is achieved.
Patent Information
- Application Number
- CN202411567462.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-05
- Publication Date
- 2025-11-04
- Estimated Expiration
- 2044-11-05
AI Technical Summary
Existing UAV path planning algorithms suffer from high computational complexity and low efficiency in complex environments, and are prone to getting trapped in local optima, making it difficult to achieve real-time and efficient path planning.
A multi-objective constrained evolutionary method based on hash table approximation is adopted. The objective and constraint values are stored in hash cells, B-spline sampling is used to determine path points, and the path objective function and constraint function are combined for planning. The multi-objective evolutionary algorithm is used to optimize the path.
It significantly reduces computing resource consumption, improves the efficiency and response speed of path planning, ensures the smoothness and adaptability of paths, and meets real-time requirements.
Smart Images

Figure CN119440053B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of unmanned aerial vehicle (UAV) path planning technology, and more specifically to a multi-objective constrained evolutionary UAV path planning method based on hash table approximation calculation. Background Technology
[0002] With the rapid development of drone technology, drones have been widely used in various fields such as smart agriculture, resource exploration, disaster relief, and military operations. The maneuverability and stability of drones enable them to perform tasks in various complex environments. However, how to efficiently and safely plan flight paths in these environments has become one of the focal points of current drone technology research.
[0003] Although the path planning problem for unmanned aerial vehicles (UAVs) has been extensively studied and some progress has been made, existing methods still face many challenges in handling path planning in complex environments. Traditional path planning methods are mainly divided into three categories: node optimization-based path planning algorithms, sampling-based path planning algorithms, and artificial intelligence-based path planning algorithms.
[0004] Node-optimized path planning algorithms, such as Dijkstra's algorithm and A* algorithm, find the optimal path by constructing a loss function and utilizing heuristic information. However, these algorithms have high computational complexity when dealing with large-scale node searches and are prone to getting trapped in local optima, making it difficult to find ideal paths in complex environments.
[0005] Sampling-based path planning algorithms, such as the RRT (Fast Random Tree) algorithm, construct a route map by randomly sampling the environment and search for feasible paths from the starting point to the destination. However, in complex environments, these algorithms struggle to generate effective route maps and also suffer from computational inefficiency and local optima.
[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 UAV path planning due to their ease of operation and ability to effectively avoid local optima. However, existing solutions often require long computation times 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-mentioned 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 approximation calculation, in order to design an innovative hash table-based approximation calculation strategy for objective and constraint values, thereby quickly approximating the objective and constraint values in UAV flight path planning, so as to improve the efficiency of the entire path planning.
[0009] To achieve the above objectives, the present invention adopts the following technical solution:
[0010] A multi-objective constrained evolutionary UAV path planning method based on hash table approximation includes:
[0011] S1. Obtain the three-dimensional environmental terrain of the flight area;
[0012] S2. Divide the three-dimensional environment terrain into n hash units, calculate the target value and constraint value of each hash unit and store them in a hash table;
[0013] S3. Determine path points based on 3D environmental terrain using B-spline sampling;
[0014] S4. Query the hash table to determine the target value and constraint value of each path point, and plan the UAV path by considering the path objective function and constraint function.
[0015] Preferably, in S2, the target value and constraint value of the current hash cell are calculated based on the center point of the hash cell on the terrain.
[0016] Preferably, the target value of the hash unit includes terrain collision risk, calculated using the following formula:
[0017]
[0018] In the formula, pb represents the number of path points, and mg represents the number of path points AP. j After being projected onto the horizontal plane, with the corresponding projection point as the center, d safe The number of projected points that intersect with the terrain grid points in a circular region of radius d. safe Indicates the safe distance, d j,k This represents the distance between the j-th path point and the k-th projection point;
[0019] The constraints of the hash cell include the altitude above ground and the maximum flight altitude, where...
[0020] The formula for calculating takeoff altitude is:
[0021]
[0022] In the formula, z' j , h represents the flight altitude of the UAV at the j-th waypoint and the elevation of the terrain below that waypoint, respectively. min Indicates the minimum altitude at which the drone should maintain flight.
[0023] The formula for calculating the maximum flight altitude is:
[0024]
[0025] h 4j =max(z′) j -h max ,0)
[0026] In the formula, h max This indicates the maximum permissible flight altitude for the drone.
[0027] As a preferred embodiment, in S3, path points are determined using B-spline sampling, including determining path points based on control points on the B-spline curve using the following formula;
[0028]
[0029] In the formula, (x' j ,y' j ,z' j (x) represents the coordinates of the path point. j ,y j ,z j ) represents the coordinates of the control points, cb represents the number of control points, pb represents the number of path points, and B j,d (·) represents the basis function of the j-th segment of a B-spline curve of order d, defined in the domain [0, cb+d], where d is the degree of the B-spline curve, reflecting the smoothness of the curve, and t i This represents the (i+1)th sample value among the pb+1 equally spaced sample values within the domain.
[0030] Preferably, in S4, the objective function for the path is the total path length, expressed as:
[0031]
[0032] In the formula, AP j This represents the j-th path point of the UAV;
[0033] The path constraint function includes constraints on the flight bank angle and flight turn angle, where,
[0034] The flight slope constraint function is:
[0035]
[0036] In the formula, S j Indicates the flight slope of the drone, (x′) j ,y' j ,z' j () represents the coordinates of the path points; These represent the maximum allowable climb gradient and the minimum allowable dive gradient for the drone between the two waypoints, respectively.
[0037] The turning angle constraint function is:
[0038]
[0039] h 2j =max(Δθ) j ,0)
[0040] Where, Δθ j =θ max -θ(B j,j-1 B j+1,j ),B j,j-1 It is a path point AP j To AP j-1 The vector, θ(B) j,j-1 B j+1,j ) is vector B j,j-1 and B j+1,j The included angle.
[0041] Preferably, the maximum gradient and the minimum allowable dive gradient are obtained by the following formulas:
[0042]
[0043] In the formula, (x' j ,y' j ,z' j ) represents the coordinates of the path points.
[0044] Preferably, in S4, a constrained multi-objective evolutionary algorithm is used to plan the UAV path, and the steps include:
[0045] S41. Using the paths formed by the waypoints as individuals, initialize the main population P1 and the auxiliary population P2.
[0046] S42. Calculate the fitness of individuals in the main population P1 and the auxiliary population P2 respectively;
[0047] S43. Based on individual fitness, perform genetic operators on the main population P1 to generate a subpopulation O1; and perform genetic operators on the auxiliary population P2 to generate a subpopulation O2;
[0048] S44. Merge the main population P1 and subpopulations O1 and O2, filter based on fitness and update the main population P1; merge the auxiliary population P2 and subpopulations O1 and O2, filter based on fitness and update the main population P2.
[0049] S45. Determine if the termination condition has been met. If not, return to S42 to continue iterating. If yes, output the solution in the main population P1.
[0050] Preferably, in S42, the fitness of individuals in the main population P1 and the auxiliary population P2 is calculated, including:
[0051] S421. Traverse all pairs of individuals in the population and determine the dominant individual x based on the individual constraint values. i The number of individuals R(i); including:
[0052] Comparing individuals with x i and x j The constraint value, if individual x i The constraint value is greater than individual x j If the constraint value is 0, then individual x j Dominant individual x i If the constraint values are equal, compare the target values for individual x. j Superior to individual x i At that time, individual x j Dominant individual x i ;
[0053] And determining the population density based on individual target values, including:
[0054] Calculate individual pair x i and the distance from it The most recent individual The Euclidean distance is used to determine the individual density based on the distance value;
[0055] D(i)=(1 / (dis+2))
[0056] In the formula, D(i) represents the individual density, and dis represents the Euclidean distance between pairs of individuals. The +2 is to avoid the case where the distance is zero.
[0057] S422, Based on the dominant individual x i The number of individuals and the density of individuals are determined by the following formula to determine individual fitness;
[0058] Fit(i) = R(i) + D(i).
[0059] As a preferred option, when calculating the fitness of individuals in the auxiliary population P2, the constraint value of the individuals is set to 0.
[0060] Preferably, the steps for generating the subpopulation in S43 include:
[0061] S431. Based on individual fitness, a binary tournament selection method is used to select 3N / 2 individuals to be placed in the mating pool;
[0062] S432, Release the first to N / 2 mating pools into the mating pool. (N / 2)+1 to N liberated elements N+1 to 3N / 2 liberated elements The DE / rand / 1 operator is then executed to generate N / 2 child values o. The expression for the DE / rand / 1 operator is as follows:
[0063]
[0064] In the formula, δ i =0.5 is the scaling factor for the i-th individual, r is a random number in the interval [0,1], and Cr=1 is the crossover probability;
[0065] S433. When the independent variable of the offspring population violates the boundary conditions, the following boundary conditions shall be used for repair:
[0066]
[0067] In the formula, L i and R i These are the lower and upper bounds of the i-th decision variable, respectively. i Let i represent the i-th decision variable for individual o;
[0068] S434. Perform a polynomial mutation operation on each child 'o'. The expression for the polynomial mutation operator is as follows:
[0069]
[0070] In the formula, η = 20 is the distribution index, and ν is a random number in the interval [0,1].
[0071] As a preferred embodiment, in S44, the main population is updated after screening based on fitness, and the steps include:
[0072] Individuals with a fitness value less than 1 in the population are designated as candidates for the next generation.
[0073] Sort the data in ascending order and select the top N / 2 individuals as the next generation. Specifically, this includes:
[0074] If the number of candidate individuals is less than N / 2, the individuals in the population are sorted in ascending order according to fitness, and the top 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 fitness to reduce the number to N / 2 individuals.
[0075] As can be seen from the above technical solution, this invention discloses a multi-objective constrained evolutionary UAV path planning method based on hash table approximation calculation. Compared with the prior art, this invention can significantly reduce the consumption of computing resources and improve the response speed of path planning while ensuring the optimality of UAV paths, thus meeting the requirements of real-time performance and practicality. Specifically, the advantages of this application are:
[0076] 1) Path smoothness: By using B-spline curves to represent the flight path of the UAV, this invention ensures the smoothness of the generated path, thereby meeting the requirements of UAV dynamic constraints.
[0077] 2) Rapid evaluation technology: This invention proposes a hash approximation 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) High efficiency and adaptability: This application has a fast evaluation speed and strong adaptability, and can be effectively tested in different scenarios and tasks, showing superior performance compared with other existing methods. Attached Figure Description
[0079] To more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on the provided drawings without creative effort.
[0080] Figure 1 This is a flowchart of the multi-objective constrained evolutionary UAV path planning method based on hash table approximation calculation of the present invention;
[0081] Figure 2 This is a three-dimensional environmental terrain diagram of the present invention;
[0082] Figure 3 This is a schematic diagram illustrating the method of dividing terrain into several hash units according to hash intervals and determining the center point of each hash unit according to the present invention. Detailed Implementation
[0083] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0084] This invention discloses a multi-objective constrained evolutionary UAV path planning method based on hash table approximation calculation, such as... Figure 1 The steps include:
[0085] S1. Obtain the three-dimensional environmental terrain of the flight area;
[0086] S2. Divide the three-dimensional environment terrain into n hash units, calculate the target value and constraint value of each hash unit and store them in a hash table;
[0087] S3. Determine path points based on 3D environmental terrain using B-spline sampling;
[0088] S4. Query the hash table to determine the target value and constraint value of each path point, and plan the UAV path by considering the path objective function and constraint function.
[0089] The innovation of this invention lies in addressing the problem of slow computation speed caused by the large number of path points and complex evaluation functions in UAV path planning research. It proposes an efficient evolutionary algorithm framework based on an approximate evaluation model for UAV path planning. By utilizing the fast mapping characteristics of hash functions, it can significantly improve the efficiency of UAV path evaluation, thereby accelerating the convergence speed of the algorithm.
[0090] In one exemplary embodiment, the execution process of each step is as follows:
[0091] Step S1: Obtain the three-dimensional environmental terrain of the flight area;
[0092] In this embodiment, the implementation details for constructing the three-dimensional environmental terrain of the UAV flight area are as follows:
[0093] A virtual simulation environment for the UAV flight area can be constructed using MATLAB; or a terrain generation function can be designed to construct the three-dimensional terrain of the flight area, with the corresponding mathematical expression being:
[0094]
[0095] Among them, ψ1, ψ2, ψ3, ψ4, ψ5, ψ6 and ψ7 are control parameters used to simulate the terrain of the three-dimensional environment. They work together to generate a smooth terrain surface with mountain and valley features, and (x,y,z) are the coordinates of the terrain points in the ground coordinate system.
[0096] Let ψ1, ψ2, ψ3, ψ4, ψ5, ψ6, and ψ7 have values of 7.8, 4.5, 3.5, 2.5, 3.5, 2.5, and 1.5 respectively. Determine the three-dimensional environmental terrain, such as... Figure 2 As shown; further determine the sampling accuracy of terrain points.
[0097] Step S2: Divide the three-dimensional environment terrain into n hash units, calculate the target value and constraint value of each hash unit and store them in a hash table;
[0098] In this embodiment, refer to Figure 3 First, determine the target value and constraint value of the hash cell, that is, let the target value of the hash cell include terrain collision risk. The calculation formula is:
[0099]
[0100] In the formula, pb represents the number of path points, and d safe This represents the safe distance, and mg represents the path point AP. j After being projected onto the horizontal plane, with the corresponding projection point as the center, dsafe The number of projected points that intersect with the terrain grid points in a circular region of radius d. j,k This represents the distance between the j-th path point and the k-th projection point;
[0101] Let the constraint values of the hash cell include the altitude above the ground and the maximum flight altitude, where
[0102] The formula for calculating takeoff altitude is:
[0103]
[0104] In the formula, z' j , h represents the flight altitude of the UAV at the j-th waypoint and the elevation of the terrain below that waypoint, respectively. min Indicates the minimum altitude at which the drone should maintain flight.
[0105] The formula for calculating the maximum flight altitude is:
[0106]
[0107] h 4j =max(z′) j -h max ,0)
[0108] In the formula, h max This indicates the maximum permissible flight altitude for the drone.
[0109] As a preferred embodiment, in S3, path points are determined using B-spline sampling, including determining path points based on control points on the B-spline curve using the following formula;
[0110]
[0111] In the formula, (x' j ,y' j ,z' j (x) represents the coordinates of the path point. i ,y j ,z j ) represents the coordinates of the control points, cb represents the number of control points, pb represents the number of path points, and B j,d (·) denotes the basis function of the j-th segment of a B-spline curve of order d, defined in the domain [0, cb+d], where d is the degree of the B-spline curve, and t i This represents the (i+1)th sample value among the pb+1 equally spaced sample values within the domain.
[0112] In one exemplary embodiment, before executing step S2, the above calculation function is first initialized, including defining the UAV's starting point (40, 250, 1.5), ending point (250, 70, 1), objective function dimension od = 2, decision space dimension vd = 3, and safety distance d. safe =10. Minimum flight altitude h min =2. Maximum flight altitude h max =20, Maximum turning angle θ max Initialization of parameters such as =2π / 3.
[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 cell at its center point on the terrain. 2j , flight altitude constraint value h 3j and the maximum safe height constraint value h 4j .
[0114] Furthermore, in a hash unit For example, its center point on the terrain is denoted as 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) Based on the center point z j The collision risk f2 is calculated from the distances to all terrain points De within the safe distance, using the following formula:
[0116]
[0117] Among them De k =(de k,1 ,de k,2 ,de k,3 ),d safe This represents the safe distance, where mg represents the distance from the center point z. j After being projected onto the horizontal plane, with that point as the center and a radius of d... safe Within the circular area, there are exactly mg of the number of projection points that intersect with the terrain grid points.
[0118] 2) Based on the center point z j height z j,3 The height of the terrain below the center point and the minimum takeoff flight altitude hmin The calculated flight altitude constraint value h is obtained. 3j The formula is as follows:
[0119]
[0120] in It is the height of the terrain below the center point.
[0121] 3) Based on the center point z j height z j,3 With the highest flight altitude h max The maximum safe height constraint value h4 is calculated using the following formula:
[0122] h 4j =max(z) j,3 -h max ,0)
[0123] Step S3: Determine path points based on 3D environmental terrain using B-spline sampling;
[0124] In this embodiment,
[0125] 1) The path is represented by a d-order B-spline curve, which is determined by a set of control points within the flight area. The control points are represented as follows:
[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 control points is initialized to cb = 5;
[0128] 2) The path is represented by path points uniformly sampled on the B-spline curve. This set of path points is denoted as: 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) Based on the properties of B-spline curves, the relationship between path points and control points is established by the following formula:
[0130]
[0131] Among them, B j,d (·) denotes the basis function of the j-th segment of a B-spline curve of order d, with its domain being [0, cb+d], t iThis represents the (i+1)th sampled value among pb+1 equally spaced sampled values in the domain, satisfying... B j,d (·) The recursive definition is as follows:
[0132]
[0133] Where, r j ∈R={r0,r1,…,r k} represents the j-th node of a 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 UAV path by considering the path objective function and constraint function.
[0136] In this embodiment, the path objective function is the total path length, expressed as:
[0137]
[0138] In the formula, AP j This represents the j-th path point of the UAV;
[0139] The path constraint function includes constraints on the flight bank angle and flight turn angle, where,
[0140] The flight slope constraint function is:
[0141]
[0142] In the formula, S j Indicates the flight slope of the drone, (x′) j ,y′ j ,z′ j () represents the coordinates of the path points; These represent the maximum allowable climb gradient and the minimum allowable dive gradient for the drone between the two waypoints, respectively.
[0143] The turning angle constraint function is:
[0144]
[0145] h 2j =max(Δθ) j ,0)
[0146] Where, Δθ j =θ max -θ(B j,j-1 B j+1,j ),B j,j-1 It is a path point AP jTo AP j-1 The vector, θ(B) j,j-1 B j+1,j ) is vector B j,j-1 and B j+1,j The included angle.
[0147]
[0148] Preferably, the maximum gradient and the minimum allowable dive gradient are obtained by the following formulas:
[0149]
[0150] In a preferred embodiment, a constrained multi-objective evolutionary algorithm is used to plan the path of the UAV, the steps of which include:
[0151] S41. Using the paths formed by the waypoints as individuals, initialize the main population P1 and the auxiliary population P2.
[0152] S42. Calculate the fitness of individuals in the main population P1 and the auxiliary population P2 respectively;
[0153] S43. Based on individual fitness, perform genetic operators on the main population P1 to generate a subpopulation O1; and perform genetic operators on the auxiliary population P2 to generate a subpopulation O2;
[0154] S44. Merge the main population P1 and subpopulations O1 and O2, filter based on fitness and update the main population P1; merge the auxiliary population P2 and subpopulations O1 and O2, filter based on fitness and update the main population P2.
[0155] S45. Determine if the termination condition has been met. If not, return to S42 to continue iterating. If yes, output the solution in the main population P1.
[0156] In step S41, the paths formed by the path points are first used as individuals to initialize the main population P1 and the auxiliary population P2. Specifically, this includes initializing the main and auxiliary population sizes N / 2 = 50, the number of generations Gen = 1, and the maximum number of iterations FES = 60000.
[0157] P1 = {x1, x2, ..., x} N / 2}
[0158] P2={x1,x2,…,x N / 2}
[0159] x = (CL0,CL1,…CL) cb-1 ) T
[0160] Simultaneously calculate the target value and constraint value for each individual in the population, including determining the path point AP by querying the hash table.j The target values and constraint values, and determining the path target values and constraint values based on the path objective function and constraint function, and obtaining 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 in 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 S(i) of individuals dominated by each individual. For each individual x i , calculate the number of other individuals it dominates;
[0165] 2) Calculate the number R(i) of individuals that dominate each individual. For each individual x i , calculate the number of other individuals that dominate it.
[0166] And determining 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, set the constraint value of the individual to 0.
[0174] S43. Based on the individual fitness, perform genetic operators on the main population P1 to generate the offspring population O1; and perform genetic operators on the auxiliary population P2 to generate the offspring 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 independent variable of the offspring population violates the boundary conditions, repair the independent variable of the individual p that violates the boundary conditions, including if o i The value of the i-th decision variable is less than the lower bound L i Set it to twice the size of L. i Subtract the current value; if it is greater than the upper bound R i Set it to twice the R i Subtract the current value; the corresponding formula is:
[0180]
[0181] In the formula, L i and R i These are the lower and upper bounds of the i-th decision variable, respectively. i Let i represent the i-th decision variable for individual o;
[0182] S434. Perform a polynomial mutation operation on each child 0, and then return to step S433. In this embodiment, the expression of the polynomial mutation operator is as follows:
[0183] o i =o i +Δd
[0184]
[0185] In the formula, η = 20 is the distribution index, and ν is a random number in the interval [0,1].
[0186] S44. Merge the main population P1 and subpopulations O1 and O2 into R1, update the main population P1 after filtering R1 based on fitness, and merge the auxiliary population P2 and subpopulations O1 and O2 into R2, update the main population P2 after filtering R2 based on fitness; including:
[0187] 1) Calculate the fitness of individuals in R1 and R2 respectively, and mark individuals 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 if the termination condition has been met. If not, return to S42 to continue iterating. If yes, output all non-dominant individuals in the main population P1. These are the optimized drone path sets.
[0190] To further demonstrate the advantages of the constrained multi-objective evolutionary algorithm based on hash table approximation proposed in this invention for UAV path planning, the following section will briefly introduce the performance differences between the method of this invention and the original algorithm in comparative experiments.
[0191] As shown in Table 1, multiple test problems were generated by adjusting the parameters of the terrain generation function and the multi-objective optimization problem.
[0192] Table 1
[0193]
[0194] The initialization uses a constrained multi-objective evolutionary algorithm based on hash table approximation for UAV path planning, N:=100, p m :=cb, η:=20.
[0195] The MTCMO, CCMO, and BICO algorithms of the proposed UAV path planning method based on a constrained multi-objective evolutionary algorithm with hash table approximation will be compared with their original algorithms on the test set. The initialization parameter settings of these original algorithms are consistent with those described above.
[0196] Table 2: The original algorithm and the algorithm using the method of this invention were run on three test problems to obtain the average and standard deviation of the HV values. The suffix "_n" indicates the original algorithm, and the suffix "_r" indicates the algorithm using the method of this invention.
[0197] Table 2
[0198]
[0199]
[0200] Table 3: Average and standard deviation of the running time of each original algorithm and the algorithm using the method of this invention in three test problems. The suffix "_n" indicates the original algorithm, and the suffix "_r" indicates the algorithm using the method of this invention.
[0201] Table 3
[0202]
[0203]
[0204] Table 4: The ratio of the time taken by the algorithm using the method of the present invention to that of each original algorithm in the three test problems. The original algorithm is represented by the suffix "_n", and the algorithm using the method of the present invention is represented by the suffix "_r".
[0205] Table 4
[0206]
[0207] The experimental performance of each algorithm was evaluated using two commonly used metrics for evaluating multi-objective optimization algorithms: hypervolume matrix (HV) and running time (T). A larger HV and a smaller T indicate better experimental performance.
[0208] Tables 2 and 3 show the HV and T values obtained by running the original algorithm and the algorithm using the method of the present invention on each test problem, respectively. Table 4 shows the ratio of the running time and the HV of the original algorithm and the algorithm using the method of the present invention on the three test problems.
[0209] As can be seen from Table 3, the average running time of the algorithm using the method of this invention (with the suffix "_r") on all test problems (CMOP1, CMOP2, CMOP3) is significantly lower than the average running time of the original algorithm (with the suffix "_n"). Specifically, taking CCMO as an example:
[0210] CMOP1: The average running time of the original algorithm is 3.193679E+03 seconds, while the average running time of the method of this invention 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 method of this invention 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 method of this invention is 2.152778E+02 seconds.
[0213] This indicates that the method of the present invention is faster in obtaining Pareto optimal solutions because it requires far less time than the comparative methods.
[0214] As shown in Table 2, the algorithm using the method of this invention achieved HV values approximately equal to the original algorithm on all test problems, indicating good convergence performance. Specifically, taking CCMO as an example:
[0215] CMOP1: The average HV value of the method of this invention is 1.287137E+05, while that of the original algorithm is 1.189676E+05.
[0216] CMOP2: The average HV value of the method of this invention is 1.373612E+05, while that of the original algorithm is 1.202984E+05.
[0217] CMOP3: The average HV value of the method of this invention 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 significant reduction in running time indicates that the method of the present invention can achieve a solution quality close to that of the original algorithm in a shorter time, demonstrating good convergence performance.
[0219] By analyzing the data in Table 4, we can conclude that the algorithm using the method of this invention has a significant improvement in running time compared to the original algorithm, while only making a minor compromise in solution quality. Specifically, taking CCMO as an example:
[0220] CMOP1: The running time ratio is 14.9:1 and the HV ratio is 1.08:1, indicating that the running time of the method of the present invention 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, indicating that the running time of the method of the present invention 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, indicating that the running time of the method of the present invention is 1 / 10.9 of the original algorithm, while the algorithm performance is only 1 / 1.17.
[0223] This further confirms that the method of the present invention is faster in obtaining feasible solutions.
[0224] The experimental results above demonstrate that the algorithm of this invention is faster in obtaining feasible solutions for UAV path planning and exhibits good convergence performance. This method can effectively handle UAV path planning problems under multiple constraints and still obtain safe and efficient UAV flight paths with less computational resources.
[0225] The various embodiments in this specification are described in a progressive manner, with each embodiment focusing on its differences from other embodiments. Similar or identical parts between embodiments can be referred to interchangeably. For the apparatus disclosed in the embodiments, since they correspond to the methods disclosed in the embodiments, the description is relatively simple; relevant parts can be referred to the method section.
[0226] The above description of the disclosed embodiments enables those skilled in the art to make or use the invention. Various modifications to these embodiments will be readily apparent to those 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 invention. Therefore, the invention is not to be limited to the embodiments shown herein, but is to be accorded 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 approximation, characterized in that, include: S1. Obtain the three-dimensional environmental terrain of the flight area; S2. Divide the three-dimensional environment terrain into n hash units. Based on the center point of the hash unit on the terrain, calculate the target value and constraint value of each hash unit and store them in the hash table. S3. Determine path points based on 3D environmental terrain using B-spline sampling; S4. Query the hash table to determine the target value and constraint value of each path point. Simultaneously, consider the path objective function and constraint function, and use a constrained multi-objective evolutionary algorithm to plan the UAV path. The steps include: S41. Using the paths formed by the waypoints as individuals, initialize the main population P1 and the auxiliary population P2; this includes calculating the target value and constraint value of each individual in the population, and determining the waypoint AP by querying the hash table. j The target and constraint values are determined based on the path objective function and constraint function. The target and constraint values of each individual in the population are obtained by summing the target and constraint values of each path point and the target and constraint values of the path. S42. Calculate the fitness of individuals in the main population P1 and the auxiliary population P2 respectively; S43. Based on individual fitness, perform genetic operators on the main population P1 to generate a subpopulation O1; and perform genetic operators on the auxiliary population P2 to generate a subpopulation O2; S44. Merge the main population P1 and subpopulations O1 and O2, filter based on fitness and update the main population P1; merge the auxiliary population P2 and subpopulations O1 and O2, filter based on fitness and update the main population P2. S45. Determine if the termination condition has been met. If not, return to S42 to continue iterating. If yes, output the solution in the main population P1.
2. The UAV path planning method according to claim 1, characterized in that, The target value of the hash unit includes terrain collision risk, calculated using the following formula: In the formula, pb represents the number of path points, and mg represents the number of path points AP. j After being projected onto the horizontal plane, with the corresponding projection point as the center, d safe The number of projected points that intersect with the terrain grid points in a circular region of radius d. safe Indicates the safe distance, d j,k This represents the distance between the j-th path point and the k-th projection point; The constraints of the hash cell include the altitude above ground and the maximum flight altitude, where... The formula for calculating takeoff altitude is: In the formula, z ' j This represents the flight altitude of the UAV at the j-th path point. h represents the elevation of the terrain below the j-th path point. min Indicates the minimum altitude at which the drone should maintain flight. The formula for calculating the maximum flight altitude is: In the formula, h max This indicates the maximum permissible flight altitude for the drone.
3. The UAV path planning method according to claim 1, characterized in that, In S3, path points are determined using B-spline sampling, including determining path points based on control points on the B-spline curve using the following formula; In the formula, (x' j ,y' j ,z' j (x) represents the coordinates of the path point. j ,y j ,z j ) represents the coordinates of the control points, cb represents the number of control points, pb represents the number of path points, and B j,d (·) denotes the basis function of the j-th segment of a B-spline curve of order d, with its domain [0, cb+d], where d is the degree of the B-spline curve, and t i This represents the (i+1)th sample value among the pb+1 equally spaced sample values within the domain.
4. The UAV path planning method according to claim 1, characterized in that, In S4, the objective function for the path is the total path length, expressed as: In the formula, pb represents the number of path points, and AP j This represents the j-th path point of the UAV; The path constraint function includes constraints on the flight bank angle and flight turn angle, where, The flight slope constraint function is: In the formula, S j Indicates the flight slope of the drone, (x' j ,y' j ,z' j () represents the coordinates of the path points; These represent the maximum allowable climb gradient and the minimum allowable dive gradient for the drone between the two waypoints, respectively. The turning angle constraint function is: in, B j,j-1 It is a path point AP j To AP j-1 The vector, It is vector B j,j-1 and B j+1,j The included angle, That is the maximum turning angle.
5. The UAV path planning method according to claim 4, characterized in that, The maximum allowable gradient and the minimum allowable gradient are obtained by the following formulas: In the formula, (x' j ,y' j ,z' j ) represents the coordinates of the path points.
6. The UAV path planning method according to claim 1, characterized in that, In S42, the fitness of individuals in the primary population P1 and the secondary population P2 is calculated, including: S421. Traverse all pairs of individuals in the population and determine the dominant individual x based on the individual constraint values. i The number of individuals R(i), and the population density determined based on the individual target value. S422, Based on the dominant individual x i The number of individuals and their density determine individual fitness.
7. The UAV path planning method according to claim 1, characterized in that, The steps for generating a subpopulation in S43 include: S431. Based on individual fitness, a binary tournament selection method is used to select 3N / 2 individuals to be placed in the mating pool; S432, Release the first to N / 2 mating pools into the mating pool. (N / 2)+1 to N liberated elements N+1 to 3N / 2 liberated elements The DE / rand / 1 operator is then executed to generate N / 2 child values o. The expression for the DE / rand / 1 operator is as follows: In the formula, δ i is the scaling factor for the i-th individual, r is a random number in the interval [0,1], and Cr is the crossover probability; S433. When the independent variable of the offspring population violates the boundary conditions, the following boundary conditions shall be used for repair: In the formula, L i and R i These are the lower and upper bounds of the i-th decision variable, respectively. i Let i represent the i-th decision variable for individual o; S434. Perform a polynomial mutation operation on each child 'o'. The expression for the polynomial mutation operator is as follows: In the formula, η is the distribution index, and v is a random number in the interval [0,1].
8. The UAV path planning method according to claim 1, characterized in that, In S44, the main population is updated after selection based on fitness. The steps include: Individuals with a fitness value less than 1 are marked as candidates for the next generation. They are sorted in ascending order, and the top N / 2 individuals are selected as the next generation.
Citation Information
Patent Citations
Path planning method and system based on visibility graph and D*Lite algorithm
CN117419738A
Device and method for performing localization of a robot device
WO2024112255A1