1. Introduction
With the frequent occurrence of natural disasters and public health emergencies, traditional emergency logistics systems are facing significant challenges [
1]. Traffic disruptions, limited communications, and road congestion often hinder the timely and reliable transportation of materials [
2]. In such scenarios, unmanned aerial vehicles (UAVs) provide a flexible, miniaturized solution with long-range flight capabilities and strong endurance, making them an ideal tool for emergency logistics [
3]. However, deploying UAVs in complex environments, such as mountainous terrain, presents unique challenges due to the need for efficient path planning.
In recent years, the application of drone path planning in emergency logistics has received widespread attention. Various models and algorithms have been proposed to optimize the flight paths of drones, aiming to minimize time and energy consumption, and avoid obstacles and no-fly zones. For example, Murray et al. [
4] first proposed a mixed integer programming model for truck-drone collaborative delivery in 2015, with the goal of minimizing the total delivery time; Agatz et al. [
5] formalized it as a traveling salesman problem for drones and proposed a heuristic algorithm based on local search and dynamic programming. In addition, companies such as JD.com, SF Express, DHL, and Amazon [
6] have successfully integrated drones into their logistics systems, mainly in urban environments. Although more and more research has focused on drone path planning for urban logistics and has made progress [
7,
8,
9], research on path optimization in mountainous areas is still limited, especially in remote mountainous areas (especially emergency logistics) under harsh environments or natural disasters. Drone path planning is still in its infancy. This study aims to remedy this deficiency by applying the improved unstructured genetic algorithm-II (NSGA-II) algorithm (ACM-NSGA-II) to emergency logistics, especially to UAV path planning in complex mountainous environments.
The UAV path planning problem in emergency logistics is inherently complex because it requires optimizing multiple conflicting objectives, such as flight time, energy consumption, and safety. While precise optimization methods can guarantee an optimal solution, they are computationally expensive, especially when dealing with large problem instances or complex terrain, where the computation time increases exponentially. These methods are not suitable for real-time applications where fast decision-making is crucial. In contrast, approximate methods such as genetic algorithms (GAs) and other metaheuristic algorithms have been developed for decades, and the emergence of multi-objective evolutionary algorithms (MOEAs) [
10] overcomes the problem that traditional single-objective optimization algorithms are generally unable to effectively solve these conflicting objectives. MOEAs can provide approximate optimal solutions within a reasonable time frame, thereby better handling such complex problems [
11,
12], making them particularly suitable for real-time UAV path planning.
The NSGA-II algorithm, proposed by Deb (2002), is one of the most representative multi-objective evolutionary algorithms [
13]. NSGA-II utilizes a non-dominated sorting and crowding distance mechanism, excelling in solution diversity and convergence, and is capable of handling problems with multiple conflicting objectives [
14]. Deb’s work provides new insights into solving multi-objective optimization problems and promotes the application of evolutionary algorithms to complex engineering problems. Compared to earlier multi-objective evolutionary algorithms, NSGA-II exhibits improved convergence and can effectively search for optimal or near-optimal solutions [
15]. Given the complexity and dynamic nature of UAV path planning in emergency logistics, where multiple conflicting objectives such as minimizing flight time, energy consumption, and ensuring safety must be optimized simultaneously, the NSGA-II algorithm offers a suitable framework. Numerous studies have demonstrated that NSGA-II can find high-quality solutions in a short computational time, making it particularly suitable for solving large-scale problems [
16]. Furthermore, NSGA-II is independent of the specific nature of the problem, making it widely applicable to various multi-objective optimization problems, including drone path planning and production scheduling [
17]. Given its proven ability to handle complex optimization tasks, NSGA-II provides a robust solution to the multi-objective path planning challenges posed by emergency logistics. In addition, NSGA-II can also be combined with other algorithms, such as particle swarm optimization (PSO) or simulated annealing (SA), to further improve its performance in specific applications [
18]. This ability to adapt and integrate with other methods is crucial for improving the efficiency and effectiveness of UAV path planning in challenging environments.
However, NSGA-II does have some limitations. Although NSGA-II incorporates a crowding distance mechanism to maintain solution diversity, it can still become trapped in local optima in certain situations [
19]. This is particularly true when the solution space is complex and contains multiple local extremes, causing NSGA-II to miss the global optimal solution. Furthermore, a major limitation of NSGA-II is its lack of an effective adaptive mechanism. While the algorithm can search the solution space using non-dominated sorting and crowding distance, it exhibits poor adaptability in dynamic environments, such as those with changing constraints or objective functions [
20].
In the context of UAV path planning for emergency logistics, particularly in complex mountainous environments, these limitations pose a significant challenge. The need for UAVs to adapt to rapidly changing conditions, such as no-fly zones, obstacles, and fluctuating terrain, makes the use of traditional NSGA-II inadequate for real-time applications. To address these challenges, this paper aims to improve NSGA-II by proposing a variant that can handle complex constraints and dynamic changes in the environment, specifically applied to UAV path planning in emergency logistics. The motivation behind using NSGA-II is rooted in its proven ability to handle multi-objective optimization problems, such as minimizing flight time, energy consumption, and ensuring safety, which are essential in UAV path planning. However, in its standard form, NSGA-II struggles in dynamic, real-time environments where constraints and objectives change unpredictably. To enhance its performance in these challenging scenarios, we propose a multi-objective genetic algorithm, ACM-NSGA-II, with the following key contributions:
First, we propose an adaptive crossover and mutation strategy (ACM) that dynamically adjusts the crossover and mutation probabilities based on the population’s diversity and evolutionary progress. The motivation behind this adjustment is to overcome the issue of premature convergence, which is common in traditional multi-objective evolutionary algorithms, where the population becomes trapped in local optima early in the search process. This issue is particularly problematic in dynamic environments like UAV path planning for emergency logistics, where the search space is complex and evolving. By dynamically modifying the genetic operators based on the population’s state, ACM increases the exploration capability, particularly in the later stages of the search, when the algorithm needs to balance between exploiting known good solutions and exploring new areas. This strategy draws inspiration from the balance between exploration and exploitation in evolutionary search, ensuring a well-rounded exploration of the solution space without sacrificing convergence [
21].
Furthermore, we propose an adaptive elite retention strategy that archives the best solutions in each generation, merges them with the current population, and performs non-dominated sorting and deduplication to ensure that the best historical solutions are retained. This innovation is motivated by the realization that traditional multi-objective algorithms that only consider the best solutions in the current generation may miss valuable solutions from previous generations. In dynamic, real-world problems such as drone path planning in emergency logistics, the environment is constantly changing (e.g., obstacles or no-fly zones), so retaining high-quality solutions from previous generations is crucial to maintaining diversity and solution quality. By retaining these elite solutions, we can avoid the gradual loss of diversity and ensure that the best solutions found earlier in the search process are not discarded, which would hinder the algorithm’s ability to adapt to changing conditions [
22].
Furthermore, we introduce a dynamic path repair strategy that calculates the relationship between each point on the path and the terrain and no-fly zones, and dynamically adjusts the UAV’s trajectory to avoid these constraints. The motivation behind this strategy is to improve the traditional penalty-based approach, which statically handles constraints, resulting in suboptimal solutions. In real-world UAV path planning, especially in emergency logistics, the environment is constantly changing, and static constraints such as no-fly zones or terrain features must be handled dynamically. Dynamic path repair ensures that the path remains safe, feasible, and efficient by continuously adjusting these constraints during the search process. This innovation goes beyond the rigid penalty function and enables the algorithm to handle constraints more naturally and adaptively to match the dynamic characteristics of UAVs operating in complex environments such as mountainous terrain [
23].
Finally, we introduce a dynamic injection and population diversity maintenance strategy. This adaptive injection strategy allows for the introduction of new exploration directions when the population becomes crowded, ensuring that the search does not stagnate. This approach is motivated by the fact that traditional algorithms often suffer from insufficient diversity when the population converges to a local optimum. This lack of diversity can be detrimental because it reduces the algorithm’s ability to explore new, potentially better solutions. By assessing the population’s crowding level and selectively injecting new individuals, we are able to maintain healthy levels of diversity and exploration, preventing the algorithm from getting stuck in local optima and continuously improving the quality of solutions throughout the search.
The remainder of this paper is organized as follows: First, 
Section 2 introduces the environment modeling and problem description. Then, 
Section 3 explains the overall framework and core components of the proposed ACM-NSGA-II. Next, 
Section 4 describes the experimental setup, and presents the empirical study. Finally, 
Section 5 pro-vides conclusions and prospects for future work.
  2. Related Work
  2.1. Problem Description
