Next Article in Journal
Tool for Parsing Important Data from Web Pages
Previous Article in Journal
Thermal Characterization of Phase Change Materials by Differential Scanning Calorimetry: A Review
Previous Article in Special Issue
APF-IRRT*: An Improved Informed Rapidly-Exploring Random Trees-Star Algorithm by Introducing Artificial Potential Field Method for Mobile Robot Path Planning
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

RJ-RRT: Improved RRT for Path Planning in Narrow Passages

School of Computer and Information Science, Southwest University, Chongqing 400715, China
*
Author to whom correspondence should be addressed.
Appl. Sci. 2022, 12(23), 12033; https://doi.org/10.3390/app122312033
Submission received: 26 September 2022 / Revised: 8 November 2022 / Accepted: 11 November 2022 / Published: 24 November 2022
(This article belongs to the Special Issue Advances in Robot Path Planning)

Abstract

:
As a representative of sampling-based planning algorithms, rapidly exploring random tree (RRT), is extensively welcomed in solving robot path planning problems due to its wide application range and easy addition of nonholonomic constraints. However, it is still challenging for RRT to plan the path for configuration space with narrow passages. As a variant algorithm of RRT, rapid random discovery vine (RRV) gives a better solution, but when configuration space contains more obstacles instead of narrow passages, RRV performs slightly worse than RRT. In order to solve these problems, this paper re-examines the role of sampling points in RRT. Firstly, according to the state of the random tree expanding towards the current sampling point, a greedy sampling space reduction strategy is proposed, which decreases the redundant expansion of the random tree in space by dynamically changing the sampling space. Secondly, a new narrow passage judgment method is proposed according to the environment around of sampling point. After the narrow passage is identified, the narrow passage is explored by generating multiple subtrees inside the passage. The subtrees can be merged into the main tree that expands in a larger area by subsequent sampling. These improvements further enhance the value of sampling points. Compared with the existing RRT algorithms, the adaptability for different environments is improved, and the planning time and memory usage are saved.

1. Introduction

With the rising use of applications such as unmanned aerial vehicles (UAV), autonomous driving, and mobile robots, path planning as an essential part of their technology have long been a research hotspot of scholars [1,2]. The main task of path planning is to find an optimal or sub-optimal path from the initial configuration to the goal configuration in the configuration space according to specific performance criteria, such as path length, planning time, and whether the vehicle kinematics are satisfied.
Among many types of algorithms, the graph-based search method represented by A* [3] and Dijkstra’s algorithm [4] divides the configuration space mapped from the real environment into multiple grids according to the size of the resolution and then uses the graph search method to find feasible paths. The resolution size has a decisive impact on this type of algorithm’s performance. An overly complex and sizeable real environment often causes an exponential increase in computing time and memory usage  [5]. As another important class of planning algorithms, sampling-based planning algorithms, represented by RRT [6] and Probabilistic Road Map (PRM) [7], simplify the configuration space by random sampling. Therefore, they do not require complex geometric modelling and perform better in high dimensions or large environments. Probabilistic completeness guarantees that if at least one feasible path exists, the probability of this class of methods finding the path will be 1 [8,9].
Although sampling-based methods have many advantages for path planning, the performance of such algorithms still has challenges when the configuration space contains multiple narrow passages [10,11]. As a single-query, RRT plans a path by constructing a random tree extending from the initial configuration to the goal configuration by continuous random sampling. As a multi-query, the PRM needs to generate several random sampling points at the preprocess stage and then connect these points to each other to form a connectivity graph, thus capturing the configuration space’s connectivity. Due to the special property of random sampling, both RRT and PRM are affected by the volume limitation of free space in the random sampling process. Specifically, the branches generated when RRT constructs a random tree are almost impossible to expand in narrow passages, and PRM is difficult to generate random sampling points in the collision-free configuration space with small volumes, thus affecting the construction of connected graphs. To solve the problem that the sample-based algorithm has insufficient planning ability for narrow passages, scholars have given many solutions. For PRM, in [12], the author proposes an extended-retract map that makes the sampling points all fall on the central axis of free space. In [13], the author proposed a strategy based on Gaussian sampling. This strategy will increase the sampling points located at the boundary between the obstacle and the free space and eventually generate many sampling points around the obstacle. However, it is not considered that the sampling point is around the obstacle but not necessarily inside the narrow passage. In [14], the author proposes a bridge connection test method to detect narrow passages. In this method, a bridge is built by sampling points located on two different obstacles. If the midpoint of the bridge is in free space, it means that it has passed the bridge test. Obviously, narrow passages make it easier to build such bridges. In [15], the author uses an artificial potential field to make the sampling point located on the obstacle move to free space under the action of repulsive force. In [16], the authors coordinately map both the obstacle space and the free space at the same time, increasing the connectivity of the graph inversely through failed connections.
For RRT, since RRT is more goal-oriented than PRM, it is planning a path while constructing a tree, which makes the improvement of RRT have greater potential. In [17], the authors propose a Voronoi bias-based planner and improve the sampling strategy according to the visibility of the regions by nodes in the tree. In [18], the authors regress the sampling points located on the obstacle so that the tree can expand around the edge of the obstacle, thus ensuring the exploration inside the passages. In [19], the author reduces the total number of samples by rejecting nodes located in the repeated sampling area and proposes a random steer strategy for the narrow passage area, as well as the fusion and adjustment of the path to make the path close to the optimal path. In [20], the authors use a simple heuristic to generate additional subtrees in the configuration space and control the expansion of the subtrees through parameters. In [21], a modified bridge test is used to identify narrow passages and relies on multiple subtrees to explore narrow passages. In [22], the author balances the exploration of global and local random trees through Markov chains. In [23], the authors use PRM globally and rely on special sampling points to activate RRT and use RRT to explore the complex environment. Based on this idea, RRT can be combined with various variants of PRM.
In particular, with the development of machine learning methods in recent years, learning-based path-planning methods have been extensively developed. In [24], for dynamically changing environments, the authors build a predictive model using Support Vector Machine (SVM) to capture the connectivity of narrow passages. In [25], the authors learn by analyzing the density of samples around special regions, using semantic information to guide the distribution of sampling points in random sampling. In [26], the authors model the expansion of random trees as a multi-armed bandit problem and learn action values through reinforcement learning. In [27], the author uses a large number of asymptotically optimal paths planned by A* as a dataset to train convolutional neural network (CNN) model, which can predict the optimal path on the map and guide the distribution of sampling points. In [28], the authors perform local sampling around the sampling point that are difficult to expand, and by performing principal component analysis (PCA) on these local sampling points, the local surrounding environment is divided into narrow passage entrances, narrow passage interiors, and obstacle edges, so random trees can climb obstacles in different environments like vines to expand. This method has achieved good results in the environment with narrow passages. However, due to its dependence on the environment, the performance is slightly worse than RRT in an environment with many obstacles but no narrow passages.
In addition, when solving the problem of narrow passages, the above methods mostly ignore the randomness of whole configuration space sampling, which often leads to part of sampling points in space that are not helpful for the final path construction so that increasing the total planning time and wasting memory resources. This paper proposes a new planning algorithm based on the RRT named Reduce-Judge RRT (RJ-RRT). Specifically, the new algorithm includes two improvements: firstly, based on the greedy idea, a sampling strategy is proposed to reduce the sampling space to the goal area gradually. Secondly, a new method of environment judgment is proposed, when a narrow passage is identified, it can be explored by subtrees expansion inside the passages. The improved environment judgment method only needs a straightforward calculation to determine the environment around the current sampling point. Both strategies improve planning efficiency. On the one hand, random sampling points are used to reduce the sampling space to avoid random tree expansion in space that does not help with path planning. On the other hand, random sampling points are used to detect the surrounding environment, and the subtree of narrow passages helps the random tree expand in the configuration space that is difficult to explore. The results show that the algorithm has good adaptability to various environments, and can greatly reduce the planning time and memory usage.
The rest of this paper is outlined as follows. Section 2 formally defines the path planning problem and introduces the preconditions of the proposed algorithm. Section 3 explains the RJ-RRT method proposed in this paper. Section 4 provides the results and evaluation of the simulation experiments. Section 5 concludes this paper and discusses future research directions.

