Hostname: page-component-745bb68f8f-f46jp Total loading time: 0 Render date: 2025-02-11T07:40:33.740Z Has data issue: false hasContentIssue false

An autonomous navigation approach for unmanned vehicle in outdoor unstructured terrain with dynamic and negative obstacles

Published online by Cambridge University Press:  27 January 2022

Bo Zhou
Affiliation:
School of Mechanical and Power Engineering, East China University of Science and Technology, Xuhui District, Shanghai 200237, China
Jianjun Yi*
Affiliation:
School of Mechanical and Power Engineering, East China University of Science and Technology, Xuhui District, Shanghai 200237, China
Xinke Zhang
Affiliation:
School of Mechanical and Power Engineering, East China University of Science and Technology, Xuhui District, Shanghai 200237, China
Liwei Chen
Affiliation:
School of Mechanical and Power Engineering, East China University of Science and Technology, Xuhui District, Shanghai 200237, China
Ding Yang
Affiliation:
School of Mechanical and Power Engineering, East China University of Science and Technology, Xuhui District, Shanghai 200237, China
Fei Han
Affiliation:
Shanghai Key Laboratory of Aerospace Intelligent Control Technology, Shanghai 201109, China Shanghai Aerospace Control Technology Institute, Shanghai 201109, China
Hanmo Zhang
Affiliation:
Shanghai Key Laboratory of Aerospace Intelligent Control Technology, Shanghai 201109, China Shanghai Aerospace Control Technology Institute, Shanghai 201109, China
*
*Corresponding author. E-mail: jjyi@ecust.edu.cn
Rights & Permissions [Opens in a new window]

Abstract

At present, the study on autonomous unmanned ground vehicle navigation in an unstructured environment is still facing great challenges and is of great significance in scenarios where search and rescue robots, planetary exploration robots, and agricultural robots are needed. In this paper, we proposed an autonomous navigation method for unstructured environments based on terrain constraints. Efficient path search and trajectory optimization on octree map are proposed to generate trajectories, which can effectively avoid various obstacles in off-road environments, such as dynamic obstacles and negative obstacles, to reach the specified destination. We have conducted empirical experiments in both simulated and real environments, and the results show that our approach achieved superior performance in dynamic obstacle avoidance tasks and mapless navigation tasks compared to the traditional 2-dimensional or 2.5-dimensional navigation methods.

Type
Research Article
Copyright
© The Author(s), 2022. Published by Cambridge University Press

1. Introduction

In recent years, the positioning and navigation technology of unmanned vehicles in structured environments has achieved a remarkable result [Reference An and Lee1]. However, in the scenarios such as planetary exploration, search and rescue robots, and agricultural robots, the ability to navigate and explore autonomously in unstructured environments without GPS, road signs, and artificial landmarks is still the key challenges of field robots [Reference Guo, Fukano, Noshita and Ninomiya2]. The process from active environment perception and pose estimation back to autonomous navigation need different technologies. In the environment perception and pose estimation task, the simultaneous localization and mapping (SLAM) technology is one of the most effective methods [Reference Xiao, Wang, Qiu, Rong and Zou3], which can be divided into laser-slam [Reference Almqvist, Magnusson and Lilienthal4, Reference Ji, Chen, Di, Gong, Xiong, Qi and Yi5] and visual-slam [Reference Yang, Tang, Wang, Song, Wang and Fu6, Reference Naudet-Collette, Melbouci, Gay-Bellile, Ait-Aider and Dhome7] according to the difference of sensors. And three-dimensional (3D) LIDAR such as Velodyne VLP-16 is widely used in outdoor environments, as it can not only provide an enormous amount of accurate distance data of 360 degrees around the vehicle, but also is insensitive to the changes in illumination. For autonomous navigation task, the real-time status of the vehicle including position and pose as well as the surrounding environment should be considered. The former can be obtained by SLAM algorithm, while the later should be represented by an appropriate method. Finally, a trajectory planning method is adopted to generate a set of executable and collision-free motion commands to achieve the predetermined goal.

Several surveys and researches related to the navigation of ground vehicles in the unstructured environments have been conducted [Reference Pfrunder, Borges, Romero, Catt and Elfes8, Reference Oishi, Inoue, Miura and Tanaka9]. As the assumption that robots operate on flat ground is not valid and the terrain obstacles are difficult to determine clearly, the conventional two-dimensional (2D) navigation approach is not suitable anymore. In the unstructured environment, most studies are based on the analysis of 2D elevation maps (the so-called 2.5D maps), where 3D information grabbed from stereo vision or point clouds is mapped to a 2D occupancy grid map. This approach typically adopted the terrain traversability analysis (TTA) [Reference Chhaniyara, Brunskill, Yeomans, Matthews, Saaj, Ransom and Richter10] or obstacle avoidance. The TTA refers to how difficulty when a ground vehicle traverses a certain defined terrain, which is deeply different from the obstacle avoidance approach. As in most cases, there may have no so-called obstacles, but the robot must choose a feasible path through the special terrain [Reference Papadakis11].

Although the TTA based on the 2.5D approach performs well in certain outdoor scenario, the major limitation of these approaches is related to the need of on-board real-time computing. As each cell of the map or the local map must be processed in this method, which limits the ability to re-plan the path to avoid moving obstacles.

Another limitation is the negative obstacles, such as the gentle slope, depression, and holes in the ground. Because of the limitation of field of view of the sensor, there will be a blind area for observation in the lower part of the structure. In this case, a conservative or an aggressive navigation approach will both lead to a failure. The former is prone to fall into false obstacles in the early stages of navigation, while the latter is prone to navigate into the blind area caused by the negative obstacles [Reference Zhu, Li and Sun12]. In addition, some negative obstacles are possible to pass from a certain direction or at a specific velocity due to the nature of rugged terrain; however, this possibility is ignored in 2D and 2.5D approaches.

To solve the problem mentioned above, this paper proposes an autonomous 3D navigation system suitable for the off-road environment. In this system, an octomap [Reference Hornung, Wurm, Bennewitz, Stachniss and Burgard13] is used to store and maintain the environment map. An efficient octree-based terrain constraint analysis module is designed to assist the sampling-based path search front-end and the passable corridor constraint-based trajectory optimization back-end. Meanwhile, a local navigation target exploration method suitable for sparse terrain information is proposed to perform a mapless navigation with negative obstacles.

1.1. Contributions

Compared with previous researches on unmanned vehicles, the contribution of this paper is to propose a 3D spatial navigation system for unmanned vehicles suitable for complex unstructured terrain environments with the aid of an octomap representation, considered with the performance limitations of unmanned vehicles. This method differs from other 3D navigation and exploration methods in that:

  • An efficient front-end path search method and a passable corridor generation method, both of which based on terrain constraints, are proposed to generate safe trajectories. It is worth noting that they are specifically optimized for sparse terrain information in the off-road environments to enable superior dynamic re-planning capability of the proposed navigation method.

  • The proposed approach is extended to mapless navigation tasks with negative obstacles by an efficient local target exploration algorithm.

  • Our approach is demonstrated to be superior to traditional 2D or 2.5D navigation methods by various empirical experiments in simulations and real-world scenarios.

1.2. Organization

The rest of the paper is organized as follows: the navigation approach, the establishment of the navigation map, and the path planning method are briefly introduced in Section 2. The algorithm architecture and the composition of the hardware system of this paper are summarized in Section 3. In Section 4 and Section 5, we introduce in detail the 3D navigation algorithm for unmanned vehicles proposed in this paper. Experiment and comparison about the proposed framework are presented in Section 6. Finally, Section 7 presents our conclusions and our plans for future work.

