An Unmanned Aerial Vehicle Dynamic Path Planning Method Based on the Crow Search Algorithm

Through the crow search algorithm and diverse behavioral strategies, the fitness function is dynamically adjusted, which solves the problem of path planning for drones in dynamic environments and realizes efficient path planning for drones in real environments.

CN120010537BActive Publication Date: 2025-07-18BEIJING BIG DATA ADVANCED TECH RES INST
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202510480029.2
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-04-17
Publication Date
2025-07-18
Estimated Expiration
2045-04-17

AI Technical Summary

Technical Problem

Existing path planning methods are difficult to effectively respond to highly uncertain dynamic events in real environments, such as mobile threat sources and weather changes, making it difficult for drones to arrive at target points as planned to perform tasks.

Method used

The crow search algorithm is used to initialize multiple crow populations, combine diverse behavioral strategies and dynamic adjustment of the fitness function, and update the drone path planning scheme in real time to enhance the search optimization performance of the algorithm.

Benefits of technology

It realizes that drones can respond quickly to task changes in dynamic environments, provide a variety of feasible paths, improve the real-time and effectiveness of path planning, and ensures that drones can avoid threats in a timely manner and complete tasks efficiently.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120010537B_ABST
    Figure CN120010537B_ABST
Patent Text Reader

Abstract

The embodiment of the present application discloses a method for dynamic path planning of an unmanned aerial vehicle based on the crow search algorithm, which can obtain better path planning results in a real environment. This method applies the crow search algorithm to the path planning of the unmanned aerial vehicle, adjusts the fitness function according to the currently detected dynamic events in each iteration, and designs diverse behavioral strategies for the crow population, so as to be able to quickly respond to the dynamic changes of the task scenario and timely provide a set of target path planning solutions that meet multiple optimization objectives.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the technical field of unmanned aerial vehicles, and particularly to a dynamic path planning method for unmanned aerial vehicles based on the crow search algorithm. Background Art

[0002] Path planning is one of the key technologies for controlling unmanned aerial vehicles to efficiently complete tasks. It is used to plan the optimal path for an unmanned aerial vehicle from the starting point to the target point, so as to minimize the threat cost and maximize the task completion effect.

[0003] Current path planning methods mainly focus on solving static path planning problems. However, in a real environment with high uncertainty, various dynamic events (such as moving threat sources, moving targets, and deteriorating weather conditions, etc.) will make it difficult for the unmanned aerial vehicle to reach the target point to execute the task as originally planned. That is, the current path planning methods are difficult to obtain good path planning effects in a real environment. Summary of the Invention

[0004] The purpose of the embodiments of this application is to provide a dynamic path planning method for unmanned aerial vehicles based on the crow search algorithm, which can obtain good path planning effects in a real environment.

[0005] In a first aspect, the embodiments of this application provide a dynamic path planning method for unmanned aerial vehicles based on the crow search algorithm. The method includes:

[0006] Initialize sub-populations for multiple optimization objectives respectively. Each sub-population contains N randomly initialized crows, and the positions of the crows are used to represent the path planning schemes of the unmanned aerial vehicle, where N is a positive integer;

[0007] Iteratively update the sub-archives corresponding to multiple sub-populations based on the crow search algorithm. In each iteration, adjust the fitness function according to the currently detected dynamic events, and update the position of each crow based on a diverse behavior strategy. The sub-archives are used to store the non-dominated solutions in the corresponding sub-populations;

[0008] Update the main archive according to the sub-archives obtained in each iteration, and determine the set of target path planning schemes of the unmanned aerial vehicle according to the non-dominated solutions in the main archive obtained in the last update. The main archive is used to store the non-dominated solutions in all sub-populations;

[0009] Among them, the diverse behavior strategy includes:

[0010] For the observation behavior of crows, randomly select the crows that each crow needs to follow from the crows associated with the sub-archive corresponding to each crow and the main archive;

[0011] For the attention behavior of crows, different perception probabilities are determined for different crows, and for the first crow that perceives being tracked by other crows, the first crow is set to lead the other crows that are tracking it to a random position outside the set radius range of the food storage position it remembers.

[0012] For the fatigue behavior of crows, a flight length that is negatively correlated with the memory time is determined for each crow, and the memory time is used to represent the time interval for updating the food storage position remembered by each crow based on the new position of each crow.

[0013] In the second aspect of the embodiments of the present application, a dynamic path planning device for an unmanned aerial vehicle based on a crow search algorithm is provided. The device includes:

[0014] An initialization module for initializing sub-populations for multiple optimization objectives respectively. Each sub-population contains N randomly initialized crows, and the positions of the crows are used to represent the path planning scheme of the unmanned aerial vehicle, where N is a positive integer.

[0015] A first processing module for iteratively updating the sub-archives corresponding to multiple sub-populations based on the crow search algorithm, and in each iteration, adjusting the fitness function according to the currently detected dynamic events, and updating the position of each crow based on a diverse behavior strategy. The sub-archives are used to store the non-dominated solutions in the corresponding sub-populations.

[0016] A second processing module for updating the main archive according to the sub-archives obtained in each iteration, and determining the set of target path planning schemes of the unmanned aerial vehicle according to the non-dominated solutions in the main archive obtained in the last update. The main archive is used to store the non-dominated solutions in all sub-populations.

[0017] Among them, the diverse behavior strategy includes:

[0018] For the observation behavior of crows, randomly select the crows that each crow needs to follow from the crows associated with the sub-archives corresponding to each crow and the main archive respectively.

[0019] For the attention behavior of crows, different perception probabilities are determined for different crows, and for the first crow that perceives being tracked by other crows, the first crow is set to lead the other crows that are tracking it to a random position outside the set radius range of the food storage position it remembers.

[0020] For the fatigue behavior of crows, a flight length that is negatively correlated with the memory time is determined for each crow, and the memory time is used to represent the time interval for updating the food storage position remembered by each crow based on the new position of each crow.

[0021] In the third aspect of the embodiments of the present application, a computer program product is provided, including a computer program / instructions, and when the computer program / instructions are executed by a processor, the steps of the UAV dynamic path planning method based on the crow search algorithm as described in the first aspect are implemented.

[0022] In the fourth aspect of the embodiments of the present application, a computer-readable storage medium is provided, on which a computer program / instructions are stored, and when the computer program / instructions are executed by a processor, the steps of the UAV dynamic path planning method based on the crow search algorithm as described in the first aspect are implemented.

[0023] In the fifth aspect of the embodiments of the present application, an electronic device is provided, including a memory, a processor, and a computer program stored on the memory and executable on the processor. When the processor executes the program, the steps of the UAV dynamic path planning method based on the crow search algorithm as described in the first aspect are implemented.

[0024] It can be seen from the above technical solutions that the present application applies the crow search algorithm to the UAV path planning method, and adjusts the fitness function according to the currently detected dynamic events in each iteration, so that the crow search algorithm can obtain an optimal path planning scheme that conforms to the current scenario, thereby realizing the dynamic path planning of the UAV. Moreover, the present application also designs diverse behavior strategies for the crow population to enhance the search and optimization performance of the crow search algorithm. Thus, the real-time performance and effectiveness of the crow search algorithm in solving the UAV dynamic path planning problem can be effectively improved, enabling the UAV dynamic path planning method provided by the present application to quickly respond to the dynamic changes of the task scenario and timely provide multiple feasible paths (i.e., the set of target path planning schemes) that meet the multiple optimization objectives, so as to obtain a better path planning effect in the real environment. BRIEF DESCRIPTION OF THE DRAWINGS

[0025] In order to more clearly illustrate the embodiments of the present application, the following will briefly introduce the drawings required in the embodiments. Obviously, the drawings in the following description are only some embodiments of the present application. For those of ordinary skill in the art, without creative efforts, other drawings can also be obtained based on these drawings.

[0026] Figure 1 It is a flowchart of a dynamic multi-objective optimization evolution algorithm provided by an embodiment of the present application;

