A Margin-based Approach to Vehicle ... Assessment in a Homotopy Framework ... Semi-Autonomous Highway Navigation

advertisement
A Margin-based Approach to Vehicle Threat
Assessment in a Homotopy Framework for
Semi-Autonomous Highway Navigation
by
Alexandre Constantin
Ingenieur Diplom6 de l'Ecole Polytechnique, 2012
Submitted to the Department of Mechanical Engineering
in partial fulfillment of the requirements for the degree of
Master of Science in Mechanical Engineering
at the
CHUSETTS INSTITUTE
OFTECHNOLaGY
I
MASSACHUSETTS INSTITUTE OF TECHNOLOGY
June 2014
@ Massachusetts Institute of Technology 2014. All rights reserved.
Signature redacted
A uthor ..............................
Depar tmenht cf Mechanical Engineering
May 21, 2014
C
Certified by....................
ignature redacted
Karl Iagnemma
Principal Research Scientist
Thesis Supervisor
Signature redacted
Ac c ep t e d by . . . . . . . . . . . . . . . . . . . . . . .
-sH
asr dt
Professor David Hardt
Chairman, Committee on Graduate Studies
AUG15 2014
LI_1BRARIES(3__
A Margin-based Approach to Vehicle Threat Assessment in
a Homotopy Framework for Semi-Autonomous Highway
Navigation
by
Alexandre Constantin
Submitted to the Department of Mechanical Engineering
on May 21, 2014, in partial fulfillment of the
requirements for the degree of
Master of Science in Mechanical Engineering
Abstract
This thesis describes the design of an unified framework for threat assessment
and the shared control between a human driver and the onboard controller, based
on the notion of fields of safe travel. It allows to perform corridor navigation,
trajectory planning, threat assessment and driving assistance in hazardous
situations. A new approach to the threat assessment problem is introduced, based
upon the estimation of the control freedom afforded to a vehicle. Given sensor
information of the surrounding environment, an algorithm first identifies corridors of
travel through which the vehicle can safely navigate. The second stage then consists
in assessing the potential threat posed to the vehicle in each identified corridor
thanks to a metric associated with available control margin. For this purpose, the
fields of safe travel are associated with sets of homotopic trajectories generated
either from a lattice sampled in the vehicles input space or from a conformal state
lattice. This level of threat is the keystone of the system and serves as input to
influence autonomous navigation or driver support inputs. The semi-autonomous
control system aims to honor safe driver inputs while ensuring safe and robust
navigation properties. It ideally operates only during instances of significant threat:
it should give a driver full control of the vehicle in "low threat" situations but apply
appropriate levels of computer-controlled actuator effort during "high threat"
situations. This approach preserves the freedom of control of the human driver
when he/she remains within a safe navigable corridor, and adjust the vehicle
trajectory when its predicted future state falls out of a safe field, or when the lowest
threat exceeds some threshold. In fully autonomous mode, this human-inspired
motion planning approach ensures collision free navigation and driving comfort.
Thesis Supervisor: Karl Iagnemma
Title: Principal Research Scientist
3
4
Acknowledgments
First and foremost, I would like to thank Dr. Karl Iagnemma for his guidance
and advice through out my research and the writing of my thesis.
I have
particularly appreciated the careful blend between supervision and independence
which has afforded me a great confidence and motivation in my work. I would also
like to extend my gratitude to the other members of the Robotic Mobility Group,
Junghee Park, Marwan Hussein, Carmine Senatore, Sisir Kurumanchi, Ryota Ono,
Youzhi Liang, for the enriching discussions and their availability for driving tests.
Special thanks to Junghee, colleague and friends, for our fruitful collaboration. His
advice and insight have played a significant role in the progress of my research.
I would also like to thank the French Ministry of Defence for giving me the
opportunity to study at MIT and their financial support.
Last but not least, I would like to thank my roommates and close friends Remi
Lam and Louis Boulanger as well as my wonderful family for their full support during
this short but exciting research adventure in Boston.
5
6
Contents
17
Introduction
1.2
Background and Literature Review
. . . . . . . . . . . . . . .
17
. . . . . . . . . . . . . . . .
20
.
Problem Statement and Motivations
.
1.1
Collision Avoidance and Threat Assessment
. . . . . . .
20
1.2.2
Autonomous Planning . . . . . . . . . . . . . . . . . . .
21
1.2.3
Homotopy Representation . . . . . . . . . . . . . . . . .
22
1.2.4
Shared Control and Driver Intent Prediction . . . . . . .
24
Purpose and Outline of the Thesis . . . . . . . . . . . . . . . . .
25
2 Identification of Fields of Safe Travel - Homotopy Formulation
29
2.4
.
.
.
30
.
. . . . . . . . . .
Topological Definition
. . . . . . . . .
. . . . . . . . . .
31
2.1.2
Road Maps and Topological Graphs . .
. . . . . . . . . .
32
2.1.3
Cell Decomposition . . . . . . . . . . .
. . . . . . . . . .
35
Lane Structure and Target Zones . . . . . . .
. . . . . . . . . .
38
2.2.1
Spatial Constraint Decomposition . . .
. . . . . . . . . .
39
2.2.2
Target Zones
. . . . . . . . . . . . . .
. . . . . . . . . .
41
Static Graph Search Approach . . . . . . . . .
. . . . . . . . . .
43
2.3.1
Static Obstacles . . . . . . . . . . . . .
. . . . . . . . . .
44
2.3.2
Dynamic Obstacle
. . . . . . . . . . .
. . . . . . . . . .
47
2.3.3
A Few Words on Complexity . . . . . .
. . . . . . . . . .
50
Enumeration of Navigation Strategies Approach
. . . . . . . . . .
51
. . . . . . . . . .
51
.
.
.
.
.
.
.
2.1.1
2.4.1
.
2.3
. . .
.
2.2
From Work Space to Topological Search
.
2.1
Decision Tree . . . . . . . . . . . . . .
.
1.3
.
1.2.1
.
1
7
2.5.1
Geometric Properties . . . . . . . . . . . . . . . . . . . . . .
56
2.5.2
Optimality Approach - Single Representative
. . . . . . . .
57
2.5.3
Margin Approach . . . . . . . . . . . . . . . . . . . . . . . .
59
.
.
.
55
61
3.1
State-Space Sampling . . . . . . . . . . . . . . . . . . . . . . . . . .
62
3.1.1
Path Generation
. . . . . . . . . . . . . . . . . . . . . . . .
62
3.1.2
Velocity Profile and Trajectory Generation . . . . . . . . . .
67
3.1.3
Application to Highway Navigation with Traffic . . . . . . .
69
.
.
.
Input Space Sampling
70
3.2.1
Vehicle M odel . . . . . . . . . . . . . . . . . . . . . . . . . .
71
3.2.2
Construction of the Input Lattice . . . . . . . . . . . . . . .
72
3.2.3
Conformation to the Constrained Environment . . . . . . . .
76
.
.
.
.
. . . . . . . . . . . . . . . . . . . . . . . . .
Advantages and Drawbacks
. . . . . . . . . . . . . . . . . . . . . .
.
3.3
.
Classes of Feasible Trajectories from State and Input Lattices
3.2
A Margin Based Approach to Threat Assessment
4.3
4.4
81
81
4.1.1
Room for Maneuver . . . . . . . . . . . . .
. . . . . . . . . .
82
4.1.2
Notations
. . . . . . . . . .
85
4.1.3
Trajectory Sorting
. . . . . . . . . .
87
4.1.4
Input Space versus Acceleration Space
. .
. . . . . . . . . .
89
Metrics to evaluate the Threat . . . . . . . . . . .
. . . . . . . . . .
90
4.2.1
Convex Hull versus Chebyshev Ball . . . .
. . . . . . . . . .
90
4.2.2
Norm Comparison and Weighted Average
. . . . . . . . . .
91
4.2.3
Simulated Scenarios on Highway . . . . . .
. . . . . . . . . .
92
. . . .
. . . . . . . . . .
98
4.3.1
Definition of the Cost Function . . . . . .
. . . . . . . . . .
99
4.3.2
Cost Comparison . . . . . . . . . . . . . .
. . . . . . . . . .
100
.
.
. . . . . . . . . .
.
. . . . . . . . . . . . . . . . . .
.
.
.
.
. . . . . . . . . . . . .
.
4.2
77
Guiding Principle . . . . . . . . . . . . . . . . . .
Comparison with Minimal Cost Approach
.
4.1
.
4
53
. . . . . . . . . . . . .
.
3
Evaluation Methods to Characterize Threat
.
2.5
Heuristics to Prune the Number of Candidates . . . . . . . .
.
2.4.2
Application to Decision Making For Autonomous Driving
8
102
5
Better Synergies Between Driver and Control System
5.1
5.2
5.3
5.4
105
. . . . . . . . . . . . . . . . . . . . . . . . .
106
. . . . . . . . . . . . . . . . . . . . . . . .
106
. . . . . . . . . . . . . . . . . . . . .
108
Control Intervention Law Based on Maximal Margin Available . . . .
111
Evolution of the Threat
5.1.1
Traffic Slow Down
5.1.2
Lane Merging Scenarios
5.2.1
Hypothesis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
5.2.2
Experimental Setup with CarSim . . . . . . . . . . . . . . . . 112
5.2.3
Intervention law - Matlab Simulation . . . . . . . . . . . . . .
115
Intervention Law Based on Probabilistic Driver Model and Expected
M argin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
119
5.3.1
Driver M odel . . . . . . . . . . . . . . . . . . . . . . . . . . .
119
5.3.2
Construction of the Intervention Law . . . . . . . . . . . . . .
120
5.3.3
Human Testing with CarSim . . . . . . . . . . . . . . . . . . .
122
Future Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
131
A 4-Wheeled Vehicle Model
133
B Eye-tracking Information
135
9
10
List of Figures
1-1
Highway example with three identified navigation corridors . . . . . .
19
1-2
Design and block diagram of the semi-autonomous control system . .
26
2-1
From path planning to homotopy class planning . . . . . . . . . . . .
30
2-2
Voronoi Diagram (left) and visibility graph (right) . . . . . . . . . . .
33
2-3
Delaunay Triangulation - Direction of navigation: from left to right
.
35
2-4
Trapezoidal decomposition
. . . . . . . . . . . . . . . . . . . . . . .
37
2-5
Possible scenarios in highway navigation
. . . . . . . . . . . . . . . .
38
2-6
Decompositon of the space accounting for the lane structure and obstacles 39
2-7
Time varying decomposition when lead vehicle changes lane
. . . . .
40
2-8
Location of target zones . . . . . . . . . . . . . . . . . . . . . . . . .
41
2-9
Location of target region in lane exit and lane merging . . . . . . . .
43
2-10 Cell decomposition and graph construction . . . . . . . . . . . . . . .
45
2-11 Mechanism of the Breadth First Search . . . . . . . . . . . . . . . . .
46
2-12 All possible homotopies with topological length less or equal to two .
47
. . . . . . . . . . . . . . . .
48
2-14 Topological graph for lane merging . . . . . . . . . . . . . . . . . . .
49
. . . . . . . . . . .
50
2-13 Graph construction in the dynamic case
2-15 Topological graph when lead vehicle changes lane
2-16 Number of homotopies against the number of obstacles (limited to at
most two lane changes) . . . . . . . . . . . . . . . . . . . . . . . . . .
51
2-17 Left: partition of the space to identifiy strategy, Right: target regions
52
2-18 Left: Decision tree, Right: one homotopy candidate identified in the tree 53
11
2-19 Examples of computing minimum number of lane changes for homotopy
.
candidates . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . .
54
. . . . . . . . . . .
55
3-1
Grid points on the road
. . . . . . . . . . . . .
. . . . . . . . . . .
63
3-2
Generation of the edges of the lattice . . . . . .
. . . . . . . . . . .
66
3-3
Velocity Profile . . . . . . . . . . . . . . . . . .
. . . . . .
68
3-4
Modification of the grid to fit the current scenario
. . . . . .
70
3-5
Simple bicyle model . . . . . . . . . . . . . . . .
. . . . . .
71
3-6
Refined steering profile . . . . . . . . . . . . . .
. . . . . .
74
3-7
Two reasonable velocity profiles . . . . . . . . .
. . . . . .
75
3-8
Example of input lattices . . . . . . . . . . . . .
. . . . . .
75
3-9
Fitting the shape of the road . . . . . . . . . . .
. . . . . .
76
. . . . . .
78
.
.
.
.
.
.
.
.
most two lane changes) . . . . . . . . . . . . . .
.
2-20 Number of homotopies against the number of obstacles (limited to at
3-10 Occupancy grid: input-space (left) and state-space (right)
Road scenario example . . . . . . . . . . . . . . . . . . . . . . .
83
4-2
Evolution of the control freedom within prediction horizon . . .
84
4-3
Definition of a specific homotopy in both identification methods
86
4-4
Definition of a specific homotopy in both identification methods
86
4-5
Illustration of the sorting algorithm . . . . . . . . . . . . . . . .
88
4-6
Sorting based on minimal distance to vehicle . . . . . . . . . . .
88
4-7 Trajectory sorting . . . . . . . . . . . . . . . . . . . . . . . . . .
89
4-8
Chebyshev ball inscribed in the convex hull . . . . . . . . . . . .
91
4-9
Different norms for the normalization of the threat margin . . .
92
4-10 Homotopy candidates and associated margin . . . . . . . . . . .
93
4-11 Normalized steering input for all homotopy candidates
. . . . .
94
4-12 Normalized throttle input for all homotopy candidates
. . . . .
94
.
.
.
.
.
.
.
.
.
.
4-1
96
4-14 Homotopy candidates and associated control freedom . . . . . .
97
4-15 Normalized steering and throttle inputs for all candidates . . . .
98
.
.
4-13 Comparison of norms, Top: convex hull, Bottom: Chebyshev ball
12
4-16 Threat Assessment for various cost functions Top: static example,
Bottom: dynamic example . . . . . . . . . . . . . . . . . . . . . . . .
101
4-17 Simulation of a highway scenario. The host vehicle (blue) navigates
. . . . . . . . . .
104
5-1
Margin at three time steps . . . . . . . . . . . . . . . . . . . . . . . .
107
5-2
Evolution of the margin of feasible corridors . . . . . . . . . . . . . .
108
5-3
Margin at three time steps . . . . . . . . . . . . . . . . . . . . . . . . 109
5-4
Evolution of the margin of feasible corridors . . . . . . . . . . . . . .
5-5
Average distance to the closest lead vehicle among human subjects
5-6
Safety threshold defined as first decile for margin choice among human
through traffic with the Chebyshev center as input
subjects
110
. 113
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
114
5-7
Intervention law based on maximal margin or driver intent . . . . . . 115
5-8
Top: Evolution of the maximal margin available Bottom: Trajectory
of the host vehicle in both cases . . . . . . . . . . . . . . . . . . . . . 116
5-9
Extrapolation of the margin . . . . . . . . . . . . . . . . . . . . . . .
117
5-10 Top: Evolution of the maximal margin available Bottom: Trajectory
of the host vehicle in both cases . . . . . . . . . . . . . . . . . . . . .
118
5-11 Intervention law based on expected margin . . . . . . . . . . . . . . . 122
5-12 Relative error between the expected margin and the actual choice of
the driver in function of the tuning parameter a . . . . . . . . . . . .
124
5-13 Typical Receiver Operating Characteristic curve for one human subject 126
5-14 Optimal Alpha tuning parameter among subjects . . . . . . . . . . .
127
5-15 Comparison of optimal alpha and minimum acceleration maneuver .
128
5-16 Percentage of True Positive and False Positive for given requirements
129
5-17 Performance of the prediction and variance of lateral offset . . . . . .
130
A-1 Vehicle Slip M odel . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
B-1 Decomposition of the image with respect to obstacles . . . . . . . . .
137
B-2 Correlation between sources of threat and gaze points . . . . . . . . .
138
13
14
List of Tables
3.1
Pros and cons of input space versus state space sampling . . . . . . .
4.1
Elements of the cost funcion . . . . . . . . . . . . . . . . . . . . . . . 100
A. 1 Vehicle Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . .
15
79
134
16
Chapter 1
Introduction
1.1
Problem Statement and Motivations
Recent traffic safety reports from the National Highway Traffic and Safety
Administration show that in 2012 alone, over 33,500 people were killed and 2.4
million injured in motor vehicle accidents in the United States [1].
Human error
accounts for more than 90 % of these road accidents (e.g. speed, distraction, driving
under the influence). In contrast, only 3 % were due solely to mechanical fault and
5 % were caused only by environmental factors (slippery road, visibility...).
presence
of passive safety
systems in motor vehicles,
combined
The
with the
ever-increasing influence of active systems, has contributed to a decline in these
numbers from previous years. Still, even if the active safety systems have begun to
play a major role in collision mitigation [2], the need for improved collision
avoidance
technologies
and threat
assessment
methods
remains significant.
Nevertheless, considering human superior judgment capacities and current legal
issues, fully autonomous cars are not the main focus of this research. The ultimate
goad is to build a seamless semi-autonomous active safety system that preserves the
freedom of control of the drivers and only intervenes in a transparent manner when
the predicted threat exceeds a specified threshold.
Recent developments in onboard sensing, lane detection and obstacle recognition
have facilitated active safety systems that share steering and braking control with
17
the driver [3]. However, these active systems don't make the most of the sensory
information related to the vehicle surroundings. Most are limited to warnings (when
the driver crosses a lane or is close to an obstacle for instance) or are used to improve
the vehicle's performance and stability (antilock breaking, yaw and roll stability).
They are fundamentally reactive in nature an do not anticipate the future states
of the vehicle. They have therefore limited ability to assess the threat of potential
accidents and cannot exert preventive actions to avoid them. Yet, automated and
predictive driving technologies such as Adaptive Cruise Control (ACC) and Rear-end
Collision Avoidance systems [4], [5] are gradually getting more mature, although their
range of application still remains limited to very specific situations.
The margin-based approach for threat assessment described in this thesis aims
to provide a general method for accident avoidance and semi-autonomous navigation
that can handle complex situations. It relies on the observation that human drivers
tend to operate vehicles within fields of safe travel, rather than along a specific path.
Based on this, we propose a framework that relies on identification and analysis
of candidate fields, each of which can be interpreted to contain a path homotopy
(figure 1-1). In this purpose, the planner combines sensory information related to
the vehicle surroundings (nearby vehicles, pedestrians, road edges, and other salient
features) and the vehicle's dynamics in order to assess the threat posed to the vehicle
for each navigation option identified in the environment. The planner can use this
crucial threat estimation information to plan the safest navigation option (in an
autonomous system) or correct the anticipated driver's trajectory when the threat
exceeds a specified threshold (whose control is shared with a human).
18
Figure 1-1: Highway example with three identified navigation corridors
Threat to a vehicle is assumed to be proportional to the freedom of control afforded
by a particular field. This implies that (for instance) drivers tend to prefer to navigate
through regions that are wide and exhibit low curvature. In figure 1-1 for example,
the green corridor offers more control freedom than the red corridor and therefore
seems to be a better choice is the driver wants to change lane. More generally, this
proposed approach infers that safe drivers tend to anticipate future hazardous events
in order to maximize their future leeway [6]. This assumption is part of a broader
concept than human usually operate so as to keep future options as open as possible.
To characterize threat in each candidate field, a state lattice is constructed via
sampling in the vehicle input space. This sampling method enables identification of
sets of feasible trajectories associated with each field, from which the metrics related
to control freedom can be derived. Lattice algorithms have been extensively studied
and are highly flexible tools for motion planning that can adapt to complex
environments.
Lattice structures can be adapted to parallel computing methods,
making them computationally efficient and implementable in real-time at high
resolution [7].
19
1.2
1.2.1
Background and Literature Review
Collision Avoidance and Threat Assessment
Historically, safety measures were mostly limited to artifacts to reduce the effects
of collisions on vehicle occupants using, for instance, seat belts, air bags or designing
carefully the deformation of the chassis during a crash. Nowadays, the focus turns
increasingly on driver assistance systems designed to prevent those accidents from
happening. These active safety systems can be sorted into two categories: reactive
systems that apply low-level control actions triggered when a safety criteria is critical,
and predictive systems that consider not only the current state of the host vehicle,
but also the predicted state evolution of the vehicle though environmental hazards
for earlier and more efficient safety interventions.
Some reactive systems are already integrated in modern cars, among others
antilock brakes,
traction controllers,
lane-assist systems [8], [9], [10].
electronic stability controllers or even
Predictive systems remain limited to specific
situations, but are experiencing a growing attention. Most common system include
Adaptive Cruise Control, which is a control system that automatically adjusts the
vehicle speed to maintain a safe distance from vehicles ahead using sensor
information from on-board sensors [4], [11]. Another growing class of safety systems
are the rear-end collision avoidance systems [12], [5].
However, most of these
systems use threat metrics based on time to collision (TTC) estimations with
constant
velocity/acceleration
assumptions
[13],
[14]
and
don't
take
into
consideration the potential strategic planning of a human driver. These approaches
usually assess the most imminent threat of a given situation based on a minimum
lateral or longitudinal acceleration (brake threat and steering threat numbers) that
a simple maneuver would require to avoid collision given the current states of both
host and hazard [15], [16].
While these metrics can provide simple yet useful information of imminent
threat, they are not well suited to consider multiple hazards, complex dynamics and
constrained environments, as in the case of highway navigation with a lane structure
20
and a dense traffic.
Other approaches to estimate the future threat posed to a
vehicle are based on a reachability analysis, which aims to assess whether there
exists a feasible path through an environment to reach a desired goal, considering a
driver model [17].
This approach provides a manner for determining the time of
intervention that doesn't only consider basic trajectories such as constant evasive
maneuvers.
However, it only provides a binary assessment of reachability, and is
therefore limited in its ability to compare the desirability (i.e. 'goodness') of various
candidate navigation choices.
field-based framework [18],
More recently, optimal-control-based methods in a
[19] propose to tackle the navigation problem by
dividing the space into homotopy classes (corridors of travel) and generating
optimal trajectories within a particular class by minimizing a chosen objective
function. The threat assessment metric is computed from metrics associated with an
optimal path within a particular field, for example the minimal lateral acceleration
or the slip angle. These methods allow to take into consideration the behavior and
tactics of the human driver and complex navigation though obstacles. In [20], the
method is extended and the threat metrics also includes heuristics with respect to
the desirability of the corridor such as the average width and curvature.
1.2.2
Autonomous Planning
Development in recent years in onboard sensing, obstacle recognition and
computational power have made possible autonomous planning and control of
ground vehicles that require no input from the human operator.
Many car
manufacturers have announced that the first autonomous cars available to the
public will arrive by 2020.
Among them, the Google car [21] is one of the most
emblematic projects. At the same time, competitions such as the DARPA Grand
Challenge of 2007 promote the progress made in this area and foster the
development of technologies needed to create a fully autonomous ground vehicle
capable of completing an urban course within a limited time [22], [23].
A typical architecture for theses autonomous vehicles combines a perception layer
(LIDAR, camera, radars), a strategic motion planning layer and a low-level controller
21
[24]. Within the environment mapped by the perception layer, the motion planner
computes a collision-free trajectory from an initial location to a target goal. In the
context of autonomous planning, typical path planning tools include rapidly exploring
random trees [25], [26], potential fields [27],[28], Model Predictive Control (MPC), [29]
and lattice-based approaches [30],[31],[32] and [33]. The resulting path traditionally
doesn't consider the dynamic or kinematic constraints of the vehicle. The low-level
controller, usually performed at a higher frequency, converts the path of the motion
planner into a sequence of dynamically feasible inputs. However, in the framework
of MPC or closed-loop RRT, planning and control are usually performed in the same
calculation [34], [18].
All these approaches have proven effective in autonomous navigation, however
their reliance on specific reference paths (rather than spatial fields) can potentially
lead to non-robust performance in the presence of various forms of uncertainty that
can cause deviation from the planned path. Also, for semi-autonomous applications,
forced adherence to a specific path can feel non-intuitive or over-restrictive to a human
operator.
1.2.3
Homotopy Representation
If path-based approaches are well-suited for autonomous vehicles, they can feel
non-intuitive to a human operator. This is the reason why the work described in
this thesis relies on the notion of fields of safe travel that are modeled by homotopy
classes of feasible trajectories, i.e. trajectories that are continuously deformed from
one another. This representation is arguably closer to the human perception of the
driving task [35].
Despite being mostly an uncharted research area, homotopy class constraints
often appear in path planning problems.
The trajectories often need to satisfy
constraints arising due to goal requirements or the presence of hazards, which
translates into restricting the solution to certain homotopy-like classes [36]. Besides,
topological approaches are usually more robust to sensor noise and small
environment changes than path-based methods and require less computational
22
resources [37].
In this context, homotopy approaches have traditionally been
employed to reduce the complexity of the planning task by guiding topologically
hierarchal motion planners.
Essentially, these methods divide the configuration
space into a union of simpler problems (divide and conquer) by attempting to
capture the topological skeleton of the environment.
In [38], the author uses
homotopy classes to simplify the shortest path problem.
After computing the
topological graph, he implements a modified version of Breadth-First Search (BFS)
to explore the graph and identify homotopies that are not self-crossing.
Later,
Hernandez [39] extends the previous method by using Rapidly-exploring Random
Tree (RRT) in each homotopy to find the shortest path. In [40], the authors first
use probabilistic roadmaps to capture homotopy classes and then compute the most
appropriate trajectory of each class.
This method provides a robust motion
planning technique for mobile devices and robots in the context of maintenance or
dismantling operations in the cluttered environment of nuclear power plants.
In
[36], the authors propose a way to represent homotopy classes using the Cauchy
Integral theorem and derive the optimal path constrained to certain homotopy class
using graph search techniques.
More recently, optimal-control-based methods in a field-based framework [18],
[19] propose to tackle the navigation problem by dividing the space into homotopy
classes and generating optimal trajectories within a particular class by minimizing a
chosen objective function. In [20] , homotopy classes are identified using a Delanay
Triangulation in the constrained environment.
Each homotopy candidates is
assimilated into a navigation strategy that is evaluated based on some heuristic. An
optimal path is then computed in the desirable corridor using a MPC controller.
The approach describes in this thesis uses a similar framework, although the
algorithms for homotopy identification are different and take into consideration the
lane structure of highways.
23
1.2.4
Shared Control and Driver Intent Prediction
In spite of the large proportion of human error in most road accidents and the
recent spectacular progress made in the field of fully autonomous car, it is very likely
that humans will be kept in the control loop, at least partially, in the near future.
Human-automation interactions have been widely discussed and most studies tend
to show that human and automated systems perform best at distinct tasks [41],
[42]. Incidentally, human and machines are usually not interchangeable but rather
complementary, and a good semi-autonomous system should therefore make the most
of human-automation synergies.
As a matter of fact, automated systems excel at responding quickly and precisely
to a well defined control objective and can handle complex scenario as long as it falls
within it scope of action. In addition, they are not concerned by problems related
to repetitive tasks and fatigue. Humans, on the other hand, have superior judgment
and robust reasoning capabilities which gives them the unique ability to assimilate
new types of information and adapt to new modes of operation. However, humans
tend to be overwhelmed in urgent situations or if the complexity of the task is too
high. A good semi-autonomous system ideally exploits advantages of both worlds.
In this respect, Loizou et Al. propose in [43] a method to incorporate human inputs
in navigation plans, based on the concept of almost input to state stability property
of a class of navigation function. It allows human intuition while guaranteeing safety
and convergence. Most current semi-autonomous systems rely on specific paths and
are restricted to specific types of action, such as lane keeping [44] or emergency
braking. In [45], the authors use a potential-field based approach to assist a human
in a wheelchair and reduce the workload while accommodating some human input.
The intervention law is based on the distance of the wheelchair to the closest obstacles
and the deviation from the current heading to the one computed by the planner.
In order to build a robust and efficient semi-autonomous system, an estimation
of the intent of the driver is often required. When little information is available,
trajectory prediction can be computed using only available state information provided
24
by IMU or GPS [46], although the accuracy of the prediction is relatively poor as
it doesn't take into consideration the environment or the behavior of the human
driver. In [18], the human driver is assumed to behave in an optimal manner and
MPC is employed to predict his future trajectory.
The command to the vehicle
is a combinaison of human and controller inputs modulated by the threat of the
prediction.
In [47], Dragan et al. provide a method to predict the user's intent
for better teleoperation. The planner identifies a set of relevant goals and associated
reaching trajectories. The planner assigns a cost to each trajectory and the probability
the human operator chooses one of them is assumed to be exponentially decreasing
with the cost.
In the context of vehicle navigation and assisting systems, hidden Markov
processes and Bayesian networks have been commonly employed to detect specific
actions such as lane changes [48], [49] and [50]. The classifier is trained to detect
with some anticipation when the driver is about to perform the action of interest.
This prediction can be improved by monitoring gaze points or head dynamics [51] or
even neurological factors like EEG measurements [52], [53]. One common drawback
of these approach is their focus on a specific aspect of the driving task.
The
framework described in this thesis aims at covering a wider range of situations by
providing a general method for threat assessment and control intervention.
1.3
Purpose and Outline of the Thesis
In this thesis, a unified framework for trajectory planning, collision avoidance and
semi-autonomous navigation based on the notion of threat assessment is developed.
Such a navigation system ideally operates only during instances of significant threat:
it should give a driver full control of the vehicle in low threat situations but apply
appropriate levels of computer-controlled actuator effort during high threat situations.
The long-term goal is to achieve seamless semi-autonomy, in other words a transparent
and unobtrusive active safety system that preserves the human control when possible
and that doesn't surprise the driver when the computer control is activated.
25
Internal
Look-ehead
Sensing
Sensing
a deton
det, e
Current vehicle
state (velocty
y
IdentificatIon
H
0
r
a
c
h
I
Predict
V/ Identification of homotopy candidates
Own perception of the environment
IV Evaluation of candidates
(threat asses ment)
1111i
Decide ifintervention
(based on driver intent prediction)
IntentZo
Act on
threat
Tksato
Driver Model
p
a
n
/ Compute
Optimal / Safest trajectory
Input Command
1I/ Controller to follow the path
Figure 1-2: Design and block diagram of the semi-autonomous control system
In addition, the semi-autonomous system conveniently finds a trade-off between
safety and human attention as frequent interventions can both annoy the human
driver and alter his/her focus on the driving task.
The semi-autonomous active
navigation system described in this thesis aims to satisfy all of the above requirements
and desired characteristics. Furthermore, the system's method for threat assessment
and computer-controlled intervention can potentially be modified in real time based on
the scenario, environmental conditions, driver preference, or past driver performance.
Figure 1-2 shows a block diagram of this system. The active safety system can
be decomposed into two hierarchical planners. The strategic motion planner is the
main focus of the research. Given the information of the surrounding environment
provided by the onboard sensing, this high-level planner identifies and evaluates
navigation options and determines when the controller has to take action and
override the human's command.
The low-level controller is a secondary aspect of this research.
Once the high
level planner has chosen the safest navigation strategy, the low-level controller then
26
computes the sequence of inputs of a good representative trajectory of the homotopy
class and makes sure the vehicle remains within the bounds of the corridor.
In parallel, the human driver perceives the environment in its own way and makes
Therefore, in order
his own driving decisions based on some internal reasoning.
to improve the performance of the safety system, one of the additional task of the
high-level planner is to predict the intent of the human driver. Finally, the system
modulates its intervention based on the identified threat and the predicted future
actions of the driver.
The three key points of the high-level planner addressed in this thesis are the
following:
" Identification of fields of safe travel (homotopy candidates)
" Evaluation of the candidates - threat assessment task
" Intervention law, based on a driver model
The first stage of the planner that is the identification of fields of safe travel
in the local vehicle surroundings is described in Chapter 2.
The characterization
of the desirability of each field in order to detect potential hazardous navigation
decisions is developed in Chapters 3 and 4. This second stage is, strictly speaking,
the threat assessment problem, which is addressed with a margin-based method that
relies on analysis of a state lattice.
Chapter 3 describes the construction of such
lattice both in input space and state space. The computation of the control freedom in
each homotopy candidate is detailed in Chapter 4. These methods are demonstrated
in simulated highways scenarios involving multiple tasks such as vehicle overtaking,
lane merging, or emergency braking. The threat assessment is also applied to fullyautonomous navigation in which the planner chooses the corridor that offers maximal
margin for a safe driving experience.
Finally, Chapter 5 describes an attempt to
build a reliable driver model in order to predict the future actions of the human
operator and build an efficient and robust intervention law for an improved active
safety system.
27
28
Chapter 2
Identification of Fields of Safe
Travel - Homotopy Formulation
The framework for semi-autonomous vehicle control in highway navigation
described in this thesis relies on the key notion of "homotopy" or travel corridor.
The reason behind this motivation is the assumption that human drivers tend to
operate vehicles within a field of safe travel rather than along a specific path. This
chapter aims at rigorously describing the methods and processes to identify these
fields of safe travel. Starting from the topological definition of homotopy classes, the
notion is extended to the framework of highway navigation which possesses inherent
characteristics such as a rigid lane structure and the prohibition to drive backward.
Two approaches are detailed. The first one relies on a cell decomposition and the
construction of a topological graph connecting the cells. The second one attempts
to identify all navigation strategies with respect to the obstacles and other vehicles
to build a decision tree.
Various scenarios involving both static constraints and
dynamic obstacles as well as lane merging and splitting lanes are presented to
Finally, the final section of the chapter
illustrate the the algorithm's operation.
introduces the crucial issue of finding a good metric to characterize the desirability
of each homotopy candidate.
29
Figure 2-1: From path planning to homotopy class planning
Figure 2-1 illustrates the founding principle of this thesis; instead of computing
the shortest path through obstacles, the planner identifies corridors of safe travel that
are assimilated to homotopy classes of trajectories (defined in the next section).
The methods introduced in this chapter assume that all information related to
the vehicle surroundings such as road edges, lane coordinates, position, velocity and
size of the obstacles are known over a finite preview horizon. In practice, these data
would be provided by onboard sensing, which is range-limited and subject to a relative
uncertainty.
2.1
From Work Space to Topological Search
We can find in literature as early as 1938 studies showing that human drivers tend
to drive their car within a field of safe travel rather than along a predefined path.
In [35], J. Gibson and L. Crooks describe these fields of safe travel as virtual objects
containing "... all possible paths, which the car may take unimpeded". This thesis is
based on the very same postulate and attempts to build efficient and reliable methods
to identify corridors that are as close as possible to the sets of paths described by the
two authors. Non trivial homotopies contain infinite number of feasible trajectories
and are therefore hard to identify or characterize as objects. The methods introduced
in this section aim at reducing the intractable problem of the continuous configuration
space into a tractable problem in a discrete topological space.
30
2.1.1
Topological Definition
In a topological space X, a path can be described by a continuous map (or
function)
f
from the unit interval [0, 1] to X. The initial point if the path is f(0)
and the terminal point is f(1).
f :I
X
8
s
X
Two continuous functions from one topological space to another are called
homotopic if one can be "continuously deformed" into the other.
This definition
implies that a homotopy of paths contains paths derived from continuously
deforming a reference path while keeping its endpoints fixed.
homotopy of paths, in X is a family of paths ft : I
-+
More precisely, a
X indexed by I such that:
" f t (0) = xo and ft(1) = x 1 are fixed
" The map F : I x I
-+
X given by F(s, t) = ft(s) is continuous
In the context of vehicle motion planning, homotopy classes of trajectories are
defined as sets of trajectories that can be transformed into each other by gradual
bending and stretching without colliding with obstacles [36]. Essentially, all paths
spanning from the vehicle's current position xO to a goal location Xg are said to be
homotopic if they pass through the obstacles in the same manner. Note that in this
case, Xg doesn't necessarily corresponds to a single point but can be a connected
surface of the space. Also, only feasible trajectories are considered, in the sense
they are compatible with the vehicle dynamic and the navigation rules. By abusing
the notation, we will refer to these classes of trajectories as "homotopy classes" or
"homotopies".
31
2.1.2
Road Maps and Topological Graphs
In robotics and more specifically in motion planning, homotopy approaches have
traditionally been employed to reduce the complexity of the planning task by
guiding topologically hierarchal motion planners. Essentially, these methods rely on
the partitioning of the configuration space into a union of simpler problems by
attempting to capture the topological skeleton of the environment. In [38], Jenkins
uses homotopy classes to simplify the shortest path problem.
To compute the
topological graph, he constructs lines joining random center points to every obstacle
within range.
These lines decompose the space into smaller regions.
The
connectivity between those regions form the graph. Finally, Jenkins implement a
modified version of Breadth-First Search (BFS) to explore the graph and identify
homotopies that are not self-crossing.
Later, Hernandez [39] extends the previous
method by using Rapidly-exploring Random Tree (RRT) in each homotopy to find
the shortest path.
Topological approaches such as road maps are efficient tools to tackle the motion
planning problem and rely on the construction of a graph-based abstraction of the
workspace.
In other words, road maps techniques attempt to convert the
N-dimensional configuration space path planning problem to a simpler graph search
problem in which the environment is represented by a reduced number of potential
states. More specifically, road maps represent the connectivity of the free space by a
network of one dimensional curves.
Traditionally, visibility graphs and Voronoi
Diagrams constitute well known class of algorithms in this regard.
In [54] for
instance, the authors implement families of path-wise connected balls and visibility
domains to form a topological base.
In [55], an extension of the Visibility
Probabilistic Roadmap Planner (PRM) methods is implemented to construct
efficient roadmaps which account for the connectedness of the configuration space.
Voronoi Diagrams are well-suited to generate the topological skeleton in workspace
populated with polygonal obstacles [56].
32
Figure 2-2: Voronoi Diagram (left) and visibility graph (right)
Visibility Graphs
Historically, one of the earliest and most widely used technique to identify the
topological connectivity of the free space is based on the construction of a visibility
graph (NJ Nilsson as early as 1969 [57]) . A visibility graph is a graph of intervisible
locations, typically for a set of points and obstacles in the configuration or work space.
Each node in the graph represents a point location, and each edge represents a visible
connection between them. That is, if the line segment connecting two locations does
not pass through any obstacle, an edge is drawn between them in the graph (see
Figure 2-2 right).
From an implementation perspective, the algorithm first draws lines of sight from
start and goal locations to all "visible" vertices and corners of the configuration space.
Then, at every time step, the algorithm draws the lines of sight from every visible
vertex from the previous time step to the newly visible vertices.
The process is
repeated until every vertex is explored at least once. The connections between the
vertices of the obstacles and the corners of the space form the topological graph. A
BFS algorithm can then be implemented to identify all homotopies starting from the
initial location and reaching a specific vertex.
Efficient algorithms can be implemented to build the visibility graph. If the brute
force methods lead to a complexity in 0(n') where n is the number of vertices,
more powerful algorithms can be run in O(n 2 logn) [58]. However, one of the main
drawbacks of visibility graph is that by construction, the trajectories are close to
the obstacle. More importantly, two distinct paths on the visibility graph can pass
33
through the obstacles in the same manner and are therefore homotopic according to
the definition. Therefore, although visibility graphs can be efficient in shortest path
problems, then often yield to redundancy during the homotopy identification step
and are ill-suited to the framework of this thesis. In Figure 2-2 for instance, the green
and blue paths are two distinct topological objects from the visibility graph but are
part of the same path homotopy according to the definition.
Voronoi Diagrams
Voronoi diagrams are another popular method to reveal the topological structure
(Figure 2-2 left) [59]. Considering a set of points P, usually representing the obstacles,
the Voronoi diagram splits the configuration space into a set of cells R, in a way such
that every point within cell Ri is closer to the sampled point P than to any other
point P from the sampling set P. The curved segments at the boundaries of the cells
trace out the topological skeleton of the workspace. Unlike visibility graph, Voronoi
Diagrams aim at maximizing the clearance between points points and obstacles. Note
that points along these axes are equidistant from the closest two or more obstacle
boundaries.
Voronoi diagram provides a complete method to capture the connectedness of a
workspace and design a roadmap that goes trough it [56]. Powerful methods have
been proposed to compute Voronoi diagrams such as Fortune's algorithm with a
complexity in O(nlogn) in time and O(n) in space [60].
Then, a BFS or a
shortest-path algorithm like Dijkstra's algorithm can be performed on the graph to
identify relevant homotopies. The advantage of this approach is that if the sampling
of the set of points P is adequate, the graph prevents redundancy in the homotopy
identification. However, similarly to the visibility graph, Voronoi diagrams are more
suited to path planning than to corridor planning as it is difficult to capture the
properties of the homotopies delineated by the partitioning.
Indeed, this method
allows to identify the center line of the corridors the but the boundaries are not
explicit.
34
2.1.3
Cell Decomposition
Although the road maps are well-suited to build the topological skeleton of the
configuration space, which is a mandatory step toward the identification step, they
are widely used to determine the shortest path to reach a goal location. The goal of
the planner detailed in this thesis is different since it aims at estimating the freedom
of control offered in each homotopy or field of safe travel. Both the visibility graph
and the Voronoi diagram fail address either the issue of redundancy or geometric
properties of the homotopies. Given this observation, the planner proposed in this
thesis is based on another branch of motion planning methods that are cell
decompositions.
Essentially, these techniques decompose the configuration space
containing convex polygonal obstacles into a set of constrained convex cells and
represent the connectivity by the adjacency graph of the cells.
9
7
25
10
4
Figure 2-3: Delaunay Triangulation - Direction of navigation: from left to right
Delaunay Triangulation
This
homotopy
decomposition
called
identification
Constrained
method
Delaunay
uses
a
well-known
Triangulation.
A
triangular
Delaunay
triangulation for a set P of points in a plane is a triangulation such as no point in P
is inside the circumcircle of any triangle of the decomposition. It is the geometric
dual of the Voronoi diagram: when connected by straight lines, the centers of the
35
Delaunay's triangulation's circumcircles form the medial axis of the Voronoi
diagram. In the context of highway navigation the edges of the surrounding vehicles
and the boundaries of the road impose constraints on the triangulation such as no
decomposed cells crosses constraints.
Once the triangular decomposition is performed, an associated topological graph
can be constructed.
Nodes are cells and edges indicate immediate connectivity
between nodes.
Given the graph structure, a source cell and a target cell, it is
straightforward
to
considered cells.
determine
the
lowest-cost
connections
between
the two
That is, any feasible homotopy containing the vehicle's current
position X0 , and the position of the goal location, may be defined as a sequence H'
of adjacent triangles (T1 ...
T)
extending from the triangle circumscribing the
vehicle's current position to that containing the goal location (from T
to tio
inFigure fig:Delaunay) [61], [20]. In this sense, the notion of homotopy is already
extended from the topological definition since the target location is not necessarily
.
reduced to a single point but is most of the time a convex region of R2
Figure 2-3 display one possible Delaunay triangulation of a space and the shaded
triangles correspond the sequence of convex regions forming one of the homotopy
candidate. Any paths starting and ending at the same points and contained in the
sequence can be derived from each other thanks to continuous deformations.
The
advantage of this approach is that the algorithms involved have been extensively
studied and that the decomposition provides full coverage of the environment with a
complexity of 0(nlogn) [62].
However, one drawback is that this triangular
decomposition
is
and
identifications.
Consequently, the second crucial task of the planner, which aims at
not
unique
can
therefore
yield
different
homotopy
characterizing the level of threat of each homotopy, can be biased, since the
properties can change according to the computed triangulation. Another drawback
is that this homotopy representation can look artificial, which first, contradicts the
goal of the planner that is to mimic the human perception of the corridors, and
second, is not well-suited for highway scenario since it reflects poorly the lane
structure.
36
Trapezoidal Decomposition
An alternative to the triangular decomposition is a trapezoidal decomposition, in
which the space is divided in line perpendicular to the direction of the vehicle. This
method also provides a full coverage of the environment and leads to a topological
graph with nodes being cells and connectivity given by immediate proximity. The
procedure for constructing a trapezoidal decomposition is similar to constructing a
triangular decomposition and several efficient algorithms also exist to perform the
decomposition.
Figure 2-4: Trapezoidal decomposition
Figure 2-4 displays the four homotopy candidates in the case of two obstacles if
the extreme right cell is the only destination cell.
Similarly to the triangular
decomposition, the trapezoidal decomposition is fully conservative, covers the entire
space and therefore contains all feasible trajectories, provided the vehicle can only
move forward and is not allowed to move backward.
The assumption is not
restrictive in the case of highway scenario. Besides, the decomposition provides cells
that are more realistic from a human driver point of view: then correspond to
real-life feasible maneuvers (stay in the region behind first vehicle, overtake first
vehicle from the right side and stay in the region between two vehicles).
One
drawback of this method is that the topological graph can change over time is the
37
obstacles
have different
velocities,
which prevent
the
planner
to identify
time-invariant homotopies and therefore characterize the level of threat in each
homotopy.
However, this key idea of decomposing the space in trapezoids with
respect to obstacles serves as one of the pillars of the final homotopy identification
algorithm for on-road navigation.
2.2
Lane Structure and Target Zones
Highway navigation requires a more robust method to identify homotopies so
that the planner can handle the various scenarios encountered. In particular, it has
to be able to manage multiple lanes boundaries, obstacles with time varying velocity
or change of lane position, as well as merging lanes or lane departure. Figure 2-5
presents different cases that can occur on a highway, such as a vehicle that enters
or exits the highway or another vehicle located on an adjacent lane suddenly decides
change lane. In the latter case, the human operator has usually two choices, either
slow down to allow the vehicle to merge or whenever possible, switch to the adjacent
lane to leave more "space" to the other vehicle. The host vehicle is the blue car on
the third lane and the grey vehicles are elements of the traffic.
-------------------------------------------
-----------------
----------------------------
Figure 2-5: Possible scenarios in highway navigation
In this context, it is important to distinguish hard constraints from soft
constraints.
On the one hand,
hard constraints cannot be violated in any
circumstance since they can lead to serious accidents. For instance, crossing another
vehicle boundary leads to a car crash and a departure from the road can also be
38
very hazardous. Soft constraints on the other hand, can be violated in some cases,
such as temporary maneuvers. In the framework of this thesis, lane boundaries are
considered as soft constraints. As a matter of fact, they have to be assimilated as
constraints since vehicles cannot stay in between two lanes for long periods of time.
However, a vehicle may cross them at some point to change lane to overtake a
slower vehicle or to reach an exit.
2.2.1
Spatial Constraint Decomposition
Similarly to the methods described in the previous section, the planner runs a
trapezoidal-inspired decomposition with respect to the lanes and the other vehicles.
Lane by lane, each area located between two vehicles or obstacles is considered as
a cell. If no vehicle is present in the lane, then the whole lane constitutes the cell.
The length of the portion of road considered depends on the range and accuracy of
the onboard sensing. In most cases, the prediction horizon is limited to either a few
seconds or a few hundred meters.
Figure 2-6 presents an example of decomposition in the case of a highway composed
of four lanes. The sensors detect two other vehicles within a sensing horizon. The
space is therefore decomposed into six cells. More generally if NL is the number
of lanes and Nv the number of vehicles, then the total number of regions is NE
=
NL + NV, since each vehicle contributes to the creation of a cell behind it.
1
m4
-5
6
Figure 2-6: Decompositon of the space accounting for the lane structure and obstacles
39
The general goal of a motion planner is to generate some control command over
some discretized time steps up to a definite prediction horizon. The command can be
in the form of direct control inputs when considering fully-autonomous vehicles, or
a threat-dependent recommendation when the control is shared between the human
operator and the controller. In the case of static obstacles, the cell decomposition is
time-invariant and the planner can thus use the same decomposition at every time
step. In highway scenarios however, the planner has to consider dynamic obstacles
and the boundaries of the each cell from the decomposition needs to be computed at
every time step between to and to + Tp where Tp is the prediction horizon.
This is the reason why the topological structure is important in homotopy
planning:
the connectedness of the graph, under some specific hypothesis, can
remain time-invariant over the prediction horizon.
More precisely, this cell
decomposition is valid as long as the surrounding vehicles don't change lanes. Even
if the vehicles go at different speeds, the relative size of each region may vary but
the general scheme of the decomposition remains time-invariant.
If one of the
vehicles from traffic changes lane within the prediction horizon, it creates a new cell
in the lane it reaches and the cell behind it in its former lane is no longer relevant
and the topological structure that support the homotopy identification becomes
time-dependent (Figure 2-7).
1
2
1
2E3
3
4_
5
----.----
4,5
----
6
-
7
to + at
to
Figure 2-7: Time varying decomposition when lead vehicle changes lane
40
2.2.2
Target Zones
As stated in the motivation section, the planner described in this thesis is designed
to come as close as possible to a human behavior in order to only intervene when the
global threat exceeds some threshold and to preserve the driving experience when
no critical intervention is required. In this respect, another layer is added to the
homotopy identification task with the introduction of the target regions.
General Case
Typically, on a highway, most human drivers tend to drive at the reference speed
which is close to the speed limit if the traffic allows it. If they encounter another slower
vehicle in the same lane, they have two choices: either slow down and stay in the same
lane or change lane to overtake the slower vehicle. In most cases, the driver is highly
unlikely to change lane and slow down to remain side by side with the slower vehicle.
This is why target regions come into play. In each homotopy candidate identified,
the sets of continuously deformed trajectories are restricted to subsets of trajectories
that reach the related target region within the prediction horizon. Besides, in the
framework of highway navigation, the requirement on the same termination point
for all trajectories from one set is relaxed: if all trajectories start at the current
location of the host vehicle, they don't necessarily end at the exact same location,
but somewhere inside the target zone. The requirement of continuously deformable
4
Figure
2-8:
--------------------------..
:--
..
Location
of
41
target
zones
..
.
..
.
1..
. 5 ..
.
.
.
Fg2-------------
.
paths remains mandatory.
In the lanes free of vehicles (the first one in the previous example), the target
region is located at the end of the prediction horizon, and is reached if the vehicle's
speed is close to the reference speed. It's a reasonable assumption that the driver will
try to reach this region if he chooses to change lane. Otherwise, the target zones are
located behind the lead vehicle, including a safety margin. Figure 2-8 displays the
location of the target in each region. It is straightforward to see that each cell from
the decomposition contains one and only one target region. The area of each target is
a tuning parameter and depends on the preferences of the human driver. The smaller
the target region, the closer the vehicle speed to the reference speed. On the contrary,
large target regions allow more freedom in terms of driving speed. Essentially, the
size of the target can range from a single point in the most restrictive case to the
whole cell in the most conservative approach.
From an implementation perspective, if the boundaries each cell from the spatial
decomposition are computed at every time step of the prediction, the target zones
are only computed at the last time step to + T since they capture the potential goals
the driver may want to reach at the end of the control horizon. They are independent
from the positions and the motions of the obstacles at the previous time steps. In both
homotopy identification methods described in sections 3 and 4, the homotopies are
defined as sequence of events, either sequence of cells to travel trough or navigation
actions to operate. In both cases, the target region constitutes the terminating step
of the sequence defining the homotopy class.
Lane departure and Lane Merging
Not only is the method to construct the target regions straightforward when the
lane structure is constant, it is also robust and flexible and allows one to tackle
situations where the number of lanes can change, for example if two lanes merge or
if one lane leads to an exit. The case of an exit lane (Figure 2-9) is not very different
from the standard case. Indeed, it is simply one of the possible goals the human
driver may want to reach. Therefore, the target region is also located at the end of
the sensing horizon, similar to the other lanes.
42
------
......
Figure 2-9: Location of target region in lane exit and lane merging
In the case of a lane merging with another one, it is slightly more complicated
since it is not necessarily a final goal but the human driver can still drive along it for
a short period of time (overtake another vehicle or wait for insertion in the adjacent
lane). The use of a target region allows us to solve this issue: when the end of the
terminating lane becomes close enough to the position of the host vehicle, the target
region associated with the merging lane is removed from the possible goals presented
to the planner. Therefore, the cells composing the merging lane can still be used in
the topological graph as a temporary travel solution, either as the initial nodes or as
transition nodes, but they cannot be terminal destinations.
Figure 2-9 shows the location of the target regions as the host vehicle approaches
the merging point of the two lanes. First, it is far enough from the singularity and the
soon-to-end lane is still a potential goal for the driver. As the vehicle comes closer,
traveling trough the terminating lane becomes less and less desirable and the size of
the target region decreases as one can expect. At some point, the driver has no choice
but to stay or go to the remaining lane and the target zone is removed from the set
of goals.
2.3
Static Graph Search Approach
This section details the first method employed to identify the homotopy
candidates thanks to a static graph search on the cell decomposition of the lane
structure introduced in the previous section. Generally speaking, motion planning
can be described as the task to plan a relevant sequence of configuration states for
the plant and a sequence of control inputs to achieve the desired configuration. The
43
length of the sequence
depends on the prediction
horizon and the time
discretization. As mentioned earlier, the first goal of the planner described in this
thesis is to identify corridors containing a set of homotopic trajectories that share
the same strategy of obstacle avoidance, whose sequence of inputs verify the vehicle
model constraints at each time step and whose configuration states remain inside
the homotopy constraints at each time step. The approach detailed in this section is
a constraint-based approach in the sense that at every time steps, the planner
computes the exact spatial boundaries that delineate every homotopy based on the
sequence of cells from the topological graph.
For representation sake, static obstacles are addressed in the first instance and
dynamic vehicles follow.
2.3.1
Static Obstacles
To begin the analysis of the algorithm, we detail the simplest case of static
obstacles where the spatial decomposition remains constant for all time steps
between to and to + Tp.
This leads to a simple and intuitive construction of the
topological graph, in particular with respect to the connectedness between the cells.
The same example is used throughout the section for consistency sake. It represents
a highway scenario in which the road is composed of four lanes and the traffic is
limited to two vehicles within range.
The first step is to run the cell decomposition as detailed in the previous section.
As the obstacles are static between to and to + T,, the planner is only required to
compute the decomposition once at to. In the example (Figure 2-10), there are six
cells and as many target regions. Two of the target regions are located behind the
leading vehicles. They correspond to braking maneuvers. The four other cells are
located at the end of the lane and correspond to overtake maneuvers.
44
Figure 2-10: Cell decomposition and graph construction
The construction of the graph is straightforward when the cell decomposition is
achieved: two cells are connected if they share a non-null edge. In the example for
instance, cells 2 and 5 or 4 and 6 are connected, which is not the case of cells 3 and
4. The graph is therefore composed of 6 nodes (cells) and 7 edges. The topological
graphs is assumed to be loop-less, which means that the sequence cannot contain
twice the same cell, which is a realistic assumption. Indeed, in real-life situations,
a human driver is unlikely to change lane and come back to the same lane if it is
without the purpose of overtaking another vehicle or avoiding an obstacle.
Incidentally, one interesting property of the topological graph in the static case,
where only adjacent cells are connected, is its property of being planar, meaning it
can be drawn on a plane in a way that that no edges cross each other. Efficient search
algorithms have been developed for this class of graphs. The property is however not
mandatory for the general homotopy identification task, which is fortunate since it is
no longer verified when dynamic vehicles are considered.
The homotopy identification task in itself consists of listing all feasible sequences
from the initial cell to one of the terminating cells containing a target region. In the
example, all cells contain a target region and can therefore be used as terminating
cells, even the initial one. In the later case, the homotopy is reduce to this single
cell. In order to list all possibilities, the graph can be explored using standard graph
search algorithms. One possibility is to employ a k-shortest path algorithm derived
from Dijkstra's single shortest past algorithm [63], [64]. The algorithm finds the K
45
shortest paths that have the lowest cost from one node to another, where K represents
an upper bound for the number of paths derived from the graph. The cost of each
edge is set to one so that no transition is favored compared to another. The algorithm
is run for every available terminating option, while always using the same initial cell.
The complexity of such algorithm is 0(kn(m + nlogn)) where n is the number of
nodes and m the number of edges.
However, as the topological graph is assumed to be unit-length graph, a Breadth
First Search algorithm (BFS), with a complexity of O(n) [65] is more suitable for
the current application. Besides, all homotopies may not be relevant to the driving
task regarding the number of lane changes. As a matter of fact, as the number of
lanes and obstacles grows, the number of lane changes involved in the homotopy can
be infeasible within a short prediction horizon. We can therefore restrict the search
to homotopy candidates that involve at most two or three lane changes which is a
reasonable assumption for highway driving.
Each lane change corresponds to a
transition from a cell to another in the topological graph.
BFS algorithms are
particularly well suited for this kind of application since at each time step, the
algorithm explores the neighbors of the cells visited at the previous time step. The
upper bound of lane changes authorized directly determines the number of steps in
the BFS algorithm.
3
3
5
4
6
6
Starting cell
First step
Second step
Figure 2-11: Mechanism of the Breadth First Search
46
Figure 2-11 illustrates the process of the BFS algorithm is the example.
The
algorithm is initialized at the initial lane. During the first step, the algorithm visits
the cells directly connected to the initial cells, and so on. At the end of the second
step, all cells have been visited and the algorithm can list all possibilities involving
at most two lane changes. There are exactly eight possibilities: 2, 2 -
1, 2 -÷ 4,
2 -+ 5, 2 -+ 1 -+ 3, 2 -* 4 -+ 6, 2 -÷ 5 -+ 3, 2 -* 5 -+ 6. The sequence of cells
forming the homotopy candidates are associated with spatial constraints derived from
the constraints of the cells. Not that the feasibility is not guaranteed at this point and
some homotopies may not contain any feasible trajectories. The bounded corridors
associated with the homotopy are plotted in Figure 2-12.
10
-5
0
10. ,
10
'-
-
50
-.--
0
-10
10
-5
50
5-
,
10
0
50
10
,
50
0
50
-
-5
0
10
0
50
0
50
0
50
Figure 2-12: All possible homotopies with topological length less or equal to two
2.3.2
Dynamic Obstacle
In the case of dynamic obstacles, the structure of the topological graph needs to be
slightly modified. As a matter of fact, the size of each cell of the decomposition will be
no longer be time invariant. Moreover, if the velocity of the vehicles is different, then
two cells that share a common edge at the initial time might be completely separated
a few time steps later, and the other way round (figure 2-13). In the example, the
vehicle on the third lane goes faster than the one on the second lane and eventually
overtakes it. At the initial time, cells 3 and 4 are connected but after a certain time,
they become distant and cells 2 and 5 eventually become connected.
47
3
2
...
*r
3
2..
..
2
5
tk
tk+1
Figure 2-13: Graph construction in the dynamic case
The identification method has to rely on a time-invariant spatial structure to
perform the graph search and find all relevant homotopies.
Therefore,
the
topological graph structure has to take into consideration the possible changes. A
more conservative approach is considered and two cells are now connected if they
belong to two adjacent lanes and not only if they share a common edge.
In the
example, the two cells 2 and 3 are both connected to cells 4 and 5.
Other
construction rules remain the same and cells in the same lane are still considered as
distant. Vehicles from traffic are still assumed to stay in the same lane within the
sensing horizon.
This method is conservative because the planner may identify
homotopies that will never be feasible (If both vehicles go at the same speed for
instance).
Nevertheless, even if it artificially increases the number of homotopies,
this issue is not a major drawback as these non-feasible homotopies can easily and
quickly be removed during the threat assessment phase.
From an implementation perspective, the same breadth first search algorithm on
the current structure is used to find all relevant homotopies (loop less sequence). The
search can also be restricted to paths whose length is smaller than a given number of
edges. In the example, where homotopies are limited to maneuvers involving at most
two lanes changes, only one homotopy candidate is added compared to the static case:
2
-
5 --+ 3. It doesn't look feasible on the snapshot at to but it does at to + Tp.
48
A few Words of the Case of Lane Merging
The lane merging case requires more refinement because the cells located in the
soon-to-end lane may not contain any target regions. In figure 2-14, cells containing
a target cell are surrounded by a green circle and can be considered as terminating
cells during the BFS search. On the contrary, cell 6 is only a temporary cell and is
surrounded by a red circle in the graph. The BFS search can not allow this cell as
one of a termination and has to continue the search if it gets to gets to this point. As
a consequence, the homotopy 2 -+ 4 -+ 6 is no longer valid but 2 -÷ 4 -+ 6
-+
5 can
be included is the planner allows maneuvers involving three lane changes.
-_-_--_----------------------55
Figure 2-14: Topological graph for lane merging
Vehicles from Traffic Changing Lane
A time invariant structure along the sensing horizon is crucial for the topological
search of feasible homotopies. The main issue when the other vehicles from traffic
are allowed to change lane is that the skeleton of cell decomposition can change over
time. One possible means to tackle the problem is to extend the previous method by
creating a yet more conservative decomposition of the space, which is not addressed
in this thesis (Figure 2-15). Another approach, based on the implementation of a
decision tree and detailed in section 4 is preferred.
49
]m
*
2"!
2
22
4-
t...
tk
5
tk+27
tk+1
Figure 2-15: Topological graph when lead vehicle changes lane
2.3.3
A Few Words on Complexity
Once all homotopies are identified, the high-level planner has to evaluate the
desirability of each candidate in the threat assessment task. It is important to check
that the number of candidates to evaluate doesn't blow up as the density of the
traffic increases. In the proposed approach, homotopy identification arise from the
topological graph. The number of homotopy candidates thus depends on the number
+
of nodes n and the number of edges m. If n is straightforward to calculate, n = NL
NV, m depends on the relative disposition of the vehicles in the lane structure. In the
best case scenario (lowest number of edges for a fixed number of vehicles), all vehicles
are located accumulated in one of the lanes on the side in order to minimize the
number of connections. In the worst case scenario, all vehicles are equally distributed
in the middle lanes and the connectedness of the graph is maximal.
There is no formula to give an estimation of the number of homotopies given NL
and NV for the reasons stated above, but the relation is exponential in the unbounded
case. When the number of lane change is bounded (2 for example), it is possible to
make statistics with respect to the number of obstacles. This restriction implemented,
Figure 2-16 shows the evolution of the number of homotopy candidates against the
number of obstacles. For each Nv, 1,000 scenarios are randomized. The number of
lanes is fixed to four but the initial lane is arbitrary. The relative disposition of the
vehicles is also randomized but not more than three vehicles can be in the same lane.
It arises from the graph that in this bounded case, the median number of candidates
is a linear function of the number of obstacles in first approximation for Nv < 10.
50
This guarantees that computation time doesn't blow up in typical highway situations.
40
~.35
0
S25
15
~-..
..
~..~~
~
.
(D 10
.0
1
2
3
4
5
6
7
8
number of vehicles
Figure 2-16: Number of homotopies against the number of obstacles (limited to at
most two lane changes)
2.4
Enumeration
of
Navigation
Strategies
Approach
The other homotopy indentification approach proposed in this thesis attempts to
enumerate of all navigation strategies with respect to the obstacles that verify the
properties of homotopy classes. Navigation decisions can be enumerated based on
the observation that each time the vehicle encounters an obstacle it faces a choice
between remaining in its current lane (by slowing) or moving to an adjacent lane.
It relies on the construction of a decision tree and doesn't attempt to compute the
boundaries of the each corridor as in the previous approach.
2.4.1
Decision Tree
The construction of the decision tree combines two types of actions:
e Actions taken each time the vehicle encounters and obstacle: overtake from
51
the left or right side or slow down and stay behind the vehicle. In compliance
with diagram in Figure 2-17, the host vehicle is defined as being behind another
vehicle or obstacle if and only if it is located behind it and in the same lane.
Otherwise, the host vehicle is considered to be either left or right.
The goal destinations at the end of the prediction horizon represented by the
target regions previously introduced.
Avoid vehicle from the left
I
Li____
Avoid vehicle from the right
Figure 2-17: Left: partition of the space to identifiy strategy, Right: target regions
A tree structure can be constructed by enumerating all the possible navigation
decisions associated with each obstacle, with each branch of the tree terminating
(not necessarily uniquely) in a target zone. A homotopy can then be identified as a
field constructed from connected regions associated with each branch of the decision
tree. For each homotopy candidate hi, 6ij is the decision taken at the
and
ri the chosen
target
zone.
By
construction,
Ti
E
jth
vehicle
{1, ... , NT}
and
6i, C {left, behind, right}. Each homotopy candidate can be written in the form of
a sequence hi = ( 6 j,1, ...
, 6
level of the decision tree.
,Nv, Ti) that represents the navigation decision at each
This method for homotopy candidate identification is
more general and contain less information that the previous one. In return, it is
more flexible as it allows various behaviors of the lead vehicles such as lane changes
Some ramifications of the decision tree are plotted in Figure 2-18 for the reference
example (four lanes and 2 vehicles). On the right is displayed one homotopy candidate
that corresponds to the sequence of decisions highlighted in blue in the tree.
52
Vehicle A
Vehicle B
Target
Figure 2-18: Left: Decision tree, Right: one homotopy candidate identified in the
tree
2.4.2
Heuristics to Prune the Number of Candidates
The number NH of homotopy candidates depends on the number of vehicles NV
and number of target zones NT, NH =
3 Nv
x NT which grows exponentially with
the number of vehicles. In the example, the number of homotopy candidates is 54.
However, some of these candidates are not feasible due to violation of constraints
associated with the vehicle dynamics, road and lane boundaries or even definition
contradictions. For instance, the host vehicle can't at the same time be behind two
adjacent vehicles, in the sense defined above.
Likewise, if the host vehicle stays
behind one vehicle, it can't reach target regions located in adjacent lanes.
The
related sequences of action are virtual objects that are irrelevant to the driving task
and have to be removed from the sets of homotopy candidates.
Furthermore,
homotopy candidates associated with multiple lane changes can be discarded as
practically undesirable similar to the previous case.
The identification of these unfeasible homotopy candidates can be performed using
the threat assessment methods described in Chapter 4 that relies on sets of trajectories
to compute the control margin within each corridor. However, this computation of the
margin can become computationally expensive as the number of candidates increases
quickly. Instead, it is possible to prune the number of candidates before performing
the threat assessment task. A fraction of the candidates can quickly be sorted out
based on heuristics such as the minimum number of lane changes associated with the
maneuver.
As an example, consider the scenario illustrated in Figure 2-19, with two obstacles
53
lane 1
lane 2
----------
lane 3
green
homotopy
left side of A
0 (1921
initial lane
right side of A
left side of B
(2)
(4)
(11
homotopy
+2
target lane
right side of B
initial lane
J2)
+1
+3
(3,4)
(3)
-
0
target lane
0
Figure 2-19: Examples of computing minimum number of lane changes for homotopy
candidates
and two identified candidate homotopies. We can see that bypassing vehicle A (from
left to right) requires passing through lane 1 or 2. Approaching behind vehicle A
requires travel in lane 3 and overtaking it from the right side requires travel in lane
4. Based on these observations and from a conservative perspective, we can then
calculate the minimal number of lane changes involved in the maneuver.
The red
homotopy requires at least 5 lane changes, whereas the green homotopy minimally
requires only one. We can thus discard the red option from the homotopy candidates
as it is unlikely that a) it contains any feasible paths, considering constraints arising
from vehicle dynamics, and b) the large number of required lane changes makes it
practically unlikely to be desirable to a driver.
Let Lj be the set of accessible lanes corresponding to a decision for the jth vehicle.
For example, when the jth vehicle is in lane 3 and decision is 'left', then Lj is
{1, 2}.
For notational convenience, let LO be the initial lane and let LN,+1 be the target
lane.
The minimum number of lane changes between decisions can be computed
as the minimum value of differences between elements of L and Lj+ 1 , which we
denote min-dist(Lj, Lj+ 1 ).
Then the total minimum number of lane changes can be
computed by summing them, as:
)
Min = ENv min-dist(Lj, Lj+1
This algorithm
candidates.
allows to significantly
reduce
the
number
of homotopy
Similarly to the graph-search approach, we can build some statistics
54
with respect to the final number homotopies against the number of vehicles, under
the same hypothesis (four lane structure, arbitrary initial lane...).
Figure 2-20
displays the results of 8 x 1, 000 randomized scenarios. The algorithm proves to be
efficient, especially as the number of obstacles becomes large.
In the case of 8
vehicles detected in the traffic, the median number of homotopy candidates is 150
instead of 38 x 10 ~ 65k. However, the restricted number is still higher than in the
graph-search approach because the heuristics are based on the minimum number of
lane changes instead of the exact count. For these reason the strategy enumeration
approach will be employed only when at least one vehicle is supposed to change lane
within prediction horizon.
In other situations, the graph-search approach will be
favored.
i5 2W
E
......................................................................................................
0
.2
.0
1
2
3
4
5
6
7
8
number of vehicles
Figure 2-20: Number of homotopies against the number of obstacles (limited to at
most two lane changes)
2.5
Evaluation Methods to Characterize Threat
In the previous sections, we have described two distinct approaches to identify
homotopy candidates.
The first is based on a static graph search on a cell
decomposition of the configuration space.
The homotopies are then defined as
sequences of cells the vehicle have to travel through. The constraints of the cells are
computed at every time step and the boundaries of the corridors are therefore
exactly known. In the second approach, the homotopies are defined as sequences of
55
actions derived from the construction of a decision tree. Although more flexible, this
method doesn't allow to characterize the spatial boundaries of the corridors.
Depending on how the information is employed by the planner, one of the two
methods can be more advantageous than the other.
In this thesis, the number one goal of the planner is to characterize the
desirability of each field of safe travel identified in the first instance. In other words,
the planners needs to assess the threat of the related maneuver according to
relevant and easily measurable criteria. We can then classify the feasible maneuvers
from the safest to the most hazardous so that the vehicle can either select the best
navigation option (fully-autonomous systems) or safely assist the human driver
(semi-autonomous system).
There exist several methods to tackle the threat
assessment task. They can be classified into three main categories: analysis of the
geometric properties of the corridor, analysis of a single trajectory representative of
the homotopy class and finally an estimation of the input freedom offered within the
corridor.
2.5.1
Geometric Properties
One of the most obvious means to characterize the desirability of a corridor is to
analyze its geometric properties, such as the effective travel length and the average
width of the corridor, the curvature of the road and other similar metrics. Generally
speaking, it is clear that drivers tend to prefer to travel through regions that are wide,
straight, and short, to reach a desired goal location. However, it is often difficult to
estimate those geometrical properties, as the shape of the corridor can be complex in
the presence of multiple obstacles. Should we consider the average or minimal width
of the road? How to properly define the curvature of a homotopic region? These
questions are hard to rigorously answer.
Some research has been oriented towards this approach.
In [20], the authors
propose to evaluate the geometric properties of the homotopy candidates based on
some heuristics computed at the scale of the cells from the Delaunay Triangulations.
These heuristics include among other the distance travelled in each triangle, the
56
width of the triangles perpendicularly to the direction of travel, and the minimal
avoidance acceleration required.
A graph search based on those heuristics using
Dijkstra's algorithm is then performed to calculate the optimal path homotopy.
This type of approach allows one to compute a rough estimate of the ease of
navigation and severity of the maneuver in each corridor, but is limited in his
applications due to rather restrictive hypothesis such as a constant speed during the
maneuver. It doesn't fully characterize the ease of navigation or room for maneuver
as it doesn't only derive from the corridor's geography but also from the vehicle's
dynamics.
2.5.2
Optimality Approach - Single Representative
Another category of threat assessment methods relies on the computation of a
single representative of each homotopy class (the shortest path for instance), as many
algorithms have been developed in this area of motion planning. One of the earliest
method to find the shortest path within a constrained corridor is to use an RRT/RRT*
algorithm. In the context of homotopy formulation, Hernandez computes the shortest
path in each identified homotopy using the h-RRT algorithm [39]. Although not the
concern in the article cited, the shortest path can be selected as the representative for
the threat assessment task. The criteria can include among others lateral acceleration,
slip angle, and distance to obstacle.
Recent approaches evolve around some optimality principle.
Indeed, some
studies have shown that human operators tend to behave in an optimal manner
such as to minimize an objective function [66], [67], [68], that takes into account
relevant aspects of the driving task.
This method relies on the assumption that,
while there may be many trajectories contained within a particular field of safe
travel, the optimal trajectory (with respect to a chosen optimality criteria)
represents the best case maneuver, and therefore can be viewed as a proxy for the
overall goodness of the field.
This optimal solution can be used to assess this
minimum threat posed to a vehicle navigating through the homotopic region.
From a practical perspective, if the optimal solution is associated with a high
57
threat level (as computed by a chosen metric) this suggests that the region is
undesirable, since there exists no other trajectories that have lower threat. So, such
a metric can be used to indicate the minimum threat of a given field of safe travel.
P
_LZ f
k=1
P
P
fR,30k + EZ Uu'Ruk+ E 1/XUTRAuAUk
k=1
k=1
J is an example objective function where p is the prediction horizon, u the sequence
of inputs and Au the input rate. The matrices Ri represent the weight given to
each of the considered variables. The optimal solution is the sequence of input
Uk
that minimizes this objective function J and that satisfies the constraints related to
geometrical or input bounds.
There are several implementation methods to find the optimal solution given an
objective function. They fall in two main categories: combinatorial (MPC, MIQP)
and sampling algorithms (RRT-based).
The Model Predictive Control approach
predicts the future vehicle state evolution and optimizes a set of inputs such that
this prediction satisfies constraints and minimizes the objective function [18], [19].
MPC handle explicitly environmental, performance and actuator constraints as long
as they are convex, which enables corridor navigation. When the constraints become
non convex, the model can be extended to Mixed Integer Quadratic Programming.
The second family of methods are sampling methods. In particular, lattice-based
approaches, sampled either in input space or state space are widely popular in motion
planning to find optimal path [31] and [30]. Each edge of the lattice is assigned a
cost, similar to the objective function, and a graph search can then be performed to
find the optimum.
The major drawback of this single representative approach is their reliance on an
ad hoc metric for evaluating the desirability of a candidate field. The great difficulty
lies in finding the best weight for all theses variables, not to mention that they are
often not homogenous and they need to be normalized before being incorporated in
the cost computation. Besides, these approaches can hardly capture the freedom of
control within a corridor and provide few information of the exposed risk if the vehicle
slightly deviates from the reference path.
58
2.5.3
Margin Approach
The last category of threat assessment methods attempt to characterize the
room for maneuver in each homotopy candidate.
One approach is to determine
whether the corridor contains at least one drivable path (and ideally many drivable
paths). This is a reachability analysis: the corridor is considered to be safe if the
planner can find at least one feasible path along it while considering both the
vehicle's dynamics and driver model [17].
This approach provides a manner for
determining the time of intervention, but provides only a binary assessment of
reachability (empty or nonempty reachable set), and is therefore limited in its
ability to compare the desirability (i.e. "goodness") of various candidate navigation
choices.
In principle, the more drivable paths a space contains, the more desirable that
space is, since it will be easier for the operator to navigate within it. This assumption
leads us to consider a more general margin approach. For each feasible homotopy
candidate, the planner computes a set of trajectories that covers well the relevant
area of the corridor.
The control freedom offered by the corridor is then derived
from these sets of trajectories. This approach is the main focus of this thesis. The
implementation of a lattice-based method is detailed in Chapter 3, and Chapter 4
describes how the threat metric is derived from the trajectories generated from the
lattice.
59
60
Chapter 3
Classes of Feasible Trajectories
from State and Input Lattices
Lattice discretizations were originally implemented for planetary rover navigation,
but they can easily be adapted to the structured environment of public roadways,
provided some small modifications [69]. Nowadays, the most common use of latticebased method is to induce a discrete graph search on a continuous state space while
respecting differential constraints on motion [70], [71]. Shortest path algorithms (A*
for instance) are then employed to find the lowest cost trajectory among the lattice.
In this thesis, the usage of the lattice structures is different. The purpose is not
to find the shortest path but to generate homotopy classes of trajectories in order to
estimate the room for maneuver in each field of safe travel. In this respect, the lattice
approach is very attractive for the homotopy framework. Indeed, as it is a samplingbased approach, each trajectory can be handled independently and assigned to the
homotopy candidate of which it complies with the constraints. It is a highly flexible
method that can handle complex scenarios and vehicle models, and can work with
both homotopy identification methods described in Chapter 2.
This chapter details the implementation of state and input space lattices and
discusses the advantages and drawbacks in either case.
In both approaches, the
discretization is two-dimensional: position and velocity for the state space and
steering and throttle for the input space.
61
3.1
State-Space Sampling
A state lattice is a structure where vertices that represent kinematic states of the
vehicle are connected by edges representing paths that satisfy the kinematic
constraints of the robot [72].
In the highly constrained environment of public
roadways [32], the vertices are placed in a regular pattern in the form of a grid that
fits the shape of the road, so that only states that are a priori feasible in highway
navigation are considered.
Traditionnaly, the construction of the lattice can be decomposed into two steps
[30]. First, paths are generated by connecting sampled endpoints using curvature
polynomials.
Second, candidate speed profiles are built for each individual path.
By combining the path edges with the speed edges, a trajectory set is obtained.
The method described in this thesis uses the same approach and applies it to the
framework of highway navigation with the lane structure and target regions.
3.1.1
Path Generation
Sampling of End Points
A vehicle actuated in curvature (steering) and speed (throttle) can be modeled by
the following four coupled, non linear equations:
J(t)
V(t)cos O(t), p(t) = V(t) sinO(t)
0(t)
=
r(t )V(t ), k(t) = u(t)
The vehicle state vector then consists of the position coordinates (x, y), heading
6 and curvature
i'.
The inputs are the speed V and the desired curvature u.
x = (x, y, 9, r)T
The sampling method for constructing the grid superimposed on the road is based
on the algorithm described by McNaughton in [31]. The road center line is used
as a reference for the construction of the whole lattice and is define by the same
four state vector, now a function of arc length or station s [x(s), y(s), 6(s), (s)].
62
We then define the grid points p(s, 1) with 1 being the lateral offset or latitude as
x(s, 1) = [x(s, 1), y(s, 1), 0(s, 1), r(s, 1)1 where:
x(s, 1)
=
x(s) + 1cos(6(s))
y(s, 1)
=
x(s) + 1sin(9(s))
6(s, 1) = 0(s)
r,(s, 1) = (r,(s) -' - 1) -I'(s) is the curvature of the path and 6(s, 1) = fo r'(s, 1) . To enumerate every node
from the grid, we define a linear mapping from discrete integers (i, j) to (s(i), 1(j))
s(i) = ai and 1(j) = 3 + -yj. The station is therefore monotonic increasing starting
from zero an the lateral offset is positive for nodes above center line and negative for
nodes below. An example of such a grid is shown in Figure 3-1 where the nodes are
plotted in cyan. The road is composed of the three lanes and number of samples for
the longitudinal and lateral discretizations are respectively 8 and 9.
Figure 3-1: Grid points on the road
Formulation
Once the endpoints are sampled, we use a common method [73] to compute the
paths that connect the nodes of the conformed lattice. In this iterative numerical
method, a path is defined as a cubic polynomial function of the arc length:
ri(s) = a + bs + cs2 + ds'
63
for which the parameters (a, b, c, d) can be found to define a path connecting
any pair of endpoints (x, y, 0, r,). Most work employs the same technique, and only
the order of the polynomial splines varies (usually cubic [31], quartic [30] or quintic
[74]). The requirements for the "smoothness" of the solution dictate the order of the
curvature polynomials. There are two sorts of paths to consider: ones connecting
pairs of sampled enpoints (cyan in Figure 3-2) and ones connecting the vehicle's
current state to one of the node (green in the Figure). In both cases, the same cubic
polynomial model is used to construct the paths.
For simplification, we express all coodinates in terms of initial posture so that
the initial position and heading coordinates are zero. We note x0 = (X 0 , yo,0,
(0, 0, 0, "o) is the initial state and
xf
o) =
= (xf, yf, Of, kf) is the terminal point the path
has to reach. Considering the model for the curvature, the initial equations can be
integrated and lead to the following expression of the state for any station s:
K(s) = a + bs + cs 2 + ds 3
b
8
0(S)
(s
c
2
d
)
=as + s + s3 + s4
4
3
102
X(s)
cos(O(s))
=
sin(0(s))
y(s) =
and the following constraints have to be satisfied:
r(0)
=o
x(sf)
= Xf
y(sf)
Yf
O(sf)
=
Of
I(sf)
=
rf
There are four parameters to estimate:
p
=
[b, c, d, sf] because given the
constraints, a is necessarily equal to K0. The previous state equations can be writen
in vector form:
x = f(p)
64
The system of equations can be linearized first order as follows:
Sufficient degrees of freedom to control the entire endpoint state (four equations
for four unknowns) implies that the Jacobian has sufficient rank to invert and we can,
in principle, solve for the parameters iteratively using:
_ap
Implementation of the Shooting Method
Initialisation
The first step is to initialize the parameters. Following [75], we use some heuristics,
based on an approximation of the observed average relationship between sf and the
total change in heading between the sample endpoints.
d = 0
Sf T
(
f
b=6
C=
3
of
) i
2
~5 [
f
2
s2
+4f
s
s
__
-(KO + 1f) + 6s
s
These heuristics have proven to be effective for initialisation.
However, in
replanning applications, the algorithm can be sped up significantly by reusing the
previous parameters from each cycle to seed the initial guess. The convergence is
faster, especially if the frequence of the planner is high since in that case, the
postures are in the same neighboorhood.
Termination conditions
The termination conditions depend on the requirement on the accuracy in the
destination posture. In this thesis we allowed a 1 mm error for both Xf and yf, a
0.1 rad for the heading error and finally 0.005 1/m for the curvature error. Theses
65
conditions lead to robust paths generation in the context of highway navigation while
maintaining a low computation cost since the average number of iterations ranges
from 3 to 5.
Forward/InverseSolution
The forward equations produce the state vector at any point of the curve given
the parameters (b, c, d, sf).
Numerical quadrature techniques such as Simpson's
formula are used to approximate the Fresnel Integrals since exact solutions are hard
to compute. At each time step, the distance from the computed endpoint to the
goal is computed.
If the distance is smaller than a predefined threshold, the
algorithm terminates.
Otherwise,
the inverse solution
is performed:
an
aproximation of the Jacobian using finite difference is computed and the new set of
parameters is obtained by multiplying the inverse of the Jacobian and the error.
The forward solution is then computed with the new set of parameters and the
algorithm repeats the process until termination conditions are met or the maximum
number of cycles is reached. Note that in some works, a symbolic differenciation is
favored over the finite difference approximation to compute the jacobian [31].
Figure 3-2 provides an example of a lattice with 3 sampled endpoints in lateral
and longitudinal directions. The green paths connect the vehicle's current posture to
the nodes and the cyan paths interconnect the pair of nodes.
10
0-
'000
0
10
so
20
40
F [in]
Figure 3-2: Generation of the edges of the lattice
66
W1
3.1.2
Velocity Profile and Trajectory Generation
Velocity Profile
Once the path edges are generated, candidate speed profiles are build for each
individual path. Several possibilities exist. In [31] for instance, speed profiles are
generated using forward methods by specifying the acceleration of travel. Here, we
favor an inverse method, also used in [30]. The speed is first discretized in a similar
manner to the position lattice and then a polynomial is generated to satisfy the vertex
constraints. Note that some accelerations may not be feasible due to the vehicle's
dynamics. Contrary to [30], the algorithm used in this thesis first checks if the two
sample points can be connected using a feasible acceleration before actually computing
the velocity edge in order to reduce computation time. In this context, a reasonable
estimate for the lower bound of deceleration is -1g and for acceleration is 0.5g. As a
matter of fact, the breaking power is stronger than the traction force and the velocity
profile should reflect this important dynamic observation.
Regarding the implementation, polynomial functions of the arc length s of the
following form are used:
v(s) = e + fs + gs
+ hs 3
2
A speed state can then be defined by the vector v = (s, v, a). The algorithm
computes every feasible path between pairs of sampled points, from (so, vo, ao) to
(s,, vi, ai). For each path, there are four parameters to dertermine e,
f,
g and h and
the corresponding constraints are vo, ao, vi and a1 . Except for the vehicle current
state, where vo and ao are obtained from the real vehicle sensors, ao and a, are set
to zero at every node. By setting so = 0, the parameters can be derived from the
following expressions:
e=V
f
=
ao
a,
v0
i-3-+3= -2aSi
Si
S
a0
a,
vO
h=
+
+2S
s 2 Si 2 i s3 s3
-
a0
67
v1
Si
v1
..........
.............
Figure 3-3 is an example of a velocity profile with nine sampled points for the speed
dimension. For consistency, the station discretization is the same as the one used to
build the road grid. As mentioned earlier, only paths that verify the acceleration
bounds are evaluated.
I
20....
.
U
.......
4-,
-1
4-
4.
S IM
s~m]
Figure 3-3: Velocity Profile
Trajectory Generation
Both paths from the lattice and edges of the velocity profile are functions of the
arc length s. We can therefore define families of trajectories by adding the velocity
component to each path stored in the lattice.
The final state is six-dimensional:
Xt (s) = (x(s), y(s), 0(s), K (s), v(s), a(s)). Trajectories are then evaluated at a higher
resolution, i.e. at not only on the grid points but also at discretized m stations
within the prediction horizon. To evaluate those trajectories, numerical quadrature
techniques such as trapezoidal integration of Simpson's formula are employed to
compute the local coordinates (x, y).
If Npaths depicts all travelling paths (all
feasible combinaisions of consecutive edges from the lattice) and Np,,eed the number
of authorized velocities profiles, then the total number of trajectories that the
algorithm can generate is Ntraj = Npaths x Npeed.
68
3.1.3
Application to Highway Navigation with Traffic
Latteral Acceleration Restriction
Although the contruction of the lattice is conformed to the shape of the road,
some trajectories generated may be unfeasible or very hazardous due to severe
curvature rate.
Indeed, except for the longitudinal acceleration that is bounded
when defining the velocity profile, other aspects of the vehicle's dynamics are not
taken into consideration during the construction of the lattice. In particular, the
lateral acceleration, which is a common metric employed to predict loss of control,
has to be analyzed after the construction step.
The lateral acceleration can be
computed at every sampled point of the trajectory. If the maximum value exceeds
one stability threshold, the trajectory is then deemed unfeasible or unsafe and is
disregarded during the threat assessment task.
Modification of the Grid with Target Zones
So far, the discretization of the state space was regular along the road. In the
homotopy framework described in the previous chapter, the sampling of the endpoints
can be slighlty adjusted to better synchronise with the location of the target regions,
which are goals the driver may want to reach. In the first Figure of 3-4, the enpoints
are sampled in a regular pattern within the prediction horizon. We can see that the
some of end points are located exactly at the same position of the vehicle, which can
substantially reduce the number of feasible trajectories.
One solution is to force the sampling of the nodes in the longitudinal direction so
as to fall into the target regions of the same vehicles (second Figure of 3-4). Note if
two vehicles are neighboors in terms of arc length, it is not relevant to create two sets
of nodes as they will be very close to each other. In his case, the vehicle that is closer
to the current host posture is dominant and the nodes are sampled so as to comply
with its associated target region.
69
4-
-2-
0
0
30
40
50
40
s0o0
40
s[ml
0
to
W03
S [ml
Figure 3-4: Modification of the grid to fit the current scenario
3.2
Input Space Sampling
The main drawback of the state-space lattice approach is the fact that the
dynamics of the vehicle is not taken into consideration while constructing the paths
connecting the nodes of the grid. The feasibiliy of the trajectories has to be tested
afterwards. In the input space approach, the trajectories are generated based on a
chosen vehicle model and the sampling of the input commands and are by
construction dynamically feasible.
In return, the constraints of the road are not
considered in first instance, and some trajectories may therefore depart the road
bounds.
Because of this limitation, input-space approaches have been somewhat forsaken
in favor the competing state-space implementation [32]. However, in this thesis, the
use of the lattice is not to compute the shortest path towards a specific goal as in most
motion planning problems. Trajectories from the lattice are employed to characterize
the room for maneuver in each homotopy candidate, which is directly connected
to the freedom of control. In this context, sampling the lattice in input space is
relevant.
Some methods, similar in spirit have beed developped for the DARPA
Urban Challenge [76]. This section details the implementation steps and explains the
70
asumptions to reduce the size of the lattice while ensuring dense coverage of space.
3.2.1
Vehicle Model
Lattice structures are flexible and efficient tools to generate feasible trajectories
and can easily accommodate any vehicle model provided the dimension of the input
space is reasonable as the the curse of dimensionality implies an exponential growth
with the number of inputs. Most vehicle model are indeed actuated by two inputs that
are the steering angle and the throttle (speed or acceleration). Only one of two model
implemented, the kinematic bicycle model, is detailed in this section for the sake of
clarity. During the simulation phase, in particular for the integration with Carsim
detailled in the last chapter of this thesis, the more accurate 4-wheeled Ackermannsteered vehicle was used. The associated equations of motion are detailled in the
appendices.
V
X
--
----
~~
--- - - - - --
Figure 3-5: Simple bicyle model
The bicycle model is a relatively simple mathematical model of a two-wheel inplane vehicle with two degrees of freedom, the steering angle 6 and the longitudinal
acceleration a,. The relevant variables are illustrated in Figure 3-5. The heading
angle or yaw angle is represented by the variable IF and 1 is the length between the
71
two wheels. Typically, I is close to 3 meters and 6 ranges from -/+ 0.1 rad in most
highway scenarios. The dynamics of the vehicle is given by the following equations:
1(t) = ai(t)
tan 6(t)
V(t) =V(t)
(t)
=
V(t) cos IF (t)
y(t)
=
V(t) sin T(t)
Once the sequence of inputs are specified within the prediction horizon, it is
straightforward to compute the trajectories by integration of the equations. These
sequences of inputs are precisely generated from the input lattice composed of a
steering and an acceleration or velocity profile.
V(t) = Vo + alt
'1(t)
=fo
x(t)=
V(t)tan 6 (t) dt
1
fJ V(t) cos TI(t)dt
y(t) = f V(t)sin I(t)dt
3.2.2
Construction of the Input Lattice
Steering Profile
The construction of the steering profile is similar to that of the velocity profile in
state-space discretisation. The same inverse method is used. The input space is first
discretized in a certain number of sampled points within the feasible bounds. Then a
polynomial is generated to satisfy the vertex constraints. Note that the polynomials
are no longer functions of the arc length s but the prediction time t. Incidentally,
we refer to the sampled point along time axis as "switching nodes".
The values of
the steering input at those switching nodes is chosen so that the input rate remains
smaller than the bound defined in the vehicle model
(0 <
max).
.
An edge of the steering profile is defined as 6(t) = a + bt + ct2 + dt3
Every node from the grid can then be defined by the vector I
=
(t, 6, 6).
The
algorithm computes every feasible path between pairs of sampled points, from
72
(to, 6o, 6o) to (ti, 61, 51). For each path, there are four parameters to determine a, b,
c and d and the corresponding constraints are 60, 6o,
61
and 61.
Except for the
vehicle current inputs, where 60 and 4 are set to the exact values, 60 and 6o are set
to zero at every node. This sampling method ensures smooth and continous steering
By setting to = 0, the parameters can be
commands from current set of inputs.
derived from the following expressions:
a
=0
b -=
c =-2
ti
ti
1
1
-3-+3
t2
t2
1
The following assumptions were made to build an efficient steering profile:
* The discretization of the prediction horizon is choosen so that all edges of the
steering profile are compatible with the steering rate limitations of the vehicle
" In most highway scenarios, the temporal discretization is the one used in
Figure 3-6, which allows the input strategies to change three times within the
prediction horizon, which is enough to perform most maneuvers from a simple
obstacle avoidance to a double lane change
Also, we observe the following:
" As one can expect, the curse of dimentionality applies to lattice structures and
the number of edges in the lattice is NN' where N6 is the number of sampled
points for the input discretization and NT the number of time steps within the
prediction horizon.
" The initial time steps in the sequence of inputs have more influence than the
final ones on the trajectory's shape: a small steering command at the begining
of the maneuver is more effecive that a more substantial action in the final
moments.
73
For those reasons, the nodes of the lattice are not exactly placed in a regular
pattern. As shown in Figure 3-6, fewer input choices are implemented at remote
times step than during the first moments. This trick allows us to reduce significantly
the number of trajectories to generate while preserving adequate coverage of the
corridors of navigation.
0.02-
0-
.
0
05I10
......
I
2
2.0
t [s)
Figure 3-6: Refined steering profile
Acceleration
/
Velocity Profile
The second component of the input-space lattice is the velocity or acceleration
dimension. Contrary to the state-space method in which the sampling nodes of the
position and velocity have to exactly coincide at the same arc length s, the constraint
is not mandatory for an input-space lattice. A fine discretization of the speed or
acceleration space is favored to a high number of "switching nodes" along the time
axis. Indeed, although it is relevant to allow the planner to compute a wide variety
of complex steering commands, most maneuvers are usually limited to steady
speed,
acceleration or braking phase. For this reason, the number of switching nodes is
usually limited.
Figure 3-7 displays two reasonable velocity profiles.
On the left
figure, no switching nodes are allowed; the velocity is monotonic for all edges. On
the right profile, one switching node is allowed
74
Figure 3-7: Two reasonable velocity profiles
Trajectory Generation
Once both the steering profile and velocity profile are computed, the planner can
extract all possible combinations of edges to define the feasible sequences of inputs.
To explore the lattice and identify all paths, a breath-first search algorithm similar to
the one used for the graph search of chapter 2 can be employed. For each sequence of
inputs derived from this lattice exploration, the planner computes one dynamically
feasible trajectory using the equations of motion of the vehicle model considered.
Figure 3-8 displays two examples of input-space lattices. The left plot represents
an arbitrary lattice in a unconstrained environment, for instance an exporation
robot operating at low speed. The right plot show a lattice applied to the highway
navigation task with a constrained environment (road edges with lane structure)
and high speed vehicles.
As expected, some trajectories leave the bounds of the
road as no spatial constraints are enforced in the construction of the lattice.
Figure 3-8: Example of input lattices
75
3.2.3
Conformation to the Constrained Environment
In state-space lattices, the dynamic feasibility of the trajectories has to be verified
afterwards. In input-space lattice, the planner has to check which trajectories verify
the constraints of the environment. More specifically, in the homotopy framework
detailed in Chapter 2, the constraints are even more restrictive with the addition of
a lane structure and target regions. In both identification methods, homotopies are
defined as some sequence of cells or actions that terminate in one of the target regions.
Consequently, the trajectories, whose purpose is to explore the corridor of safe travel,
have to reach one of the target regions within the prediction horizon (Figure 3-9 left).
In other regards, the input space lattice is dimensioned in such way to be
effective in low curvature highway scenarios. If the curvature of the road exceeds
some threshold, the lattice may not cover some relevant portions of the road. To
address this issue, the lattice is subjected to a transformation that is based on
properties of the road centerline.
An algorithm is employed to check (in a brute
force manner) that all trajectories remain consistent with input constraints and
stability vehicle bounds (Figure 3-9 right).
This case scenario is however rarely
encountered while driving on roadways, especially on highways. The scope of the
lattice usually allows to cope with reasonable road curvature situations.
Figure 3-9: Fitting the shape of the road
76
3.3
Advantages and Drawbacks
Useful Information for the Threat Assessment
The threat assesment task consists of evaluting the control freedom within each
corridor. In this respect, the input space approach has the edge over the state space
approach as the input information is directly stored in the lattice and is easily
accessible.
Trajectories are derived from sequences of vehicle input commands
instead of sampled kinematic states. As it is impossible to recover the inputs that
lead to a specific path in the state-space approach, the threat assessment can only
be performed in the acceleration space, which is directly mapped to the input space
though.
Computation Cost
The state-space implementation relies on a shooting method (inverse solution)
to compute the paths connecting the sampled endpoints. Although the convergence
is fast (usually less than five iterations), the computation time is greater than to
compute the input lattice.
Besides, if needed, the input lattice can be stored in
memory and re-used at every time step as it does not depend on the environment
constraints. Note that in this context, the algorithm detailed previously has to be
slightly adjusted as the initialization of the lattice is based on the vehicle current
input.
One possibility is to include several initial values for the inputs in the lattice.
Then at every time step, the planner can choose the closest choice to the real value
as initial node. The solution is less smooth than if the lattice was recomputed, but
it provides a robust method to skip the construction step. This is all the more useful
as the resolution of the lattice is high.
The benefit is however mitigated if the prediction horizon is long since the portion
of trajectories that leave the road edges increases. Also, if the curvature of the road
exceeds some threshold, the input lattice has to be shifted to ensure a good coverage.
77
In this case, another possibility is to store several lattices that correspond to specific
road curvatures to reduce the computation time.
Coverage of the Space
The main advantage of state-space lattices is the fact they are by construction
conformed to the shape of the road, which prevents from generating trajectories
that depart from the road edges.
In this sense, the state-space approach has a
significant benefit over the input-space approach.
However, the coverage of the
trajectories generated from the input lattice can still be better.
Indeed, in the
conformal case, many trajectories use the same edges they travel at different
velocities.
In the non-conformal case, if the velocities are different, then the
positions are necessarily different as low speed maneuvers allow more curvature than
high speed ones for a given steering command.
We can define an occupancy grid by constructing a grid superimposed on the
road. Each cell of the grid is considered occupied if one of the evaluation points of a
trajectory is located in the cell. In Figure 3-10, 50k trajectories were sampled in state
and input space. Even though some trajectories are ruled out in the input approach
because they leave the bounds, the coverage is denser for the reasons discussed. A
denser set of trajectories leads to a smoother estimation of the control margin and
limits the jumps induced by the discretization.
Figure 3-10: Occupancy grid: input-space (left) and state-space (right)
78
Table 3.1 shows a synthetic comparison of the advantages and drawbacks of state
space and input space lattice.
Table 3.1: Pros and cons of input space versus state space sampling
State Space
Input Space
+ Direct method
-
-
Shooting method
+ Memory storage possibility
Transformation if high road curvature
+ Conformal
+ All paths within bounds
- Multiple trajectories per paths
~ long predictions
- Only Acceleration information
- Non conformal
- Some paths out of bounds
+ Denser coverage
~ short predictions
+ Input and Acceleration information
79
80
Chapter 4
A Margin Based Approach to
Threat Assessment
The second stage of the high-level planner is to characterize the desirability of
each candidate homotopy that was previously identified. This task is called Threat
Assessment and provides crucial information to determine when the computer has
to take control of the vehicle and override the command of the human driver. As
seen in Chapter 2, several method can be employed to tackle this issue (geometric
considerations, single path representative...).
The threat assessment approach
described here relies on a metric that is based on the volume of the feasible input
space bounded by problem constraints, such as spatial boundaries or vehicle
dynamic constraints. The trajectories generated from the lattice allow to compute a
reliable estimation of the input space available.
4.1
Guiding Principle
The proposed margin-based approach to threat assessment relies on the
assumption that threat to a vehicle is inversely proportional to the available control
freedom, and therefore to the maneuverability within a candidate homotopy.
For
each candidate homotopy, the sequence of decisions from the decision tree or the
sequence of cells from a topological graph can be directly mapped to inequality
81
constraints in the vehicle's input space.
These inequality constraints yield
2-dimensional convex polytopes bounding the range of feasible vehicle inputs.
Essentially, if we can compute the volume inside this constrained region, we expect
that this will result in a rigorous metric to characterize the available control
freedom.
4.1.1
Room for Maneuver
The semi-autonomous system described on this thesis relies on the identification
and characterization of corridors of safe travel rather than on a single feasible path.
More specifically, the proposed approach presumes that the larger the control freedom,
the lower the threat posed to the vehicle. Figure 4-1 illustrates a potential highway
scenario including typical maneuvers. The host vehicle (blue car) is located in the
road center lane and approaches a slower vehicle navigating ahead. The driver has
several options :
" yellow homotopy: slow down and stay behind vehicle
" turquoise homotopy: go to left lane and overtake the slower vehicle
" pink homotopy: go to right lane (reduced width) and overtake vehicle
* green homotopy: overtake the vehicle from the left and come back to the center
lane
Some of these options may be safer than others. For instance, because of some
roadwork, the width of the right lane is reduced compared to the standard highway
width. Overtaking the vehicle from the right side therefore requires the human driver
to be more careful as a small mistake is more likely to lead to an accident than in
the left avoidance strategy. Likewise, the green maneuver requires good driving skills
since the operator has to accelerate to quickly overtake the vehicle and go back on
the same lane. A specific sequence of command has to be applied in order to safely
perform the maneuver. Finally, the desirability of the yellow strategy depends on the
82
distance between the two vehicles and the relative speed of the lead vehicle. As a
matter of fact, if the lead vehicle is remote and just slightly slower than the current
vehicle, the human driver only needs to apply a small pressure on the brakes and has
some relative margin with respect to amount of pressure and time of intervention.
On the contrary, if the lead vehicle is close to the host and suddenly brakes, then the
human driver has to apply a strong an immediate pressure on the brakes if he wants
to stay behind. In this case, a steering avoidance maneuver may be safer and offer
more margin as the required action on the brakes is less critical.
Figure 4-1: Road scenario example
All these maneuvers are defined within the prediction horizon, which is usually
equal to the range of the onboard sensing. The associated control freedom is a function
of time and can be evaluated at discrete time steps tk. Figure 4-2 schematically shows
the evolution of the control margin for every homotopy candidate of the previous
example. More precisely, it displays the bounded regions at three instants: initial
time step to, intermediary step to +
h
and the final prediction to + Th. The colored
ovoids represent the convex polytopes bounding the range of feasible vehicle inputs
and the dotted border the maximal bounds for both inputs due to physical limitations
of the vehicle.
With regards to the yellow maneuver, the associated region of input space is
constant over the prediction horizon: the driver has to remain in the center lane and
keep actioning the brakes to slow down to the speed of the lead vehicle. The volume of
the bounded region is relatively small, indicating the leeway for the driver is limited.
83
The turquoise homotopy presents the largest control freedom. Initially, the driver
has to initiate a left maneuver to perform a lane change. The bounded region is thus
concentrated in the left half plane. As the end of the maneuver, the driver needs to
counter-steer in order to align with the direction of the road and the bounded region
therefore shifts to the right half plane. From a velocity perspective, the vehicle can
navigate at the same speed as no obstacle stands in the way. The ovoid is aligned
on the center axis and the human driver is allowed to brake or accelerate reasonably
as he has the freedom to adapt his speed during the following time step to reach the
target region.
The pink homotopy is the symmetric maneuver and the evolution of the control
margin is very similar to that of the turquoise one. The only difference lies in the
more narrow width which results in a smaller volume of the polytope.
Finally, the green homotopy candidate requires a specific sequence of input with
little room for maneuver to be performed and the ovoid is concentrated around the
optimal trajectory. The convex polytope is in the upper half plane because the vehicle
has top speed up to perform the double lane change. The steering sequence is also
very precise: left to go to the left lane, right to fall back on the center lane and a
final left command to align with the road heading angle.
Throttle
Throttle
:Steering
Steering
to
Throttle
to + T
2
iern
tO+Th
Figure 4-2: Evolution of the control freedom within prediction horizon
From an implementation perspective, computing the exact volume of those
polytops is a very complex task as there is no analytical formula to derive the
84
bounds. For this reason, the technique proposed in this thesis relies on the analysis
of the trajectories sampled from the lattice.
If the density of the coverage is
sufficient, it allows to compute a good estimate of the volume of the bounded
region. Several techniques can then be employed to transpose the set of points from
the trajectories into a two-dimensional objects. Two main tools are employed here,
the convex hull of the set of points, and the Chebyshev ball (which is the largest
topological ball inscribed in the hull).
4.1.2
Notations
In this paragraph, we introduce the notation used in the rest of the thesis. We
note H = (hi, h 2, ...,
hnh)
the set of homotopy candidates identified in first instance
by the planner, where nh is the total number of homotopy candidate. Each candidate
hi is defined by a sequence of actions:
" Static graph search: hi
* Decision tree: hi
=
=
( 6 i,1,
(ci, 1 , ..., Ci,n, Ti)
...,
6
i,Nv, Ti)
(ci,11 ... , ci,n) is the sequence of cells composing the corridor, ni the number of
cells in the sequence and Ti is the target region terminating the ith homotopy. In the
decision tree approach, 6oj indicates the decision taken at the jth obstacle. Figure 4-3
illustrates the notation of a particular homotopy in both approaches.
We can then associate a margin metric mi to each corridor hi. The control freedom
is a function of time and takes discrete values within the prediction horizon mi,t, with
tk =
to + kAt ranging from to to tf = Thorizon. The final metric used to characterize
the threat is a normalization of this control freedom (euclidian norm, minimal norm,
weighted average...): mi = q(mi,to, ... , m,tf,).
The planner searches the lattice to identify trajectories that feasibly conform to
each unique homotopy candidate. In some cases, a homotopy candidate contains no
feasible trajectories, and thus the associated navigation decision is said to be
infeasible.
Ni is the number of feasible trajectories in the ith homotopy.
85
The
Cell Decomposition
Decision Tree
1
6
hk =(ckI,ck ,2tk)=(2,5,3)
hk =(6 k ,a,
2
,Tk)= ('left''right',3)
Figure 4-3: Definition of a specific homotopy in both identification methods
associated set of trajectories is called
4'j
and each trajectory from the set is referred
as ?Pi,1, with 1 ranging from 1 to Ni.
associated
with each
trajectory
The value
are
evaluated
4'i,l(tk).
at
The states and inputs
discrete
time
steps
tk:
xi,i = [xi,1, ye,](tk) and ui,i = 64; as,](tk).
Finally, instead of considering each trajectory 'z independently, we can consider
the scatter plot formed by the union of evaluation points of the trajectories from a
single set at a given time step tk:
1/i,1:N~
tk) (in state space or input space). In this
context, the volume of the convex hull circumscribing the scatter plot is denoted Vhsul
and the volume of the Chebyshev ball included in the hull is Vcheb. The Figure 4-4
shows the equivalence between the scatter plot in state space and the dual in input
space.
State Space
Input Space
Throttle
------------------
------ --------------
--- - - --- --
------------------------------ ------
SteWrQ
------------...............
............
tk
Figure 4-4: Definition of a specific homotopy in both identification methods
86
4.1.3
Trajectory Sorting
The first step towards computation of the control freedom is sorting of the
trajectories generated from the lattice according to their membership in a particular
homotopy.
For this purpose, the employed algorithm depends on the homotopy
identification method chosen in Chapter 2. Indeed, both homotopy representation
store the information in different forms.
Static Graph Search Approach
In this approach, one homotopy is represented as a sequence of cells whose
boundaries are exactly known at every time step within the prediction horizon. The
trajectories can also be evaluated at the same time steps for consistency.
The
algorithm then works as follows: at each time step, the planner identifies which cell
the evaluated points belong to. As the cells can be described by polygons, this task
boils down to a point-in-polygon (PIP) check which is a common problem in
computational geometry. Efficient algorithms such as ray casting algorithm allow a
quick computation of the answer. At the end of the process, every trajectory can be
defined as a sequence of presence in one of the cells (cf Figure 4-5). Note that the
last evaluated point is compared to the target region and not the whole cell in
accordance with the homotopy definition. Any repeated cell in the sequence is then
removed to bring up the sequence of transition from one cell to another.
This
sequence is finally compared to those of the homotopy candidates. As a homotopy is
uniquely defined by it sequence, the sorting is straightforward from this point.
Decision Tree Approach
In this approach, one homotopy is defined as a sequence of actions. Except for
the terminating constraint of the target region, the boundaries of the corridor are
not exactly known. For each trajectory, the planner needs to check the action taken
at each obstacle. The position and velocity of the other vehicles are known at every
time step the trajectories are evaluated. In order to determine the action taken with
87
N feasible Trajectories
C1 C-
C1- 1- C
-C
1- C
1- C
1- C]
1
l- l - Cl - -Cl -C-C1
-
I
C,
C2 -C2-C2
C,- I - C, --
C - C, - C
C1 -
Ci - C1
21 -1l-
C2
32
H homotopy candidates
2-c2 -
- CW
j
C3 -*~C
C
2
C2 - C 2 - C 2
C 2 - C2
C3 -C, -3
-
C3 - C3 -
3
C1
C3-
-C
3
C3 - C C3 - C 3 - C- C3
C3 -
1
C3
-C3 -C
C- C3
C
3
Cl
-Cl-c 3 -C 3 -C 3 -.- c
C - @ C 2 C - C - C1 C1 -C 1 - C1
C--CfC
C2
2
C2
--
> C2 --> C3
*C
C
->
C 3 --
C
sequence of cells
T sampled time steps
Figure 4-5: Illustration of the sorting algorithm
respect to one vehicle, the sorting algorithm searches the time step at which the host
vehicle is closest to the obstacle. The strategy identification is performed at this
particular time step according to the diagram introduced in Chapter 2 (Figure 2-17).
In Figure 4-6, this instant is encircled in red and the host vehicle bypasses the slower
vehicle from the left side. The process is repeated for every vehicle and the trajectory
is classified in the corresponding homotopy class.
Figure 4-6: Sorting based on minimal distance to vehicle
Figure 4-7 shows an example of a three lane highway with two static obstacles.
The lattice is sampled in input space and the static graph search is employed to
identify the homotopy candidates.
In this example, only five homotopies contain
feasible trajectories. Two of them correspond to a simple lane change, two others
involve a double lane change and the last one is a braking maneuver.
88
M
-
---- __________---o
ic
20
30
40
50
0
60
5
-
10
0
20
30
--------
---
40
50
5
20
10
30
40
5-
M
0
60
60
50
20
10
30
40
50
60
M10
0
20
30
40
50
60
Figure 4-7: Trajectory sorting
4.1.4
Input Space versus Acceleration Space
The threat assessment approach described here relies on a metric that is based
on the volume of the feasible input space bounded by problem constraints. When
the lattice is sampled in input space, the input information is directly stored in
the trajectory description.
The planner can therefore estimate the volume of the
polytope without further computation. On the contrary, the vehicle's dynamics are
not taken into consideration when sampling the lattice in state space. The feasibility
of rendered trajectories is tested afterwards, looking for example at the maximal
lateral acceleration, but the sequence of inputs can't be recovered.
In this case, the control freedom can be characterized in acceleration space
rather than input space. There exists a direct mapping between the inputs and the
acceleration so the two approaches are equivalent. The main difference is that the
margin is velocity dependent in this case: a given steering command yields a greater
lateral acceleration at high speed than at low speed.
This observation has to be
taken in consideration when using the threat information.
Note that the threat assessment can also be performed in acceleration space when
the lattice is sampled in input space.
89
4.2
Metrics to evaluate the Threat
This section tackles this issue of the choice of the margin metric with the
motivation to come up with a threat information that is as close as possible to the
human perception for better synergies with the controller.
The norms are first
detailed and then some examples derived from highway scenarios illustrate the
proper functioning of the method.
4.2.1
Convex Hull versus Chebyshev Ball
Recall that, at each time step tk, all trajectories from a set Oi can be evaluated in
the two dimensional input space or acceleration space. The corresponding set of points
is denoted Xi,k =
(ai,l(tk),
lateral acceleration and
/i,I(t)),
1 E [1 : Ni]} where a is the steering command or
# is longitudinal
acceleration. One possible approximation of
the volume of the feasible input space bounded by problem constraints is the area of
the convex hull of the set Xi,k. The convex hull of a set X is the smallest convex set
that contains X. With this approach, any points sampled within the hull is assumed
to verify the input constraints of the homotopy class at a given time step. Finding the
convex hull of a finite set of points in the plane is one of the fundamental problems
of computational geometry and efficient algorithms exist to derive the set with a
complexity of O(nlogn) [77].
Another metric that is relevant to consider is the volume of the Chebyshev ball,
that is the largest ball inscribed in the convex hull previously computed. This metric
is derived from the computation of the Chebyshev center, which is a famous convex
optimization problem [78]. The Chebyshev center maximizes the distance to the edges
of the convex hull. Since this particular point is the farthest from the boundary, it
can be considered as the most conservative navigation option in the sense that a small
variation of the convex hull in any direction is likely to contain this point. The radius
of the ball is proportional to the input margin within the corridor. Figure 4-8 displays
the convex hull and Chebyshev ball for an arbitrary set of points.
From a fundamental point of view, the area of the convex hull describes the global
90
Figure 4-8: Chebyshev ball inscribed in the convex hull
control freedom at a particular time within a corridor. It contains no information
regarding the distribution of this margin along the two input axes. Thus, a narrow
corridor with no velocity restriction can lead to a relatively large margin estimation.
On the other hand, the Chebyshev ball yields the minimal margin of both directions.
In the narrow corridor example, the limiting factor is the width and the resultant
margin metric is accordingly small. Any of these two metrics provide reasonable
estimation of the control freedom but the Chebyshev metric may be more suitable to
the threat assessment from a robustness perspective.
4.2.2
Norm Comparison and Weighted Average
Both the Chebyshev ball and the convex hull metric allow to compute the
control margin at a given time. The next question is how to compute a single global
metric that characterizes the threat within the prediction horizon, by merging the
information derived at each sampled time step. Simple approaches include average
norm or Euclidian norm, in which each time step is assigned the same weight for the
computation of the global metric. Depending on the threat assessment model used,
more appropriate normalizations can be employed.
One possible model is to
presume that the human driver only considers the minimal margin as relevant. For
instance, if there in a pinch in the middle of the corridor, the margin computed at
the time step corresponding to the crossing of the pinch dominates the computation
of the global margin. In this case, the infinity norm is appropriate.
Another class of norms addresses the issue of the preference of the driver for
91
present or short term actions. Indeed, similarly to the concern while constructing the
lattice, the first input command have a stronger influence on the global trajectory
than later ones.
For this reason, it appears relevant to attribute more weight to
the first margin computed during the earlier time steps. Possible mathematical laws
include linear decrease Wk ~ Wmax - a.k and exponential decrease; Wk ~ wmaxek-
Figure 4-9 presents three possibilities for the choice of the norm: unbiased average
(left), linear decrease (middle) and exponential decrease (right).
linear
average
exponential
0 .1 --- - -- -- - - --- -- - - --
0.04--.
.
. . .
-
0.08!-
0.09
0.07
-
.....
.....
0.06e 0.06;
. . .
.
.
.
.
- --
0.05:
-
- -- --
---E
M
004:
0.03-
0.015
....
0.06
....
0.06
....
0.04
..
0.03.
.. . . .
...
... .
.
. .. .
.
0.03-
0.07
0.02-
0.01
0.02
0.01;
0
0.5
1
1b5
t [5]
2
2.5
3
0
0.01
0.5
1
1.5
0
2
2.5
t Is]
3
0
0.5
1
1.5
2
25
3
t f5]
Figure 4-9: Different norms for the normalization of the threat margin
4.2.3
Simulated Scenarios on Highway
Static Obstacles
The first example is the same as the one introduced in the previous chapter, i.e.
travel on a four lane road with two static obstacles present in the second and third
lanes. The vehicle of interest is originally located in the third lane. In Figure 4-10, the
center of each disc corresponds to the possible location of the vehicle in the corridor
at a specific time step, and the radius is proportional to the computed freedom of
control.
For simplicity sake, only one representative of each set of trajectories is
plotted. This feasible path from the set corresponds to the location at the Chebyshev
center of the convex hull. Although the value of the metric assessing the margin of
control is time varying, the area of the discs of the same homotopy are here shown as
92
a constant (computed as the average over the entire horizon) to improve the clarity
of presentation.
6-------------------
-----------------------------
Figure 4-10: Homotopy candidates and associated margin
Clearly, the blue and purple homotopies represent fields of travel with the greatest
maneuver freedom.
As expected, the green strategy is the most hazardous as it
requires swerving between two obstacles that are near each other. The two other
choices appear less desirable due to a stronger restriction of the input space: strong
deceleration to stop behind the obstacle for the yellow homotopy, and a severe steering
maneuver for the red homotopy (to bypass the top-most obstacle on the left).
Figures 4-11 and 4-12 display the normalized input profiles for each homotopy
candidate. For instance, the blue corridor offers a large steering freedom all along
while the red corridor requires a sharp left turn followed by a strong counter-steering
to align with the road direction. The yellow homotopy is similar to the red one but
involves a single lane change and therefore offers more steering freedom. With respect
to the throttle input, most candidates offer a similar control freedom, except for the
yellow option that requires a strong deceleration at the beginning of the maneuver
to ensure collision avoidance. On the contrary, the green homotopy requires at least
a constant speed at first to ensure that the host vehicle can navigate in between the
two vehicles and reach the target region within the prediction horizon.
93
0.-
~o .05
0
0.5
....
-
.......
-
-
-as5-
1
15
2
25
3
0
0
0.....5
3
2.
-
-
-051
0
-
t[S]
0.5
1.5
2
2.5
3
2
2.5
3
2
25
3
2
2.5
3
-
t [s]
0.5
1
- -
0.5- --- -
1.5
2
3
25
05
0
15
0.5
t [s]
-
0
-a
0.5
0
1.5
1
2
3
2.5
t[s]
Figure 4-11: Normalized steering input for all homotopy candidates
0 .4 --
--
.-..
.--.
.-..
-----------..
- --
-0.2 t
0.4
0
0.5
1
1.5
2
3
2.5
2
t[s]
0.4
02 L
-- . . . . .... . . . ..-.---.-..
-.0_
-0
G9 e ----
-0.
0
0.5
1
1.5
t[sJ
2
2.5
- -
-
1
e-6
15
t [S]
0.4
-
M) -0.20F2
0.5
-
a)
---
3
2
-0.2
-0.A
0
0.5
1
1.5
t [s]
a)
0
0.5
1
1.5
2
2.5
3
t[s]
Figure 4-12: Normalized throttle input for all homotopy candidates
Figure 4-13 displays the computed overall margin considering either the area of
the convex hull (top) or the radius of the Chebyshev ball (bottom) for various norms
and weighted average. In this scenario, all metrics yield a relatively similar hierarchy
regarding the degree of control freedom afforded by each homotopy candidate. The
average norm and Euclidian norm yield similar results, while minimum norm tends
94
to favor the red option compared to yellow and green ones. With respect to the
metrics that involve a weighted average, synonymous with a preference for the first
time steps, the gap between the two most desirable candidates and the remaining
ones is increased. In the three most hazardous corridors, the restriction on the input
command is stronger at the beginning of the maneuver and is somewhat relaxed once
the maneuver is well underway. Again, this is due to the fact that the initial input
commands are decisive and mostly determine the global profile of the trajectory.
On the other hand, the Chebyshev metric also tends to increase the difference
between the two most desirable homotopy candidates and the next two, but for
different reasons. Indeed, as stated earlier, the Chebyshev metric depends on the
minimal margin in both input dimensions, whereas the convex hull metric relies on
the global volume, independent of the distribution.
In other words, homotopy
candidates four and five have a large margin in both inputs whereas candidates one
and two have a relatively comfortable margin only in one direction (either steering
for candidate 2 or throttle for candidate 1). It results from this brief analysis that a
weighted average combined with the use of the Chebyshev ball is a well-suited
metric for a conservative approach to the threat assessment, in the sense if focuses
on the initial input commands and the minimum control freedom in both axes.
95
Average Norm
eo
Minimum Norm
Euclidian Norm
25
60
so
20-
Go
15
~40
940,
10
20
20
0
1
2
3
5
4
1
Hlomotopy Candidate
3
2
4
0
5
1
Hornotopy Candidate
Unea Decrease
2
3
4
5
Homotopy Candidate
Strong Exponential
Sinall exponential
0
50-
so
50-
40
40-
40-
20
230
20
20
30
2010.
011
1
2
3
4
5
Homotopy Candidate
1
Average Normn
2
3
4
5
Homnotopy Candidate
1
50r
3
4
5
Euclidian Norm
Minimum Norm
0
2
Hoinotopy Candidate
70
10
40
.9
320
40
2D0
130
10
20
0
1
2
3
4
5
Homotopy Candidate
1
12
Lnear Decrease
50
2
3
4
5
1
Homnotopy Candidate
Sinall exponential
3
4
5
Strong Exponential
40
50
40,
2
Hoinotopy Candidate
4020-
~30.
~2D
~20
120
i2010
10
a
1
2
S
4
Homotopy Candidate
5
1
2
3
4
Homotopy Candidate
5
1
2
3
4
5
Homotopy Candidate
Figure 4-13: Comparison of norms, Top: convex hull, Bottom: Chebyshev ball
Dynamic Obstacles
This second example involves a more complex scenario that includes dynamic
obstacles, lane merging and a lane-shifting vehicle. In this scenario the fourth lane is
being eliminated, forcing the vehicle in the extreme right to merge to the third lane,
96
which is the current lane of the host vehicle. As in the static case, the homotopy
candidates are displayed along with the associated control margin. We here assume
perfect knowledge of the state evolution of the dynamic obstacles.
In the purple
case, the host vehicle travels straight and accelerates to pass ahead of the vehicle
in the fourth lane, before it merges into the third lane. In the turquoise navigation
strategy, the host vehicle brakes to allow the other vehicle to merge in front. The
green homotopy candidate offers the largest margin and corresponds to the case where
the vehicle merges to the second lane to avoid the merging vehicle entirely. The red
candidate offers comparatively little control freedom. In this scenario, as one of the
lead vehicles is changing lane, the decision tree approach is employed to identify all
homotopy candidates.
4-w
Y~
--~~-------
-----
x
[ml
Figure 4-14: Homotopy candidates and associated control freedom
Similarly to the previous example, Figure 4-15 displays the normalized input
commands for both steering and throttle.
The turquoise corridor offers a large
steering margin but requires a strong brake at the first instants in order to slow
down and allow the other vehicle to merge in front. On the contrary, the purple
corridor requires the vehicle to accelerate so that the other vehicle merges behind.
Besides, although the target region is located in the same lane, the host vehicles has
to perform a small lateral maneuver in order to avoid collision with the merging
vehicle which is coming from the right side. As the second lane is totally free from
vehicles, the green homotopy offers good margin both in steering and longitudinal
acceleration. Finally, the red candidate involves a sharp left maneuver to cross two
97
lanes coupled with some deceleration to merge behind the vehicle navigating within
the target lane.
05-000
-
-
-
0
.
..
-.-.
--.
-
0, -
0--
-0.5
0
0.5
1
1.5
2
25
-0.5
3
0
0.5
1
1.5
t [s]
2
2.5
3
2
2.5
3
t [s]
0-5;
0.5
Af
C
0,
0
0.5
1
1.5
2
2.5
-0-5
0
3
0.5
1
1.5
t [S]
0.4
t [s]
..--6-6, ----.
---------..-- ...- ....... .-..-.-.-
0.4 -..................
- 0) e e e-
a,
-
0 -0.2
-C
-0.8
0
0.5
-
1
1.5
a,
- -%-
2
25
-0.2-
-0.8
3
--------
0
0.5
1
1.5
t [S]
0-4 ..---
---- --.-..
--- ..
...
...
..-..
...
..
04-............G..0......
a,
8,
2
2 -0.2 -....... . ........
-C
-0.8
0
0.5
. -.
----... -..
-..
.....
1
1.5
2
2.5
3
t [S]
2
2.5
....-..
-'
3
-0.8-........... .....
0
0.5
t IS]
.......
1
4
-
0'-6.0...6.o
--.....
-
J................... .......
1.5
2
-- -
-
-0.5 L---------
-
0
VS)
I............. I
2.5
3
t [s]
Figure 4-15: Normalized steering and throttle inputs for all candidates
4.3
Comparison with Minimal Cost Approach
At this point, it is relevant to compare the threat information derived from the
margin metric to that of more traditional approaches with a single representative
such as the minimal cost path [18]. In that case, the minimal threat in each corridor
is assumed to be directly correlated to the cost of the optimal single path. In lattice
methods, the lowest cost path is traditionally derived from a graph search (A*)[72],
since each edge of the graph can be assigned a cost.
In our approach, sets of
trajectories are generated to explore the control freedom and evaluated at discrete
98
time steps within the prediction horizon. The minimal cost trajectory can then be
found as the one minimizing some discrete objective function.
4.3.1
Definition of the Cost Function
The first step of such approach is to build a cost function taking into account
relevant aspects of the driving task such as the input stress, slip angle, lateral
acceleration, relative speed... It is usually in the following form:
P
J=
where
/k
Z
k=1
P
P
R/3k + E _UT RuUk+
k=1
:
AU RAuAuk
k=1
is a vector containing some relevant states of the vehicle,
Uk = (U1,k, U2,k)
is the input vector (steering and throttle), Auk is the input rate vector with k ranging
from to to tf, the prediction horizon. The matrices Ri are diagonal weight matrices
and the same weight is attributed to each element of the diagonal (homogeneous
within the prediction horizon).
Another formulation of the objective function is to separate the N distinct sources
of threat that are considered relevant:
N
J
=
z wici
With ci is a threat source (lateral acceleration for instance), normalized along the
prediction horizon, and wi is associated weight. We can derive this formula by noting
P
that wici = 1
[R4]i,Ak. In addition, the weights can be chosen so that their
k=1
N
sum is equal to one:
Z wi
1.
For each trajectory we can define static and dynamic costs to evaluate the safety,
comfort, behavior and efficiency of the resulting maneuver.
Each trajectory is
evaluated in p sampled points within the prediction horizon. Some relevant threat
sources with their expression are listed in table 4.1.
Then, for each homotopy candidate, the planner determines the minimal cost
trajectory from the associated set of feasible trajectories. This representative serves
a reference for the estimation of the threat which is assumed to be proportional to
the cost.
99
Table 4.1: Elements of the cost funcion
Cost
Cst
Formula
P
Z
Physical sense
Category
U1,k
steering effort
efficiency
U2,k
throttle effort
efficiency
steering rate effort
comfort
throttle rate effort
comfort
kinetic energy
efficiency
k=1
P
Cth
k=1
P
Cstd
L
AUl,k
k=1
Cthd
LAU2,k
p
k=1
p
k=1
P
Cay
Z
ay,k
lateral acceleration
safety
L
ax,k
longitudinal acceleration
comfort
slip angle
safety
lateral lane offset
heading angle offset
behavior
behavior
k=1
p
Cax
k=1
P
cslip
Z
rk
k=1
4.3.2
Coff
o(p)
Cyaw
b(p)
Cost Comparison
In this section, the margin and the minimal cost approaches are briefly compared
as in to the two previous examples.
The goal is to show that the margin metric
is generally more robust and homogeneous when the single representative method
sometimes fails to address important issues and is highly dependent on the choice of
the weights.
Merging Inhomogeneous Threat Sources
As seen earlier, the estimation of the control freedom is relatively robust toward
the choice of the metric employed.
The discrepancy between the most and least
desirable candidates is usually more pronounced when using the Chebyshev radius
than the volume of the convex hull, but the global hierarchy is similar.
In the minimal cost approach, the results of the threat assessment is very sensitive
100
to the choice of the weights attributed to each source of threat in the objective
function. Although inverse methods can help [79], [80], it is often hard to define an
objective function that is truly representative of the behavior of a human driver or
to the real threat posed to the vehicle.
Figure 4-16 shows the cost of the homotopy candidates for the two previous
examples. On the left is recalled the estimation of the margin for reference. On the
right, three objective functions are analyzed: in the first one, all the weights are
equal, in the second, c, is multiplied by three (focus on the speed) and in the last
one, cay is multiplied by five (focus on the lateral acceleration for safety issues). The
computed threat varies greatly in the three cases as expected.
Cost Metric: smaller
Margin Metric: larger = better
Eqiml wagifa
45
jFwC
=
an VW
better
Facnsan Wftrd accdWrgon
B
S5
50
IHI
j40.
0
0
12 3 4
11
0
0
10
48
Equal we ts
Focus on speed
Focus on latra acceWaron
40,
120
ii
Homctopy Candidde
1234
Horatopy Candidate
1234
1234
HfMn
Candidate
Ho:otoy Candidate
Figure 4-16: Threat Assessment for various cost functions Top:
static example,
Bottom: dynamic example
Sensibility to Uncertainty
Another drawback of the lowest cost approach is that it can hardly capture the
control margin and is therefore more sensitive towards uncertainties. In the static
case for instance, the green corridor is arguably the most hazardous in the sense it
101
offers little control freedom. Depending on the choice of the weights, the minimal cost
approach may not take into account this threat since the maneuver doesn't require
a hard brake or a strong lateral acceleration.
Similarly, in the dynamic scenario,
the purple maneuver is relatively complex and doesn't offer much control freedom.
Nevertheless, the lowest cost approach is likely to ignore this fact as the related
optimal maneuver doesn't require much input effort.
Consequently, a small error on state estimation of the obstacles can lead to collision
when considering the optimal approach as the optimal trajectory can come close to
the obstacles and road edges. On the contrary, the margin approach yields more
robustness as the safest candidate is the one offering more margin.
In this case,
the safest and most certain trajectory would be the one using the Chebyshev center
as input command. As a conclusion, the margin approach seems both more robust
and less model-dependent and is well suited for autonomous and semi-autonomous
applications.
4.4
Application
to
Decision
Making
For
Autonomous Driving
Although the main purpose of the margin metric and the homotopy formulation
is to introduce a better framework for shared control between a human operator and
the computer, the general approach is also well suited for navigation in constrained
environments such as highways or smaller roads. At each time step, the planner can
perform the threat assessment as described in this chapter and choose the safest
corridor.
Once the most desirable homotopy is identified, the planner needs to
compute the input command to feed the controller.
There are different ways to compute this input. One option is to search for the
minimal cost trajectory within the corridor and keep the first input from the
sequence generating the trajectory.
This approach is similar in principle to the
MPC formulation developed in [20] In this case, the input is chosen so as to
102
minimize an objective function and ensures minimal lateral acceleration or slip
angle.
Another option is to compute the Chebyshev center of the convex hull
associated with the corridor at the first time step.
This input is not necessarily
optimal but it is the most conservative and offers most robustness against
uncertainty with respect to obstacle positions and sizes.
Figure 4-17 displays a simulation of an autonomous vehicle navigating in a
highway. The reference speed is set to 20 m.s-
1
for the host vehicle (blue car) but
the other vehicles navigate at a slower speed (15 m.s- 1).
In this example, the
bicycle model is used for the vehicle model and the input bounds are -/+ 0.1 rad
for the steering angle and -8/ + 4 m.s
2
for the acceleration.
The width of each
lane is 4 meters and every vehicle is assumed to be 2 meters wide and 4 meters long.
The length of the simulation is 30 seconds, divided into six sequences of 5 seconds
for representation.
Because the other vehicles are slower, the host vehicle has to change lane to
overtake them when the option is available. The planner manages to safely guide
the autonomous vehicle amongst the surrounding traffic, and keeps it within the
lane edges when no special maneuver is required. The computer fulfills its role and
the described approach is therefore suited for highway navigation with a constrained
environment, dynamic obstacles and a rigid lane structure.
103
10
5
---
0
-
-
- - --
~
- -..-
- - -..
-..--
mam
-
"
-5
40
50
60
-
-
70
80
90
100
"
110
"
" "" ""
120
130
t=0-5s
140
105-
0-
140
- - - - - - - - - - - - - - - - - - - - - - - - -
t=5- 10s
150
160
170
180
190
200
210
220
-
-
-5 L:
-----
-------.....-
-L-TTIT
24(0
230
10
10
-10
240
250
0- - -
260
-
270
-
280
290
300
310
- --- - - - - - - - -
320 -
.
-
-.......-...-
330-
t-=10-15s
-34(
-
....
---------
5
t= 15
340
350
360
370
380
390
400
410
420
430
-20s
44
....-...--..
- - -10
44
0
450
----
- - - - - - -
460
470
----- ...-
-
--
--
-
--
t =20-25 s
-
0
-
10
480
490
500
510
520
530
540
5
- - - - - - - - - - - - - - - - - - - - - - - - - - - -
-------------------------5jj ------------ M
1
1
1
I -1
_in
'940
550
560
570
580
590
-
10
t =25-30 s
-------------1
600
1
610
. I
620
I630
k
640
Figure 4-17: Simulation of a highway scenario. The host vehicle (blue) navigates
through traffic with the Chebyshev center as input
104
Chapter 5
Better Synergies Between Driver
and Control System
In this last chapter, two reasonable intervention laws are described for driving
assistance that arise from the homotopy framework and the margin-based approach
for threat assessment described in the previous chapters.
The goal is to build a
transparent and unobtrusive active safety system that ideally operates only during
instances of significant threat.
It should preserve the driver's full control of the
vehicle in low threat situations but apply appropriate levels of computer-controlled
actuator effort during high threat situations.
In addition, the semi-autonomous
system conveniently finds a trade-off between safety and human attention as long
and frequent interventions can distract his/her focus on the driving task.
First, the evolution of the threat in each homotopy candidate in canonical
scenarios is analyzed.
Based on this analysis, two approaches to the intervention
process are proposed. The first one relies on the assumption that human drivers
tend to always travel in corridors that offer a margin greater than a specific
threshold.
The second one relies on a probabilistic model of a human driver for
which we assume that the likelihood the human operator chooses one of the
homotopy candidates is proportional to the margin offered by the corridor.
105
5.1
Evolution of the Threat
This section aims to analyze how the control freedom in each candidate homotopy
evolves as the driver comes closer to a hazard. A naive model of the human driver
assuming constant input is implemented. This work helps defining safety threshold
standards as well as a relevant metric to determine ideal intervention time. Indeed,
at every iteration, the planner estimates the threat in each corridor and the final goal
is then to combine all the information into a single metric for decision making.
5.1.1
Traffic Slow Down
This first example is similar to the static case of Chapter 4. It can represent an
emergency slow down on a highway or hazardous debris on the road. In this radical
case, the two vehicles are stationary on the second and third lanes. We consider the
hypothetical case where the driver is either asleep or hasn't noticed that the two
lead vehicles have stopped. As a consequence, he keeps going straight at a constant
speed and is about to collide with one of the two vehicles.
Figure 5-1 shows the
control freedom associated with each homotopy candidates at different time steps:
1.6s, 1.0s and 0.4s before collision.
Initially, the homotopy associated with lane
keeping offers the largest margin (aquamarine homotopy), followed by the right lane
change maneuver (purple homotopy). As the vehicle nears the obstacle, changing
lanes becomes the most desirable navigation decision, as indicated by the larger
margin for avoidance maneuvers shown in the middle subfigure. There, remaining in
the lane requires a strong braking input and loses its attractiveness compared to the
(purple and green) candidate homotopies that involve lane-change maneuvers. The
green corridor exhibits reduced margin due to the presence of a second obstacle on
the second lane. Finally, when the vehicle reaches a distance of 25m to the obstacle,
it has no option but to change lanes because there is insufficient braking authority
to stop the vehicle and avoid collision. Note that the control margin offered by the
green homotopy first increases as the relative size of the gap between the two
vehicles in terms of visibility increases when the host gets closer.
106
e
-
e
10.,
1.6 s before collision
0
0
10
20
30
40
50
60
10
5
1.0 s before collision
0
-5
0
10
20
30
50
40
0
10
5
-
.-........-.......
------------09000000*0*e
.51
0
10
20
30
50
40
0.4 s before collision
.
0
60
Figure 5-1: Margin at three time steps
Figure 5-2 shows a more precise evolution of the control freedom in each navigation
corridor. The purple homotopy quickly overcomes the aquamarine one in terms of
desirability. At the end, the only feasible navigation option is the orange homotopy
which consists in crossing two lanes. Indeed, the left turn to avoid the obstacle is
so severe that the driver doesn't have enough steering margin to counter-steer on
the adjacent lane but has to terminate the maneuver of the top lane. Note that if
the slope is initially small, the control freedom tends to decrease very quickly as the
driver nears the obstacle. Ideally, the high level planner anticipates this drop soon
enough so that the controller has enough time to deflect the vehicle trajectory. Here
a safety threshold is arbitrarily set to 35. This is a normalized metric, 100 indicating
no restriction on the input command. This threshold corresponds to roughly a third
107
of the global input space available. In this example, it is particularly well suited as
the largest margin falls below this threshold before the slope of the threat variation
becomes too high. More precisely, it leaves one second to the planner to respond to
the threat.
70
0
2
04
0.6
08
11.2
IA
1.8
1A
tie'
Figure 5-2: Evolution of the margin of feasible corridors
5.1.2
Lane Merging Scenarios
This second example was also introduced in the previous chapter.
The fourth
lane is being eliminated, forcing the lead vehicle located on this lane to merge into
the current lane of the host vehicle.
Similarly, we still consider the hypothetical
case where the driver is either asleep or hasn't noticed the lane change of the lead
vehicle. Figure 5-3 displays the margins at three consecutive time steps. Initially,
the safest choice is to slow down and let the other vehicle merge in front. Changing
lane (left maneuver) is also safe as it offers comparable control freedom since no
vehicle is located in the second lane. It allows the lead vehicle to have more room
for maneuver to perform its lane change.
At this point, another possibility is to
accelerate so that the lead vehicle merges behind the host. Note that the decision
tree approach is employed to identify homotopy candidates. Thus, this last maneuver
can be assimilated to a double lane maneuver even though most of the path is located
in the same lane when the lead vehicle is still in the fourth lane. Then, as the
driver doesn't modify its course, the two homotopies that terminate in the third lane
108
2
(blue homotopies) lose their appeal while the green corridor remains a safe choice
(middle subfigure). Finally, if the driver hasn't taken action yet, the planner has
no other choice but to perform a left avoidance maneuver as there is insufficient
braking authority to stop the vehicle and avoid collision. This homotopy framework
only considers good navigation options. There might be another extreme maneuver
involving a sharp right turn that would lead to road departure (better than collision)
but the violation of constraints is not addressed here.
10-
~ ~
0
10
20
30
50
40
~.
0.5 s before collision
60
10
0.3 s before collision
-0
-5
)
10
20
30
50
40
60
10
5 --
0.1 s before collision
0
-5
10
20
30
40
50
60
Figure 5-3: Margin at three time steps
Figure 5-4 shows the temporal evolution of the margin in each homotopy
candidate.
The green homotopy soon becomes the safest option compared to the
two blue homotopies, as the lead vehicle merges into the third lane. Note that the
109
drop of the maximal margin is even more pronounced in this extreme scenario than
in the previous example. Once the the metrics falls below the threshold, the planner
has less than 0.1 seconds to correct the trajectory of the vehicle and avoid the
collision. This example is very unlikely as it assumes that both the host and the
lead vehicle ignore each other's behavior. However, in the eventuality such an event
occurs, the semi-autonomous system has to be able to detect such hazard.
It
becomes crucial that the planner anticipates this drop so that it can safely assist the
human operator.
When no information about the driver intent is available, one possibility is to
consider the latest variation of the threat metric and extrapolate its value for the next
one or two seconds to get a simple estimate of the future threat posed to the vehicle.
The expected threat can then be compared to the threshold instead of considering
only the current threat. However, if the planner can precisely predict the intent of the
driver, this estimation becomes less significant as the planner can respond sooner. In
the example, the blue homotopy falls below the threshold 0.15 s before the maximal
margin, which gives more leverage to the controller. This issue is further discussed
- -60
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
--
-
-
-
-
-
-
-
-
in the next sections introducing two approaches to the intervention law.
E
20
10
_________
0
0.1
0.2
0.3
0.4
t [s]
Figure 5-4: Evolution of the margin of feasible corridors
110
0.5
0.6
5.2
Control Intervention Law Based on Maximal
Margin Available
This section introduces a simple approach to shared control between a human
driver and onboard planner based on the computation of the maximal margin
available. The hypothesis is described first and the experimental setup for human
testing in the CarSim Simulator is then detailed. Finally, simulations in the Matlab
environment illustrate the implementation of such an intervention law based on this
assumption.
5.2.1
Hypothesis
In this approach, we assume that human drivers tend to travel through corridors
that offer a relatively high control margin (i.e.
threshold), whenever the choice is available.
specific homotopy candidate.
superior to some pre-defined
No strong preference is given to a
The driver is assumed to arbitrarily choose a
reasonable navigation strategy. In this context, the intervention law depends on the
sole computation of the maximal margin at every time step. Indeed, if the maximal
margin is above the predefined threshold, the planner can be sure that there exists
at least one and maybe several homotopy candidates that offer enough flexibility.
Given the hypothesis just stated, the semi-autonomous system grants full authority
to the human driver.
On the other hand, if the maximal margin falls below the
safety threshold, it implies that all homotopy candidates can be labeled as
dangerous and whatever the choice of the driver, the active safety system takes
control in order to make sure the vehicle safely overcome the temporary hazardous
situation.
In accordance with the analysis of the various margin metrics in Chapter 4, the
weighted average norm combined with the use of the Chebyshev ball is employed in
the following simulations for a conservative threat assessment and intervention.
One important comment is that this model presumes that the driver is focused
111
on the driving task and is therefore vigilant to the surrounding environment. There
is no prediction with respect to the intent if the human driver. In the opposite case
(the driver is asleep for instance), the vehicle eventually finds itself in a hazardous
posture and the semi-autonomous system then takes action. However, the response
delay is degraded as the hypothesis about the driver behavior is not necessarily valid.
In this situation, other sources of information such as gaze points or head movements
can alert the system when the driver is distracted and the onboard system can then
take up the reins even if the maximal margin computed if above the threshold.
5.2.2
Experimental Setup with CarSim
A driving simulator (CarSim) capable of simulating a motorway traffic
environment was used to measure driver behavior data from a dozen volunteers.
The scenario involved a three-lane highway with relatively dense traffic in which two
consecutive vehicles are on average spaced by approximately one hundred meters.
Subject were asked to drive naturally between 90 and 100 kph and preferably in the
center lane. In a random manner, some vehicles from traffic were programmed to
suddenly slow down in order to create a surprise effect and analyze how the human
operator responds to the resulting threat. After a training run to get familiar with
the simulator, subjects have were asked to take two driving tests of 5 minutes where
they had to perform lane changes or strong braking to avoid collision with vehicles
from traffic. The data was then post processed with Matlab using the margin based
approach previously introduced.
At each time step, the algorithm identified the homotopy candidates and computed
an estimate of the control freedom available. As the whole trajectory of the driver is
known, the algorithm can easily determine which navigation strategy the driver has
chosen at every iteration. The vehicle model used to sample the lattice in input space
is the four-wheel Ackerman model (described in Appendix) for better coherence with
Carsim model.
It arises from this study that human drivers tend to anticipate future threat by
maximizing their future room for maneuver and avoid potential hazardous situations.
112
For instance, they tend to maximize the distance to the closest lead vehicle in the
same lane. Incidentally, when a human operator comes close to a lead vehicle, he
is likely to change lane for a better safety margin (in case the lead vehicle suddenly
brakes for example). This level of anticipation varies among the human population
and some people need a clear horizon to feel safe when others can accommodate
closer lead vehicles. Figure 5-5 shows the average distance to the closest lead vehicle
among human subjects. It varies between 40 and 60 meters, a range which is rather
significant considering the reference speed (100 kph). The further away from the lead
vehicle, the more time to react in case of unexpected event.
70-
40-
So-
-
30
0
2
4
6
a
10
12
Human Subject
Figure 5-5: Average distance to the closest lead vehicle among human subjects
We define a safety threshold such that the human driver chooses a homotopy
candidate whose margin metric exceeds this threshold 90% of the time. This threshold
was computed for every human subject from the pool of participants and averaged
over the duration of the simulation. Two sets of data were distinguished: the first one
gathers instances of "typical high risk", which are defined as the time steps involved
during a lane change maneuver (-2 s before crossing the separating line to +1 s
after) or a strong braking (greater than 3 m.s- 2 in absolute value). The second set
gathers moments of "typical low risk" and includes the time steps that are not in
the first set. The control freedom is normalized with respect to the input bounds of
the vehicle. Therefore, in a completely open environment with no spatial constraint,
there is only one field of safe travel whose associated margin metric is 100. In the
113
case of highway driving, even in the absence of other vehicles, the maximum control
margin may be reduced due to the lane structure. In an open lane, the maximal
control margin ranges from around 55 (at 30 m/s) to about 75 (at 10 m/s).
0. .....
- ...... - -...... - -.-.-.-.-.-.-.-.-.-.-...-.-.-.-.- .-.
..............
020
5 ...........
. .....
........ ........... -......... ............ - --..... ......
1
----
-
26 ..........
......
2
...................................
......
-
3
...........
.
low threat
-
4
5
6
7
8
9
10
11
12
human subject nc
Figure 5-6: Safety threshold defined as first decile for margin choice among human
subjects
Figure 5-6 displays the computed safety threshold for high and low threat
situations for all human subjects.
In low threat situations, the safety threshold
varies between 36 and 40 (normalized value) whereas it varies between 27 and 34 for
high threat events. This disparity among human subjects can be attributed among
others to the safety margin with the lead vehicle or the level of aggressively of the
driving (sharp turns, strong accelerations/brakings...).
This safety threshold,
constructed such that 90% of the choices of the driver remain above this lower
bound appears to be a reasonable indicator for the high level planner to determine
when to intervene.
It follows from this preliminary study that a threshold set
between 35 and 40, which is approximately one third of the total control freedom,
can be used as the lower bound for intervention by the semi-autonomous system. In
other words, when the predicted choice of the driver falls below this threshold, the
onboard controller takes control of the vehicle and complete the maneuver.
114
5.2.3
Intervention law - Matlab Simulation
In this section, we implement some Matlab simulations based on the safety
threshold defined in the previous section to test the semi-autonomous system.
Figure 5.7 displays the evolution of the margin of the various homotopy candidates.
The scenario is similar to the first example of the chapter, except the obstacle are
now moving at 10 m/s. The safety threshold is set to 35. The maximal margin
available and the margin of the corridor chosen by the driver at every time step are
highlighted. While the metric is above the safety threshold (green highlight), full
authority is given to the human driver. When the maximal margin falls below the
threshold (red highlight), the internal computer takes control to ensure collision free
maneuver in hazardous situations. If the exact intent of the driver is known, the
controller can intervene sooner (ti in Figure 5-7); otherwise it has to wait for the
maximal margin to fall below the threshold to take action (t2 ). An intervention law
based on the extrapolation of the variation of the margin is also considered to better
anticipate future threat.
t
t2
70
Figure 5-7: Intervention law based on maximal margin or driver intent
115
Intervention Based on Current Margin
We compare here the performance of the semi-autonomous system when the intent
of the driver is available or not. As one can see in Figure 5-8, the semi-autonomous
system ensures collision free navigation in both cases, but it can intervene sooner when
the intent of the driver in terms of corridor navigation is known. The maximal margin
available at every time step is plotted in the top subfigure. It shows that although the
maximal margin approach allows safe navigation, the intervention might be a little
belated in this specific example, which results in a more hazardous obstacle-avoidance
maneuver. Indeed, the maximal margin can drop as low as 18 at the worst instant (red
trajectory). On the contrary, when the intent is known, the driving assistance system
can anticipate and reacts sooner, which guarantees a smoother and safer maneuver
(green trajectory). Knowing the intent of the driver is often very difficult. To improve
the assistance when the intent is unknown, we propose to extrapolate the variation
of the margin to predict future threat.
-
late intervention
intervention
-early
E
-
40-. ........
0
- - - --
-
.............
10
...
20
...
. ........
30
--
-
40
-
-- - - - - - -
...... ..
..
-
..........
60
50
-
-
2E
70
80
distance [m]
5-
0
- --
---
I
10
- - --
-----
20
I
30
--
I
40
-
I
50
- --
-----
--
--
- ----
I
60
70
80
90
100
x [m]
Figure 5-8: Top: Evolution of the maximal margin available Bottom: Trajectory of
the host vehicle in both cases
116
Intervention Based on Extrapolated Margin
When the intent of the driver is not known for sure, one possibility to anticipate
the future threat posed to the vehicle is to extrapolate the past variation of the
maximal margin available. If the prediction is short (typically less than one second),
the variation of the margin metric can be assumed to be constant. Figure 5-9 displays
the extrapolated maximal margin displays for different prediction horizon ranging
from 0.1 to 0.5 s. The extrapolated value is then compared to the safety threshold
instead of the current margin estimation.
The vertical black lines indicate when
the semi-autonomous system intervenes depending on the choice of the prediction
duration.
0
0.2
04
0.8
00
12
IA
IS
.I
t~aJ
Figure 5-9: Extrapolation of the margin
Similarly to the previous paragraph, it is possible to compare the trajectories of
the vehicle in each case, as well as the maximal margin available (Figure 5-10). In
this example, the longer the prediction (towards green), the sooner the intervention
and the safer the intervention. As the prediction shortens (towards red), the lowest
maximal margins decreases to the value of 18 (as in Figure 5-8). This extrapolation is
a useful tool for the active safety system to intervene sooner and ensure a smoother a
safer maneuver. However, this technique is only meaningful for short predictions: as
the control freedom can evolve quickly, longer predictions could lead to unnecessary
intervention since the extrapolated value of the margin would fall below the safety
threshold more often than expected.
117
7
0 -. -
70
---.-
-.--..--
-. -
-- - --
-..-.-.-.- - -
-.--.-.--.-
-.-.-
--.. .. . . .. . . . --... . .. . .. .-.
- -05speito
--
~-
-
E
04speito
-0.5 s prediction
-- --
5 -------------------
------
---
- - - - - - - - - -
-
distance [in]
0
-
10
-
-0. 8 predictIon
0.3 s prediction
- - - - - - no prediction
-
E 0
10
20
30
40
50
60
70
80
90
100
x[m]
Figure 5-10: Top: Evolution of the maximal margin available Bottom:
the host vehicle in both cases
118
rajectory of
5.3
Intervention
Law
Based
on
Probabilistic
Driver Model and Expected Margin
5.3.1
Driver Model
In this approach, the likelihood that the driver chooses one of the homotopy
candidates is assumed to be proportional to the control freedom offered by the
corridor. The hypothesis is similar, in principal, to the one used in [47] where the
probability is exponentially decreasing with the cost associated with the identified
target goal.
We introduce the tuning parameter a that represents the level of
prudence of a human driver and can therefore vary from one driver to another:
p ~,.) m. This expression has to be normalized so that the sum of the probabilities is
equal to one.
associated
If we note H = (hl, ... , hN) the set of N feasible homotopies with
margin (Mi,
distribution p = (p1,
... ,
..., imN),
we can then assign the travel probability
PN) and the formula to derive its value is:
N
k=1
In the previous model we assumed that the human driver would always try to
travel in a corridor that offers a margin above some threshold, without any preference
among the safest margin. In this probabilistic approach, each homotopy candidate is
assigned a likelihood, and the larger a, the stronger the preference of the driver for
the safest corridor.
The goal is to anticipate the future threat posed to the vehicle given the human
model. For this purpose, we propose to compute the expected margin based on the
probability distribution of driver choice.
N
Em
pim
=
i=1
By substituting the value of the probability, we derive the final expression of the
expected margin and variance:
119
N
m
Em
2
+l
and ori =(
pimi
N2
-Zpimi
k=1
It follows from the expression of the probability that the larger the tuning
parameter a, the more pronounced the preference for the corridors offering a large
control freedom.
The computation of the expected value of the margin enables to
merge the threat information of all homotopy candidates into one global metric that
is assumed to mimic as closely as possible the behavior of the human operator. The
variance or the standard deviation
- aims to characterize the confidence in the
prediction of the margin. Indeed, if all homotopy candidates exhibit similar control
freedom, the variance is obviously small and the threat prediction is therefore
accurate,
which is logical as whatever the choice of the driver is, the margin
associated with the chosen travel corridor is close to the expected value.
On the contrary, if the threat assessment task identifies multiple homotopy
candidates with an uneven probabilistic distribution, the expected value of the
margin can possibly falls far from the actual margin value associated with the
corridor followed by the human driver.
Consequently, the intervention law of the
semi-autonomous system should take into consideration both the expected value as
well as the variance of the margin in order to ensure a robust driving assistance.
5.3.2
Construction of the Intervention Law
We propose to build an intervention law that takes into consideration both the
expected margin and the associated variance based on the previous observation.
When a good value of the tuning parameter a is identified, the expected margin is
usually close to the actual choice of the human operator, but it also means that 50%
of the actions of the driver are below this expectation.
The semi-autonomous
system has to be robust and ideally intervenes even when the driver chooses to
travel
within a
corridor
whose
margin
is
smaller than
the expected
value.
Nevertheless, it shouldn't be too intrusive and take control whenever the slightest
120
hazard is detected either. The planner has to find a trade-off between safety and
frequency of intervention.
To tackle the problem, we propose to introduce the
following extended threat metric:
Qthreat(t) = Q(t) =
Em(t) - /O-m(t)
Where Em(t) and am(t) are respectively the expected value and the variance of
the margin at a given instant and
# a second tuning parameter that
enables to adjust
the frequency of intervention of the planner. The larger 3, the lower the value of
Qthreat
and therefore the more likely the active safety system intervenes. In the end,
the semi autonomous system works as follows:
1. Identify corridors of safe travel (homotopy candidates) based on the mapping
of the surrounding environment
2. Estimate the control margin within each corridor thanks to the lattice
3. Compute the extended threat metric Q(t) for a pair (oz, 3) that depends on the
behavior of the driver (assumed to be known)
4. If Q(t) > threshold, full authority is given to the human driver. If Q(t) <
threshold, the active safety system overrides the commands to complete the
maneuver.
The process is repeated at every time step. Whenever the active system starts
to intervene, we suggest that the duration of the intervention be set to at least 3
seconds, i.e. the prediction horizon so that the system guarantees the host vehicle
safely complete the maneuver, which corresponds to the corridor with the largest
margin.
Figure 5-11 displays the evolution of various threat metrics during a time window
that corresponds to a lane change. It is extracted from one of the test runs of CarSim.
The magenta curve represents the margin of the corridor chosen by the driver at
every instant. The yellow and cyan curves are respectively the maximal and expected
margin at the same instants. When the yellow and cyan curves overlap, it means
121
the driver chooses the corridor with the largest control freedom. The two envelopes
correspond to two values of the tuning parameter of the intervention law: /3 = 1 for
the dark grey and / = 2 for the light grey. In this example, the choice of the driver
is usually close to the expected value but sometimes fall below, as between 43 and 44
seconds. Depending on the value of 3, the system is more or less conservative. In this
example, the threshold is set to 40, similar to the previous work. In the hypothetical
#
case where
is set to one, the active system would start intervention at around 42.5
seconds. The choice of / is explained in the next section and relies on the analysis of
the receiver operating characteristic (ROC) curve.
7060-
c 40
--
-
..-
-
....-
.
50 L
E
-/+2 sigma
-/+ sigma
expected margin
30
-
20[-
-
10
42
42.5
43
43.5
44
-
max margin
human operator
safety threshold
44.5
45
t [s]
Figure 5-11: Intervention law based on expected margin
5.3.3
Human Testing with CarSim
The same data collected with carsim from a pool of human subjects is used in this
section in order to validate the probabilistic model assumption. First, the behavior or
performance of the human drivers is characterized by computing the optimal tuning
parameter a. Then, the performance of the intervention law is tested using standard
evaluation techniques such as the ROC curve.
122
Characterization of Driver Behavior
One of the advantages of the probabilistic approach to the human behavior
modeling is the possibility to refine the prediction by assigning a well suited value to
the parameter a that is specific to every person and characteristic of the smoothness
of the driving and the risk aversion. Indeed, if the value of a associated with one
driver is high, it means the driver is most of the time considering the safest corridor,
i.e.
the one that offers the largest control freedom.
This behavior allows to
anticipate future threat and and to react more easily to unpredicted action from
other vehicles.
On the contrary, if the value of a is low, it is plausible that the
priority of the driver is not safety and that he prefers to take more risks to reach his
destination faster for instance. It could also show that the driver is not completely
focused on the driving task and sometimes reacts with some delay to the threat.
Figure 5-12 displays the relative error between the expected margin and the
actual choice of human subject. The error is averaged over the whole duration of
the simulation. The reference is the human choice and is set to zero (black line).
The green line represents the relative error of the metric associated with the
instantaneous maximal margin.
In the case of this specific driver, the maximal
margin is on average 5% above the real choice. The red curve represent the relative
error between the expected margin and the reference for several values of a. For
a = 1, the metric is below the reference by 10% and the error decreases as a
increases.
The curve eventually crosses the reference line and the error starts to
increase again and eventually converges to the maximal margin, as expected. For
this specific human subject, a value of a between 5 and 6 appears to be a good
estimate. The predicted metric is then very close to the actual choice of the driver
on average with a standard deviation of 8%. This analysis can be done for every
driver and the best a is given to the high level planner for better synergies with the
human operator.
123
...
.
. .....
......
.. ....
.....
..
..
..
. ............
....... . ...
. .....
. .....
....
....
. ...............
...........
........
..................
. .........
.......
0.1
0.05
2-0.054)
-0.1
-0.15
-0
-
-0.2
variance
expected margin
max margin
I-03
-0.25
01
2
3
4
5
6
7
8
9
10
alpha
Figure 5-12: Relative error between the expected margin and the actual choice of the
driver in function of the tuning parameter a
Performance of the Intervention Law
In order to characterize the performance of the intervention law and determine the
optimal pair (a, /) to comply with the requirement of the semi-autonomous system,
a receiver operating characteristic (ROC) curve is plotted for each individual. ROC
curves are popular tools to illustrate the performance of a binary classifier system as
its discrimination threshold is varied. It is created by plotting the sensitivity of the
classifier that is the fraction of true positives out of the total actual positives (TPR
= true positive rate) versus the fraction of false positives out of the total actual
negatives (FPR = false positive rate), at various threshold settings. In our case, the
threshold varies with the parameter 0 of the extended threat metric Q.
Besides, the ROC curve can also be used as a complementary tool to determine
the optimal parameter a of the driver model. Indeed, the further away from the
identity function in the direction of the top left corner, the better the classifier. It
implies a high rate of true positive for a small rate of false positive. More precisely,
one common technique to estimate the performance of the classifier is to compute the
124
area under the ROC curve: the closer the result to one, the better. With respect to
our semi-autonomous system, we can plot the ROC curves that correspond to various
values of alpha and choose the one that offers the largest integral.
Once the optimal a is obtained, the value of 0, which is equivalent to the
threshold of the classifier, can be determined with respect to the requirement one
wants to impose on the active safety system. There are three main approaches. The
first possibility is to fix to a safety threshold, for instance to detect at least 90% of
dangerous situations.
Then # is chosen so as to minimize the false positive rate
while guaranteeing the safety requirement. On the contrary, the second possibility is
to bound the rate of false positive and choose the value of
detection of real intervention.
/
that maximizes the
Finally, the third approach consists in finding a
trade-off between true and false positive by choosing the
/
that maximizes the
distance from the ROC curve to the identity line.
Figure 5-13 illustrates the concept with the example of one human subject (same
as in Figure 5-12). Ten ROC curves are superimposed on the same plot, corresponding
to various values of a. Low and high values of a correspond respectively to the red
and green curves. In this example, intermediate value of alpha (brownish curves) are
the best choices. The black ROC curve (a
=
6) corresponds to the maximal area
under the curve and therefore the best performance. When this value of a is selected,
if the rate of false positives is bounded to 10%, then 80% of real threat situations are
detected. Likewise if we want the rate of real positive to be greater than 90%, then
the rate of false positives exceeds 20%.
125
1
..-.
...-.-.
.-.-.-..-.
.-.
0.9 - . . .--.
.
-.
0.7
-.
--
. . . . .--.
.......-.
.-.
. .. . .
--.
.-.
.-.-.-.
..-.
..-.
....
.
0.8
-...- - /
----------
0.6
.
.......
.....
..........
.......
...
.
..
..-I
..
--.
...
---
L
..
.
.......
-
..
- ..-.
0.5 ---- ..
Zl
0
/ ..... .........
0.4
1 ---
-. -.
0.31 --- .----
/ .............
-
......-.--.-.
....-.-.
.-.-.
.--------------
U 0.95
0.9
/.........../
ass
/-- - -
2
-
0.j
------
3
4
a
5
7
8
9
10-
alpha
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
false positive
Figure 5-13: Typical Receiver Operating Characteristic curve for one human subject
This analysis can be performed for every driver. In real life situation, the high level
planner would first estimate the optimal pair (a, 3) during an initial learning period
and use them once the calibration is over. Figure 5-14 displays the computed optimal
value of the a parameter among the human subjects. It appears that most driver
exhibit a similar behavior with the value of a ranging from 3 to 6.5 with a strong
prevalence between 4 and 4.5. Incidentally, in addition to allowing to more finely tune
the semi-autonomous system, this computation of this parameter could provide car
insurance companies with a more relevant indicator to estimate the driving behavior
126
of their clients and adjust the fees accordingly.
9-
7-
Ca
6-
Q
-
;;Z 5
-
4
E
0
2-
2
4
6
10
12
Human Subject
Figure 5-14: Optimal Alpha tuning parameter among subjects
This tuning parameter is a new concept introduced in this thesis to characterize
the behavior and aggressiveness of the human driver. Current techniques focus on
the sole analysis of the acceleration (average value or variance). Although this type
of analysis partially reflects the behavior of the driver (aggressive driving involve
strong variations of the velocity), it doesn't take into consideration the environment
surrounding the vehicle and can't differentiate accelerations that are required to
avoid collision
(car crash or pedestrian) from "fun and hazardous"
driving.
Figure 5-15 displays side by side the value of alpha with the average value of the
relevant acceleration, i.e. the minimum acceleration required in order to avoid
collision during high threat events. It arises that drivers that present a large alpha
(degree of prudence) tend to anticipate future threat so that the minimum
deceleration to avoid collision remains small. The correlation is not perfect as the
control margin approach to threat assessment doesn't only focus on these simple
avoidance maneuver but consider the whole control freedom associated with more
realistic maneuvers associated with corridor navigation.
127
71
0.
-
Optimal value of alpha
-+
SMinimum acceleration
1
2
3
4
5
6
7
8
9
10
11
12
Human Subject
Figure 5-15: Comparison of optimal alpha and minimum acceleration maneuver
Once the tuning parameter a is identified, the second parameter
#3can
be chosen
so as to abide by the requirements of the system. Figure 5-16 shows the performance
of the semi-autonomous system for all human subjects. On average, the results
range
from satisfactory to very good and augur good progress in this direction if further
research is made. More precisely, the green curve represents the rate of true positive
(TP) intervention in the case the rate of false positive (FP) is bounded to 10%.
Except for three drivers, the rate of TP exceeds 70% and generally evolves around
80% which is rather good for a preliminary result and no refinement. Conversely, the
red curve displays the rate of FP when the safety requirement is that the rate of TP
exceeds 90%. In that case, the rate of FP lies between 10% and 30%, which also
seems reasonable for a first prototype of shared control driving system.
128
-
-
-
. . .. . . . .. . . . . .. . .
-
-
0
-
.
. . . . . .. . . . .. . .
CL
...
of0--R:
false positive for 90% true positive goal
-G
------ ----- Tr.e.P.s.tie
~ --tg
o - - ....
-Rate
of true positive for 10% false positive bound
-
50
ad.t
60
100
2
4
6
8
10
12
human subject
Figure 5-16: Percentage of True Positive and False Positive for given requirements
We can then define some performance metric as the rate of TP for 10% FP over the
rate of FP for 90% TP. The larger the metric, the larger the rate of true detections
and/or the smaller the number of false alarms.
It appears that the margin-based
approach for threat assessment is sensitive to the behavior of the driver. For instance,
if the driver "oscillates" too much within its corridor instead of trying to keep a
straight trajectory, it can alter the prediction of the planner. In Figure 5-17, the
performance metric is displayed alongside with the variance of lateral offset (distance
to the center line) of each driver. Although there is not a strong correlation between
the two, we can see that large lateral offset accounts partially to the bad performance
of the intervention law. However, the data was acquired using a driving simulator
and human drivers were more likely to oscillate than in real life driving situations.
129
6*
subject
no
muman
Figure 5-17: Performance of the prediction and variance of lateral offset
130
5.4
Future Work
Implementation of the Semi-Autonomous
System in Real
Time
The threat and margin based active safety system described in this thesis was
successfully simulated both for fully-autonomous and semi-autonomous scenario in
Matlab environment.
The semi-autonomous mode was tested based on some
reasonable driver model. The hypothesis regarding the behavior of the human driver
(safety threshold and probabilistic intent) were then tested with relative success
using the car simulator Carsim and promise great advances in the improvement of
the synergies between human and automation in the field of driving.
The next step is to implement this active system in real time and synchronize it
with Carsim.
experience,
So far, the computation time is a bit too high to allow a smooth
but converting the code into C and taking
advantage of the
parallelisation of the computation would undoubtedly lead to much faster running
time that guarantees a sufficient operating frequency.
Improvement of the Intent Prediction
In order to improve this active safety system and in particular the prediction of
the intent of the driver, one possible research area is to merge this probabilistic model
with other sources of information that would provide complementary indications (gaze
points, neurological factors). As a matter of fact, the errors result primarily from
two distinct sources. The first one is the fact that the human driver is not always
focused on the driving task (distraction, fatigue) and therefore the hypothesis that
supports the model is not valid in this event. This type of error reduces the rate
of true positive. The second source of error occurs when the system unnecessarily
intervenes. This is usually the case when the variance is high. In this case, the system
forces the vehicle to stay in the safe corridor, which is what the driver would have
done anyway. This phenomena, although not dangerous, increase the rate of false
131
positives and can make the driver feel uncomfortable. If the secondary information
show that the driver is focused and likely to make the good choice, then the variance
can be reduced (increased confidence) for a more refined prediction.
Other Types of Intervention Laws
The intervention laws presented in this thesis are based on the notion of safety
threshold.
In other words, whenever the threat metric falls below the defined
threshold, it triggers the intervention of the onboard controller which takes complete
control of the vehicle temporarily in order to perform the hazardous maneuver. This
approach is binary in the sense at each time step, either the human driver or the
automated system is the only one in control.
Although simple, this approach
ensures that there are no conflict between the human and the machine in the case of
multiple navigation strategies, which is often the case.
However, we could also
implement more subtle intervention laws in which the semi-autonomous system
would only restrict the input range available to the driver instead of completely
overwriting the commands. For instance, the inputs that correspond to a homotopy
class that presents a high threat would be forbidden to the driver. This approach
would also guarantee collision avoidance and would additionally offer more freedom
to the driver. This type of intervention is difficult to simulate in Matlab but could
easily be tested in real time if the computation power is sufficient.
132
Appendix A
4-Wheeled Vehicle Model
The linearized equation of motion of a 4-wheeled Ackermann-steered model are
described here. This model is employed to generate the trajectories from the inputspace lattice, in particular when post-processing the data from CarSim. It is more
realistic than the standard bicycle model introduced in chapter 3 and accounts for
the lateral, longitudinal and yaw dynamics.
Figure A-1: Vehicle Slip Model
Vehicle states include the position of its center of gravity [x, y], the vehicle yaw
angle T, the yaw rate xI and the sideslip angle / as illustrated in Figure A.
133
The equations of motion are:
= V cos(P + 0)
y=V sin(IF + 0)
EFy
=
mi[ sin(T + 0) + V(4' + /)cos(T + /)]
EMz= IZzx
Tire compliance is included in the model by approximating lateral tire force Fy as
the product of each tires cornering stiffness C and sideslip angle a: Fy = Ca.
The discretization time of the prediction horizon is usually small enough (typically
0.1 s) so that we can consider the speed to be constant over the small dt. We also
assume small slip and steering angles in order to linearize the equations that become:
J. = V
3=
y=V(F + 0)
-Cr+C,
+
mV
SCrx,-Cxf
(CrX,-CX
1)
-
MV2
Crx2
Izz
Cfx
IzzV
2
+
C_
mV
Cx
IZZ
where Cf and C, represent the cornering stiffness of the front and rear wheels,
and xf and x, denote the longitudinal distances from the center of gravity of the front
and rear wheels, respectively.
The table below defines and quantifies each model's parameters. These parameters
were chosen to best match the vehicle plant in CarSim Simulator.
Table A.1: Vehicle Parameters
Symbol
m
Description
Total Vehicle Mass [Kg]
Yaw moment of inertia [Kg.m 2]
Value
1670
Wd
Distance to front wheels [im]
Distance to rear wheels [m]
Total width of the vehicle [m]
2550
1.2
1.3
1.7
Cf
Front cornering stiffness [N/deg]
1500
C,
Rear cornering stiffness [N/deg]
1350
Izz
Xf
Xr
134
Appendix B
Eye-tracking Information
This appendix presents some preliminary results regarding the analysis of the eye
tracking data in order to infer the intent of the human driver in terms of corridor
navigation.
The data was recorded in the iLab at USC using Xmotor simulator
synchronized with an eye tracker.
The goal is to determine whether it is possible
to predict the candidate homotopy the driver is about to choose in simple cases (no
lane structure, limited number of options...). Essentially, the method is based on the
comparison of the number of gaze points located on the left and on the right of the
obstacles.
Note that some of the gaze points are filtered out (sky, speedometers).
This simple method works pretty well in the cases of a single obstacle in the center of
the road, either for straight lines or curves. However, in the case of multiple obstacles
or secondary sources of threat on the side (pedestrian, parked car), the predictions
are not as good. This area of research could be further investigated with the addition
of car telemetry for instance.
Experimental Setup
A small pool of human subjects were asked to drive for a short time (5 mn) on
a simple track simulated in Xmotor.
The scenario consisted in an open single road
littered with obstacles in the center and points of interest on the edges (pedestrians
of parked cars). During the driving task, the car telemetry along with the gaze points
of the human driver were recorded simultaneously. The eye-tracker was an ISCAN
135
240Hz video-based machine. The principle is the following: an infrared light source
illuminates the subject's right eye, and a high-speed video camera records a close-up
movie of the eye; two features are tracked in real-time on the video sequence: the
outline of the pupil and the specular reflection of the light source onto the cornea.
After a calibration procedure used to establish a mapping between stimulus referential
and camera referential, this setup allows the controlling computer to compute the
(X, y) coordinates of the point of fixation.
Decomposition of the Camera View
Transposing the gaze points from the driver view to the top view of the track is
not very accurate and suffers from the approximation of the camera model.
Especially around the horizon line, a very small displacement of the gaze point on
the camera view can lead to great displacement on the top view of the track.
Besides, in real driving conditions, the acquisition of the gaze points would be less
accurate than in simulated experiments, amplifying the phenomena. Therefore, we
suggest to work directly on the camera view and transpose the position of the
obstacles in this framework.
A basic approach consists in dividing the image in three main regions: the sky, the
"active region" and the speedometer region. If the driver is looking either at the first
or third region for a long period (greater than Is for example), we can assume that
the driver is distracted from his primary task which is the driving task. The central
region is subdivided into smaller regions, some including obstacles, other being free
of any source of threat. Figure B.1 presents this decomposition in the simplest case
of a single obstacle in the middle of the road (left) and in a slightly more complex
case (right). The blue region contains the obstacle and the two side regions (green)
are free zones.
136
Figure B-1: Decomposition of the image with respect to obstacles
In this preliminary investigation, the prediction of the intent of the driver
regarding the choice of the homotopic region is based on the simple count the
number of gaze points on the left and on the right of the obstacles that occurred
between 0 and 50 meters before reaching the obstacle. Evaluated on a very limited
%
pool of human subjects, this approach allowed to predict the right choice with 75
success. In the case of a single obstacle in the middle of the road or two obstacles
side by side, the results are satisfactory since the algorithm nearly always predict
the intention of the driver. In the presence of another obstacle on the side of the
road (pedestrian, parked car), the results are not as good. Filtering out the gaze
points located around this secondary obstacle improves the prediction but they
remain not reliable enough.
In the future, in order to improve the prediction,
several paths can be explored, such as a better filtering of the gaze points that are
not related to the decision making process, the identification of pattern in the gaze
points or also the refinement brought by the driving telemetry.
Complementary Information for Attention and Threat
In addition to providing a useful tool to predict the intent of the driver, gaze
points can also be employed to estimate the state of attention of the human driver.
As mentioned above, it is possible to determine when the human operate not focused
on the driving task, for instance if he's not looking at the road or if the point of
137
. ..
.. . ..
.
.......
............
....................
......
..
. .......
fixation remains for an abnormally long time at a given spot. If such instants are
identified, the active safety system described in this thesis can intervene even if the
computed threat is below the safety threshold.
Finally, although mapping the gaze points on the 2-D top view is not very accurate,
it is useful to have a first insight of where the driver focuses his attention and see if
there is a correlation with the main sources of threat. Figure B.2 displays the discrete
(left) and continuous (right) accumulation of the gaze points on the top view of the
track. Note that the gaze points located in the sky or around the speedometers are
filtered out. We can see that there is a higher concentration around some of the
obstacles and the inside of the turns (figure B.2). Given this observation, we can
assume it is likely there is some correlation between the gaze points and the sources
of threat. This hypothesis can lead to further investigations. On the one hand, gaze
focus on some specific region of the environment may provide some information on
potential threat the planner hasn't taken into consideration. On the other hand, if
the semi-autonomous system detects hazards the human operator hasn't notice, it
may provide another way to estimate his state of attention.
IIS
0
-M
-4MI
0
o
4
-iM
M
-100
0
100
M
Figure B-2: Correlation between sources of threat and gaze points
138
30
4W
Bibliography
[1] National Highway Traffic Safety Administration. 2012 motor vehicle crashes:
Overview. U.S. Dept. Transp.
[2] James R McBride, Jerome C Ivan, Doug S Rhode, Jeffrey D Rupp, Matthew Y
Rupp, Jeffrey D Higgins, Doug D Turner, and Ryan M Eustice. A perspective
on emerging automotive safety applications, derived from lessons learned
through participation in the darpa grand challenges. Journal of Field Robotics,
25(10):808-840, 2008.
[3] Andreas Eidehall, Jochen Pohl, and Fredrik Gustafsson. Joint road geometry
estimation and vehicle tracking. Control EngineeringPractice, 15(12):1484-1494,
2007.
[4] Ardalan Vahidi and Azim Eskandarian. Research advances in intelligent collision
avoidance and adaptive cruise control. Intelligent TransportationSystems, IEEE
Transactions on, 4(3):143-153, 2003.
[5] Wassim G Najm, Mary D Stearns, Heidi Howarth, Jonathan Koopmann, and
John Hitz. Evaluation of an automotive rear-end collision avoidance system.
Technical report, 2006.
[6] Quoc Huy Do, H.T.N. Nejad, K. Yoneda, S. Ryohei, and S. Mita. Vehicle path
planning with maximizing safe margin for driving using lagrange multipliers. In
Intelligent Vehicles Symposium (IV), 2013 IEEE, pages 171-176, June 2013.
[7] Matthew McNaughton. Parallel algorithms for real-time motion planning. PhD
thesis.
[8] Thomas Sattel and Thorsten Brandt. From robotics to automotive: Lanekeeping and collision avoidance based on elastic bands. Vehicle System Dynamics,
46(7):597-619, 2008.
[9] Sergey Drakunov, Umit Ozguner, Peter Dix, and Behrouz Ashrafi. Abs control
using optimum search via sliding modes. Control Systems Technology, IEEE
Transactions on, 3(1):79-85, 1995.
[10] Anton T Van Zanten. Evolution of electronic control systems for improving the
vehicle dynamic behavior. In Proceedings of the 6th InternationalSymposium on
Advanced Vehicle Control, pages 1-9, 2002.
139
[11] Chi-Ying Liang and Huei Peng. Optimal adaptive cruise control with guaranteed
string stability. Vehicle System Dynamics, 32(4-5):313-330, 1999.
[12] Dae-Jin Kim, Kwang-Hyun Park, and Zeungnam Bien. Hierarchical longitudinal
controller for rear-end collision avoidance.
Industrial Electronics, IEEE
Transactions on, 54(2):805-817, April 2007.
[13] A Polychronopoulos, M Tsogas, A Amditis, U Scheunert, L Andreone, and
F Tango. Dynamic situation and threat assessment for collision warning systems:
The euclide approach. In Intelligent Vehicles Symposium, 2004 IEEE, pages 636641. IEEE, 2004.
[14] Yizhen Zhang, Erik K Antonsson, and Karl Grote. A new threat assessment
measure for collision avoidance systems. In Intelligent TransportationSystems
Conference, 2006. ITSC'06. IEEE, pages 968-975. IEEE, 2006.
[15] Gerald H Engelman, Jonas Ekmark, Levasseur Tellis, M Nabeel Tarabishy,
Gyu Myeong Joh, Roger A Trombley Jr, and Robert E Williams. Threat level
identification and quantifying system, April 25 2006. US Patent 7,034,668.
[16] Mattias Brannstrom, Erik Coelingh, and Jonas Sjoberg. Model-based threat
assessment for avoiding arbitrary vehicle collisions. Intelligent Transportation
Systems, IEEE Transactions on, 11(3):658-669, 2010.
[17] Paolo Falcone, Mohammad Ali, and Jonas Sjoberg. Predictive threat assessment
via reachability analysis and set invariance theory. Intelligent Transportation
Systems, IEEE Transactions on, 12(4):1352-1361, 2011.
[18] Sterling J Anderson, Steven C Peters, Tom E Pilutti, and Karl Iagnemma. An
optimal-control-based framework for trajectory planning, threat assessment, and
semi-autonomous control of passenger vehicles in hazard avoidance scenarios.
InternationalJournal of Vehicle Autonomous Systems, 8(2):190-216, 2010.
[19] Soonkyum Kim, Koushil Sreenath, Subhrajit Bhattacharya, and Vijay Kumar.
Optimal trajectory generation under homology class constraints. In Decision
and Control (CDC), 2012 IEEE 51st Annual Conference on, pages 3157-3164.
IEEE, 2012.
[20] Sterling J Anderson, Sisir B Karumanchi, Karl Iagnemma, and James M Walker.
The intelligent copilot: A constraint-based approach to shared-adaptive control
of ground vehicles. Intelligent TransportationSystems Magazine, IEEE, 5(2):4554, 2013.
[21] John Markoff. Google cars drive themselves, in traffic.
10:A1, 2010.
The New York Times,
[22] Karl Iagnemma, Martin Buehler, and S Singh. Special issue on the 2007 darpa
urban challenge. Journal of Field Robotics, 25(8):9, 2008.
140
[23] Chris Urmson, Joshua Anhalt, Drew Bagnell, Christopher Baker, Robert
Bittner, M. N. Clark, John Dolan, Dave Duggins, Tugrul Galatali, Chris Geyer,
Michele Gittleman, Sam Harbaugh, Martial Hebert, Thomas M. Howard, Sascha
Kolski, Alonzo Kelly, Maxim Likhachev, Matt McNaughton, Nick Miller, Kevin
Peterson, Brian Pilnick, Raj Rajkumar, Paul Rybski, Bryan Salesky, YoungWoo Seo, Sanjiv Singh, Jarrod Snider, Anthony Stentz, William Red Whittaker,
Ziv Wolkowicki, Jason Ziglar, Hong Bae, Thomas Brown, Daniel Demitrish,
Bakhtiar Litkouhi, Jim Nickolaou, Varsha Sadekar, Wende Zhang, Joshua
Struble, Michael Taylor, Michael Darms, and Dave Ferguson. Autonomous
driving in urban environments: Boss and the urban challenge. Journal of Field
Robotics, 25(8):425-466, 2008.
[24] Roland Siegwart, Illah Reza Nourbakhsh, and Davide Scaramuzza. Introduction
to autonomous mobile robots. MIT press, 2011.
[25] Peng Cheng, Zuojun Shen, and S La Valle. Rrt-based trajectory design for
autonomous automobiles and spacecraft. Archives of control sciences, 11:167194, 2001.
[26] Yoshiaki Kuwata, Gaston A Fiore, Justin Teo, Emilio Frazzoli, and Jonathan P
How. Motion planning for urban driving using rrt. In Intelligent Robots and
Systems, 2008. IROS 2008. IEEE/RSJ InternationalConference on, pages 16811686. IEEE, 2008.
[27] Shingo Shimoda, Yoji Kuroda, and Karl Iagnemma. Potential field navigation
of high speed unmanned ground vehicles on uneven terrain. In Robotics and
Automation, 2005. ICRA 2005. Proceedings of the 2005 IEEE International
Conference on, pages 2828-2833. IEEE, 2005.
Lyapunov based performance
[28] Eric J Rossetter and J Christian Gerdes.
system. Journal of
assistance
field
lane-keeping
the
potential
guarantees for
dynamic systems, measurement, and control, 128(3):510-522, 2006.
[29] Arthur Richards and Jonathan P How. Model predictive control of vehicle
maneuvers with guaranteed completion time and robust feasibility. In American
Control Conference, 2003. Proceedings of the 2003, volume 5, pages 4034-4040.
IEEE, 2003.
[30] Wenda Xu, Junqing Wei, John M Dolan, Huijing Zhao, and Hongbin Zha. A
real-time motion planner with trajectory optimization for autonomous vehicles.
In Robotics and Automation (ICRA), 2012 IEEE International Conference on,
pages 2061-2067. IEEE, 2012.
[31] Matthew McNaughton, Chris Urmson, John M Dolan, and Jin-Woo Lee. Motion
planning for autonomous driving with a conformal spatiotemporal lattice. In
Robotics and Automation (ICRA), 2011 IEEE International Conference on,
pages 4889-4895. IEEE, 2011.
141
[32] Martin Rufli and Roland Siegwart. On the design of deformable input-/statelattice graphs. In Robotics and Automation (ICRA), 2010 IEEE International
Conference on, pages 3071-3077. IEEE, 2010.
[33] Thomas M Howard, Colin J Green, Alonzo Kelly, and Dave Ferguson. State
space sampling of feasible motions for high-performance mobile robot navigation
in complex environments. Journal of Field Robotics, 25(6-7):325-345, 2008.
[34] Paolo Falcone, Francesco Borrelli, Jahan Asgari, Hongtei Eric Tseng, and Davor
Hrovat. Predictive active steering control for autonomous vehicle systems.
Control Systems Technology, IEEE Transactions on, 15(3):566-580, 2007.
[35] James J Gibson and Laurence E Crooks.
A theoretical field-analysis of
automobile-driving. The American journal of psychology, pages 453-471, 1938.
[36] Subhrajit Bhattacharya, Vijay Kumar, and Maxim Likhachev. Search-based
path planning with homotopy class constraints. In Third Annual Symposium on
CombinatorialSearch, 2010.
[37] Elisabetta Fabrizi and Alessandro Saffiotti. Extracting topology-based maps
from gridmaps. In Robotics and Automation, 2000. Proceedings. ICRA'00. IEEE
International Conference on, volume 3, pages 2972-2978. IEEE, 2000.
[38] Kevin D Jenkins. The shortest path problem in the plane with obstacles: A
graph modeling approach to producing finite search lists of homotopy classes.
Technical report, DTIC Document, 1991.
[39] E. Hernandez, M. Carreras, J. Antich, P. Ridao, and A. Ortiz. A topologically
guided path planner for an auv using homotopy classes. In Robotics and
Automation (ICRA), 2011 IEEE International Conference on, pages 2337-2343,
May 2011.
[40] Erwin Schmitzberger, Jean-Louis Bouchet, Michel Dufaut, Didier Wolf, and Rene
Husson. Capture of homotopy classes with probabilistic road map. In Intelligent
Robots and Systems, 2002. IEEE/RSJ International Conference on, volume 3,
pages 2317-2322. IEEE, 2002.
[41] Lisanne Bainbridge. Ironies of automation. Automatica, 19(6):775-779, 1983.
[42] Thomas B Sheridan and Raja Parasuraman. Human-automation interaction.
Reviews of human factors and ergonomics, 1(1):89-129, 2005.
[43] Savvas G Loizou and Vijay Kumar. Mixed initiative control of autonomous
vehicles. In Robotics and Automation, 2007 IEEE International Conference on,
pages 1431-1436. IEEE, 2007.
[44] Mariana Netto, J-M Blosseville, Benoit Lusetti, and Said Mammar. A new
robust control system with optimized use of the lane detection data for vehicle
full lateral control under strong curvatures. In Intelligent TransportationSystems
Conference, 2006. ITSC'06. IEEE, pages 1382-1387. IEEE, 2006.
142
[45] Cristina Urdiales,
Manuel Fernindez-Carmona,
Jose Manuel Peula,
R Annicchiaricco, F Sandoval, and Carlo Caltagirone.
Efficiency based
modulation for wheelchair driving collaborative control.
In Robotics and
Automation (ICRA), 2010 IEEE International Conference on, pages 199-204.
IEEE, 2010.
[46] Jihua Huang and Han-Shue Tan. Vehicle future trajectory prediction with a
dgps/ins-based positioning system. In American Control Conference, 2006, pages
6-pp. IEEE, 2006.
[47] Anca D Dragan and Siddhartha S Srinivasa. A policy-blending formalism for
shared control. The International Journal of Robotics Research, 32(7):790-805,
2013.
[48] Dario D Salvucci. Inferring driver intent: A case study in lane-change detection.
In Proceedings of the Human Factors and Ergonomics Society Annual Meeting,
volume 48, pages 2228-2231. SAGE Publications, 2004.
[49] John Krumm. A markov model for driver turn prediction. SAE SP, 2193(1),
2008.
[50] Toru Kumagai and Motoyuki Akamatsu. Prediction of human driving behavior
using dynamic bayesian networks. IEICE TRANSACTIONS on Information and
Systems, 89(2):857-860, 2006.
[51] Anup Doshi and Mohan M Trivedi. On the roles of eye gaze and head dynamics
in predicting driver's intent to change lanes. Intelligent TransportationSystems,
IEEE Transactions on, 10(3):453-462, 2009.
[52] Stefan Haufe, Matthias S Treder, Manfred F Gugler, Max Sagebaum, Gabriel
Curio, and Benjamin Blankertz. Eeg potentials predict upcoming emergency
brakings during simulated driving. Journal of neural engineering, 8(5):056001,
2011.
[53] Jose del R Milln, Ricardo Chavarriaga Lozano, Lucian Andrei Gheorghe, et al.
Steering timing prediction in a driving simulator task. In Proceedings of the
35th Annual InternationalConference of the IEEE Engineering in Medicine and
Biology Society, number EPFL-CONF-188216, 2013.
[54] E. Schmitzberger, J. L. Bouchet, M. Dufaut, D. Wolf, and R. Husson. Capture of
homotopy classes with probabilistic road map. In Intelligent Robots and Systems,
2002. IEEE/RSJ InternationalConference on, volume 3, pages 2317-2322 vol.3,
2002.
[55] Leonard Jaillet and Thierry Sim6on. Path deformation roadmaps: Compact
graphs with useful cycles for motion planning. The International Journal of
Robotics Research, 27(11-12):1175-1188, 2008.
143
[56] Osamu Takahashi and RJ Schilling. Motion planning in a plane using generalized
voronoi diagrams. Robotics and Automation, IEEE Transactions on, 5(2):143150, 1989.
[57] Nils J Nilsson. A mobile automaton: An application of artificial intelligence
techniques. Technical report, DTIC Document, 1969.
[58] Mark de Berg, Marc van Kreveld, Mark Overmars, and Otfried Cheong
Schwarzkopf. Visibility graphs. In Computational Geometry, pages 307-317.
Springer, 2000.
[59] Franz Aurenhammer. Voronoi diagramsa survey of a fundamental geometric data
structure. ACM Computing Surveys (CSUR), 23(3):345-405, 1991.
[60] Kenny Wong and Hausi A M6ler. An efficient implementation of fortune's
plane-sweep algorithm for voronoi diagrams. Citeseer, 1991.
[61] Douglas Demyen and Michael Buro. Efficient triangulation-based pathfinding.
In AAAI, volume 6, pages 942-947, 2006.
[62] SW Sloan. A fast algorithm for generating constrained delaunay triangulations.
Computers & Structures, 47(3):441-450, 1993.
[63] Edsger W Dijkstra. A note on two problems in connexion with graphs.
Numerische mathematik, 1(1):269-271, 1959.
[64] Jin Y Yen. Finding the k shortest loopless paths in a network. management
Science, 17(11):712-716, 1971.
[65] DexterC. Kozen. Depth-first and breadth-first search. In The Design and
Analysis of Algorithms, Texts and Monographs in Computer Science, pages 1924. Springer New York, 1992.
[66] DL Kleinman, S Baron, and WH Levison. An optimal control model of human
response part i: Theory and validation. Automatica, 6(3):357-369, 1970.
[67] Torsten Butz and Oskar Von Stryk. Optimal control based modeling of vehicle
driver properties. 2005.
[68] Zhaoheng Liu. Characterisation of optimal human driver model and stability
of a tractor-semitrailer vehicle system with time delay. Mechanical systems and
signal processing, 21(5):2080-2098, 2007.
[69] Mihail Pivtoraiko, Thomas M Howard, I Nesnas,
experiments in rover navigation via model-based
nonholonomic motion planning in state lattices.
International Symposium on Artificial Intelligence,
in Space, 2008.
144
and Alonzo Kelly. Field
trajectory generation and
In Proceedings of the 9th
Robotics, and Automation
[70] Mihail Pivtoraiko, Ross A Knepper, and Alonzo Kelly. Differentially constrained
mobile robot motion planning in state lattices. Journal of Field Robotics,
26(3):308-333, 2009.
[71] Dave Ferguson, T.M. Howard, and M. Likhachev. Motion planning in urban
environments: Part ii. In Intelligent Robots and Systems, 2008. IROS 2008.
IEEE/RSJ International Conference on, pages 1070-1076, Sept 2008.
[72] Mikhail Pivtoraiko, Ross Alan Knepper, and Alonzo Kelly. Differentially
constrained mobile robot motion planning in state lattices. Journal of Field
Robotics, 26(CMU-RI-TR-):308-333, March 2009.
[73] Alonzo Kelly and Bryan Nagy. Reactive nonholonomic trajectory generation
via parametric optimal control. The InternationalJournal of Robotics Research,
22(7-8):583-601, 2003.
[74] Moritz Werling, Julius Ziegler, S6ren Kammel, and Sebastian Thrun. Optimal
trajectory generation for dynamic street scenarios in a frenet frame. In Robotics
and Automation (ICRA), 2010 IEEE International Conference on, pages 987993. IEEE, 2010.
[75] Bryan Nagy and Alonzo Kelly. Trajectory generation for car-like robots using
cubic curvature polynomials. Field and Service Robots, 11, 2001.
[76] Felix Von Hundelshausen, Michael Himmelsbach, Falk Hecker, Andre Mueller,
and Hans-Joachim Wuensche. Driving with tentacles: Integral structures for
sensing and motion. Journal of Field Robotics, 25(9):640-673, 2008.
[77] Franco P. Preparata and Se June Hong. Convex hulls of finite sets of points in
two and three dimensions. Communications of the ACM, 20(2):87-93, 1977.
[78] ND Botkin and VL Turova-Botkina. An algorithm for finding the Chebyshev
center of a convex polyhedron. Springer, 1994.
[79] Nathan Ratliff, Brian Ziebart, Kevin Peterson, J Andrew Bagnell, Martial
Hebert, Anind K Dey, and Siddhartha Srinivasa. Inverse optimal heuristic control
for imitation learning. AISTATS, 2009.
[80] Brian D Ziebart, Andrew L Maas, J Andrew Bagnell, and Anind K Dey.
Maximum entropy inverse reinforcement learning. In AAAI, pages 1433-1438,
2008.
145
Download