Page 1
1
Efficient Closed-form Algorithms for AOA
Based Self-localization of Sensor Nodes Using
Auxiliary VariablesHua-Jie Shao, Xiao-Ping Zhang, Senior Member, IEEE, and Zhi Wang
Abstract
Node self-localization is one of the most important research topics for wireless sensor networks (WSNs). There
are two main algorithms, the triangulation method and the maximum likelihood (ML) estimator, for angle of arrival
(AOA) based self-localization in the WSNs. However, the ML estimator requires a good initialization close to the true
location to avoid the divergence problem, while the triangulation method cannot obtain the closed-form solution with
high localization accuracy and low computational complexity. In this paper, we develop a set of efficient closed-form
AOA based self-localization algorithms derived from effective auxiliary variables based method. First, we formulate
the self-localization problem as a linear least squares problem using auxiliary variables. Based on its closed-form
solution, a new auxiliary variables based pseudo-linear estimator (AVPLE) is developed. By analyzing the estimation
error of the AVPLE algorithm, we present a bias compensated AVPLE (BCAVPLE) to reduce the estimation error.
Then we develop a novel BCAVPLE based weighted instrumental variable (BCAVPLE-WIV) estimator to achieve
asymptotically unbiased estimation of locations and orientations of unknown nodes based on the prior knowledge of
the AOA noise variance. In the case that the AOA noise variance is unknown, a new AVPLE based WIV (AVPLE-
WIV) estimator is developed to localize the unknown nodes. Also, we develop an autonomous coordinate rotation
(ACR) method to overcome the tangent instability of the proposed algorithms when the orientation of the unknown
node is near π/2. To analyze the theoretical performance, we derive the Cramer-Rao lower bound (CRLB) of the
maximum likelihood (ML) estimator. Extensive simulation results demonstrate that the new algorithms achieve much
higher localization accuracy than the triangulation method and also avoid local minima and divergence problems in
iterative ML estimators.
Index Terms
Angle of arrival, node self-localization, auxiliary variables, closed-form pseudo-linear estimator, bias compensated
auxiliary variable based pseudo-linear estimator, weighted instrumental variables, wireless sensor networks
H.-J. Shao is with the Department of Control Science and Engineering, Zhejiang University, Hangzhou, 310027, China. E-mail:
[email protected] .
X.-P. Zhang is with the Department of Electrical & Computer Engineering, Ryerson University, 350 Victoria Street, Toronto, Ontario,
CANADA, M5B 2K3. E-mail: [email protected] .
Z. Wang* is with the Department of Control Science and Engineering, Zhejiang University, Hangzhou, 310027, China. E-mail:
[email protected] .
January 23, 2014 DRAFT
Page 2
2
I. INTRODUCTION
Location information of sensor nodes in wireless sensor networks (WSNs) is essential since it is the basis to
perform a number of tasks such as target localization and tracking [1]–[4], and animal behavior monitoring [5], etc.
In practice, random deployment of sensor nodes (e.g., dropped from aircraft) is commonly used since regions of
interest (ROI) usually reside in the harsh environment. As a result, the location information of sensor nodes is often
unknown. Obtaining accurate location information for sensor nodes becomes an important task. A possible method
is to equip each sensor node with the GPS receivers [6], but it is expensive especially for large-scale networks.
With the budget and energy constraints [7], [8], only limited number of sensor nodes can be equipped with GPS
receivers. These nodes are called beacons as their accurate locations are known by the GPS receivers. Other nodes
without GPS receivers are called unknown nodes, whose locations have to be estimated.
Many techniques have been proposed for sensor node localization, such as received signal strength indicator
(RSSI), time of arrival (TOA), angle of arrival (AOA), and time difference of arrival (TDOA) [6], [9]. In this paper,
we focus on the AOA technique [10], [11] for node self-localization in WSNs. One common method to obtain AOA
measurements is to use an antenna array on each sensor node [12]. Different from target localization, AOA based
node self-localization needs to estimate both the location and orientation of each unknown node. The orientation
in the paper refers to the reference direction against which the AOAs are measured.
A number of estimation algorithms have been proposed for AOA based self-localization method over the past
years, such as triangulation [10], [12], maximum likelihood (ML) estimator [13], [14], [15] and the semidefinite
programming (SDP) method [11]. The triangulation method uses two beacons and their AOAs to find the center
and radius of the circumscribed circle for the triplet of two beacons and one unknown node. Then the trilateration
approach is used to obtain the locations of nodes based on the known radiuses and centers of these circumscribed
circles. However, the localization accuracy of the triangulation method is low because of the error accumulation in
the process of obtaining the center and radius of the circumscribed circle. The ML estimator is an asymptotically
unbiased estimator for AOA based self-localization problem. However, it is a nonlinear least squares estimator
for Gaussian angle measurement noise. The ML method either requires a reasonable initialization close to the
true solution or may suffer from local minima and even divergence problems [16], [17]. Recently, Biswas et
al. [18], [11] proposed a SDP method to estimate the locations of nodes for large scale sensor networks. However,
the SDP relaxation method needs high connectivity among nodes and beacons so that the size of the triplets that
have mutual angle information is large enough for the set of equations to have a unique solution [11]. It has a
complicated structure and high computational complexity [6]. Also note that in the SDP for AOA based node
localization [11], the beacons and unknown nodes need to measure each other’s AOAs mutually, consuming much
energy of the nodes and beacons. Moreover, the SDP cannot estimate both the locations and orientations of unknown
nodes simultaneously. Its localization accuracy depends on the size of the triplets with relative angle information
and the locations of beacons. Some beacons are required to be placed on the perimeter of the WSNs area for the
SDP method to be effective.
January 23, 2014 DRAFT
Page 3
3
In [19], [20], closed-form solutions of the bearings only target tracking are presented. Those closed-form solutions
of bearing-only (i.e., AOA) target tracking only estimate the target location (x, y), and cannot be applied to estimate
both the locations and orientations of unknown nodes simultaneously.
In this paper, we develop an effective auxiliary variables based method to obtain the closed-form solution of
AOA based self-localization problem. It improves the localization accuracy compared with the triangulation method
and avoids the problems of iterative ML methods. First, we develop an auxiliary variables based pseudo-linear
estimator (AVPLE) algorithm, which employs auxiliary variables to formulate the self-localization problem as a
linear least squares problem and gives a closed-form solution. By analyzing the estimation error of the AVPLE
algorithm, we then present a novel bias compensated AVPLE (BCAVPLE) scheme to reduce the estimation error.
Furthermore, we develop a BCAVPLE based weighted instrumental variable (BCAVPLE-WIV) estimator to achieve
asymptotically unbiased estimation of locations and orientations of unknown nodes based on the prior knowledge of
the AOA noise variance. In the case that the AOA noise variance is unknown, an AVPLE based WIV (AVPLE-WIV)
estimator is developed to localize the unknown nodes. Also, we further investigate the impact of the orientation
on estimation performance of the new algorithms and present an autonomous coordinate rotation (ACR) method
to overcome the tangent instability of our proposed algorithms when the orientation of the unknown node is near
π/2. To analyze the theoretical performance, we derive the Cramer-Rao lower bound (CRLB) of the ML estimator.
Extensive simulation results demonstrate that the new algorithms achieve much higher localization accuracy than
the triangulation method and also avoid local minima and divergence problems in iterative ML estimators.
The paper is organized as follows. Section II states the problem of node self-localization. Section III presents
an effective auxiliary variables based method to estimate the unknown node with closed-form solutions. Section IV
analyzes the estimation error of node self-localization using the AVPLE algorithm. Section V provides a BCAVPLE
estimator to reduce the estimation error and further presents a BCAVPLE-WIV estimator and an AVPLE-WIV
estimator to estimate the unknown node. Section VI presents the ML estimator to localize the unknown node for
AOA based self-localization and derives the CRLB of it. Section VII evaluates the performances of our proposed
algorithms based on extensive simulations. Finally, Section VIII concludes the paper.
The main notation in this paper is listed as follows:
N number of beacons
p = [x, y, θ]T position and orientation vector of the unknown node
qj = [aj , bj ]T position vector of jth beacon
βj measured AOA with noise for the jth beacon
βj true AOA for the jth beacon
∆βj AOA measurement noise for the jth beacon
σ2j AOA noise variance
β = [β1, . . . , βN ]T vector of AOAs with noise
β = [β1(p), . . . , βN (p)]T vector of AOAs as a function of position vector of the unknown node
January 23, 2014 DRAFT
Page 4
4
U = [u1, u2, u3]T accurate auxiliary variables related to position vector of the unknown node
Uavple = [u1, u2, u3]T estimated auxiliary variables for the AVPLE
∆U = [∆u1,∆u2,∆u3]T estimation bias of auxiliary variables for the AVPLE
f(β|β) bearing-only likelihood function
J ML cost function
Qj = [aj + u3bj , bj − u3aj ]T assumed observer location so as to analyze the estimation bias
U12 = [u1, u2]T assumed true target location
U12 = [u1, u2]T estimated target location for U12 using AVPLE
sj noisy AOA vector for the observer Qj
rj = [sin βj ,− cos βj ]T orthogonal unit vector for sj
dj the range from observer Qj to target U12
η2j = E{sin2 ∆βj} Approximate AOA noise variance when the AOA noise is small
ξ = [ξx, ξy, ξθ]T estimation errors of position vector p
F Fisher information matrix for the ML estimator
drj Euclidean distance from the unknown node and jth beacon
Cavple error covariance of the AVPLE
∆U approximate estimation bias of ∆U for large N
∆ˆU approximate estimation bias of ∆U
I identity matrix
U bcavple = [ub1, ub2, ub3]T estimated auxiliary variables for BCAVPLE
L instrumental variable (IV) matrix
βj approximated AOA obtained from 6 (U12 − Qj)
νj = [sin βj ,− cos βj ]T approximated orthogonal unit vector for sj
U bcavple−wiv estimated auxiliary variables for the BCAVPLE-WIV
Uavple−wiv estimated auxiliary variables for the AVPLE-WIV
II. PROBLEM STATEMENT OF NODE SELF-LOCALIZATION
As shown in Fig. 1, assume there are N beacons equipped with GPS receivers and an unknown node without
GPS receivers in a region. Each beacon knows its accurate location, denoted by qj = [aj , bj ]T , j = 1, 2, . . . , N ,
but does not know its orientation. That is to say, we do not use the orientation information of the beacon in the
estimation. The nodes in black color are beacons. The unknown node, in yellow color, does not know its location
and orientation information. The location and orientation of the unknown node, denoted by p = [x, y, θ]T , are to
be estimated.
The beacons are signal emitters and the unknown node is a signal receiver. Hence, the AOAs of the beacons can
be measured by the neighboring unknown node with respect to its own orientation. Let βj denote the measured
AOA by the unknown node with respect to its own orientation θ from the jth beacon. The AOA measurements are
January 23, 2014 DRAFT
Page 5
5
Beacon
Unknown Node
1
Orientation
( , )j jj a bq
)( , ,x yp
1 11( , )a bq
j
Fig. 1: Illustration of the AOA based node self-localization in WSNs.
given as follows [21]:
βj = βj + ∆βj , ∆βj ∼ N (0, σ2j ), (1)
where βj is the true AOA measurement from the jth beacon, ∆βj ∼ N (0, σ2j ) is the measurement noise following
a Gaussian distribution with mean zero and variance of σ2j . Note that in [21], it has been shown that the errors of
AOA estimation by the MUSIC algorithm are asymptotically Gaussian distributed with zero means.
In this paper, the objective is to estimate the location and orientation of the unknown node based on the known
locations of beacons and their AOAs measured by the unknown node.
III. AUXILIARY VARIABLE BASED NODE SELF-LOCALIZATION IN CLOSED-FORM
As shown in Fig. 1, the relationship between the unknown node and its neighbor beacons is:
tan(θ + βj) =bj − yaj − x
, j = 1, 2, . . . , N, (2)
where (aj , bj) is the location of the jth beacon, (x, y) and θ denote the location and orientation of the unknown
node, respectively.
After mathematical derivation, we get
sinβj(x+ y tan θ)− cosβj(y − x tan θ)
− (aj cosβj + bj sinβj) tan θ = aj sinβj − bj cosβj .(3)
See Appendix A for the detailed mathematical derivation from (2) to (3).
To solve the unknown node location estimation problem, we introduce the following auxiliary variables:
u1 = x+ y tan θ,
u2 = y − x tan θ,
u3 = tan θ.
(4)
January 23, 2014 DRAFT
Page 6
6
Then (3) can be written as
sinβju1 − cosβju2 − (aj cosβj + bj sinβj)u3 = aj sinβj − bj cosβj . (5)
As the true AOA, βj , cannot be obtained in the outdoor environment, we replace it with the measured AOA with
noise, βj , to formulate the linear least squares problem. Thus, (5) could be approximately expressed as
AU ≈ b, (6)
where
A =
sin β1 − cos β1 −a1 cos β1 − b1 sin β1
sin β2 − cos β2 −a2 cos β2 − b2 sin β2...
......
sin βN − cos βN −aN cos βN − bN sin βN
, (7a)
b =
a1 sin β1 − b1 cos β1
a2 sin β2 − b2 cos β2...
aN sin βN − bN cos βN
, (7b)
U = [u1, u2, u3]T. (7c)
A least squares criteria can be used to solve (6). We can adopt the PLE to get a closed-form solution. The
estimated value of the auxiliary variables U , denoted by Uavple, is
Uavple = argminU||AU − b||22. (8)
Based on (8) and (4), the location and orientation of the unknown node is given byx
y
θ
=
u1−u3u2
1+u23
u2+u1u3
1+u23
arctan u3
. (9)
Remark 1 Note that the tangent becomes unstable when the orientation of the unknown node is near π/2 (or
−π/2). Thus, it may result in high estimation error of the auxiliary variables based PLE (AVPLE) method when
the orientation is near ±π/2.
To solve the tangent instability problem, we develop an autonomous coordinate rotation (ACR) algorithm to
autonomously rotate the coordinate system and therefore avoid the tangent instability as follows.
Based on the estimated location and orientation of the unknown node, p1 = [x1, y1, θ1]T , the locations of
beacons, qj = [aj , bj ]T , and the measured AOAs, βj , we will test whether to choose the original coordinate system
or the alternative rotated (by π/2) coordinate system. Specifically, in the original coordinate system, we compute
an error αj between the estimated AOAs based on the j-th beacon and estimated unknown node, denoted by
arctan(y1−bjx1−aj
)− θ1, and the measured AOAs βj , i.e., αj = arctan
(y1−bjx1−aj
)− θ1− βj . Similarly, we can compute
January 23, 2014 DRAFT
Page 7
7
this error in the rotated coordinate system, denoted by α′j . Now for N beacons, we compare the total square error,∑Nj=1 α
2j and
∑Nj=1 α
′2j , and then we adopt the coordinate system with lower total square error.
The key of the algorithm is to decide when to use the rotated (by π/2) coordinate system. The algorithmic
procedures of autonomous coordinate rotation (ACR) algorithm are summarized in Algorithm 1.
Algorithm 1 ACR algorithm
1: Initialization: βj , qj = [aj , bj ]T , j = 1, . . . , N ;
2: Use AVPLE algorithm to estimate the unknown node based on Eqs. (2)-(9), p1 = [x1, y1, θ1]T ;
3: Adopt the estimated p1 and the locations of beacons qj = [aj , bj ]T to calculate the estimated AOAs, denoted
by arctany1−bjx1−aj − θ1, j = 1, 2, . . . , N ;
4: Calculate an error between the estimated AOAs and the measured AOAs βj , denoted by αj = arctan(y1−bjx1−aj
)−
θ1 − βj ;
5: Rotate coordinate system, counter-clockwise 90 degrees. Then, Eq. (2) becomes tan(θ + βj) =x−ajbj−y ;
6: Estimate the unknown node in Step 5 using AVPLE, p2 = [x2, y2, θ2]T ;
7: Similar to Step 3 and 4, calculate the error between the estimated AOAs and the measured AOAs based on p2,
denoted by α′j = arctan(y2−bjx2−aj
)− θ2 − βj ;
8: If∑Nj=1 α
2j >
∑Nj=1 α
′2j
Adopt the rotated coordinate system, return;
else
Adopt original coordinate system, return;
End If
IV. ERROR ANALYSIS FOR UNKNOWN NODE LOCALIZATION
Note that in (6), the noise contaminated AOA measurements are used instead of the true AOA in (5). It leads to
the estimation error for the unknown node localization. In this section, we analyze the theoretical estimation error
of node self-localization using the AVPLE algorithm. First we provide the bias analysis of the auxiliary variables
using the AVPLE, and then derive the location error of the unknown node based on the estimation error of the
auxiliary variables.
Different from target localization, the error analysis for AOA based node self-localization involves three variables
in the two-dimension plane. This analysis has not been done before. We convert the formulation of node self-
localization using auxiliary variables in (5) to a similar target localization geometrical relationship in [20] as
depicted in Fig. 2. We assume that Qj = [aj +u3bj , bj −u3aj ]T represents the observer location, U12 = [u1, u2]T
represents the estimated target location, U12 = [u1, u2]T denotes the true target location and εj represents the
January 23, 2014 DRAFT
Page 8
8
jQ
12U 12U
j
j
1 2( , )u u
3 3( , )j j j ja u b b u a
jε
jr
js jsj
U
jζ
Target
Observer
jδ
Fig. 2: Geometrical relationship of node self-localization using auxiliary variables for equation (5).
orthogonal error vector. In addition, we define the orthogonal unit vector for noisy AOA vector sj as follows:
rj =
sin βj
− cos βj
. (10)
According to the target localization geometry described in Fig. 2, we have
U12 = U12 + ζj , (11)
where U12 denotes the estimated target location and ζj is the error vector.
Note that
U12 = Qj + sj , ζj = δj + εj . (12)
Substituting (12) into (11) yields
U12 = Qj + sj + δj + εj , (13)
where the orthogonal vector εj is defined by
εj = rjdj sin ∆βj , (14)
and dj = ‖sj‖ is the distance from Qj to U12.
By pre-multiplying both sides of (13) with rTj , we can get
rTj U12 = rTj Qj + rTj εj = rTj Qj + dj sin ∆βj . (15)
After expansion,
sin βju1 − cos βju2 − (aj cos βj + bj sin βj)u3
= aj sin βj − bj cos βj + dj sin ∆βj .(16)
January 23, 2014 DRAFT
Page 9
9
Concatenating (16) for j = 1, 2, . . . , N yields
AU = b+ φ, (17)
where
φ =
d1 sin ∆β1
d2 sin ∆β2...
dN sin ∆βN
, (18)
matrices A, U and b are the same as those in (7). Based on (17), the accurate solution of AVPLE is
U = (ATA)−1AT (b+ φ). (19)
Hence, the estimation bias of the auxiliary variables for AVPLE in (8) can be given by
∆U = E{Uavple −U
}= E
{(ATA)−1AT b− (ATA)−1AT (b+ φ)
}= −E
{(ATA)−1ATφ
}.
(20)
Then, based on Slutsky’s theorem [22], [2], for large N the AVPLE bias mentioned above can be approximated by
∆U ≈ −E
{ATA
N
}−1E
{ATφ
N
}. (21)
As N →∞, (21) becomes an equality. From (21), it can be seen that the AVPLE bias is determined by ATA as
well as ATφ.
In the following, we further analyze the relationship between ∆U with ATφ and ATA, and obtain a more
accurate theoretical description of the AVPLE bias. Note that
ATφ =
N∑j=1
djsin∆βj
sin βj
− cos βj
−aj cos βj − bj sin βj
=
N∑j=1
dj
12 sinβj sin 2∆βj
− 12 cosβj sin 2∆βj
− 12 (aj cosβj + bj sinβj) sin 2∆βj
+
N∑j=1
dj
cosβj sin2 ∆βj
sinβj sin2 ∆βj
(aj sinβj − bj cosβj) sin2 ∆βj
.
(22)
January 23, 2014 DRAFT
Page 10
10
ATA =
N∑j=1
sin2 βj − 1
2 sin 2βj − 12aj sin 2βj − bj sin2 βj
− 12 sin 2βj cos2 βj aj cos2 βj + 1
2bj sin 2βj
− 12aj sin 2βj − bj sin2 βj aj cos2 βj + 1
2bj sin 2βj (aj cos βj + bj sin βj)2
. (25)
Thus, the expectation of ATφ/N can be expressed by
E
{ATφ
N
}=
1
N
N∑j=1
η2j
dj cosβj
dj sinβj
dj(aj sinβj − bj cosβj)
=1
N
N∑j=1
η2j
u1 − bju3 − aju2 − bj + aju3
aju2 − bju1 + cju3
=
1
N
N∑j=1
η2j (GjU −Dj)
(23)
where
Gj =
1 0 −bj0 1 aj
−bj aj cj
,Dj =
aj
bj
0
, (24a)
η2j = E{sin2 ∆βj}, cj = a2j + b2j . (24b)
If the AOA measurement noise is sufficiently small, η2j ≈ E{∆β2j } = σ2
j , same as the variance of AOA noise
in (1).
Now we examine the autocorrelation matrix E{ATA/N}. Based on (7a), we have (25), please see it on the top
of next page. The elements in (25) are
sin2 βj = sin2 βj cos2 ∆βj + cos2 βj sin2 ∆βj
+1
2sin 2βj sin 2∆βj ,
(26a)
cos2 βj = cos2 βj cos2 ∆βj + sin2 βj sin2 ∆βj
− 1
2sin 2βj sin 2∆βj ,
(26b)
sin 2βj = sin 2βj cos 2∆βj + cos 2βj sin 2∆βj . (26c)
Thus for small AOA measurement noise we can get the expectation (27), please see it on the top of next page.
January 23, 2014 DRAFT
Page 11
11
E
{ATA
N
}=
1
N
N∑j=1
sin2 βj − 12 sin 2βj − 1
2aj sin 2βj − bj sin2 βj
− 12 sin 2βj cos2 βj aj cos2 βj + 1
2bj sin 2βj
− 12aj sin 2βj − bj sin2 βj aj cos2 βj + 1
2bj sin 2βj (aj cosβj + bj sinβj)2
+η2j
cos 2βj sin 2βj aj sin 2βj − bj cos 2βj
sin 2βj − cos 2βj −aj cos 2βj − bj sin 2βj
aj sin 2βj − bj cos 2βj −aj cos 2βj − bj sin 2βj cos 2βj(b2j − a2j )− 2ajbj sin 2βj
.
(27)
Based on (23) and (27), the AVPLE bias in (21) can be rewritten as
∆U ≈ −E{ATA
N}−1
1
N
N∑j=1
η2j (GjU −Dj)
≈ −E{ATA}−1
N∑j=1
η2j (GjU −Dj),
(28)
where E{ATAN }−1 is the inverse of formulation (27). In the limit when N →∞, (28) would become an equality.
It can be seen from (28) that for large N the estimation bias is determined by E{ATA/N} as well as matrix
Gj and Dj , which are related to the locations of beacons. Moreover, (23) and (27) show that the estimation error
is proportional to η2j , which approximates the AOA noise variance when the AOA noise is small. Note that the
estimation bias ∆U does not vanish with the increase of N even if when N →∞, implying that the AVPLE is a
biased estimator.
Remark 2 We employ the chi-squared test to check the error distributions of U = [u1, u2, u3]T , and find that
their error distributions are not Gaussian. It is because the cosine and sine functions in (6) and (7) are nonlinear
functions that apply to the measured DOA with Gaussian noise βj . Thus, the algorithm to estimate the auxiliary
variables for node self-localization in our paper is a pseudo-linear estimator (PLE) similar to those defined in
[19], [23]–[25], and it is a biased estimator.
After obtaining the estimation bias of the auxiliary variables for the AVPLE, denoted by [∆u1,∆u2,∆u3]T =
∆U , we can get the estimation bias ξ of the unknown node as follows
ξx =u1 − u2u3
1 + u23− u1 − u2u3
1 + u23
={u1 + ∆u1 − (u2 + ∆u2)(u3 + ∆u3)}
1 + (u3 + ∆u3)2− u1 − u2u3
1 + u23,
(29a)
ξy =u2 + u1u3
1 + u23− u2 + u1u3
1 + u23
={u2 + ∆u2 + (u1 + ∆u1)(u3 + ∆u3)}
1 + (u3 + ∆u3)2− u2 + u1u3
1 + u23,
(29b)
January 23, 2014 DRAFT
Page 12
12
ξθ = arctan u3 − arctanu3
= arctan∆u3
1 + tan(u3 + ∆u3) tanu3,
(29c)
where ξ = [ξx, ξy , ξθ]T denotes the estimation error of the location and orientation for the unknown node,
[u1, u2, u3]T are the accurate values of the auxiliary variables for node self-localization.
V. BIAS COMPENSATION FOR AVPLE AND WEIGHTED INSTRUMENTAL VARIABLE ESTIMATOR
In this section, we provide a bias compensation scheme for the AVPLE algorithm based on the prior knowledge
of the AOA noise variance. To further reduce the estimation bias and approximate the CRLB accuracy, a new
BCAVPLE based WIV (BCAVPLE-WIV) estimator is proposed. In addition, when the AOA noise variance is
unknown, a new AVPLE based WIV (AVPLE-WIV) estimator is developed to localize the unknown node.
A. Bias Compensation for the AVPLE (BCAVPLE)
The position estimation bias of the unknown node is determined by the estimation bias of auxiliary variables as
shown in (29). Therefore, it is essential to estimate the auxiliary variables as accurately as possible. We show that
the AVPLE is a biased estimator, motivating us to develop a method to compensate the bias.
Note that in AVPLE estimation bias (20), the true ranges and AOA noises in φ are unavailable to calculate the
bias ∆U . For sufficiently large N , using the similar methodology as in [19], we can approximate the estimation
bias ∆U by
∆U = −(ATA)−1E{ATφ
}= −(ATA)−1
N∑j=1
η2j (GjU −Dj) .(30)
For large N , the expectation of the approximate estimation bias in (30) is
E{∆U} ≈ −E{ATA}−1N∑j=1
η2j (GjU −Dj) ≈ ∆U . (31)
Since the true value of U is unavailable, the approximate estimation bias ∆U cannot be obtained directly. To
calculate the approximate estimation bias ∆U of the auxiliary variables, the matrix U in (30) is replaced by the
estimation result of AVPLE, Uavple. Thus the estimation bias can be approximated as
∆ˆU = −(ATA)−1
N∑j=1
η2j (GjUavple −Dj) (32)
Note that Uavple = U + ∆U . The expectation of the approximate estimation bias in (32) can be expressed by
E{∆ ˆU} ≈ −E{ATA}−1
N∑j=1
η2j (Gj(U + ∆U)−Dj)
≈ ∆U − E{ATA}−1N∑j=1
η2jGj∆U
≈(I − E{ATA}−1H
)∆U ,
(33)
January 23, 2014 DRAFT
Page 13
13
where I is the identity matrix, and
H =
N∑j=1
η2jGj . (34)
Note that the approximate estimation bias in (31) is unbiased, while the estimation error in (33) is asymptotically
biased. The estimation bias in (33) could have a small bias only if meets one of the following conditions:
• E{ATA}−1H ≈ µI,∀ 0 ≤ µ� 1;
• η2j ≈ 0.
As we obtain the approximated estimation bias ∆ˆU , the BCAVPLE estimator can be written as
U bcavple = Uavple −∆ˆU
= Uavple + (ATA)−1N∑j=1
η2j (GjUavple −Dj)(35)
It can be seen in (33) that the approximated estimation bias is biased, thus the BCAVPLE is also biased. However,
we can see from (35) that the BCAVPLE has a reduced estimation bias compared with the AVPLE.
Based on (35), the estimate bias of BCAVPLE is given by
∆U bcavple = E{U bcavple} −U ≈ ∆U − E{∆ ˆU}
≈ E{ATA}−1H∆U .(36)
Remark 3 The BCAVPLE algorithm is effective based on the accurate prior knowledge of the transformed AOA
noise variance η2j = E{sin2 ∆βj}, which approximates the AOA noise variance σ2j when it is small. Without this
prior knowledge of the AOA measurement noise, the BCAVPLE cannot reduce the estimation bias effectively as
shown below.
Assuming that the inaccurate AOA noise variance parameter is η2j , the error between the BCAVPLE without
accurate AOA noise variance parameter and the BCAVPLE with accurate prior knowledge of AOA noise variance
is
εbcavple = (ATA)−1N∑j=1
(η2j − η2j )(GjUavple −Dj), (37)
and the error between the AVPLE and the BCAVPLE with accurate prior knowledge of AOA noise variance is
εavple,bcavple = −(ATA)−1N∑j=1
η2j (GjUavple −Dj). (38)
Comparing (37) and (38), we can see that BCAVPLE may have larger estimation bias for the node self-localization
compared with the AVPLE when the error between the accurate η2j and inaccurate η2j is large.
B. Asymptotically Unbiased Weighted Instrumental Variable Estimator
In general, the BCAVPLE is not an unbiased estimator though its estimation bias could be reduced compared
with the AVPLE. To construct an asymptotically unbiased estimator, based on the methodology in [19], [17], a new
BCAVPLE-WIV estimator is proposed to localize the unknown node based on the prior knowledge of the AOA
January 23, 2014 DRAFT
Page 14
14
noise variance. In addition, in the case that the AOA noise variance is unknown, we present a new AVPLE-WIV
estimator to estimate the unknown node. We will elaborate these two new methods respectively below in this section.
The key of the BCAVPLE-WIV is to design and construct the instrumental variable (IV) matrix L. Our new
method is described as follows.
Referring to (6) and (8), the solution of the AVPLE is obtained from the following normal equation
ATAUavple = AT b. (39)
To reduce the bias caused by the correlation between AT and φ when ATA is nonsingular, the IV matrix L is
introduced to replace the matrix A in (39), yielding
LTAU iv = LT b, (40)
where U iv is the IV estimator
U iv = (LTA)−1LT b. (41)
The most challenging task for the IV estimator is to choose a reasonable L such that E{LTA/N} is nonsingular
and E{LTφ/N} = 0, which can make the IV estimator an asymptotically unbiased estimator, i.e., E{U iv} = U iv
as N →∞. Usually, the noise-free A can be chosen as the optimal IV matrix [19], [22], i.e.,
A0 =
νT1 Φ1
...
νTNΦN
, (42)
where
νj =
sinβj
− cosβj
, j = 1, 2, . . . , N, (43a)
Φj =
1 0 −bj0 1 aj
, j = 1, 2, . . . , N. (43b)
However, the optimal IV matrix is not available since the true AOAs cannot be obtained in the open air environment
with noise. A simple method for constructing the IV matrix L is to replace the true AOA measurement βj in A0
with the approximated AOA obtained from the BCAVPLE. Here the approximated AOA is given by
βj = 6 (U b − Qj), j = 1, 2, . . . , N, (44)
where
U b = [ub1, ub2]T , j = 1, 2, . . . , N, (45a)
Qj = [aj + bj ub3, bj − aj ub3]T , j = 1, 2, . . . , N, (45b)
and
[ub1, ub2, ub3]T = U bcavple, (45c)
which is the estimation result of the BCAVPLE.
January 23, 2014 DRAFT
Page 15
15
Based on the βj estimated in (44), the IV matrix can be constructed as
L =
νT1 Φ1
...
νTNΦN
, νj =
sin βj
− cos βj
. (46)
To reduce the estimation variance, a WIV estimator is proposed to estimate the unknown node based on the IV
estimator. Under the assumption that the AOA noise variance σ2j is known, the weighted matrix can be given by
W = diag(d21σ21 , d
22σ
22 , · · · , d2Nσ2
N ), (47)
where dj is the estimated range from the observer Qj to estimated target location U12 based on BCAVPLE. Using
the similar methodology in [26], [19], the closed-form solution of the WIV estimator, i.e., the BCAVPLE-WIV
estimator, is
U bcavple−wiv = (LTW−1A)−1LTW−1b. (48)
If the AOA noise is independent identically distributed (i.i.d.) with the variance σ2j = σ2, j = 1, 2, . . . , N , the
weighted matrix in (47) can be rewritten as
W = diag(d21, d22, . . . , d
2N ). (49)
However, sometimes the AOA noise variance σ2j is hard to estimate due to the complicated outdoor environments.
We present an AVPLE-WIV estimator, which does not need the prior knowledge of AOA noise variance, to localize
the unknown node. Similar to the BCAVPLE-WIV estimator, the AVPLE-WIV estimator is given by
Uavple−wiv = (L1TW1
−1A)−1L1TW1
−1b, (50)
where W1 is the same as W in (49), and
L1 =
ν′T
1 Φ1
...
ν′TNΦN
, ν′j =
sin β′j
− cos β′j
, (51)
where
β′j = 6 (U ′ − Q′j), j = 1, 2, . . . , N, (52a)
U ′ = [u′1, u′2]T , Q′j = [aj + bj u′3, bj − aj u′3]T , (52b)
and
[u′1, u′2, u′3]T = Uavple, (52c)
which is the estimation result of the AVPLE.
Remark 4 The BCAVPLE-WIV estimator is effective and feasible when the prior knowledge of AOA noise variance
σ2j is available, while the AVPLE-WIV does not need the prior knowledge of AOA noise variance. For the BCAVPLE-
WIV estimator, the approximated AOA βj used in IV matrix L is derived from the BCAVPLE, while for the AVPLE-
WIV estimator, the approximated AOA β′j used in IV matrix L1 is derived from the AVPLE. When the AOA noise
January 23, 2014 DRAFT
Page 16
16
is i.i.d., we can use the AVPLE-WIV estimator to estimate the unknown node. However, while the AOA noise is not
i.i.d., its performance may degrade and we should use BCAVPLE-WIV if possible since it does not assume i.i.d.
The following Remark 5 gives the property of the BCAVPLE-WIV estimator and the AVPLE-WIV estimator:
Remark 5 For sufficiently large N , both the AVPLE-WIV estimator and the BCAVPLE-WIV estimator are asymp-
totically unbiased estimators. Moreover, assume that AOA noise variance is i.i.d. with variance σ2j = σ2 and the
prior knowledge of σ2 is known, for finite value of N , the BCAVPLE-WIV estimator has lower estimation error
than the AVPLE-WIV estimator.
Proof: See Appendix B.
The algorithmic procedures of both the BCAVPLE-WIV estimator and the AVPLE-WIV estimator are summarized
in Algorithm 2.
VI. MAXIMUM LIKELIHOOD ESTIMATOR AND CRAMER-RAO LOWER BOUND
We briefly introduce the ML estimator for AOA based node self-localization, and then derive its Cramer-Rao
Lower Bound (CRLB).
A. Maximum Likelihood Estimator
The ML is an asymptotically unbiased estimator. To compare the localization error with our new methods, the
ML estimator is also used as a benchmark. Under the assumption that the AOA measurements uncertainty is a
Gaussian distribution with zero mean and known covariance Σ, the likelihood function [27] is
f(β|β(p)) =1
(2π)N/2|Σ|1/2
× exp
{−1
2(β − β(p))TΣ−1(β − β(p))
},
(53)
where β = [β1, . . . , βN ]T is the N × 1 vector of AOA measurements, β(p) = [β1(p), . . . , βN (p)]T is the
N × 1 vector of AOAs as a function of the location and orientation with respect to the unknown nodes, Σ =
diag(σ21 , σ
22 , . . . , σ
2N ) is the N ×N diagonal covariance matrix of the AOA measurement errors, and |Σ| denotes
the determinant of Σ. Using the log-likelihood function to (53), we can obtain the ML cost function for estimating
the unknown node as
J =1
2(β − β(p))TΣ−1(β − β(p)) =
N∑j=1
1
2σ2j
(βj − βj(p))2
=
N∑j=1
1
2σ2j
(βj + θ − arctan
y − bjx− aj
)2
,
(54)
where N is the number of beacons within the sensing range of the unknown node, (aj , bj) is the location of the
jth beacon, βj is the measured AOA for the jth beacon, (x, y) and θ denote the location and orientation of the
unknown node, respectively.
January 23, 2014 DRAFT
Page 17
17
Algorithm 2 WIV estimator (BCAVPLE-WIV and AVPLE-WIV)
1: Input: βj , aj , bj , and σ2j , j = 1, 2, . . . , N
2: If σ2j is known
• Compute U bcavple (Equation (35))
• U = U bcavple
• λ2j = σ2j , j = 1, 2, . . . , N
else
• Compute Uavple (Equation (8))
• U = Uavple
• λ2j = 1, j = 1, 2, . . . , N
End
3: Compute
• U b = [ub1, ub2]T , where [ub1, ub2, ub3]T = U
• Qj = [aj + bj ub3, bj − aj ub3]T , j = 1, 2, . . . , N
4: Compute
βj = 6 (U b − Qj), d2j =‖ Qj − U b ‖22, j = 1, 2, . . . , N
5: Compute
• νj =
sin βj
− cos βj
, L =
νT1 Φ1
...
νTNΦN
6: Compute
• W = diag(d21λ21, d
22λ
22, . . . , d
2Nλ
2N )
• Uwiv = (LTW−1A)−1LTW−1b
The location of the unknown node can be obtained by minimizing J . The minimization of cost function J
involves a LS nonlinear problem, which does not have a closed-form solution. One can adopt search algorithms
such as Gauss-Newton algorithm [28], Nelder-Mead simplex algorithm [29] or Newton-Raphson [30] to seek the
optimal solutions by setting a reasonable initialization.
B. Cramer-Rao Lower Bound (CRLB) of ML Estimator
The CRLB is the theoretical lower bound of variance of an unbiased parameter estimate [4], [31], [32]. For the
AOA based self-localization, the lower bound can be defined as the inverse of the following Fisher information
January 23, 2014 DRAFT
Page 18
18
matrix,
F = E
[∂ ln f(β|p)
∂p
]T [∂ ln f(β|p)
∂p
]= E
{[∂J
∂x
∂J
∂y
∂J
∂θ
]T [∂J
∂x
∂J
∂y
∂J
∂θ
]},
(55)
where J is the cost function of likelihood estimation in (54).
Provided that AOA measurements are subjected to the Gaussian white noise with variance σ2j . Let ∆xj = x−aj ,
∆yj = y − bj and drj represents the Euclidean distance from the unknown node to the jth beacon, denoted by
drj =√
∆x2j + ∆y2j . Then the CRLB on the variance of the ML estimator is given by
Fc =
N∑j=1
1
σ2jdr
4j
(∆yj)
2 −∆xj∆yj dr2j∆yj
−∆xj∆yj (∆xj)2 −dr2j∆xj
dr2j∆yj −dr2j∆xj dr4j
−1
. (56)
VII. PERFORMANCE EVALUATION
Matlab simulations are conducted to evaluate the performance of our new algorithms. First, without loss of
generality, the estimation errors of new algorithms, the triangulation method and the ML estimator are compared
in the original coordinate system. Next the impact of the prior knowledge of the AOA noise variance on the
BCAVPLE algorithm and the BCAVPLE-WIV estimator are evaluated. Then the performance of the new AVPLE-
WIV estimator is illustrated by comparing the estimation errors with other proposed new algorithms. Finally, we
illustrate the effectiveness of the ACR algorithm to overcome the instability problem (tangent instability) of our
new estimation algorithms when the orientation of the unknown node is near π/2.
Assume that there are no systematic biases for locations of the beacons. Also assume that all the AOA measure-
ments are subject to i.i.d. additive Gaussian white noise with the noise variance σ2. Root mean square error (RMSE)
and estimation bias are used to evaluate the estimation accuracy, denoted as RMSE =√∑M
m=1 ‖p− p‖22/M and
‖E{p}−p‖2, respectively, where p is the estimated location, p is the true location of the unknown node and M is
the number of the simulation runs. Simulation results are obtained with M = 2, 000 Monte Carlo simulation runs.
A. Algorithm Comparisons based on Accurate Prior Knowledge of AOA Noise Variance
According to Remark 3 and Remark 4, the BCAVPLE and the BCAVPLE-WIV estimator are feasible and effective
with the accurate prior knowledge of the AOA noise variance σ2j . Thus, to compare our proposed algorithms with
the triangulation method and the ML estimator, the AOA noise variance σ2j is supposed to be known in advance.
We first consider a scenario with ten beacons and one unknown node randomly deployed in the 100m × 100m
region. Each trial is a new random realization of the placements of the 10 beacons and one unknown node based
on a Monte Carlo method.
The ML estimator is implemented by the Nelder-Mead simplex algorithm as in [29]. The iterative ML algorithm
requires a good initialization. The estimation result of the BCAVPLE is selected as the initialization for the ML
January 23, 2014 DRAFT
Page 19
19
1 2 3 4 5 6 7 8 9 100
10
20
30
40
AOA Noise Standard Deviation (degrees)
Loca
tion
Err
or (
m)
Triangulation AVPLE BCAVPLE ML BCAVPLE−WIV
1 2 3 4 5 6 7 8 9 100
10
20
30
AOA Noise Standard Deviation (degrees)
Orie
natio
n E
rror
(de
gree
s)
Fig. 3: Estimation errors of the proposed new algorithms including AVPLE, BCAVPLE and BCAVPLE-WIV, in
comparison with the triangulation and the ML estimator (N = 10).
estimator to have a fair comparison between the BCAVPLE-WIV estimator and the ML estimator. Note that
BCAVPLE-WIV does not need initialization, but it uses the estimation result of the BCAVPLE to obtain the
approximated AOA βj used in IV matrix L for the BCAVPLE-WIV estimator.
Fig. 3 illustrates the comparisons of estimation error (i.e, RMSE) for the triangulation method, the AVPLE, the
BCAVPLE, the BCAVPLE-WIV and the ML estimator initialized to BCAVPLE. It can be seen that the AVPLE
estimator has much lower estimation error than the triangulation method, which verifies the effectiveness and
feasibility of our new auxiliary variables based algorithm. Moreover, the BCAVPLE has higher localization accuracy
than the AVPLE as the AOA noise variance is known. In addition, the BCAVPLE-WIV estimator has lower estimation
error than the BCAVPLE and the AVPLE, but slightly higher than the ML estimator. However, the ML estimator
is sensitive to initializations and may suffer from local convergence problem, which will be discussed in detail in
the following subsection VII-D.
To compare the actual estimation bias [19] of different algorithms, we conduct simulations with one unknown
node, p = [80, 90, π/4]T , and 10 beacons randomly deployed in the 100m× 100m region, as shown in Fig. 4. We
can see that the proposed new algorithms have much lower estimation bias than the triangulation method, while
the BCAVPLE-WIV and the ML estimator have nearly the same estimation bias.
To show the effectiveness of the presented new algorithms and demonstrate that the BCAVPLE-WIV estimator
is an asymptotically unbiased estimator for large N , we randomly place 100 beacons and one unknown node in the
100m×100m region. For each Monte Carlo trial, the locations of 100 beacons and the unknown node are randomly
deployed in the area. We can see from Fig. 5 that the BCAVPLE has lower estimation error than the AVPLE. In
addition, the BCAVPLE-WIV estimator has much lower estimation error than the AVPLE and the BCAVPLE, which
January 23, 2014 DRAFT
Page 20
20
1 2 3 4 5 6 7 8 9 100
10
20
30
40
AOA Noise Standard Deviation (degrees)
Loca
tion
Bia
s (m
)
Triangulation AVPLE BCAVPLE ML BCAVPLE−WIV
1 2 3 4 5 6 7 8 9 100
5
10
15
20
AOA Noise Standard Deviation (degrees)
Orie
natio
n B
ias
(deg
rees
)
Fig. 4: Estimation bias of the proposed new algorithms including AVPLE, BCAVPLE and BCAVPLE-WIV, in
comparison with the triangulation and the ML(N = 10).
1 2 3 4 5 6 7 8 9 100
5
10
15
20
AOA Noise Standard Deviation (degrees)
Loca
tion
Err
or (
m)
AVPLEBCAVPLEMLAVBCPLE−WIVCRLB
1 2 3 4 5 6 7 8 9 100
5
10
15
20
AOA Noise Standard Deviation (degrees)
Orie
natio
n E
rror
(de
gree
s)
AVPLEBCAVPLEMLAVBCPLE−WIVCRLB
Fig. 5: Comparisons of estimation errors for the AVPLE, the BCAVPLE, the BCAVPLE-WIV, the ML and the
CRLB (N = 100).
approaches the CRLB for large N . Further, we illustrate the impact of the number of beacons on the estimation
errors of our new algorithms and the ML estimator. Fig. 6 shows that the estimation errors of all algorithms gradually
decrease with the increase of N . Note that the estimation errors of the AVPLE and the BCAVPLE decrease to a
constant larger than the CRLB, while the estimation errors of the BCAVPLE-WIV estimator and the ML estimator
decrease to approximate the CRLB as N increases.
January 23, 2014 DRAFT
Page 21
21
10 60 110 160 210 260 310 360 4100
1
2
3
4
Number of Beacons (N)
Loca
tion
Err
or (
m)
AVPLE BCAVPLE ML BCAVPLE−WIV CRLB
10 60 110 160 210 260 310 360 4100
1
2
3
4
Number of Beacons (N)
Orie
natio
n E
rror
(de
gree
s)
Fig. 6: Comparisons of estimation errors for our proposed algorithms and the ML as N increases (σ = 2).
B. Impact of the Prior Knowledge of the AOA Noise Variance on the BCAVPLE and the BCAVPLE-WIV
The effectiveness of the BCAVPLE and the BCAVPLE-WIV estimator are related to the prior knowledge of the
AOA noise variance σ2j . Assume that the predicted AOA noise standard deviation for the BCAVPLE, denoted by
φj , is four degrees worse than the actual σj , i.e., φj = σj + 4. In this simulation, with the same self-localization
scene as depicted in subsection VII-A, ten beacons and one unknown node are randomly deployed in the network
area. Fig. 7 shows that when the noise standard deviation φj is used by the BCAVPLE to compensate the estimate
bias of the AVPLE, the BCAVPLE has higher estimation error than the AVPLE for node self-localization when the
AOA noise standard deviation is less than 5 degrees. When the AOA noise standard deviation is beyond 4 degrees,
the estimation error of the BCAVPLE is lower than the AVPLE, but still higher than that when the prior knowledge
of σ2j is accurate as in Fig. 3. Thus, it can be seen that the BCAVPLE is sensitive to the accuracy of the prior
knowledge of the AOA noise variance σ2j . Note that the BCAVPLE-WIV estimator and AVPLE-WIV estimator
have nearly the same estimation errors that are much lower than the AVPLE. The BCAVPLE-WIV estimator is
more robust than the BCAVPLE.
C. Performance Evaluation for the AVPLE-WIV Estimator
In practice, the prior knowledge of the AOA noise variance σ2j is difficult to obtain owing to the complicated
outdoor environment for node self-localization. Therefore, the AVPLE-WIV estimator, which does not require prior
knowledge of σ2j , can be adopted to localize the unknown node. For the simulations in this subsection, we randomly
place N beacons and one unknown node in the 100m × 100m area. Fig. 8 shows the comparisons of estimation
errors for the AVPLE-WIV estimator, the AVPLE, the BCAVPLE and the BCAVPLE-WIV estimator. It can be seen
that the AVPLE-WIV estimator has lower estimation error than the AVPLE and the BCAVPLE, and it has almost
the same estimation error as the BCAVPLE-WIV estimator. However, for a large and finite N , the AVPLE-WIV
January 23, 2014 DRAFT
Page 22
22
1 2 3 4 5 6 7 8 9 100
5
10
15
20
AOA Noise Standard Deviation (degree)
Loca
tion
Err
or (
m)
1 2 3 4 5 6 7 8 9 100
10
20
30
AOA Noise Standard Deviation (degree)
Orie
natio
n E
rror
(de
gree
s)
AVPLEBCAVPLEBCAVPLE−WIVAVPLE−WIV
AVPLEBCAVPLEBCAVPLE−WIVAVPLE−WIV
Fig. 7: The impact of AOA noise variance on the BCAVPLE and the BCAVPLE-WIV estimator (N = 10).
estimator has slightly higher estimation error than the BCAVPLE-WIV estimator as illustrated in Fig. 9. In addition,
we can see from Fig. 8 that the estimation errors of the AVPLE-WIV and the BCAVPLE-WIV gradually decrease
and approach the CRLB as N increases, verifying Remark 5.
10 60 110 160 210 260 310 360 4100
1
2
3
4
Number of Beacons (N)
Loca
tion
Err
or (
m)
AVPLE BCAVPLE BCAVPLE−WIV AVPLE−WIV CRLB
10 60 110 160 210 260 310 360 4100
1
2
3
4
Number of Beacons (N)
Orie
natio
n E
rror
(de
gree
s)
Fig. 8: Comparisons of estimation errors for the AVPLE-WIV and other algorithms as the number of beacons N
increases (σ =2).
D. Algorithm Comparisons: AVPLE-WIV and BCAVPLE-WIV VS. ML Estimator
The ML estimator is sensitive to initializations and may suffer from local convergence problem. To illustrate
the impact of different initializations on the localization accuracy for the ML estimator, we conduct the simulation
January 23, 2014 DRAFT
Page 23
23
60 110 160 210 260 310 360 4100
0.2
0.4
The Number of Beacons
Loca
tion
Err
or (
m)
BCAVPLE−WIVAVPLE−WIVCRLB
60 110 160 210 260 310 360 4100
0.2
0.4
The Number of BeaconsOrie
natio
n E
rror
(de
gree
)
BCAVPLE−WIVAVPLE−WIVCRLB
Fig. 9: Comparisons of estimation errors for the BCLPLE-WIV and the AVPLE-WIV estimator as the number of
beacons N increases (σ =2).
with ten beacons randomly placed in the 100m × 100m area, and the location information of unknown node
is p = [100, 100, π/3]T . In Fig. 10, ML1 and ML2 represent the ML estimator initialized to the BCAVPLE
and other values, respectively. We can see that the ML estimator has different estimation biases under different
initializations, while the BCAVPLE-WIV and AVPLE-WIV estimator is not sensitive to initialization. Sometimes,
the ML estimator tends to diverge as the AOA noise increases as shown ML2 in Fig. 10, while the BCAVPLE-WIV
and the AVPLE-WIV remain stable. In addition, it should be pointed out that the BCAVPLE-WIV algorithm can
obtain the closed-form solutions that have much lower computational complexity than the multiple iterative ML
estimator.
E. Impact of the Orientation on Estimation Performance
For our auxiliary variables based closed-form algorithms, when the orientation θ of the unknown node is near
π/2, the tangent in (5) becomes unstable. In this paper, we further investigate the impact of the orientation on
estimation performance of the proposed algorithms. We randomly place 10 beacons and one unknown node in
the 100m× 100m region based on Monte Carlo method. Fig. 11 shows the localization accuracy of the proposed
algorithms without coordinate rotation as the orientation θ changes from 0 to 180 degrees. When the orientation
is between 80 degrees and 100 degrees, the estimation error of AVPLE and BCAVPLE is pretty large, especially
when θ is near 90 degrees, while the estimation error of the AVPLE-WIV and the BCAVPLE-WIV approximately
increases to 5 meters and 4 degrees when θ is near 90 degrees (i.e., π/2).
Based on the ACR algorithm, we evaluate the performance of our proposed algorithm again as shown in the
following Fig. 12. Fig. 12 shows that after coordinate rotation, the location error and the orientation error of AVPLE
have decreased from about 23 meters (in Fig. 11) to 2.2 meters and from 30 degrees to 2.3 degrees, respectively,
January 23, 2014 DRAFT
Page 24
24
1 2 3 4 5 6 7 8 9 100
50
100
150
AOA Noise Standard Deviation (degrees)
Loca
tion
Err
or (
m)
1 2 3 4 5 6 7 8 9 100
50
100
150
200
AOA Noise Standard Deviation (degrees)
Orie
natio
n E
rror
(de
gree
s)
ML1ML2AVPLE−WIVBCAVPLE−WIV
ML1ML2AVPLE−WIVBCAVPLE−WIV
Fig. 10: Comparisons of estimation errors of the AVPLE-WIV, the BCAVPLE-WIV and the ML with different
initializations (N = 10).
0 20 40 60 80 100 120 140 160 1800
10
20
30
Orientation of Unknown Node (degrees)
Loca
tion
Err
or (
m)
0 20 40 60 80 100 120 140 160 1800
10
20
30
40
Orientation of Unknown Node (degrees)
Orie
natio
n E
rror
(de
gree
s)
AVPLEBCAVPLEMLBCAVPLE−WIVAVPLE−WIV
AVPLEBCAVPLEMLBCAVPLE−WIVAVPLE−WIV
Fig. 11: Impact of the orientation angle on estimation performance of our proposed algorithms in the original
coordinate system (N = 10, σ = 2).
when the orientation is near 90 degrees, and those of BCAVPLE have decreased from 13 meters to 2 meters
and from 16.2 degrees to 2 degrees, while the estimation errors of the AVPLE-WIV and the BCAVPLE-WIV are
approximately the same as that of ML estimator. Therefore, our proposed ACR algorithm is effective to solve the
tangent instability problem.
January 23, 2014 DRAFT
Page 25
25
0 20 40 60 80 100 120 140 160 1800
5
10
Orientation of Unknown Node (degrees)
Loca
tion
Err
or (
m)
0 20 40 60 80 100 120 140 160 1800
5
10
Orientation of Unknown Node (degrees)
Orie
natio
n E
rror
(de
gree
s)
AVPLEBCAVPLEMLBCAVPLE−WIVAVPLE−WIV
AVPLEBCAVPLEMLBCAVPLE−WIVAVPLE−WIV
Fig. 12: Impact of the orientation angle on estimation performance of our proposed algorithms with autonomous
coordinate rotation (ACR) (N = 10, σ = 2).
VIII. CONCLUSION
In this paper, we present a set of novel auxiliary variables based close-form algorithms for the efficient AOA
based self-localization. First we obtain the closed-form AVPLE solution for AOA based self-localization problem
based on auxiliary variables. Based on the analysis of the theoretical estimation error of auxiliary variables for
the AVPLE, we further develop a bias compensation scheme for AVPLE to reduce the estimation error of node
self-localization, namely BCAVPLE method. When the prior knowledge of the AOA noise variance is known,
we present a BCAVPLE-WIV estimator to reach the approximate CRLB accuracy for node self-localization. In
the case that the AOA noise variance is unknown, a AVPLE-WIV estimator is presented to localize the unknown
node. Compared with the triangulation method, our proposed auxiliary variables based algorithms can improve the
localization accuracy significantly with lower complexity. The simulation results verify that the BCAVPLE reduces
the estimation error compared with the AVPLE, and for large number of beacons, N , the BCAVPLE-WIV estimator
can approximately reach the CRLB. We also show that when the AOA noise variance is unknown, the AVPLE-WIV
estimator has lower estimation error than the AVPLE and the BCAVPLE, which approaches the CRLB for the large
N . However, compared with the BCAVPLE-WIV estimator, the AVPLE-WIV estimator has higher estimation error
for a finite value of N .
In summary, the new AOA based self-localization algorithms, AVPLE, BCAVPLE, AVPLE-WIV and BCAVPLE-
WIV, have higher localization accuracy than the triangulation and can avoid the local minima and divergence
problems in iterative ML estimators. The AVPLE has lower localization accuracy than AVPLE-WIV, BCAVPLE,
and BCAVPLE-WIV when the prior knowledge of the AOA noise variance is known. Note that the effectiveness
of BCAVPLE and BCAVPLE-WIV estimator depends on the accurate prior knowledge of the AOA noise variance.
January 23, 2014 DRAFT
Page 26
26
The BCAVPLE-WIV estimator and the AVPLE-WIV estimator are both unbiased estimators for large N , but
BCAVPLE-WIV estimator has lower estimation error than AVPLE-WIV estimator for finite value of N . However,
the AVPLE-WIV estimator is more robust when we have no prior knowledge of the AOA noise variance and the
AOA noise is i.i.d. In addition, when the orientation is near 90 degrees, the proposed autonomous coordinate rotation
(ACR) method could solve the tangent instability problem of the presented new algorithms effectively.
APPENDIX A
MATHEMATICAL DERIVATION OF EQUATION (3)
Referring to (2), we have
(aj − x) tan(θ + βj) = bj − y, j = 1, 2, . . . , N. (57)
According to a trigonometric identity, (57)becomes
tan θ + tanβj1− tan θ tanβj
(aj − x) = bj − y, j = 1, 2, . . . , N. (58)
Rewrite (58) as
(tan θ + tanβj)(aj − x) = (bj − y)(1− tan θ tanβj). (59)
Rearrange the aforementioned formulation (59),
tanβj(x+ y tan θ)− (y − x tan θ)
− (aj + bj tanβj) tan θ = aj tanβj − bj .(60)
Pre-multiply both sides of (60) with cos βj , we obtain
sinβj(x+ y tan θ)− cosβj(y − x tan θ)
− (aj cosβj + bj sinβj) tan θ = aj sinβj − bj cosβj .(61)
APPENDIX B
PROOF OF REMARK 5
Similar to the prior work in [33], the correlation between the Uavple and the noise vector φ vanishes as the number
of beacons N → ∞. Thus the approximated AOA obtained from the AVPLE, denoted by β′j , is asymptotically
uncorrelated with φ. As a result, the elements of the IV matrix L1 for the AVPLE-WIV estimator in (51) are
independent of the elements of the matrix φ for sufficient large N . Moreover, the elements of L1 are uniformly
bounded. Based on the Theorem 2 in [22], we have P limN→∞1NL
T1 φ = 0, where “P lim” denotes the probability
limit [22].
In addition, if the unknown node is observable, P limN→∞ATA/N is always nonsingular, thus P limN→∞L
T1A/N
is nonsingular as well. Therefore, according to the two sufficient and necessary conditions in [22], we can conclude
that the AVPLE-WIV estimator is asymptotically unbiased. Using the same methodology, we can also justify that
the BCAVPLE-WIV estimator is asymptotically unbiased.
January 23, 2014 DRAFT
Page 27
27
Next, we will verify that the BCAVPLE-WIV estimator has lower estimation error than the AVPLE-WIV estimator
for finite value of N when the AOA noise variance σ2j is known. Firstly, since the BCAVPLE estimator has higher
localization accuracy than the AVPLE when the prior knowledge of σ2j is known, the approximated AOA used in
IV matrix L obtained from the BCAVPLE, denoted by βj , is more accurate than β′j obtained from the AVPLE,
i.e.,
|βj − βj | < |β′j − βj |, (62)
where βj is the true AOA measurement.
According to (62) and (46), for finite value of N , we can see that the IV matrix for BCAVPLE-WIV estimator,
denoted by L, is closer to the optimal IV matrix A0 than that of the AVPLE-WIV. When the AOA noise subjects
to i.i.d., the BCAVPLE-WIV and the AVPLE-WIV have the same formulation as shown in (48) and (50), except
for the different IV matrix. Generally, the more closely the estimated IV matrix approaches the optimal IV matrix
A0, the higher is the localization accuracy of the estimator. Therefore, we can conclude that the BCAVPLE-WIV
estimator has lower estimation error than the AVPLE-WIV for finite value of N .
REFERENCES
[1] Z. Wang, L. Ji-An, and X.-P. Zhang, “A novel location penalized maximum likelihood estimator for bearing only target localization,” IEEE
Trans. on Signal Processing, vol. 60, no. 12, pp. 6166–6181, 2012.
[2] K. Dogancay, “Relationship between geometric translations and tls estimation bias in bearings-only target localization,” IEEE Trans. on
Signal Processing, vol. 56, no. 3, pp. 1005–1017, 2008.
[3] Y. Liu, Y. Hu, and Q. Pan, “Distributed, robust acoustic source localization in a wireless sensor network,” IEEE Trans. on Signal Processing,
vol. 60, no. 8, pp. 4350–4359, 2012.
[4] X. Sheng and Y. Hu, “Maximum likelihood multiple-source localization using acoustic energy measurements with wireless sensor networks,”
IEEE Trans. on Signal Processing, vol. 53, no. 1, pp. 44–53, 2005.
[5] A. Ali, S. Asgari, T. Collier, M. Allen, L. Girod, R. Hudson, K. Yao, C. Taylor, and D. Blumstein, “An empirical study of collaborative
acoustic source localization,” Journal of Signal Processing Systems, vol. 57, no. 3, pp. 415–436, 2009.
[6] M. Sun and K. Ho, “Successive and asymptotically efficient localization of sensor nodes in closed-form,” IEEE Trans. on Signal Processing,
vol. 57, no. 11, pp. 4522–4537, 2009.
[7] Z. Zhong and T. He, “Wireless sensor node localization by multisequence processing,” ACM Transactions on Embedded Computing Systems,
vol. 11, no. 1, p. 3, 2012.
[8] R. Stoleru, T. He, S. Mathiharan, S. George, and J. Stankovic, “Asymmetric event-driven node localization in wireless sensor networks,”
IEEE Trans. Parallel Distrib. Syst., vol. 23, no. 4, pp. 634–642, 2012.
[9] L. Yang and K. Ho, “An approximately efficient tdoa localization algorithm in closed-form for locating multiple disjoint sources with
erroneous sensor positions,” IEEE Trans. on Signal Processing, vol. 57, no. 12, pp. 4598–4615, 2009.
[10] D. Niculescu and B. Nath, “Ad hoc positioning system (aps) using aoa,” in INFOCOM 2003, Twenty-Second Annual Joint Conference of
the IEEE Computer and Communications, vol. 3, 2003, pp. 1734–1743.
[11] P. Biswas, H. Aghajan, and Y. Ye, “Integration of angle of arrival information for multimodal sensor network localization using semidefinite
programming,” in 39th Asilomar Conference on Signals, Systems and Computers, 2005.
[12] P. Rong and M. Sichitiu, “Angle of arrival localization for wireless sensor networks,” in 3rd Annual IEEE Communications Society on
Sensor and Ad Hoc Communications and Networks, SECON’06., vol. 1, 2006, pp. 374–382.
[13] V. Cevher and J. H. McClellan, “Acoustic node calibration using a moving source,” IEEE Trans. Aerosp. Electron. Syst., vol. 42, no. 2,
pp. 585–600, 2006.
January 23, 2014 DRAFT
Page 28
28
[14] R. Moses, D. Krishnamurthy, and R. Patterson, “A self-localization method for wireless sensor networks,” EURASIP Journal on Applied
Signal Processing, pp. 348–358, 2003.
[15] H. Xue, H. Shao, Z. Wang, and et al., “A self-localization mechanism for acoustic array network based on target assistance under the
limited beacons,” Journal of Software, vol. 22, no. 1, pp. 40–50, 2011.
[16] L. Yang and K. Ho, “Alleviating sensor position error in source localization using calibration emitters at inaccurate locations,” IEEE Trans.
on Signal Processing, vol. 58, no. 1, pp. 67–83, 2010.
[17] K. Dogancay, “On the efficiency of a bearings-only instrumental variable estimator for target motion analysis,” Signal processing, vol. 85,
no. 3, pp. 481–490, 2005.
[18] P. Biswas, T. Lian, T. Wang, and Y. Ye, “Semidefinite programming based algorithms for sensor network localization,” ACM Transactions
on Sensor Networks, vol. 2, no. 2, pp. 188–220, 2006.
[19] K. Dogancay, “Bias compensation for the bearings-only pseudolinear target track estimator,” IEEE Trans. on Signal Processing, vol. 54,
no. 1, pp. 59–68, 2006.
[20] ——, “On the bias of linear least squares algorithms for passive target localization,” Signal Processing, vol. 84, no. 3, pp. 475–486, 2004.
[21] P. Stoica and A. Nehorai, “Music, maximum likelihood, and cramer-rao bound,” IEEE Transactions on Acoustics, Speech and Signal
Processing, vol. 37, no. 5, pp. 720–741, 1989.
[22] K. Wong and E. Polak, “Identification of linear discrete time systems using the instrumental variable method,” IEEE Trans. Autom. Control,
vol. 12, no. 6, pp. 707–718, 1967.
[23] A. Lingren and K. F. Gong, “Position and velocity estimation via bearing observations,” IEEE Trans. Aerosp. Electron. Syst., no. 4, pp.
564–577, 1978.
[24] S. Nardone, A. Lindgren, and K. Gong, “Fundamental properties and performance of conventional bearings-only target motion analysis,”
IEEE Trans. Autom. Control, vol. 29, no. 9, pp. 775–787, 1984.
[25] V. J. Aidala and S. C. Nardone, “Biased estimation properties of the pseudolinear tracking filter,” IEEE Trans. Aerosp. Electron. Syst.,
no. 4, pp. 432–441, 1982.
[26] Y. Chan and S. Rudnicki, “Bearings-only and doppler-bearing tracking using instrumental variables,” IEEE Trans. Aerosp. Electron. Syst.,
vol. 28, no. 4, pp. 1076–1083, 1992.
[27] K. Dogancay, “Bearings-only target localization using total least squares,” Signal processing, vol. 85, no. 9, pp. 1695–1710, 2005.
[28] L. Ljung and T. Soderstrom, Theory and practice of recursive identification. Cambridge, MA: MIT Press, 1983.
[29] J. C. Lagarias, J. A. Reeds, M. H. Wright, and P. E. Wright, “Convergence properties of the nelder–mead simplex method in low
dimensions,” SIAM Journal on Optimization, vol. 9, no. 1, pp. 112–147, 1998.
[30] R. Jennrich and P. Sampson, “Newton-raphson and related algorithms for maximum likelihood variance component estimation,”
Technometrics, vol. 18, no. 1, pp. 11–17, 1976.
[31] D. Torrieri, “Statistical theory of passive location systems,” IEEE Trans. Aerosp. Electron. Syst., no. 2, pp. 183–198, 1984.
[32] J. Chen, K. Yao, and R. Hudson, “Source localization and beamforming,” IEEE Signal Processing Magazine, vol. 19, no. 2, pp. 30–39,
2002.
[33] K. Dogancay, “Passive emitter localization using weighted instrumental variables,” Signal processing, vol. 84, no. 3, pp. 487–497, 2004.
January 23, 2014 DRAFT