[0027] Figure 2 It is an implementation flowchart of a UAV dynamic path planning method based on the crow search algorithm provided by an embodiment of the present application;

[0028] Figure 3A perception probability provided by an embodiment of the present application AP Schematic diagram of the influence effect of parameters

[0029] Figure 4 A flight length provided by an embodiment of the present application fl Schematic diagram of the influence effect of parameters

[0030] Figure 5 Schematic diagram of a split selection provided by an embodiment of the present application

[0031] Figure 6 Schematic diagram of an artificial potential field provided by an embodiment of the present application

[0032] Figure 7 Schematic diagram of a threat area provided by an embodiment of the present application

[0033] Figure 8 Schematic diagram of the dynamic path planning of an unmanned aerial vehicle in a rescue search mission scenario provided by an embodiment of the present application

[0034] Figure 9 Schematic diagram of the structure of a dynamic path planning device for an unmanned aerial vehicle based on a crow search algorithm provided by an embodiment of the present application

[0035] Figure 10 Schematic diagram of an electronic device provided by an embodiment of the present application Detailed implementation manners

[0036] Next, the technical solutions in the embodiments of the present application will be clearly and completely described in conjunction with the accompanying drawings in the embodiments of the present application. Obviously, the described embodiments are only a part of the embodiments of the present application, rather than all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative efforts belong to the protection scope of the present application.

[0037] With the in-depth development and wide application of integrated circuit and unmanned control technologies, unmanned systems represented by the unmanned aerial vehicle platform (i.e., unmanned aerial vehicle) are profoundly changing the production and lifestyle of human society, and the figure of a single unmanned system has been common in various fields.

[0038] In the civilian field, the use of drones for related applications such as oilfield inspection, fixed-point photography, and traffic patrol has achieved initial results; in the military field, drones such as Reaper, Global Hawk, and Valkyrie mainly for wide-area reconnaissance and search, and drones such as Puma, Blackjack, and Raven mainly for long-distance detection and close-range operations are all well-known. In the above-mentioned applications, path planning is one of the key technologies to control drones to complete tasks efficiently. When planning the path of a drone, many constraints need to be considered (such as platform capabilities, threat sources, mission objectives, and coordination relationships, etc.), so as to plan the optimal path from the starting point to the target point for the drone, so as to minimize the cost and maximize the mission completion effect.

[0039] The current path planning methods mainly focus on solving static path planning problems. However, in a real environment with high uncertainty, various dynamic events (such as moving threat sources, moving targets, and deteriorating weather conditions, etc.) will make it difficult for drones to reach the target point to execute tasks as originally planned. That is, in a real mission scenario with high uncertainty, dynamic emergencies will reduce the feasibility and increase the cost of drones flying along the original path, which severely limits the application of static path planning methods in actual scenarios. In this regard, how to respond to the changes in the scenario to perform dynamic path planning for drones to update the optimal path in real time is the key.

[0040] Based on the above analysis, aiming at the problem that the current path planning methods are difficult to obtain good path planning results in the real environment, the embodiment of this application provides a dynamic path planning method for drones based on the crow search algorithm, which can quickly respond to the dynamic changes of the mission scenario and timely provide multiple feasible paths that meet the multiple optimization objectives, so as to obtain good path planning results in the real environment.

[0041] First, for the convenience of understanding the technical solutions provided by this application, the main technical concepts involved in the embodiments of this application are briefly described below.

[0042] 1. Dynamic Multi-Objective Problems (DMOP)

[0043] The DMOP problem refers to a problem with multiple optimization objectives whose problem conditions or objectives change dynamically over time. It is often used to model the dynamic task allocation problem of unmanned clusters, and is often solved by methods such as artificial potential field-based methods, reinforcement learning methods, heuristic search methods, and evolutionary algorithm-based methods. Exemplarily, the minimization of DMOP is defined as follows:

[0044] Among them, x is the space R nThe decision vector in t is a time variable (i.e., time slot); in time slot t , F ( x , t ) is the objective function vector for evaluating the decision vector x . M t is the number of optimization objectives (i.e., the objective function f ). n g ( t ) and n h ( t ) are the numbers of inequality constraints and equality constraints respectively.

[0045] 2. Definitions related to DMOP

[0046] In time slot t , DMOP is transformed into static multi-objective optimization. Based on this, the following definitions are given:

[0047] Definition 1: In time slot t , given two solutions x and y , when the following constraint conditions are satisfied, then x is said to dominate y , denoted as :

[0048]

[0049] Definition 2: In time slot t , given a solution , if and only if there does not exist another solution that dominates it, i.e., , then x is a Pareto optimal solution; the set of all Pareto optimal solutions in the decision space Ω is called the Pareto solution set (ParetoSet, PS), as shown in the following formula:

[0050]

[0051] Definition 3: In time slot t , PS t The corresponding set of objective vectors is called the Pareto front (PF), as shown in the following formula:

[0052]

[0053] Based on the above definitions, dynamic multi-objective optimization aims to track the dynamically changing PS while ensuring that the solution set has good convergence and distribution. To this end, the dynamic multi-objective optimization evolutionary algorithm addresses the DMOP problem through static multi-objective optimization evolutionary algorithms, change detection, and change response processing. The flowchart of the dynamic multi-objective optimization evolutionary algorithm is shown in Figure 1 as follows.

[0054] 3. Evolutionary Algorithm

[0055] An evolutionary algorithm is a method that simulates the survival-of-the-fittest biological behaviors or natural phenomena in nature to iteratively optimize the solution to a problem. Evolutionary algorithms have been deeply studied and widely applied in many fields. Among them, the Crow Search Algorithm (CSA) is a novel evolutionary algorithm proposed in recent years. It has the advantages of few parameters, easy implementation, and strong optimization performance, and has been applied in many fields.

[0056] 4. Crow Search Algorithm

[0057] The inspiration for CSA comes from the intelligent behavior of crows: crows search for the food hidden by other birds and try to steal it. When they detect a "thief", they will mislead the "thief" to protect their food from being stolen.

[0058] Suppose there are d dimensional spaces for N crows to search. The position of each crow is represented by an n-dimensional vector , and each crow will remember the position where it hides its food . Once a crow finds a better position, it will transfer its food to this new position. During the iteration process, the crows move in the space to find better positions.

[0059] Suppose at iteration τ , crow i decides to follow crow j to steal its food. At this time, there are the following two situations:

[0060] Situation 1: Crow j does not detect that crow i is tracking it. Then, crow i will move closer to the food hiding position (hereinafter simply referred to as the memory position) remembered by crow j , and update its position from to , where:

[0061]

[0062] where is a random number uniformly distributed between 0 and 1, fl represents the crow i 's flight length (FlightLength), represents the crow j 's memory location.

[0063] Case 2: The crow j perceives that the crow i is tracking it, then the crow j will lead the crow i to fly to a random location in the search space to avoid its food being stolen.

[0064] Based on the above two cases, the position update formula of the crow i can be expressed as:

[0065]

[0066] where, r j is a random number uniformly distributed between 0 and 1, AP represents the awareness probability (AwarenessProbability) of the crow. Based on the above, the pseudocode of CSA is as follows:

[0067] Input: population size N, maximum number of iterations T, awareness probability AP ;

[0068] Output: memory location of the optimal crow;

[0069] 1. Initialize N crows;

[0070] 2. Update the memory location of each crow;

[0071] 3. while the current iteration number t < T

[0072] 4. for crow i = 1: N

[0073] 5. Randomly select a crow j;

[0074] 6. Update the position of crow i according to the above position update formula;

[0075] 7. end for

[0076] 8. Check the feasibility of the crow moving to the new position, if not satisfied, keep the original position;

[0077] 9. Evaluate the fitness of each crow at the new position;

[0078] 10. Update the memory location of the crow;

[0079] 11. end while

[0080] 12. Output the optimal solution according to the fitness of each crow at the food hiding position.

