Conference PaperPDF Available

Local Path Planning for an Autonomous Vehicle in the Presence of moving Obstacles

Authors:

Abstract

This paper focuses on the problem of finding a clear trajectory and a collision-free path for an autonomous vehicle with the presence of many moving obstacles in the environment. We approach this issue by using an analytical method where we consider the kinematic model of the car like robot to develop the feasible trajectories with their corresponding steering control and the collision avoidance conditions. The collision-free path generated can be updated in real time once the environment is changed and detected by the car like robot. Matlab simulations were used to provide the results for the analytical method used were obstacles were randomly generated. Also, an intersection crossing scenario was simulated.
1
Abstract This paper focuses on the problem of finding a clear
trajectory and a collision-free path for an autonomous vehicle
with the presence of many moving obstacles in the environment.
We approach this issue by using an analytical method where we
consider the kinematic model of the car like robot to develop the
feasible trajectories with their corresponding steering control and
the collision avoidance conditions. The collision-free path
generated can be updated in real time once the environment is
changed and detected by the car like robot. Matlab simulations
were used to provide the results for the analytical method used
were obstacles were randomly generated. Also, an intersection
crossing scenario was simulated.
Index TermsAutonomous Vehicle, Local Path Planning,
Trajectory Planning, Collision Avoidance.
I. INTRODUCTION
Nowadays the problem of Autonomous vehicles is
approached by many Automotive companies as they all tend
to reach a fully Autonomous vehicle that can provide a safe
transportation to the passengers without any interference
from the passengers. The elderly, the disabled or people
with busy lives will welcome such a change as the passengers
do not carry the burden of driving and can relax or
concentrate on other activities.
In this context the importance of finding a collision-free
path in a dynamic environment for the autonomous vehicle
arises as the environment is usually indeterministic and
cannot be predicted. So, a good solution for the problem is
to find a real-time plan that considers the kinematic
constrains.
Many approaches were developed to deal with the
geometric constrains such as the standard motion planning
approaches [1], velocity planning [2] , vector field histogram
[3] and many other classic and heuristic approaches [4][6]
were developed to deal with geometric constrains.
The development of these methods were based on
dealing with holonomic systems with the presence of static
obstacles in the environment, applying these methods on
non-holonomic systems such as the car like robot may result
in finding collision-free paths that are not feasible (cannot be
achieved) due to the kinematic constrains of the non-
holonomic systems.
Over the past years the problem of path planning was
studied without considering the kinematic constrains of the
robot that hinders its motion. But in real life situations to
plan a collision-free path for a robot, its kinematics should
be considered also, it is important to deal with moving
obstacles.
The problem of dealing with nonholonomic systems can
be solved by changing the results of a holonomic system to
fit a nonholonomic system and make sure that the path is
feasible such as the online suboptimal obstacle avoidance
algorithm [7] were the algorithm is based on the hamilton-
jacobi-bellman equation [8].
The search algorithm in [9] discretizes the configuration
space to be able to create a graph whose nodes are small
axis-parallel cells and by discretizing the controls and
integrating the equations of motions the path segments are
created if feasible path segments were to be found between
two cells.
Finding a feasible and a secure path while avoiding
collision with the obstacles that are present in the
environment requires the presence of various sensors on the
vehicle, processing their signals and sensor fusion. While this
is not an easy nor a trivial procedure, but it is not the focus
point of this paper and will not be discussed, all information
about the obstacles that are needed will be provided as
givens.
The path planning for nonholonomic system considering
their kinematic constrains can be considered as a trajectory
planning problem, where a high level controller solves the
path finding problem to provide a collision-free path along
with the needed system inputs to reach a desired end
position, thus the terms path planning and trajectory
planning will be used interchangeably in this paper. The
inputs provided by the upper level controller can then be
used by a lower level controller that will make sure that the
desired path is being reached by the robot actuators.
In this paper an analytical solution that depends on the
kinematic model of the car like robot [10] [11] will be used
to find a feasible collision-free path in chained form to avoid
nonholonomic constrains and Matlab simulations are
provided with different sampling time to see the results of
Local Path Planning for an Autonomous Vehicle
in the Presence of moving Obstacles
Kyrelloss Nashaat1, Mohamed Abdelaziz, M Ghoneima, S Hammad
Department of Mechatronics, Ain Shams university, Department of Automotive, Ain Shams
university, Department of Mechatronics, Ain Shams university, Department of Mechatronics, Ain
Shams university
1. K.nashaat.kn@eng.asu.edu.eng
2
using this solution.
The obstacles data that were used as inputs to the
simulations were used as given numbers and in other
simulations the obstacles were randomly generated from
Matlab, also simulations of crossing intersections where the
solution was used were done and the results are shown in
this paper.
II. KINEMATIC MODEL AND CHAINED FORM
A. Kinematic Model
The car like robot used in this paper can be represented
by a circle its center is  whose radius is
the range of the car like robot sensors.
A more generalized configuration coordinates to
describe the car like robot (Fig. 1) is 