2. Background

This section formally defines the problem that path planning needs to solve and introduces algorithms such as Basic-RRT.

2.1. Problem Definition

Let X R d be the the configuration space of the path planning problem, where d N , d 2 . Let X o b s X be the obstacle space, which is an impassable space, and denotes the obstacle-free space as X f r e e = X \ X o b s , which is a passable space. x i n i t X f r e e and x g o a l X f r e e are the initial configuration and the goal configuration, respectively, and the goal region is defined as a circle with radius r: X g o a l = x X | | | x x g o a l | | < r . A path is defined by continuous function σ : 0 , T X f r e e , and σ 0 = x i n i t , σ T = x g o a l . If the path is feasible, then σ τ X f r e e for all τ 0 , T .
The path planning problem is to find a feasible path. Problem 1 defines the feasibility problem of path planning.
Problem 1 (Feasible Path Planning) Given a configuration space of planning problem X R d , a free space X f r e e , an initial state x i n i t X f r e e , and a goal region X g o a l X f r e e , find a path σ : 0 : T X f r e e if one exists. If no such feasible path exists, return failure.
The cost from the initial configuration to the goal region is not necessarily the same each time planning or on each path. Let c · be the cost function. The optimization problem of path planning is to find the path with minimum (non-negative) path cost. Its formal expression is given by Problem 2.
Problem 2 (Optimal Path Planning) Given a configuration space of planning problem X R d , a free space X f r e e , an initial state x i n i t X f r e e , a goal region X g o a l X f r e e and cost function c. Find a feasible path σ * , such that c σ * = m i n c σ : σ f e a s i b l e .
The path planning algorithm usually takes some time to plan the path. Let t R be the set of times it takes to find a set of paths. Problem 3 defines finding the best path in Problem 2 in the least amount of time possible.
Problem 3 (Fast Path Planning) Minimum time t R required to plan the Optimal Path.

2.2. Basic-RRT

The Basic-RRT algorithm is described in Algorithm 1 and the Basic-RRT is the basis of RJ-RRT, an underlying tree data structure is maintained in Basic-RRT. As shown in Figure 1. Firstly, Basic-RRT creates a tree rooted at the x i n i t (Line 1 in Algorithm 1). In each subsequent iteration, x r a n d is obtained by randomly sampling in the configuration space X, traversing the existing nodes in the tree, selecting the node x n e a r closest to x r a n d , and generating x n e w through the steering function with a certain expand size (Lines 3–5 in Algorithm 1). If the edge x n e a r , x n e w is not located in X o b s , then x n e w is added to the tree with x n e a r as the parent node, and the edge x n e a r , x n e w will be recorded (Lines 6–8 in Algorithm 1). When x n e w is within the range of X g o a l , the planning is ended, and the tree is returned. The return fails when the time-out or the number of iterations is exceeded (Lines 9–11 in Algorithm 1).
Algorithm 1 Basie-RRT
1:
T r e e x i n i t
2:
fori = 1 to n do
3:
    x r a n d S a m p l e ( )