[0081] Among them, step 8 is used to check whether each crow can move to a new position. If the position exceeds the search space, the crow remains in its original position. Step 9 specifically evaluates the fitness of each crow individual at the current position according to a predefined fitness function. In step 10, if the fitness of the crow at the new position is better than its original memory position, then the crow will update its memory position.

[0082] See Figure 2 As shown, it is a flowchart of the implementation of a dynamic path planning method for an unmanned aerial vehicle based on the crow search algorithm provided by an embodiment of the present application. The method may include the following steps:

[0083] Step S101: Randomly initialize sub-populations for multiple optimization objectives. Each of the sub-populations contains N crows, and the positions of the crows are used to represent the path planning scheme of the unmanned aerial vehicle. N is a positive integer.

[0084] In specific implementation, multiple optimization objectives are determined according to the requirements of the actual task scenario, and a sub-population containing N crows is randomly initialized for each of the optimization objectives. During the random initialization process, the initial position of each randomly generated crow is determined as its initially memorized food hiding position.

[0085] Step S102: Iteratively update the sub-archives corresponding to the multiple sub-populations based on the crow search algorithm. In each round of iteration, adjust the fitness function according to the currently detected dynamic events, and update the position of each crow based on a diverse behavior strategy. The sub-archives are used to store the non-dominated solutions in the corresponding sub-populations. Among them, the diverse behavior strategy includes:

[0086] For the observation behavior of the crow, randomly select the crow that each crow needs to follow from the sub-archives corresponding to each crow and the crows associated with the main archive.

[0087] For the attention behavior of the crow, determine different perception probabilities for different crows. And for the first crow that perceives being tracked by other crows, set the first crow to lead the other crows that track it to a random position outside the set radius range of its memorized food hiding position.

[0088] For the fatigue behavior of the crow, determine a flight length that is negatively correlated with the memory time for each crow. The memory time is used to represent the time interval for updating the food hiding position memorized by each crow based on the new position of each crow.

[0089] It is understandable that the path planning problem of the unmanned aerial vehicle is a non-deterministic polynomial time (NP) hard problem, and it is difficult to obtain an exact solution to the problem within polynomial time. The added dynamic characteristics will make the problem more complex. To solve this problem, the present application models it as a DMOP problem. Considering that the evolutionary algorithm has the advantages of low computational complexity, high globality, and strong applicability, the present application selects the evolutionary algorithm (specifically, the crow search algorithm among them) to solve the dynamic path planning problem of the unmanned aerial vehicle.

[0090] In specific implementation, when the unmanned aerial vehicle executes the crow search algorithm to iteratively update the sub-archives corresponding to multiple sub-populations, the fitness function (which can be constructed according to one or more objective functions) will be adjusted according to the currently detected dynamic events. For example, when a newly detected threat area (such as a threat area related to the collision threat of a moving flying object or a threat area related to sudden weather threats) is detected, the objective function related to the threat cost in the fitness function is updated; for another example, when a newly detected target point is detected, the objective function related to the path length in the fitness function is updated; thereby enabling the crow search algorithm to obtain the optimal crow memory position (i.e., the preferred path planning scheme) that conforms to the current scenario according to the adjusted fitness function, so as to realize the dynamic path planning of the unmanned aerial vehicle.

[0091] To enhance the search and optimization ability of the crow search algorithm, the present application also designs diverse behavior strategies based on the complex behaviors of crows.

[0092] Specifically, for the observation behavior of crows, the present application designs that each crow randomly selects (such as based on roulette selection) the crow that each crow needs to follow from the crows associated with its corresponding sub-archive and the main archive, thereby simulating the behavior that crows will observe other crows and are more likely to follow those crows that hide food in better positions.

[0093] As a possible implementation manner, the randomly selecting the crow that each crow needs to follow from the crows associated with its corresponding sub-archive and the main archive respectively includes:

[0094] For each crow, when the random value r o > 0.5, select the crow that the crow needs to follow from the crows associated with the main archive;

[0095] For each crow, when the random value ro When it is ≤ 0.5, select the crow that the crow needs to follow from the crows associated with the sub-archive corresponding to the crow.

[0096] Regarding the attention behavior of crows, in this application, different perception probabilities are determined for different crows. For example, their perception probabilities are randomly distributed within a range so that the attention of different crows is different. And for the first crow that perceives being tracked by other crows, set the other crows that will track it to a random position outside the set radius range of the food storage position it remembers.

[0097] Regarding the fatigue behavior of crows, determine the flight length for each crow that is negatively correlated with the memory time. The memory time is used to represent the time interval for updating the food storage position remembered by each crow based on the new position of each crow; thus, the flight length of the crow gradually decreases as they become fatigued until it finds a better food storage position.

[0098] Optionally, when a crow flies to an inaccessible new position, limit the variables in the new position that exceed the search boundary within the boundary, and then update the position of the crow.

[0099] It should be noted that the perception probability AP and the flight length fl are the key parameters for controlling the optimization tendency of CSA. Refer to Figure 3 the schematic diagram of the influence effect of the parameters of the shown perception probability AP . In Figure 3 , r j is a random number, is the position of the crow i , is the crow j 's memory position. By increasing the AP value, the probability of the crow searching around the memory position decreases, prompting CSA to explore the search space globally (which can be determined according to the physical properties of the drone or defined artificially); in contrast, by reducing the AP value, CSA is more likely to perform local search in the neighborhood of the current good solution.

[0100] Refer to Figure 4 the schematic diagram of the influence effect of the parameters of the shown flight length fl . It illustrates the influence effect of the parameters when case 2 occurs in the above crow search algorithm. In fl , if Figure 4 the fl value is set to be less than 1, then the reachable position of the crow i (that is, the crow i in the iterationτ Position of +1 ) is restricted to the crow i In the iteration τ position and the crow j In the iteration τ memory position on the dotted line between; and if fl value is set to be greater than 1, the search range of the crow i will expand, and its next position on the dotted line may exceed .

[0101] Considering the perception probability AP and flight length fl These two key parameters play an important role in optimizing its performance, but they were originally static and not applicable to dynamic environments. Therefore, based on the complex behavior of the crow, this application designs them as dynamic parameters in diverse behavior strategies to enhance the search and optimization performance of the crow search algorithm, enabling it to be more suitable for solving the dynamic path planning problem of unmanned aerial vehicles.

[0102] Step S103: Update the main archive according to the sub-archives obtained in each round of iteration, and determine the set of target path planning schemes for the unmanned aerial vehicle according to each non-dominated solution in the main archive obtained in the last update. The main archive is used to store the non-dominated solutions in all sub-populations.

[0103] In specific implementation, an archive is used to store the better solutions in the population, that is, this archive can be regarded as a Pareto solution set. Specifically, in each round of iteration, each sub-archive (that is, the Pareto solution set corresponding to each sub-population) is updated, and then all sub-archives (that is, the Pareto solution sets corresponding to all sub-populations) are used to update the main archive (that is, the Pareto solution set corresponding to the entire population composed of all sub-populations). By decoding each non-dominated solution in the main archive obtained in the last update, the set of target path planning schemes for the unmanned aerial vehicle can be obtained. Subsequently, the unmanned aerial vehicle can select a path planning scheme according to the preference of the decision maker and fly according to this path planning scheme.

[0104] As can be seen from the above technical solution, the present application applies the crow search algorithm to the path planning method of the unmanned aerial vehicle, and adjusts the fitness function according to the currently detected dynamic events in each iteration, so that the crow search algorithm can obtain an optimal path planning scheme that conforms to the current scenario, thereby realizing the dynamic path planning of the unmanned aerial vehicle. In addition, the present application also designs diverse behavioral strategies for the crow population to enhance the search and optimization performance of the crow search algorithm. Therefore, the real-time performance and effectiveness of the crow search algorithm in solving the dynamic path planning problem of the unmanned aerial vehicle can be effectively improved, enabling the dynamic path planning method of the unmanned aerial vehicle provided by the present application to quickly respond to the dynamic changes of the task scenario and timely provide multiple feasible paths (i.e., the set of target path planning schemes) that meet the multiple optimization objectives, so as to achieve better path planning effects in the real environment.

