Next Article in Journal
Validation of 3D Knee Kinematics during Gait on Treadmill with an Instrumented Knee Brace
Next Article in Special Issue
Spatiotemporal Clustering of Parking Lots at the City Level for Efficiently Sharing Occupancy Forecasting Models
Previous Article in Journal
An Improved CatBoost-Based Classification Model for Ecological Suitability of Blueberries
Previous Article in Special Issue
Tire Slip H Control for Optimal Braking Depending on Road Condition
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Apollo: Adaptive Polar Lattice-Based Local Obstacle Avoidance and Motion Planning for Automated Vehicles

1
School of Mechanical Science and Engineering, Huazhong University of Science and Technology, Wuhan 430074, China
2
School of Mechanical Engineering and Automation, Harbin Institute of Technology, Shenzhen 518071, China
*
Author to whom correspondence should be addressed.
Sensors 2023, 23(4), 1813; https://doi.org/10.3390/s23041813
Submission received: 30 December 2022 / Revised: 1 February 2023 / Accepted: 2 February 2023 / Published: 6 February 2023
(This article belongs to the Special Issue Human Machine Interaction in Automated Vehicles)

Abstract

:
The motion planning module is the core module of the automated vehicle software system, which plays a key role in connecting its preceding element, i.e., the sensing module, and its following element, i.e., the control module. The design of an adaptive polar lattice-based local obstacle avoidance (APOLLO) algorithm proposed in this paper takes full account of the characteristics of the vehicle’s sensing and control systems. The core of our approach mainly consists of three phases, i.e., the adaptive polar lattice-based local search space design, the collision-free path generation and the path smoothing. By adjusting a few parameters, the algorithm can be adapted to different driving environments and different kinds of vehicle chassis. Simulations show that the proposed method owns strong environmental adaptability and low computation complexity.

1. Introduction

The paper aims to give an efficient local motion planning method for automated driving in complex environments. The planning module, which links the system perception module and the control module, plays a special and momentous role in the automated driving system. It needs to reasonably organize and formulate the sensing, positioning and routing information while considering the status of the vehicle. An eximious motion planner of an automated vehicle needs to consider the safety, feasibility, efficiency, environmental adaptability and real-time performance of the algorithm, especially in dynamic driving scenarios with humans.

1.1. Related Work

A hierarchical framework is typically adopted, in which the motion planning task is decomposed into the global path planning and the local path planning problems. The global path planning or deliberative path planning is typically map-based and often computed offline, while the local path planning or reactive planning is sensor-based and conducted online. Global planning algorithms for completely known topological or occupancy grid maps, such as A*, D*, jump point search (JPS), probabilistic roadmap (PRM), rapidly exploring random tree (RRT), Voronoi graph and their variants [1,2,3,4,5], are well studied. In practice, global path planning is often problematic due to the inaccuracy or unavailability of the global world model. The local path planning method is mainly used for real-time collision avoidance and global path tracking in unknown or semi-unknown environments via the onboard sensing information. Many local path planning algorithms are prone to falling into local minima or exhibiting oscillating behaviors. This paper proposes an adaptive polar lattice-based local obstacle avoidance and motion planning method (APOLLO) which is effective and computationally efficient in dynamic driving scenarios with humans. Without loss of generality, the vehicle’s sensing area is assumed to be fan-shaped. APOLLO is conducted on the scalable polar grids around the vehicle with elaborately designed probabilistic representations. A coarse collision-free path can then be generated by connecting grid nodes according to some optimization criteria. An efficient strategy is also proposed to adjust the selected path to a kinodynamic, plausible smooth trajectory. A local planner should track the global path while avoiding dynamic obstacles as well as taking into consideration the vehicle constraints. Several methods have been successfully used in some distinct driving scenarios, such as potential field methods [6], the dynamic windows approach (DWA) [7], the time-elastic band (TEB) [8,9,10], a state lattice [11,12,13], a numerical optimization approach [14,15,16,17], machine learning methods [18,19], etc. Paths planned by the potential field methods are generally smooth and safe, but methods of this kind have the problem of local optima, and it is difficult for the vehicle to approach the target point by using such methods when there are obstacles near the target point. The DWA algorithm consists of three main processes, i.e., the velocity sampling, the obstacle detection and the trajectory evaluation. This algorithm selects the path with the highest score and sends the associated speed to the vehicle, and it is also susceptible to local minima [20]. The TEB algorithm is formulated as a multi-objective nonlinear optimization problem with the initial trajectory generated by a global path planner, which can take into consideration the geometric and kinematic/dynamic constraints of the vehicle. Thanks to efficient optimization techniques, such as the “g2o” framework, the TEB algorithm can be implemented robustly and efficiently in a simple environment with relatively inexpensive hardware. However, this kind of algorithm may let the vehicle wander around the channel entrance when facing a narrow channel environment (Figure 1a). State lattice approaches, such as FALCO [11] (Figure 1b), which are based on pre-computed motion primitives and online path selection, can effectively reduce the computational complexity while needing relatively larger storage spaces, and they may produce oscillatory behavior in front of long obstructions. The receding horizon optimization (RHO) and model predictive control (MPC) methods transform the local trajectory generation problem into the numerical optimization problem, which can easily take into account the environment and vehicle constraints in the model and keep the ride smooth [21]. However, this kind of approach requires a deliberate balance between the model complexity and the computational complexity.

