In recent years, the rapid development of drone technology has significantly expanded its applications across agriculture monitoring, logistics transportation, disaster rescue, environmental surveillance, and military reconnaissance. As a core component of autonomous flight, path planning plays a critical role in enabling unmanned aerial vehicles (UAVs) to navigate safely and efficiently. The objective of path planning is to determine an optimal or feasible trajectory from a start point to a target point within a known environment, while satisfying various flight constraints.
Among numerous global path planning methods, the A* algorithm has been widely adopted due to its ability to find the shortest path with heuristic guidance. However, when directly applied to three-dimensional (3D) spaces, the traditional A* algorithm using a 26-neighborhood expansion suffers from low search efficiency, path redundancy, and heavy computational burden, especially in complex environments. To address these challenges, we propose a Direction-Cost-Enhanced A* (DCE-A*) algorithm that integrates directional indexing and expansion pruning. This method introduces a directional scoring mechanism to prioritize nodes oriented toward the target and employs a Top-K node selection strategy to limit redundant expansions. Additionally, a high-order Bézier curve is applied for global path smoothing, enhancing path continuity and flight controllability. This paper presents the design, implementation, and validation of the DCE-A* algorithm through extensive simulations, demonstrating its superiority over conventional A*, ACO, and RRT algorithms in terms of search efficiency, path quality, and success rate.
| Parameter | Symbol | Value |
|---|---|---|
| 3D Grid Map Size | — | 500×500×500 |
| Start Node | \( n_0 \) | [10,10,20] |
| Goal Node (Scene 1) | \( n_g \) | [450,420,50] |
| Goal Node (Scene 2) | \( n_g’ \) | [440,320,60] |
| Maximum Iterations | Max_iter | 10 000 |
| Heuristic Weight | \( w \) | 3 |
| Direction Score Weight | \( d_w \) | 15 |
| Top-K Nodes | \( K_{\text{top}} \) | 8 |
| Number of Ants (ACO) | \( N_p \) | 10 |
| Tree Step (RRT) | step | 10 |
| Smoothing Method | — | 3rd-order Bézier curve |
1. Introduction
The evolution of drone technology demands robust path planning algorithms capable of operating in complex 3D environments. While classical A* provides optimal paths in 2D, its direct application to 3D leads to extensive node expansion and high computational overhead. Previous improvements include heuristic function optimization, algorithm fusion, integration of dynamic constraints, and intelligent learning methods. However, most existing works struggle to balance efficiency and feasibility. Our proposed DCE-A* algorithm tackles these issues by incorporating directional guidance and selective expansion pruning, significantly reducing redundant exploration while maintaining path quality.
2. System Model and Problem Description
2.1 Environment Model
We model the environment as a 3D grid map of size 500×500×500 with unit cell length 1 m. Each cell is labeled as 0 (free space) or 1 (obstacle/no-fly zone). Buildings are represented as rectangular prisms, no-fly zones as large rectangular blocks, and walls as manually defined obstacles. The terrain height is given as:
$$ z(x,y) = z_{\text{building}}(x,y) + z_{\text{wall}}(x,y) + z_{\text{no-fly}}(x,y) $$
2.2 Environmental Cost Field Modeling
We define a cost map \( C_{\text{map}} \) that assigns penalties to cells near obstacles and within no-fly zones. A proximity band \( E_r \) with radius \( r = 3 \) m is created around obstacles. The raw environmental cost \( c_{\text{raw}}(x) \) is:
$$
c_{\text{raw}}(x) =
\begin{cases}
c_{\text{prox}}, & x \in E_r, \\
c_{\text{NFZ}}, & x \in N, \\
0, & \text{otherwise}
\end{cases}
$$
where \( c_{\text{prox}} = 10 \) and \( c_{\text{NFZ}} = 20 \). The normalized environmental cost is:
$$ c_e(x) = \frac{c_{\text{raw}}(x)}{\max(c_{\text{prox}}, c_{\text{NFZ}})} \in \{0, 0.5, 1\} $$
2.3 Constraints
The path must satisfy the following constraints:
- Boundary: \( 0 \le x_i \le X_{\text{max}}, 0 \le y_i \le Y_{\text{max}}, 0 \le z_i \le Z_{\text{max}} \)
- Obstacle avoidance: \( n_i \notin O \)
- Flight altitude: \( z_{\text{min}}(x,y) \le z_i \le z_{\text{max}}(x,y) \)
- Climb/descent angle: \( \theta_i \in [0^\circ, 45^\circ] \)
- Motion continuity: \( \|n_{i+1} – n_i\|_2 \le \sqrt{3} \) (26-neighborhood)
2.4 Objective Function
The goal is to minimize the cumulative cost defined as:
$$
\min_{p_{\text{path}}} f(n_g) = \sum_{i=0}^{g-1} g(n_i,n_{i+1}) + \sum_{i=0}^{g} c(n_i) + w \cdot h(n_g) + d_w \cdot (1 – d(n_g))
$$
where:
- \( g(n_i,n_{i+1}) \) is Euclidean distance between consecutive nodes.
- \( c(n_i) \) is environmental cost from \( C_{\text{map}} \).
- \( h(n_g) \) is Manhattan heuristic distance to goal.
- \( d(n_g) \) is directional similarity (cosine of angle between move direction and goal direction).
- \( w = 3 \), \( d_w = 15 \).
3. DCE-A* Algorithm
3.1 Directional Indexing Mechanism
We extend the search from 8 directions (2D) to 26 directions (3D). The direction vector from current node \( n \) to a neighbor is \( \Delta n_i = (dx_i, dy_i, dz_i) \). The goal direction vector is:
$$ \mathbf{v}_g = \frac{n_g – n}{\|n_g – n\|} $$
For each candidate direction, we compute the cosine similarity score:
$$ \gamma_i = \cos\theta_i = \hat{\mathbf{v}}_i \cdot \mathbf{v}_g $$
where \( \hat{\mathbf{v}}_i = \Delta n_i / \|\Delta n_i\| \). Nodes with higher \( \gamma_i \) are prioritized during expansion.
3.2 Expansion Pruning with Top-K Selection
After generating all 26 candidate neighbors, we compute directional similarity \( d(n_{i+1}) \) for each candidate using:
$$ d(n_{i+1}) = \frac{(n_{i+1} – n_i) \cdot (n_g – n_{i+1})}{\|n_{i+1} – n_i\| \cdot \|n_g – n_{i+1}\|} $$
We then sort candidates by \( d(n_{i+1}) \) in descending order and retain only the top \( K_{\text{top}} = 8 \) nodes. The rest are pruned. This reduces the node expansion size while preserving promising directions.
3.3 Algorithmic Flow
The overall DCE-A* algorithm proceeds as follows:
- Initialize open set \( N_o \) with start node, closed set \( N_c \) empty.
- While \( N_o \) is not empty and iterations < Max_iter:
- Select node \( n \) from \( N_o \) with smallest \( f(n) \).
- If \( n = n_g \), return path.
- For each of 26 neighbor directions:
- Check boundary, obstacle, altitude constraints.
- Compute directional score \( d(n_{i+1}) \).
- Compute environmental cost \( c(n) \) from cost map.
- Apply Top-K pruning: keep only \( K_{\text{top}} \) best-scored neighbors.
- For each retained neighbor:
- Update \( g(n’) = g(n) + g(n,n’) \).
- Compute \( f(n’) = g(n’) + w \cdot h(n’) + c(n’) + d_w \cdot (1 – d(n’)) \).
- If \( n’ \) is in open set with lower cost, update; else add to open set.
- Apply Bézier curve smoothing to the final path.
3.4 Path Smoothing via Bézier Curves
The discrete path from A* is smoothed using a Bézier curve of degree \( m \) (typically 3):
$$ B(t) = \sum_{i=0}^{m} \binom{m}{i} (1-t)^{m-i} t^i n_i, \quad t \in [0,1] $$
This yields a continuous, differentiable trajectory suitable for drone technology flight control.