After a natural disaster, road congestion often hinders the timely delivery of relief supplies. This study considers a post-disaster scenario in a mountainous area, where a rechargeable electric drone is deployed from a logistics hub (departure point) to deliver relief supplies. Departing from the hub, the drone navigates complex three-dimensional terrain, avoiding natural obstacles (such as mountains) and restricted areas (such as military airspace and village buildings). It delivers supplies to three designated destinations based on priority and then returns to the logistics hub (departure point) to complete its mission. This paper draws a schematic diagram of the drone delivery mission as shown in 
Figure 1 for readers to understand.
As shown in 
Figure 1, a drone takes off from a starting point, carrying emergency supplies, and first flies to a priority 1 area to drop the supplies. The drone then flies to priority 2 and priority 3 destinations. After completing the delivery mission, the drone returns to the starting point from the last destination. This research model is based on the following assumptions:
- The unmanned aerial vehicle meets all technical requirements for the task; 
- The locations of the logistics distribution points and each receiving point are known; 
- The drone departs with a full charge, the flight speed is pre-set, and no new mission arrangements are accepted after departure; 
- It can perform real-time obstacle avoidance, while weather and emergencies are not considered. 
To conduct experiments under ideal conditions, this study used a drone with performance that could fully handle the delivery requirements of the mission, minimizing the impact of objective factors such as drone performance on the research.
Table 1 lists the drone’s performance characteristics derived from the mission requirements, including a maximum payload of 30 kg in dual-battery mode and 40 kg in single-battery mode. With a 30 kg payload, the drone has a flight range of 16 km, an endurance of 18 min, a cruising speed of 20 m/s, and a maximum turning angle of 30°.
   2.2. Symbols and Paraments