1.2. Contribution

A probability-based method to construct an adaptive local polar lattice search space with obstacles is proposed. Unlike an equidistant lattice, the proposed adaptive polar lattice based on sensor field of view (FOV) is closer to human search habits. The concise collision-free path generation and smoothing method has high computational efficiency. Compared with some state-of-the-art methods, the proposed obstacle avoidance and motion planning method shows stronger environmental adaptability and is effective in dynamic driving scenarios.

2. Local Search Space Design

An occupancy grid map is one of the most commonly used scene representation methods for automated vehicles. According to the size of the 2D grids, it can be divided into uniform grids, non-uniform grids and adaptive size grids. In practical applications, adjusting the local resolution of the grids adaptively according to the complexity of the environment and driving speed of the vehicle will be very helpful for motion planning. Despite the computational advantages, the variable-size grids can implicitly take the uncertainty of local sensing information into account. Apart from Cartesian occupancy grid maps, polar coordinate-based grid maps are also used especially in outdoor environments, having the advantages of easy adjusting of the angular resolution and integration of obstacles perceived by sensors, such as cameras and lidars [22].

2.1. Adaptive Polar Lattice

As shown in Figure 2, the angle range β and radius L of the automated vehicle M are set adaptively according to the sensor horizontal FOV, the sensing range and the environment. Rays are built to divide the circumferential local search space, and the circular arcs with the automated vehicle as the center divide the radial direction of the space. The rays and circular arcs divide the local search area into m × n polar lattices with different sizes, where m denotes the amount of radial dispersion and n the amount of angle dispersion. Each polar lattice in Figure 2 can be assigned a probability. The magnitude of each grid’s probability value depends on the likelihood of the vehicle traversing that grid. Then, the overall probability distribution of all the polar lattices can be stored in an m × n matrix,
Ω = [ ω i j ] ,   i = 1 , , m ; j = 1 , , n .
Suppose the size of the angle and radial interval, i.e., δ a , δ r , are constant, and the probability of any point ( x k , y k ) in the local search space is assigned to be ω i j . Here, the grid index i , j corresponding to the point ( x k , y k ) can be calculated by Equations (1) and (2), when δ a , δ r are constant.
i = x k 2 + y k 2 δ r ,
j = arctan ( y k / x k ) δ a .
Here, means rounding down. In real applications, δ a , δ r are tuned adaptively according to the geometric and physical parameters of the vehicle and the complexity of its working environment. Without a loss of generality, δ a is set to be constant in the following discussion for simplicity. Considering that the motion planning of a vehicle should be more conscientious for the area closer to itself than the area far away, δ r can be set as an arithmetic progression, a geometric progression or a logarithmic function. Similar to (1) and (2), the index i , j of any point in the search area can also be easily calculated for the case that δ r is an arithmetic or geometric progression. A hash table is used to store the mapping between each point’s coordinates and the corresponding index of Ω . The complexity of the indexing time is O(1) (see Figure 2). Compared with the equidistant grid, the proper selection of the form and value of δ a , δ r can reduce the computational complexity of the motion planning algorithm while ensuring the safety of the vehicle. We do not claim that an arithmetic progression or a geometric progression is the best choice for δ r . It needs to be determined according to the actual driving conditions.