2. Related work

There are two main broad categories for autonomous navigation in unstructured environments, namely the sense-plan-act paradigm and end-to-end paradigm [Reference Guastella and Muscato14]. Obviously, these two categories are deeply different. The end-to-end paradigm directly maps the sensor data and the vehicle state information into navigation control actions, which integrating perception and control of navigation frameworks. The deep reinforcement learning method [Reference Luong and Pham15] and the deep inverse reinforcement learning method [16] are the most popular methods in this approach. In this case, the reward function is learned from the expert demonstrations or defined by humans, which then is used to generate navigation action sequences. Although this method has many excellent properties, like dealing with negative obstacles [Reference Zhu, Li and Sun12], they also have some drawbacks as well. The ability of compute in real time for on-board and the generalization ability of the model are the major limitations.

In this paper, we mainly focus on the sense-plan-act paradigm, where TTA is the most important research interest. More specifically, the TTA methods can be divided into two categories: the regression-based method and the classification-based method [Reference Papadakis11].

The regression-based TTA focuses on estimating the traversal cost of the terrain area. A method is adopted by Wulfmeier et al. to learn a function from the actions of the human experts to represent the traversal cost, which can be optimized by massive well-designed and hand-crafted cost map. However, it only works well in semi-structured scenarios and meanwhile a person is needed to show and teach in similar scenarios [Reference Wulfmeier, Rao, Wang, Ondruska and Posner17]. Oliveira utilized deep learning method to predict the traversal cost. Here, inertial measurements gained from IMU and point clouds gained from a 3D LiDAR are used to measure the navigation cost [Reference Oliveira, Neto, Howard, Borges, Campos and Macharet18]. But he maps the 3D point clouds directly into a 2D grid, making them lose terrain features. The probabilistic energy cost map is proposed by Quann et al. to measure the traversal cost [Reference Quann, Ojeda, Smith, Rizzo, Castanier and Barton19], which is built from the pose of robot, the terrain slope, and the satellite imagery. However, this method relies heavily on the vehicle modeling information, which makes it difficult to perform in different type of vehicles.

The classification-based TTA aims at classifying terrain areas into several classes. Many machine learning and deep learning methods are used in this field to perform a binary or multi-classification task, either through the support vector machine [Reference Bellone, Reina, Caltagirone and Wahde20] or through the multilayer perception [Reference Kingry, Jung, Derse and Dai21], which can obtain the geometric and visual information from the 3D LIDAR point cloud and RGB images. Martínez et al. [Reference Martínez, Morán, Morales, Robles and Sánchez22] propose traversability classifiers by analyzing several supervised learning methods to extract the classification information from the 3D point cloud. However, a set of spatial features needs to be derived from each point of the acquired point cloud in order to perform terrain classification in those approaches, which makes it time-consuming. Meanwhile, the problem can also be found in terrain classification through the semantic 3D mapping approach [Reference Chiodini, Torresin, Pertile and Debei23].

The representation method of the environment is also a research interest in the sense-plan-act paradigm. Theoretically, various map representation ways and technologies can describe the navigation map of vehicles. Maturana et al. [Reference Maturana, Chou, Uenoyama and Scherer24] build a 2.5D grid map to perform the semantic mapping for automatic off-road driving of all-terrain vehicles, which can provide a richer representation of the environment by encoding the sematic and geometry information extracted from 3D point cloud and RGB images. Noé et al. have used a point cloud to represent navigation maps and have used it for unmanned vehicle navigation tasks in tunnel scenarios [Reference Pérez-Higueras, Jardón, Rodríguez and Balaguer25]. But this approach can only be used in simulation scenarios at present because it cannot solve the interference well because of the disorder of the point cloud in the real-world scenarios and the huge time consumption of searching the point cloud scene. Fei Gao et al. directly used the point cloud in the research of the 3D navigation of unmanned aerial vehicle (UAV), which has made it possible for the use of point cloud in multi-degree-of-freedom navigation [Reference Gao, Wu, Gao and Shen26]. In the research of Helen et al. [Reference Oleynikova, Taylor, Fehr, Siegwart and Nieto27], an incremental 3D Euclidean signed distance field is used to represent the navigation map of UAV. Although it has a great obstacle avoidance performance, it is difficult to apply to the terrain obstacle representation of the unmanned vehicles. Han zhang et al. have used the octree as the representation of the navigation map and have successfully applied it to the outdoor navigation of the UAV. However, it used the remote computer to compute the navigation algorithm, which is difficult to meet the needs of autonomous vehicle navigation task in the field [Reference Wang and Liu28].

To sum up, this paper uses the octree to represent the environment, which was chosen for three reasons:

  • It can effectively avoid noise impact on navigation in real environment.

  • It can effectively represent the terrain information of the off-road environment.

  • It can run effectively on the devices with limited computing performance such as unmanned vehicles.

Another important part is the design of the navigation process. In this part, a prevailing idea is to divide the entire navigation process into the front-end path finding and the back-end trajectory optimization. In recent years, there has been a lot of front-end path searching work. Graph-search-based algorithms [Reference Likhachev, Gordon and Thrun29] such as A-star and Dijkstra and sampling-based algorithms [Reference Lavalle30] such as probabilistic road map and rapidly exploring random tree (RRT) are the two most applicable methods. The method based on graph search can be applied to the scenes where discrete space can be constructed from the environment [Reference Ajanovic, Lacevic, Shyrokau, Stolz and Horn31]. In contrast, the sampling-based method can use a set of nodes or other forms to discretely sample the configuration space of the vehicle, and then randomly sample the environment to obtain the final path. RRT [Reference Lavalle30] is an algorithm proposed by Steven M. LaValle and James J. Kuffner Jr to search quickly non-convex high-dimensional spaces by randomly constructing space filling tree. This algorithm can easily deal with the scenes that contain obstacles and differential motion constraints, so it is widely used in various robot motion planning scenarios. In robotics, RRT search based on high-dimensional space has been widely used [Reference Huang, Savkin and Ni32]. Then, scholars proposed a lot of optimization to RRT. In 2000, Kuffner et al. proposed RRT-CONNECT [Reference Kuffner and LaValle33], which is a two-way RRT search process whose speed and efficiency have been greatly improved. Long Chen et al. proposed double-tree RRT* [Reference Chen, Shan, Tian, Li and Cao34], through which the path can be found more quickly, meanwhile its optimality is ensured compared with RRT.

Back-end trajectory optimization has also been widely studied in recent years. Although the front-end pathfinding algorithm can find a set of collision-free waypoints to the target point, it is difficult to perform on robots such as unmanned vehicles. Therefore, it is necessary to generate a smoother, safer trajectory which is a path-time sequence and should conform to the kinematics constraints of the unmanned vehicle based on the path found. Many methods are designed to optimize the trajectory, including the representation of trajectory and the design of the optimization objective function. Moritz [Reference Werling, Ziegler, Kammel and Thrun35] is the first to propose the method of representing the trajectory of the Frenet coordinate system, which simplifies the representation style of polynomial trajectories. W. Ding et al. used B-spline curve to represent the trajectory, well using the locality of the spline curve to complete real-time re-planning of the trajectory [Reference Ding, Gao, Wang and Shen36]. Ding et al. proposed a trajectory representation method, which uses the convex hull of the Bernstein polynomial to ensure the safety of the trajectory [Reference Ding, Zhang, Chen and Shen37]. In the design of the optimization objective function, the gradient-based method [Reference Ratliff, Zucker, Bagnell and Srinivasa38] transforms the trajectory optimization problem into a nonlinear optimization problem affected by safety and smoothness. Mellinger et al. proposed the minimum snap trajectory optimization method for the first time and adopted a polynomial trajectory expression to convert the planning problem into a quadratic programming problem [Reference Mellinger and Kumar39].

