1. Introduction
The motion planning problem is an important research topic in the field of robots, encompassing mobile robots and manipulators [
1]. Motion planning for robots refers to planning a collision-free path within their working environment [
2]. In most work scenarios involving robots, including but not limited to robot navigation [
3], industrial automation [
4], and autonomous vehicles [
5], the performance of motion planning algorithms is of great significance. Within the robot workflow, it is crucial for them to efficiently and quickly plan a viable path once they have identified the tasks they need to perform. Therefore, the research on the robot motion planning algorithm has been continuously and extensively concerned.
Robot motion planning algorithms are mainly divided into three categories: graph-based search algorithms, sampling-based algorithms, and intelligent biomimetic path planning algorithms. The commonly used graph-based search algorithms include Dijkstra’s algorithm, the A* algorithm [
6], and the D* algorithm [
7], etc. These methods build maps containing known environment and obstacle information and then use graph theory to find a feasible path from start to goal in discrete space. They can certainly identify the optimal path if it exists. However, their computational efficiency is low when maps are complex, making them unsuitable for path planning in high-dimensional spaces. Intelligent bionic planning algorithms primarily include neural networks [
8], genetic algorithms [
9], ant colony optimization [
10], and so on. These algorithms can enable robots to achieve some autonomy and intelligence in complex, unknown environments. However, they require lengthy search times and are prone to local extremum, with difficulties in parameter tuning.
Sampling-based path planning algorithms mainly include probabilistic roadmap (PRM) [
11,
12] and rapidly-exploring random trees (RRT) [
13] algorithms, and their variables are based on random sampling rather than discretizing the configuration space [
14]. These methods construct a set of trajectories by iteratively adding random samples, and the probability of finding a solution is 100% when the number of iterations approaches infinity. They have higher search efficiency and can be used to solve high-dimensional path planning problems. In addition, they can effectively handle path planning problems with non-holonomic constraints. However, the solutions obtained by these algorithms are not optimal and often worse, requiring further optimization. Moreover, PRM is often inefficient when the geometric shape of the obstacle is not a priori known.
Consequently, the simple and efficient characteristics of the RRT algorithm have made it widely popular and attracted the attention of numerous researchers. A series of improvement measures have been proposed; they can be divided into unidirectional and multi-directional based on the expansion direction of the random tree. In terms of one-way random tree expansion, Kalisiak et al. [
15] proposed a new variation of the RRT planner, which demonstrates good performance in both loosely constrained and highly constrained environments. Ichnowski et al. [
16] presented a parallel RRT (PRRT) for feasible and optimal motion planning designed for modern multicore CPUs. For the shortage of RRT, Karaman et al. [
17] proposed the RRT* algorithm with asymptotic optimality and added random geometry and pruning optimization theory based on the RRT node to ensure the nodes can converge to the current optimal value. In terms of multi-directional random tree expansion, Lavalle et al. [
18] proposed bi-directional random tree (bi-RRT) for path planning of high-dimensional manipulators. The RRT-connect [
19] introduced the greedy expansion idea based on bi-RRT and sets cyclic expansion in the target random tree to speed up the connection speed of dual random tree nodes. The RRT algorithm has undergone long-term development and has achieved many research results. However, there remains a certain gap between the feasible path and the optimal path, and further research is still needed.
The cross-entropy (CE) algorithm is a new heuristic algorithm for studying stochastic optimization problems in recent years [
20]. The core idea of the CE algorithm is to find the predicted distribution that is the same or closest to the true distribution through a certain random process [
21]. It is particularly suitable for solving optimization problems with continuous variables, and it has lower computational complexity and stronger robustness compared with other intelligent optimization algorithms [
22,
23]. Therefore, combining the CE algorithm with the RRT algorithm to fully leverage their advantages is a direction worth exploring.
Motivated by the aforementioned discussion, the purpose of this paper is to propose a CE-RRT algorithm by combining the CE algorithm with the RRT algorithm for more efficient and excellent path planning. The main contribution of the work is summarized as follows:
- (1)
An adaptive RRT algorithm based on cross-entropy optimization (CE-RRT) is proposed by introducing three improved strategies. Firstly, an adaptive sampling strategy is introduced to make the search directional. Secondly, an adaptive step adjustment strategy is proposed to improve the search efficiency of the algorithm; it can adaptively adjust the growth step based on obstacle information. Thirdly, a path smoothing method is introduced to reduce redundant nodes in the path, and then the CE algorithm is used to optimize the smoothed path and improve its quality.
- (2)
A two-dimensional maze environment, a two-dimensional cluttered environment, and a three-dimensional environment are used to test the CE-RRT algorithm. The RRT algorithm is used as a benchmark to measure the effectiveness of the three proposed optimization strategies. The simulation results show that adaptive sampling and adaptive step adjustment strategies can effectively increase the search speed of the algorithm, and the CE algorithm can also significantly improve path quality.
The article consists of five sections, including the introduction (
Section 1).
Section 2 defines the motion planning problem and provides a more detailed introduction to the RRT algorithm and CE algorithm.
Section 3 proposes the CE-RRT algorithm, and performance tests are shown in
Section 4.
Section 5 presents a dual robot welding path planning simulation experiment.
Section 6 briefly describes the obtained results and future works.
2. Background
This section defines the motion planning problem and provides a more detailed introduction to the RRT algorithm and CE algorithm. These algorithms form the basis of the proposed CE-RRT algorithm.
2.1. Problem Definition
Define
as the configuration space,
as the obstacle area, and
as the closed area between
and
, where
d is the dimension of the configuration space, or the degree of freedom of the robot.
defines a path planning problem, where
is the initial state and
is the goal region. Once the path point reaches the interior of the goal region
, it can be considered as reaching the goal state. The schematic diagram in two-dimensional configuration space is shown in
Figure 1. Based on the above explanation, the definitions of collision-free path, feasible path planning, and optimal path planning are as follows:
Definition 1. (Collision-free path): Define a bounded continuous changing function as a path. A path is collision-free, if .
Definition 2. (Feasible path planning): For a given path planning problem , feasible path planning is to find a feasible path such that is collision-free, , and .
Definition 3. (Optimal path planning): For a given path planning problem , optimal path planning is to find a feasible path that minimizes the cost such that , where is the cost function of path f.
2.2. RRT Algorithm
The RRT algorithm is a sampling-based path planning algorithm, and its main process is shown in Algorithm 1. The known input information includes environment information , initial state , goal state (region) , growth step , and maximum number of iterations . The feasible path from to is output. Firstly, initialize the random tree and add the initial node to . Then, repeat steps 3~15 until a feasible path is found or the maximum number of iterations is reached. In each iteration of the algorithm, a node is randomly generated from the collision-free area (step 4), and then the node closest to is found on the random tree (step 5). Next, starting from , a new node is generated along the direction from to with a step size (step 6). In step 7, the generated path is performed to collision detection. If no collision occurs, output flag s = 0 and add the new node to the random tree . In steps 11~14, when the new node reaches the goal area , the path planning ends and outputs the feasible path f found, and the loop ends.
On the basis of the above description, the RRT algorithm has the following possible drawbacks. Firstly, the search direction of the algorithm is determined by a random node
, it is completely random and lacks a certain direction guidance mechanism, this can easily lead to the waste of computing resources. Secondly, the growth step
is fixed, and a too small
can significantly reduce computational efficiency, while a too large
can easily cause collisions, lacking a mechanism for adaptive adjustment of the step with the environment. In addition, the paths generated by the RRT algorithm often have significant differences from the optimal path, and existing smoothing operations are mostly based on greedy strategies, lacking global optimization capabilities. Therefore, it is necessary to propose a series of improvement strategies to improve these shortcomings.
Algorithm 1: RRT algorithm |
Input: The environment information, The initial state of the robot, The goal region of the robot |
Maximum number of iterations, growth step |
Output: Feasible path f |
1
|
2
|
3
for to do |
4 Randomly generated in |
5 |
6 |
7 |
8 if (, no collision) then |
9 |
10
end if |
11 if (arrived ) then |
12
|
13
break |
14
end if |
15
end for |
16 Return: |
2.3. CE Algorithm
The core idea of the CE algorithm is to find the predicted distribution that is the same or closest to the true distribution through a certain random process, mainly using a normal distribution. The traditional CE algorithm is listed in Algorithm 2 [
24]. Firstly, the appropriate initial
and
are selected for the normal distribution based on the range of variable values (steps 1~2). At the beginning, a larger value can be selected for sigma, allowing the normal distribution to have a larger search range. It indicates that the predicted distribution is very close to the true distribution when
converges to a very small value (steps 4~5). Then the main loop started until
. In each iteration,
N samples are generated based on normal distribution
(step 6), and their corresponding fitness values are calculated (step 7). After sorting the fitness values (step 8),
samples with lower fitness are selected as elite samples for parameter updating and the next iteration (steps 10~12). When the algorithm reaches the termination criteria, the mean of the approximate optimal solutions
is output as the optimization result.
Algorithm 2: CE optimization algorithm |
Input: Initial mean , variance , sample size N, elite sample rate , smoothing coefficient |
Output: Mean of generation t |
1 | Randomly generate a rational number |
2 | Randomly generate a rational number |
3 | , () represents rounding down |
4 | , |
5 | while do |
6 | Generate N samples based on normal distribution |
7 | Calculate fitness function values |
8 |
|
9 | Select individuals with smaller fitness |
10 | Parameter updating: , |
11 | Smoothing operation: , |
12 |
|
13 | end while |
14 | Return: |
6. Conclusions
In this paper, a novel adaptive RRT algorithm based on CE optimization (CE-RRT) is proposed by introducing three improved strategies. The purpose is to solve robot path planning problems more quickly and stably. A series of experiments are conducted to evaluate the performance of the CE-RRT algorithm in a 2D maze environment, a 2D cluttered environment, and a 3D environment. The RRT algorithm is used as a benchmark to measure the effectiveness of the three proposed optimization strategies. The results demonstrate that adaptive sampling and adaptive step adjustment strategies can effectively increase the search speed of the algorithm, and the CE algorithm can also significantly improve path quality (the path of CE-RRT is shortened by 26%, 22.70%, and 49.11%). Particularly, the statistical results of 100 simulations indicate that the CE-RRT algorithm exhibits stronger stability in 3D environments. In addition, the CE-RRT algorithm is used to plan a reasonable path for the dual robots to perform tasks based on the dual Sawyer robot simulation platform.
While the CE-RRT algorithm demonstrates significant improvements in search efficiency and path quality within the static environments tested in this study, several promising avenues for future research have been identified:
- (1)
Extension to Dynamic Environments: The most critical next step is to extend CE-RRT to handle dynamic environments with moving obstacles. This requires developing mechanisms for real-time obstacle detection and prediction and integrating dynamic constraints into the adaptive sampling, step adjustment, and path optimization strategies. The robust performance observed in the static 3D environment (
Section 4.3.3) provides a strong foundation for tackling this challenge.
- (2)
Evaluation in More Complex Static Scenarios: Further validation is needed in environments featuring highly intricate geometries, dense obstacle fields, and narrow bottlenecks beyond those tested here.
- (3)
Parameter Sensitivity Analysis: A systematic investigation into the sensitivity of CE-RRT’s performance to its key parameters across diverse environments is warranted to provide clearer guidelines for practical deployment.
- (4)
Real-World Implementation: Transitioning the algorithm from simulation to physical robot platforms (beyond the dual-Sawyer simulation) and addressing real-world uncertainties (sensor noise, actuation errors) is essential for demonstrating its practical utility.