4:
    x n e a r N e a r e s t ( )
5:
    x n e w S t e e r ( x r a n d , x n e a r )
6:
   if  F r e e C o l l i s i o n ( x r a n d , x n e a r )  then
7:
      T r e e . a d d E d g e ( x n e a r , x n e w )
8:
      T r e e . a d d N o d e ( x n e w )
9:
     if  x n e w X g o a l  then
10:
        return T r e e
11:
     end if
12:
   end if
13:
end for
RRT-Biased [29] is an efficient method to improve RRT. By the premise of a certain probability, the x g o a l is set as the sampling point so that the tree can expands faster to the goal area. In Algorithm 2, given a brief description of RRT-Biased.
Algorithm 2 Biased-RRT
1:
p r a n d R a n d o m N u m b e r ( )
2:
if   p r a n d K   then
3:
    x r a n d = x g o a l
4:
else
5:
    x r a n d S a m p l e ( )
6:
end if
In this paper, the tree is rooted at x i n i t denoted as main tree. The rest of the trees denoted as subtrees.

3. RJ-RRT

In the Basic-RRT algorithm, the selection of random sampling points is in the entire configuration space or can be described as blind, such as in a certain sampling, the current sampling point is likely very close to the goal region, however, due to the randomness of sampling, the position of the sampling point in the subsequent sampling process is biased., the random tree will likely expand to a region that does not have a facilitation effect on the final path generation. RRT-Biased, although through a forced modification make the random tree is biased expand towards the goal region, when encountering a trap or a complex environment, it falls into the same predicament as Basic-RRT. The role of sampling points for Basic-RRT is to guide the expansion direction of the random tree. If the random tree can quickly approach the goal region, it needs to expand toward the goal region while avoiding obstacles. This is also a requirement for an efficient planner can generate sampling points. To achieve this efficacy and enhance the value of sampling points, in RJ-RRT, sampling space greedy reduction and environment judgement are performed through sampling points, and subtrees are expand in special environments. The overall framework of the RJ-RRT is given by Algorithm 3 and in the subsequent sections detailed description of each improvement.
Algorithm 3 RJ-RRT
1:
M a i n T r e e x i n i t
2:
for i = 1 to n do
3:
    x r a n d G r e e d S p a c e S a m p l i n g ( )
4:
    S u b T r e e s E n v i r o n m e n t a l J u d g m e n t ( x r a n d )
5:
   if  F r e e C o l l i s i o n ( x r a n d , x n e a r )  then
6:
      M a i n T r e e . a d d E d g e ( x n e a r , x n e w )
7:
      M a i n T r e e . a d d N o d e ( x n e w )
8:
     if  x n e w X g o a l  then
9:
        return M a i n T r e e
10:
     end if
11:
      S u b T r e e E x p a n d ( )
12:
      S u b T r e e M e r g e ( )
13:
   end if
14:
end for

3.1. Sampling Space Greedy Reduction Strategy

When there is only the root node x i n i t in the tree, like the sampling strategy is the same as Basic-RRT, sampling points will be randomly selected in the entire configuration space X (Line 1 in Algorithm 3). A space greedy reduction strategy is executed when x n e w is successfully added to the tree, which is shown in Algorithm 4. For ease of description, the configuration space is denoted as the first O r i g i n a l S p a c e . When a node x n e w is successfully added to the tree, the O r i g i n a l S p a c e will be reduced (Lines 1–2 in Algorithm 4). The specific process is to take x n e w as the boundary point of the new sampling space and use the boundary point as the benchmark to divide the O r i g i n a l S p a c e in each dimension to obtain a subspace containing the goal region. This subspace will be used as the space for the next random sampling and denoted as N e x t S p a c e . In the next sampling, this N e x t S p a c e will replaced by O r i g i n a l S p a c e (Lines 3–6 in Algorithm 4). At this time, the sampling space completes a reduction. After each sampling space is reduced, record the G a p S p a c e between N e x t S p a c e and the O r i g i n a l S p a c e , where G a p S p a c e is defined as Equation (1):
G a p S p a c e = O r i g i n a l S p a c e \ O r i g i n a l S p a c e N e x t S p a c e
As the number of space reductions increases, will generate N  G a p S p a c e , denoted as G a p 1 , G a p 2 G a p N . Ideally, the sampling space will gradually approach the goal region as the number of sampling increases, but this situation is often not practical. When the random tree expansion with random sampling fails in the O r i g i n a l S p a c e , it means that the current space has failed to be reduced, and the space to sample will fall back to the G a p S p a c e   G a p N nearest to the O r i g i n a l S p a c e (Line 8 in Algorithm 4). Specifically, when executing this function, sampling will first take place in the G a p S p a c e and perform multiple times to provide more node expansion options for the next space reduction. When the specified sampling times are reached in the G a p S p a c e , forward to the space where the space reduction failed, that is, the O r i g i n a l S p a c e for sampling. If the expansion is successful after sampling, the random tree continues to expand according to the above reduction strategy. If the expansion fails, fall back to the previous G a p S p a c e   G a p N 1 sampling of the G a p S p a c e   G a p N . After sampling multiple times, forward to the G a p S p a c e   G a p N , sample again, and finally, forward to the O r i g i n a l S p a c e for sampling. If the reduction still fails, continue to fall back to sampling in more outer G a p S p a c e , and then sample in the next G a p S p a c e of each G a p S p a c e in turn. When fall back to the first G a p S p a c e sampling, namely G a p 1 , the random tree generated by RJ-RRT in the configuration space is like the Basic- RRT.
Algorithm 4 GreedSpaceSampling
1:
O r i g i n a l S p a c e = C o n f i g u r a t i o n S p a c e
2:
x r a n d S a m p l e ( O r i g i n a l S p a c e )
3:
if   F r e e C o l l i s i o n ( x r a n d , x n e a r )   then
4:
    N e x t S p a c e R e d u c e ( x r a n d , X g o a l )