This paper uses the point cloud map and the real-time positioning information generated by the laser SLAM algorithm. In the process of navigation, the environment representation based on the octree map and the front-end path search method based on sampling are adopted. In the process of random sampling of the octree space, the TTA methods are considered. Differently, when using TTA, we do not process each map cell, but only a certain domain of the map cells sampled in the previous step which makes our method highly efficient in planning and re-planning process. Similarly, in the back-end optimization process, a traversable corridor is generated using a local TTA. A high-order Bezier curve is used to characterize the trajectory of the vehicle, as the trajectory can be constrained to a safe area using the convex hull properties of the Bezier curve and the traversable corridor. This method can realize an efficient and autonomous 3D navigation for unmanned vehicles on rugged terrain.

3. Hardware platform and system architecture

The architecture of our system is shown in Fig. 1. First, an optimized laser-slam – LOAM algorithm [Reference Zhang and Singh40] is used for six-dimensional pose estimation and sparse point cloud map construction. In this method, a loop detection method based on location [Reference Shan and Englot41] and based on scanning context [Reference Kim and Kim42] is combined with the LOAM algorithms to reduce the mapping and the pose estimation error of the vehicle. Then, the navigation process is divided into front-end path search and back-end trajectory optimization. The planner module manages the entire system, whose function includes data reception, task allocation, corridor generation, trajectory inspection, and re-planning. It receives the environment navigation maps and the pose estimation from the vehicle as well as the goal given by the mission planner. Then it assigns the calculation task to the path finder module and Bezier optimization module. After that, it analyzes the calculation results and passes them to the trajectory server module.

Figure 1. Architecture of the autonomous navigation system.

The path finder module is responsible for searching front-end paths and mapless navigation strategies. This part will be introduced in detail in Section 4. The Bezier optimization module will complete the trajectory optimization process based on the results of the front-end search and the constraints given by the planner module, which will be introduced in detail in Section 5.

The functional module terrain analysis handles the ground state analysis of the entire system and is referenced in the above three modules. This part will be described in detail in Section 4.2.

The architecture of the unmanned vehicle system is shown in Fig. 2. The system uses a four-wheel differential drive unmanned vehicle, which has individual wheel suspension system with good outdoor off-road capabilities and shock absorption performance. The 3D LIDAR Velodyne VLP-16 is used for real-time pose estimation and map construction of the vehicle. And a NVIDIA Xavier processor is used for positioning, mapping, navigation, and control algorithm. In addition, for safety in testing task, the depth camera Azure Kinect is used in this system as an emergency obstacle avoidance sensor.

Figure 2. Overview of the unmanned vehicle system. The platform uses a Velodyne LIDAR (Velodyne VLP-16) for localizing itself and mapping the environment. The Laser-SLAM module, motion planning module, and controller are all running on the NVIDIA Xavier. And a camera (Azure Kinect) is used to avoidance in an emergency.

4. Path planning method based on terrain constraints

4.1. Sampling space configuration

This paper uses the sampling method in octree space so that a high operation efficiency can be gained in embedded devices. Different from the path planning of drones or robotic arms, it is difficult for us to plan the movement of the vehicle on the z-axis in the path planning task in the rugged ground. However, this kind of movement is critical based on the analysis above. In this paper, we adopted a random sampling strategy to find a feasible front-end path for the ground vehicle in the octomap. The sampling space is set as the section of the initial height of the vehicle in the octomap instead of the entire octree space. The terrain constraints are introduced into the sampling process, including ground search and the TTA. For each sample point, a ray is used by the algorithm to project upward or downward to find the ground. This method greatly reduces the sampling time and avoids the loss of terrain information in 2D planning at the same time.