[0105] As a possible implementation, the perception probability j of the j th crow (i.e., crow ) is determined by the following formula:

[0106]

[0107] where, represents the preset perception probability, represents the j th value in the digital sequence generated by the chaotic mapping Fuch mapping, which can be calculated by the following formula:

[0108]

[0109] where, represents the j-1 th value in the digital sequence generated by the Fuch mapping.

[0110] In specific implementation, when a crow perceives that another crow is tracking it (corresponding to the case of random number ), it (i.e., the first crow) will lead the crow tracking it to a random position outside the radius range of its memory position.

[0111] Optionally, in the case of representing the first crow as the j th crow and representing the other crows tracking the first crow as the i th crow, a random position outside the set radius range of the food hiding position memorized by the first crow is determined by the following formula:

[0112]

[0113] where, represents the jThe position of the $i$-th crow in the $k$-th iteration τ in the i random position led by the $i$-th crow, the value of the d dimension, and is used as the value of the i dimension in the position of the $i$-th crow in the τ $(k + 1)$-th iteration; d $P_{i,k}^d$ represents the value of the j dimension in the food hiding position remembered by the $i$-th crow in the τ $k$-th iteration; d $Q_{i,k}^d$ and ub d are respectively the lower bound and the upper bound of the $d$-th decision variable (i.e., the coding dimension, such as the upper and lower bounds of the yaw angle change value); d $[l_d, u_d]$ R d represents the radius of the d dimension, and $r_d$ represents the radius coefficient, which can be set to 0.05 in practical applications.

[0114] As a possible implementation, the flight length of each crow is determined by the following formula:

[0115]

[0116] where $L_{i,k}$ i represents the flight length of the $i$-th crow in the τ $k$-th iteration, $L_0$ represents the preset flight length, i $T_i$

[0117] As a possible implementation, the position of the crow includes: the yaw angle change value, the pitch angle, and the length factor corresponding to each flight segment in the path planning scheme, and each flight segment is composed of every two consecutive waypoints among the waypoints from the starting point to the target point in the path planning scheme. The three-dimensional coordinates of the j $(n + 1)$-th waypoint N j+1 from the starting point to the target point in the path planning scheme are determined by the following formula:

[0118]

[0119] where ($ x j+1 $x_{n - 1}$, y j+1 $y_{n - 1}$, z j+1) represents the j +(1)th waypoint N j+1 's three-dimensional coordinates, ( x j , y j , z j ) represents the j th waypoint N j 's three-dimensional coordinates, θ j represents the j th waypoint 's yaw angle, , α j and respectively represent the yaw angle change value, pitch angle, and length factor corresponding to the flight segment j th waypoint N j and the j +(1)th waypoint N j+1 composed, N j N j+1 The corresponding pitch angle change value, pitch angle, and length factor, R represents the maximum flight range of the UAV.

[0120] In this embodiment, n waypoints from the starting point to the target point are used to form the UAV path (i.e., the path planning scheme). Considering the actual application scenario, the range of the UAV yaw angle change value and pitch angle is set to (-π / 2, π / 2). For the length factor coding, its value range is set to (0, 0.5). When converting this coding into the actual flight segment length, it is . Since the yaw angle, pitch angle, and distance ratio (i.e., length factor) from the n -(1)th waypoint to the end point (i.e., the target point) are determined, the coding length is 3( n -1). Assuming that the total number of waypoints in the path planning scheme is 5, the coding example (i.e., the position of the crow) corresponding to this path planning scheme is shown in Table 1.

[0121] Table 1 Three-dimensional path planning coding example

[0122]

[0123] It can be understood that in each iteration, the new position of each crow is decoded to obtain its fitness. In this process, if the traditional (x, y, z) coding method is adopted, the search space will include the ranges of each axis (i.e., the x-axis, y-axis, and z-axis) of the entire environment, resulting in low search efficiency. To solve the above problems, the present application introduces the heading angle change and pitch angle in the coding design to reflect certain physical properties of the UAV and narrow the search range. Moreover, the present application also introduces the distance ratio of the maximum range (i.e., the length factor) to further narrow the coding search range, thereby effectively improving the search efficiency.

[0124] As a possible implementation manner, the method further includes:

[0125] In each iteration, for each of the crows, when the new position of the crow and the food hiding position it remembers are non-dominant to each other, and the fitness of the new position of the crow on the corresponding optimization objective is worse than that of the food hiding position it remembers, the new position of the crow is not updated to the food hiding position it remembers, but the new position of the crow is added as a non-dominated solution to the main archive and the sub-archives corresponding to other sub-populations except the sub-population to which the crow belongs;

[0126] When the amount of data stored in the sub-archive exceeds the maximum capacity of the sub-archive, a crowding-based truncation technique is used to reduce the amount of data stored in the sub-archive to retain the most diverse non-dominated solutions in the sub-archive.

[0127] In specific implementation, the present application introduces a multi-population co-evolution mechanism into the CSA to improve its population diversity and search ability. In this mechanism, each sub-population focuses on optimizing a given optimization objective and maintains a sub-archive to store the non-dominated solutions in the sub-population. Then, the solutions in the sub-archive are used to update the main archive so that the main archive stores the non-dominated solutions in the entire population; when the new position of the crow and the memory position are non-dominant to each other, but the fitness of the new position on the corresponding optimization objective is worse, the new position will not be updated to the memory position, but will be immediately introduced into the sub-archives corresponding to other sub-populations and the main archive.

[0128] When the sub-archive exceeds the pre-set maximum size (i.e., the maximum capacity), a crowding-based truncation technique is used to retain the most diverse solutions in the sub-archive, which mainly includes the following steps:

[0129] 1. Sort by objective: For the individuals in the current non-dominated layer, sort them in ascending order according to the values of each objective function (such as the path length, the degree of threat under this path, etc.).

[0130] 2. Process boundary points: Set the crowding distance part of the individuals corresponding to the minimum and maximum values of each objective function (i.e., boundary points) to infinity (or a very large value) to ensure their priority retention.

[0131] 3. Calculation of intermediate individuals: For non-boundary individuals, calculate the difference (i.e., distance) between adjacent individuals on each objective function , that is:

[0132]

[0133] where and represent the values of the i+ 1st individual and the i -1st individual on the objective function .

[0134] The total crowding distance is the sum of the contributions of all M objectives, that is: .

[0135] 4. Truncation selection process:

[0136] (1) Non-dominated sorting: Divide the population (such as a sub-population) into multiple non-dominated levels (for example, the first level is the Pareto optimal solution).

[0137] (2) Fill the population layer by layer: Starting from the optimal layer, add each layer to the new population in turn until a layer cannot be fully accommodated.

[0138] (3) Crowding distance sorting: For the layer that cannot be fully accommodated, sort by crowding distance from large to small, and select individuals with large distances until the population is filled.

[0139] Exemplarily, assume that there are 10 individuals in a non-dominated layer and 5 need to be selected. Then, it is necessary to first calculate the crowding distance of each individual, and after sorting according to the crowding distance, select the 5 individuals with the largest crowding distance (the memory positions of these 5 individuals will also be used as the corresponding sub-archives of the population). It can be understood that boundary individuals (such as the minimum value of objective function 1) will be preferentially retained due to their extremely large crowding distance, and then individuals with relatively sparse surroundings will be selected for retention.

[0140] In this embodiment, the present application promotes the co-evolution of sub-populations through the exchange of elite individuals between sub-populations (that is, in each iteration, the optimal and worst individuals corresponding to the optimization objectives are taken out from each sub-population and copied into other sub-populations), and then uses the truncation technique based on crowding distance to retain the most diverse solutions in the sub-populations.

[0141] As a possible implementation manner, the method further includes:

[0142] If a dynamic event is currently detected, in a new round of iteration, for the second crow among the N crows with a memory time mt > 1, merge the food hiding positions memorized by the second crow into the sub - archive corresponding to its sub - population;