, where
 are the midpoint between the front and
rear axial centers which are separated by
distance .
is the vehicle orientation with the -axis.
is the steering angle.
The front wheels are steering wheels while the rear
wheels are driving wheels and let be the radius of these
wheels.
During the normal operation it is assumed that the
robot rolls without slipping and while having two set of
wheels this translates into motion equations (1) and (2)
[12]

(1)

(2)
Where  and  are the velocities of the
front wheels and back wheels in the -axis and -axis
respectively. Considering to be the angular velocity of the
wheels and to be the steering rate of the guiding wheels
the two equations (1) and (2) can be expressed as the
following kinematic model






The kinematic mode in (3) has a singularity at
which does not happen mathematically or in practice which
makes this system a nonholonomic system.
B. Chained form Transformation
The control of mobile robot and establishing a feasible
trajectory for the robot is not an easy task due to its
nonholonomic and kinematic constrains. These
nonholonomic constrains intervene with using the usual
trajectory planning techniques that are associated with
the holonomic systems to solve our path finding problem
and the control over the car like robot will not be
obtained.
The kinematic equations (3) of the car like robot can be
transformed into a canonical form called the chained form
to stabilize the vehicle orientation and reach a feasible
trajectory.
This transformation can be achieved via a change of
state and control variables 
allowing to transform into four
dimensional chained form equations [13]




Transforming configuration coordinates from 


into the new state space
.





Transforming the inputs , into new inputs ,



State and control transformations (5) and (6) are usable
if
this can be guaranteed by making

provided that the boundary conditions and
satisfy the inequality . If it does not satisfy
the inequality an intermediate configuration can be
used such that  and .
Fig. 1 Car like robot Model
3
III. OBSTACLE AVOIDANCE
A. Obstacles
The obstacles are number of objects where
 which are represented as circles whose center is at
the point and of radius and moving with a
constant linear velocity 
as shown in Fig. 2,
the obstacles can be denoted by .
The car like robot starts at position with orientation
and moves along the collision-free planned path to reach its
destination with orientation , the trajectory planning
has at least one solution if at a time instant for all .
The solution of the path planning problem depends on
knowing the state of the environment to make sure of that
in our simulation the state of the environment will be
defined via piecewise constants or functions.
In some cases, the final position could also be defined
as a piecewise constant if it is not known prior to the start of
the solution.
The state of environment is resampled at sample rating
,which is usually small, starting from time so at any
given sampling instant the th obstacle will be described in
the interval  at position
 where and
, and with linear velocity 

.
B. Feasible Trajectories
A trajectory for a nonholonomic system is said to be
feasible if it satisfies both the boundary conditions and the
dynamics of the kinematic model. The chained form in
equation (4) is used to determine the trajectories while
considering the kinematic model.
Boundary conditions for the car like model can be stated
at the start of the simulation


and to be


at the end of the simulation where
and are the start time of the simulation and the total
time needed by the mobile robot to complete its maneuver
respectively.
Using the state transformation (5) the boundary
conditions will be transformed into the chained form
to find the corresponding boundary
conditions in the chained form
and
, where





(7)





(8)
If it causes a singularity in determining to
avoid this an intermediate point where is
chosen.
C. Collision Avoidance
The collision avoidance depends on knowing the relative
velocity between robot at position  and
moving with velocity 
and the obstacle at
position  moving with velocity 

for the period , the relative
velocity will be





The collision avoidance is based upon the relative vehicle
motion to a virtually static obstacle. Taking into
consideration the physical sizes of them both, the minimum
Fig. 2 Obstacles
4
distance between the car like robot and the obstacle should
be . So, when the obstacle coordinate
in the plane the collision
avoidance equation becomes