In this article, we have created a symbol alphabet to clearly and accurately represent the various variables and their relationships within the path planning algorithm. This alphabet not only provides detailed descriptions of the key variables involved in the formulas but also clarifies the physical meaning and mathematical background of each symbol. This alphabet symbol helps readers more intuitively understand the role and interrelationships of each variable within the algorithm, avoiding misunderstandings caused by unclear symbols or vague definitions.
  2.3. Environment Modeling
Terrain modeling is a critical component in drone path planning, as flight paths must be planned based on real terrain to ensure the drone avoids collisions with ground obstacles or other elevated objects. The goal of terrain modeling is to generate a virtual Three-dimensional environment using a digital elevation model (DEM) or similar technology [
24], allowing accurate simulation of the aircraft’s movements within that environment. Terrain modeling is not limited to the ground surface but can also include topographic features such as buildings, peaks, and canyons. Typically, terrain models must accurately reflect the ground’s Three-dimensional spatial structure, which is crucial for flight path planning. To simulate complex Three-dimensional terrain, various modeling methods can be utilized, such as peak information generation, fractal noise generation, and texture mapping. These methods can effectively generate terrain maps that meet practical requirements, providing sufficient environmental data support for path planning.
The terrain model in this study is generated using peak information and fractal noise. We first simulate the elevation variations of the terrain by generating random peak information. Each peak is described by three parameters: its center, range, and height. Based on this, fractal noise is used to further adjust the randomness of the terrain, making it more similar to natural terrain.
In the specific modeling process, the height of the terrain 
Z (
x, 
y) is composed of multiple peaks and noise, which can be expressed as:
Here, 
hi is the height of the 
i peak, (
, 
) are the center coordinates of the peak, 
, 
 is the horizontal extension of the peak, 
η (
x, 
y) and is the fractal noise term. 
 is the number of peaks. The definitions of variables in all formulas are shown in 
Table 2.
A no-fly zone is typically considered a cylindrical area, defined by its center, radius, and height. We define a no-fly zone as a cylinder in three-dimensional space. During path planning, the constraints on the cylinder ensure that the aircraft does not enter the no-fly zone by modifying the path.
The geometric constraints of the no-fly zone can be expressed as:
        where 
 is the center coordinate of the no-fly zone, and 
r is the radius of the no-fly zone. Under these constraints, when the flight path enters the no-fly zone, the algorithm adjusts the flight path through a path repair mechanism to ensure the safety of the aircraft.
  2.4. Mathematical Modeling of UAV Path Planning
In mountainous emergency logistics, UAVs encounter significant challenges due to complex terrain, obstacle interference, and the urgency of disaster response. The key task is to deliver relief supplies to target locations efficiently and safely under these constraints. To address this, a comprehensive mathematical model is developed, incorporating five practical constraints: payload capacity, energy limits, turning penalties, obstacle avoidance costs, and penalties related to hovering and time windows. These factors are embedded into a composite fitness function to evaluate path feasibility.
The model aims to simultaneously optimize three conflicting objectives:
- Minimize total flight time to ensure timely delivery; 
- Minimize energy consumption to improve endurance; 
- Minimize safety cost (i.e., distance from terrain obstacles and no-fly zones) to ensure route safety. 
By framing the problem as a multi-objective optimization task, this study offers a robust and adaptable solution for UAV-based logistics in complex, high-risk mountainous environments.
  2.4.1. Optimization Goal Definition
In disasters or emergencies, every minute of delay can result in unforeseen losses or harm, making flight time a crucial consideration. Furthermore, extending flight time allows drones to perform more missions without requiring frequent recharging, reducing the need for logistical support and improving mission efficiency. Finally, drone flight safety must be considered to ensure the safety of supplies during transportation and avoid further danger to affected areas or personnel. With these considerations in mind, this study primarily considered three optimization objectives: flight time, energy consumption, and safety costs.
1. Flight Time
The flight time [
25] is the time required for the drone to fly from the starting point to each delivery point, assuming that the Unmanned Aerial Vehicle flies at a constant speed. The formula is:
In the formula, T indicates the total flight time of the unmanned aerial vehicle,  indicates the number of points (nodes) in the path,  indicates the distance between consecutive waypoints or delivery points,  indicates the constant speed of the unmanned aerial vehicle.
This formula calculates the total flight time by summing up the distances between consecutive points and dividing them by the drone’s constant speed.
2. Energy Consumption
Energy consumption [
26] is estimated based on the flight time, flight distance, altitude difference, load, and possible climb or descent of the path. In this model, energy consumption varies with flight distance and altitude during flight. The formula is:
E indicates the total energy consumption of the unmanned aerial vehicle, α indicates the coefficient representing how much the altitude difference affects the energy consumption, ,  indicates the altitude of the current and next waypoint.
In this formula, energy consumption is proportional to the flight distance and altitude difference. Changes in altitude (such as climbing or descending) increase energy consumption, especially when there is vertical movement during flight. In addition, a penalty term is generated based on the collision of the path with terrain or no-fly zones.
3. Safety Costs
Safety cost [
27] is a core concept in drone path planning. It quantifies the degree to which a path (or a point on a path) is close to obstacles or other dangerous areas, ensuring that the drone avoids collisions during flight. Its main goal is to guide the planning algorithm to generate paths that avoid potential dangers.
C indicates the safety cost of the path, zi indicates the z-axis coordinate of the i-th path point, zterrain (xi, yi) indicates the altitude of the terrain at the (xi, yi) coordinates (from the terrain map).
In this study, safety cost is considered as part of the cost function (flight time and energy consumption are optimized together). The closer to the danger, the higher the safety cost; the safer (farther) the danger, the lower the safety cost (usually approaching zero).
  2.4.2. Constraint Definitions
