Apparatus and method for 3-D network localization

20200205011 ยท 2020-06-25

    Inventors

    Cpc classification

    International classification

    Abstract

    An apparatus and a method for simultaneous localization of multiple targets in 3-D cooperative wireless sensor networks (WSNs), utilizing combined measurements of received signal strength (RSS) and angle of arrival (AoA) are disclosed herein. By exploiting the convenient nature of spherical representation of the considered problem, the measurement models are linearized and a sub-optimal estimator is formulated. The method disclosed herein has a straightforward adaptation to the case where the target's transmit power is also not known. A representative set of simulations and experiments verify the potential performance improvement realized with embodiments of the method for RSS/AoA network localization in 3-D space.

    Claims

    1. An apparatus for 3-D received signal strength/angle of arrival (RSS/AoA)-based network localization comprising: at least one directive or antenna array in each target; a central processing unit to process the RSS information sent by each target and computes the distance of the transmitter to the receiver; a central processing unit to process the AoA information and compute the AoA of the incoming signal transmitted by each sensor present in the wireless network; a central processing unit that computes the conversion from Cartesian to spherical coordinates of both RSS and AaA measurements; a central processing unit where the RSS and AoA radio measurements of the transmitted signals are merged; a central processing unit to classify the nearby radio links by introducing weights to be used in a weighted least squares (WLS) criterion employed in location target estimate computation; a central processing unit that computes simultaneously the estimated locations of all targets, based on the merged measurements, and using an estimator according to the WLS criterion.

    2. A method for 3-D received signal strength/angle of arrival (RSS/AoA)-based network localization comprising: processing the RSS information and computing the distance of the transmitter to the receiver; computing the AoA of the incoming signal transmitted by each sensor present in the wireless network; converting the Cartesian to spherical coordinates to merge the two radio measurements of the transmitted signal, namely RSS and AoA measurements; giving weights to the radio links to reinforce the importance of the nearby radio links, being these weights used in a weighted least squares (WLS) criterion employed in node's location estimate computation; computing simultaneously all the unknown target locations, without resort to any relaxation technique, based on the acquired AoA measurements and the merge of the RSS and AoA information.

    3. A method for 3-D RSS/AoA-based network localization as in claim 2, when transmitted power information, P.sub.T, is known, comprising the following steps: a. first, from f ( P ij | X ) = 1 2 .Math. n ij 2 .Math. exp .Math. { - ( P ij - P 0 + 10 .Math. log 10 .Math. d ij d 0 ) 2 2 .Math. n ij 2 } , where d.sub.0(d.sub.0d.sub.ij) is a reference distance, P.sub.0 is the reference RSS at distance d.sub.0, P.sub.ij denotes the RSS at distance d.sub.ij, is the path loss exponent (PLE), and d.sub.ij is the distance between sensors i and j, and .sub.n.sub.ij.sup.2 represents the variance of the log-normal shadowing term modeled as zero-mean Gaussian random variable n.sub.ijcustom-character(0,.sub.n.sub.ij.sup.2), compute the distance that best estimates x.sub.is.sub.j, with x.sub.i=[x.sub.ix,x.sub.iy,x.sub.iz].sup.T and s.sub.j=[s.sub.jx,s.sub.jy,s.sub.jz].sup.T denoting the coordinates of the i-th target and its j-th neighboring sensor, respectively in the ML sense is: d ^ ij = d 0 .Math. 10 P 0 - P ij 10 .Math. ; ( 7 ) b. similarly, from f ( ij | X ) = 1 2 .Math. .Math. .Math. I 0 ( ij ) .Math. exp .Math. { ij .Math. cos ( ij - ~ ij ) } , and .Math. f ( ij | X ) = 1 2 .Math. .Math. .Math. I 0 ( ij ) .Math. exp .Math. { ij .Math. cos ( ij - ~ ij ) } , compute the angles which best estimate the azimuth angle, .sub.ij, and the elevation angle, .sub.ij, between the i-th target and its j-th neighboring sensor in the ML sense given by ^ ij = tan - 1 ( x iy - s jy x ix - s jx ) , ( 8 .Math. a ) ^ ij = cos - 1 ( x iz - s jz .Math. x i - s j .Math. ) , ( 8 .Math. b ) since f(.sub.ij|X) and f(.sub.ij|X) are maximized when the cosines in the arguments are equal to 1, i.e., when {tilde over ()}.sub.ij={tilde over ()}.sub.ij and {tilde over ()}.sub.ij={tilde over ()}.sub.ij; c. from (7) and (8), we can respectively write
    .sub.ijx.sub.is.sub.jd.sub.0,(9)
    c.sub.ij.sup.T(x.sub.is.sub.j)0,(10a)
    i k.sup.T(x.sub.is.sub.j)x.sub.is.sub.jcos(.sub.ij),(10b) where ij = 10 P ij 10 .Math. , = 10 P 0 10 .Math. , c.sub.ij=[sin(.sub.ij),cos(.sub.ij),0].sup.T, and k=[0,0,1].sup.T. If we d. next, apply the Cartesian to spherical coordinates conversion to (9) and (10b), and multiply with I (formed as u.sub.ij.sup.Tu.sub.ij), to respectively get:
    .sub.iju.sub.ij.sup.Tr.sub.iju.sub.ijd.sub.0.sub.iju.sub.ij.sup.T(x.sub.is.sub.j)d.sub.0,(11) and
    k.sup.Tr.sub.iju.sub.iju.sub.ij.sup.Tr.sub.iju.sub.ij cos (.sub.ij)(cos(.sub.ij)u.sub.ijk).sup.T(x.sub.is.sub.j)0;(12) e. to give more importance to nearby links, introduce weights, w=[{square root over (w.sub.ij)}], where each w.sub.ij is defined as w ij = 1 - d ^ ij .Math. ( i , j ) .Math. .Math. d ^ ij ; ( 13 ) next, according to the weigthed least squares (WLS) criterion and (11), (10a), (12) and (13), obtain the following estimator: X ^ = argmin X .Math. .Math. ( i , j ) .Math. .Math. w ij ( ij .Math. u ij T ( x i - s j ) - .Math. .Math. d 0 ) 2 + .Math. ( i , j ) .Math. .Math. w ij ( c ij T ( x i - s j ) ) 2 + .Math. ( i , j ) .Math. .Math. w ij ( ( cos ( ij ) .Math. u ij - k ) T .Math. ( x i - s j ) ) 2 , ( 14 ) where denotes the tuple set of the all sensors within communication range, which can be writen as minimize x .Math. .Math. W ( Ax - b ) .Math. 2 , ( 15 ) where x=[x.sub.1,x.sub.2, . . . ,x.sub.M].sup.T, (xcustom-character.sup.3M1), W=l.sub.3.Math.diag(w), with .Math. denoting the Kronecker product, and
    A.sub.t,3(i1)+1:3i=.sub.iju.sub.ij.sup.T, b.sub.t=.sub.iju.sub.ij.sup.T.sub.ij+d.sub.0, (i,j)custom-character, t=1, . . . ,|custom-character|;
    A.sub.t,3(i1)+1:3i=c.sub.ij.sup.T, b.sub.t=c.sub.ij.sup.T.sub.ij, (i,j)custom-character, t=|custom-character|+1, . . . , 2|custom-character|;
    A.sub.t,3(i1)+1:3i=(cos(.sub.ij)u.sub.ijk).sup.T, b.sub.t=(cos(.sub.ij)u.sub.ijk).sup.T.sub.j, (i,j)custom-character, t=2|custom-character|+1, . . . ,3|custom-character|;
    A.sub.t,[3(i1)+1:3i, 3(j1)+1:3j]=[c.sub.ij.sup.T,c.sub.ij.sup.T], b.sub.t=0, (i,j)custom-character, t=3|custom-character|+1, . . . ,3|custom-character|+|custom-character|;
    A.sub.t,[3(i1)+1:3i, 3(j1)+1:3j][c.sub.ij.sup.T,c.sub.ij.sup.T], b.sub.t=0, (i,j)custom-character, t=3|custom-character|+|custom-character|+1, . . . ,3|custom-character|+2|custom-character|;
    A.sub.t,[3(i1)+1:3i, 3(j1)+1:3j]=[(cos(.sub.ij)u.sub.ijk).sup.T, (cos(.sub.ij)u.sub.ijk).sup.T], b.sub.t=0, (i,j)custom-character, t=3|custom-character|+2|custom-character|+1, . . . ,3|custom-character|+3|custom-character|; with custom-character and custom-character denoting the tuple sets of all target/anchor and target/target edges respectively, and |*| representing the cardinality of a set. The solution to (15) is given as
    {circumflex over (x)}=(A.sup.TW.sup.TWA).sup.1)A.sup.TW.sup.Tb).

    4. A method for 3-D RSS/AoA-based network localization as in claim 2, when the transmitted power information, P.sub.T, is unknown, comprising the following steps: a. from d ^ ij = d 0 .Math. 10 P 0 - P ij 10 .Math. , where d.sub.0 (d.sub.0=d.sub.ij) is a reference distance, P.sub.0 is the reference RSS at distance d.sub.0, P.sub.ij denotes the RSS at distance d.sub.ij, is the path loss exponent (PLE), and d.sub.ij is the distance between sensors i and write
    .sub.ijx.sub.is.sub.jd.sub.0, (9)
    c.sub.ij.sup.T(x.sub.is.sub.j)0,(10a)
    i k.sup.T(x.sub.is.sub.j)x.sub.is.sub.jcos(.sub.ij),(10b) where x.sub.i=[x.sub.ix,x.sub.iy,x.sub.iz].sup.T and s.sub.j=[s.sub.jx,s.sub.jy,s.sub.jz].sup.T denote the coordinates of the i-th target and its j-th neighboring sensor, respectively, ij = 10 P ij 10 .Math. , = 10 P 0 10 .Math. , c.sub.ij=[sin(.sub.ij),cos(.sub.ij),0].sup.T, and k=[0,0,1].sup.T. b. next, apply the Cartesian to spherical coordinate conversion to (9) and (10b), and multiply with I (formed as u.sub.ij.sup.Tu.sub.ij), to respectively get:
    .sub.iju.sub.ij.sup.Tr.sub.iju.sub.ijd.sub.0.sub.iju.sub.ij.sup.T(x.sub.is.sub.j)d.sub.0,(11) and
    k.sup.Tr.sub.iju.sub.iju.sub.ij.sup.Tr.sub.iju.sub.ij cos (.sub.ij)(cos(.sub.ij)u.sub.ijk).sup.T(x.sub.is.sub.j)0;(12) c. to give more importance to nearby links, introduce weights, {tilde over (w)}=[{square root over ({tilde over (w)}.sub.ij )}], where each {tilde over (w)}.sub.ij is defined as w ~ ij = 1 - P ij .Math. ( i , j ) .Math. .Math. P ij ; ( 16 ) d. next, according to the weigthed least squares (WLS) criterion and (11), (10a), (12) and (16), obtain the following estimator: X ^ = argmin X - .Math. .Math. ( i , j ) .Math. .Math. w ~ ij ( ij .Math. u ij T ( x i - s j ) - .Math. .Math. d 0 ) 2 + .Math. ( i , j ) .Math. .Math. w ~ ij ( c ij T ( x i - s j ) ) 2 + .Math. ( i , j ) .Math. .Math. w ~ ij ( ( cos ( ij ) .Math. u ij - k ) T .Math. ( x i - s j ) ) 2 , ( 17 ) where denotes the tuple set of the all sensors within communication range, which can be writes as minimize y .Math. .Math. W ~ ( A ~ .Math. y - b ~ ) .Math. 2 , ( 18 ) where where y=[x.sub.1,x.sub.2, . . . ,x.sub.M,].sup.T, (ycustom-character.sup.(3M+1)1), {tilde over (W)}=l.sub.3.Math.diag({tilde over (w)}), with .Math. denoting the Kronecker product, and
    A.sub.t,[3(i1)+1:3i, 3M+1]=[.sub.iju.sub.ij.sup.T, d.sub.0], b.sub.t=.sub.iju.sub.ij.sup.T.sub.ij, (i,j)custom-character, t=1, . . . ,|custom-character|;
    A.sub.t,[3(i1)+1:3i, 3M+1]=[c.sub.ij.sup.T0], b.sub.t=c.sub.ij.sup.T.sub.ij, (i,j)custom-character, t=|custom-character|+1, . . . , 2|custom-character|;
    A.sub.t,[3(i1)+1:3i, 3M+1]=[(cos(.sub.ij)u.sub.ijk).sup.T, 0], b.sub.t=(cos(.sub.ij)u.sub.ijk).sup.T.sub.j, (i,j)custom-character, t=2|custom-character|+1, . . . ,3|custom-character|;
    A.sub.t,[3(i1)+1:3i, 3(j1)+1:3j, 3M+1]=[.sub.iju.sub.ij.sup.T, .sub.iju.sub.ij.sup.T, d.sub.0], b.sub.t=0, (i,j)custom-character, t=3|custom-character|+1, . . . ,3|custom-character|+|custom-character|;
    A.sub.t,[3(i1)+1:3i, 3(j1)+1:3j, 3M+1]=[c.sub.ij.sup.T, c.sub.ij.sup.T0], b.sub.t=0, (i,j)custom-character, t=3|custom-character|+|custom-character|+1, . . . ,3|custom-character|+2|custom-character|;
    A.sub.t,[3(i1)+1:3i, 3(j1)+1:3j, 3M+1]=[(cos(.sub.ij)u.sub.ijk).sup.T, (cos(.sub.ij)u.sub.ijk).sup.T, 0], b.sub.t=0, (i,j)custom-character, t=3|custom-character|+2|custom-character|+1, . . . ,3|custom-character|+3|custom-character|; with custom-character and custom-character denoting the tuple sets of all target/anchor and target/target edges respectively, and |*| representing the cardinality of a set. The solution of (18) is given as
    {tilde over (y)}=(.sup.T{tilde over (W)}.sup.T{tilde over (W)}).sup.1(.sup.T{tilde over (W)}.sup.T{tilde over (b)}).

    5. A method for 3-Dnetwork localization as in claims 2, 3 and 4, in which the computational complexity is always linear in the number of edges.

    Description

    BRIEF DESCRIPTION OF DRAWINGS

    [0069] Various aspects of embodiments disclosed here, including features and advantages of the present invention outlined above, are described in detail together with the drawings, where like reference numerals refer to like elements throughout, in which:

    [0070] FIG. 1 is a block diagram of the localization apparatus, where block 101 represents the j th sensor receiver that receives the signal sent from the i-th target. The receiver gives as output RSS measurements. Block 102 is the j-th sensor receiver that receives the signal sent from the i-th target and calculates the azimuth and the elevation angles, giving these values as the output. Note that any sensor can have multiple antennas or directional antennas for extracting AoA measurements, i.e., azimuth and elevation angles. Block 103 is a central node (fusion center), which gathers all RSS and AoA measurements acquired in the network and carries out all data processing. The block 104 represents the central node with the proposed estimator adapted to the case where the transmit power is not known;

    [0071] FIG. 2 shows the geometry of the problem, i.e., it depicts an anchor and a target locations in a 3-D space, where x.sub.i=[x.sub.ix,x.sub.iy,x.sub.iz].sup.T and .sub.j=[.sub.jx,.sub.jy,.sub.jz].sup.T represent the coordinates of the i-th target and the j-th anchor, respectively, while d.sub.ij, .sub.ij and .sub.ij denote respectively the distance, the azimuth angle and the elevation angle between the i-th target and the j-th anchor;

    [0072] FIG. 3 shows the normalized mean square error (NRMSE) versus N comparison, for the case where M=30 and R=4 m. The PLE was fixed to =2.5. However, to account for a realistic measurement model mismatch and test the robustness of the new algorithm to imperfect knowledge of the PLE, the true PLE was drawn from a uniform distribution on the interval [2.2, 2.8], i.e., .sub.icustom-character[2.2, 2.8], (i,j). All sensors were deployed randomly within a box with an edge length B=10 m, and the rest of the parameters were set as follows. L.sub.0=40 dB, d.sub.0=1 m, M.sub.c=50000. Finally, .sub.n.sub.ij=10 dB and .sub.ij=25.9, which corresponds to the circular standard deviation of .sub.m.sub.ij=.sub.v.sub.ij=.sub.ij=8 degrees, since .sub.ij.sup.2=1l.sub.1(.sub.ij)/l.sub.0(.sub.ij);

    [0073] FIG. 4 shows the NRMSE versus M comparison, for the case where N=7, R=5 m, =2.5, .sub.icustom-character[2.2, 2.8], (i,j), B=10 m, L.sub.0=40 dB, d.sub.0=1 m, M.sub.c=50000, .sub.n.sub.ij=10 dB, and .sub.ij=25.9;

    [0074] FIG. 5 shows the NRMSE versus R(m) comparison, for the case where N=5, M=20, =2.5, .sub.icustom-character[2.2, 2.8], (i,j), B=10 m, L.sub.0=40 dB, d.sub.0=1 m, M.sub.c=50000, .sub.n.sub.ij=10 dB, and Khd ij=25.9;

    [0075] FIG. 6 illustrates of the estimation process by using WLS algorithm in a single Monte Carlo run for N=8, M=20, R=8 (m), =2.5, .sub.icustom-character[2.2, 2.8], (i,j), B=10 m, L.sub.0=40 dB, d.sub.0=1 m, .sub.n.sub.ij=10 dB, and .sub.ij=25.9. The part (a) of the figure shows a particular network example, whereas the part (b) of the figure shows the estimation results for all targets in the network individually.

    DETAILED DESCRIPTION OF THE INVENTION

    [0076] The present application describes the apparatus and a method for network localization based on integrated RSS and AoA measurements in 3-D space. Let x.sub.icustom-character be the unknown location of the i-th target (i=1, . . . , M) and .sub.jcustom-character be the known location of the j-th anchor (j=1, . . . , N). As shown in FIG. 2. x.sub.i=[x.sub.ix,x.sub.iy,x.sup.iz].sup.T and .sub.j=[.sub.jx,.sub.jy,.sub.jz].sup.T represent the coordinates of the i-th target and the j-th anchor, respectively, while d.sub.ij, .sub.ij and .sub.ij denote respectively the distance, the azimuth angle and the elevation angle between the i-th target and the j-th anchor.

    [0077] The determination of the locations is done by using a hybrid system that combines distance and angle measurements obtained at the blocks 101 and 102 of FIG. 1, respectively. The combination of the two radio signal measurements provides more information for the user and is capable of enhancing estimation accuracy.

    [0078] It is assumed that the distance is drawn in 101 from the RSS information exclusively, since ranging based on RSS does not require additional hardware [1]. The noise-free RSS between two sensors i and j is defined as [32, Ch.3]

    [00014] P ij ( W ) = P T ( d 0 d ij ) .Math. 10 - L 0 10 , ( i , j ) .Math. ( 1 )

    where P.sub.T is the transmit power of the target,

    [00015] L 0 = 10 .Math. log 10 .Math. P T P 0

    is the path loss value measured at a short reference distance d.sub.0(d.sub.0d.sub.ij) and P.sub.0 is the received signal strength (RSS) at d.sub.0, is the path loss exponent (PLE), and d.sub.ij is the distance between sensors i and j. Furthermore, the tuple set ={(i,j):x.sub.is.sub.jR, for i=1, . . . ,N, j=1, . . . , M, M+1, . . . ,M+N, ij} denotes the existance of an edge between two sensors. The RSS model in (1) can be rewritten in a logarithmic form as

    [00016] P ij = P 0 - 10 .Math. .Math. .Math. .Math. log 10 .Math. .Math. x i - s j .Math. d 0 + n ij , ( i , j ) .Math. .Math. ( 2 )

    where s.sub.j is the j-th neighboring sensor (either a target or an anchor) of the i-th target and n.sub.ijcustom-character(0,.sub.n.sub.ij.sup.2) is the log-normal shadowing term modeled as zero-mean Gaussian random variable with variance .sub.n.sub.ij.sup.2. It is assumed that all sensors are static during the estimation process and there is no sensor and/or link failure, and all sensors may transmit their measurements to a central processor represented by the block 103 in FIG. 1.

    [0079] The AoA measurements acquired within the block 102 can be obtained by installing directional antenna or antenna array [15], or even video cameras [33]) at sensors. Thus, in 102, by applying simple geometry, azimuth and elevation angle measurements are modeled respectively as [5]:


    .sub.ij={circumflex over ()}.sub.ij+m.sub.ij, (i,j)(3a)


    .sub.ij={circumflex over ()}.sub.ij+b.sub.ij, (i,j)(3n)

    where

    [00017] ~ ij = tan - 1 ( x iy - s jy x ix - s jx ) , ~ ij = cos - 1 ( x iz - s jz .Math. x i - s j .Math. ) ,

    and m.sub.ij and v.sub.ij are the measurement errors of the azimuth and the elevation angles respectively, modeled as a zero-mean von Mises random variables with the concentration parameters, .sub.m.sub.ij, .sub.v.sub.ij[0,), i.e., m.sub.ijcustom-character(0,.sub.m.sub.ij) and v.sub.ijcustom-character(0,.sub.v.sub.ij). Without loss of generality, we assume that .sub.m.sub.ij=.sub.v.sub.ij=.sub.ij. The von Mises distribution is a circular analogue of the Gaussian one, and since we are dealing with directional data here, it comes more natural to consider this distribution rather than the Gaussian one [35], [36]. The mean direction and the concentration parameter can be related to the mean and variance in the Gaussian distribution [35], [36].

    [0080] For the sake of simplicity, we stack all unknown vectors into a single matrix, i.e., X=[x.sub.1, . . . , x.sub.M], (Xcustom-character.sup.3M). From (2), the conditional probability density function (PDF) of an RSS observation is given

    [00018] f ( P ij | X ) = 1 2 .Math. n ij 2 .Math. exp .Math. { - ( P ij - P 0 + 10 .Math. log 10 .Math. d ij d o ) 2 2 .Math. n ij 2 } . ( 4 )

    [0081] Similarly, from (3) we can write the conditional PDF of an azimuth and elevation observations as

    [00019] f ( ij | X ) = 1 2 .Math. .Math. .Math. I 0 ( ij ) .Math. exp .Math. { ij .Math. cos ( ij - ~ ij ) } , ( 5 .Math. a ) f ( ij | X ) = 1 2 .Math. .Math. .Math. I 0 ( ij ) .Math. exp .Math. { ij .Math. cos ( ij - ~ ij ) } , ( 5 .Math. b )

    where l.sub.k(*) is the modified Bessel function of first kind of order k [35], [36].

    [0082] By maximizing (4) and (5), a maximum likelihood (ML) estimator of X can be obtained [34, Ch. 7], i.e.,

    [00020] X ^ = argmin x .Math. .Math. ( i , j ) .Math. .Math. ( 1 n ij 2 .Math. ( P ij - P 0 + 10 .Math. log 10 .Math. .Math. x i - s j .Math. d 0 ) ) 2 + .Math. ( i , j ) .Math. .Math. ij .Math. cos ( ij - ~ ij ) + .Math. ( i , j ) .Math. .Math. ij .Math. cos ( ij - ~ ij ) . ( 6 )

    [0083] Although the ML solution is asymptotically optimal, the problem in (5) is highly non-convex with no closed-form solution. The 3-D localization method in wireless networks disclosed in this application is implemented in the block 104, and it aproximates (6) by another estimator whose solution is found efficiently, and it is comprises the following steps:

    [0084] First, from (4), the distance that best estimates x.sub.i.sub.j in the ML sense is:

    [00021] d ^ ij = d 0 .Math. 10 P 0 - P ij 10 .Math. . ( 7 )

    [0085] Similarly, from (5), the angles which best estimate .sub.ij and .sub.ij in the ML sense are respectively

    [00022] ~ ij = tan - 1 ( x iy - s jy x ix - s jx ) , ( 8 .Math. a ) ~ ij = cos - 1 ( x iz - s jz .Math. x i - s j .Math. ) , ( 8 .Math. b )

    since (5) is maximized when the cosines in the arguments are equal to 1, i.e., when {circumflex over ()}.sub.ij={circumflex over ()}.sub.ij and {circumflex over ()}.sub.ij={circumflex over ()}.sub.ij.

    [0086] From (7) and (8), we can respectively write


    .sub.ijx.sub.is.sub.jd.sub.0,(9)


    c.sub.ij.sup.T(x.sub.is.sub.j)0,(10a)


    k.sup.T(x.sub.is.sub.j)x.sub.is.sub.jcos(.sub.ij),(10b)

    where

    [00023] ij = 10 P ij 10 .Math. , = 10 P 0 10 .Math. ,

    c.sub.ij=[sin(.sub.ij), cos(.sub.ij),0].sup.T and k=[0,0,1].sup.T. If we switch from Cartesian to spherical coordinates, we can write x.sub.is.sub.j=r.sub.iju.sub.ij, with r.sub.ij0 and u.sub.ij=1, i.e., u.sub.ij=[cos(.sub.ij)sin(.sub.ij),sin(.sub.ij)sin(.sub.ij),cos(.sub.ij)].sup.T is the estimated unit vector.

    [0087] Apply the described conversion to (9) and (10b), and multiply with 1 (formed as u.sub.ij.sup.Tu.sub.ij), to respectively get:


    .sub.iju.sub.ij.sup.Tr.sub.ijU.sub.ijd.sub.0.sub.iju.sub.ij.sup.T(x.sub.is.sub.j)d.sub.0,(11)

    and


    k.sup.Tr.sub.iju.sub.iju.sub.ij.sup.Tr.sub.iju.sub.ijcos(.sub.ij)(cos(.sub.ij)u.sub.ijk).sup.T(x.sub.is.sub.j)0.(12)

    [0088] To give more importance to nearby links, introduce weights, w[{square root over (w.sub.ij)}], where each w.sub.ij is defined as

    [00024] w ij = 1 - d ^ ij .Math. ( i , j ) .Math. .Math. d ^ ij . ( 13 )

    [0089] Next, according to the WLS criterion and (11), (10a), (12) and (13), obtain the following estimator:

    [00025] X ^ = argmin X .Math. .Math. ( i , j ) .Math. .Math. w ij ( ij .Math. u ij T ( x i - s j ) - .Math. .Math. d 0 ) 2 + .Math. ( i , j ) .Math. .Math. w ij ( c ij T ( x i - s j ) ) 2 + .Math. ( i , j ) .Math. .Math. w ij ( ( cos ( ij ) .Math. u ij - k ) T .Math. ( x i - s j ) ) 2 , ( 14 )

    which can be writers as

    [00026] minimize x .Math. .Math. W ( Ax - b ) .Math. 2 , ( 15 )

    where x=[x.sub.1,x.sub.2, . . . ,x.sub.M].sup.T, (xcustom-character.sup.3M1), W=l.sub.3.Math.diag(w), with .Math. denoting the Kronecker product, and


    A.sub.t,3(i1)+1:3i=.sub.iju.sub.ij.sup.T, b.sub.t=.sub.iju.sub.ij.sup.T.sub.ij+d.sub.0, (i,j)custom-character, t=1, . . . ,|custom-character|;


    A.sub.t,3(i1)+1:3i=c.sub.ij.sup.T, b.sub.t=c.sub.ij.sup.T.sub.ij, (i,j)custom-character, t=|custom-character|+1, . . . , 2|custom-character|;


    A.sub.t,3(i1)+1:3i=(cos(.sub.ij)u.sub.ijk).sup.T, b.sub.t=(cos(.sub.ij)u.sub.ijk).sup.T.sub.j, (i,j)custom-character, t=2|custom-character|+1, . . . ,3|custom-character|;


    A.sub.t,[3(i1)+1:3i, 3(j1)+1:3j]=[c.sub.ij.sup.T,c.sub.ij.sup.T], b.sub.t=0, (i,j)custom-character, t=3|custom-character|+1, . . . ,3|custom-character|+|custom-character|;


    A.sub.t,[3(i1)+1:3i, 3(j1)+1:3j][c.sub.ij.sup.T,c.sub.ij.sup.T], b.sub.t=0, (i,j)custom-character, t=3|custom-character|+|custom-character|+1, . . . ,3|custom-character|+2|custom-character|;


    A.sub.t,[3(i1)+1:3i, 3(j1)+1:3j]=[(cos(.sub.ij)u.sub.ijk).sup.T, (cos(.sub.ij)u.sub.ijk).sup.T], b.sub.t=0, (i,j)custom-character, t=3|custom-character|+2|custom-character|+1, . . . ,3|custom-character|+3|custom-character|;

    with custom-character and custom-character denoting the tuple sets of all target/anchor and target/target edges respectively, and representing the cardinality of a set. The solution to (15) is given as


    {circumflex over (x)}=(A.sup.TW.sup.TWA).sup.1(A.sup.TW.sup.Tb).

    [0090] When the transmitted power information, P.sub.T, is not known, it translates to in (9) being unknown. In such a case, the derivation procedure is somewhat different, and it goes as follows.

    [0091] To give more importance to nearby links, introduce weights, =[{square root over ({tilde over (w)})}.sub.ij], where each {tilde over (w)}.sub.ij is defined as

    [00027] w ~ ij = 1 - P ij .Math. ( i , j ) .Math. .Math. P ij ; ( 16 )

    [0092] According to the WLS criterion and (11), (10a), (12) and (16), obtain the following estimator:

    [00028] X ^ = argmin X , .Math. .Math. ( i , j ) .Math. .Math. w ~ ij ( ij .Math. u ij T ( x i - s j ) - .Math. .Math. d 0 ) 2 + .Math. ( i , j ) .Math. .Math. w ~ ij ( c ij T ( x i - s j ) ) 2 + .Math. ( i , j ) .Math. .Math. w ~ ij ( ( cos ( ij ) .Math. u ij - k ) T .Math. ( x i - s j ) ) 2 , ( 17 )

    which can be writes as

    [00029] minimize y .Math. .Math. W ~ ( A ~ .Math. y - b ~ ) .Math. 2 , ( 18 )

    where y=[x.sub.1,x.sub.2, . . . ,x.sub.M,].sup.T, (ycustom-character.sup.(3M+1)1), {tilde over (W)}=l.sub.3.Math.diag({tilde over (w)}), and


    .sub.t=[A.sub.t, d.sub.0], {tilde over (b)}.sub.t=.sub.iju.sub.ij.sup.T.sub.ij, (i,j)custom-character, t=1, . . . , |custom-character|;


    .sub.t=[A.sub.t, 0], {tilde over (b)}.sub.t=c.sub.ij.sup.T.sub.ij, (i,j)custom-character, t=|custom-character|+1, . . . , 2|custom-character|;


    .sub.t=[A.sub.t, 0], {tilde over (b)}.sub.t=(cos(.sub.ij)u.sub.ijk).sup.T.sub.j, (i,j)custom-character, t=2|custom-character+1, . . . ,3|custom-character|;


    .sub.t=[A.sub.t, d.sub.0], {tilde over (b)}.sub.t=0, (i,j)custom-character, t=3|custom-character|+1, . . . , 3|custom-character|+|custom-character|;


    .sub.t=[A.sub.t, 0], {tilde over (b)}.sub.t=0, (i,j)custom-character, t=3|custom-character|+|custom-character|+1, . . . , 3|custom-character|+2|custom-character|;


    .sub.t=[A.sub.t, 0], {tilde over (b)}.sub.t=0, (i,j)custom-character, t=3|custom-character|+2|custom-character|+1, . . . , 3|custom-character|+3|custom-character|.

    The solution of (18) is given as


    {tilde over (y)}=(.sup.T{tilde over (W)}.sup.T{tilde over (W)}).sup.1(.sup.T{tilde over (W)}.sup.T{tilde over (b)}).

    [0093] Table 1 provides an overview of the considered algorithms together with their worst case computational complexities.

    TABLE-US-00001 TABLE 1 Summary of the Considered Algorithms Algorithm Descripton Complexity WLS The proposed WLS method for known P.sub.T [00030] ( MN + M ( M - 1 ) 2 ) WLS-U The proposed WLS method for unknown P.sub.T [00031] ( MN + M ( M - 1 ) 2 ) LLS The LLS method disclosed in [37] [00032] ( MN + M ( M - 1 ) 2 ) SDP The SDP method disclosed in [21] [00033] ( M 4.5 ( N + M 2 ) 2 )

    [0094] Table 1 shows that the computational complexity of the considered methods depends mainly on the network size, i.e., the total number of sensors in the network. This property is a characteristic of methods operating in a centralized manner [21], where all information is conveyed to a central processor. From Table 1, we can see that the computational complexity of the proposed method is linear.

    [0095] Performance of the proposed algorithm was verified through computer simulations. It was assumed that radio measurements were generated by using (2), (3) and (4). All sensors were deployed randomly inside a box with an edge length B=10 m in each Monte Carlo (M.sub.c) run. The reference distance is set to d.sub.0=1 m, the reference path loss to L.sub.0=40 dB, and the PLE was fixed to =2.5 . However, to account for a realistic measurement model mismatch and test the robustness of the new algorithm to imperfect knowledge of the PLE, the true PLE was drawn from a uniform distribution on the interval [2.2, 2.8], i.e., .sub.i[2.2, 2.8], (i,j). Finally, .sub.n.sub.ij=10 dB and .sub.ij=25.9, which corresponds to the circular standard deviation of .sub.m.sub.ij=.sub.v.sub.ij=.sub.ij=8 degrees, since .sub.ij.sup.2=1l.sub.1(.sub.ij)/l.sub.0(.sub.ij). The performance metric used here is the normalized root mean square error (NRMSE), defined as

    [00034] NRMSE = .Math. j = 1 M c .Math. .Math. i = 1 M .Math. .Math. x ij - x ^ ij .Math. 2 MM c ,

    where {circumflex over (x)}.sub.ij denotes the estimate of the true location of the i-th target, x.sub.ij, in the j-th M.sub.c run.

    [0096] The performance of the WLS estimator is compared to the existing SDP in [21] and LLS in [37] for RSS-AoA localization in cooperative WSNs. Furthermore, the results obtained by its counterpart that takes advantage of AoA-only observations, denoted by LS.sub.AOA, are included also in order to show the benefit of a hybrid approach in comparison to the classical one. Finally, the Cramer-Rao lower bound (CRLB) [34] is also included in all figures.

    [0097] FIGS. 3, 4 and 5 illustrate the NRMSE (m) versus N, M and R (m) comparison, respectively. One can see from these figures that all estimators exhibit natural behavior, and that the new estimator offers a significant gain over the remaining ones, especially for low quantities of the respective parameters, even when the transmit power is not known.

    [0098] FIG. 6 illustrates one particular output by WLS. It can be seen from the figure that the accuracy is very good in general, and that even the targets with no anchor neighbors (e.g., the two far-right top ones) can be localized fairly well.

    [0099] The above description of illustrated embodiments is not intended to be exhaustive or limited by the disclosure. Some specific embodiments of various equivalent modifications are possible (and examples are described herein for illustrative purposes), as those skilled in the relevant art will recognize.