(10)
Where


(11)
And  for 
Using the transformation of coordinates (5) to find the
collision avoidance in the transformed chained form
space


(12)
Which can also be described as




(13)
Where


(14)


The obstacle avoidance equation (13) was used in [10] to
develop another collision avoidance equation that does not
depend on but only on which is



(15)
IV. FEASIBLE COLLISION-FREE TRAJECTORY SOLUTION
Any feasible path in the plane depends on

(16)
So, the feasible collision-free trajectories in the chained
form using the state transformation in (4) is
(17)
Where is a constant vector that will be calculated and
is a vector of functions.
To solve the collision-free trajectory planning we need to
1. Consider all the obstacles
2. The given boundary conditions


and


3. Apply the state transformation to get the
corresponding boundary conditions in the
chained form
and
, while
satisfying the conditions

4. Let and be the time for the mobile robot to
complete its maneuver and the sampling period
respectively then for 
and sampling instant 

we solve to determine .
5. we solve the inequalities






(18)
where  ,

is the time interval during which
,  and


(19)




(20)




(21)
Where

(22)
Fig. 3 Collision Avoidance in x-y plane
5





(23)
(24)




(25)
 
  
 

 
  
  


(26)
6. Solve for to find a feasible collision-free path
(27)

(28)
7. The steering inputs in the chained form that
results in that path are











(29)
8. The corresponding steering inputs and can
be calculated from (29) using the transformation
in (6)
V. SIMULATION DATA
The following simulation data was used in Matlab script to
generate the results from the feasible collision-free
algorithm.
In all the simulations the robot parameters were the
same, the only change was in the obstacles; the boundary
conditions and the simulation time.
In these two simulations A1 and A2 the simulation data
are as follows (All units are in SI units)
Simulation A1
Simulation A2
Time
parameters



Robot
Parameters




Boundary
conditions






System
Inputs at




Number of
obstacles
Obstacles
parameters






Obstacles
position at






Velocity
vector for
obstacles








































6














In the next two simulations B1 and B2 the simulation data
are as follows
Simulation B1
Simulation B2
Time
parameters



Robot
Parameters




Boundary
conditions






System
Inputs at




Number of
obstacles
Obstacles
parameters






Obstacles
position at






Velocity
vector for
obstacles
Randomly
generated from
Matlab
Randomly
generated from
Matlab
In the next two simulations C1 and C2 an intersection
crossing scenario was imposed upon the algorithm to see the
behavior of the car like robot
Simulation C1
Simulation C2
Time
parameters



Robot
Parameters




Boundary
conditions






System
Inputs at




Number of
obstacles
Obstacles
parameters






Obstacles
position at






Velocity
vector for
obstacles


























