1. Load and mass constraints
The total mass of the drone 
M is composed of the empty mass 
M0 and the payload at each delivery point 
mDi. Flight path planning must ensure that the total mass does not exceed the maximum allowable mass 
Mmax. The formula is:
2. Energy Consumption Constraints
Because the mission requires flying to three distribution points, delivering supplies, and returning, it is divided into four phases. Since the drone’s payload decreases after arriving at a distribution point to perform a drop, each phase corresponds to a different mass 
. Furthermore, the energy consumption of each phase is related to the aircraft’s altitude difference, air density, and efficiency factor. The energy consumption formula takes into account climb/descent penalties and propulsion efficiency. The total energy of the flight is the cumulative energy consumption of each phase ∆
Ei. The energy consumption of each phase is calculated using the following formula:
3. Turning penalty
For continuous velocity vectors 
v1 and 
v2, a turning penalty 
θi is calculated and applied. The turning penalty includes an angle squared penalty and an energy-based penalty, which together affect energy consumption. The formula is:
4. Obstacle and No-Fly Zone Penalties
The aircraft must maintain a certain safe distance from the ground at every point along its path. If the aircraft’s distance from the ground falls below the set minimum safe altitude, a collision penalty is incurred. The formula is:
          
No-fly zone: If the path enters the no-fly zone, an obstacle avoidance penalty is imposed. The formula is:
5. Hovering and Time Window Penalty
Hovering Energy Consumption: The drone will hover over each drop point during the delivery process, and this hovering consumes additional energy, as shown in the following formula:
Time window penalty [
28]: If the time required for the drone to reach the delivery point exceeds the preset time window, an overdue penalty will be incurred. This penalty is also intended to ensure that the drone completes the emergency material delivery task as promptly as possible, in line with the timeliness requirements of emergency logistics. The formula is:
		  
These constraints ensure the physical feasibility of the flight path and the efficiency of the mission requirements by incorporating multiple factors, including mass, energy consumption, turning penalties, obstacle and no-fly zone penalties, hovering, and time window penalties. In the code, these constraints are dynamically calculated and adjusted across each step of the path to ensure the drone achieves optimal performance in a multi-objective optimization.
  3. Proposed Algorithm
In this section, we first introduce the overall framework of the proposed ACM-NSGA-II algorithm. Then, we further explain its key components, namely the adaptive crossover mutation strategy, the dynamic path repair strategy, the dynamic injection and population diversity maintenance strategy.
  3.1. General Framework
This section describes the overall process of the proposed ACM-NSGA-II algorithm. The inputs include the population size 
N and the feature dimension 
D, and the output is the optimized non-dominated path set 
NextPop. The overall framework is shown in the pseudocode of Algorithm 1. The algorithm first initializes the population and then enters the main program, performing fitness evaluation, non-dominated sorting, and tournament selection. Crossover and mutation operations are then performed based on population diversity and algebraic decay, adjusting the probabilities of crossover and mutation to generate the next generation of paths (as shown in Algorithm 2). Dynamic path modification is then performed. During path repair, the path is dynamically adjusted based on the distance from the no-fly zone to ensure that the path does not collide with the no-fly zone or terrain (as shown in Algorithm 3). During the environmental selection phase, the current optimal solution is saved and elite selection is performed (as shown in Algorithm 4). Adaptive random injection is then performed. When the population crowding is too low, random individuals are injected to enhance diversity (as shown in Algorithm 5). 
N representative individuals are then selected as the next generation population using non-dominated sorting and crowding distance. When the termination condition is met (for example, the maximum number of iterations is reached), the algorithm outputs the final set of non-dominated paths.
        
| Algorithm 1. General Framework (N, D) | 
| Input: Population size N, Feature dimension D; Output: Final population FinalPop;
 | 