2.2. Local Probability Distribution

An automated vehicle with nonholonomic constraints cannot move laterally. In order to make the vehicle ride smoother and reduce frequent turns, the probability should be set higher in the vehicle’s heading direction. As show in Figure 3, for a given initial state x 0 , the vehicle can take different paths to the sensor frontier F. The 2D path first splits in 37 directions, and each path splits in another 12 directions. For each path generated as a cubic spline curve, the resulting paths group is symmetric. As the end points of the local search space are reachable, the probabilities at the edge of the search area should be approximately consistent.
Based on the above considerations, the initial probability distribution function of the local search space without obstacles and with a goal point is designed as (3), which is similar to a two-dimensional Gaussian distribution.
f X ( r , a ) = η 1 ( 2 π ) 2 | Σ | e 1 2 ( X μ ) T Σ 1 ( X μ )
where
X = ( r , a ) T ,   μ = ( μ r , μ a ) T ,   Σ = | σ r 2 ρ σ r σ a ρ σ r σ a σ r 2 | .
Here, r represents the distance between the point in the search range and the vehicle, and a represents the polar angle of the proposed point in the vehicle’s coordinate system. μ is the expectation of r and a . Σ represents the covariance matrix. η and ρ are constants. Figure 4 illustrates the initial probability distribution of a 180° fan search space.
In order to make the vehicle move towards the target point, it is necessary to set high probabilities along the direction of the target point. As shown in Figure 5, we denote the distance and azimuth of the target point to be r * and a * , respectively.
Then, the probability distribution between the vehicle and target point is set as:
g ( r , a ) = ζ r r * 1 2 π | σ | e 1 2 ( a a * ) T σ 1 ( a a * )
where r [ 0 , r * ] and a [ a * Δ a , a * + Δ a ] . For a distinct distance r from the original point, Formula (4) degenerates to a Gaussian distribution with respect to the angle a . Here, a * and σ are respectively the mean and variance of the proposed Gaussian distribution. ζ is a constant, and Δ a is an adjustable parameter.

2.3. Obstacle Avoidance

