Content uploaded by Kyrelloss Bottros
Author content
All content in this area was uploaded by Kyrelloss Bottros on Feb 28, 2022
Content may be subject to copyright.
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 Terms—Autonomous 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
(3)
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]
(4)
Transforming configuration coordinates from
into the new state space
.
(5)
Transforming the inputs , into new inputs ,
(6)
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
(9)
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. 278–288,
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. 228–233,
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. 108–112,
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. 2328–2335.
[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. 978–993, 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. 4375–4380, 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.
.