| 1: CurrentPop ← Randomly generate N initial solutions; //Initialize the population | 
| 2: Gen ← 0; //Generation Counter | 
| 3: CurrentArc ← Φ //Archive set | 
| 4: While Gen < MaxGen do; | 
| 5:   EvaluateFitness (CurrentPop); // Fitness evaluation | 
| 6:   [Fronts, Crowding] ← NonDominatedSortAndCrowding (CurrentPop); // Non-dominated sort- ing and crowding distance | 
| 7:   Parents ← CheampionshipSelection (CurrentPop, Fronts, Crowding); // Tournament Se lection | 
| 8:    Offspring ← AdaptiveCrossoverMutation (Parents); //Adaptive crossover and muta- tion by Algorithm 2 | 
| 9:   Offspring’← DynamicPathRepair (Offspring); // Dynamic path repair by Algorithm 3 | 
| 10:   [NextPop, CurrentArc, ArchiveUpdated ← UpdateArchive (CurrentPop, Offspring’, CurrentArc)]; // ArchiveUpdate by Algorithm 4 | 
| 11:  if ArchiveUpdated then | 
| 12:   NextPop ← AdaptiveRandomInjection (NextPop, CurrentArc,K); // Adaptive random injection by Algorithm 5 | 
| 13:   end if | 
| 14: End while | 
| 15: FinalPop ← NextPop;// Set final population | 
The overall process is shown in 
Figure 2, which clearly demonstrates the key steps such as population initialization, iterative update, adaptive crossover and mutation, dynamic path repair and elite retention, and demonstrates the algorithm’s adaptive ability in multi-objective optimization under complex constraints:
Step 1: Build the algorithm environment and configure basic flight information for the Unmanned Aerial Vehicle.
Step 2: Initialize the population and set all relevant parameter values.
Step 3: Check if the maximum number of iterations has been reached.
Step 4: Evaluate the population’s fitness.
Step 5: Non-dominated sorting and crowding distance calculation.
Step 6: Tournament selection mechanism.
Step 7: Adaptive crossover and mutation (Algorithm 2).
Step 8: Dynamic path repair (Algorithm 3).
Step 9: Update the external archive (Algorithm 4).
Step 10: Check if the archive is updated.
Step 11: Adaptive random injection (Algorithm 5).
Step 12: Save Pareto optimal solutions for each generation.
Step 13: Output the final Pareto optimal solutions.
  3.2. Adaptive Crossover and Mutation
Traditional crossover and mutation rates are pre-set and cannot be adjusted based on the current population diversity. This can lead to insufficient exploration and, in turn, limit optimization effectiveness. Furthermore, traditional crossover and mutation methods often over-rely on global search and overlook the potential of local search. Local optimization may be effective in the early stages, but when the solution space has already entered a favorable region, excessive crossover and mutation operations can disrupt existing good solutions.
Compared to traditional crossover and mutation methods, adaptive crossover and mutation [
29] effectively avoid premature convergence in the early stages by adjusting the crossover and mutation probabilities based on population diversity and generational decay. This process utilizes symmetry principles to ensure balanced exploration and exploitation, adjusting the crossover and mutation rates in such a way that prevents the algorithm from converging too early and allows for a more efficient global search. Furthermore, by adjusting the crossover and mutation ratios based on population diversity, adaptive crossover and mutation maintains population diversity throughout the search process, preventing regression into local optima while improving solution accuracy and quality. This approach has been shown to be more effective for complex optimization problems.
Specifically, as shown in Algorithm 2, this study adopted an adaptive segmented crossover [
30] and smooth mutation strategy. Traditional crossover methods may introduce some unreasonable structures in the path (for example, the path may collide with a no-fly zone or terrain after crossing). Segmented crossover, on the other hand, reduces the risk of path unreasonableness by limiting the crossover operation to specific areas of the path. Segmented operations can handle highly nonlinear and complex constraints, thereby providing better optimization solutions. The advantage of smooth mutation is that it can adjust certain points in the path through interpolation and small perturbations, rather than directly changing the entire path. This approach ensures that the mutated path does not deviate significantly from the original path, helping to maintain the smoothness and feasibility of the path. Compared with traditional mutation methods, smooth mutation can avoid drastic changes in the path, reduce the risk of path unreasonableness, and improve the refinement and stability of the optimization process.
        
| Algorithm 2. Adaptive Crossover Mutation (Parents, Gen, MaxGen, CR, MU) | 
| Input: Parents Parents, Current Algebra Gen, Max generations MaxGen, Initial crossover rate CR, Initial mutation rate MU; Output: Offspring Offspring;
 | 
| 1: Offspring ← Φ; // Initialize offspring collection | 
| 2: R ←AdjustCrossoverRate(Gen, MaxGen, CR);// Adjust crossover rate | 
| 3: Pm ←AdjustMutationRate(Gen, MaxGen, MU); // Adjust mutation rate | 
| 4: for each pair (P1, P2) from Parents do; | 
| 5:   if rand() < R then | 
| 6:     [c1, c2]← Crossover (P1, P2); // Perform crossover | 
| 7:   end if | 
| 8:   c1 ← Mutate (c1, Pm); // Mutate first offspring | 
| 9:   c2 ← Mutate (c2, Pm); // Mutate second offspring | 
| 10:   Offspring. add (c1); // Add c1 to offspring collection | 
| 11:   Offspring. add (c2); // Add c2 to offspring collection | 
| 12: end for | 
| 13: return Offspring; | 
  3.3. Dynamic Path Repair