5:
    G a p S p a c e R e d u c e ( O r i g i n a l S p a c e , N e x t S p a c e )
6:
    O r i g i n a l S p a c e = N e x t S p a c e
7:
else
8:
    x r a n d B a c k w i t h F o r w a r d S a m p l e ( G a p S p a c e )
9:
end if
Take Figure 2 as an example. Firstly, A is the configuration space and the first O r i g i n a l S p a c e . After the sampling and steering function, the newly added node is P 1 . The sampling space is reduced as the random tree expands, through P 1 formed new sampling space B. Sampling in B to obtain node P 2 , the space is further reduced to obtain sampling space C, sampling in C, random tree expansion is difficult, indicating that the current space cannot be further reduced, fall back to the G a p S p a c e between B and C for sampling, and after multiple samplings, forward to sample in C, the space reduce still fail, come back to sampling in the G a p S p a c e between A and B to sample multiple times, forward again to sampling in the G a p S p a c e between B and C, and finally forward to sampling and expanding in C.

3.2. Environmental Judgment

The main purpose of environmental judgment is to identify narrow passages and set the expansion space of subtrees (Line 4 in Algorithm 3). Environmental judgment will mainly occur during part of the sampling process, and special cases where environmental judgment is not performed will be described in the next section.
When randomly generating a sampling point x r a n d in the sampling space, the environment around x r a n d will be judged. As shown in Figure 3. Firstly, if x r a n d is located in X f r e e , the subsequent judgment will be omitted. If x r a n d is located in X o b s , then perform local sampling in the circle with x r a n d as the center and R 1 as the radius to obtain N 1 sampling points and determine the space where these sampling points are located (Line 1 in Algorithm 5). If there are sample points located in X f r e e , it can be inferred that x r a n d is at the boundary of the obstacle and close to free space. Randomly pick a sampling point in X f r e e , denoted as x c i r . Divide the circle with x c i r as the center and R 2 as the radius into eight equal parts and obtain eight marked points on the boundary of the circle, denoted as M 1 , M 2 , M 3 , M 4 , M 5 , M 6 , M 7 , and M 8 (Lines 2–3 in Algorithm 5). Through the location of the marked points, it is further identified whether the current surrounding environment of x c i r is the inside of the narrow passage or the entrance of the narrow passage. The process of judging the surrounding environment of the sampling point is given by Algorithm 5.
Algorithm 5 EnvironmentalJudgment
1:
x c i r L o c a l S a m p l e ( x r a n d )
2:
M a r k e d P o i n t s L o c a l J u d g e m e n t ( x c i r )
3:
S u b T r e e E x p a n d S p a c e L o c a l J u d g e m e n t ( M a r k e d P o i n t s )
Inside the narrow passage: as shown in Figure 4, when two or four marked points are located in X f r e e , the remaining marked points are located in X o b s , and where each marked point located in free space is matched with another free point with an angle of 180°. Then, we inferred that x c i r is located inside the narrow passage. In this case, the constructed subtree expansion space is a rectangle (If the configuration space is 3D, will be a cube). The center of the rectangle is at x c i r , where the long side is parallel to the line formed by the 180° marked points in free space, and the length of the side is L 1 . The other short side of the rectangle is L 2 . This stretched rectangle constitutes the sampling space of the subtree.
Entrance of the narrow passage: when the marked points are distributed similarly to Figure 5, that is, there are three or four consecutive marked points and an additional isolated marked point (in Figure 5, the isolated marked point is M3) in the free space, while the adjacent to the isolated marked point or remaining marked points are located in the obstacle space then it is inferred that x c i r is located at the entrance of the narrow passage, and isolated marked point is used to identify narrow passage entrance and guide exploration. The constructed subtree expansion space is like that inside the narrow space. The difference is that the stretching of the subtree expansion space is only carried out in the same direction as the isolated marked point.
The generated subtree expansion space roughly depicts the outline of the narrow passage without the details of the narrow passage configuration, so this method does not require complex calculations. Using randomness of RRT sampling can obtain the configuration of free space in subtree extended space. Once a subtree expansion space is determined according to x c i r , the subtree expansion will be performed immediately. There are two attendant problems. Question 1: How to avoid the unlimited generation of multiple x c i r ? Question 2: How to avoid repeated exploration of the same narrow passage by multiple subtrees due to overlapping subtree expansion spaces? For Question 1, the unrestricted generation of subtrees is prevented by judging whether the x c i r is already within the expansion interval of some subtree. This method will also cause problems raised in Question 2. For Question 2, it can be solved by simple subtree merging, and the specific measures are discussed in the next section.

3.3. Subtree Expansion and Merge

3.3.1. Subtree Expansion

When judging that x c i r is located inside a narrow passage or at the entrance, take x c i r as the root of the subtree, randomly sample, and expand in the constructed subtree expansion space (Line 11 in Algorithm 3), and the expansion method is the same as that of Basic-RRT. Figure 6 shows the flow of subtree expansion. In addition, the expansion of the subtree will have a pre-expansion process, firstly sampling N2 times in the subtree expansion space. These sampling points do not make environmental judgments, and the external main tree does not expand with these sampling points. For other subtrees, if the distance between the x n e a r and x r a n d is less than D 1 , it indicates that these subtrees may be very close, and these subtrees will expand with this sampling. Then, when this space sampling ends, it will return to the O r i g i n a l S p a c e for sampling, and both the main tree and the subtrees will expand with each sampling. However the space reduction only happens in the expansion of the main tree.

