Generalized Murty`s Algorithm With Application to Multiple

Generalized Murty’s Algorithm With Application to
Multiple Hypothesis Tracking
Evan Fortunato, William Kreamer, Shozo Mori, Chee-Yee Chong, Gregory Castanon
BAE Systems, Advanced Information Technologies, Burlington, MA, U.S.A.
{evan.fortunato,bill.kreamer,shozo.mori,chee.chong,greg.castanon}@baesystems.com
This work supported by DARPA/IXO and AFRL/IFKE under Contract No. FA8750-05-C-0115
Approved for public release; distribution is unlimited
Abstract – This paper describes a generalization of models was derived in [19] for i.i.d.-Poisson cases, and for
Murty’s algorithm generating ranked solutions for general i.i.d. but non-Poisson cases in [20-21].
The recursive MHT algorithm described in [5] can be
classical assignment problems. The generalization extends
the domain to a general class of zero-one integer linear viewed as a repeated application of track-to-report bipartite
programming problems that can be used to solve multi- assignment hypothesis generation and evaluation. An
frame data association problems for track-oriented algorithm that selects only a single best track-to-report
multiple hypothesis tracking (MHT). The generalized assignment hypothesis and propagates it forward can be
Murty’s algorithm mostly follows the steps of Murty’s viewed as an extreme form of approximate recursive MHT
ranking algorithm for assignment problems. It was algorithm, called the zero-scan algorithm. Such a singleimplemented in a hybrid data fusion engine, called All- best hypothesis selection can be formulated [6] as a classical
Source Track and Identity Fusion (ATIF), to provide a k- assignment problem [7,8]. One approach of implementing
best multiple-frame association hypothesis selection recursive MHT is by sequential application of k-best
capability, which is used for output ambiguity assessment, bipartite assignment algorithms [9,10], so as to preserve
multi-frame optimal data association solutions through the
hypothesis space pruning, and multi-modal track outputs.
recursion. It was found out [11] that application of Murty’s
Keywords: Generalized Murty’s algorithm, data k-best algorithm to the bipartite, track-to-report assignment
association hypothesis evaluation, k-best multiple frame is indeed very effective.
assignment (MFA), multiple target tracking (MHT), trackOn the other hand, track-oriented MHT [12-14] is
oriented MHT, All Source Track and Identify Fuser (ATIF). based on batch processing of data association hypothesis
generation and selection in which a single best (multidimensional or multi-frame data assignment) hypothesis is
1 Introduction
sought by a {0,1} integer programming [4] method,
We are concerned with a generalization of Murty’s Lagrangian relaxation algorithms [15,16], or other
algorithm that selects k-best solutions for bipartite techniques. The hybrid data fusion algorithm developed by
assignment problems [1]. This generalization is to extend BAE Systems, called All Source Track and Identity Fusion
applicable problems to a general class of {0,1} linear (ATIF), is based on the track-oriented MHT approach, but
programming problems, and was motivated by the need to uses another kind of relaxation method for multi-frame data
association [17] to process track reports as well as
assess the quality of the solutions in track-oriented multiple
measurement reports (thus called “hybrid”).
hypothesis tracking. Thus, we need an effective algorithm to
In difficult tracking situations, such as high target
select not only the best but also the second, the third, and in
density
situations, the best multi-frame data association
general down to the k-best multiple-frame data association
hypothesis
may only be slightly better than many other
hypotheses.
hypotheses.
To quantitatively identify such situations, we
The goal of multiple target tracking is to estimate the
need
the
k-best
(multiple) hypotheses to probabilistically
states of an unknown number of dynamical objects, called
assess
the
ambiguity
of the data association solution(s).
targets, using imperfect reports (or measurements) with
Moreover,
multi-frame
hypothesis selection is used as the
unknown origins, extraneous returns, and generally lessmain
hypothesis
management
technique in track-oriented
than-one probability of detecting any target [2,3]. Under
MHT
to
control
the
growth
of
the
hypothesis space. In high
such a situation, it is necessary to decide or hypothesize (as
target density situations, k-best (multiple) hypotheses
a form of delayed decision) the origin of each report since
selection is proven to be very useful in preserving seemingly
state estimation is meaningful only when conditioned by a
unlikely but potentially vital hypotheses.
data association hypothesis. Multiple hypothesis tracking
A k-best multi-frame hypothesis selection algorithm
(MHT) techniques were devised to generate, evaluate, and
was
developed
in [18] for the Lagrangian relaxation multimaintain multiple data association hypotheses. The earliest
frame
assignment
algorithm described in [15]. The objective
works on MHT algorithms produced a batch-processing
of
this
paper
is
to
describe
a new k-best hypothesis selection
algorithm in [4], and its recursive counterpart in [5].
algorithm
for
the
particular
(different) relaxation algorithm
Bayesian hypothesis evaluation with general non-Gaussian
used in ATIF, i.e., the linear programming algorithm where
1
0



0
A= 
1

0


 0
the integer constraints are relaxed to interval constraints.
Moreover, as shown in Section 3, the new k-best hypothesis
selection algorithm, described in this paper, can be applied
to a slightly wider class of {0,1} integer programming
optimization problems with a nonlinear objective function.
The next section, Section 2, will define the class of
problems to which our algorithm for ranking k-best
solutions can be applied. It is followed by the algorithm
description in Section 3. Section 4 describes the applications
of our k-best hypothesis selection algorithm implemented in
ATIF. Section 5 states our conclusions.
2
A Class of 0-1 Integer Programming
Problems
Let n be a positive integer and consider a {0,1} integer
programming problem,
Minimize f ( x ) subject to x ∈{0,1}n and Ax = b
(1)
with an arbitrary functional1 f : {0,1}n → ( −∞, ∞) defined
on the solution space that is the set of all the n -tuples of
numbers either 0 or 1, i.e., {0,1}n , where the constraint
m×n
matrix A is a zero-one matrix, i.e., A ∈ {0,1} , with a
given positive integer m , and b is an m -vector whose
elements are all 1s.
Eqn. (1) defines a class of problems that is a proper
extension of the bipartite assignment problems to which
Murty’s k-best algorithm is applied, since any bipartite
assignment can be defined by (1) with a linear objective
function2 f ( x ) = cT x with3 c ∈ ( −∞, ∞)n and the constraint
matrix A is expressed as
1
0
1
0
1
0
0
1
0
0
0
0
1
0
1
0
1
0
1
0
0
1
0
0
0
1
1
0
0
1
0
0
1
1
0
0
0
0



1
0

0


1 
(2)
Our problem is to find the best, the second-best, …,
and up to k-best solutions, with a given integer k, to a
problem for minimizing an arbitrary objective function f
with an arbitrary {0,1}-valued matrix A , i.e., a finite
sequence, x1 , x2 ,..., xk of k distinct feasible solutions, such
and Axi = b for i = 1,..., k , and
f ( x1 ) ≤ f ( x2 ) ≤ ≤ f ( xk ) .
We assume that there is at least one feasible solution,
i.e., an x ∈ {0,1}n such that Ax = b . We should note that
that
xi ∈ {0,1}n
x ∈ {0,1}n is feasible if and only if (i) for every row j of
A , there exists a column i such that x[i ] = A[ j , i ] = 1 , and
(ii) for any (i1 , i2 ) ∈ {1,..., n}2 such that i1 ≠ i2 , there is no
row j of A such that4 A[ j, i1 ] = A[ j , i2 ] = x[i1 ] = x[i2 ] = 1 .
This excludes any possibility of all-zero row of matrix A .
We also assume that, for each i = 1,..., n , there exists a row
j of A such that A[ j , i ] = 1 , to exclude any unnecessary
anomaly. Constraint redundancy may not hurt us
significantly. Nonetheless, since any pair of non-zero, {01}-vectors is linear dependent if and only if they are
identical, any redundancy can be removed easily.
3
Generalized Murty’s Algorithm
Following Murty’s original paper [1], we will use “stage” in
place of the more commonly used word “step,” in defining
our algorithm. First we introduce some notations to clearly
define successive decomposition of the feasible solution
space at each stage, which is the essential concept of
Murty’s ranking algorithm.
Let S = {x ∈ {0,1}n | Ax = b} be the set of all feasible
The functional f may take the value +∞ but such a case is
excluded from this paper to avoid unnecessary complication. By
{0,1}n , we mean the set of all the n -dimensional (column) vectors
whose components are either 0 or 1.
2
T
By X we mean the transpose of a vector or matrix X , so that
T
x y is the inner product when x and y are vectors of the same
dimension.
3
Again the objective coefficient c[i ] ( i = 1,.., n ) may be in
( −∞, ∞ ] , but such a case is avoided for this paper. Eqn. (2)
expresses a bipartite assignment problem with a square cost matrix
but it can be easily generalized to cover rectangular cost matrix
cases.
1
solutions, and for any pair ( I INC , I EXC ) of index sets, i.e.,
I INC ⊆ {1,..., n} (inclusion set) and I EXC ⊆ {1,..., n}
(exclusion set), let us define a restricted feasible solution set
S ( I INC , I EXC ) ⊆ S by

S ( I INC , I EXC ) =  x ∈ S

4
x[i ] = 1 for all i ∈ I INC and 
 (3)
x[i ] = 0 for all i ∈ I EXC

In this paper, we denote the i -component of vector x by x[i ] ,
and the (i , j ) -element of matrix A by A[i , j ] .
In the first stage, the original problem is solved using
an appropriate algorithm5, and since we assume S ≠ ∅ , we
have at least one best solution xˆ1 ∈ {0,1}n with a non-empty
index set Iˆ1 = {i ∈{1,..., n} | xˆ1[i ] = 1} = {iˆ(1,1) ,..., iˆ(1,n ) } . Then
1
we decompose the set of all feasible solutions as
S =∪
n1 +1
=1
(1, )
(1, )
S ( I INC
, I EXC
) where
(1, )
(1, )
empty, we should find a best solution in S ( I INC
, I EXC
).
Then, we make a list of triples, each of which,
( xˆ , IˆINC , IˆEXC ) , consists of an optimal solution x̂ , and
inclusion and exclusion index sets that define the restricted
solution space S ( IˆINC , IˆEXC ) in which x̂ is an optimal
solution. Then the list of such triples ( xˆ , IˆINC , IˆEXC ) is sorted
according to the values of objective function f ( xˆ ) , as
(1, )
 I INC
= {iˆ(1,1) ,..., iˆ(1, −1) } if >1, ∅ otherwise
 (1, )
 I EXC = {iˆ(1, ) } if <n1 , ∅ otherwise
(4)
(1, )
(1, )
, I EXC
)} is a collection of nonIt is clear that {S ( I INC
=1
n1 +1
intersecting
S(I
(1,n1+1)
INC
,I
(1,n1+1)
EXC
sets. But it is important to note
n1 +1
(1, )
(1, )
, I EXC
),
) = S(Iˆ1,∅) ={xˆ1} and S = ∪ =1 S ( I INC
and hence, we exclude the best solution x̂1 from the
subsequent search but nothing else.
x5 =1
x3 =1
x1 =1
S = S(∅,∅)
x5 = 0
x3 = 0
x1 = 0
S({1,3,5},∅)
= {xˆ1}
S({1,3},{5})
S({1},{3})
S(∅,{1})
Fig. 1: Solution Space Decomposition
Fig. 1 illustrates this decomposition process in the first
stage.
In
the
figure,
we
assume
xˆ1 = [1 0 1 0 1 0 0 ]T ∈ {0,1}n is an optimal solution in the
original solution space S = S (∅, ∅ ) . The solution space is
then decomposed into four sub solution sets by the
conditions (i) x1 = 0 , (ii) x1 = 1 and x3 = 0 , (ii) x1 = x3 = 1
and x5 = 0 , and (iv) x1 = x3 = x5 = 1 . In our generalized
Murty’s algorithm (as well as the original Murty’s
algorithm), one of the sub solution sets obtained at the end
of each stage, is decomposed in this way in the next stage
until we find k best solutions.
In the first stage, we then solve the optimization
problem (1) with modified or restricted A , b and f for
(1, )
(1, )
each restricted feasible solution set S ( I INC
, I EXC
),
= 1,..., n1 . The modification can be easily done by
removing appropriate rows and columns from the constraint
matrix A and modify b and f accordingly. Any of
(1, )
(1, )
S ( I INC
, I EXC
),
= 1,..., n1 , may be empty, but if it is not
( xˆ , Iˆ
( )
INC
( )
, IˆEXC
)
N
=1
. Then x̂1 is a best solution to the original
problem while x̂2 is a second best solution. To rank further
solutions, we may need to iterate more stages.
As a recursion assumption, we assume that, at the end
N
( ) ˆ( )
of
of any stage, we have a sorted6 list xˆ , IˆINC
, I EXC
(
{
}
( ) ˆ( )
triples so that S ( IˆINC
, I EXC )
N
=1
)
=1
is a partition of the feasible
solution set S and each x̂ is an optimal solution within
( ) ˆ( )
each restricted solution space S ( IˆINC
, I EXC ) . Let us call a
( ) ˆ( )
solution x̂ isolated if S ( IˆINC
, I EXC ) = {xˆ } . Then for the
next stage, we need to decompose the solution space
( L ) ˆ( L )
S ( IˆINC
, I EXC ) where xˆL is a best non-isolated solution in the
list, if we need to have more than L solutions.
( L ) ˆ( L )
At stage K , let S ( IˆINC
, I EXC ) be the solution set (with
an optimal solution xˆL ) that we need to decompose. The
decomposition is done in a way similar to (4) but now
(K, )
( L)
incrementally, i.e., I INC
= IˆINC
∪ {iˆ( K ,1) ,..., iˆ( K , −1) } and
(K, )
( L)
I EXC
= IˆEXC
∪ {iˆ( K , ) } ,
= 1,..., nK , using the index set
( L)
(L)
) | xˆ L [i ] = 1} = {iˆ( K ,1) ,..., iˆ( K ,nK ) } .
IˆK = {i ∈{1,..., n}\ ( IˆINC
∪ IˆECL
(K , )
(K , )
, I EXC
) that is not empty, obtain a
Then, for each S ( I INC
best solution with each restricted solution space, add new
(K, )
(K, )
triples ( xˆ( K , ) , I INC
, I EXC
) to the existing sorted list, and re-
sort the list as necessary, thereby fulfilling our recursion
assumption for the next stage. Again, in stage K + 1 , we
( L ) ˆ( L )
need to decompose the solution space S ( IˆINC
, I EXC ) where
xˆL is a best non-isolated solution in the updated sorted list,
if we need to have more than L solutions. This completes
the definition of our generalized Murty’s algorithm.
At the end of each stage, the selected sub-solution
( L ) ˆ( L )
space S ( IˆINC
, I EXC ) to be decomposed in the next stage may
not contain an ( L + 1) -best solution. But if that happens, an
( L + 1) -best solution (that may not be isolated yet) should
be included in the sorted list of the triples already. Thus we
can guarantee that, at the end of stage K , we have at least
K + 1 best solutions.
5
The definition of the generalized Murty’s algorithm, defined in
this section, does not depend on any particular algorithm to solve
each sub-problem. We will discuss specific sub-problem solving
algorithms in the next section.
6
The list is sorted according to the objective function f ( xˆ ) .
4
if and only if the index i represents the j -th report ykj of
Application to Multi-Frame Data
Association for Track-Oriented
MHT
Let y1 , y2 ,... be a sequence of frames (or scans), such that
each frame yk = ( yk 1 ,..., ykmk ) is a set of measurement or
track
reports,
ykj .
Given
a
cumulative
set
( yκ )κ =1 = ( y1 ,..., yk ) of frames, a track on ( yκ )κ =1 is a
τ
defined
on
{1,..., k }
such
that
function
k
7
k
τ (k ) ∈{0,1,..., mk } , τ (k ) = j hypothesizing the j -th report
in the k -th frame originated from a target hypothesized by
track τ if j > 0 , while hypothesizing its non-detection in
the k -th frame if j = 0 . A data association hypothesis8 λ
on ( yκ )κk =1 is a set of non-overlapping, non-empty tracks9.
Under standard assumptions, including no-split-ormerged-report assumption, it is known [3,4,12-16] that each
data association hypothesis λ on ( yκ )κk =1 can be
probabilistically evaluated as



P (λ | ( yκ )κk =1 ) = C −1  ∏ L(τ )   ∏ γ FA (k , j ) 

 τ ∈λ
  j∉∪τ ∈λ {τ ( k )}

(5)
where C is the normalizing constant, L(τ ) is the track
likelihood function10, and γ FA (k , j ) is the density of false
alarms contained in the k -th frame evaluated at the value
ykj of the j -th report.
Taking a negative logarithm of eqn. (5), the
maximization of the a posteriori probability P (λ | ( yκ )κk =1 )
can be transformed into the optimization problem of eqn.
(1). The set of all the tracks plus the set of all the report ykj
for which γ FA (k , j ) > 0 is mapped into an index set
{1,..., n} . Each hypothesis λ is mapped into a solution
x ∈ {0,1}n . x[i ] = 1 if and only if the i -th track is included
in hypothesis λ when index i represents the track. x[i ] = 1
the k -th frame and hypothesis λ assigns report ykj as a
false alarm.
By the negative-logarithm conversion, the track
likelihood and the false alarm density functions in (5) are
transformed into the coefficient vector c ∈ ( −∞, ∞)n that
makes the objective function in (1) a linear functional as
f ( x ) = cT x . Thus the k-best hypothesis selection problem is
transformed into a k-best {0,1} integer linear programming
problem. In each stage of the generalized Murty’s algorithm
defined in Section 3, a set of integer linear programming
problems, each of which is equivalent to a multi-frame
assignment problem (said to be an NP-hard problem in [15]
if it is over three or more frames), must be solved.
In the ATIF implementation, each {0,1} linear
programming problem is relaxed to a [0,1] linear
programming problem, obtained by replacing the solution
space {0,1}n by a unit hypercube [0,1]n . Most of the time, a
[0,1] linear programming solver returns a {0,1} solutions
that are also optimal within the {0,1} problem. When it
does not, we use a version of branch-and-bound method to
obtain an optimal {0,1} solution, or an approximate {0,1}
solution if necessary. ATIF uses a very effective
combination of a linear programming solver and a branchand-bound supplement.
The k-best hypothesis selection implemented in ATIF
is used in several ways:
Ambiguity Assessment: When we select enough
number of hypotheses and evaluate them by their
likelihoods or unnormalized a posteriori probabilities
defined in eqn. (5), we may approximate the a posteriori
probability for each selected hypothesis by ignoring tail
hypotheses. We can estimate the quality of the
approximation by measuring the difference in the
approximate probabilities of the high-ranked hypotheses as
we increase k in k-best hypothesis selection. In some cases,
even when reporting a best or a few best hypotheses, it may
be important to see how much confidence we can put on
those hypotheses probabilistically.
7
κ = 1,..., k . Tracks τ 1 and τ 2 are said to overlap if
τ 1 (κ ) = τ 2 (κ ) > 0 for some κ .
10
The track likelihood is defined as an appropriate product of the
track-to-measurement likelihood functions and a priori target
density when it is initiated, and is a positive number.
k=5
A Posteriori Probability
We use the term track as originally used in [4] and [5]. It is
sometimes called a track hypothesis to emphasize the fact that it is
a hypothesized trace of detections from a single target.
8
Hereinafter we call a data association hypothesis simply a
hypothesis. It is sometimes referred to as a global hypothesis,
“global” emphasizing the fact that the hypothesis is concerned with
not only a single target but all the targets, while each track is
considered as a local hypothesis concerning only with a single
target.
9
k
A track τ on ( yκ )κ =1 is said to be empty if τ (κ ) = 0 for all
k=10
k=20
k=50
Ranked Hypotheses
Fig. 2: Approximate A Posteriori Hypothesis Probability
Fig. 2 illustrates the approximate calculation of a posteriori
probability of each data association hypothesis. This
example was taken from a simulation using a ten-target
scenario with extremely high target density of targets
moving together with almost constant velocities. An
approximate a posteriori probability of each data association
hypothesis over five frames is calculated by our k-best
hypothesis selection algorithm. Hypothesis 1 means the best
hypothesis, hypothesis 2 the second best, and so forth, in the
figure. The curves are parameterized by the number k of
selected best hypotheses and show the approximate
probabilities when ignoring the tail hypotheses. Fig. 3
shows the convergence of the ambiguity assessment in
terms of approximate a posteriori probability of each of the
best to the 5th best hypothesis.
A Posteriori Probability
Best Hypothesis
2nd Best Hypothesis
3rd Best Hypothesis
4th Best Hypothesis
5th Best Hypothesis
Hypothesis Ranking
Fig. 3: Convergence of Approximate A Posteriori
Hypothesis Probability
C P U T im e (se c)
Fig. 4 shows the CPU time to compute the k-best
hypotheses by a 2GHz-X86-based PC. The figure shows a
linear-plus-fixed-overhead type performance.
Number of Selected Hypotheses k
Fig. 4: CPU Time by K-Best Hypothesis Selection
Track Pruning: In a track-oriented MHT algorithm,
tracks are expanded and propagated forward when
recursively processing each frame of data, but data
association hypotheses are not maintained or propagated
explicitly. Whenever necessary, a set of data association
hypotheses are constructed as a collection of nonoverlapping sets of tracks. Thus the hypothesis space that
each track-oriented MHT algorithm maintains is the space
of the tracks on each past cumulative frame. Without an
appropriate set of hypothesis management, the hypothesis
space may grow rapidly, generally exponentially with the
number of frames.
Therefore, an appropriate algorithm for pruning tracks
is an essential part of any track-oriented MHT algorithm. A
set of tracks defined on a collection of all the past
cumulative frames, as well as hypotheses defined on a
collection of all the past cumulative frames, are naturally
ordered by the predecessor-successor relationship defined
through restriction and extension of functions. In this partial
ordering, both the set of tracks and the set of hypotheses
form a tree structure11.
The basic hypothesis management technique of trackoriented MHT is the so-called n-scan pruning, or mid-level
track pruning. The conventional n-scan pruning is based on
a single best hypothesis selection of a hypothesis λ formed
on frames up to frame K , and prunes all the tracks τ that
do not share the predecessor tracks that are formed on
frames up to frame K − n and are predecessors of tracks in
the best hypothesis λ . Equivalently, every hypotheses λ
formed on frames up to frame K are pruned away if the
predecessor of λ is not the predecessor of the best
hypothesis λ̂ . Using this pruning strategy, any track
initiated at frames between frames K − n + 1 and Κ are
protected, as well as preserving some variations of tracks
included in the best hypotheses (variations sharing the
predecessors).
Using this pruning, “ambiguities” are resolved
according to their “ages,” after having been given a fixed
time for additional data to disambiguate the ambiguities. In
some “confusing” situation, we may need to maintain
additional hypotheses instead of forcing to choose one of
“comparable” hypotheses. For this purpose, we can extend
the conventional n-scan pruning based on k-best hypothesis
selection instead of the single best hypothesis. The k-besthypothesis, n-scan pruning is to retain all the tracks except
for the tracks that do not share any of the predecessors of
the tracks included in at least one of the k-best selected
hypotheses. By using a large enough k, it is possible to defer
ambiguity resolution beyond the n of the n-scan pruning,
usually referred to as the depth.
Fig. 5 illustrates the effects of the k-best-hypothesis, nscan pruning, in terms of the number of retain tracks as a
function of the number k of the selected hypotheses and the
depth n of the n-scan pruning. The dramatic increase in the
number of tracks as the number k of hypotheses is reflected
by a large number of tracks generated by an extremely high
target density, over the five frames of track reports.
11
In the sense that an immediate predecessor of each track (or
hypothesis) is always unique if it exists.
N um b er o f R eta in ed T ra cks
Pruning Level = 4
Pruning Level = 3
Pruning Level = 2
Pruning Level = 1
given chances to grow while their likelihoods may be very
small and vulnerable to be pruned).
Fig. 6 shows the effect of the pruning level used by the
mid-level hypothesis selection, using the same sample data
used for Figs. 2 to 6. In the figure, the effect of the midlevel hypothesis selection is measured by the number of
retained tracks. The dramatic increase of the number of
retained tracks is mainly due to the fact that all the newly
initiated tracks under the evaluation level are included in the
set of retained tracks.
Pruning Level = 0
Number of Retained Tracks
Evaluation Level = 2
Number of Selected Hypotheses k
Fig. 5: K-Best-Hypothesis, N-Scan Pruning
Mid-Level Hypothesis Selection: ATIF system uses a
unique application of the generalized k-best hypothesis
selection algorithm. The application may be called mid-level
hypothesis selection. Consider selection of hypotheses based
only on a partial evaluation, i.e., a sub collection ( yκ )κk '=1 of
cumulative frames with k ' < k , when frame k is the current
frame. Each partial hypothesis λ on ( yκ )κk '=1 can then be
evaluated by a revised objective function
g ( x ) = max{ f ( x ) | x is a successor of x on ( yκ )κk =1} (6)
where f ( x ) = cT x is the objective function transformed
from the hypothesis evaluation of eqn. (5) through the
negative-logarithm transformation, x is the {0,1}
representation of a hypothesis λ on ( yκ )κk =1 , and x is the
{0,1} representation (with an appropriate dimension) of the
predecessor hypothesis λ on ( yκ )κk '=1 .
Although the objective function g defined by (6) is a
nonlinear function, we can apply our k-best solution
selection algorithm as described in Section 3, and moreover,
each sub-problem appearing in this k-best optimization
process can be solved by the same integer program solving
function used to obtain k-best hypotheses on ( yκ )κk =1 .
Once a specific number of predecessor hypotheses λ
on ( yκ )κk '=1 is selected, we may use these selected k-best
partial hypotheses λ for track pruning as described before.
Benefits of using this mid-level k-best hypothesis selection,
as opposed to the leaf-node level k-best hypothesis selection
(described above), are two folds: (1) whenever a mid-level
hypothesis is selected, effectively, we select multiple leafnode hypotheses. As a consequence, in effect, we can select
more leaf-node hypotheses with a fewer number of “k” for
the k-best hypothesis selection, and (2) since newly
generated tracks (below the mid-level, called the evaluation
level) are included in every mid-level hypothesis, all the
tracks initiated below the evaluation level are protected (or
Evaluation Level = 1
Evaluation Level = 0
Number of Selected Hypotheses k
Fig. 6: Effect of Pruning Level
Multi-Modal Track Outputs: A common practice for
track-oriented MHT system such as ATIF is to output a set
of tracks in a single-best hypothesis. Using the k-best
hypothesis selection, we may output multiple hypotheses
with probabilistic ambiguity assessments, thus addressing
the so-called hypothesis hopping problem. However,
interpreting outputs of multiple sets of hypotheses, each of
which is a set of tracks, may not be easily understood by the
users.
An alternative output may be a form of track trees. As
mentioned above, a collection of all the tracks defined on all
the past cumulative frames, ( y1 ) , ( y1 , y2 ) , ….,
( yκ )κk '=1 ,…, ( yκ )κk =1 , forms a tree. Each sub-tree12 with a root
at the first detected report represents a track hypothesized to
originate from the same target. Let τ 1 ,...,τ M be M tracks
on ( yκ )κk =1 represented by leaves of such a track tree. Then
we may define a target state probability distribution of the
target state s (tk ) at the time tk of the k -th frame
conditioned by the track tree, by its density
M
P ( s(tk ) | τ 1 ,...,τ M ) = ∑Wi P ( s (tk ) | τ i )
(7)
i =1
12
We may call such a sub-tree with a unique non-empty root a
track instead of a track tree since the tree as a whole represents a
single detected target, while each individual track is called a track
hypothesis instead.
where P ( s(tk ) | τ i ) is the target state probability density
function conditioned only by a track τ i , and Wi is the
probability weight, i.e., Wi > 0 and
∑
M
W =1.
i =1 i
The probabilistic weights (Wi )iM=1 can be obtained by
normalizing the set of track probabilities, while each track
probability is defined as the sum of all the probabilities of
hypotheses that contain each track. A set of multiple
hypotheses and their a posteriori probabilities, expressed by
eqn. (5), are obtained by the k-best hypothesis selection
algorithm and used for this weight calculation.
References
[1] Katta G. Murty, An algorithm for ranking all the
assignments in order of increasing cost, Operations
Research, Vol. 16, No. 3, pp. 682 – 687, May-June, 1968.
[2] Yaakov Bar-Shalom, and Xi-Ron Li, MultitargetMultisensor Tracking: Principles and Techniques, Storrs,
CT, YBS Publishing, 1995.
[3] Samuel S. Blackman, and Robert Popoli, Design and
Analysis of Modern Tracking Systems, Artech House,
Norwood, MA, 1999.
[4] Charles L. Morefield, Application of 0-1 Integer
Programming to Multi-Target Tracking Problems, IEEE
Transaction on Automatic Control, Vol. AC-23, No. 3, pp.
302-312, June 1977.
[5] Donald B. Reid, An Algorithm for Tracking Multiple
Targets, IEEE Transaction on Automatic Control, Vol. AC24, No. 6, pp. 843-854, Dec., 1979.
(a) Single-Modal Output
(b) Multi-Modal Output
(c) Aggregated Multi-Modal Ouput
Fig. 7: Multi-Modal Track Tree Output
Fig. 7 illustrates the multi-modal output concept. In the
figure, a sum-of-Gaussian distribution is shown as an
example of a multi-modal probability distribution in (b),
which is compared with the conventional single-hypothesis,
single-modal output in (a) and an approximate multi-modal
output obtained by aggregating some of the modes in (c).
5
Conclusion
A generalization of Murty’s algorithm for ranking k-best
bipartite assignment problems, was described, and its
application to track-oriented MHT systems was discussed.
Generalization of the algorithm is two-fold: (i) from
bipartite (two-dimensional) assignment problem to a general
{0,1} integer linear constraint, including the multi-frame (or
multi-dimensional) assignment problems, and (ii) from
linear objective functions to a general, potentially, nonlinear objective functions.
The generalized Murty’s algorithm was used in a
hybrid data fusion system, called ATIF [17], to perform
several functions. These functions include output ambiguity
assessment, track pruning, and multi-modal track outputs.
The generalized Murty’s algorithm relies on an effective
integer programming solving algorithm, just as Murty’s
algorithm needs an effective bipartite assignment algorithm
such as Munkres or [7] or Jonker-Volgenant-Castañón
algorithm [6,8]. Thus, any improvement in the integer
programming algorithm can potentially enhance the
performance of any track-oriented MHT system using our
generalized Murty’s algorithm.
[6] David A. Castañón, New assignment algorithms for
data association, Proceedings of SPIE Symposium on
Signal and Data Processing of Small Targets, ed. by Oliver
E. Drummond, Vol. 1698, pp. 313-323, August, 1992.
[7] James Munkres, Algorithms for Assignment and
Transportation Problems, Journal of the Society for
Industrial and Applied Mathematics Vol. 5, No. 1, March,
1957.
[8] Roy Jonker, and Ton Volgenant, A shortest
augmenting path algorithm for dense and sparse linear
assignment problems, Computing Vol. 38, No. 11, pp. 325340, Nov., 1987.
[9] Roy Danchick, and George .E. Newnam, A fast method
for finding the exact N-best hypotheses for multitarget
tracking, IEEE Transactions on Aerospace and Electronic
Systems, Vol. 29, No. 2, pp. 555-560, 1993.
[10] Ingemar J. Cox, and Matt L. Miller, On finding ranked
assignments with application to Multitarget tracking and
motion correspondence, IEEE Transactions on Aerospace
and Electronic Systems, Vol. 32, No. 1, pp. 486-489, 1995.
[11] Ingemar J. Cox, Matt L. Miller, Roy Danchick, and
George .E. Newnam, A Comparison of two algorithms for
determining ranked assignments with application to
multitarget tracking and motion correspondence, IEEE
Transactions on Aerospace and Electronic Systems, Vol. 33,
No. 1, pp. 295-301, 1997.
[12] Thomas G. Allen, Thomas Kurin, and Robert B.
Washburn, Parallel computer structures for multiobject
tracking algorithms on associative processors, Proc.
American Control Conf., Seattle, WA, June, 1986.
[13] Thomas Kurien, Issues in the design of practical
Multitarget tracking algorithms, in Multitarget-multisensor
tracking: advanced applications, ed. by Yaakov BarShalom, Chap. 3, pp. 43 – 83, Artech House, 1990.
[14] Samuel S. Blackman, Multiple hypothesis tracking for
multiple target tracking, IEEE Aerospace and Electronic
Systems Magazine, Vol. 19, No. 1, Part 2: Tutorial, pp. 5 –
18, January 2004.
[15] Krishna R. Pattipati, Somnath Deb, Yaakov BarShalom, and Robert B. Washburn, A new relaxation
algorithm and passive sensor data association, IEEE
Transactions on Automatic Control, Vol. 37, No. 2, pp. 198
– 213, February 1992.
[16] Aubrey Poore, and Nenad Rijavec, A Lagrangian
relaxation algorithm for multidimensional assignment
problems arising from Multitarget tracking, SIAM Journal
of Optimization, Vol. 3, No. 3, pp. 544 – 563, August 1993.
[17] Stefano Coraluppi, Craig Carthel, Mark Luettgen, and
Susan Lynch, All-Source Track and Identity Fusion, Proc.
National Symposium on Sensor and Data Fusion, San
Antonio, TX, June 2000.
[18] Robert L. Popp, Krishna R. Pattipati, and Yaakov BarShalom, m-Best S-D assignment algorithm with application
to multiple target tracking, IEEE Transactions on Aerospace
and Electronic Systems, Vol. 37, No. 1, pp. 22 – 39, January
2001.
[19] Shozo Mori, Chee-Yee Chong, Edison Tse, and
Richard P. Wishner, Tracking and classifying multiple
targets without a priori identification, IEEE Transactions on
Automatic Control, Vol. AC-31, No. 5, pp. 401-409, May
1986.
[20] Shozo Mori, and Chee-Yee Chong, Data association
hypothesis evaluation for i.i.d. but non-Poisson multiple
target tracking, Proc. SPIE Symposium on Signal and Data
Processing of Small Targets, Vol. 5428, pp. 224 – 236,
Orlando, FL, April 2004.
[21] Shozo Mori, and Chee-Yee Chong, Evaluation of data
association hypotheses: non-Poisson i.i.d. cases, Proc. 7th
International Conference on Information Fusion, pp. 1133 –
1140, Stockholm, Sweden, July 2004.