In traditional NSGA-II algorithms, the feasibility of path generation typically relies on satisfying constraints, but there is typically no dedicated mechanism to handle conflicts between the path and the environment (no-fly zones, terrain). Failure to meet these constraints can result in unsafe paths, impacting the algorithm’s overall performance. Unlike traditional NSGA-II, dynamic path repair not only optimizes objective functions (such as flight time and energy consumption) but also performs real-time repairs after each generated path based on environmental changes (such as no-fly zones and terrain changes), ensuring that the path consistently meets safety constraints during the optimization process. This ensures that the path planning process does not cross no-fly zones or fall below terrain altitude, thus ensuring flight safety.
The local search strategy in dynamic path repair is a significant difference from traditional NSGA-II. Specifically, local search utilizes two common path optimization methods—1-opt and 2-opt—to perform refined optimization during the path repair process. 1-opt optimizes the total path length by swapping the positions of adjacent points in the path, making it suitable for rapid adjustments and local improvements. 2-opt, on the other hand, eliminates intersections by swapping the connections between two non-adjacent path segments, further optimizing the path structure and achieving more optimal path adjustments. Whenever a conflict occurs during path repair, the algorithm applies both methods simultaneously and selects the optimal optimization result by comparing fitness (e.g., path length, flight time, energy consumption, etc.).
The advantage of the local search method lies in its ability to select the appropriate repair strategy for different types of path conflicts. When applying 1-opt and 2-opt, the algorithm not only considers local optimization but also selects the optimal path to minimize flight time and energy consumption. For example, if a path has large turns, the 1-opt method quickly smooths the path by swapping the order of adjacent nodes. If a path has significant intersections, the 2-opt method can eliminate intersections by adjusting the order of path segments, further optimizing the path structure. Through this local optimization approach, dynamic path repair effectively improves path quality while avoiding over-adjustments and maintaining path integrity.
Furthermore, dynamic path repair employs a symmetry strategy, taking into account the symmetry of environmental constraints during the path repair process. If the terrain or no-fly zone is symmetrical, the repair algorithm attempts to symmetrically adjust both sides of the path to reduce duplicate repairs and over-corrections, further improving computational efficiency. This symmetry strategy not only reduces unnecessary computation but also ensures balanced adjustments on both sides of the path, avoiding over-repairing on one side and under-repairing on the other. This approach enables the algorithm to more efficiently optimize paths in complex environments, ensuring consistency and efficiency during the path repair process.
Dynamic path repair is an incremental repair process that does not require replanning the entire path each time. Each repair only targets the problematic portion of the path, significantly reducing computational overhead and improving algorithmic efficiency. Symmetry ensures that if one part of the path requires adjustment, the other part can be modified in a similar manner, avoiding recalculation and preserving the overall path structure. Specifically, in Algorithm 3, the code implementation uses the RepairPath function to examine each point on the path, calculate the minimum safety margin between the path and the terrain, and make adjustments as needed. When the path approaches a no-fly zone or terrain obstacle, the repair process uses methods such as horizontal push-off and vertical lift to ensure that the path does not collide with the obstacle. By applying a symmetric strategy when possible and making effective adjustments to both sides of the path, the repair process can better adapt to complex environments and optimize the path, considering both local and global constraints.
However, repair operations are limited to localized repairs of the path; they are triggered only when the path collides with an obstacle, such as a no-fly zone or terrain. This avoids unnecessary computation and improves the computational efficiency of the path planning algorithm. Furthermore, by adjusting only the portion of the path that conflicts with an obstacle or no-fly zone, unnecessary over-repairs are avoided, preserving the path’s original structural consistency as much as possible, which helps reduce flight time and energy consumption. A symmetry strategy also plays a role in the repair process, ensuring that adjustments on one side of the path are symmetrical with the other, resulting in a more optimized overall repair process.
        
| Algorithm 3. Dynamic Path Repair (Offspring) | 
| Input: Offspring Offspring; Output: Repaired offspring Offspring’;
 | 
| 1: Offspring’ ← Φ // Initialize the repaired offspring collection | 
| 2: for each x in Offspring do; | 
| 3:    if not IsFeasible(x) then; | 
| 4:     x ← RepairByHeuristic (x); // Apply heuristic repair | 
| 5:   end if; | 
| 6:   if LocalImprovementEnabled then; | 
| 7:     bestSolution ← x; // Start with the current solution | 
| 8:     newSolution1Opt ← Apply1Opt(x); // Apply 1-opt local search | 
| 9:     newSolution2Opt ← Apply2Opt(x); // Apply 2-opt local search | 
| 10:     if Fitness(newSolution1Opt) < Fitness(bestSolution) then | 
| 11:      bestSolution ← newSolution1Opt; // Update best solution if 1-opt is better | 
| 12:     end if; | 
| 13:     if Fitness(newSolution2Opt) < Fitness(bestSolution) then | 
| 14:       bestSolution ← newSolution2Opt; // Update best solution if 2-opt is better | 
| 15:     end if; | 
| 16:     x ← bestSolution; // Choose the best solution | 
| 17:   end if; | 
| 18:   Offspring’.add(x); // Add repaired x to the repaired offspring collection | 
| 19: end for; | 
| 20: Offspring’ ← RemoveDuplicatedAnd Clamp (Offspring); // Remove duplication and maintain boundaries | 
| 21: return Offspring’; | 
  3.4. Update Archive and Environmental Selection