[0143] After merging the food hiding positions memorized by the second crow into the sub - archive corresponding to its sub - population, approximate the target space of multiple sub - populations to one - dimensional, and divide the target space by the bisection method to obtain a dividing line;

[0144] For the non - dominated solutions located in the set area where the dividing line is located, generate a repulsive force in the threat area of the artificial potential field environment in response to the dynamic event to adjust the non - dominated solutions;

[0145] For the non - dominated solutions not located in the set area where the dividing line is located, adjust the non - dominated solutions by means of normal perturbation mutation.

[0146] In this embodiment, considering that when a dynamic event occurs, the food hiding positions memorized by crows may no longer be Pareto solutions or even infeasible solutions. Therefore, in a new round of iteration, the present application does not directly use the memory positions of crows, but selects old solutions based on the splitting selection method and memory reuse strategy as the initial solutions in the new environment. This process specifically includes:

[0147] First, since the current positions of crows with a memory time mt > 1 are different from their memory positions, merge the memory positions of these crows (i.e., the second crows) into the corresponding sub - populations to achieve the reuse of the memory positions of crows.

[0148] Then, use the splitting selection method to select half of the old solutions with better diversity in the sub - population. Specifically: referring to Figure 5 the schematic diagram of splitting selection shown, since each sub - population focuses on its corresponding optimization objective, the target space of the sub - population can be approximated to one - dimensional; subsequently, divide the target space by the bisection method and select the solution closest to the dividing line. It can be understood that this method only calculates one - dimensional distance, so the time cost is lower than other selection methods based on Euclidean distance.

