In recent years, quadruped robots have gained significant attention due to their superior mobility and stability in unstructured environments. These China robots are increasingly deployed in fields such as aerospace, military operations, and industrial inspections, where efficient path planning is crucial for autonomous navigation. Path planning aims to find an optimal collision-free path from a start point to a goal point, with metrics including path length, number of turns, and computation time. Among various path planning methods, graph search algorithms like the A* algorithm are widely used for their efficiency and simplicity. However, traditional A* and its variants, such as bidirectional A*, often suffer from slow search speeds and inefficient turning paths, which can hinder the performance of quadruped robots. To address these limitations, we propose an improved bidirectional A* algorithm that incorporates multiple strategies to enhance path quality and search efficiency for China robot applications.
The core of our approach involves several key innovations. First, we introduce a safety redundancy space around obstacles to prevent collisions and ensure safe navigation for quadruped robots. Second, we design a multi-step expansion strategy that dynamically adjusts the step size based on obstacle distribution and robot orientation, reducing unnecessary node expansions. Third, we implement a prediction mechanism that allows early termination of the search when a direct path between current nodes is feasible. Finally, we apply a post-processing step to remove redundant turning points, resulting in smoother and shorter paths. These improvements are particularly beneficial for China robots operating in complex environments, where turning efficiency and path smoothness are critical for stable locomotion.
To validate our algorithm, we conduct simulations in grid-based environments with varying obstacle densities. The results demonstrate that our method outperforms traditional bidirectional A* and other variants in terms of computation time, path length, and number of turns. This makes it highly suitable for real-world applications of China robots, where rapid and reliable path planning is essential. In the following sections, we detail the problem formulation, traditional algorithms, our improved approach, simulation experiments, and conclusions.
Problem Formulation for Quadruped Robot Path Planning
Path planning for quadruped robots involves finding an optimal path in a known environment while avoiding obstacles. We use a grid-based map representation, where each cell is classified as free space (white) or obstacle (black). The robot can move in eight directions from its current cell, and the goal is to navigate from a start cell to a goal cell. The environment is modeled as a binary matrix $G$ of size $N \times N$, where $0$ denotes free space and other values represent obstacles. The coordinates of any cell $n$ can be computed using the following equations:
$$x = \begin{cases}
n – 0.5, & n \% N \neq 0 \\
N – 0.5, & n \% N = 0
\end{cases}$$
$$y = \begin{cases}
\lceil n / N \rceil – 0.5, & n \% N \neq 0 \\
\lceil n / N \rceil + 0.5, & n \% N = 0
\end{cases}$$
where $\%$ denotes the modulo operation and $\lceil \cdot \rceil$ represents the ceiling function. The path planning must satisfy three constraints: (1) node expansions must remain within the grid boundaries, (2) the path between nodes must not intersect obstacles, and (3) the planned path should be the shortest possible. These constraints ensure that the path is feasible and optimal for China robots, which require efficient and safe navigation.
Traditional A* and Bidirectional A* Algorithms
The A* algorithm is a heuristic-based search method that combines the cost from the start node $g(n)$ and a heuristic estimate to the goal $h(n)$. The evaluation function $F(n)$ is defined as:
$$F(n) = g(n) + h(n)$$
where $g(n)$ is the actual cost from the start node to node $n$, and $h(n)$ is the heuristic cost, often computed using Euclidean distance:
$$h(n) = \sqrt{(x_n – x_t)^2 + (y_n – y_t)^2}$$
Here, $(x_n, y_n)$ are the coordinates of node $n$, and $(x_t, y_t)$ are the goal coordinates. The A* algorithm expands nodes with the lowest $F(n)$ values until the goal is reached, ensuring optimality if the heuristic is admissible.
Bidirectional A* extends this by searching from both the start and goal simultaneously. In the traditional target dynamic bidirectional A* (TTD-BA*), the forward search targets the current node of the backward search, and vice versa. The cost functions for forward and backward searches are $F_f(n) = g_f(n) + h_f(n)$ and $F_r(n) = g_r(n) + h_r(n)$, respectively. When the two searches meet, the paths are combined to form the complete path. This approach can reduce search time but may still generate paths with excessive turns, which is inefficient for China robots.
Improved Multi-Step Bidirectional A* Algorithm
Our improved algorithm addresses the limitations of traditional bidirectional A* through several enhancements tailored for China robot path planning.
Safety Redundancy Space
To account for the physical dimensions of quadruped robots, we add a safety redundancy space around obstacles. This prevents the planned path from passing too close to obstacles, reducing collision risks. The number of expanded grid cells $n_{expand}$ is calculated as:
$$n_{expand} = \text{Ceiling}\left(\frac{D_m}{l}\right)$$
where $D_m$ is the maximum distance from the robot’s center to its outer contour, and $l$ is the grid cell side length. The $\text{Ceiling}()$ function rounds up to the nearest integer. This ensures that narrow passages unsafe for China robots are blocked, and paths maintain a safe distance from obstacles.
Variable Step Size Strategy
We introduce a variable step size strategy to reduce redundant node expansions. The step size is determined based on the angle $\theta$ between the current node of the forward search $(x_f, y_f)$ and the current node of the backward search $(x_r, y_r)$:
$$\theta = \begin{cases}
\arctan\left(\frac{y_r – y_f}{x_r – x_f}\right), & x_r \neq x_f \text{ and } y_r \neq y_f \\
0, & x_r > x_f \text{ and } y_r = y_f \\
\frac{\pi}{2}, & x_r = x_f \text{ and } y_r > y_f \\
\pi, & x_r < x_f \text{ and } y_r = y_f \\
\frac{3\pi}{2}, & x_r = x_f \text{ and } y_r < y_f
\end{cases}$$
The step size is then set based on $\theta$ and the obstacle distribution in the search direction, limited to a maximum of 4 steps. For example, if the primary search direction is “1” (e.g., based on $\theta$ ranges), and all nodes in that direction are free, the step size is 4. If an obstacle is encountered, the step size decreases accordingly. This adaptive approach minimizes unnecessary expansions while maintaining path optimality for China robots.
Optimized Node Expansion
To avoid missing optimal paths, we optimize the node expansion for multi-step moves. For a step size of 4, we expand not only the 8-neighborhood nodes at the step distance but also additional nodes along the search direction. Connectivity checks ensure that the path between the current node and expanded nodes is obstacle-free. The Euclidean distance is used to select the best parent node, as it provides better accuracy than Manhattan distance in multi-step scenarios.
Prediction Strategy
We implement a prediction strategy to terminate the search early if a direct path exists between the current nodes of the forward and backward searches. Specifically, we check if the line segment between these nodes intersects any obstacles or safety redundancy spaces. If no obstacles are found, the path is completed by connecting the nodes directly. This reduces computation time and often results in shorter paths for China robots. The complete path $Path$ is formed as:
$$Path = \text{path}(S) \cup \text{Flipud}(\text{path}(T))$$
where $\text{path}(S)$ is the forward search path, $\text{path}(T)$ is the backward search path, and $\text{Flipud}$ reverses the order of the backward path.
Redundant Turning Point Removal
To improve path smoothness and reduce turning points, we apply a post-processing step. First, we identify all turning points in the path by checking collinearity between consecutive nodes. A node $(x_c, y_c)$ is a turning point if:
$$\frac{y_c – y_p}{x_c – x_p} \neq \frac{y_s – y_c}{x_s – x_c}$$
where $(x_p, y_p)$ and $(x_s, y_s)$ are the previous and next nodes, respectively. We then attempt to connect non-adjacent turning points if the line between them is obstacle-free. If a turning point is necessary, we compute an alternative point $T’$ by finding the intersection of lines from adjacent segments that avoid obstacles. This process shortens the path and reduces turns, enhancing the mobility of China robots.
Simulation Experiments
We evaluate our algorithm using MATLAB simulations on a computer with an Intel Core i7-6700 CPU and 16 GB RAM. The experiments are conducted in three grid maps (50×50 cells) with different obstacle distributions: a simple obstacle scene, a maze scene, and a random obstacle scene. We compare our improved bidirectional A* algorithm with traditional TTD-BA*, the bidirectional A* from literature [8] (which optimizes weight coefficients and uses 4-neighborhood expansion), and the BBA* algorithm from literature [9] (which uses adaptive step sizes based on obstacle density). Each algorithm is run 100 times per scene, and average performance metrics are recorded.