Traditional elite retention mechanisms often select individuals based on crowding calculations, which can lead to a loss of diversity among individuals. This is especially true when NSGA-II handles multiple objectives. Crowding can lead to an over-concentration of individuals in certain target areas, neglecting other potentially high-quality solutions. Furthermore, if the environment changes during path planning, traditional elite retention mechanisms cannot effectively update the elite solution set, resulting in some paths that are no longer valid or do not meet the new environmental constraints remaining in the solution set and failing to be updated in a timely manner.
In this study, in Algorithm 4, the elite retention mechanism introduces environmental adaptability updates [
31]. When the environment (such as no-fly zones or terrain) changes, the algorithm not only updates the paths but also dynamically updates the elite solution set to ensure that the paths adapt to the new environmental conditions. This dynamic adaptability enables the elite solutions to respond to environmental changes in real time. Path planning not only considers the objective function but also adjusts the paths based on new environmental constraints, ensuring that the paths in the elite solution set always meet environmental requirements. Furthermore, in traditional NSGA-II, elite solutions are typically retained based on the non-dominated ordering of the current generation, without considering past solutions. This algorithm, by retaining historically excellent solutions, aggregates the experience gained throughout the optimization process into a global Pareto set. This allows the algorithm to draw upon historically excellent paths throughout the optimization process, maintaining global search capabilities. By retaining historically excellent solutions, the elite retention mechanism can integrate high-quality solutions from multiple generations, rather than simply the best solution from the current generation. This approach effectively improves the diversity and robustness of the population, helping to find a wider range of optimal solutions within the search space.
        
| Algorithm 4. UpdateArchive (CurrentPop, Offspring’, CurrentArc, N) | 
| Input: Current population CurrentPop, Repaired offspring Offspring’, Current Archive CurrentArc, population size N; Output: Final population FinalPop, Updated archive UpdateArc, Flag indicating if archive is updated ArchiveUpdated;
 | 
| 1: U ← CurrentPop ∪ Offspring’; // Combine parent and offspring | 
| 2: EvaluateFitness (U); // Evaluate fitness of the combined population | 
| 3: Fronts ← FastNonDominatedSort(U); // Non-dominated sorting | 
| 4: NewArc ← CurrentArc ∪ {All solutions in U at the first level}; // Add new non-dominated solutions to archive | 
| 5: NewArc ← NonDominatedFilter (NewArc); // Remove redundancy and preserve diver- sity | 
| 6:  if |NewArc| > ArchiveSizeLimit then; | 
| 7:    NewArc ← TruncateByCrowding (NewArc, ArchiveSizeLimit); | 
| 8:  end if; | 
| 9: i ← 1 | 
| 10:   while |FinalPop| + |Fronts [i]| ≤ N do; | 
| 11:    FinalPop ← FinalPop ∪ Fronts [i]; // Add front solutions to the next generation | 
| 12:     i ← i + 1 | 
| 13:   end while; | 
| 14: Remain ←N − |FinalPop|; // Remaining space in population | 
| 15:   if Remain > 0 then; | 
| 16:    Sorted ← SortBuCrowdingDescending (Fronts [i]); // Sort by crowding | 
| 17:    FinalPop ← FinalPop ∪ Sorted [1: Remain]; // Add remaining solutions | 
| 18:   end if; | 
| 19: ArchiveUpdated ← (NewArc ≠ CurrentArc); // Check if the archive is updated | 
| 20: CurrentArc ← NewArc; // Update the archive | 
| 21:   if ArchiveUpdated then; | 
| 22:    Call AdaptiveRandomInjection(FinalPop, CurrentArc, K); // Algorithm 5 | 
| 23:   end if; | 
| 24: return FinalPop, CurrentArc, ArchiveUpdated; | 
  3.5. Adaptive Random Injection
The traditional NSGA-II algorithm, based on population selection and crossover mutation during the search process, may over-search within known areas and overlook other potentially high-quality solutions. The lack of a mechanism to force the introduction of new solutions limits the search space during optimization, potentially missing out on better solutions. Especially in no-fly zones and when terrain constraints are complex, once the population converges on a local area, the optimization process stalls and fails to effectively explore uncovered areas.
Adaptive random injection promotes a broader exploration of the solution space. The introduction of new individuals provides the algorithm with more possible solution paths, helping the optimization process to move beyond the current solution space and into un-explored areas. This maintains population stability and avoids over-reliance on local solutions. Incorporating symmetrical patterns in the injected solutions can further enhance this effect, allowing the algorithm to explore solutions that reflect similar characteristics in different parts of the search space, thus improving overall search efficiency. Adaptive random injection effectively avoids premature convergence by continuously injecting new random solutions. The addition of new solutions provides the algorithm with more opportunities for global exploration, making the optimization process more resilient and enabling it to escape the trap of local optimal solutions.
The adaptive random injection is divided into two parts: guided injection and random injection. The guided injection process selects individuals from the archive and perturbs them, introducing high-quality, archive-based variants to explore different regions of the solution space. This method constitutes about 60% of the injected individuals, with their variations guided by previously discovered solutions. The remaining 40% of individuals are generated randomly to increase exploration, promoting diversity and preventing the optimization process from getting stuck in local optima.
This approach leverages the synergy between archive-based guidance and random injection to improve the algorithm’s capability to explore diverse areas in the search space. This mechanism ensures that when population diversity is low, the algorithm increases the number of randomly injected solutions, providing more opportunities for the exploration of new paths. On the other hand, when diversity is high, the algorithm relies more on archive-based solutions, focusing on fine-tuning the population around high-quality regions. This adaptive mechanism helps in maintaining a balance between exploration and exploitation, preventing premature convergence while ensuring path feasibility and security in dynamic environments.
In this study, in Algorithm 5, the number of randomly injected individuals is related to the population crowding level. When diversity is insufficient, the number of injected individuals is increased accordingly. This adaptive mechanism effectively improves the diversity of the population. This approach effectively avoids the limitations of traditional NSGA-II, improving population diversity, preventing premature convergence, enhancing global search capabilities, and better maintaining path security and feasibility in dynamic environments, while leveraging symmetry to ensure a more balanced exploration.
        