[0149] It should be noted that taking Figure 5 as an example, the solutions in the sub - archive are widely distributed in the entire target space, and it can be determined that their diversity is good, that is, they can provide better solutions under various preferences (for example, when only considering the objective function f 2, the edge solution in the lower right corner can be selected, and this solution can provide the best objective function f(the optimization target results corresponding to 2); while if a large number of solutions are aggregated within a certain range, it indicates that the diversity of these solutions is poor, that is, the solutions provided by these solutions are convergent and difficult to be used for different decision-making preferences.

[0150] For all the selected solutions (i.e., the non-dominated solutions located in the set area where the dividing line is located), a repulsive force response dynamic event in the threat area in the artificial potential field generation environment is generated to adjust the non-dominated solutions (such as adjusting the yaw angle change value and pitch angle for the affected waypoints among them), so as to obtain feasible solutions that can avoid threats in the new environment. It should be noted that the schematic diagram of the artificial potential field. The artificial potential field (Artificial Potential Field, APF) method simulates the concept of potential field in physics. By constructing virtual gravitational potential fields and repulsive potential fields, it guides the UAV to move towards the target point while avoiding collisions with obstacles in the environment. The schematic diagram of the artificial potential field is as Figure 6 shown, Figure 6 in F represents the resultant force, F att represents the gravitational force, F rep , F rep1 and F rep2 represent the repulsive force.

[0151] For the unselected solutions (i.e., the non-dominated solutions not located in the set area where the dividing line is located), normal perturbation mutation is performed on their coding values to enhance the adaptability of the algorithm to the new environment. For example, make , where s represents normal perturbation mutation, represents the yaw angle change value.

[0152] As a possible implementation manner, the method further includes:

[0153] In each iteration, for each crow, when it is determined to update the food hiding position remembered by the crow, set the memory time corresponding to the crow mt to 1;

[0154] In each iteration, for each crow, when it is determined not to update the food hiding position remembered by the crow, set the memory time corresponding to the crow mt = mt +1;

[0155] In each iteration, use the latest food hiding position remembered by the crow with the corresponding memory time mt =1 to update the corresponding sub-archive and the main archive.

[0156] In specific implementation, to accelerate the search process of the entire population, the present application also introduces a memory time and a mutation strategy based on the memory time. Specifically, each crow in the population stores a memory time (Memory Time) parameter associated with its memory. mt , during the iterative process, whenever the memory position is updated, mt it is set to 1, otherwise mt = mt +1. Thus, the present application introduces the memory time as an indication for updating the archive, so that after each position update step, only the crows with mt =1 are used to update the sub-archive and the main archive corresponding to the relevant sub-population, thereby reducing the workload of archive update.

[0157] As a possible implementation manner, the multiple optimization objectives at least include minimizing the threat cost of the unmanned aerial vehicle and minimizing the path length of the unmanned aerial vehicle. In the case where the threat area is regarded as a cylinder and the situation where the unmanned aerial vehicle in it can cross the threat area is regarded as two concentric cylinders with different heights, the expressions of the multiple optimization objectives are as follows:

[0158]

[0159] Among them, represents minimizing the path length of the unmanned aerial vehicle, represents minimizing the threat cost of the unmanned aerial vehicle, N j represents the j th waypoint on the path, N j+1 represents the j +1th waypoint on the path, ([[]] x j , y j , z j j ) represents N j 's three-dimensional coordinates, ([[]] x j+1 , y j+1 , z j+1 j+1 ) represents N j+1 's three-dimensional coordinates, n represents the number of waypoints, K represents the set of threat areas, T k represents the threat value of the k th threat area, and respectively represent the heights of the outer cylinder and the inner cylinder of the threat area, and respectively represent the k radii of the inner cylinder and the outer cylinder in the d k th threat area, N j N j+1 and the k plane distance from the center point of the α th threat area, β and α < β < 1 are threat coefficients, and the schematic diagram of the threat area is referred to Figure 7 as shown.

[0160] Optionally, the threat value of the threat area can be determined according to the influencing factors associated with different threat types. For example, the threat value of an air collision can be determined according to influencing factors such as the size, type, and speed of the other aircraft; the threat value of bad weather can mainly be determined according to influencing factors such as the weather type and degree. For example, a relatively high threat value is assigned to a large thunderstorm weather.

[0161] Exemplarily, taking the task scenario of a drone for rescue search as an example (the task scenario of the embodiments of the present application is not limited to this), in this task scenario, the drone needs to plan a reasonable maneuvering path for itself in the presence of threat areas, so as to maneuver to the target point at a lower cost.

[0162] Referring to Figure 8 the schematic diagram of the dynamic path planning of the drone in the rescue search task scenario shown, the drone needs to avoid threat areas No. 1 to No. 6, go to target points A and B to perform rescue search tasks, and return to the starting point position after completing the tasks.

[0163] Considering three-dimensional path planning, the threat area is regarded as a cylinder, and some threat areas can be crossed by adjusting the flight altitude. For example, the threat levels of the drone flying at different altitudes in the threat areas of No. 2 mountain and No. 5 thunderstorm weather are different, and these threat areas (i.e., the threat areas that can be crossed) can be regarded as two concentric cylinders with different heights.

[0164] The dynamic events in this task scenario include the collision threat of the moving flying object in No. 3, the sudden weather threat in No. 5, and the newly added target point B. These dynamic events will cause the problem function to change, resulting in changes in the fitness (and default degree) of the individuals in the CSA, making the optimal path no longer meet the requirements. Therefore, it is necessary to re-model the path planning problem of the task scenario, such as updating the expression of the optimization objective, and adjusting the fitness function according to the updated expression of the optimization objective, so that the crow search algorithm can obtain an optimal path planning scheme that meets the current scenario.

[0165] Optionally, the multiple optimization objectives further include: the degree of violation of a crow individual, which is used to measure the degree to which the crow individual violates the constraint conditions, and the constraint conditions include at least one of the following:

[0166] Range constraint: ;

[0167] Maximum threat constraint: ;

[0168] Maximum and minimum altitude constraints: ;

[0169] Wherein, represents the path length of the UAV, N j represents the j th waypoint on the path, N j+1 represents the j +1 th waypoint on the path, represents the maximum range of the UAV, represents the threat cost of the UAV, T k represents the threat value of the k th threat area, U represents the maximum threat cost that the UAV can bear, represents the j th z-axis coordinate of the waypoint, and respectively represent the minimum and maximum flight altitudes of the UAV, n represents the number of waypoints, K represents the set of threat areas.

[0170] In specific implementation, the degree of violation is used to reflect the degree to which the UAV violates the above constraint conditions. For example, for the range constraint, the corresponding degree of violation can be expressed as max{0, }, and other inequality constraints such as the maximum threat constraint and the maximum and minimum altitude constraints can also determine the corresponding degree of violation in a similar manner, and the degree of violation corresponding to multiple constraint conditions can be obtained by means of weighted sum, etc.

[0171] Optionally, in order to reduce the influence of dimension inconsistency, each degree of violation can also be normalized, that is: v norm =(v i -v max) / (v min -v max) , where v max and v min respectively represent the maximum and minimum values of the degree of violation corresponding to the sub-population, v i represents the degree of violation of an individual in the sub-population, v normIndicates the normalized degree of default.

[0172] In this embodiment, the present application regards the degree of default of individual crows as an additional optimization objective to establish a sub-population, so as to continuously optimize the degree of default during the iteration process, thereby prompting the overall population to search and optimize in the non-default space.

[0173] Exemplarily, the pseudo-code of a three-dimensional dynamic path planning method for unmanned aerial vehicles provided by the present application is as follows:

[0174] Input: population size N, maximum number of iterations T, unmanned aerial vehicle three-dimensional dynamic path planning problem model M;

[0175] Output: set of optimal path planning schemes (i.e., target path planning scheme set);

[0176] 1. According to the problem model M, randomly initialize a sub-population containing N crows for each optimization objective therein;

[0177] 2. while t < T

[0178] 3. Evaluate each crow in all sub-populations, update each sub-archive and use the sub-archive to update the main archive;

[0179] 4. if a dynamic change occurs

[0180] 5. Apply a dynamic response strategy based on artificial potential field;

[0181] 6. end if

[0182] 7. Update the memory position and reduce the population size to N through non-dominated sorting;

[0183] 8. Apply a multi-population mechanism, and each sub-population copies the optimal and worst solutions under the corresponding optimization objective to other sub-populations;

[0184] 9. for each sub-population

[0185] 10. for crow i = 1: N

[0186] 11. Update the position according to the diverse behavior strategy;

[0187] 12. end for

[0188] 13. end for

[0189] 14. Check the feasibility of the crow moving to the new position, and if not satisfied, keep the original position;

[0190] 15. end while

[0191] 16. Update each sub-archive and the main archive, and output the set of optimal path planning solutions in the main archive.

[0192] Based on the above embodiments, the present application proposes a dynamic path planning method for unmanned aerial vehicles based on the crow search algorithm for the dynamic path planning problem of unmanned aerial vehicles. It designs a suitable individual coding for the path planning of unmanned aerial vehicles; introduces a multi-population cooperation mechanism to improve the population diversity of the CSA, thereby enhancing the convergence and diversity of the solution sets generated by the method, and enabling the method to effectively handle constraints; designs diverse behavior strategies for the crow population to enhance the search and optimization performance of the method; adopts a dynamic response strategy based on the artificial potential field, enabling the method to quickly respond to dynamic events and avoid sudden threats in the environment in a timely manner, and providing an optimal path planning solution in the new environment.

[0193] Through the above improvements, it is possible to effectively improve the real-time performance and effectiveness of the crow search algorithm in solving the dynamic path planning of unmanned aerial vehicles, enabling the method to quickly respond to dynamic emergencies in the scenario and provide feasible paths with a relatively low expected cost in a timely manner.

[0194] It should be noted that for the method embodiments, for the sake of simple description, they are all expressed as a series of action combinations. However, those skilled in the art should know that the embodiments of the present application are not limited by the described action sequences, because according to the embodiments of the present application, certain steps can be carried out in other sequences or simultaneously. Secondly, those skilled in the art should also know that the embodiments described in the specification are all preferred embodiments, and the actions involved are not necessarily essential for the embodiments of the present application.

[0195] The embodiments of the present application also provide a dynamic path planning device for unmanned aerial vehicles based on the crow search algorithm, as Figure 9 shown, the device includes:

[0196] An initialization module for initializing sub-populations for multiple optimization objectives respectively, each of the sub-populations containing N randomly initialized crows, the positions of the crows being used to represent the path planning solutions of the unmanned aerial vehicle, and N being a positive integer;

[0197] A first processing module for iteratively updating the sub-archives corresponding to the multiple sub-populations based on the crow search algorithm, and in each iteration, adjusting the fitness function according to the currently detected dynamic event, and updating the position of each crow based on diverse behavior strategies, the sub-archives being used to store the non-dominated solutions in the corresponding sub-populations;

[0198] A second processing module for updating the main archive according to the sub-archives obtained in each iteration, and determining the set of target path planning solutions of the unmanned aerial vehicle according to the non-dominated solutions in the main archive obtained in the last update, the main archive being used to store the non-dominated solutions in all sub-populations;

[0199] Among them, the diverse behavior strategies include:

[0200] For the observation behavior of crows, from the sub-archives corresponding to each crow and the crows associated with the main archive respectively, randomly select the crows that each crow needs to follow.

[0201] For the attention behavior of crows, determine different perception probabilities for different crows, and for the first crow that perceives being tracked by other crows, set the other crows that the first crow will track to a random position outside the set radius range of the food hiding position it remembers.

[0202] For the fatigue behavior of crows, determine a flight length that is negatively correlated with the memory time for each crow, and the memory time is used to represent the time interval for updating the food hiding position remembered by each crow based on the new position of each crow.

[0203] Optionally, the j perception probability of the th crow is

[0204]

[0205] where represents the preset perception probability, represents the j th value in the digital sequence generated by the chaotic map Fuch map;

[0206] When representing the first crow as the j th crow and representing the other crows that track the first crow as the i th crow, a random position outside the set radius range of the food hiding position remembered by the first crow is determined by the following formula:

[0207]

[0208] where represents the j th dimension value of the random position that the τ th crow leads the i th crow to in the iteration d , and is used as the i th dimension value of the position of the τ +1 iteration of the d th crow; represents the j th dimension value of the food hiding position remembered by the τ th crow in the iterationd The value of the dimension; and ub d are respectively the lower bound and the upper bound of the d th decision variable; R d represents the radius of the d th dimension, and , represents the radius coefficient.

[0209] Optionally, the flight length of each crow is determined by the following formula:

[0210]

[0211] where, represents the flight length of the i th crow in the τ th iteration, represents the preset flight length, represents the memory time corresponding to the i th crow.

[0212] Optionally, the position of the crow includes: the yaw angle change value, pitch angle, and length factor corresponding to each flight segment in the path planning scheme, and each flight segment is composed of every two consecutive waypoints among the waypoints from the starting point to the target point in the path planning scheme. The three-dimensional coordinates of the j +1th waypoint N j+1 in the path planning scheme from the starting point to the target point are determined by the following formula:

[0213]

[0214] where, ([[]] x j+1 , y j+1 , z j+1 ) represents the three-dimensional coordinates of the j +1th waypoint N j+1 , ([[]] x j , y j , z j ) represents the three-dimensional coordinates of the j th waypoint N j , θ j represents the yaw angle of the j th waypoint ; , α j and respectively represent the yaw angle change value, pitch angle, and length factor corresponding to the flight segment j formed by the th j waypoint and the ( ) represents the maximum flight range of the UAV.

[0215] Optionally, the device further includes:

[0216] A third processing module, configured to, in each iteration, for each of the crows, when the new position of the crow and the food hiding position it remembers do not dominate each other, and the fitness of the new position of the crow is worse than that of the food hiding position it remembers in terms of the corresponding optimization objective, not update the new position of the crow to the food hiding position it remembers, but add the new position of the crow as a non-dominated solution to the main archive and the sub-archives corresponding to other sub-populations except the sub-population to which the crow belongs;

[0217] A fourth processing module, configured to, when the amount of data stored in the sub-archive exceeds the maximum capacity of the sub-archive, use a crowding-based truncation technique to reduce the amount of data stored in the sub-archive to retain the most diverse non-dominated solutions in the sub-archive.

[0218] Optionally, the device further includes:

[0219] A fifth processing module, configured to, if a dynamic event is currently detected, in a new round of iteration, for the second crow among the N crows whose memory time mt > 1, merge the food hiding position remembered by the second crow into the sub-archive corresponding to the sub-population to which it belongs;

[0220] A sixth processing module, configured to, after merging the food hiding position remembered by the second crow into the sub-archive corresponding to the sub-population to which it belongs, approximate the objective space of the multiple sub-populations to one dimension, and divide the objective space by the bisection method to obtain a dividing line;

[0221] A seventh processing module, configured to, for the non-dominated solutions located in the set area where the dividing line is located, generate a repulsive force in response to the dynamic event in the threat area of the artificial potential field environment to adjust the non-dominated solutions;

[0222] An eighth processing module, configured to, for the non-dominated solutions not located in the set area where the dividing line is located, adjust the non-dominated solutions by means of normal perturbation mutation.

[0223] Optionally, the device further includes:

[0224] A first setting module, configured to, in each iteration, for each of the crows, when determining to update the food hiding position memorized by the crow, set the memorization time corresponding to the crow mt to 1;

[0225] A second setting module, configured to, in each iteration, for each of the crows, when determining not to update the food hiding position memorized by the crow, set the memorization time corresponding to the crow mt = mt +1;

[0226] An archive update module, configured to, in each iteration, use the latest food hiding position memorized by the crow with the corresponding memorization time mt = 1 to update the corresponding sub-archive and the main archive.

[0227] Optionally, randomly selecting, from each sub-archive corresponding to each crow and the crows associated with the main archive respectively, the crow that each crow needs to follow includes:

[0228] For each crow, when a random value within the range of 0 and 1 r o > 0.5, select the crow that the crow needs to follow from the crows associated with the main archive;

[0229] For each crow, when a random value within the range of 0 and 1 r o ≤ 0.5, select the crow that the crow needs to follow from the crows associated with the sub-archive corresponding to the crow.

[0230] Optionally, the multiple optimization objectives at least include minimizing the threat cost of the UAV and minimizing the path length of the UAV. In the case where the threat area is regarded as a cylinder and the UAV that can cross the threat area therein is regarded as two concentric cylinders with different heights, the expressions of the multiple optimization objectives are as follows:

[0231]

[0232] Wherein, represents minimizing the path length of the UAV, represents minimizing the threat cost of the UAV, N j represents the j th waypoint on the path, N j+1 represents the j +1th waypoint on the path, ( xj , y j , z j ) represents N j 's three-dimensional coordinates, ( x j+1 , y j+1 , z j+1 ) represents N j+1 's three-dimensional coordinates, n represents the number of waypoints, K represents the set of threat areas, T k represents the k th threat value of the threat area, represents the height of the cylinder outside the threat area, and respectively represent the k th radii of the inner and outer cylinders within the threat area, d k represents the flight segment N j N j+1 and the k th plane distance from the center point of the threat area, α and β are threat coefficients, and 0 < α < β < 1.

[0233] Optionally, the multiple optimization objectives further include: the degree of violation of the crow individual, which is used to measure the degree to which the crow individual violates the constraint conditions, and the constraint conditions include at least one of the following:

[0234] Range constraint: ;

[0235] Maximum threat constraint: ;

[0236] Maximum and minimum height constraints: ;

[0237] Among them, represents the path length of the UAV, N j represents the j th waypoint on the path, N j+1 represents the j + 1th waypoint on the path, represents the maximum range of the UAV, Represents the threat cost of the UAV, T k Represents the k threat value of the th threat area, Represents the j z-axis coordinate of the and respectively represent the minimum and maximum flight altitudes of the UAV, n represents the number of waypoints, K Represents the set of threat areas.

[0238] It can be seen from the above technical solution that this application applies the crow search algorithm to the path planning of the UAV, and adjusts the fitness function according to the currently detected dynamic events in each iteration, so that the crow search algorithm can obtain an optimal path planning scheme that conforms to the current scenario, thereby realizing the dynamic path planning of the UAV. In addition, this application also designs diverse behavior strategies for the crow population to enhance the search and optimization performance of the crow search algorithm. Therefore, it can effectively improve the real-time performance and effectiveness of the crow search algorithm in solving the UAV dynamic path planning problem, enabling the UAV dynamic path planning scheme provided by this application to quickly respond to the dynamic changes of the task scenario and timely provide multiple feasible paths (i.e., the set of target path planning schemes) that meet the multiple optimization goals, so as to obtain a better path planning effect in the real environment.

[0239] This application embodiment also provides an electronic device. Referring to Figure 10 , Figure 10 is a schematic diagram of the electronic device proposed in this application embodiment. As Figure 10 shown, the electronic device 100 includes: a memory 110 and a processor 120. The memory 110 is communicatively connected to the processor 120 through a bus. A computer program is stored in the memory 110, and this computer program can run on the processor 120, thereby implementing the steps in the UAV dynamic path planning method based on the crow search algorithm disclosed in this application embodiment.

[0240] This application embodiment also provides a computer-readable storage medium, on which a computer program / instructions are stored. When the computer program / instructions are executed by a processor, the UAV dynamic path planning method disclosed in this application embodiment is implemented.

[0241] This application embodiment also provides a computer program product, including computer program / instructions. When the computer program / instructions are executed by a processor, the UAV dynamic path planning method disclosed in this application embodiment is implemented.

[0242] Each embodiment in this specification is described in a progressive manner. The key point of each embodiment is to illustrate the differences from other embodiments. For the same or similar parts among the embodiments, reference can be made to each other.

[0243] Those skilled in the art should understand that the embodiments of the present application can be provided as methods, apparatuses, or computer program products. Therefore, the embodiments of the present application can take the form of all-hardware embodiments, all-software embodiments, or embodiments combining software and hardware aspects. Moreover, the embodiments of the present application can take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk memories, CD-ROMs, optical memories, etc.) containing computer-usable program codes.

