View
20
Download
0
Category
Tags:
Preview:
DESCRIPTION
This series of presentations cover my thesis titled "Motion Planning for Multiple Autonomous Vehicles". The presentations are intended for general audience without much prior knowledge of the subject, and not specifically focused upon experts of the field. The thesis website contains links to table of contents, complete text, videos, presentations and other things; available at: http://rkala.in/autonomousvehiclesvideos.html
Citation preview
5/27/2018 Motion Planning for Multiple Autonomous Vehicles: Chapter 4b - Dynamic Distributed Lanes using Graph Search
1/46
School of Systems, Engineering, University of Reading rkala.99k.orgApril, 2013
Motion Planning for Multiple
Autonomous Vehicles
Rahul KalaDynamic Distributed Lanes
Presentation of the paper: R. Kala, K. Warwick (2014) DynamicDistributed Lanes: Motion Planning for Multiple AutonomousVehicles, Applied Intelligence, DOI: 10.1007/s10489-014-0517-1
5/27/2018 Motion Planning for Multiple Autonomous Vehicles: Chapter 4b - Dynamic Distributed Lanes using Graph Search
2/46
Motion Planning for Multiple Autonomous Vehicles
Why Graph Search?
Completeness
Optimality
Issues
Computational Complexity
Key Idea State Reduction: Select which states to expand
rkala.99k.org
5/27/2018 Motion Planning for Multiple Autonomous Vehicles: Chapter 4b - Dynamic Distributed Lanes using Graph Search
3/46
Motion Planning for Multiple Autonomous Vehicles
Key Contributions
The generalized notion of lanesis defined.
The generalized notion is used for planningand coordinationof multiple
vehicles.
A pseudo centralizedcoordination technique is designed which uses the
concepts of decentralized coordinationfor iteratively planning differentvehicles but empowers a vehicle to move around the other vehicles. The
coordination is hence better in terms of optimality and completeness than
most approaches (discussed so far) while being somewhat computationally
expensive in the worst cases.
The concept of one vehicle waitingfor another vehicle coming from the
other direction is introduced, when there may be space enough for only one
vehicle to pass.
Heuristicsare used for pruningthe expansions of states, which result in a
significant computational efficiency while leading to a slight loss of
optimality.
rkala.99k.org
5/27/2018 Motion Planning for Multiple Autonomous Vehicles: Chapter 4b - Dynamic Distributed Lanes using Graph Search
4/46
Motion Planning for Multiple Autonomous Vehicles
Defining (Virtual) Lanes
Properties
Distributed The number of lanesand their widthsmaychange in different segments of the road
Dynamic The lanes change along with timeforevery pathway as the vehicles pass by.
Single Vehicle No two vehicles may occupy a lane side-by-side
Variable Width Every lane has a different width
rkala.99k.org
5/27/2018 Motion Planning for Multiple Autonomous Vehicles: Chapter 4b - Dynamic Distributed Lanes using Graph Search
5/46
Motion Planning for Multiple Autonomous Vehicles
Solution Approach
A general graph (here Uniform Cost Search) search can
be used with:
High resolution maps
Rich action set for the vehicle
To solve within computational time, the number of
states expanded needs to be restricted
Coordination strategy needs to be devised
rkala.99k.org
5/27/2018 Motion Planning for Multiple Autonomous Vehicles: Chapter 4b - Dynamic Distributed Lanes using Graph Search
6/46
Motion Planning for Multiple Autonomous Vehicles
State Reduction
Reduction hypothesis:
Vehicles maximize lateral separations
Vehicles prefer to travel at same lateral positions along
the road
rkala.99k.org
5/27/2018 Motion Planning for Multiple Autonomous Vehicles: Chapter 4b - Dynamic Distributed Lanes using Graph Search
7/46Motion Planning for Multiple Autonomous Vehicles
State Expansion
Consider expansion of a state L
Problem is selecting child states L formed as a result of
the expansion
Only expansionstep of the graph search algorithm is
discussed in this work, while the rest of the algorithm is
same as a general graph search.
rkala.99k.org
5/27/2018 Motion Planning for Multiple Autonomous Vehicles: Chapter 4b - Dynamic Distributed Lanes using Graph Search
8/46Motion Planning for Multiple Autonomous Vehicles
CONSIDERING ONLYA SINGLE VEHICLE
rkala.99k.org
5/27/2018 Motion Planning for Multiple Autonomous Vehicles: Chapter 4b - Dynamic Distributed Lanes using Graph Search
9/46Motion Planning for Multiple Autonomous Vehicles
State Reduction
rkala.99k.org
Use asweeping
line (Z) forobstacle
analysis inlarge steps
Selectregions of
line(Pathways)in obstaclefree regions
Select bestpoint inside
everypathway
(L3)
Selectsimilar
point (L2) atan earliersweepingline (Z2)
Feasibilityanalysis
Make thesechildren
andconnect toparent (L)
by asmooth
trajectory
Vehicle PlacementHypotheses
(i) Maximize lateralseparations
(ii) Attempt to drive insame relative position at
the road
5/27/2018 Motion Planning for Multiple Autonomous Vehicles: Chapter 4b - Dynamic Distributed Lanes using Graph Search
10/46Motion Planning for Multiple Autonomous Vehicles
State Reduction
rkala.99k.org
Sweeping line used for
obstacle analysis (Z)
L
All pathways
(3 expansions to be done)
A pathway
Vehicle position at
extremity of pathwayY
Earlier sweeping line for
expanded node (Z2)
5/27/2018 Motion Planning for Multiple Autonomous Vehicles: Chapter 4b - Dynamic Distributed Lanes using Graph Search
11/46Motion Planning for Multiple Autonomous Vehicles
Why use L2and not L3?
Or why select a state not at the sweeping line but earlier?
Or why Z2and not Z?
rkala.99k.org
Sweeping Line
Best point L3Obstacle
But if vehicle lands at L3, it cannot steer sharp enough and
avoid the obstacle
ZL
5/27/2018 Motion Planning for Multiple Autonomous Vehicles: Chapter 4b - Dynamic Distributed Lanes using Graph Search
12/46Motion Planning for Multiple Autonomous Vehicles
Why L2and not L3?
Vehicle expected to align itself at L2for obstacle seen at
L3
If vehicle can go from L to L3via L2, it is safe at L2
Curve from L to L2may be traversed if optimal Curve from L2to L3is only for connectivity check/obstacle
analysis
L3acts as a roadmap for L2informing it about any
obstacle well in advance before the vehicle actually lands
rkala.99k.org
5/27/2018 Motion Planning for Multiple Autonomous Vehicles: Chapter 4b - Dynamic Distributed Lanes using Graph Search
13/46Motion Planning for Multiple Autonomous Vehicles
State Selection
rkala.99k.org
L
L2 L3
Z2 Z
PlannedTrajectory Trajectory onlyfor analysis
5/27/2018 Motion Planning for Multiple Autonomous Vehicles: Chapter 4b - Dynamic Distributed Lanes using Graph Search
14/46Motion Planning for Multiple Autonomous Vehicles
State Selection
rkala.99k.org
Every turn is on the basis of obstacle assessed at the next sweepingline while states are selected on the basis of the set hypotheses.
5/27/2018 Motion Planning for Multiple Autonomous Vehicles: Chapter 4b - Dynamic Distributed Lanes using Graph Search
15/46Motion Planning for Multiple Autonomous Vehicles
Curve Generation
rkala.99k.org
Connect L
to L2 by aclothoidcurve
ConnectL2 to L3 by
curvealong theroad
length
Checkfeasibility
Ifinfeasible,
performlocaloptimizati
on
If stillinfeasible,
reduce
speed/sweeping linestep size
and repeat
5/27/2018 Motion Planning for Multiple Autonomous Vehicles: Chapter 4b - Dynamic Distributed Lanes using Graph Search
16/46Motion Planning for Multiple Autonomous Vehicles
Small Obstacle Problem
rkala.99k.org
L
Z2(original)L3(original)
L2(original)
Z (original)Z (modified)Z2(modified)
L3
(modified)L2
(modified)small obstacle
Z (original) cannot be used for obstacle analysis as it cannot detect the small obstacleand hence always return infeasibility. Hence it is modified to Z (modified) byreduction in step size of the sweeping line. Corresponding Z2s are Z2(original) and
Z2(modified)
5/27/2018 Motion Planning for Multiple Autonomous Vehicles: Chapter 4b - Dynamic Distributed Lanes using Graph Search
17/46Motion Planning for Multiple Autonomous Vehicles
Lane
Graph search gives the shortest path as output
Result consists of trajectory and all the expanded states
The expanded states together with available lateral
bounds constitute a Lane Trajectory may be modified by moving the expanded
states laterally
rkala.99k.org
5/27/2018 Motion Planning for Multiple Autonomous Vehicles: Chapter 4b - Dynamic Distributed Lanes using Graph Search
18/46Motion Planning for Multiple Autonomous Vehicles
Graph generated
rkala.99k.org
5/27/2018 Motion Planning for Multiple Autonomous Vehicles: Chapter 4b - Dynamic Distributed Lanes using Graph Search
19/46Motion Planning for Multiple Autonomous Vehicles
Results
rkala.99k.org
5/27/2018 Motion Planning for Multiple Autonomous Vehicles: Chapter 4b - Dynamic Distributed Lanes using Graph Search
20/46Motion Planning for Multiple Autonomous Vehicles
CONSIDERING MULTIPLE VEHICLES
rkala.99k.org
5/27/2018 Motion Planning for Multiple Autonomous Vehicles: Chapter 4b - Dynamic Distributed Lanes using Graph Search
21/46Motion Planning for Multiple Autonomous Vehicles
Problem
A number of vehicles with planned trajectories and lanes
are given
Construct plan of the next vehicle entering the scenario
The trajectories of the other vehicles may be modified bychanging their lanes (moving their expanded states
laterally)
rkala.99k.org
5/27/2018 Motion Planning for Multiple Autonomous Vehicles: Chapter 4b - Dynamic Distributed Lanes using Graph Search
22/46Motion Planning for Multiple Autonomous Vehicles
Expansion Strategy
rkala.99k.org
Expansion
StrategyFree StateExpansion
VehicleFollowing
Wait forVehicle
5/27/2018 Motion Planning for Multiple Autonomous Vehicles: Chapter 4b - Dynamic Distributed Lanes using Graph Search
23/46
Motion Planning for Multiple Autonomous Vehicles
Free State Expansion
Expand using maximum speed, overtaking expansion
strategy
rkala.99k.org
Use sweepingline for
obstacleanalysis
For everypathway
Computevehiclesrequiring
independentlane
Distributepathwaywidth
amongst thevehicles
Vehicle being followed orgoing ahead by a larger speed
not considered
To skip details go to slide 32
5/27/2018 Motion Planning for Multiple Autonomous Vehicles: Chapter 4b - Dynamic Distributed Lanes using Graph Search
24/46
Motion Planning for Multiple Autonomous Vehicles
Strategy
rkala.99k.org
Find vehicles(Rb) affectedby navigation
of vehicleunderplanning (Ra)
to Z and hencerequire a
separate lane
Find vehicles(Rc) affected
by altered
navigation ofRaor Rbandhence alsorequire a
separate lane
Find vehicles(Rd) affected
by altered
navigation ofRa, Rbor Rcand
hence alsorequire
separate lane
And so on till
no vehicle isfurther
affected
5/27/2018 Motion Planning for Multiple Autonomous Vehicles: Chapter 4b - Dynamic Distributed Lanes using Graph Search
25/46
Motion Planning for Multiple Autonomous Vehicles
Region of independent lane
Region within which all vehicles have independent lanes
rkala.99k.org
Region ofindependent
lanes (S)
Vehicles
requiringindependent
lanes (H)
Check if avehicle in H
while travellingin S affects any
other vehicle Rj
Calculateregion (S2) in
which Rjassumes a new
lane
Add S2
Add Rj
5/27/2018 Motion Planning for Multiple Autonomous Vehicles: Chapter 4b - Dynamic Distributed Lanes using Graph Search
26/46
Motion Planning for Multiple Autonomous Vehicles
Calculating new affected region Let Ribe the vehicle being planned
Let Rjbe the vehicle affected
Let Rkbe any other vehicle which might be affected by Rj
rkala.99k.org
Rjmoves tonew lane as
soon aspossible (a)
Rjreturns tooriginal
planned laneafter crossing
navigation
region of Ri (Lto Z) , say (b)
New lane iseffective in(a) to (b)
While Rjtravels from (a) to (b), it should not affect any othervehicle (Rk). If yes, it is also added, and so on
5/27/2018 Motion Planning for Multiple Autonomous Vehicles: Chapter 4b - Dynamic Distributed Lanes using Graph Search
27/46
Motion Planning for Multiple Autonomous Vehicles
Calculating affected region
rkala.99k.org
Ri Ri
Rj Rj RjRi
Rj RjRi
Rj
Motion from L to Z
(a) (b) (b) (a)
Same side Opposite sides
5/27/2018 Motion Planning for Multiple Autonomous Vehicles: Chapter 4b - Dynamic Distributed Lanes using Graph Search
28/46
Motion Planning for Multiple Autonomous Vehicles
Calculating affected region
While Rjtravels from (a) to (b) , some Rkalso travels as
per its trajectory
Does Rjeffect Rk, in which case the affected region andvehicles are updated and the process repeats?
Since motion of Rjfrom (a) to (b) is yet to be computed,
approximations are used
rkala.99k.org
5/27/2018 Motion Planning for Multiple Autonomous Vehicles: Chapter 4b - Dynamic Distributed Lanes using Graph Search
29/46
Motion Planning for Multiple Autonomous Vehicles
Calculating affected region
rkala.99k.org
Rj
(a) (b)Rk
Rj
(a) (b)
Rk
Same SideIf Rkis safe with Rjat (b), it is not
affected, distances will only increasewith Rkmoving forward
Opposite SidesIf Rkmoved by a threshold (proportional
to speed) is safe with Rjat (b), it is notaffected. With time Rkwill get closer to Rj
and may get affected. Maximum
threshold assumed.
5/27/2018 Motion Planning for Multiple Autonomous Vehicles: Chapter 4b - Dynamic Distributed Lanes using Graph Search
30/46
Motion Planning for Multiple Autonomous Vehicles
Lane Distribution
rkala.99k.org
Get vehicles
requiringindependen
t lane
Getpreferred
position forvehiclebeing
planned
Check ifplacement
possiblewithoutmoving
othervehicles
If not, checkif placement
possiblewith
maintenance of
maximumseparationthreshold
If not,computetotal free
space anddistributebetweenvehiclesevenly
5/27/2018 Motion Planning for Multiple Autonomous Vehicles: Chapter 4b - Dynamic Distributed Lanes using Graph Search
31/46
Motion Planning for Multiple Autonomous Vehicles
Free State Expansion
rkala.99k.org
Z2 Z (b)(a)
RjRi
Trajectory of Rjalready covered(this point and before)Trajectory of Ri
Trajectory of Rj
planned
Distribution of lanes amongst vehicles
Generated trajectories for vehicles
Computing lane vehicles
Original laneof Rj
Modified lane of RjLane of Ri Planned position of Rj
Planned position
of Ri
5/27/2018 Motion Planning for Multiple Autonomous Vehicles: Chapter 4b - Dynamic Distributed Lanes using Graph Search
32/46
Motion Planning for Multiple Autonomous Vehicles
Vehicle Following
rkala.99k.org
Select thevehicle to
follow
Follow theselectedvehicle
Laterally closestvehicle is selected
Speed is fixed toallow following
with somedistance
Z is taken as pernormal speed
Z2is taken asper reduced
speed
Rest expansionsame as free
state expansion
5/27/2018 Motion Planning for Multiple Autonomous Vehicles: Chapter 4b - Dynamic Distributed Lanes using Graph Search
33/46
Motion Planning for Multiple Autonomous Vehicles
Vehicle Following
rkala.99k.org
Trajectory of Rjalready covered(this point and before)Trajectory of Ri
Trajectory of Rjplanned
Z2 Z
5/27/2018 Motion Planning for Multiple Autonomous Vehicles: Chapter 4b - Dynamic Distributed Lanes using Graph Search
34/46
Motion Planning for Multiple Autonomous Vehicles
Wait for Vehicle
Consider a narrow bridge with a stream of vehicles
coming from one side
Plan to wait for some of the vehicles in the stream to
clear and hence go forward
rkala.99k.org
5/27/2018 Motion Planning for Multiple Autonomous Vehicles: Chapter 4b - Dynamic Distributed Lanes using Graph Search
35/46
Motion Planning for Multiple Autonomous Vehicles
Wait for Vehicle
rkala.99k.org
Decide thevehicle to
wait for
Compute theposition/
trajectory towait
Modify othervehicles
trajectories
Computestate after
wait
Attempt for allvehicles in the
crossing stream
Number of stateexpansions =
number ofvehicles in stream
5/27/2018 Motion Planning for Multiple Autonomous Vehicles: Chapter 4b - Dynamic Distributed Lanes using Graph Search
36/46
Motion Planning for Multiple Autonomous Vehicles
Computing the position of wait
Assume obstacle analysis line (Z) lies inside the narrow
bridge
Assume previous line (Z2) lies outside the narrow bridge
in a wide region Maximum separation threshold is left
Two options to wait: Left of the leftmost vehicle in the
stream, or Right from the rightmost vehicle in the stream
Whichever has minimum deviation from current position
is selected
rkala.99k.org
5/27/2018 Motion Planning for Multiple Autonomous Vehicles: Chapter 4b - Dynamic Distributed Lanes using Graph Search
37/46
Motion Planning for Multiple Autonomous Vehicles
Modification of Trajectories
rkala.99k.org
Modifytrajectory
for thevehiclebeing
waited for
Calculatetime whenit crosses
the vehiclebeing
planned
Computetrajectory
of thevehiclebeing
planned
Modifytrajectorie
s of allother
vehicles till
this time
Get asnapshotof state
after waitand use as
the
expandedstate
Calculatepositionsaroundwaiting
vehicle at Z2
Set the lateralposition asconstant inthis region
Hence allovertakingand like
behavioursget cancelled
Z2Z2
5/27/2018 Motion Planning for Multiple Autonomous Vehicles: Chapter 4b - Dynamic Distributed Lanes using Graph Search
38/46
Motion Planning for Multiple Autonomous Vehicles
Wait for Vehicle Strategy
rkala.99k.org
22
Z Z2Ri
Rk
Detection of suddennarrowing of width of road
Lane of Rk
Planned
position of Ri
(a) (b)
Modification of lane of Ri
Trajectory of Rk
Trajectory of Ri
The generated trajectory for vehicles
5/27/2018 Motion Planning for Multiple Autonomous Vehicles: Chapter 4b - Dynamic Distributed Lanes using Graph Search
39/46
Motion Planning for Multiple Autonomous Vehicles
Expansion strategy selection
All 3 strategies used for all state expansions results in too
many expanded states
To limit expansions following heuristic rule is used
rkala.99k.org
Strategy PreconditionFree StateExpansion
Parent state was expanded by free stateexpansion and no new vehicleencountered/left, a new vehicleencountered/left
VehicleFollowing Parent state was expanded by vehiclefollowing and no new vehicleencountered/left, a new vehicleencountered/left
Wait for vehicle Sudden change in road width used forobstacle assessment
Once decided toovertake/ follow avehicle, continue
doing so till a new
vehicle approachesor leaves (changingovertake scenario)
5/27/2018 Motion Planning for Multiple Autonomous Vehicles: Chapter 4b - Dynamic Distributed Lanes using Graph Search
40/46
Motion Planning for Multiple Autonomous Vehicles
Results
rkala.99k.org
5/27/2018 Motion Planning for Multiple Autonomous Vehicles: Chapter 4b - Dynamic Distributed Lanes using Graph Search
41/46
Motion Planning for Multiple Autonomous Vehicles
Results
rkala.99k.org
5/27/2018 Motion Planning for Multiple Autonomous Vehicles: Chapter 4b - Dynamic Distributed Lanes using Graph Search
42/46
Motion Planning for Multiple Autonomous Vehicles
Results
rkala.99k.org
5/27/2018 Motion Planning for Multiple Autonomous Vehicles: Chapter 4b - Dynamic Distributed Lanes using Graph Search
43/46
Motion Planning for Multiple Autonomous Vehicles
Results
rkala.99k.org
5/27/2018 Motion Planning for Multiple Autonomous Vehicles: Chapter 4b - Dynamic Distributed Lanes using Graph Search
44/46
Motion Planning for Multiple Autonomous Vehicles
Analysis
rkala.99k.org
0
50
100
150
0 1 2 3 4 5 6Numberofnon-
c
onnectingstates
Number of obstacles (n)
0
500
1000
1500
0 1 2 3 4 5 6
Numb
erof
connectingstates
Number of obstacles (n)
5/27/2018 Motion Planning for Multiple Autonomous Vehicles: Chapter 4b - Dynamic Distributed Lanes using Graph Search
45/46
Motion Planning for Multiple Autonomous Vehicles
Analysis
rkala.99k.org
00.5
1
1.5
2
2.5
3
3.5
0 1 2 3
N
umberofnon-
connectingstates
Number of vehicles in same direction (a)
0
20
40
60
80
0 1 2 3Numberofcn
necting
states
Number of vehicles in same direction (a)
5/27/2018 Motion Planning for Multiple Autonomous Vehicles: Chapter 4b - Dynamic Distributed Lanes using Graph Search
46/46
Thank You
Acknowledgements:
Commonwealth Scholarship Commission
in the United Kingdom
British Council
Recommended