3.3.2. Subtree Merge

Subtree merge can be divided into subtree with subtree and subtree with main tree merge (Line 12 in Algorithm 3). Subtree process of merging is given by Algorithm 6.
When sampling in O r i g i n a l S p a c e , if the distance between the nearest node is less than D 2 after the main tree and the subtrees expand once, the subtrees are merged into the main tree (Lines 4–5 in Algorithm 6). When sampling in the O r i g i n a l S p a c e or the subtree expansion space, if there are two or more subtrees after expanding once, the distance between the nearest nodes is less than D 2 , then the multiple subtrees are merged into one subtree (Lines 7–9 in Algorithm 6). This method not only merges multiple subtrees but also avoids the over-exploration of narrow passages caused by overlapping subtree expansion spaces.
The premise of merging multiple random trees is that there is no collision between the nearest nodes.
Algorithm 6 Subtree merge
1:
if   x r a n d S a m p l e ( )   then
2:
    M a i n T r e e E x p a n d ( )
3:
    S u b T r e e E x p a n d ( )
4:
   if  D i s t a n c e ( M a i n T r e e , S u b T r e e s ) < D 2  then
5:
       M a i n T r e e = ( M a i n T r e e S u b T r e e )
6:
   end if
7:
   if  D i s t a n c e ( S u b T r e e , O t h e r S u b T r e e ) < D 2  then
8:
       S u b T r e e = ( S u b T r e e O t h e r S u b T r e e )
9:
   end if
10:
end if

4. Simulation and Result

In this section, to evaluate the performance of the proposed algorithm, RJ-RRT is compared with Basic-RRT and RRV through a series of experiments. Simulation experiments were tested in three groups of different environments. As shown in Figure 7, three representative maps are designed in two-dimensional space: complex environment (containing many obstacles), narrow passage, and bug trap environment. The map size of each environment is 10*10. The initial configuration in the first two groups is 0.5 , 0.5 , the last group’s initial configuration is 2 , 3.5 , and the goal configuration uniformly is 9.8 , 9.8 . The black area represents obstacles, the green line represents the expansion state of the random tree, and the red line represents the final planned path. Each set of experiments is performed 50 times to collect experimental data. In order to clearly describe the differences in the performance of different algorithms, the average and maximum and minimum execution times of different algorithms in 50 experiments were calculated, and the number of generated nodes was used to reflect the memory usage. The number of collision detections for RRV and RJ-RRT includes additional nodes required for environmental judgment. All-time units are seconds. All algorithms use Gilbert–Johnson–Keerthi (GJK) [30] for collision detection, and the maximum number of iterations is 50,000. To speed up the planning, the three algorithms uniformly set the sampling probability in the goal space as 0.1. The expand size in the first two sets of experiments was 0.1. In our RJ-RRT, R1 is set to 0.5, N1 is set to 15, R2 is set to 0.7, L1 is set to 3, L2 is set to 1.5, and D1 and D2 are set to 0.7 and 0.5, respectively. All experiments were run on Windows 10 with Intel I7-7700, 3.6 Ghz 8 GB RAM processor, and using MATLAB 2019b as a software platform.

4.1. Complex Environment

Figure 8 shows the performance of the three algorithms in a complex environment. When testing the Basic-RRT algorithm, due to random sampling in the entire configuration space, the final generated random tree occupies almost the entire space. However, although the final tree generated by the RRV algorithm produces fewer nodes than RRT, it still expands in a lot of useless space, and PCA takes a lot of time to calculate. The average number of samples required by the RRV to plan a path is 29% less than that of the Basic-RRT, but the final average planning time is 51% higher than that of the Basic-RRT. The RJ-RRT has the best performance in this environment. The experimental results in the figure show that only a few redundant nodes are generated during the sampling process, and the planning time is the shortest. The specific statistical results of the three algorithms are shown in Table 1. It can be seen that with the setting of the maximum number of iterations, the three algorithms can find the path 100% in the test. In terms of planning time, RJ-RRT saves 87% compared to Basic-RRT, and 92% compared to RRV. The memory consumption of the generating node is 96% lower than that of Basic-RRT and 94% lower than that of RRV.

4.2. Narrow Passage

Figure 9 shows the planning performance of the three algorithms in a narrow passage environment. The experimental results show that when Basic-RRT faces a configuration space containing narrow passages, due to the lack of identification of the particular configuration of the narrow passage, it is not only challenging to find the entrance of the narrow passage but also challenging to expand inside the passage, so successful path-planning usually requires a large number of sampling points and more time. From Table 2, it can be concluded that, in this environment, both RRV and RJ-RRT perform better than RRT, while RJ-RRT requires the least amount of time and takes the least number of samples, on average 1.276 s, and generates an average of 227 sampling nodes. Compared with RRV, it saves 45% of planning time and 76% of the generation of the number of nodes. This means that the RJ-RRT can quickly plan a feasible path and occupy fewer memory resources for a narrow passage environment.

4.3. Bug Trap