[0244] The embodiments of the present application are described with reference to the flowcharts and / or block diagrams of methods, systems, devices, storage media, and program products according to the embodiments of the present application. It should be understood that each process and / or block in the flowchart and / or block diagram, as well as the combination of processes and / or blocks in the flowchart and / or block diagram, can be realized by computer program instructions. These computer program instructions can be provided to the processors of general-purpose computers, special-purpose computers, embedded processors, or other programmable data processing terminal devices to generate a machine, such that the instructions executed by the processors of the computer or other programmable data processing terminal devices generate a device for realizing the functions specified in Figure 1 one process or multiple processes and / or blocks Figure 1 one block or multiple blocks.

[0245] These computer program instructions can also be stored in a computer-readable memory that can direct a computer or other programmable data processing terminal device to work in a specific manner, such that the instructions stored in the computer-readable memory generate a manufactured article including an instruction device, and the instruction device realizes the functions specified in Figure 1 one process or multiple processes and / or blocks Figure 1 one block or multiple blocks.

[0246] These computer program instructions can also be loaded onto a computer or other programmable data processing terminal device, such that a series of operation steps are executed on the computer or other programmable terminal device to generate a computer-implemented process, and thus the instructions executed on the computer or other programmable terminal device provide steps for realizing the functions specified in Figure 1 one process or multiple processes and / or blocks Figure 1 one block or multiple blocks.

[0247] Finally, it should also be noted that in this text, relational terms such as first and second are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any actual relationship or order between these entities or operations. Moreover, the term "comprising", "including" or any other variant thereof is intended to cover non-exclusive inclusion, such that a process, method, article or terminal device comprising a series of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such process, method, article or terminal device. Without further limitation, an element defined by the statement "comprising an..." does not exclude the presence of additional identical elements in the process, method, article or terminal device comprising the element.