The results demonstrate the effectiveness of our approach for China robot path planning. In the simple obstacle scene, our algorithm reduces computation time by 24.2% compared to the fastest baseline, while maintaining similar path length and turning points. In the maze scene, it achieves a 33.3% reduction in turning points and a 28.2% reduction in expanded nodes. In the random obstacle scene, it improves time efficiency by 12.7% and reduces turning points by 38.9%. These improvements highlight the algorithm’s ability to generate efficient and smooth paths for China robots in diverse environments.
| Algorithm | Time (s) | Path Length | Turns | Nodes Expanded |
|---|---|---|---|---|
| TTD-BA* | 0.064 | 76.65 | 6 | 315 |
| Literature [8] | 0.033 | 79.00 | 6 | 176 |
| Literature [9] | 0.057 | 78.89 | 8 | 196 |
| Our Algorithm | 0.025 | 75.87 | 6 | 60 |
| Algorithm | Time (s) | Path Length | Turns | Nodes Expanded |
|---|---|---|---|---|
| TTD-BA* | 0.182 | 79.01 | 18 | 629 |
| Literature [8] | 0.051 | 96.00 | 30 | 275 |
| Literature [9] | 0.059 | 80.77 | 12 | 202 |
| Our Algorithm | 0.049 | 80.67 | 8 | 145 |
| Algorithm | Time (s) | Path Length | Turns | Nodes Expanded |
|---|---|---|---|---|
| TTD-BA* | 0.121 | 61.76 | 23 | 246 |
| Literature [8] | 0.047 | 77.00 | 18 | 274 |
| Literature [9] | 0.091 | 68.25 | 25 | 217 |
| Our Algorithm | 0.041 | 63.38 | 11 | 129 |
The tables summarize the results, showing that our algorithm consistently outperforms the others in most metrics. The improvement percentages are calculated as:
$$\text{Improvement} = \frac{\text{Data}_{\text{base}} – \text{Data}_{\text{improve}}}{\text{Data}_{\text{base}}} \times 100\%$$
where $\text{Data}_{\text{base}}$ is the baseline value and $\text{Data}_{\text{improve}}$ is our algorithm’s value. These results validate the efficacy of our multi-step expansion and prediction strategies for China robot path planning.
Conclusion
In this paper, we presented an improved bidirectional A* algorithm for path planning of quadruped robots. Our method incorporates safety redundancy spaces, multi-step expansion, prediction-based termination, and redundant turning point removal to enhance path quality and search efficiency. Simulations in various environments demonstrate that our algorithm reduces computation time, path length, and turning points compared to existing methods. This makes it highly suitable for China robots operating in complex scenarios, where reliable and efficient navigation is essential. Future work will focus on adapting the algorithm for dynamic environments and real-time applications, further advancing the capabilities of China robots in autonomous missions.