It is always expected that the planned path of the vehicle will be as far away from obstacles as possible, so as to ensure safety. However, a too-conservative path planning strategy will inevitably reduce the planning efficiency and increase the length of the resulting path. As shown in Figure 6, the vicinity region of the obstacle point cloud p = ( x k , y k ) , k = 1 , 2 , , is divided into two areas, i.e., the strictly prohibited area and the expansion area. Here, r 0 denotes the strictly prohibited region, which is related to the shape and size of the vehicle.
The probability distribution around the obstacles is updated according to the following piecewise function:
Ω ( i , j ) = { γ , p 0 p i , j < r 0   γ p 0 p i , j + ε , r 0 p 0 p i , j r s
Here, p 0 represents the coordinates of the obstacle point cloud. r s denotes the radius of the expanded obstacle point cloud, and γ , ε are adjustable parameters. Figure 7 illustrates the probability distribution of the local search space with two static obstacles at coordinates (−1.0, 1.5) and (0.0, 0.7).

3. Collision-Free Path Generation

Based on the above local search space design, the problem of collision-free path planning can be transformed into the problem of node selection, i.e., the nodes are selected and connected one by one along the arcs that gradually expand from near to far in the search area and in the meantime ensure that the connecting lines do not intersect with obstacles (see Figure 8).
As shown in Figure 9, the azimuth angle of the goal point in the sector search area is first calculated. For a goal point inside the local search space, the node closest to the goal is chosen as the target. For the case that the goal point is outside the local search space, the center point of the vehicle is connected to the goal point, and the intersection point with the boundary of the search area is denoted as E. If E is collision-free, then its closest node is selected as the temporary target point. Otherwise, the nodes around E are selected as potential targets. The path weight of the vehicle to each potential target is calculated, and the path with the largest value is selected.
The specific path generation procedures are given in Algorithm 1.
Algorithm 1 Collision-free path planning
  • Initialize weight matrix Ω
  • select the node E S closest to the goal and calculate its corresponding index ( i , j ) in matrix Ω
  • If Ω ( i , j ) < 0  then   // indicates the lattice with index ( i , j ) is occupied
  •  find neighbor node E b of E , b = 1 , 2 ,
  •  generate corresponding paths p b
  •  calculate total weight ω b = i = 1 m ω i of each path
  •  select path p * = { p b | b = arg max b ω b }
  • return p b
  • else
  •  generate path p 0 from the vehicle to node E
  • if p 0 ! = NULL  then
  •   return p 0
  • else
  •    repeat steps 4–8
  • end if
  • end if

4. Path Smoothing

In order to make the tracking process of the vehicle smoother and more stable, it is necessary to convert the polyline into a kinodynamic-friendly trajectory, especially at sharp turning points. The path transferring process should also be collision-free and can be adjusted automatically according to the speed of the vehicle.

4.1. Fast Point Sequence Generation

As shown in Figure 10, the unit heading vector of the vehicle at the position A i is denoted by v i , i = 0 , 1 , . Point B i is on the vehicle’s current heading vector, and the distance between A i and B i is set to be l i . With B i as the center point, find point C i on the polyline path so that B i C i = κ i . Find point A i + 1 on vector B i C i so that B i A i + 1 = l i . Denote as v i + 1 the vector starting from A i + 1 and going in the direction of the extension line A i A i + 1 (see the green vector in Figure 10). The above process is repeated until the vehicle reaches the vicinity of the target point, and the point sequence A i , i = 0 , 1 , generated in the process is smooth.
The point sequence can be kept collision-free by adjusting the parameters κ , l , l . Algorithm 2 gives the specific path smoothing procedures.
Algorithm 2 Path smoothing
  • Initialize weight matrix Ω and κ , l , l   // κ , l , l are adjustable parameters
  • while  | A i E | > ε  do   // ε is the margin
  •     B i = A i + l i v i    // v i v c c c is the orientation of the vehicle
  •    find point C i so that | B i C i | = κ
  •    choose test points D 1 , D 2 , , D s on B i C i
  •    for  k = 1 : s  do
  •     calculate index ( i , j ) of point D k in Ω
  •     if Ω ( i , j ) < 0  then
  •        κ = κ Δ κ
  •       back to step 3
  •     end if
  •   end for
  •     A i + 1 = B i + l i B i C i / κ
  •   calculate angular velocity between A i and A i + 1
  • end while
As shown in Figure 10, a sequence of points { A 0 , A 1 , } with directions can be generated by Algorithm 2. Figure 11 shows the path smoothing results of differently shaped polyline paths with different parameters κ , l , l .
Figure 12 shows the path smoothing results of Algorithm 2 in a driving scenario with obstacles.

4.2. Speed Optimization

The smooth path generated can be followed by path tracking methods. Usually, the control module should be fed with the linear velocity and angular velocity at a given moment. Several approaches can be applied to transfer the discrete path into v , ω with limited motor torques, such as multi-objective optimization [8,9], polynomial interpolation and quadratic programming [14]. The optimization can also be performed on the SE(2) manifold, and then the resulting pose can be directly tracked by geometric control methods [10,23]. In this paper, it is assumed that the velocity between two adjacent configurations
g 0 = ( x 0 , y 0 , θ 0 ) ,   g e = ( x e , y e , θ e ) 2 S 1 S E ( 2 )
is constant and that the direction of it has been obtained in the path smoothing process. Here, ( x 0 , y 0 ) , ( x e , y e ) denote the position of the vehicle, and θ 0 , θ e denote the orientation of the vehicle. Divide the time interval T = [ t 0 , t e ] between g 0 and g e into N equal subintervals with length δ t .
As shown in Figure 13, the parameters selected in Algorithm 2, such as l i , l i , are closely related to the kinematics of the vehicle. For example, if l i = l i , the path between A i and A i + 1 is a circular arc. According to the geometric relation, the formula for solving the velocity can be obtained as:
v = ( x e x 0 ) 2 + ( y e y 0 ) 2 2 sin θ e θ 0 2 θ e θ 0 T
Then, the angular velocity ω i , i = 1 , , N between the configurations g 0 ( p 0 , θ 0 ) and g e ( p e , θ e ) can be obtained by the following optimization model:
min ω i   J θ + J p s . t .   ω min ω i ω max ,   i = 1 , , N     Δ ω min ω i + 1 ω i Δ ω max ,   i = 1 , , N 1
where
J θ = α 1 ( θ 0 + i = 1 N ω i δ t ) θ e 2 J p = α 2 ( p 0 + i = 1 N v i δ t ) p e 2
Here, α 1 , α 2 are weights corresponding to the terminal angle and position error. The vector v in (8) consists of two elements, i.e., v = [ v x , v y ] T . The above objective function can also be represented by the distance metric of SE(2), which is log ( g 0 1 g e ) (here we abuse the notations g 0 , g e to represent group elements in SE(2)). For N = 3, the above optimization formulation can be relaxed to the following algebraic equations:
θ e = θ 0 + ( Δ θ 1 + Δ θ 2 + Δ θ 3 ) x e = x 0 + Δ s [ cos ( θ 0 + θ 1 ) + cos ( θ 0 + i = 1 2 Δ θ i ) + cos ( θ 0 + i = 1 3 Δ θ i ) ] y e = y 0 + Δ s [ sin ( θ 0 + θ 1 ) + sin ( θ 0 + i = 1 2 Δ θ i ) + sin ( θ 0 + i = 1 3 Δ θ i ) ]
where Δ θ i = ω i δ t and Δ s = v δ t . It is obvious that Equation (9) has a unique analytical solution. As θ i are often very small, especially with high control frequencies, in practice, the trigonometric functions in (9) can be approximated by the first-order Taylor expansion. Figure 14 and Figure 15 show the linear and angular velocity, i.e., v , ω , generated in the long wall driving scenario.
It should be pointed out that the velocity and time can also be regarded as the decision variables in the optimization model, but this will consume much more time for solving the resulting optimization problem. Based on the consideration of real-time performance, the model is simplified, and the resulting model is verified to be effective and efficient. Due to the extremely low computational complexity of the proposed path planning and smoothing algorithms, the method can be effectively applied to human-involved dynamic driving scenarios without predicting the motion of the humans.

5. Simulations

The performance of the proposed method is evaluated in different simulated scenarios (see Figure 16): the forest scenario, the narrow channel scenario, the long wall scenario and the human-involved dynamic driving scenario. The algorithms are implemented in C++ and are executed on a laptop running Ubuntu 16.04 with an Intel i5-10200H CPU and 16 GB of RAM.
The TEB algorithm is also tested in the narrow channel scenario. Figure 17 shows the simulations of the TEB algorithm with different maximum global looking-ahead distances and the performance of the APOLLO algorithm in the narrow channel scenario. It can be seen that the vehicle is wandering around the gate and cannot follow the global path, while the APOLLO algorithm allows the vehicle to pass smoothly through the narrow channel of the same size. For the long wall scenario, the FALCO algorithm exhibits oscillatory behavior (Figure 1b), while the APOLLO algorithm can choose a relatively better direction without hesitation (Figure 16c).
Figure 18 records the CPU times of various planning algorithms in the long wall simulation environment. As we can see, APOLLO has the highest time efficiency and needs less than 2 ms on average to complete the local planning task. Compared with the state lattice-based FALCO local planner, the APOLLO planner does not need to pre-compute the path group for a distinct vehicle and only needs to change few parameters to adjust the size of the desired sector region, which makes APOLLO well adapted to different driving speeds of the automated vehicle.
Figure 19 shows the trajectory planning process of the automated vehicle in the human involved dynamic driving scenario. Figure 20 and Figure 21 show the linear and angular velocity, i.e., v , ω , generated in this dynamic driving scenario.
Owning to its strong environmental adaptability and low computational complexity, the proposed APOLLO algorithm can also be used by the automated vehicle in a fleet to generate local collision-free trajectories. This algorithm can be applied in dynamic indoor environments, such as smart factories, shopping malls or airport stations, as well as high-speed outdoor transportation environments.

6. Conclusions

This paper presents APOLLO, a fast local smooth path generator for agile drives in unknown dynamic environments. The key advantage of the proposed local planner lies in its low computational complexity and its adaptivity. Therefore, this method can deal with human-involved dynamic driving scenarios and high-speed driving scenarios. Some of the variable parameters in the proposed algorithms can be adjusted manually to adapt to different driving scenarios.

Author Contributions

Conceptualization, Y.L. and T.W.; methodology, Y.L.; software, T.W. and Z.C.; validation, T.W. and Z.C.; investigation, Y.L., X.Z. and Z.Y.; data curation, T.W. and X.Z.; writing—original draft preparation, Y.L.; writing—review and editing, X.Z. and Z.Y.; supervision, Z.Y. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by the National Natural Science Foundation of China (Grant No. 51905185) and the National Postdoctoral Program for Innovative Talents (No. BX20180109).

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.

References

  1. Latombe, J.C. Robot Motion Planning, 1st ed.; Springer: New York, NY, USA, 1991. [Google Scholar]
  2. LaValle, S.M. Planning Algorithms, 1st ed.; Cambridge University Press: Cambridge, UK, 2006. [Google Scholar]
  3. Corke, P. Robotics, Vision and Control, 2nd ed.; Springer: Cham, Switzerland, 2017. [Google Scholar]
  4. Dolgov, D.; Thrun, S.; Montemerlo, M.; Diebel, J. Path planning for autonomous vehicles in unknown semi-structured environments. Int. J. Robot. Res. 2010, 29, 485–501. [Google Scholar] [CrossRef]
  5. Qin, Z.; Chen, M.; Hu, M.; Chen, L.; Fan, J. A novel path planning methodology for automated valet parking based on directional graph search and geometry curve. Robot. Auton. Syst. 2020, 132, 103606. [Google Scholar] [CrossRef]
  6. Khatib, M.; Chatile, R. An extended potential field approach for mobile robot sensor-based motions. In Proceedings of the 1995 International Conference on Intelligent Autonomous Systems, Karlsruhe, Germany, 27–30 March 1995. [Google Scholar]
  7. Fox, D.; Burgard, W.; Thrun, S. The dynamic window approach to collision avoidance. IEEE Robot. Autom. Mag. 1997, 4, 23–33. [Google Scholar] [CrossRef]
  8. Roesmann, C.; Feiten, W.; Woesch, T.; Hoffmann, F.; Bertram, T. Trajectory modification considering dynamic constraints of autonomous robots. In Proceedings of the Robotik 2012 7th German Conference on Robotics, Munich, Germany, 21–22 May 2012; pp. 1–6. [Google Scholar]
  9. Roesmann, C.; Feiten, W.; Woesch, T.; Hoffmann, F.; Bertram, T. Efficient trajectory optimization using a sparse model. In Proceedings of the 2013 European Conference on Mobile Robotics, Barcelona, Catalonia, Spain, 25–27 September 2013; pp. 138–143. [Google Scholar]
  10. Deray, J.; Magyar, B.; Sola, J.; Andrade-Cetto, J. Time-elastic smooth curve optimization for mobile-base motion planning. In Proceedings of the 2019 IEEE/RSJ International Conference on Intelligent Robots Systems, Macau, China, 3–8 November 2019. [Google Scholar]
  11. Zhang, J.; Hu, C.; Chadha, R.G.; Singh, S. Falco: Fast likelihood-based collision avoidance with extension to human-guided navigation. J. Field Robot. 2020, 37, 1300–1313. [Google Scholar] [CrossRef]
  12. Pivtoraiko, M.; Knepper, R.A.; Kelly, A. Differentially constrained mobile robot motion planning in state lattices. J. Field Robot. 2009, 26, 308–333. [Google Scholar] [CrossRef]
  13. Knepper, R.A.; Mason, M.T. Empirical sampling of path sets for local area motion planning. In Experimental Robotics; Khatib, O., Kumar, V., Pappas, G.J., Eds.; Springer: Berlin/Heidelberg, Germany, 2009; Volume 54, pp. 451–462. [Google Scholar]
  14. Werling, M.; Kammel, S.; Ziegler, J.; Groll, L. Optimal trajectories for time-critical street scenarios using discretized terminal manifolds. Int. J. Robot. Res. 2012, 31, 346–359. [Google Scholar] [CrossRef]
  15. Shum, A.; Morris, K.; Khajepour, A. Direction-dependent optimal path planning for autonomous vehicles. Robot. Auton. Syst. 2015, 70, 202–214. [Google Scholar] [CrossRef]
  16. Brito, B.; Floor, B.; Ferranti, L.; Alonso-Mora, J. Model predictive contouring control for collision avoidance in unstructured dynamic environments. IEEE Robot. Autom. Lett. 2019, 4, 4459–4466. [Google Scholar] [CrossRef]
  17. Zhou, B.; Gao, F.; Wang, L.; Liu, C.; Shen, S. Robust and efficient quadrotor trajectory generation for fast autonomous flight. IEEE Robot. Autom. Lett. 2019, 4, 3529–3536. [Google Scholar] [CrossRef]
  18. Fan, T.; Long, P.; Liu, W.; Pan, J. Distributed multi-robot collision avoidance vis deep reinforcement learning for navigation in complex scenarios. Int. J. Robot. Res. 2020, 39, 856–892. [Google Scholar] [CrossRef]
  19. Niroui, F.; Zhang, K.; Kashino, Z.; Nejat, G. Deep reinforcement learning robot for search and rescue applications: Exploration in unknown cluttered environments. IEEE Robot. Autom. Lett. 2019, 4, 610–617. [Google Scholar] [CrossRef]
  20. Brock, O.; Khatib, O. High-speed navigation using the global dynamic window approach. In Proceedings of the 1999 IEEE International Conference on Robotics and Automation, Detroit, MI, USA, 10–15 May 1999. [Google Scholar]
  21. Ziegler, J.; Bender, P.; Schreiber, M.; Lategahn, H.; Strauß, T.; Stiller, C.; Dang, T.; Franke, U.; Appenrodt, N.; Keller, C.G.; et al. Making Bertha drive—An autonomous journey on a historic route. IEEE Intell. Transp. Syst. Mag. 2014, 6, 8–20. [Google Scholar] [CrossRef]
  22. Nieuwenhuisen, M.; Steffens, R.; Behnke, S. Local Multiresolution Path Planning in Soccer Games Based on Projected Intentions. In RoboCup 2011: Robot Soccer World Cup XV; Röfer, T., Mayer, N.M., Savage, J., Saranlı, U., Eds.; Springer: Berlin/Heidelberg, Germany, 2012; Volume 7416, pp. 495–506. [Google Scholar]
  23. Kobilarov, M. Discrete Geometric Motion Control of Autonomous Vehicle. Ph.D. Thesis, University of Southern California, Los Angeles, CA, USA, 2008. [Google Scholar]
Figure 1. Oscillatory behavior of TEB and FALCO. (a) TEB in narrow channel; (b) FALCO in front of long obstruction.
Figure 1. Oscillatory behavior of TEB and FALCO. (a) TEB in narrow channel; (b) FALCO in front of long obstruction.
Sensors 23 01813 g001
Figure 2. Local search space partition.
Figure 2. Local search space partition.
Sensors 23 01813 g002
Figure 3. Illustration of the state lattices of the nonholonomic robot.
Figure 3. Illustration of the state lattices of the nonholonomic robot.
Sensors 23 01813 g003
Figure 4. 3D illustration of the initial probability distribution.
Figure 4. 3D illustration of the initial probability distribution.
Sensors 23 01813 g004
Figure 5. Probability distribution along the direction of the target point in a 180° fan search space.
Figure 5. Probability distribution along the direction of the target point in a 180° fan search space.
Sensors 23 01813 g005
Figure 6. Expansion of an obstacle point cloud.
Figure 6. Expansion of an obstacle point cloud.
Sensors 23 01813 g006
Figure 7. Probability distribution of the local search space with obstacles in polar coordinates.
Figure 7. Probability distribution of the local search space with obstacles in polar coordinates.
Sensors 23 01813 g007
Figure 8. Node selection and connection.
Figure 8. Node selection and connection.
Sensors 23 01813 g008
Figure 9. Illustration of path planning when (a) target is occupied; (b) target is collision-free.
Figure 9. Illustration of path planning when (a) target is occupied; (b) target is collision-free.
Sensors 23 01813 g009
Figure 10. Illustration of path smoothing procedures.
Figure 10. Illustration of path smoothing procedures.
Sensors 23 01813 g010
Figure 11. Path smoothing of differently shaped polyline paths.
Figure 11. Path smoothing of differently shaped polyline paths.
Sensors 23 01813 g011
Figure 12. Illustration of the generated smooth, collision-free paths.
Figure 12. Illustration of the generated smooth, collision-free paths.
Sensors 23 01813 g012
Figure 13. Illustration of geometric relations between two poses.
Figure 13. Illustration of geometric relations between two poses.
Sensors 23 01813 g013
Figure 14. Linear velocity generated in the long wall scenario.
Figure 14. Linear velocity generated in the long wall scenario.
Sensors 23 01813 g014
Figure 15. Angular velocity generated in the long wall scenario.
Figure 15. Angular velocity generated in the long wall scenario.
Sensors 23 01813 g015
Figure 16. Planned path in (a) forest scenario; (b) narrow channel scenario; (c) long wall scenario. Here the 3D point clouds of the environment are depicted with different colors.
Figure 16. Planned path in (a) forest scenario; (b) narrow channel scenario; (c) long wall scenario. Here the 3D point clouds of the environment are depicted with different colors.
Sensors 23 01813 g016
Figure 17. Illustration of the performance of the TEB algorithm and the APOLLO algorithm in the narrow channel scenario. For the TEB algorithm, the red line indicates the local trajectory and the green line indicates the global path. For the APOLLO algorithm, the blue dots represent the point cloud of the narrow channel.
Figure 17. Illustration of the performance of the TEB algorithm and the APOLLO algorithm in the narrow channel scenario. For the TEB algorithm, the red line indicates the local trajectory and the green line indicates the global path. For the APOLLO algorithm, the blue dots represent the point cloud of the narrow channel.
Sensors 23 01813 g017
Figure 18. CPU time comparison of APOLLO, TEB and FALCO.
Figure 18. CPU time comparison of APOLLO, TEB and FALCO.
Sensors 23 01813 g018
Figure 19. Trajectory generation process in the human-involved dynamic driving scenario. Red dots represent the randomly walking humans, and the hollow circle represents the vehicle. The number ①–⑥ indicate six sequential moments from the beginning to the end.
Figure 19. Trajectory generation process in the human-involved dynamic driving scenario. Red dots represent the randomly walking humans, and the hollow circle represents the vehicle. The number ①–⑥ indicate six sequential moments from the beginning to the end.
Sensors 23 01813 g019
Figure 20. Linear velocity generated in the human-involved dynamic driving scenario.
Figure 20. Linear velocity generated in the human-involved dynamic driving scenario.
Sensors 23 01813 g020
Figure 21. Angular velocity generated in the human-involved dynamic driving scenario.
Figure 21. Angular velocity generated in the human-involved dynamic driving scenario.
Sensors 23 01813 g021
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Li, Y.; Chen, Z.; Wang, T.; Zeng, X.; Yin, Z. Apollo: Adaptive Polar Lattice-Based Local Obstacle Avoidance and Motion Planning for Automated Vehicles. Sensors 2023, 23, 1813. https://doi.org/10.3390/s23041813

AMA Style

Li Y, Chen Z, Wang T, Zeng X, Yin Z. Apollo: Adaptive Polar Lattice-Based Local Obstacle Avoidance and Motion Planning for Automated Vehicles. Sensors. 2023; 23(4):1813. https://doi.org/10.3390/s23041813

Chicago/Turabian Style

Li, Yiqun, Zong Chen, Tao Wang, Xiangrui Zeng, and Zhouping Yin. 2023. "Apollo: Adaptive Polar Lattice-Based Local Obstacle Avoidance and Motion Planning for Automated Vehicles" Sensors 23, no. 4: 1813. https://doi.org/10.3390/s23041813

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