(1) \begin{equation} \left\{ \begin{array}{*{20}{c}} {Node_{x,y,z} = \Gamma ({p_{x,y}}),if\mathop {}\limits^{} \Gamma ({p_{x,y}})\mathop {}\limits^{} true} \\[5pt] {None = \Gamma ({p_{x,y}}),if\mathop {}\limits^{} \Gamma ({p_{x,y}})\mathop {}\limits^{} false} \\[5pt] \end{array} \right.\end{equation}

where $Node_{x,y,z} $ is the final sampled point. $p_{x,y} $ is the random sampling point on the initial height section of the vehicle, and $ \Gamma $ means the mapping of ground search. If the search is successful, it returns the Node value, otherwise it returns None.

4.2. Path planning method

Because of the sparsity of the octomap, for each sampling point collected by the planner, the local octree nodes in a certain area around it will be analyzed, which can be a sphere, a cube, or a polygonal cylinder. Considering the shape of the vehicle, a cube is adopted as the candidate area. The parameters box(x,y,z) are related to the size of the vehicle. The search set $\Omega$ of the sampling point $ p_{x,y} $ can be written as follows:

(2) \begin{equation} \Omega = \left\{ {\begin{array}{*{20}{c}} {\Gamma \left( {{p_{i,j}}} \right)}\\[5pt] {{{x - box_{x}} \mathord{\left/ {\vphantom {{x - box_{x}} 2}} \right. } 2} - padding \le i \le x + {{box_{x}} \mathord{\left/ {\vphantom {{box_{x}} {2 + padding}}} \right. } {2 + padding}}}\\[5pt] {{{y - box_{y}} \mathord{\left/ {\vphantom {{y - box_{y}} 2}} \right. } 2} - padding \le j \le y + {{box_{y}} \mathord{\left/ {\vphantom {{box_{y}} {2 + padding}}} \right. } {2 + padding}}} \end{array}} \right\}\end{equation}

Terrain reliability analysis: Generally, in the search set $\Omega$ around the sampling point, the more octree nodes with ground elevation information there are, the higher reliability of the sampling point at the ground and the higher accuracy of the ground height calculation are. So the reliability of the terrain is calculated as follows:

(3) \begin{equation} \begin{array}{c} \eta = {{{n_{node}}} \mathord{\left/ {\vphantom {{{n_{node}}} {{n_{\max }}}}} \right. } {{n_{\max }}}}\\[5pt] {n_{\max }} = card(\Omega )\\[5pt] {n_{node}} = card(\left\{ {x\left| {x \in \Omega ,x \ne None} \right.} \right\}) \end{array}\end{equation}

where $ n_{\max} $ is the number of all the nodes in the search set $ \Omega $ , and $ n_{node} $ is the number of nodes with ground elevation information.

Terrain flatness analysis: According to the analysis above, in the path planning task of the vehicle, it is important to analyze the ruggedness of the terrain. We use the elevation variance of the ground nodes to describe the terrain flatness:

(4) \begin{equation} \begin{array}{c} mean = {{\sum {Nod{e_z}} } \mathord{\left/ {\vphantom {{\sum {Node_{z}} } {{n_{node}}}}} \right. } {{n_{node}}}},Node \in \Omega \\[5pt] stddev = {{{{\left\| {Node_{z} - mean} \right\|}_2}} \mathord{\left/ {\vphantom {{{{\left\| {Node_{z} - mean} \right\|}_2}} {({n_{node}} - 1)}}} \right. } {({n_{node}} - 1)}},Node_{z} \in \Omega \mathop {}\limits^{} and\mathop {}\limits^{} Node \ne None \end{array}\end{equation}

Terrain slope analysis: In the calculation of slope, it will take a lot of time to calculate the global gradient directly, as the constructed octomap may be discontinuous, which is determined by the sparsity of the 3D LIDAR. Furthermore, both the 2D and 2.5D methods have the gradient calculation along with the x and y direction of the navigation map, which makes traverse from a certain direction impossible when the negative obstacles exist. This paper calculates the terrain slope between the new node that is added to the path and its parent-node, instead of analyzing the terrain slope of each sampling node. In this way, it will not only reduce the cost of calculation but also provide the possibility of traversing negative obstacles from a certain direction.

(5) \begin{equation} \theta = ac\sin \left(\frac{{\left| {Node_{new_{z}} - Node_{nearst_z}} \right|}} {{{{\left\| {Node_{new} - Node_{nearst}} \right\|}_2}}}\right)\end{equation}

A cost function is designed to evaluate whether a new node can be added to the path and whether the relationship of path node should be changed. In this paper, we can assume that the cost function for each node can be expressed as a weighted linear combination of a set of weights and some terrain feature functions. And it can be defined as:

(6) \begin{equation} c(Node_n) = {\omega _1}\sum\limits_{i = 0}^n {{{\left\| {Node_i - Nod{e_{father}}} \right\|}_2}} + {\omega _2}\sum\limits_{i = 0}^n {{\theta _i}}\end{equation}

Therefore, the steps of the 3D path sampling algorithm in octomap space based on the terrain analysis are shown in Algorithm 1.

4.3. Extension to mapless navigation

The autonomous navigation without a prepared map is crucial. As in most of the off-road unmanned vehicle navigation scenarios, there is no priori map information. In the case of mapless navigation, the terrain information around the navigation target point is unknown, and the map information observed in the early stage is very sparse, which is determined by the sparsity of the LiDAR point cloud and the occlusion relationship of the off-road terrain. To implement the proposed method to mapless navigation tasks, we keep exploring toward the target by selecting suitable local target points among the existing sampling points based on the Algorithm 1. Due to the number of sampling points during the path finder process may be large and only the outermost of them are beneficial for the task of exploration toward the target. Therefore, in order to avoid unnecessary calculations and select suitable local target points, we propose the following approach as shown in Algorithm 2 and Fig. 3.

Figure 3. Local target point selection.

Outermost sampling points set: we define $ d_{i} $ as the distance between $ i_{th} $ point( $ P_{i} $ ) in $\Omega $ and the start point, and the D as the distance between the closest point to the end point and the start point. The outermost sampling points set can be written as follows:

(7) \begin{equation} \Omega_{outer} = \{ P_{i} |P_{i} \subset \Omega , 0.8 < d_{i}/D < 1 \}\end{equation}

Points clustering: We perform clustering of the outermost sampling points using a method similar to that in ref. [Reference Pérez-Higueras, Jardón, Rodríguez and Balaguer25], which can divide the outermost region into several independent regions. As mentioned in Section 4.2, the sampled points are the points that meet the TTA. Therefore, a region with more sampling points has better traversability, where the candidate local target point should also come from.

The local target point: In order to avoid local target points guiding the vehicle away from the direction of the final target, we finally select three sets in $ \Omega_{cluster} $ with the largest number of sampled points to form the final target candidate points set $ \Theta_{CandiPts} $ . And a cost function is set to select the final local target point in the set of candidate target points. We seek for a point which can minimize the function as shown in the following equation:

(8) \begin{equation} P_{localGoal} = argmin(\Arrowvert P_{i} - P_{goal} \Arrowvert_{2} + c(P_{i})), P_{i} \subset \Theta_{CandiPts}\end{equation}

where $ c(P_{i}) $ is the cost of the point $ P_{i} $ to start point defined in Eq. (6).

5. Path optimization method

Although the path finder module can get a path to the target in real time, the kinematics and the dynamics models of the vehicle are not considered in the planning process, which makes the planned path difficult to execute for vehicles in real environment. Based on the analysis above, there has been a lot of research on the trajectory optimization in structured scenarios. This paper focuses on the trajectory optimization methods in the unstructured and rugged terrain. We take the minimum snap as the objective function to generate a smooth trajectory and build a corridor based on the terrain to constrain the final optimized trajectory.

5.1 Traversable corridor generation

Based on the waypoints obtained in Section 4, we analyze the traversable state of the area around the waypoints to determine whether there are steep slopes and pits around the sampling point, thereby providing reasonable constraints for trajectory optimization. According to the searched waypoints, we initialize a cube which is based on the size of the vehicle and then expand the cube in the order of X-Y-Z with a fixed step $\varepsilon $ . The expansion scales of ${\varepsilon _x},{\varepsilon _y}$ are equal, but the expansion in the z direction ${\varepsilon _z}$ is far less than the ${\varepsilon _x},{\varepsilon _y}$ . This is because it is primarily designed to eliminate collisions between the vehicle and obstacles on the Z-axis caused by the undulations of the terrain. Then it maximizes the cube by analyzing the collision in Z direction and the corresponding terrain state information in X and Y directions. The TTA method is similar to that in Section 4.2. After that, we reduce the number of traversable corridors by merging overlapping areas to reduce the computational burden of back-end optimization. And the traversable corridor generation is shown in Algorithm 3.

5.2. Trajectory optimization

In this paper, the trajectory will be expressed using a Bernstein polynomial [Reference Gao, Wu, Lin and Shen43], which can be written as follows:

(9) \begin{equation} \begin{array}{c} P_j(t) = \sum\limits_{i = 0}^n {p_{i,j}\cdot{B_{i,n}}(t),t \in [0,1]} \\[5pt] {B_{i,n}}(t) = C_n^j \cdot {t^i} \cdot {(1 - t)^{n - i}} = \frac{{n!}}{{i!\left( {n - i} \right)!}} \cdot {t^i} \cdot {(1 - t)^{n - i}},i = 0,1,2,....n \end{array}\end{equation}

where $p_{i,j}$ is the $ i{\rm th} $ control point of the ${j{\rm th}}$ Bezier curve, and n is the order of Bezier curve. The trajectory is divided into m segments according to the number of corridors in Section 5.1. Since the time period of the Bezier curve is [0, 1], a time scale factor r needs to be set to realize any time allocation of this segment of the curve. And the piecewise Bezier curve can be represented using the following equation:

(10) \begin{equation} {P^\mu }(t) = \left\{ {\begin{array}{*{20}{c}} {{r_1} \cdot \sum\limits_{i = 0}^n {p_{i,1}^\mu B_{i,n}(\frac{{t - {T_0}}}{{{r_1}}}),\ t \in [{T_0},{T_1}]} }\\[5pt] {{r_2} \cdot \sum\limits_{i = 0}^n {p_{i,2}^\mu B_{i,n}(\frac{{t - {T_1}}}{{{r_2}}}),\ t \in [{T_1},{T_2}]} }\\[5pt] \vdots \\[5pt] {{r_m} \cdot \sum\limits_{i = 0}^n {p_{i,m}^\mu B_{i,n}(\frac{{t - {T_{m - 1}}}}{{{r_m}}}),\ t \in [{T_{m - 1}},{T_m}]} } \end{array}} \right.\end{equation}

where ${T_1},{T_2}, \ldots {T_m}$ is the end time of each segment trajectory. $p_{i,m}^\mu$ is the ${i{\rm th}}$ control point of the ${m{\rm th}}$ segment. And $\mu $ is one of the three dimensions of X, Y, Z. ${r_1},{r_2}, \ldots {r_m}$ represents the time scale factor of each segment ( $ r_i = T_i -T_{i-1} ,i=0,1,2,...m $ ), which scales the segment time from $\left[ {{T_{i - 1}},{T_i}} \right]$ to $\left[ {0,1} \right]$ .

Based on the analysis, this paper uses the minimum snap trajectory optimization method, and the cost function of the optimization can be written as:

(11) \begin{equation} C = {\sum\limits_{\mu \in \{ x,y\} } {\int_0^T {\left( {\frac{{{d^4}{P^\mu }(t)}}{{d{t^4}}}} \right)} } ^2}dt\end{equation}

It can be represented as a quadratic matrix of ${P^T}{Q_0}P$ , where $ \textbf{P} $ is the vector composed of all control points, and ${Q_0}$ is the Hessian matrix of the objective function. It can be proved that ${Q_0}$ is a positive semi-definite matrix, so the trajectory optimization problem can be transformed into a convex quadratic programming problem.

(12) \begin{equation} \begin{array}{c} \min {\textbf{P}^T}{Q_0}\textbf{P}\\[5pt] s.t.\mathop {}\limits_{} {A_{eq}}\textbf{P} = {b_{eq}}\\[5pt] {A_{ieq}}\textbf{P} \le {b_{ieq}} \end{array}\end{equation}

Position constraints: The optimized trajectories must pass through some specific points whose positions, velocities, and accelerations are known during the planning process, such as the start point and the goal point. According to the properties of the Bezier curve, the coefficients of the high-order derivative can be composed of the coefficients of the lower-order derivative. Take the Bezier curve in a certain dimension of a certain segment as an example:

(13) \begin{equation} \begin{array}{l} a_i^{\left( 0 \right)} = {p_i}\\[5pt] a_i^{(l)} = \frac{{n!}}{{(n - l)!}} \cdot (a_{i + 1}^{(l - 1)} - a_i^{(l - 1)}) \end{array}\end{equation}

where l is the order of derivative of the Bernstein basis. Therefore, in a certain dimension of a certain segment, the position constraint can be represented as:

(14) \begin{equation} a_i^{(l)} \cdot {r^{(1 - l)}} = {\gamma^{(l)}}\end{equation}

where ${\gamma^{(l)}}$ can be the position, velocity, or acceleration of a specific waypoint.

Continuity constraints: Continuity constraints are mainly required for the connection points of each segment trajectory. In order to ensure the smoothness of the trajectory and the continuity of the movement, it is necessary to ensure that the l-order derivative of the connection point is continuous, where $0 \le l \le k - 1$ . For the ${j{\rm th}}$ and ${(j + 1){\rm th}}$ segment trajectories, the last control point of the ${j{\rm th}}$ segment is continuous with the first control point of the ${(j + 1){\rm th}}$ segment in the $ l{\rm th} $ order derivative.

(15) \begin{equation} \begin{array}{c} a_{n,j}^{(l)} \cdot r_j^{(1 - l)} = a_{0,j + 1}^{(l)} \cdot r_{j + 1}^{(1 - l)}\\[5pt] a_{i,j}^{(0)} = p_{i,j}^{(0)} \end{array}\end{equation}

Corridor constraints: In the unmanned vehicle trajectory optimization, it is necessary to ensure the safety and feasibility of the optimized trajectory. The usual approach is to process the optimized trajectory for trajectory checking and impose additional constraints on waypoints that do not meet the safety or enforceability requirement. The trajectory optimization and trajectory check process are then repeated until all waypoints on the trajectory meet safety and enforceability requirements [Reference Chen, Liu and Shen44]. This paper uses the convex hull property of the Bezier curve to enforce all the control points of the trajectory to be constrained within the boundaries of each direction of the corridor which is mentioned in Section 5.1. For example, for the ${j{\rm th}}$ trajectory:

(16) \begin{equation} \chi _{i,j}^ {\mu-} \le p_{i ,j}^\mu \le \chi _{i,j}^ {\mu+} ,\mu \in \left\{ {x,y,z} \right\},i = 0,1,2...n\end{equation}

where $\chi _{i,j}^ {\mu-} ,\chi _{i,j}^ {\mu+} $ are the upper and lower boundary of the ${j{\rm th}}$ corridor in a certain dimension of x, y, z.

Kinematic constraints: Generally, considering the feasibility of the unmanned vehicle movement, its speed and acceleration need to be constrained within a certain workable interval. For the ${i{\rm th}}$ control point:

Based on the property of the Bezier curve: $a_i^{(l)} = \frac{{n!}}{{(n - l)!}} \cdot (a_{i + 1}^{(l - 1)} - a_i^{(l - 1)})$

(17) \begin{equation} \begin{array}{l} {V_{\min }} \le n({p_{i + 1}} - {p_i}) \le {V_{\max }}\\[5pt] {a_{\min }} \le n \cdot (n - 1) \cdot ({p_i} - 2{p_{i - 1}} + {p_{i - 2}})/{r_j} \le {a_{\max }} \end{array}\end{equation}

where ${V_{\min }},{V_{\max }},{a_{\min }},{a_{\max }}$ are the minimum and maximum speed and acceleration of the vehicle.

6. Experiments and results

We use robot operating system [Reference Quigley45] and C++11 to implement the proposed system and algorithm in both simulation and real-world scenarios and compare them with popular 2.5D method in mapless navigation tasks and dynamic obstacle avoidance tasks. The qpOASES (Online Active Set Strategy) is used as the convex optimization solver in the trajectory optimization stage.

6.1. Simulation experimental setup

6.1.1 Simulation environment

First, we present several simulation experiments of the proposed local target selection, path search, and trajectory optimization algorithms using Gazebo. In order to make the simulation more meaningful and simplify the development and debugging process in the real environment, in this paper a URDF unmanned vehicle simulation model is used, whose dynamic performance and motion restrictions are similar to those of real vehicles. A 3D LIDAR and binocular camera are added to the model for context awareness, as is shown in Fig. 4. An off-road environment is built in the software platform UNITY and then imported into Gazebo to gain gravity and physical properties, as is shown in Fig. 5(a). The size of the environment is 200 m $\times$ 200 m, with multiple pits and steep slopes of different diameters distributed, and the maximum undulation of the terrain is about 3 m.

For each segment of the Bezier curve, we must set a series of constraints to ensure the safety and feasibility of the optimized trajectory.

Figure 4. The simulation UGV and the simulation sensors. In our experiment, a simulation Velodyne VLP-16 and a simulation depth camera whose data format is same as that of the real sensors are used (in order to better represent the pose between the sensors, the connection between them is hidden in the simulation).

Figure 5. Off-road environment built in gazebo.

6.1.2. Result of the proposed method

Octomap building: The laser slam algorithm is used to build the sparse point cloud map of the constructed off-road scenario and get the six-dimensional pose estimation of the vehicle. In order to reduce the interference of the real field environment on the point cloud and the huge computational cost of navigation directly on the point cloud map, the map representation method of the octomap is adopted in this paper. Point cloud within a certain range centered on the vehicle location will be added to the octomap where the terrain information will be maintained and updated, which allows the vehicle to have lower map maintenance costs when real-time navigation tasks are performed. And we use the color to distinguish the elevation, as is shown in Fig. 5(c). The global map coordinate system is established based on the location of the centroid when the vehicle is started. A warmer color shows a higher elevation of the terrain, indicating a larger value of Z-axis, which can be slopes. Conversely, colder colors refer to lower elevation, which can be pits.

Path finding result: In this paper, we analyze the terrain information effectively based on the octomap, which described in Section 4, and evaluate the front-end path search method using the simulation environment mentioned above. We set the navigation destinations at the bottom of the pit or a relatively flat area and change the boundary threshold parameters to test the efficiency of the path finding algorithm and the feasibility of the path.

By setting the boundary threshold reasonably, the path searched by the front-end pathfinder module performs well in avoiding unknown areas, negative obstacles like pits, and steep slopes. Figure 6 shows the successful front-end path finding process, where the cube is the sampled node. The white line is the sampled path, and the red line is the final searched path. As shown in the picture, rejection area A is an example of avoiding negative obstacles like pits and steep slopes. The red nodes are the accepted nodes during the path search process, and magenta nodes are the rejected nodes which do not match the terrain analysis results during the process. After the terrain analysis, some nodes that cannot be safely reached by the vehicles will be refused to join the path, thereby ensuring the successful avoidance of the dangerous areas such as pits and steep slopes. Rejection area B shows an example of avoiding unknown areas. They are some areas that cannot be observed by some sensors, where there may be pits and occlusions. Considering the safety of the car, the algorithm adopts an evasion strategy.

Figure 6. Unknown area, negative obstacle rejection.

Figure 7 shows the effect of different boundary thresholds on path search results, while Table I shows the search time. From the results, it can be seen that if the threshold of $ stddev_{th} $ is too small, the path will be difficult to extend and the search time will be greatly increased at the same time, such as $ stddev=0.05 $ in Fig. 7. But when the threshold becomes larger, the path becomes smoother and the search time reduces. The parameter $ stddev_{th} $ is related to the flatness of the terrain, which needs to be set according to the off-road capability of the unmanned vehicle in the real environment.

Figure 7. Result of different path-expansion boundaries and cost functions.

Table I. Time of path finder module process ( ${\eta _{th}} = 3$ )

Path optimization result: As is introduced in Section 5, the analysis of the traversable corridor and the trajectory optimization of the back-end are performed in this paper based on the path found by the front-end path finder module. Considering the vehicle’s controller capability and the safety of the navigation, we set an erosion area of the range of six resolution units to constrain the traversable corridor within the absolute safety area during the analysis of the traversable corridor. As is shown in Fig. 8(a), in order to visualize the results, a semi-transparent cube is used to represent the generated traversable corridor. In generating the traversable corridor, we expanded the size on the Z-axis of the corridor, which is relevant to the height of the vehicle. Figure 8(b) and (c) shows the results of the generated traversable corridor to avoid the pits and steep slopes, showing its ability to navigate safely.

Figure 8. Corridor generation result.

According to Section 5.2, in the process of back-end optimization, constraining the optimized path within the generated passable corridor can not only ensure the safety of the trajectory but also smooth the trajectory and increase the feasibility of it. As is shown in Fig. 9, there are the trajectory generation results for three different sets of starting points, where transparent gray cube is the visualized traversable corridor, the red line is the path searched by the front-end module, and the blue smooth line is the path optimized by the mini-snap method. As is shown in the picture, a smooth trajectory can be generated effectively through the method proposed in this paper, and the trajectory can be constrained within a passable and safe corridor through a single calculation. The comparison of the running time of each part in generating three sets of trajectories is listed in Table II. As is shown in the table, the front-end path finder module and the passable corridor analysis module take approximately the same time, while the back-end trajectory optimization module spends far less time than the first two modules.

Figure 9. Trajectory generation results.

Table II. Navigation time distribution

6.2. Comparisons and analysis

In this part, our method is compared with a popular 2.5D navigation map representation method proposed by P. Fankhauser using GridMap library [Reference Fankhauser and Hutter46]. In order to meet the need for real-time computing, only the normal vectors, smoothening, and variance of each cell are considered when performing the TTA in GridMap. Moreover, only the body-centered 20 m $\times$ 20 m size local map is processed and updated to reduce the time of TTA and improve the real-time performance. However, the re-planning process works only when dynamic obstacles or scene changes are located within 10 m of the vehicle. In the navigation, the sample-based path planning in the 2D map and the dynamic window approach are used for effective control and autonomous navigation.

Table IV. Comparison of re-planning time when encounter dynamic obstacles

6.2.1 Mapless navigation

In this part, we compared the proposed method with the GridMap method in a mapless navigation task, in which we do not provide a pre-generated map model. The unmanned vehicle needs to build a map while exploring toward the target. Twenty trials are conducted using each of the two methods, with a target point on a rugged terrain about 40 m from the starting point, and the maximum speed of the vehicle is set as 1m/s. We compared the average navigation time, trajectory length, re-planning times, and success rate.

Table III shows that our proposed method has better performance in most metrics, including the average navigation time, re-planning times, and success rate. It is worth noting that the average trajectory length of our method is longer than that of the GridMap method. This is because the navigation approach of GridMap is more aggressive, which marking unknown regions as free. However, such aggressiveness also leads to a higher probability of failure in the mapless navigation tasks. In contrast, our approach can significantly improve navigation by selecting appropriate local target points and re-planning. As the instance shown in Fig. 10, in most of the failure-prone regions of the GridMap method shown in Fig. 10(b), our approach can effectively re-plan to avoid the risk, as shown in Fig. 10(a).

Figure 10. Comparison results with the GridMap method in mapless navigation task.

Table III. Comparison results with the GridMap method in mapless navigation task

6.2.2. Dynamic obstacle avoidance

Three sets of experiments are used to compare the dynamic performance of the two methods in specific scenarios including avoiding large negative obstacles (experiment A), passing through narrow passable area (experiment B), and navigating to the bottom of a depression (experiment C). The results are shown in Fig. 11.

Figure 11. Comparison results with the GridMap method in dynamic obstacle avoidance task.

As is shown in Table IV, kinodynamic collision-free trajectories are both generated in scenarios with and without dynamic obstacles in experiments A and B. However, our method is faster in the re-planning process and tends to generate a smoother trajectory. In the experiment C, the GridMap method fails to perform the re-planning process when dynamic obstacles are encountered while navigating to the depression. This is because the sudden detection of dynamic objects makes it difficult to avoid when the vehicle encounters negative obstacles due to the limited view of the sensor detection.

6.3. Real-world experiments

We validate our proposed approach in a real-world, unstructured environment using the hardware platform mentioned in Section 3 to show the capability of its real-time navigation. The environment we test is a field site about 500 m in length and 200 m in width, with the maximum undulation of 5 m. And there are pits, soil slopes, ponds, and other obstacles that are difficult for unmanned vehicles to cross, as shown in Fig. 12.

Figure 12. The real-world off-road experimental area (point cloud map is built by laser-slam).

Figure 13 shows some instances of the proposed method. When the target point is on the other side of a huge depression as shown in Fig. 13(a), our method can reasonably plan a path such that the vehicle can avoid the huge negative obstacle along the periphery. In Fig. 13(b), when reaching a target point requires passing through a narrow area, our approach can drive the vehicle to pass in a reasonable posture, avoiding being stuck or detouring.

Figure 13. Real navigation in off-road experiment.

7. Conclusions and future work

This paper proposes an autonomous navigation method for unmanned vehicles based on terrain analysis in complex unstructured terrain. Particularly, it is specially optimized for complex unstructured terrain with dynamic obstacles and negative obstacles such as pits and steep slopes. This method uses laser SLAM to build the environment map and an octree to represent and store the navigation map. We optimized the TTA method in front-end sampling, the target autonomous exploration process, and back-end trajectory constraint in the 3D octomap to make navigation more efficient. And we showed the improvement of the proposed method in dynamic obstacle avoidance task and mapless navigation task compared to traditional 2D or 2.5D methods.

The navigation method proposed in this paper relies on data from LiDAR sensors, which lack a high-level semantic representation of terrain information. This makes it slightly insufficient in facing complex off-road environment with vegetation obstacles such as tall grass. In the future, we may consider combining visual information to optimize terrain analysis.

Acknowledgements

This paper was supported by the Major Program of National Natural Science Foundation of China under Grant No. 61690214, Shanghai Science and Technology Action Plan under Grant No.18DZ1204000, 18510745500, 18510750100, 18510730600, Shanghai Aerospace Science and Technology Innovation Fund (SAST) under Grant No. 2019-080, 2019-116 and Shanghai Sailing Program under Grant No. 20YF1417300, and the Natural Science Fund of China (NSFC) under Grant No.51575186.

Conflicts of interest

The authors declare that they have no conflict of interest.

Notes on contributor(s)

Bo Zhou is currently pursuing the Ph.D. degree in mechanical engineering with East China University of Science and Technologies, Shanghai, China. His research interests include Aerial Robotics, motion planning, control and intelligent recognition, artificial intelligence, and computer vision.

Jianjun Yi is a professor with the School of Mechanical and Power Engineering and Computer Science, East China University of Science and Technology, Shanghai, China. His main research interests include intelligent control system, mechatronics, smart sensing and intelligent recognition, artificial intelligence, embedded control system, and so on.

Xinke Zhang is currently pursuing the Ph.D. degree in mechanical engineering with East China University of Science and Technologies, Shanghai, China. His research interests include UGV and UAV slam technology, deep learning model construction, and semantic map construction.

Liwei Chen is currently pursuing the Ph.D. degree in mechanical engineering with East China University of Science and Technologies, Shanghai, China. His research interests include multi-agent system, slam technology, and artificial intelligence application in robotics.

Ding Yang is currently pursuing the Master’s degree in School of Mechanical and Power Engineering, East China University of Science and Technology, Shanghai, China. His research interests include embedded control system and computer vision.

Fei Han is currently working at Shanghai Key Laboratory of Aerospace Intelligent Control Technology, Shanghai, China. His research interests include image processing, motion planning, and multi-agent system.

Hanmo Zhang is currently working at Shanghai Key Laboratory of Aerospace Intelligent Control Technology, Shanghai, China. She received the Ph.D. degree from China Academy of Science, Beijing, China. Her research interests include image processing and point cloud processing.

References

An, J. and Lee, J., “Robust positioning and navigation of a mobile robot in an urban environment using a motion estimator,” Robotica 37(8), 13201331 (2019).CrossRefGoogle Scholar
Guo, W., Fukano, Y., Noshita, K. and Ninomiya, S., Field-based individual plant phenotyping of herbaceous species by unmanned aerial vehicle,” Ecol. Evol. 10(21), 1231812326 (2020).CrossRefGoogle Scholar
Xiao, L., Wang, J., Qiu, X., Rong, Z. and Zou, X., Dynamic-slam: Semantic monocular visual localization and mapping based on deep learning in dynamic environment,” Rob. Auton. Syst. 117, 116 (2019).CrossRefGoogle Scholar
Almqvist, H., Magnusson, M. and Lilienthal, A. J., “Improving point cloud accuracy obtained from a moving platform for consistent pile attack pose estimation,” J. Intell. Rob. Syst. 75(1), 101128 (2014).CrossRefGoogle Scholar
Ji, K., Chen, H., Di, H., Gong, J., Xiong, G., Qi, J. and Yi, T., “CPFG-SLAM: A Robust Simultaneous Localization and Mapping Based on Lidar in Off-Road Environment,” 2018 IEEE Intelligent Vehicles Symposium (IV) (2018).CrossRefGoogle Scholar
Yang, Y., Tang, D., Wang, D., Song, W., Wang, J. and Fu, M., “Multi-camera visual slam for off-road navigation,” Rob. Auton. Syst. 128, 103505 (2020).CrossRefGoogle Scholar
Naudet-Collette, S., Melbouci, K., Gay-Bellile, V., Ait-Aider, O. and Dhome, M., “Constrained rGBD-SLAM,” Robotica 39(2), 277290 (2021).CrossRefGoogle Scholar
Pfrunder, A., Borges, P., Romero, A. R., Catt, G. and Elfes, A., “Real-Time Autonomous Ground Vehicle Navigation in Heterogeneous Environments Using a 3D Lidar,” 2017 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS) (2017).CrossRefGoogle Scholar
Oishi, S., Inoue, Y., Miura, J. and Tanaka, S., “Seqslam++: View-based robot localization and navigation,” Rob. Auton. Syst. 112, 1321 (2019).CrossRefGoogle Scholar
Chhaniyara, S., Brunskill, C., Yeomans, B., Matthews, M., Saaj, C., Ransom, S. and Richter, L., “Terrain trafficability analysis and soil mechanical property identification for planetary rovers: A survey,” J. Terramech. 49(2), 115128 (2012).CrossRefGoogle Scholar
Papadakis, P., “Terrain traversability analysis methods for unmanned ground vehicles: A survey,” Eng. Appl. Artif. Intell. 26(4), 13731385 (2013).CrossRefGoogle Scholar
Zhu, Z., Li, N., Sun, R., H. zhao and D. xu, Off-road Autonomous Vehicles Traversability Analysis and Trajectory Planning Based on Deep Inverse Reinforcement Learning. arXiv 2019, arXiv:1909.06953 (2019).CrossRefGoogle Scholar
Hornung, A., Wurm, K. M., Bennewitz, M., Stachniss, C. and Burgard, W., “OctoMap: An efficient probabilistic 3D mapping framework based on octrees,” Auton. Robots 34(3), 189206 (2013).CrossRefGoogle Scholar
Guastella, D. C. and Muscato, G., “Learning-based methods of perception and navigation for ground vehicles in unstructured environments: A review,” Sensors 21(1), 73 (2020).CrossRefGoogle ScholarPubMed
Luong, M. and Pham, C., “Incremental learning for autonomous navigation of mobile robots based on deep reinforcement learning,” J. Intell. Rob. Syst. 101(1), 111 (2021).CrossRefGoogle Scholar
Proceedings of Machine Learning Research, Guided Cost Learning: Deep Inverse Optimal Control via Policy Optimization, vol. 48 (2016).Google Scholar
Wulfmeier, M., Rao, D., Wang, D. Z., Ondruska, P. and Posner, I., “Large-scale cost function learning for path planning using deep inverse reinforcement learning,” Int. J. Rob. Res. 36(10), 10731087 (2017).CrossRefGoogle Scholar
Oliveira, F. G., Neto, A. A., Howard, D., Borges, P., Campos, M. F. and Macharet, D. G., “Three-dimensional mapping with augmented navigation cost through deep learning,” J. Intell. Rob. Syst. 101(3), 121 (2021).CrossRefGoogle Scholar
Quann, M., Ojeda, L., Smith, W., Rizzo, D., Castanier, M. and Barton, K., “Offroad ground robot path energy cost prediction through probabilistic spatial mapping,” J. Field Rob. 37(3), 421439 (2020).CrossRefGoogle Scholar
Bellone, M., Reina, G., Caltagirone, L. and Wahde, M., “Learning traversability from point clouds in challenging scenarios,” IEEE Trans. Intell. Transp. Syst. 19(1), 296305 (2018).CrossRefGoogle Scholar
Kingry, N., Jung, M., Derse, E. and Dai, R., “Vision-based Terrain Classification and Solar Irradiance Mapping for Solar-Powered Robotics,” 2018 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS) (2018) pp. 58345840.Google Scholar
Martínez, J. L., Morán, M., Morales, J., Robles, A., and Sánchez, M., “Supervised learning of natural-terrain traversability with synthetic 3D laser scans,” Appl. Sci. 10(3), 1140 (2020).CrossRefGoogle Scholar
Chiodini, S., Torresin, L., Pertile, M. and Debei, S., “Evaluation of 3D CNN semantic mapping for rover navigation,” arXiv 2020, arXiv:2006.09761 (2020).CrossRefGoogle Scholar
Maturana, D., Chou, P. W., Uenoyama, M., and Scherer, S., “Real-time semantic mapping for autonomous off-road navigation,” In: Field and Service Robotics (Springer, Cham, 2018) pp. 335–350.Google Scholar
Pérez-Higueras, N., Jardón, A., Rodríguez, N. and Balaguer, C., “3D exploration and navigation with optimal-RRT planners for ground robots in indoor incidents,” Sensors 20(1), 220 (2019).CrossRefGoogle ScholarPubMed
Gao, F., Wu, W., Gao, W. and Shen, S., “Flying on point clouds: Online trajectory generation and autonomous navigation for quadrotors in cluttered environments,” J. Field Rob. 36(4), 710733 (2018).CrossRefGoogle Scholar
Oleynikova, H., Taylor, Z., Fehr, M., Siegwart, R. and Nieto, J., “Voxblox: Incremental 3D Euclidean Signed Distance Fields for On-Board MAV Planning,” 2017 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS) (2017).CrossRefGoogle Scholar
Wang, H. and Liu, Y., “A low-cost autonomous navigation system for a quadrotor in complex outdoor environments,” Int. J. Adv. Rob. Syst. 17(1), 172988142090515 (2020).CrossRefGoogle Scholar
Likhachev, M., Gordon, G. J. and Thrun, S., “ARA*: Anytime A* with Provable Bounds on Sub-Optimality,” In: Advances in Neural Information Processing Systems (2003) pp. 767774.Google Scholar
Lavalle, S. M., “Rapidly-exploring random trees: A new tool for path planning,” (1998).Google Scholar
Ajanovic, Z., Lacevic, B., Shyrokau, B., Stolz, M. and Horn, M., “Search-based Optimal Motion Planning for Automated Driving,” 2018 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS) (2018).CrossRefGoogle Scholar
Huang, H., Savkin, A. V and Ni, W., “Energy-efficient 3D navigation of a solar-powered uav for secure communication in the presence of eavesdroppers and no-fly zones,” Energies 13(6), 1445 (2020).CrossRefGoogle Scholar
Kuffner, J. and LaValle, S., “RRT-connect: An Efficient Approach to Single-Query Path Planning,” Proceedings 2000 ICRA. Millennium Conference. IEEE International Conference on Robotics and Automation. Symposia Proceedings (Cat. No.00CH37065), vol. 2 (2000) pp. 9951001.Google Scholar
Chen, L., Shan, Y., Tian, W., Li, B. and Cao, D., “A fast and efficient double-tree RRT -like sampling-based planner applying on mobile robotic systems,” IEEE/ASME Trans. Mechatron. 23(6), 25682578 (2018).CrossRefGoogle Scholar
Werling, M., Ziegler, J., Kammel, S. and Thrun, S., “Optimal Trajectory Generation for Dynamic Street Scenarios in a Frenét Frame,” 2010 IEEE International Conference on Robotics and Automation (2010).CrossRefGoogle Scholar
Ding, W., Gao, W., Wang, K. and Shen, S., “An efficient B-spline-based kinodynamic replanning framework for quadrotors,” IEEE Trans. Rob. 35(6), 12871306 (2019).CrossRefGoogle Scholar
Ding, W., Zhang, L., Chen, J. and Shen, S., “Safe trajectory generation for complex urban environments using spatio-temporal semantic corridor,” IEEE Rob. Autom. Lett. 4(3), 29973004 (2019).CrossRefGoogle Scholar
Ratliff, N., Zucker, M., Bagnell, J. A. and Srinivasa, S., “Chomp: Gradient Optimization Techniques for Efficient Motion Planning,” 2009 IEEE International Conference on Robotics and Automation (2009) pp. 489494.Google Scholar
Mellinger, D. and Kumar, V., “Minimum Snap Trajectory Generation and Control for Quadrotors,” 2011 IEEE International Conference on Robotics and Automation (2011) pp. 25202525.Google Scholar
Zhang, J. and Singh, S., “Low-drift and real-time lidar odometry and mapping,” Auton. Robots 41(2), 401416 (2016).CrossRefGoogle Scholar
Shan, T. and Englot, B., “Lego-Loam: Lightweight and Ground-Optimized Lidar Odometry and Mapping on Variable Terrain,” 2018 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS) (2018).Google Scholar
Kim, G. and Kim, A., “Scan Context: Egocentric Spatial Descriptor for Place Recognition within 3D Point Cloud Map,” 2018 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS) (2018).CrossRefGoogle Scholar
Gao, F., Wu, W., Lin, Y. and Shen, S., “Online Safe Trajectory Generation for Quadrotors Using Fast Marching Method and Bernstein Basis Polynomial,” 2018 IEEE International Conference on Robotics and Automation (ICRA) (2018) pp. 344351.Google Scholar
Chen, J., Liu, T. and Shen, S., “Online Generation of Collision-Free Trajectories for Quadrotor Flight in Unknown Cluttered Environments,” 2016 IEEE International Conference on Robotics and Automation (ICRA) (2016) pp. 14761483.Google Scholar
Quigley, M., K. ConleyBrian, B. Gerkey and J. Faust, “ROS: An Open-Source Robot Operating System,” ICRA Workshop on Open Source Software, vol. 3 (2009) p. 5.Google Scholar
Fankhauser, P. and Hutter, M., “A universal grid map library: Implementation and use case for rough terrain navigation,” Stud. Comput. Intell. 1(5), 99120 (2016).CrossRefGoogle Scholar
Figure 0

