Professional Documents
Culture Documents
4, DECEMBER 2011
An Efcient Computational Architecture for a
Collision Early-Warning System for Vehicles,
Pedestrians, and Bicyclists
Daniel Greene, Juan Liu, Member, IEEE, Jim Reich, Yukio Hirokawa,
Akio Shinagawa, Hayuru Ito, and Tatsuo Mikami
AbstractWe describe a computational architecture of a col-
lision early-warning system for vehicles and other principals.
Early-warnings allow drivers to make good judgments and to
avoid emergency stopping or dangerous maneuvering. With many
principals (vehicles, pedestrians, bicyclists, etc.) coexisting in a
dense intersection, it is difcult to predict, even a few seconds
in advance, since there are many possible scenarios. It is a ma-
jor challenge to manage computational resources and human
attention resources so that only the more plausible collisions are
tracked, and of those, only the most critical collisions prompt
warnings to drivers. In this paper, we propose a two-stage collision
risk assessment process, including the following: 1) a preliminary
assessment via simple efcient geometric computations, which
thoroughly considers surrounding principals and identies likely
potential accidents, and 2) a specialized assessment that computes
more accurate collision probabilities via sophisticated statistical
inference. The whole process delivers an expected utility assess-
ment to available user interfaces (UIs), allowing the UIs to make
discriminating choices of when to warn drivers or other principals.
Index TermsCollision warning, risk assessment, road vehicle
safety.
I. INTRODUCTION
I
MPROVED sensing and communication technologies have
been incorporated in various intelligent transportation sys-
tems to provide users with signicantly better information
about their surrounding environment and the road ahead. Vehi-
cles are now equipped with better sensors, and pedestrians and
bicyclists are carrying intelligent devices. All this information
can be exploited to prevent accidents. It is extremely important
to warn principals (vehicles, bicyclists, pedestrians, etc.) early
to give them time to react to warnings and to apply their own
Manuscript received September 11, 2009; revised July 21, 2010; accepted
November 20, 2010. Date of publication February 4, 2011; date of current
version December 5, 2011. This work was supported by Fujitsu Ltd. The
Associate Editor for this paper was P. Grisleri.
D. Greene and J. Liu are with the Palo Alto Research Center, Palo Alto, CA
94304 USA (e-mail: greene@parc.com; juan.liu@parc.com).
J. Reich is with Streetline, San Francisco, CA 94105 USA (e-mail:
jreich@alum.mit.edu).
Y. Hirokawa, A. Shinagawa, and H. Ito are with Fujitsu Ltd., Tokyo
105-7123, Japan (e-mail: y.hirokawa@jp.fujitsu.com; shina@jp.fujitsu.com,
hayuru@jp.fujitsu.com, nra24256@nifty.com).
T. Mikami is a consultant in the eld of intelligent transportation, residing in
San Jose, CA (e-mail: nra24256@nifty.com).
Color versions of one or more of the gures in this paper are available online
at http://ieeexplore.ieee.org.
Digital Object Identier 10.1109/TITS.2010.2097594
additional judgment before action is taken to avoid accidents.
This is in contrast to immediate warning systems, which are
important but often result in emergency stopping or maneuver-
ing and can be uncomfortable or even cause other accidents.
However, early-warning poses signicant computational dif-
culty, particularly at a busy intersection where there are many
principals, and anticipating ahead, even a few seconds, involves
tracking an explosion of possible trajectories. We must take
a selective approachdevoting computation to the likely col-
lisions rather than all possible collisions. Even then, we will
process hundreds of likely collisions, and we must be more
selective with warnings to humans. Unnecessary warnings may
distract users and make the system unusable.
In this paper, we propose a computationally efcient col-
lision early-warning system (CLEWS). The architecture is
shown in Fig. 1. It consists of three main components: 1) sens-
ing and communication for signal collection from the physical
surrounding environment; 2) user interface (UI), which prompts
warnings to drivers; and 3) a reasoning layer, which is the
main focus of this paper. We do not discuss basic sensing and
communication in this paper; we assume that the principals
reasoning layer receives sensing information about other nearby
principals. The algorithms in the reasoning layer are designed
to tolerate moderately noisy sensor data. Likewise, we are not
addressing the design of in-vehicle UIs. Our system would
benet from recent UI research on low-distraction ways of
issuing warnings, e.g., in the periphery of head-up displays or
with directional sound. We have taken great care to make the
output of the reasoning layer useful to a wide variety of UIs
(e.g., audio, in-dash, heads-up, and roadside signage) by pro-
viding an expected utility assessment that includes information
necessary to make critical decisions on if, when, and how to
issue warnings. The actual decisions are customized to the UIs.
A. Dual Assessment
A central aspect of our architecture is the division of the
reasoning layer into two parts, which we will refer to as
preliminary assessment and specialized assessment. This
architecture is shown in Fig. 1. The preliminary assessor takes
a management role. Initially, the preliminary assessor ex-
amines all pairs of principals for possible collision scenarios.
For any potential collision, it creates a specialized assessor to
closely examine collision risks within a lookahead horizon. The
1524-9050/$26.00 2011 IEEE
GREENE et al.: COMPUTATIONAL ARCHITECTURE FOR CLEWS FOR VEHICLE, PEDESTRIAN, AND BICYCLIST 943
Fig. 1. Overview of the architecture.
lookahead horizon value is empirically chosen. For instance,
a timeline of 3 seconds is normally sufcient for collision
avoidance without the need for emergency maneuvering. The
preliminary assessor maintains multiple specialized assessors,
allocating computational resources to the most urgent and
serious potential collisions. It also interfaces to the UI, allowing
the UI to decide about which potential collisions to warn the
driver and when. In contrast, the specialized assessor can be
considered as a relatively computationally expensive tool for
accurate risk assessment but invoked only on demand by the
preliminary assessor.
This dual-assessment approach effectively solves three criti-
cal problems.
1) The complexity of activity that might cause accidents:
The geometric approach of the preliminary assessor is
highly optimized for covering large numbers of principals
and scenarios.
2) Managing computational resources: By rst computing
preliminary assessments of a wide range of possible
accidents, the reasoning layer is in an ideal position to
allocate computational resources to the computationally
more expensive specialized assessors.
3) Model selection: The performance of risk assessment is
highly dependent on the validity of the models describing
the principals behaviors. In real-world trafc, a large
percentage of principals follow predicable patterns; the
preliminary assessor sorts through all these patterns and
selects models for specialized assessors.
In the next two sections, we describe the design of the dual
assessment approach. Roughly speaking, the preliminary asses-
sor does a rapid geometric identication of potential accidents
and starts specialized assessors to do more detailed statistical
analyses of potential accidents when necessary.
B. Related Work
Among the collision detection/avoidance literature, CLEWS
is unique in its emphasis on providing advance warning in dense
intersections. It includes techniques to deal with the compu-
tational complexity and long-term modeling of the principals
behaviors. Other collision detection work has focused on emer-
gency braking [1], [2] and less complex (e.g., rural) intersec-
tions [3], [4]. Often, linear dynamics models are used [5], [6],
which are suitable and efcient for short-term prediction but are
limited in modeling driver maneuvering behavior over the time
scales necessary for early-warning. In contrast, the two-stage
risk assessment approach that CLEWS takes is specically
designed to handle busy intersections with complex principal
motion. This is the main differentiator. Another key aspect of
our system is the concept of risk assessment. This concept has
appeared in the EUs PROTECTOR project [7], which produces
a conict risk analysis. However, the PROTECTOR system
simply focuses on probability, rather than taking into account
the benet of issuing a particular kind of warning, and does not
consider warning timing or adaptation to different types of UI.
Statistical approaches are widely adopted in collision risk
assessment; for examples, see [8][11]. Statistical inference
methods such as parametric lters (e.g., Kalman lter) or
nonparametric techniques (e.g., Monte Carlo simulation) have
been applied to decide the collision risk based on observations.
Our specialized assessor follows the same line. The novelty of
our approach is the carefully designed computational tradeoff.
We use the preliminary assessor for quick screening and the
specialized assessor for more accurate statistical risk assess-
ment. Because the preliminary assessment will be followed
by specialized assessment, the preliminary assessment can be
optimized for fast computation, it uses a geometric form of
reachable sets but does not need to compute the reachable
sets with stochastic detail (compare [9]). Similarly, because
the specialized assessment will be preceded by a screening
with preliminary assessment, the specialized assessment can
be enhanced with richer and more computationally challenging
modeling. Here, we have included driver alertness in the model-
ing, which we believe will be valuable in avoiding unnecessary
warnings when drivers are already responding to potential col-
lisions. Furthermore, we have developed a variety of statistical
techniques for this kind of specialized assessment, varying
from a relatively simple interacting multiple model (IMM)
Kalman lter to more computationally intense particle lters.
As described in Section III, these techniques can be chosen to
obtain a suitable tradeoff between computation complexity and
risk accuracy.
II. PRELIMINARY ASSESSOR
In the dual assessment framework, the preliminary assessor
is designed to act as a fast screener; among the hundreds of
principals at a busy intersection, the preliminary assessor picks
out possible collision pairs on which the system can focus
resources. The requirement on the preliminary assessor is on
fast computation rather than high accuracy. Here, we describe a
geometric approach optimized for computation efciency.
A. Motion of Principals
Preliminary assessment uses a library of likely trajectories
for principals and applies efcient geometric tests to determine
if two principals might collide. In our architecture, the motion
of a principal is decomposed into a trajectory in the xy
plane and a dynamics along the trajectory. This is based
on the observation that principals usually follow highly pre-
dictable trajectories, e.g., the curves followed by right-turning
vehicles in an intersection are very similar, but their speed and
944 IEEE TRANSACTIONS ON INTELLIGENT TRANSPORTATION SYSTEMS, VOL. 12, NO. 4, DECEMBER 2011
Fig. 2. Dynamics and a trajectory that, when combined, describe a vehicle
slowing as it makes a left turn.
acceleration along those trajectories can be highly variable.
A trajectory T(s) is a vector-valued function from an arc
length parameter s to the physical plane xy. For our prototype
system, T is a piecewise function of line segments and arc
segments. A dynamics D(t) is a function from time t to
distance s. For our prototype system, D is a piecewise function
of periods of steady speed (i.e., at +b) and accelerations or
decelerations (i.e., at
2
+bt +c). A motion is a composition
of a trajectory and a dynamics: T(D(t)) (see Fig. 2 for an
example). Such a decomposition of motion is used elsewhere in
vehicle safety analysis, e.g., in [8], a road coordinate system is
used to separate the trajectory from the dynamics, and in [9], a
trajectory is used as a frame of reference for a stochastic dynam-
ics model. We have chosen a simple set of geometric primitives
to represent the motion of principalsprecise delity is not
critical since all of the computations described later will make
allowance for the principals not precisely following trajectories
and dynamics.
B. Geometric Computation: Segmented Cones
The central computational element of the preliminary as-
sessor is the segmented cone. Segmented cones are worst
case descriptions of where principals might travel as they
follow scenarios. They are generated from a library of scenarios
associated with the local road geometry. For example, there
might be scenarios for vehicles stopping at an intersection,
turning right, changing lanes, etc., and scenarios for pedestrians
crossing in crosswalks or jaywalking.
A segmented cone is a region dened in 3-D space (including
the time dimension, i.e., (x, y, t)). It covers most of the likely
future locations of a principal following a particular scenario.
A segmented cone is similar to a reachability analysis of a
principals future location, except it is conditioned on a scenario
being followed, and it excludes very low probability locations.
Thus, e.g., if the scenario is vehicle makes a right turn, then
a segmented cone for that scenario describes a region S R
3
.
If the vehicle does make a right turn, then, with very high prob-
ability, the vehicles future coordinates (x, y, t) are inside of S.
As t grows larger, it is harder to predict where a principal will be
located; therefore, segmented cones will are with increasing t,
giving them the inverted cone appearance shown in Fig. 3.
We refer to these as segmented cones, because they are
assembled from prismatoids joined together at a xed set of t
values: t
0
, t
1
, t
2
, t
3
, . . .. For each prismatoid, there is a bound-
ing box, and there is an overall bounding box for the entire
segmented cone. These bounding boxes are shown in red and
Fig. 3. Segmented cone with its bounding boxes.
blue in Fig. 3, respectively. The bounding boxes are the basis of
highly efcient cone intersection. It is easy to decide whether
two bounding boxes intersect; only comparison operations are
involved. The overall bounding boxes can be compared rst to
determine if more comparisons are necessary.
The generation of cones is based on the context of the
principalthis context suggests which scenarios are likely and
cones are generated for all likely scenarios (sometimes more
than one per principal, as we shall see shortly). The context is
dened as a conjunction of trigger conditions, e.g., a vehicle
is near the center of a left-turn lane and within 40 m of an in-
tersection, so a left-turning cone should be generated. (Trigger
conditions can be decided based on considerations as the type
of the principal, the location and velocity of the principal, and
the state of nearby trafc lights.) Once a cone is triggered, the
cone itself is created by combining a priori information from
the scenario with the current state of the principal to project a
cone forward in time. Fig. 4(a) illustrates the information used
in cone generation, and Fig. 4(b) illustrates the cone generated.
In this case, a priori information includes a trajectory from the
scenario (a left turn), and the current state includes the princi-
pals location and velocity. These are combined as follows: The
principals current displacement from the trajectory is applied
to the entire trajectory. Various extreme values for the para-
meters such as maximum acceleration or maximum trajectory
deviation (a priori information associated with the scenario)
are applied to the principals current state to generate polygons
at future time values. For example, one point of the polygon
at layer t (i.e., the forward left corner) would be determined
by computing the largest possible value for the dynamics (i.e.,
s
max
= a
max
t
2
+v
current
t +s
current
) and then, at T(s
max
) on
the trajectory, adding an additional displacement, which we
will refer to as the are, that is perpendicular and tangent
to this point and adjustable with a scalar parameter f. The
are accounts for the inaccuracy in the principals following the
trajectory (e.g., lane position) and inaccuracy in the trajectory
representing the scenario. The forward left corner would be at
T(s
max
) + (T
(s
max
) +T
(s
max
))f. Other extreme points on
the polygon are computed in a similar way, and the polygons on
adjacent layers form the prismatoids that are used to create the
bounding boxes in the segmented cone. This way, the scenario
is customized to the principals, e.g., a faster moving vehicle will
generate a more extended cone.
GREENE et al.: COMPUTATIONAL ARCHITECTURE FOR CLEWS FOR VEHICLE, PEDESTRIAN, AND BICYCLIST 945
Fig. 4. Cone generation. (a) Top panel-trigger conditions and parameters. (b) Bottom panel-generated cones.
The extreme values of the parameters, e.g., the maximum
acceleration a
max
, are chosen to cover most driving behavior
with high probability, and therefore, the polygons formed by
sampling combinations of extremes (e.g., max acceleration,
with max lane deviation) will also cover the principals future
locations with high probability, assuming a linear trajectory.
However, nonlinearities such as curved trajectories and accel-
eration between time slices mean that prismatoids will not
necessarily cover all the extreme values. Because this is part
of a dual assessment, where this preliminary assessment will
be followed by a more accurate specialized assessment, we
chose to favor computational efciency in our initial prototype,
using the are parameter previously described to dilate the
prismotoids. This means that the preliminary assessment is
less precise, with higher false positives. Alternative approaches,
such as computing more perimeter points on the polygons
and/or computing ner time slices in the segmented cones,
would make the preliminary assessment more precise and re-
quire less dilation. This tradeoff needs further exploration.
C. Computation of Preliminary Assessment
Because segmented cone intersection is so efcient, it can
be frequently repeated (e.g., intersecting all cones two to ve
times per second). In our prototype system, a vehicle repeatedly
triggers cones for itself and any other principals being tracked.
The generated cones are compared with each other to determine
if they intersect. When two segmented cones intersect [e.g.,
Fig. 5(b)], this indicates a possible collision, and a preliminary
assessment of that collision is computed. Because preliminary
assessment is based on large worst case sized cones, the po-
tential collision may still be extremely unlikely, and therefore,
we will choose some scenarios for a full specialized assess-
ment that will arrive at probabilities and expected utilities that
can help determine if warnings are warranted. The preliminary
assessment will enable the system to allocate resources to those
scenarios most deserving specialized assessment.
Fig. 6 shows in a stylized manner how a preliminary as-
sessment is computed from a segmented cone intersection. We
Fig. 5. Cone scenarios. (a) Multiple cones (for stopping, proceeding straight,
and turning left or right) are triggered as a vehicle approaches an intersection.
(b) Two vehicle cones intersect. They might collide. A preliminary assessment
is computed.
Fig. 6. Deriving a preliminary assessment from the segmented cone
intersection.
estimate time-to-accident as the point where the cones rst
intersect. The probability of collision is computed by separately
considering each of the overlapping tiers level by level, esti-
mating the probability based on the amount of overlap, and
then using (conservatively) the highest probability among the
overlapping tiers. For two overlapping tiers, the probability is
estimated as
P(s
i
, s
j
) = p
s
i
p
s
j
_
o
a
i
__
o
a
j
_
(1)
where s
i
and s
j
are the two scenarios that caused the two cones
to be generated, a
i
and a
j
are the xy areas of the two bounding
boxes, and o is the xy area of the overlap of these two
946 IEEE TRANSACTIONS ON INTELLIGENT TRANSPORTATION SYSTEMS, VOL. 12, NO. 4, DECEMBER 2011
Fig. 7. Overall ow of computation.
bounding boxes. Equation (1) includes the prior probabilities
for the two individual scenarios p
s
i
and p
s
j
. (These are xed
probabilities in the scenario library.) This formula is heuristic.
We also estimate seriousness based on the kinetic energy and
vulnerability of the principals. Once the preliminary assessment
is completed, the product of the probability and the seriousness
gives a utility estimate to rank the potential accidents for
specialized assessment and possible warning.
D. Managing Limited Computational Resources
Fig. 7 shows the operation of the preliminary assessor. A
vehicle approaching an intersection (or other region for which
early-warning is useful) will rst compute a set of triggers.
These triggers need to be computed only once on approach, and
they will be repeatedly reused as the vehicle travels through
the intersection. The triggers depend on the geometry of the
intersection and the library of scenarios that will be tracked
for early-warning. For example, if the intersection contains
crosswalks, there will be triggers that will cause segmented
cones to be generated when pedestrians enter those crosswalks.
The geometry of the intersection must be available for this
initial trigger formation. We expect that there will be triggers
for each possible major action by a principal, e.g., turn left,
stop, go straight, etc. Thus, we expect principals to occasionally
simultaneously trigger two to eight scenarios, particularly ap-
proaching choice points in intersections. This gives worst-case
combinatorics proportional to (8n)
2
; however, the preliminary
assessor is optimized to quickly compare the segmented cones
generated from these scenarios, quickly eliminating many pair-
wise scenarios (or, in rare cases, offering generalized warnings
of multiple collisions).
Preliminary assessments provide a basis for resource allo-
cation for specialized assessment. There will be multiple ap-
proaches to specialized assessment (several are described in the
next section) that will provide a tradeoff between the amount of
computation used and the accuracy of results achieved. Using
the results of preliminary assessment, we can determine which
scenarios deserve specialized assessment and, of those deserv-
ing specialized assessment, which algorithm should be used.
These choices have several objectives: 1) to avoid unnecessary
warnings because the preliminary assessor has overestimated
the collision; 2) to avoid overlooking scenarios because the
preliminary assessor has underestimated potential collisions;
and 3) when warnings are presented to the driver, the timing
of the warning (see the UI section) benetting from careful
specialized assessment.
We have explored several cost-benet approaches to allo-
cating resources for specialized assessment. Given that we
expect to have a generous amount of computation allocated to
specialized assessment, we believe that the following simple
and robust approach will work well; we use a time slice between
0.2 and 0.5 seconds. At the beginning of the time slice, roughly
10% of the time is allocated to a thorough preliminary assess-
ment of all triggered scenarios for all nearby principals. A next
portion of the time slice (e.g., 60%) is allocated to specialized
assessment using a moderately expensive and reasonable accu-
rate IMM based on Kalman ltering (described later in the next
section). This kind of tracking is fast enough that many spe-
cialized assessments can be run during this portion of the time
slice; this will almost certainly cover the most critical scenarios.
Finally, the remainder of the time slice (e.g., 30%) is devoted
to more accurate specialized assessment algorithms. This xed
division of the time slice is not precisely optimal from the cost-
benet approach but has good cost-benet characteristics, and it
is more robust because it always allocates a xed amount (60%)
to obtain thorough coverage of the more critical scenarios.
Finally, we note that not all preliminary assessments re-
quire specialized assessment. Our prototype system supports
erratic behavior patterns, where the trajectory of the principal
is not very predictable, and thus, heavily ared cones are
generated to reect the lack of good a priori information.
These erratic scenarios would include such behaviors as a driver
turning the wrong direction on a one-way street, a driver falling
asleep and drifting into oncoming trafc, or a drivers trajectory
after a collision. The erratic scenarios do not have good
models for specialized assessment, yet the need for warning
is very high that the preliminary assessment alone will be
sufcient to provide warnings to the driver.
III. SPECIALIZED ASSESSOR
As we have described in the previous sections, the pre-
liminary assessors role is to examine all pairs of principals
(vehicles, pedestrians, or bicyclists) to quickly identify possible
collision incidents at a low computation. Accuracy is not a
major concern in the preliminary assessor stage. It is left to the
specialized assessor to perform accurate risk assessment when
necessary. In this section, we will describe the basic design of
the specialized assessor.
To motivate the need for accurate risk assessment, let us con-
sider a preliminary assessor shown in Fig. 8(a). The preliminary
assessor assesses risk by intersecting two cones projected into
the future, corresponding with the primary principal and an
other principal. If the two cones intersect, it calculates risk
based on the overlapping area (marked by the red ellipsoid).
The bigger the overlapping region is, the higher possibility
that they will collide. This is intuitively correct but with the
implicit assumption that the principal lies in the cone with a
uniform distribution. This is a rough approximation. Based on
GREENE et al.: COMPUTATIONAL ARCHITECTURE FOR CLEWS FOR VEHICLE, PEDESTRIAN, AND BICYCLIST 947
Fig. 8. (a) Preliminary assessor risk assessment via cone intersection. (b) Low collision probability. (c) High collision probability.
Fig. 9. Models. (a) Slotcar. The straight red line is the desired trajectory, and the blue curve is the actual motion path. (b) Driver alertness as a Markovian process.
observed data, one may believe that the vehicle is more likely
in certain positions, e.g., on the left edge of the cone, as shown
in Fig. 8(b), resulting in a low probability of collision. Fig. 8(c)
shows the opposite situation where the primary vehicle is close
to the right edge, with a high collision probability. These two
scenarios cannot be differentiated by the preliminary assessor.
Regardless of what the data suggests, the preliminary assessor
predicts the same collision risk. This shows the limitation of
preliminary assessor and calls for ner granularity and higher
accuracy in risk assessment. The specialized assessor is de-
signed to fulll this goal.
To enable early-warning, the specialized assessor needs to
predict collision well into the future. We formulate the risk
assessment problem as a statistical inference problem based on
relatively long-term (a few seconds, as opposed to a fraction
of a second) models. This sets us apart from most existing
collision warning systems such as [4], [5], and [12][14],
which focus on providing immediate collision warnings based
on short observation data. Our specialized assessor is model
based; principals are associated with a library of models, such
as a dynamics model specifying the way the vehicle moves
and the drivers mental model specifying how the driver acts
based on the surrounding environment. With these models, the
specialized assessor ts the data and makes inference about the
underlying state (e.g., position, velocity, and whether the driver
is paying attention). Based on the inferred state, the specialized
assessor makes predictions into the future and generates a risk
assessment, which can be used to make informed decisions
about whether a warning is necessary. Model-based approaches
are exible, allowing new models to be integrated and existing
models to be improved without the need to completely redesign
the system.
A. Models
The dynamics model species the way a principal moves.
In our prototype, we use a relaxed slotcar model, as shown
in Fig. 9(a). A slotcar is a powered miniature toy automobile
that is guided by a groove or slot in a track. In our prototype
model, the principal follows a predened desired trajectory (the
red straight line in the gure) but is allowed to deviate from
the trajectory to simulate real-world motion. The principal is
subject to two model forces: 1) a perpendicular force pulling
it toward the desired trajectory if it deviates and 2) a tangential
force adjusting the speed toward some target speed. The target
speed is a parameter that may be dependent on several factors:
the driving habit of the driver, the speed limit at the current
location, and the speed of cars around the principal.
Driver (and/or pedestrian and bicyclist) alertness is also
important to risk assessment. If a driver is alert, he/she has less
chance colliding with others, even if the vehicle is currently
going fast. This aspect of the modeling will help avoid unnec-
essary warnings to otherwise alert and responding drivers. The
driver alertness is formulated as binary: 0 for nonalert and 1
for alert. The alertness model is described as Markovian [see
Fig. 9(b)]: If the driver is alert at time t, he/she has a high
probability for staying alert at the next time instant t + 1. The
same is true for the transition from nonalert back to alert. The
parameters and characterize the drift and are assumed to be
small (< 0.1). Furthermore, the transition is asymmetric and
dependent on the surrounding environment. For example, if the
driver is alert and realizes the potential danger of hitting another
vehicle/pedestrian, then he/she will pay conscious attention and
will not drift to nonalert state before the danger clears. With this
alertness model, the specialized assessor seeks to infer about the
drivers alertness from the vehicle history data.
Similar ideas of modeling driver attention can be found in
[8]. It introduces a directional visibility model, in which the
driver is more likely to pay attention to the direction front
than to the sides and back. In essence, this is an observation
model. In contrast, our Markovian alertness model is part of
the dynamics model, describing the time-varying pattern of
driver alertness. Although both models are incorporating driver
attention in collision prediction, they are quite different. One
948 IEEE TRANSACTIONS ON INTELLIGENT TRANSPORTATION SYSTEMS, VOL. 12, NO. 4, DECEMBER 2011
can even combine the directional observation model in [8]
and the dynamic alertness model in this paper into a collision
assessment system if necessary. Another difference is that our
scheme performs statistical inference regarding driver alertness
state, and this state can be submitted to UI to avoid unnecessary
warnings.
B. Risk Assessment Using Statistical Inference
With the models previously described, the specialized as-
sessor assesses risk by inference in the state space X =
(pos, vel, alertness). Two questions need to be answered at
any time t. First is the ltering (state estimation) problem:
Given the observation history data z
t
up to time t, in what
state is the principal? The second is the prediction problem:
Given the principals current state at t, in what state will the
principal will be at time t + 1, t + 2, , t +N, where N is the
prediction horizon (3 seconds in our implementation)? Here, for
simplicity, we use the digital time notion, assuming the intervals
between neighboring time t and t + 1 is unit time. In practice,
the time step t is empirically chosen. A small value of t
means increased computation; a large value of t may result
in missed collision due to sparse sampling in time (a.k.a. the
tunneling effect, i.e., two objects cross each other in continuous
trajectory but have well-separated positions when sampled at a
large interval t). However, a tunneling effect can be detected
in the preliminary assessor, and if tunnel effect is suspected,
the preliminary assessor will run the specialized assessor at
a shorter sampling interval to avoid missed collision. In our
implementation, t around 1/4 seconds works well.
For the ltering problem, we refer to the generic formulation
of sequential Bayesian ltering, which recursively updates the
posterior of underlying state x
t+1
as
p(x
t+1
|z
t+1
) p
o
(z
t+1
|x
t+1
)
_
X
p
d
(x
t+1
|x
t
)p(x
t
|z
t
) dx
t
.
(2)
The integral makes a single step of prediction, bringing
the previous state up the current time and then applying a
new external measurement to modify the state. The prediction
step assumes an object dynamics model p
d
(x
t+1
|x
t
). In our
prototype, the dynamics obey the relaxed slotcar model and the
alertness model. The prediction is then multiplied by a likeli-
hood, reecting the contribution of observation z
t
and using an
observation model p
o
(z
t+1
|x
t+1
). The lter (2) is sequential:
the current lter distribution p(x
t+1
|z
t+1
) is computed from
the previous lter distribution p(x
t
|z
t
) at every step.
The prediction problem is simpler. Without any observation
input, it is entirely based on the car dynamics and driver alert-
ness model. From the predicted state of the primary and the
other principals fromt to time horizon t +N, the specialized
assessor evaluates risks and predicts the following: 1) whether
an accident is likely; 2) when and where the accident may be;
and 3) how severe the accident will be. This information is then
returned to the preliminary assessor, delivered to the human
machine interface module, and possibly surfaced as a warning
to the driver.
C. Particle Filtering
For the ltering and prediction problem, we have experi-
mented with several types of techniques. The rst type is the
well-known particle lter [15], which represents a continuous
probability density function as a set of weighted Monte Carlo
samples, which is referred to as a particle set {(x
i
, w
i
)}, where
x
i
is the state of the particle (e.g., 2-D location and alert-
ness), and w
i
is the weight reecting the probability in Monte
Carlo simulation (
n
i=1
w
i
= 1). Each particle (x
t
i
, w
t
i
) rst
evolves its state independently based on the dynamics models
p
d
(x
t+1
|x
t
) and then adjusts its weight based on observation
data as
w
t+1
i
= w
t
i
p
_
z
t+1
|x
t+1
i
_
.
The resulting particle set {(x
t+1
i
, w
t+1
i
)}
n
i=1
corresponds to
the updated ltered belief p(x
t+1
|z
t+1
). Since we can only
maintain a nite number of particles in practice, the last step
is a resampling step according to the weights w
i
, which is
performed on the particle set, so that the particles with small
weights are eliminated (since these particles correspond to un-
likely target states) and replaced by multiple samples of the par-
ticles with large weights, allowing the regions around the likely
states to be more thoroughly explored. The literature [15] has
shown that this resampling step is critical in order for the parti-
cle set to remain a faithful representation of the updated belief.
We refer the readers to the tutorial paper [16] for an overview
of particle ltering applying to target-tracking applications.
The advantage of particle lter is its remarkable exibility.
It can accommodate almost any form of dynamics p
d
(x
t+1
|x
t
)
and observation model p
o
(z
t+1
|x
t+1
). The drawback is its high
computational complexity; a large number of particles need to
be simulated to maintain the representativeness of the particle
set. In practical situations, the high computational complexity
may make this infeasible. We reserve particle ltering for only
the most serious potential collisions and the most complex
models.
D. IMM Kalman Filtering
The second type of approach is the commonly used Kalman
lter [17], [18]. It is a special case of sequential Bayesian
ltering under the assumption that the object dynamics and
the observation model are both linear and Gaussian. Because
a Gaussian distribution can be completely characterized by
its mean and covariance, the Kalman-ltering equations se-
quentially update the mean x
= E[x
t
|z
t
] and the variance
P
t
= E[(x
t
x)(x
t
x)
T
] as measurements are observed via
simple Kalman gain linear operations. It is computationally
efcient, but the performance is often limited by its modeling
assumptions. In the collision warning problem, we linearize
principal state (pos, vel) with respect to the principal trajectory
to comply with the linear assumption. However, in practice,
the (pos, vel) state may be nonlinear and multimodal (which is
clearly non-Gaussian). To tackle this difculty, we use a method
known as the IMM algorithm [19], [20], which is speci-
cally designed for ltering in linear systems with Markovian
transitions.
GREENE et al.: COMPUTATIONAL ARCHITECTURE FOR CLEWS FOR VEHICLE, PEDESTRIAN, AND BICYCLIST 949
IMM assumes multiple modes of operation. In our case,
the vehicle state has multiple modes, which includes various
maneuvering (stopping, accelerating, steering) and driver alert-
ness (binary). The Markovian transition assumption is natural
and reasonable; hence, IMM is well suited. Within each mode,
the principal follows a linear dynamics model. The principal
may switch from one mode to another. We assume that the
transition probabilities is known or learned a priori. IMM
formulates the ltering problem as a hypotheses management
problem, where the hypotheses {H
1
, H
2
, . . . , H
K
} are
the K different maneuvering modes, with probability
{
1
,
2
, . . . ,
K
}, respectively, and
i
i
= 1. The goal is to
update the posterior probability for each hypothesis
t
i
based on
the observation history z
t
. The question is, Can we estimate
t
sequentially as time t advances?
The answer is yes. The technical details of IMM are de-
scribed in [20]. The intuition is given as follows: At any point of
time t, we start with a hypothesis prior set {
t
j
, j = 1, . . . , K},
where
t
j
= p(H
t
j
|z
t
). Now, assume that, at time t + 1, hypoth-
esis H
i
is true. Given that the system is linear and Gaussian
under H
i
, the Kalman lter is appropriate. One can update the
state estimate and corresponding covariance and compute the
likelihood p(z
t+1
|H
i
). The hypothesis probability can then be
updated as
t+1
i
j
_
t
j
p
_
H
t+1
i
|H
t
j
_
p(z
t+1
|H
i
)
.
We think IMM are particularly suitable for collision pre-
diction applications, because they handle the two-state (alert
versus nonalert) model above very easily, and we expect that
specialized tracking of most real-world driving will contain
several distinct modes like these. The computation cost is
K-times the normal Kalman lter, but it is still much more
efcient than the particle lter.
E. Computation of Specialized Assessment
Based on the forward prediction described in earlier sections,
a specialized assessor computes an assessment for every time
slice. The assessment includes the following information.
1) s
i
and s
j
are the scenarios that the principals are fol-
lowing. (This includes trajectories, text descriptions, and
other useful information for presenting warnings.)
2) P(t) is the probability assessed now (time t) that there
will be a collision in the future, assuming that the princi-
pals follow s
i
and s
j
. (This probability is conditioned on
the scenarios.)
3) T(t) is the expected time of the collision. (This value and
all the following components of the specialized assess-
ment are conditioned on the collision occurring P(t) and
on the scenarios s
i
and s
j
.)
4) L(t) is the predicted location of the collision.
5) B(t, t
),
as shown in Fig. 10, in the specialized assessment. Ideally,
B(t, t