In simulation C1 and C2 to satisfy the condition
the value of was chosen very close but also different from
7
to imitate moving in a straight line.
VI. RESULTS
The following graphs are the feasible collision-free paths
that were generated from the solution to our path finding
problem using the offered algorithm.
VII. REFERENCES
[1] J. Latombe, Robot Motion Planning. Boston: Kluwer
Academic Publisher, 1998.
[2] K. Kant and S. W. Zucker, “Planning collision free
trajectories in time varying environment: A two level
hierarchy,” presented at the IEEE Int. Conf. Robotics
and Automation, Raleigh, NC, 1988.
[3] J. Borenstein and Y. Koren, “The vector field
histogram - fast obstacle avoidance for mobile robots,”
IEEE Trans. Robotic. Autom, vol. 7, pp. 278288,
1991.
[4] E. Masehian and D. Sedighizadeh, “Classic and
Heuristic Approaches in Robot Motion Planning A
Chronological Review,” International Journal of
Mechanical, Aerospace, Industrial, Mechatronic and
Manufacturing Engineering, vol. 1, no. 5, pp. 228233,
2007.
[5] T. Mohanraj, S. Arunkumar, M. Raghunath, and M.
Anand, “MOBILE ROBOT PATH PLANNING
USING ANT COLONY OPTIMIZATION,”
International Journal of Research in Engineering and
Technology, vol. 3, no. 11, p. 6, 2014.
[6] A. Shitsukane, W. Cheruiyot, C. Otieno, and M.
Mvurya, “FUZZY LOGIC MODEL FOR
OBSTACLES AVOIDANCE MOBILE ROBOTIC IN
STATIC UNKNOWN ENVIRONMENT,”
International Journal of Computer Science and
Information Security, vol. 16, no. 10, pp. 108112,
2018.
Fig 4 Simulation A1
Fig 5 Simulation A2
Fig 7 Simulation B2
Fig 6 Simulation B1
Fig 8 Simulation C1
Fig 9 Simulation C2
8
[7] S. Sundar and Z. Shiller, “Optimal obstacle avoidance
based on the hamilton-jacobi-bellman equation,” IEEE
Trans. on Robotics and Automation, vol. 13, pp. 305
310, 1997.
[8] A. Bryson and Y. Ho, Applied optimal Control. New
York: Hemisphere Publishing Corporation, 1975.
[9] J. Barraquand and J. Latombe, “Nonholonomic
multibody mobilerobots: controllability and motion
planning in the presence of obstacles,” in Proceedings
of the 1991 IEEE Int. Confer. on Robotics and
Automation, 1991, pp. 23282335.
[10] Z. Qu, J. Wang, and C. E. Plaisted, “A New Analytical
Solution to Mobile Robot Trajectory Generation in the
Presence of Moving Obstacles,” IEEE Trans. Robot.,
vol. 20, no. 6, pp. 978993, Dec. 2004, doi:
10.1109/TRO.2004.829461.
[11] K. Macek, M. Becker, and R. Siegwart, “Motion
Planning for Car-Like Vehicles in Dynamic Urban
Scenarios,” in 2006 IEEE/RSJ International
Conference on Intelligent Robots and Systems, Beijing,
China, 2006, pp. 43754380, doi:
10.1109/IROS.2006.282013.
[12] J.-P. Laumond, Ed., Robot motion planning and
control. London ; New York: Springer, 1998.
[13] P. Morin and C. Samson, Motion Control of Wheeled
Mobile Robots. Springer, Berlin, Heidelberg: Springer
Handbook of Robotics., 2008.
.
ResearchGate has not been able to resolve any citations for this publication.
Article
Full-text available
Autonomous mobile robots have in recent times gained interest from many researchers. A reliable collision avoidance methodology is needed for effective navigation of robotic cranes. Normally robots are fitted with transducers for detecting environment. However, steering is usually unreliable because of vagueness in surroundings. Fuzzy logic demonstrates to be an appropriate tool for handling uncertainty. A lot of research present Controllers models that result in dead zone and difficulties in navigation. Mamdani Fuzzy controller is presented using eight input variables, two output variables and twenty seven fuzzy rules. The study investigates possibility of modelling and maintaining uncertainty by changing membership functions of controller to achieve effective steering. Simulations are performed using V-REP and MATLAB software.
Article
Full-text available
This paper reviews the major contributions to the Motion Planning (MP) field throughout a 35-year period, from classic approaches to heuristic algorithms. Due to the NP-Hardness of the MP problem, heuristic methods have outperformed the classic approaches and have gained wide popularity. After surveying around 1400 papers in the field, the amount of existing works for each method is identified and classified. Especially, the history and applications of numerous heuristic methods in MP is investigated. The paper concludes with comparative tables and graphs demonstrating the frequency of each MP method's application, and so can be used as a guideline for MP researchers.
Chapter
Full-text available
This chapter may be seen as afollow up to Chap.17, devoted to the classification and modeling of basic wheeled mobile robot (WMR) structures, and anatural complement to Chap.35, which surveys motion planning methods for WMRs. Atypical output of these methods is afeasible (or admissible) reference state trajectory for agiven mobile robot, and aquestion which then arises is how to make the physical mobile robot track this reference trajectory via the control of the actuators with which the vehicle is equipped. The object of the present chapter is to bring elements of the answer to this question based on simple and effective control strategies. Afirst approach would consist in applying open-loop steering control laws like those developed in Chap.35. However, it is well known that this type of control is not robust to modeling errors (the sources of which are numerous) and that it cannot guarantee that the mobile robot will move along the desired trajectory as planned. This is why the methods here presented are based on feedback control. Their implementation supposes that one is able to measure the variables involved in the control loop (typically the position and orientation of the mobile robot with respect to either afixed frame or apath that the vehicle should follow). Throughout this chapter we will assume that these measurements are available continuously in time and that they are not corrupted by noise. In ageneral manner, robustness considerations will not be discussed in detail, one reason being that, beyond imposed space limitations, alarge part of the presented approaches are based on linear control theory. The feedback control laws then inherit the strong robustness properties associated with stable linear systems. Results can also be subsequently refined by using complementary, eventually more elaborate, automatic control techniques.
Conference Paper
Full-text available
This paper focuses on development of a motion planning strategy for car-like vehicles in dynamic urban-like scenarios. The strategy can be summarized as a search for a collision-free trajectory among linearly moving obstacles applying rapidly-exploring random trees (RRT) and B-splines. Collision avoidance is based on geometric search in transformed state space of chained form kinematic model decomposition. The time criterion for avoiding obstacles is based on relative robot to obstacle motion and is checked iteratively for possible collisions within the RRT exploration phase. The line segment geometric path is interpolated with a B-spline curve in order to generate a feasible trajectory that takes into account nonholonomic constraints. The exploration strategy aims at finding an optimal steering and longitudinal control of the vehicle in minimum time and steering activity sense. In order to test the strategy a MatLab based simulator was developed. This simulator reproduces a simple 2D urban-like environment with parked and moving cars, buses, trucks, people, buildings, streets, and trees. The test vehicle, a modified smart car equipped with several sensors was kinematically modeled. The sensor data are extracted from the environment based on its geometrical description and used as input data for the motion planning strategy which was verified in a dynamic urban scenario simulation
Article
Currently Mobile Robot has been widely used in examination and navigation particularly where static and unknown surroundings are involved. Path planning is a crucial problem in mobile robotics. Path planning of robot refers to the determination of a path, a robot takes in order to carry out the necessary task with a given set of key parameters. To find best possible path from starting point to target point, that reduces time and distance, in a given environment, avoiding collision with obstacles is a current potential research area. This paper presents SACO and ACO-MH algorithm to solve the problem of mobile robot path planning such that to reach the target station from source station without collision. The SACO and ACO-MH algorithm will give the collision free optimal path. The result obtained with ACO-MH was compared with SACO. The mobile robot environment is treated as a grid based environment in which each grid can be represented by an ordered pair of row number and column number. The mobile robot is considered as a point in the environment, to reduce the computational complexities. The ACO-MH results show better convergence speed and reduction in computational time than that of SACO through multiple MATLAB experiments.
Book
1 Introduction and Overview.- 2 Configuration Space of a Rigid Object.- 3 Obstacles in Configuration Space.- 4 Roadmap Methods.- 5 Exact Cell Decomposition.- 6 Approximate Cell Decomposition.- 7 Potential Field Methods.- 8 Multiple Moving Objects.- 9 Kinematic Constraints.- 10 Dealing with Uncertainty.- 11 Movable Objects.- Prospects.- Appendix A Basic Mathematics.- Appendix B Computational Complexity.- Appendix C Graph Searching.- Appendix D Sweep-Line Algorithm.- References.
Article
Global geometric algorithms for trajectory planning are used in conjunction with a local avoidance strategy. Simulations have been developed for a mobile robot in the plane among stationary and moving obstacles. Essentially, the robot has a geometric planner that provides a coarse trajectory (the path and the velocity along it), which may be modified by a (low-level) local avoidance module if sensors detect obstacles in the vicinity of the robot. This hierarchy makes effective use of the complementarity between global trajectory planning and local obstacle avoidance
Article
The problem of determining a collision-free path for a mobile robot moving in a dynamically changing environment is addressed in this paper. By explicitly considering a kinematic model of the robot, the family of feasible trajectories and their corresponding steering controls are derived in a closed form and are expressed in terms of one adjustable parameter for the purpose of collision avoidance. Then, a new collision-avoidance condition is developed for the dynamically changing environment, which consists of a time criterion and a geometrical criterion, and it has explicit physical meanings in both the transformed space and the original working space. By imposing the avoidance condition, one can determine one (or a class of) collision-free path(s) in a closed form. Such a path meets all boundary conditions, is twice differentiable, and can be updated in real time once a change in the environment is detected. The solvability condition of the problem is explicitly found, and simulations show that the proposed method is effective.