4. Simulation Results and Analysis
4.1 Parameter Settings
All simulations are conducted on a 500×500×500 3D grid map. The start and goal coordinates for two scenarios are given in Table 1. We compare DCE-A* with A*, ACO, and RRT.
4.2 Scenario 1 Results
| Algorithm | Path Length (m) | Time (s) | Total Explored Nodes | Successful Nodes | Success Rate (%) |
|---|---|---|---|---|---|
| DCE-A* | 619.36 | 0.18 | 5,811 | 5,583 | 96.03 |
| A* | 621.36 | 0.54 | 10,881 | 6,512 | 59.85 |
| ACO | 640.72 | 58.07 | 700,380 | 466,528 | 66.61 |
| RRT | 675.91 | 1.30 | 140 | 113 | 80.71 |
In Scene 1, DCE-A* reduces path length by 0.32% compared to A*, decreases computation time by 66.7%, and increases success rate from 59.85% to 96.03%. The total explored nodes are reduced by 46.6%.
4.3 Scenario 2 Results
| Algorithm | Path Length (m) | Time (s) | Total Explored Nodes | Successful Nodes | Success Rate (%) |
|---|---|---|---|---|---|
| DCE-A* | 585.03 | 0.13 | 3,632 | 3,539 | 97.43 |
| A* | 625.36 | 0.24 | 10,805 | 5,892 | 54.53 |
| ACO | 632.15 | 58.07 | 422,037 | 279,218 | 66.15 |
| RRT | 676.68 | 0.30 | 187 | 109 | 58.28 |
In Scene 2, DCE-A* shows a 6.45% reduction in path length compared to A*, a 45.8% reduction in time, and a 66.4% reduction in total explored nodes. Success rate reaches 97.43%, significantly higher than other methods. These results confirm that the directional indexing and pruning strategies effectively focus search efforts toward the goal.
4.4 Parameter Sensitivity: Top-K Selection
| \( K_{\text{top}} \) | Path Length (m) | Time (s) | Total Explored Nodes | Success Rate (%) |
|---|---|---|---|---|
| 5 | 588.30 | 0.11 | 2,247 | 95.56 |
| 8 | 585.03 | 0.13 | 3,632 | 97.43 |
| 10 | 584.05 | 0.23 | 5,540 | 93.96 |
Choosing \( K_{\text{top}} = 8 \) provides the best trade-off between path quality, computational efficiency, and success rate. A smaller value may prune too aggressively, while a larger value reintroduces redundancy.
5. Conclusion
We have presented the DCE-A* algorithm, a novel path planning method for drone technology in complex 3D environments. By integrating directional indexing with Top-K expansion pruning, the algorithm significantly reduces node expansions and computation time while maintaining high success rates. The post-processing Bézier curve smoothing ensures smooth, flyable trajectories. Simulation results across two challenging scenarios demonstrate that DCE-A* outperforms traditional A*, ACO, and RRT in search efficiency, path quality, and robustness. The algorithm is particularly effective in environments with dense obstacles and no-fly zones. Future work will extend DCE-A* to dynamic environments with moving obstacles and real-time replanning, further advancing the capabilities of modern drone technology.