[0248] The above has introduced in detail a method for dynamic path planning of an unmanned aerial vehicle based on the crow search algorithm. Specific examples are used in this text to elaborate on the principle and implementation manner of this application. The description of the above embodiments is only used to help understand the method and its core idea of this application; at the same time, for those of ordinary skill in the art, according to the idea of this application, there will be changes in the specific implementation manner and application scope. In summary, the content of this specification should not be construed as a limitation to this application.

Claims

1. A dynamic path planning method for unmanned aerial vehicles based on the crow search algorithm, characterized in that, The method comprises: Initializing subpopulations randomly for multiple optimization objectives, each of which contains N crows, the positions of the crows are used to characterize the path planning scheme of the UAV, N is a positive integer, and the multiple optimization objectives include: minimizing the threat cost of the UAV, minimizing the path length of the UAV, and the violation degree of the crow individual, the violation degree is used to measure the degree to which the crow individual violates the constraint condition; Iteratively updating the sub-archives corresponding to the plurality of sub-populations based on the crow search algorithm, and in each iteration, adjusting the fitness function according to the currently detected dynamic events, and updating the position of each crow based on the diverse behavior strategies, wherein the sub-archives are used to store non-dominated solutions in the corresponding sub-populations; The main archive is updated according to the sub-archives obtained in each round of iteration, and the target path planning solution set of the UAV is determined according to each non-dominated solution in the main archive obtained in the last update, and the main archive is used to store the non-dominated solutions in all sub-populations; The diverse behavior strategies include: In response to the observed behavior of the crows, randomly selecting the crow that each crow needs to follow from the sub-archives corresponding to each crow and the crows associated with each main archive; According to the attention behavior of crows, different perception probabilities are determined for different crows, and, for a first crow that perceives being followed by other crows, the first crow is set to lead the other crows following it to a random location outside the set radius of the food hiding location it memorizes; In view of the fatigue behavior of the crows, a flight length that is negatively correlated with the memory time is determined for each crow, and the memory time is used to represent: a time interval for updating the food hiding position memorized by each crow based on the new position of each crow; The method further comprises: If a dynamic event is currently detected, then in a new round of iteration, for the second crow among the N crows whose memory time mt>1, the food hiding location memorized by the second crow is merged into the sub-archive corresponding to the sub-population to which it belongs; After merging the food hiding location memorized by the second crow into the sub-archive corresponding to the sub-population to which it belongs, approximating the target space of the plurality of sub-populations into one dimension, and dividing the target space by a dichotomy method to obtain a dividing line; For non-dominated solutions located in the set area where the dividing line is located, generating a repulsive force response to the dynamic event in the threat area in the artificial potential field environment to adjust the non-dominated solutions; For non-dominated solutions that are not located in the set area where the segmentation line is located, the non-dominated solutions are adjusted by normal perturbation variation.

2. The method according to claim 1, wherein The j perceived probability of a crow is determined by the following formula: Among them, represents the preset perception probability, represents the j -th value in the digital sequence generated by the chaotic map Fuch map; When representing the first crow as the j th crow and representing other crows that track the first crow as the i th crow, a random position outside the set radius range of the food hiding position memorized by the first crow is determined by the following formula: Among them, represents the j value of the τ -th dimension in the random position led by the i -th crow in iteration d , and is used as the i value of the τ -th dimension in the position of iteration d + 1 of the -th crow; j represents the τ value of the d -th dimension in the food storage position memorized by the -th crow in iteration ub d and d are respectively the lower bound and the upper bound of the R d -th decision variable; d represents the radius of the -th dimension, and represents the radius coefficient.

3. The method according to claim 1, characterized in that, The flight length of each of said crows is determined by the following formula: Among them, represents the i flight length of the τ th crow in the iteration, represents the preset flight length, represents the i memory time corresponding to the 4. The method according to claim 1, wherein The position of the crow includes: the yaw angle change value, pitch angle, and length factor corresponding to each flight segment in the path planning scheme, where each flight segment is composed of every two consecutive waypoints among the waypoints from the starting point to the target point in the path planning scheme. The j +(1)th waypoint N j+1 three-dimensional coordinates are determined by the following formula: Among them, ( x j+1 , y j+1 , z j+1 ) represents the three-dimensional coordinates of the j +1-th waypoint N j+1 . ( x j , y j , z j ) represents the three-dimensional coordinates of the j -th waypoint N j . θ j represents the yaw angle of the j -th waypoint . , α j and respectively represent the yaw angle change value, pitch angle and length factor corresponding to the j -th waypoint N j and the j +1-th waypoint N j+1 -formed flight segment N j N j+1 . R represents the maximum flight range of the UAV.

5. The method according to claim 1, wherein The method further comprises: In each iteration, for each of the crows, when the new position of the crow and the food hiding position it remembers do not dominate each other, and the fitness of the new position of the crow on the corresponding optimization objective is worse than that of the food hiding position it remembers, the new position of the crow is not updated to the food hiding position it remembers. Instead, the new position of the crow is added as a non-dominated solution to the main archive and the sub-archives corresponding to other sub-populations except the sub-population to which the crow belongs. When the amount of data stored in the sub-archive exceeds the maximum capacity of the sub-archive, a crowding degree-based truncation technique is used to reduce the amount of data stored in the sub-archive to retain the most diverse non-dominated solutions in the sub-archive.

6. The method according to claim 1, wherein The method further includes: In each iteration, for each of the crows, when determining to update the food hiding position memorized by the crow, set the memory time corresponding to the crow mt to 1; In each iteration, for each of the crows, when it is determined that the food hiding position memorized by the crow is not to be updated, set the memory time corresponding to the crow mt = mt + 1; In each iteration, the latest food - hiding position memorized by the crow corresponding to the memory time mt = 1 is used to update its corresponding sub - archive and the main archive.

7. The method according to any one of claims 1-6, characterized in that, Randomly selecting the crow that each of the crows needs to follow from the crows associated with each of the sub-archives corresponding to the crows and the main archive includes: For each of the crows, when a random value within the range of 0 and 1 r o > 0.5, select the crow that the crow needs to follow from the crows associated with the main archive; For each of the crows, when a random value within the range of 0 and 1 r o ≤ 0.5, select the crow that the crow needs to follow from the crows associated with the sub-archive corresponding to the crow.

8. The method according to any one of claims 1 to 6, characterized in that When the threat area is regarded as a cylinder and the situation where the drones in it can cross the threat area is regarded as two concentric cylinders with different heights, among the multiple optimization objectives, the expressions for minimizing the threat cost of the drones and minimizing the path length of the drones are as follows: Among them, represents minimizing the path length of the UAV, represents minimizing the threat cost of the UAV, N j represents the j th waypoint on the path, N j+1 represents the j +1th waypoint on the path, ( x j , y j , z j ) represents N j 's three-dimensional coordinates, ( x j+1 , y j+1 , z j+1 ) represents N j+1 's three-dimensional coordinates, n represents the number of waypoints, K represents the set of threat areas, T k represents the k th threat value of the threat area, represents the k th height of the outer cylinder outside the threat area, and respectively represent the k th radii of the inner and outer cylinders within the threat area, d k represents the N j N j+1 distance between the k th threat area center point and the center point of the flight segment, α and β are threat coefficients, and 0 < α < β < 1.

9. The method according to claim 8, wherein The constraint conditions include at least one of the following: Range constraint: ; Maximum threat constraint: ; Maximum and minimum height constraints: ; Among them, represents the path length of the UAV, N j represents the j th waypoint on the path, N j+1 represents the j +1 th waypoint on the path, represents the maximum flight range of the UAV, represents the threat cost of the UAV, T k represents the k th threat value of the threat area, U represents the maximum threat cost that the UAV can bear, represents the j th z-axis coordinate of the waypoint, and represent the minimum and maximum flight altitudes of the UAV respectively, n represents the number of waypoints, K represents the set of threat areas.

Citation Information

Patent Citations

  • Unmanned cluster dynamic task allocation method and device based on crow search algorithm

    CN119270899A