Figure 1. Architecture of the autonomous navigation system.

Figure 1

Figure 2. Overview of the unmanned vehicle system. The platform uses a Velodyne LIDAR (Velodyne VLP-16) for localizing itself and mapping the environment. The Laser-SLAM module, motion planning module, and controller are all running on the NVIDIA Xavier. And a camera (Azure Kinect) is used to avoidance in an emergency.

Figure 2

Figure 3. Local target point selection.

Figure 3

Figure 4. The simulation UGV and the simulation sensors. In our experiment, a simulation Velodyne VLP-16 and a simulation depth camera whose data format is same as that of the real sensors are used (in order to better represent the pose between the sensors, the connection between them is hidden in the simulation).

Figure 4

Figure 5. Off-road environment built in gazebo.

Figure 5

Figure 6. Unknown area, negative obstacle rejection.

Figure 6

Figure 7. Result of different path-expansion boundaries and cost functions.

Figure 7

Table I. Time of path finder module process (${\eta _{th}} = 3$)

Figure 8

Figure 8. Corridor generation result.

Figure 9

Figure 9. Trajectory generation results.

Figure 10

Table II. Navigation time distribution

Figure 11

Table IV. Comparison of re-planning time when encounter dynamic obstacles

Figure 12

Figure 10. Comparison results with the GridMap method in mapless navigation task.

Figure 13

Table III. Comparison results with the GridMap method in mapless navigation task

Figure 14

Figure 11. Comparison results with the GridMap method in dynamic obstacle avoidance task.

Figure 15

Figure 12. The real-world off-road experimental area (point cloud map is built by laser-slam).

Figure 16

Figure 13. Real navigation in off-road experiment.