The expanded size also affects the number of iterations and memory usage of the RRT and RRT variants. In RJ-RRT, the magnitude of each reduction in the sampling space is also determined by the size of the random tree expansion. Therefore, to analyze the influence of different expand sizes on the performance of different algorithms, we use 0.1/0.3 as the expand size for discussion in this experiment. Table 3 and Table 4 are the experimental data results when the expand size is 0.1 and 0.3, respectively, and Figure 10 shows the planning performance when the expand size is 0.3. It can be seen from Table 3 and Table 4 that RJ-RRT and RRV perform better than RRT in various performance aspects under different expand size settings. When the expand size is 0.1, RJ-RRT is higher than RRV in generating the total number of nodes. This is because the environment in this experimental, the long and narrow trap passage and short expand size lead to multiple G a p S p a c e s in the RJ-RRT planning process, resulting in the need for multiple fallback and forward operations. These processes increase the number of samples and planning time, so the final performance is not as good as RRV. When the expand size is set to 0.3, since the expand size increase reduces the number of Gap Spaces, RJ-RRT can still plan a path using a smaller number of nodes and a faster time.

4.4. Path Length

During the experiment, there was an additional discussion, due to the improvement of RJ-RRT’s two strategies of greedy space reduction and dependent subtrees exploration, the length of the final planned path is also reduced to a certain extent. Since the main content discussed in this paper is to improve the adaptability of the RRT algorithm in complex environments, especially in the narrow passage, rather than the path length, so only the path length is briefly discussed in this experiment. Figure 7a is used for the map in this experiment, and the rest of the settings are the same as those described above. RRT, RRV and RJ-RRT were tested 50 times, respectively, and the difference between the average of the planned path length of the three algorithms and the shortest path was compared. Figure 11 shows the comparison results of different algorithms on path length. It can be seen that the difference in length between RRV and RJ-RRT is not obvious, about 82%, 87% different from the shortest path and they both save much more distance than RRT.

5. Conclusions

This paper proposes a new planning algorithm RJ-RRT based on the RRT algorithm to solve the planning problem in narrow channels. A new greedy sampling space reduction and environment judgment strategy are proposed in RJ-RRT. While accelerating the expansion of random tree toward the goal area and reducing redundant nodes, it can identify narrow passages and rely on the subtrees expend inside to explore passages.
Compared with RRT and RRV algorithms, RJ-RRT has better adaptability to different environments and maintains a faster planning speed. In addition, another advantage of RJ-RRT is that easy to combine with other RRT variant algorithms. However, the RJ-RRT still has limitations. For example, is easily affected by the expand size. Therefore, in future research, consider combining adaptive expand size and selectively merging multiple Gap Spaces, while RJ-RRT should also be extended to 3D environments and incorporate robot kinematics, making our algorithm closer to practical applications.

Author Contributions

Conceptualization, Q.C. and Y.W.; methodology, Q.C.; software, Q.C.; validation, Q.C. and Y.W.; formal analysis, Q.C.; investigation, Q.C.; resources, Q.C.; data curation, Q.C.; writing—original draft preparation, Q.C.; writing—review and editing, Q.C.; visualization, Q.C.; supervision, Y.W.; project administration, Q.C. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by Chongqing Science and Technology Bureau (cstc2017zdcy-zdyfX0042).

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

Not applicable.

Conflicts of Interest

The authors declare no conflict of interest.

Abbreviations

The following abbreviations are used in this manuscript:
RRTRapidly exploring Random Tree
PRMProbabilistic Roadmap Method
RRVRapidly exploring Random Vines
RJ-RRTReduce-Judge RRT