| Algorithm 5. AdaptiveRandomInjection (CurrentPop, CurrentArc, K) | 
| Input: Current population CurrentPop, Current Archive CurrentArc, Injection number K; Output: Final population FinalPop;
 | 
| 1: Candidates ← SelectCandidatesForReplacement (CurrentPop); // Select K permutations | 
| 2: n_guided ← ceil (k * 0.6); // 60% generated by archive reorganization | 
| 3: n_guided ← k − n_guided; // 40% generated randomly | 
| 4: NewSols ← Φ | 
| 5: for i = 1 to n_guided do; | 
| 6:  a ←SampleFromArchive (CurrentArc); // Sample high-quality individuals from archive | 
| 7:  b ←Perturb (a); // Apply perturbation | 
| 8:  NewSols.add (RepairIfNeeded (b)); // Apply repair if necessary 9: end if
 | 
| 10: for i = 1 to n_random do; | 
| 11:  r ← RandomInit (1); // Generate random individuals | 
| 12:  NewSols. add (r); // Add random individuals to NewSols | 
| 13: end for; | 
| 14: FinalPop ← Replace (CurrentPop, Candidates [1: k], NewSols); // Replace candidates with new solu-tions | 
| 15: return FinalPop; // Return the updated population | 
  3.6. More Discussions
This section provides a theoretical analysis of several commonly used crossover operator combinations in genetic algorithms proposed in the recent literature [
32]. These combinations include PMX + PBX, PMX + OX2, PMX + OX1, and PBX + OX2. These combinations will be explored in the context of emergency path planning for drones. This path planning involves optimizing multiple objectives, such as flight time, energy consumption, and safety costs, while also adhering to constraints such as terrain restrictions, no-fly zones, and altitude requirements.
1. PMX + PBX
PMX (Partially Mapped Crossover) ensures that the offspring maintains a feasible order of waypoints, preventing duplication. PBX (Position-Based Crossover), on the other hand, focuses on preserving relative positions of genes in the offspring, which is useful for maintaining critical point sequences like delivery points and start/end locations.
Application to UAV Path Planning: This combination can be effective in maintaining sequence integrity while also adjusting intermediate waypoints. By preserving the order and positions of critical waypoints, this combination can help generate valid and optimized flight paths while reducing energy consumption and flight time.
2. PMX + OX2
PMX prevents duplication of waypoints, while OX2 (Two-Point Order Crossover) ensures that the order of genes between the two crossover points is maintained. This allows for better exploration of the search space while maintaining the overall order of the path.
Application to UAV Path Planning: This combination may be particularly useful when the path sequence is highly important, such as ensuring that a drone follows a specific delivery sequence while avoiding obstacles or no-fly zones. It can optimize the path length while respecting the flight constraints.
3. PMX + OX1
Similarly to PMX + OX2, OX1 focuses on the order of the sequence by crossing paths at a single point, while PMX ensures that the resulting offspring maintains a valid order without duplication.
Application to UAV Path Planning: In scenarios where sequence preservation is crucial (e.g., delivery points), this combination allows for the generation of diverse offspring while maintaining path legality. It can effectively optimize flight time and energy consumption by adjusting the non-fixed segments of the path.
4. PBX + OX2
PBX preserves the relative positions of genes, while OX2 maintains the order between crossover points, allowing for more global exploration of the search space without disturbing critical waypoints.
Application to UAV Path Planning: This combination might be particularly useful in cases where there are multiple delivery points to be visited, but the overall order of visit matters more than the exact path taken. It allows exploration while preserving feasibility with respect to key constraints like no-fly zones and terrain limitations.
Each crossover combination presents distinct theoretical advantages depending on the nature of the UAV path planning problem. By selecting the appropriate crossover method, it is possible to explore the solution space more effectively while maintaining feasible paths that satisfy the problem’s constraints. In future work, we will test these combinations in UAV path planning experiments to evaluate their effectiveness in optimizing for multiple objectives, including flight time, energy consumption, and safety margin.