Volume 2007, Article ID 41348,11pages doi:10.1155/2007/41348
Research Article
Positioning Based on Factor Graphs
Christian Mensing and Simon Plass
German Aerospace Center (DLR), Institute of Communications and Navigation, Oberpfaffenhofen, 82234 Wessling, Germany
Received 16 November 2006; Revised 15 March 2007; Accepted 16 April 2007
Recommended by H. Vincent Poor
This paper covers location determination in wireless cellular networks based on time difference of arrival (TDoA) measurements in a factor graphs framework. The resulting nonlinear estimation problem of the localization process for the mobile station cannot be solved analytically. The well-known iterative Gauss-Newton method as standard solution fails to converge for certain geometric constellations and bad initial values, and thus, it is not suitable for a general solution in cellular networks. Therefore, we propose a TDoA positioning algorithm based on factor graphs. Simulation results in terms of root-mean-square errors and cumulative density functions show that this approach achieves very accurate positioning estimates by moderate computational complexity.
Copyright © 2007 C. Mensing and S. Plass. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.
1. INTRODUCTION
Positioning in wireless networks became very important in recent years. Services and applications based on accurate knowledge of the location of the mobile station (MS) will play a fundamental role in future wireless systems [1–3]. In addition to vehicle navigation, fraud detection, resource management, automated billing, and further promising ap-plications, it is stated by the United States Federal Communi-cations Commission (FCC) that all wireless service providers have to deliver the location of all enhanced 911 (E911) callers with specified accuracy [4]. Note that a common agree-ment about location determination of emergency calls in the European Union is not yet well defined and is still in devel-opment [5].
MS localization using global navigation satellite systems (GNSSs) such as the global positioning system (GPS) or the future European Galileo system [6,7] delivers very ac-curate position information for good environmental condi-tions. These systems may be a solution for future mass mar-ket applications when the problem of high power consump-tion is resolved and costs are reduced. But nevertheless, the performance loss in indoor areas or urban canyons can be dramatical [8].
Therefore, in this paper we concentrate on determina-tion of the MS locadetermina-tion by exploiting the already available communications signals. Generally, this localization process is based on measurements in terms of time of arrival (ToA),
time difference of arrival (TDoA), angle of arrival (AoA), and/or received signal strength (RSS) [2], provided by the base stations (BSs) or the MS, where the achievable accuracy is the highest with the timing measurements TDoA or ToA. We will focus on processing TDoA measurements which is a part of the 3GPP standard where it is denoted as observed TDoA (OTDoA) [9]. TDoA is also foreseen for positioning in future fourth-generation (4G) mobile communications sys-tems as it is proposed, for example, within the WINNER project [10,11].
−2R
0 2R
4R
y
−4R −2R 0 2R 4R
x
Involved BS Not involved BS MS
Hyperbolas of constant TDoA
Figure1: TDoA positioning in cellular networks withNBS=4
in-volved BSs.
functions (CDFs). They show the potential of this algorithm in terms of accuracy and computational complexity, outper-forming the GN method in cellular networks. Furthermore, a performance comparison with the noniterative Chan-Ho (CH) method [17] is given. Note that the CDFs are an im-portant benchmark in the context of the FCC-E911 require-ments. This paper paves the way for a general processing of all kinds of measurements under the joint framework of FGs for future research.
Throughout this paper, vectors and matrices are denoted by lower- and uppercased bold letters. The matrixInis the
n×nidentity matrix, the matrix0n×mis then×mmatrix with zeros, the operation “⊗” denotes the Kronecker prod-uct,E{·}denotes expectation, (·)T denotes transpose, and
·2denotes the Euclidean norm.
2. SYSTEM MODEL
The time-synchronized BSs are organized in a cellular network with cell radiusRaccording toFigure 1. For non-synchronized BSs, the so-called location measurement units (LMUs) are used for processing. The LMUs are associated to the BSs and compensate the missing synchronization of the BS network. The MS is located atx =[x,y]T and only the
NBSnearest BSs atxμ,μ∈ {1, 2,. . .,NBS}are used for
posi-tioning. The distance between the BSs and the MS is given by
rμ(x)=xμ−x2=
xμ−x
2
+yμ−y
2
. (1)
This equation can also be seen as a result of ToA measure-ments. With ToA, the absolute time for a signal traveling from the BS to the MS or vice versa is measured. It is not
even required that all BSs be synchronized with each other, additionally synchronized time knowledge, that is, the time of transmission, is necessary at the MS. In case that no exact time knowledge is available (time offset of the MS), an ad-ditional BS is necessary to estimate this offset according to the ToA principle as it is used in GNSSs [6,7]. Also round-trip delay (RTD) procedures can be chosen to obtain ToAs independent of any synchronization assumptions. But this procedure has the drawback that measurements have to be performed in both uplink and downlink. The propagation time from the BSs to the MS is proportional to the distance. Hence, we get the distance between the MS and all involved BSs. From a geometrical point of view, the MS lies on circles around the BSs. The intersection of these circles gives the po-sition of the terminal.
The problem of processing ToA measurements is the fact that the MS is usually not synchronized to the BSs, and therefore an additional BS is required to estimate the time offset. To avoid this drawback, the TDoAs measure directly the time difference of signals received from various BSs [2,3], that is, the unknown time offset of the MS with respect to the synchronized BSs is not relevant for TDoA processing. In the geometrical interpretation, the MS lies on hyperbolas with foci at the two related BSs (cf. Figure 1). The intersection gives the position of the MS. Note that TDoAs are defined with respect to an arbitrary chosen reference BS.
In the following, we treat distances and propagation
times as equivalent, and thus the TDoAs for BS ν ∈
{2, 3,. . .,NBS}with respect to BS 1 can be written as
dν,1(x)=rν(x)−r1(x), (2)
where—without loss of generality—we use BS 1 as the refer-ence BS. TheNBS−1 linear independent TDoAs compose the
vector
d(x)=d2,1(x),d3,1(x),. . .,dNBS,1(x)
T
, (3)
and the corresponding TDoA measurements are given by
d=d2,1,d3,1,. . .,dNBS,1
, (4)
based on the measurement model
d=d(x) +n, (5)
where
n=n2,1,. . .,nNBS,1
T
(6)
is zero-mean additive white Gaussian noise (AWGN) [3] with covariance matrix
Σn=E
nnT . (7)
For the solution of the estimation problem for the MS location, it is a common way to follow the weighted nonlin-ear least-squares approach [3,12] which minimizes the cost function
ε(x)=d−d(x)TΣ−1
n
with respect to the unknown MS positionxyielding
x=argmin
x ε
(x). (9)
In the general case, there exists no closed-form solution to the nonlinear two-dimensional optimization problem given by (9), and hence iterative approaches are necessary. A stan-dard approach to deal with (9) is based on the GN algorithm [3,18]. The GN algorithm linearizes the system model in (5) about some initial valuex(0)yielding
d(x)≈dx(0)+Φ(x)x=x(0)
x−x(0), (10)
with the elements of the (NBS−1)×2 Jacobian matrix
Φ(x)= ∇T x ⊗d(x)
= ⎡ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣
x−x2
r2 −
x−x1 r1
y−y2
r2 −
y−y1 r1 x−x3
r3 −
x−x1 r1
y−y3
r3 −
y−y1 r1
..
. ...
x−xNBS
rNBS
−x−x1 r1
y−yNBS
rNBS
−y−y1
r1 ⎤ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ , (11)
where∇x = [∂/∂x,∂/∂y]T. Afterwards, using (10) and (8),
the linear least-squares procedure is applied resulting in the iterated solution
x(k+1)=x(k)+ΦTx(k)Σ−1
n Φ
x(k)−1 ·ΦTx(k)Σ−1
n
d−dx(k) =x(k)+A(k),−1g(k).
(12)
The GN algorithm provides very fast convergence and accu-rate estimates for good initial values. For poor initial values and bad geometric conditions the algorithm results in a rank-deficient, and thus noninvertible matrixA(k)for certain
con-stellations of MS and BSs. In this case, the algorithm diverges [13]. However, a more accurate initial estimate, for example, from a one-step linear least-squares solution as shown in [2], can reduce the divergent behavior of the GN algorithm.
Note that an asymptotically efficient maximum-likeli-hood (ML) approach to cover this MS positioning problem is not possible in a real-time scenario due to computational complexity. However, we will use the ML solution as refer-ence for the simulation results.
The performance bound for the proposed scenario is given by the Cramer-Rao lower bound (CRLB) [12] for TDoA defined as
CRLB(x)=CRLBTDoA(x)=
traceΦT(x)Σ−1
n Φ(x)
−1
(13)
for each MS position where the subscript TDoA is omitted in the following for the sake of simplification. Nevertheless, we are interested in the positioning accuracy for all possible MS
0 0.1 0.2 0.3 0.4 0.5
CRLB
(km)
0 0.05 0.1 0.15 0.2 0.25 0.3
σn(km) NBS=3, TDoA
NBS=3, ToA
NBS=3, TDoA + ToA
NBS=4, TDoA
NBS=4, ToA
NBS=4, TDoA + ToA
NBS=5, TDoA
NBS=5, ToA
NBS=5, TDoA + ToA
Figure2: CRLB versusσnfor different positioning methods,R = 3 km.
locations in the cellular network. Thus, we introduce
CRLB=Ex
CRLB(x) (14)
as mean value of the bound for the whole network.
Figure 2 shows the CRLB for TDoA, ToA, and joint TDoA and ToA measurements. The CRLB for ToA is given as
CRLBToA(x)=
traceΨT(x)Σ−1
n,ToAΨ(x)
−1
, (15)
with
Ψ(x)= ∇T
x ⊗r(x)=
⎡ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣
x−x1 r1
y−y1 r1 x−x2
r2
y−y2 r2
..
. ...
x−xNBS
rNBS
y−yNBS
rNBS
⎤ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ , (16) where
r(x)=r1(x),r2(x),. . .,rNBS(x)
T
, (17)
andΣn,ToAis the covariance matrix of the noise for ToA
mea-surements. Equivalently, the CRLB for joint TDoA and ToA measurements can be calculated as
CRLBTDoA + ToA(x)
=
trace ΦΨ (x) (x)
T
Σn 0
0 Σn,ToA
−1
Φ (x) Ψ (x)
−1 .
For the simulations, we assume that the noise variance is the same for each measurement, that is, we useΣn = σn2INBS−1
(perfect power control). It should be pointed out that for ToA and also joint TDoA + ToA procedures (Figure 2), the CRLB can be achieved with simple methods, for example, based on the GN algorithm. However, for TDoA with the hyperbolic character of the measurements, the effort to the algorithms is much higher to achieve CRLB over the whole network and more sophisticated methods—as in the following proposed FG-based approach—are necessary.
Note that all considered algorithms in this paper are not restricted to any assumptions about the source of the surements. They work for both uplink and downlink mea-surements and are independent of the underlying wireless cellular network.
3. POSITIONING BASED ON FACTOR GRAPHS
Historically, FGs as a generalization of Tanner graphs come from coding theory and were used for decoding of low-density parity check (LDPC) or concatenated (turbo) codes. But additionally, there exist a lot of algorithms which can be described in an FGs framework [19], for example, Kalman filters or Fourier transforms. In [14,15], Chen et al. pro-posed a method for solving the positioning problem in an FGs environment using ToA measurements. In [16], they extended their method to AoA measurements. In this sec-tion, we present the solution for FG-based positioning using TDoA measurements with—compared to ToA and AoA— their more complicated hyperbolic character. In the follow-ing, we give a short overview of basic principles regard-ing FGs theory. Afterwards, we describe necessary geometric fundamentals for the proposed procedure. Finally, the TDoA positioning algorithm using FGs is derived in detail.
3.1. Factor graphs and the sum-product algorithm
An FG is a bipartite graph that in its original sense can de-scribe the structure of a factorization [19]. If we assume as an example the function f(x1,x2,x3,x4) which can be
factor-ized in
fx1,x2,x3,x4
= f1
x1
f2
x1,x2,x3
f3
x3,x4
, (19)
the structure of this factorization can be expressed by an FG. The bipartite FG consists of variable nodes for each variable
xνoccurring in the function, factor nodes for each local func-tion fμ of f, and edges connecting variable nodesxν with factor nodes fμ, if and only ifxνis a function of fμ[19]. The corresponding FG for the example (cf. (19)) can be seen in
Figure 3.
Often, we are interested in a marginalization of such a structured function, that is, to find a function only depend-ing on one of the unknowns describdepend-ing for example the ex-trinsic soft information in a decoding framework. A system-atic way to do so is the application of the so-called sum-product algorithm (SPA). It is a message passing algorithm working on the FG. There is no general assumption about these messages, for example, they can take the form of soft
f1 x1 f2
x2
x3 f3 x4
Figure3: Example for a factor graph.
information or probability density functions (PDFs). For ex-ample, in a decoding scenario of Hamming codes, the factor nodes describe the parity check constraints and the messages passed in the FG consist of the extrinsic soft information.
In the following, we describe the fundamental rules of the SPA and refer to [19] for more details. Generally, we dif-ferentiate between messages passed from variable nodes to factor nodes and vice versa. According to the SPA, a message passing from a variable nodexto a factor node f should be calculated as
Lx→f(x)=
h∈n(x)\{f}
Lh→x(x), (20)
wheren(x) denotes the set of neighbors of a given nodexin the FG. Note that the product in (20) should be interpreted in a more abstract way, depending on type and structure of the messages. The rule for computing a message from local node f to variable nodexis given as
Lf→x(x)=
∼{x}
f(X)
y∈n(f)\{x}
Ly→f(y)
, (21)
with the set of arguments of the function f defined asX =
n(f), and the so-called summary operator∼{x}indicating
the variables being not summed over. With these two rules— after an initialization step for the nodes at the edges—all messages in the FG can be calculated step by step. For the final calculation of the marginalization of the variables, we use the termination rule
L(x)=
h∈n(x)
Lh→x(x), (22)
that is, the multiplication of all incident messages to this vari-able node, depending only on one varivari-able.
−4 −3 −2 −1 0 1 2 3 4
y
−4 −3 −2 −1 0 1 2 3 4
x
MS BS
Hyperbola of constant TDoA Hyperbola after rotation (32) Hyperbola after shift operation (34)
Figure4: Hyperbola processing.
3.2. Geometric fundamentals
To derive the algorithm of TDoA-based positioning using FGs, we need some fundamental calculus taken from the-ory of conic sections and shown in the following. The aim of this procedure is to provide the local constraints of the factor nodes in the FG. The idea is to processxandycoordinates mostly independent. Information is only exchanged at the so-called mapping factor nodes. From a geometric point of view, the proceeding is based on a principal axis transforma-tion by rotatransforma-tion, a shift operatransforma-tion, and finally the mapping operation where the original hyperbola equation is trans-formed in a suitable way for FG processing.
As first step, each TDoA equation (2)—under assump-tion of the measurement model defined in (5)—can be rewritten as
aν,11x2+aν,22y2+
aν,12+aν,21
xy
+aν,01+aν,10
x+aν,02+aν,20
y
+aν,00=0
(23)
for all NBS−1 TDoAs, using simple algebraic operations.
Note that due to squaring operations a second hyperbola branch—compared to the original TDoA equation (2)— appears (cf.Figure 4), where the MS does not lie on. Never-theless, this ambiguity can be resolved by observing the signs of the corresponding TDoAs and does not restrict the perfor-mance of the later derived algorithm. The coefficientsaν,i j,
i,j ∈ {0, 1, 2}, in (23) can simply be computed in depen-dence on the known BS positions and measurements. The quadratic equation (23) can be written in matrix-vector no-tation resulting in
xTAνx+aνTx+aν,00=0 (24)
for allν ∈ {2, 3,. . .,NBS}TDoAs related to reference BS 1,
using the quadratic formxTA νxwith
Aν=
aν,11 aν,12 aν,21 aν,22
(25)
and the vector
aν=aν,10,aν,20
T
. (26)
Equation (24) can be diagonalized by application of an eigen-value decomposition of the matrix
Aν=UνΛνUTν, (27)
where
Λν=
λν,1 0
0 λν,2
(28)
is the diagonal matrix composed of the eigenvalues, and
Uν=uν,1 uν,2
(29)
is a unitary matrix with the corresponding eigenvectors. For later purposes, we choose the order of the eigenvalues in such a way that
signλν,1
signBν=1 (30)
is fulfilled, where
Bν=aTνUνΛ−ν1UTνaν−aν,00. (31)
With the substitution
x=Uνxν (32)
in (24)—describing the rotation—we obtain
xνTΛνxν+aT
νUνxν+a00=0, (33)
that is, a diagonalized system which can be seen as the origi-nal system in a new coordinate plan (cf.Figure 4). In a second step, the rotated hyperbola is shifted around the origin. For this purpose, we have to differentiate between two cases de-pending on the character of the eigenvalues. In the first case (λν,1=/ 0,λν,2=/ 0), we can do the second substitution (shift
operation)
xν=xν −1 2Λ
−1
ν UTνaν (34)
in (33), yielding the hyperbola equation in main position (cf.
Figure 4) given as
xνTBνxν −1=0, (35) with
Bν=
⎡ ⎢ ⎢ ⎣
Bν
λν,1
0
0 Bν
λν,2
⎤ ⎥ ⎥
Note that
signBν=
1 0
0 −1
(37)
is always valid by construction (30) which confirms the hyperbolic character. In case that one eigenvalue is equal to zero (by construction:λν,1=/ 0,λν,2 =0), the two hyperbola
branches degenerate into a line, yielding the other case of the second substitution
xν=
⎡ ⎢ ⎢ ⎣x
ν −a T νuν,1
2λν,1 yν
⎤ ⎥ ⎥
⎦, (38)
and the degenerated hyperbola equation becomes
xν2=0. (39)
This case occurs if the corresponding TDoA is equal to zero. Note that the case that both eigenvalues are equal to zero is not relevant for realistic BSs and MS constellations.
As last step, we define a mapping operation which will be used in the mapping factor nodes of the FG to exchange in-formation inxandydirections. According to (35), we define
xν = ±
λν,1
Bν −
λν,1 λν,2
y
ν2,
yν = ±
λν,2
Bν −
λν,2 λν,1
x
ν
2 .
(40)
3.3. TDoA positioning algorithm based on
factor graphs
The aim of this positioning algorithm using FGs is to de-termine the location of the MS by processing the measured TDoAs with their statistic properties and the known BS po-sitions. It breaks down the general high-complex problem in several low-complex subproblems that can be solved in a distributed way and finds the solution—starting with an initial guess—iteratively. The corresponding FG is depicted inFigure 5. The factor nodes are given by the substitution and mapping operations defined in the previous section (see (32), (33), and (34)) and can be seen as constraint nodes among the variables. The rotation (R) and shift (S) opera-tions process the messages ofxandycoordinates indepen-dently. In the mapping (M) nodes, information between x
andycoordinates is exchanged. The messages that are passed around the FG are defined as PDFs for the corresponding variables in the variable nodes. In our investigations, we as-sume Gaussian distributions for these PDFs according to
Nx,m,σ2∼exp
−(x−m)2 2σ2
, (41)
for a random variablexwith mean valuemand varianceσ2.
This assumption simplifies the calculations performed by the
x
Rx2 RxNBS
y
R2y RyNBS
x2 xNBS y
2 yNBS
Sx2 SxNBS S
y
2 SyNBS
x2 xNBS y
2 yNBS
M2xy MNxyBS
Figure5: Factor graph for TDoA positioning.
SPA considerably. After the initialization of the FG in a suit-able way [15], the rules of SPA can be applied straightfor-wardly. Furthermore, in our derivation we need two general rules [19] for random variables with Gaussian distributions. At first, the relation
N
n=1
Nx,mn,σn2
∼Nx,mP,σP2
(42)
holds, where the mean value of the resulting Gaussian distri-bution can be calculated as
mP=σP2
N
n=1 mn
σ2
n
, (43)
and the variance is given as
σ2 P=
1
N
n=11/σn2
. (44)
Secondly, we will make use of the integration rule
∞
x=−∞N
x,m1,σ12
Ny,αx+m2,σ22
dx
∼Ny,αm1+m2,α2σ12+σ22
.
(45)
In the following, we show the necessary message pass-ing operations. Note that the iteration index is omitted here for the sake of simplification and that the summary operator (cf. (21)) is replaced by an integration operator due to the Gaussian character of the messages. We start at the messages passed from the variable nodexto factor nodesRx
ν. Accord-ing to SPA, we obtain
Lx→Rx ν(x)∼
μ /=νLR
x
that is, the multiplication of all incident messages which can be calculated using (42). For the messages from the factor nodesRx
ν to the variable nodesxν, information aboutRxν is essential. This is given by the rotation (R) operation as first substitution (32), and under assumption of Gaussian distri-butions, we obtain
fRxν
x,xν∼Nxν,uTν,1x,σx2
ν
(47)
as constraint rule for the factor node where the variance is set to the variance inx-direction of the noisy observations, that is,σ2
xν =σx2which can be derived from (7) [15]. The SPA
yields
LRxν→xνxν∼
∞
x=−∞fRxν
x,xνLx→Rxν(x)dx, (48)
which can be computed with (45). We proceed by calculating the messages to the shift operation (S) factor node, simply given as
Lxν→Sxν
xν=LRxν→xνxν. (49)
The messages from the shift operation nodesSx
νwith the con-straint (cf. (34))
fSx ν
xν,xν∼N
!
xν,xν+2λ1 ν,1
uTν,1aν,σx2ν
"
(50)
to the variable nodesxν (σx2ν=σx2) are obtained by
LSxν→xνxν∼
∞
xν=−∞fSxν
xν,xνLxν→Sxν
xνdxν (51)
using (45). The messages to the mapping (M) nodesMνxycan simply be calculated as
Lxν→Mxy ν
xν=LSx ν→xν
xν. (52)
A very important node is the mapping node, where informa-tion betweenx andy coordinates is exchanged. It is based on the mapping operations defined in (40), but to fulfil the Gaussian assumption in the corresponding factor node, a Gaussian approximation similar as that shown in [15] has to be performed. Additionally, several cases due to sign am-biguities have to be distinguished. Thus, in this paper we give only the general formula according to SPA obtained by
LMνxy→y
ν
yν∼
∞
xν=−∞fM
xy ν
xν,yνLx
ν→Mνxy
xνdxν, (53)
where fMνxy(xν,yν) describes the mapping constraint (40). The necessary message calculations from the mapping nodes back to the variable nodesxandyand the processing in they
branch ofFigure 5correspond to the steps described above. After initialization, the messages are calculated iteratively up to convergence. We emphasize that due to the Gaussian char-acter of the messages and the possibility of distributed com-puting, the processing effort is limited to simple operations.
−1 0 1 2 3 4 5 6 7 8 9 10
y
(km)
0 2 4 6 8 10
x(km) BS
MS
Initial position value
Estimated position after first interation Estimated position after second interation
Figure6: Example for the FG positioning algorithm withNBS=3
BSs.
In a final termination step, the marginalization of the coor-dinate variable nodesxandycan easily be computed by
L(x)= ν LR
x
ν→x(x) (54)
for thex coordinate. The final estimates x = x(K) afterK
iteration steps are given by the mean values of the Gaussian distributions according to (54). Note that also the variances inxandydirections are provided by the algorithm.
We are aware of the fact that the here proposed FG has cycles, and therefore the estimates are only an approxima-tion of the optimum soluapproxima-tion. But simulaapproxima-tion results show the near-optimum behavior of the algorithm for the general scenario considered in this paper. Analytical investigations on the convergence behavior of this FG with cycles are hard to establish because the occurring cycles are very short.
3.4. Implementation example
To demonstrate the functionality of the FG-based position-ing algorithm, we show a simple example withNBS =3
in-volved BSs atx1 = [0, 0]T,x2 = [0, 9]T, andx3 = [10, 2]T
(cf.Figure 6). Hence, two TDoA measurements for the MS atx=[3, 3]T are available that can be calculated asd(x)= [2.47, 2.83]T. The noise vector for these measurements is given asn=[0.2,−0.2]Twith variances inx- andy -compo-nents asσ2
x = σy2 = 0.1, and the initial value is atx(0) = [4, 4]T.
x-components of the first TDoA measurement, we need the matrix and vector
A1=
7.11 0 0 −73.89
, a1=[0, 665.05]T. (55)
The resulting eigenvalues areλ1,1= −73.89 andλ1,2=7.11,
and the eigenvector for thex-component isu1,1 = [0, 1]T.
Finally, the scalar valueB1= −131.26 is required.
With this information, we can start the algorithm in the previous section. It is initialized with
Lx→Rx
2(x)∼N(x, 4, 0.1), (56)
that is, for thex-component the message from the variable nodexto the factor nodeRx2includes in the first step a
Gaus-sian distribution with mean value as thex-component of the initial valuex(0), and an assumed variance ofσ2
x =0.1. With knowledge of the eigenvectors, the constraint rule for the ro-tation factor node is given as
fRx
2
x,x2
∼Nx2, 4, 0.1
. (57)
Hence, the merged Gaussian distributions for the message from the rotation factor node to the variable nodex2can be
calculated as
LRx
2→x2
x2
∼Nx2, 8, 0.2
, (58)
where we have used the relation in (45) withα=1. The mes-sage to the shift factor node is simply given as
Lx2→Sx2
x2
=LRx
2→x2
x2
∼Nx2, 8, 0.2
. (59)
Similar to the rotation rule, the shift rule can be calculated as
fSx
2
x2,x2
∼Nx2,−6.5, 0.1
, (60)
which is further used to calculate the message to the variable nodex2. We obtain
LSx
2→x2
x2
∼Nx2, 1.5, 0.3
, (61)
again using (45). The messages to the mapping factor node are simply
Lx2→M
xy
2
x2
=LSx
2→x2
x2
∼Nx2, 1.5, 0.3
. (62)
Using (40), the mean value for the mapping node can be cal-culated as 3.36. The corresponding variance is given as 0.17. Hence, we obtain
LM2xy→y2
y2
∼Ny2, 3.36, 0.17
. (63)
On the backward step fromy2toy, the described operations
are very similar, and we end up at
LR2y→y(y)∼N(y, 3.16, 0.36). (64)
Calculating the values from ytoxfor the first TDoA mea-surement, we obtain
LRx
2→x(x)∼N(x, 3.86, 0.41). (65)
The values for the second TDoA can be computed as
LR3y→y(y)∼N(y, 3.36, 0.32),
LRx
3→x(x)∼N(x, 2.58, 0.31).
(66)
With these messages, mean value and variance of the esti-mated position can be calculated using relation (42). This yield the improved estimation after the first iteration
x(1)∼N
x,
3.19 3.28
,
0.18
0.17 . (67)
Of course, more iterations can be performed to further im-prove the performance (cf.Figure 6).
4. SIMULATION RESULTS
We test the proposed algorithms in a cellular network with cell radiusR=3 km and assume constant noise power for all involved links from the BSs to the MS, that is,Σn=σ2
nINBS−1.
Figures 7–9 show CRLB(x) (cf. (13)) using NBS = {3, 4, 5} for positioning. We observe that, for example, for
NBS =3 near the BSs and on the links between the BSs the
positioning performance is restricted due to geometric con-stellation. In these cases, we can expect limited performance of the algorithms. We further can see that the performance increases when more BSs are involved in the localization pro-cess.
InFigure 10, the performance of the investigated algo-rithms is analyzed forNBS=3 andσn=0.2 km. Initial value for the iterative algorithms is the mean value of the positions of all involved BSs, that is,
x(0)= 1 NBS
NBS
ν=1
xν. (68)
We compare CRLB (cf. (14)) with the achievable RMSE for the algorithms defined as
RMSE=Ex
x−x2
2 ≥CRLB (69)
and averaged over several MS positions and noise realiza-tions, wherex=x(K)is the estimate provided by the iterative
algorithms after K iteration steps. The GN algorithm pro-vides very fast convergence and accurate estimates for good initial values. For poor initial values and bad geometric con-ditions (e.g., at the cell edge or near the BSs), the algorithm diverges [13]. Therefore, in these cases, the resulting estimate is set tox=x(0)to show the loss with respect to CRLB.
Any-way, for perfect conditions, GN provides fast convergence. The FG algorithm converges afterKFG=8 iteration steps and
reaches nearly CRLB. Additionally, inFigure 10the needed floating point operations (FLOPs) as measure for compu-tational complexity are depicted for both algorithms. Obvi-ously, FG offers a better performance compared to GN by just slightly increased complexity.
−6 −4 −2 0 2 4 6
y
(km)
0.1 0.11 0.12 0.13 0.14 0.15
CRLB
(
x
)(
k
m
)
−6 −4 −2 0 2 4 6
x(km) BS
Figure7: CRLB(x) forσn=0.1 km,R=3 km,NBS=3.
−6 −4 −2 0 2 4 6
y
(km)
0.082 0.083 0.084 0.085 0.086 0.087 0.088 0.089 0.09 0.091 0.092
CRLB
(
x
)(
k
m
)
−6 −4 −2 0 2 4 6
x(km) BS
Figure8: CRLB(x) forσn=0.1 km,R=3 km,NBS=4.
−6 −4 −2 0 2 4 6
y
(km)
0.0715 0.072 0.0725 0.073 0.0735 0.074 0.0745 0.075 0.0755 0.076
CRLB
(
x
)(
k
m
)
−6 −4 −2 0 2 4 6
x(km) BS
Figure9: CRLB(x) forσn=0.1 km,R=3 km,NBS=5.
0 0.1 0.2 0.3 0.4 0.5
RMSE
(km)
0 5 10 15 20 25 ×102
FL
OP
s
0 5 10 15
Iterationk
RMSE, GN RMSE, FG CRLB FLOPs, GN FLOPs, FG
Figure10: RMSE and FLOPs versus iterations forσn=0.2 km,R= 3 km,NBS=3.
0 0.1 0.2 0.3 0.4 0.5
RMSE
(km)
0 0.05 0.1 0.15 0.2 0.25 0.3
σn(km) NBS=3, CH
NBS=3, FG
NBS=3, CRLB
NBS=4, CH
NBS=4, FG
NBS=4, CRLB
NBS=5, CH
NBS=5, FG
NBS=5, CRLB
Figure11: RMSE versusσnfor FG and CH algorithms,R=3 km.
seen that the deviation from CRLB is very small, even for
NBS = 3 and high noise power. To get a better assessment
method [20] and achieving CRLB for low noise power, but with restricted accuracy for higher noise power. The number of required FLOPs is similar compared to the FLOPs for FG withKFG = 8, but we can observe that the performance of
the Chan-Ho (CH) method—especially in the most interest-ing case ofNBS=3—is considerably worse.
We are also interested in CDFs for investigating the per-formance of the algorithms in general cellular networks. In
Figure 12, the performance of GN, FG, and ML as the refer-ence bound is analyzed forNBS =4 and different values for
the noise powerσn. Note that the quality of the initial value strongly depends on the different MS positions in the cellular network. The estimation error is defined as
ε=x−x2, (70)
where x is again the final estimate of the algorithms after convergence. The CDF shows the probability that the esti-mation errorεis below a fixed valueεerr, averaged over
sev-eral MS positions and noise realizations. We observe that FG outperforms the standard GN algorithm for the complete range. However, there is still a gap between FG and the ML bound. This can be explained by observing the CRLB plots (e.g.,Figure 8) with the geometric constellations, bad initial values for certain MS positions, and the cycles in the FG. However, the performance difference between GN and ML bounds is much bigger than between FG and ML bounds. Hence, the FG can also in terms of CDFs be seen as more ro-bust against bad geometric constellations and bad inaccurate initial values. Additionally, the FCC rule for emergency calls is shown inFigure 12(dotted lines). According to the FCC requirements for locating emergency callers, 67% of the posi-tions have to be estimated with an error which is smaller than 0.1 km for network initiated positioning. We see that GN is not suitable to achieve this requirement for σn = 0.1 km, whereas FG fulfils the FCC rule for this scenario.
Figure 13shows the performance of the FG algorithm in dependence on the number of used BSs forσn = 0.1 km. Clearly, for increasingNBS, also the performance improves.
Additionally, the difference between FG and ML gets smaller for increasingNBS. Note that for the simulated scenario, at
leastNBS=4 BSs are required to fulfil the FCC requirement.
5. CONCLUSIONS
In this paper, we analyzed the mobile station positioning per-formance in wireless cellular networks using time difference of arrival measurements in a new factor graphs framework. In this scenario, the standard Gauss-Newton algorithm— with similar computational complexity properties—diverges for inaccurate initial values and bad geometric conditions. To avoid these drawbacks, we propose to use a more ro-bust time difference of arrival positioning algorithm based on factor graphs. Simulation results in terms of root-mean-square errors and cumulative density functions show that this method is suitable to estimate the mobile station loca-tion with high accuracy and moderate complexity. The
pro-0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
CDF
,P
(
ε<
εer
r
)
0 0.05 0.1 0.15 0.2 0.25 0.3
εerr(km) GN,σn=0.05 km FG,σn=0.05 km ML,σn=0.05 km GN,σn=0.1 km FG,σn=0.1 km
ML,σn=0.1 km GN,σn=0.15 km FG,σn=0.15 km ML,σn=0.15 km
Figure12: CDF for different algorithms,R=3 km,NBS=4.
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
CDF
,P
(
ε<
εerr
)
0 0.05 0.1 0.15 0.2 0.25 0.3
εerr(km) FG,NBS=3
ML,NBS=3 FG,NBS=4
ML,NBS=4 FG,NBS=5 ML,NBS=5
Figure 13: CDF for different numbers of BSs,R = 3 km,σn = 0.1 km.
ACKNOWLEDGMENT
The material in this paper was presented in part at the IEEE Symposium on Personal, Indoor, and Mobile Radio Com-munications (PIMRC), Helsinki, Finland, September 2006.
REFERENCES
[1] J. J. Caffery,Wireless Location in CDMA Cellular Radio Systems, Kluwer Academic Publishers, Boston, Mass, USA, 2000. [2] A. H. Sayed, A. Tarighat, and N. Khajehnouri, “Network-based
wireless location: challenges faced in developing techniques for accurate wireless location information,”IEEE Signal Pro-cessing Magazine, vol. 22, no. 4, pp. 24–40, 2005.
[3] F. Gustafsson and F. Gunnarsson, “Mobile positioning using wireless networks: possibilities and fundamental limitations based on available wireless network measurements,”IEEE Sig-nal Processing Magazine, vol. 22, no. 4, pp. 41–53, 2005. [4] Federal Communications Commission (FCC), FCC 99-245:
Third Report and Order. October 1999,http://www.fcc.gov/ 911/enhanced/.
[5] Coordination Group on Access to Location Information for Emergency Services (CGALIES), Final Report: Report on Im-plementation Issues Related to Access to Location Information by Emergency Services (E112) in the European Union. Febru-ary 2002,http://www.telematica.de/cgalies/.
[6] B. W. Parkinson and J. J. Spilker Jr.,Global Positioning System: Theory and Applications, Volume 1, vol. 163 ofProgress in As-tronautics and Aeronautics, American Institute of Aeronautics & Astronautics, Reston, Va, USA, 1996.
[7] P. Misra and P. Enge,Global Positioning System: Signals, Mea-surements and Performance, Ganga-Jamuna Press, Lincoln, Mass, USA, 2004.
[8] R. Ercek, P. De Doncker, and F. Grenez, “Study of pseudo-range error due to non-line-of-sight-multipath in urban canyons,” in Proceedings of the 18th International Technical Meeting of the Satellite Division of the Institute of Navigation (ION GNSS ’05), pp. 1083–1094, Long Beach, Calif, USA, September 2005.
[9] Y. Zhao, “Standardization of mobile phone positioning for 3G systems,”IEEE Communications Magazine, vol. 40, no. 7, pp. 108–116, 2002.
[10] IST-2003-507581, WINNER Project.https://www.ist-winner .org/.
[11] IST-2003-507581, WINNER Deliverable D4.8.1: WINNER II Intramode and Intermode Cooperation Schemes Definition. June 2006,https://www.ist-winner.org/.
[12] S. M. Kay,Fundamentals of Statistical Signal Processing: Esti-mation Theory, Prentice-Hall, Upper Saddle River, NJ, USA, 1993.
[13] C. Mensing and S. Plass, “Positioning algorithms for cellu-lar networks using TDoA,” in Proceedings of IEEE Interna-tional Conference on Acoustics, Speech, and Signal Processing (ICASSP ’06), vol. 4, pp. 513–516, Toulouse, France, May 2006. [14] J.-C. Chen, C.-S. Maa, Y.-C. Wang, and J.-T. Chen, “Mobile position location using factor graphs,”IEEE Communications Letters, vol. 7, no. 9, pp. 431–433, 2003.
[15] J.-C. Chen, Y.-C. Wang, C.-S. Maa, and J.-T. Chen, “Network-side mobile position location using factor graphs,”IEEE Trans-actions on Wireless Communications, vol. 5, no. 10, pp. 2696– 2704, 2006.
[16] J.-C. Chen, P. Ting, C.-S. Maa, and J.-T. Chen, “Wireless geolo-cation with TOA/AOA measurements using factor graph and
sum-product algorithm,” inProceedings of the 60th IEEE Vehic-ular Technology Conference (VTC ’04), vol. 5, pp. 3526–3529, Los Angeles, Calif, USA, September 2004.
[17] Y. T. Chan and K. C. Ho, “A simple and efficient estimator for hyperbolic location,”IEEE Transactions on Signal Processing, vol. 42, no. 8, pp. 1905–1915, 1994.
[18] W. H. Foy, “Position-location solutions by Taylor-series esti-mation,”IEEE Transactions on Aerospace and Electronic Sys-tems, vol. 12, no. 2, pp. 187–194, 1976.
[19] F. R. Kschischang, B. J. Frey, and H.-A. Loeliger, “Factor graphs and the sum-product algorithm,”IEEE Transactions on Infor-mation Theory, vol. 47, no. 2, pp. 498–519, 2001.
[20] J. O. Smith and J. S. Abel, “The spherical interpolation method of source localization,”IEEE Journal of Oceanic Engineering, vol. 12, no. 1, pp. 246–252, 1987.
Christian Mensing studied electrical en-gineering from 1999 to 2005 at Munich University of Technology (TUM), Germany, with main topics of signal processing and high-frequency technology. He received the B.S., Dipl.-Ing., and M.S. degrees from TUM in 2002, 2004, and 2005, respec-tively. During his M.S. thesis, he joined the Swiss Federal Institute of Technology Zurich (ETH), Switzerland. He is currently
working towards his Ph.D. degree at the Institute of Communica-tions and Navigation of the German Aerospace Center (DLR), Ger-many. His research interests include location strategies in cellular networks and satellite navigation systems, and efficient iterative de-tection techniques.
Simon Plass studied at the University of Ulm, Germany, and joined the Oregon State University in Corvallis, Ore, USA, for the academic year 2000. In 2003, he received the Dipl.-Ing. degree from the University of Ulm, Germany. Simon is with the Institute of Communications and Navigation at the German Aerospace Center (DLR), Oberp-faffenhofen, Germany, since 2003. His cur-rent interests are cellular wireless