References

  1. Tsardoulias, E.G.; Iliakopoulou, A.; Kargakos, A.; Petrou, L. A review of global path planning methods for occupancy grid maps regardless of obstacle density. J. Intell. Robot. Syst. 2016, 84, 829–858. [Google Scholar] [CrossRef]
  2. Jaillet, L.; Cortés, J.; Siméon, T. Sampling-based path planning on configuration-space costmaps. IEEE Trans. Robot. 2010, 26, 635–646. [Google Scholar] [CrossRef] [Green Version]
  3. Hart, P.E.; Nilsson, N.J.; Raphael, B. A formal basis for the heuristic determination of minimum cost paths. IEEE Trans. Syst. Sci. Cybern. 1968, 4, 100–107. [Google Scholar] [CrossRef]
  4. Dijkstra, E.W. A note on two problems in connexion with graphs. Numer. Math. 1959, 1, 269–271. [Google Scholar] [CrossRef] [Green Version]
  5. Hegedűs, T.; Németh, B.; Gáspár, P. Design of a low-complexity graph-based motion-planning algorithm for autonomous vehicles. Appl. Sci. 2020, 10, 7716. [Google Scholar] [CrossRef]
  6. Kavraki, L.E.; Svestka, P.; Latombe, J.C.; Overmars, M.H. Probabilistic roadmaps for path planning in high-dimensional configuration spaces. IEEE Trans. Robot. Autom. 1996, 12, 566–580. [Google Scholar] [CrossRef] [Green Version]
  7. LaValle, S.M. Rapidly-Exploring Random Trees: A New Tool for Path Planning. 1998. Available online: http://msl.cs.illinois.edu/~lavalle/papers/Lav98c.pdf (accessed on 10 September 2022).
  8. LaValle, S.M. Planning Algorithms; Cambridge University Press: Cambridge, UK, 2006. [Google Scholar]
  9. Elbanhawi, M.; Simic, M. Sampling-based robot motion planning: A review. IEEE Access 2014, 2, 56–77. [Google Scholar] [CrossRef]
  10. Hsu, D.; Latombe, J.C.; Motwani, R. Path planning in expansive configuration spaces. In Proceedings of the International Conference on Robotics and Automation, Albuquerque, NM, USA, 25 April 1997; Volume 3, pp. 2719–2726. [Google Scholar]
  11. Hsu, D.; Kavraki, L.E.; Latombe, J.C.; Motwani, R.; Sorkin, S. On finding narrow passages with probabilistic roadmap planners. In Robotics: The algorithmic Perspective: 1998 Workshop on the Algorithmic Foundations of Robotics; CRC Press: New York, NY, USA, 1998; pp. 141–154. [Google Scholar]
  12. Wilmarth, S.A.; Amato, N.M.; Stiller, P.F. MAPRM: A probabilistic roadmap planner with sampling on the medial axis of the free space. In Proceedings of the 1999 IEEE International Conference on Robotics and Automation (Cat. No. 99CH36288C), Detroit, MI, USA, 10–15 May 1999; Volume 2, pp. 1024–1031. [Google Scholar]
  13. Boor, V.; Overmars, M.H.; Van Der Stappen, A.F. The Gaussian sampling strategy for probabilistic roadmap planners. In Proceedings of the 1999 IEEE International Conference on Robotics and Automation (Cat. No. 99CH36288C), Detroit, MI, USA, 10–15 May 1999; Volume 2, pp. 1018–1023. [Google Scholar]
  14. Hsu, D.; Jiang, T.; Reif, J.; Sun, Z. The bridge test for sampling narrow passages with probabilistic roadmap planners. In Proceedings of the 2003 IEEE international conference on robotics and automation (cat. no. 03CH37422), Taipei, Taiwan, 14–19 September 2003; Volume 3, pp. 4420–4426. [Google Scholar]
  15. Aarno, D.; Kragic, D.; Christensen, H.I. Artificial potential biased probabilistic roadmap method. In Proceedings of the IEEE International Conference on Robotics and Automation, 2004. Proceedings. ICRA’04. 2004, New Orleans, LA, USA, 26 April–1 May 2004; Volume 1, pp. 461–466. [Google Scholar]
  16. Denny, J.; Amato, N.M. Toggle PRM: Simultaneous mapping of C-free and C-obstacle-a study in 2D. In Proceedings of the 2011 IEEE/RSJ International Conference on Intelligent Robots and Systems, San Francisco, CA, USA, 25–30 September 2011; pp. 2632–2639. [Google Scholar]
  17. Yershova, A.; Jaillet, L.; Siméon, T.; LaValle, S.M. Dynamic-domain RRTs: Efficient exploration by controlling the sampling domain. In Proceedings of the 2005 IEEE international conference on robotics and automation, Barcelona, Spain, 18–22 April 2005; pp. 3856–3861. [Google Scholar]
  18. Zhang, L.; Manocha, D. An efficient retraction-based RRT planner. In Proceedings of the 2008 IEEE International Conference on Robotics and Automation, Pasadena, CA, USA, 19–23 May 2008; pp. 3743–3750. [Google Scholar]
  19. Wu, Z.; Meng, Z.; Zhao, W.; Wu, Z. Fast-RRT: A RRT-Based Optimal Path Finding Method. Appl. Sci. 2021, 11, 11777. [Google Scholar] [CrossRef]
  20. Strandberg, M. Augmenting RRT-planners with local trees. In Proceedings of the IEEE International Conference on Robotics and Automation, 2004. Proceedings. ICRA’04. 2004, New Orleans, LA, USA, 26 April–1 May 2004; Volume 4, pp. 3258–3262. [Google Scholar]
  21. Wang, W.; Li, Y.; Xu, X.; Yang, S.X. An adaptive roadmap guided Multi-RRTs strategy for single query path planning. In Proceedings of the 2010 IEEE International Conference on Robotics and Automation, Anchorage, AK, USA, 3–7 May 2010; pp. 2871–2876. [Google Scholar]
  22. Lai, T.; Ramos, F.; Francis, G. Balancing global exploration and local-connectivity exploitation with rapidly-exploring random disjointed-trees. In Proceedings of the 2019 International Conference on Robotics and Automation (ICRA), Montreal, QC, Canada, 20–24 May 2019; pp. 5537–5543. [Google Scholar]
  23. Shi, K.; Denny, J.; Amato, N.M. Spark PRM: Using RRTs within PRMs to efficiently explore narrow passages. In Proceedings of the 2014 IEEE International Conference on Robotics and Automation (ICRA), Hong Kong, China, 31 May–7 June 2014; pp. 4659–4666. [Google Scholar]
  24. Liu, H.; Xiao, F.; Wang, C. A predictive model for narrow passage path planner by using support vector machine in changing environments. In Proceedings of the 2015 IEEE International Conference on Robotics and Automation (ICRA), Seattle, WA, USA, 26–30 May 2015; pp. 2991–2996. [Google Scholar]
  25. Baldwin, I.; Newman, P. Non-parametric learning for natural plan generation. In Proceedings of the 2010 IEEE/RSJ International Conference on Intelligent Robots and Systems, Taipei, Taiwan, 18–22 October 2010; pp. 4311–4317. [Google Scholar]
  26. Wang, W.; Zuo, L.; Xu, X. A learning-based multi-RRT approach for robot path planning in narrow passages. J. Intell. Robot. Syst. 2018, 90, 81–100. [Google Scholar] [CrossRef]
  27. Wang, J.; Chi, W.; Li, C.; Wang, C.; Meng, M.Q.H. Neural RRT*: Learning-based optimal path planning. IEEE Trans. Autom. Sci. Eng. 2020, 17, 1748–1758. [Google Scholar] [CrossRef]
  28. Li, B.; Chen, B. An adaptive rapidly-exploring random tree. IEEE/CAA J. Autom. Sin. 2021, 9, 283–294. [Google Scholar] [CrossRef]
  29. Kuffner, J.J.; LaValle, S.M. RRT-connect: An efficient approach to single-query path planning. In Proceedings of the 2000 ICRA. Millennium Conference. IEEE International Conference on Robotics and Automation. Symposia Proceedings (Cat. No. 00CH37065), San Francisco, CA, USA, 24–28 April 2000; Volume 2, pp. 995–1001. [Google Scholar]
  30. Gilbert, E.G.; Johnson, D.W.; Keerthi, S.S. A fast procedure for computing the distance between complex objects in three-dimensional space. IEEE J. Robot. Autom. 1988, 4, 193–203. [Google Scholar] [CrossRef]
Figure 1. Expand of Basic-RRT.
Figure 1. Expand of Basic-RRT.
Applsci 12 12033 g001
Figure 2. The sampling space A is reduced to B through P1 and then reduced to C through P2. The expansion fails in C. The first fall back sampling and then forward sampling.
Figure 2. The sampling space A is reduced to B through P1 and then reduced to C through P2. The expansion fails in C. The first fall back sampling and then forward sampling.
Applsci 12 12033 g002
Figure 3. Locally sample around x r a n d . x r a n d 1 , x r a n d 2 , x r a n d 3 , and x r a n d 4 show four different cases, respectively. When there are sampling points in the free space in the local sampling, such as x r a n d 1 and x r a n d 2 , then the surrounding environment of x r a n d is further judgments, x r a n d 3 and x r a n d 4 will not make further judgments.
Figure 3. Locally sample around x r a n d . x r a n d 1 , x r a n d 2 , x r a n d 3 , and x r a n d 4 show four different cases, respectively. When there are sampling points in the free space in the local sampling, such as x r a n d 1 and x r a n d 2 , then the surrounding environment of x r a n d is further judgments, x r a n d 3 and x r a n d 4 will not make further judgments.
Applsci 12 12033 g003
Figure 4. (a,b) are examples of x c i r inside the narrow passage.
Figure 4. (a,b) are examples of x c i r inside the narrow passage.
Applsci 12 12033 g004
Figure 5. (a,b) are examples of x c i r in the entrance of the narrow passage.
Figure 5. (a,b) are examples of x c i r in the entrance of the narrow passage.
Applsci 12 12033 g005
Figure 6. Schematic of SubTree expansion.
Figure 6. Schematic of SubTree expansion.
Applsci 12 12033 g006
Figure 7. Three different maps in the experiment. (a) Complex; (b) Narrow passage; (c) Bug Trap.
Figure 7. Three different maps in the experiment. (a) Complex; (b) Narrow passage; (c) Bug Trap.
Applsci 12 12033 g007
Figure 8. The performance of the three algorithms in complex environments. (a) RRT; (b) RRV; (c) RJ-RRT.
Figure 8. The performance of the three algorithms in complex environments. (a) RRT; (b) RRV; (c) RJ-RRT.
Applsci 12 12033 g008
Figure 9. The performance of the three algorithms in narrow passage. (a) RRT; (b) RRV; (c) RJ-RRT.
Figure 9. The performance of the three algorithms in narrow passage. (a) RRT; (b) RRV; (c) RJ-RRT.
Applsci 12 12033 g009
Figure 10. The performance of the three algorithms in bug trap. (a) RRT; (b) RRV; (c) RJ-RRT.
Figure 10. The performance of the three algorithms in bug trap. (a) RRT; (b) RRV; (c) RJ-RRT.
Applsci 12 12033 g010
Figure 11. Approximation of three algorithms to the shortest path.
Figure 11. Approximation of three algorithms to the shortest path.
Applsci 12 12033 g011
Table 1. Results of three algorithms in complex environment.
Table 1. Results of three algorithms in complex environment.
AlgorithmAverage Time (s)Min Time (s)Max Time (s)Average Number of Collisions DetectionsAverage Number of Nodes
RRT1.9820.4522.74123381542
RRV3.1431.3105.59329751094
RJ-RRT0.2390.1270.87410355
Table 2. Results of three algorithms in narrow passage.
Table 2. Results of three algorithms in narrow passage.
AlgorithmAverage Time (s)Min Time (s)Max Time (s)Average Number of Collisions DetectionsAverage Number of Nodes
RRT4.9371.57510.48976481347
RRV2.3381.0315.9443327958
RJ-RRT1.2760.4751.749678227
Table 3. When extended size is 0.1, the results of three algorithms in the bug trap.
Table 3. When extended size is 0.1, the results of three algorithms in the bug trap.
AlgorithmAverage Time (s)Min Time (s)Max Time (s)Average Number of Collisions DetectionsAverage Number of Nodes
RRT9.8466.95917.707145965579
RRV5.5754.94513.68959202861
RJ-RRT7.1945.74615.14562183347
Table 4. When extended size is 0.3, the results of three algorithms in the bug trap.
Table 4. When extended size is 0.3, the results of three algorithms in the bug trap.
AlgorithmAverage Time (s)Min Time (s)Max Time (s)Average Number of Collisions DetectionsAverage Number of Nodes
RRT7.9125.45714.12698292361
RRV4.5873.74610.57851241741
RJ-RRT3.3481.8416.4322546967
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Chai, Q.; Wang, Y. RJ-RRT: Improved RRT for Path Planning in Narrow Passages. Appl. Sci. 2022, 12, 12033. https://doi.org/10.3390/app122312033

AMA Style

Chai Q, Wang Y. RJ-RRT: Improved RRT for Path Planning in Narrow Passages. Applied Sciences. 2022; 12(23):12033. https://doi.org/10.3390/app122312033

Chicago/Turabian Style

Chai, Qisen, and Yujun Wang. 2022. "RJ-RRT: Improved RRT for Path Planning in Narrow Passages" Applied Sciences 12, no. 23: 12033. https://doi.org/10.3390/app122312033

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop