# Patent

## Title
Channel-type supervised node positioning method for a wireless network

## Abstract

A method for positioning a collection of nodes within a wireless sensor network in which each node measures Respective Strength of Signals (RSSs), from its neighboring nodes, and channels linking regular nodes and its neighboring nodes are classified into different categories and are allocated path loss parameters accordingly. Distances separating each regular node from each of its neighboring nodes, and respective variances thereof, are estimated on the basis of the measured RSSs and the allocated path loss parameters. The positions of the regular nodes are then estimated by Weighted Least Square, optimization where the distances to be matched and the variances used for the weighting are those previously estimated.

## Background
TECHNICAL FIELD
The present application pertains to the field of wireless networks, more particularly to Wireless Sensor Networks (WSNs). It relates to a method for positioning nodes in such networks.
PRIOR ART
Wireless Sensor Networks (WSNs) can be applied to various areas such as military affairs, commerce, medical care, environment monitoring and have been a subject of intensive research over the last few years. In a wireless sensor network (WSN), data collected by the nodes (sensors) are typically collected and processed by one or more controlling nodes. In many applications (e.g. environment monitoring), processing of the data cannot be performed without knowing the respective positions of the nodes these data are collected from.
Many positioning algorithms have been proposed in the prior art to determine the location of nodes in a WSN. These algorithms generally assume that the position of certain nodes, also called anchor nodes or landmarks, have an a priori knowledge of their coordinates, e.g. by GPS positioning. The (absolute) positions of the other nodes, also called regular nodes, are then inferred from the positions of the anchor nodes.
Basically, positioning algorithms for WSNs fall into two categories: range-free and range-based.
Range-free positioning algorithms approximate the distances of the regular nodes to the anchor nodes on the basis of connectivity information. Representatives of range-free positioning algorithms are DV-Hop, amorphous, and centroid algorithms. For example a description of the DV-Hop algorithm can be found in the article of D. Niculescu et al. entitled “Ad Hoc positioning system” published in Proc. of Global Telecommunications Conference, 2001, GLOBECOM'01, San Antonio, Tex., USA, pp. 2926-2931. Basically, in DV-Hop each regular node determines its shortest path (in terms of number of hops) to a sufficient number of anchors. Similarly, each anchor node broadcasts its position and determines its shortest path (again, in terms of number of hops) to the remaining anchor nodes. Once an anchor node has determined its shortest paths to all the other anchor nodes, it calculates the average hop size as the ratio of distances and number of hops to all the other anchor nodes. Each regular node can then simply obtain a rough estimate of a distance to an anchor node by multiplying the number of hops to this node with the average hop size. Once the distances to three anchor nodes have been estimated, a coarse position of the node can be obtained by conventional trilateration.
Range-based positioning algorithms obtain point-to-point distance information between neighboring nodes and derive therefrom the location of the regular nodes. A range-based positioning algorithm, known as the WLS algorithm, is described in the article of M. Laaraiedh et al. entitled “Enhancing positioning accuracy through direct position estimators based on hybrid RSS data fusion” published in Proc. IEEE VTC'09, Spring Barcelona, Spain. According to this algorithm, the ranges between regular nodes and anchor nodes are estimated from received signal strength (RSS) observables. Once a regular node has measured a minimum number of observables, it may estimate the ranges to a plurality of anchor nodes. The coordinates of the regular node are determined as a weighted least square (WLS) solution of an over-determined set of equations, the weighting being determined by the covariance matrix of the range estimator considered, as further explained hereinafter.
FIG. 1 schematically illustrates a known wireless sensor network to which the node positioning method according to the invention can be applied.
The illustrated wireless sensor network comprises N nodes spatially distributed in a bi-dimensional area, including:
Na anchor nodes, 110, with known locations, one of them playing the role of a network coordinator (NC), sometimes also referred to as network controller, the other anchors being either fixed routers or simple end-devices with augmented capabilities (e.g. GPS-enabled nodes),
and Nr regular nodes, 120, to be positioned.
The lines 130 represent radio-links between neighboring nodes. Assuming that each node is capable of measuring the strengths of the signals transmitted by other nodes, the one-hop neighborhood of a node i is the set of nodes defined as:

H(i)={j|PRx,ij>Pth}  (1)

where PRx,ij denotes the strength of the signal received by node i from node j and Pth is the detection threshold of the receiver (supposed here to be identical for all the nodes). The nodes are indexed by i=1, . . . , N, where without loss of generality, the Na anchor nodes are assumed to bear the first indices i=1, . . . , Na and the regular nodes to bear the last indices i=Na+1, . . . , N (N=Na+Nr).

Next, the WLS node positioning algorithm will be briefly described.
It is recalled that the path loss over a radio link between two neighboring nodes i and j can be modeled as follows:

PL(d)=PL0+10α log10(d/d0)  (2)

where PL0=20 log10(4πfcd0/c) is the path loss experienced by the radio signal at a reference distance d0, d is the distance between the two nodes, fc is the carrier frequency of the radio signal, c is the speed of light, and α is the path loss decay exponent.

The path loss decay exponent basically depends upon the type of environment. For example α=2 for a line of sight (LOS) configuration in free space but has a higher value in obstructed environments.
Expression (2) is based on a simple exponential decay model of the power received through a radio link. The strength of the received signal actually varies according to a zero-mean Gaussian variable accounting for shadowing. Shadowing is a fluctuation of the attenuation due to the presence of obstacles between the transmitter and the receiver. More specifically, shadowing encompasses absorption, reflection, scattering and diffraction by these obstacles.
The strength of the signal received by a node from a neighboring one can be expressed as:

PRx(d)=PTx+GTx+GRx−PL(d)+z  (3)

where z is the above-mentioned Gaussian variable having a variance σz2. The variance σz2, also called the shadowing coefficient, depends on the type of environment in which the network is located. PRx(d) is the strength of the received signal at the distance d, PTx is the power of transmitted signal (expressed e.g. in dBm), GTx and GRx are respectively the antenna gains of the transmitter and the receiver (expressed in dBi).

Expression (3) can equivalently be reformulated as:

PRx(d)=PRx(d)+z  (4)

where PRx(d) is the mean value of the received signal strength.

For a given received signal strength PRx,ij measured by the receiver of node i, the distance dij between the nodes i and j can be estimated from (3), e.g. by the median estimator:

{tilde over (d)}ij=exp(Mij)  (5)

with





  
    M
    ij
  
  =
  
    
      
        
          (
          
            
              [
              
                
                  P
                  Tx
                
                +
                
                  G
                  Rx
                
                +
                
                  G
                  Tx
                
                -
                
                  P
                  
                    Rx
                    ,
                    ij
                  
                
              
              ]
            
            -
            
              PL
              0
            
          
          )
        
        ⁢
        
          log
          ⁡
          
            (
            10
            )
          
        
      
      
        10
        ⁢
        
          
        
        ⁢
        
          α
          ij
        
      
    
    +
    
      log
      ⁡
      
        (
        
          d
          0
        
        )
      
    
  




and where the distance estimate {tilde over (d)} and the path loss decay coefficient α have been indexed here by i,j in order to emphasize their dependence upon the link considered.

In a centralized algorithmic embodiment, once all the distances between neighboring nodes have been estimated, the coordinates of the regular nodes may be obtained through WLS optimization. More specifically, if we denote X=(xNα+1, . . . xN) and Y=(yNα+1, . . . , yN) respectively the abscissas and the ordinates of the regular nodes, the coordinates of these nodes can be estimated by minimizing the quadratic cost function:




  
    
      
        
          (
          
            
              
                X
                ^
              
              WLS
            
            ,
            
              
                Y
                ^
              
              WLS
            
          
          )
        
        =
        
          
            argmin
            
              (
              
                
                  X
                  ^
                
                ,
                
                  Y
                  ^
                
              
              )
            
          
          [
          
            
              ∑
              
                i
                =
                
                  
                    N
                    a
                  
                  +
                  1
                
              
              N
            
            ⁢
            
              
            
            ⁢
            
              
                ∑
                
                  
                    j
                    ∈
                    
                      H
                      ⁡
                      
                        (
                        i
                        )
                      
                    
                  
                  
                    j
                    >
                    i
                  
                
              
              ⁢
              
                
              
              ⁢
              
                
                  1
                  
                    σ
                    
                      d
                      ,
                      ij
                    
                    2
                  
                
                ⁢
                
                  
                    (
                    
                      
                        
                          d
                          ^
                        
                        ij
                      
                      -
                      
                        
                          d
                          ~
                        
                        ij
                      
                    
                    )
                  
                  2
                
              
            
          
          ]
        
      
    
    
      
        (
        6
        )
      
    
  




where {circumflex over (d)}ij=√{square root over (({circumflex over (x)}i−{circumflex over (x)}j)2+(ŷi−ŷj)2)} and σd,ij2 is the variance of the estimator of distance dij. Equivalently, the WLS optimization can be carried out as follows:





  
    
      
        
          (
          
            
              
                X
                ^
              
              WLS
            
            ,
            
              
                Y
                ^
              
              WLS
            
          
          )
        
        =
        
          
            argmin
            
              (
              
                
                  X
                  ^
                
                ,
                
                  Y
                  ^
                
              
              )
            
          
          [
          
            
              ∑
              
                i
                =
                1
              
              N
            
            ⁢
            
              
            
            ⁢
            
              
                
                  ∑
                  
                    j
                    =
                    1
                  
                
                N
              
              ⁢
              
                
              
              ⁢
              
                
                  
                    I
                    ij
                  
                  
                    σ
                    
                      d
                      ,
                      ij
                    
                    2
                  
                
                ⁢
                
                  
                    (
                    
                      
                        
                          d
                          ^
                        
                        ij
                      
                      -
                      
                        
                          d
                          ~
                        
                        ij
                      
                    
                    )
                  
                  2
                
              
            
          
          ]
        
      
    
    
      
        (
        7
        )
      
    
  




where Iij are the elements of the network adjacency matrix defined as Iij=1 if jεH(i), and Iij=0 otherwise. It will be understood that the weighting performed in the WLS algorithm refers to variance terms σd,ij2 in expressions (6) and (7): the largest the variance and, hence, the uncertainty of the distance estimate, the lower the weight of the corresponding quadratic error ({tilde over (d)}ij−{tilde over (d)}ij)2 in the cost function.

Assuming that the receiver of each node is ideal Pth=−∞ expressed in dB) and that the above-mentioned median estimator is used, it can be shown that the variance σd,ij2 of the distance dij depends upon the shadowing coefficient σz1 as follows:

σd,ij2=dij2eSij2(eSij2−1)  (8)

with





  
    S
    ij
  
  =
  
    
      
        σ
        
          z
          ,
          ij
        
      
      ⁢
      ln
      ⁢
      
        
      
      ⁢
      10
    
    
      10
      ⁢
      
        α
        ij
      
    
  




where σz,ij is the shadowing coefficient of the channel between nodes i and j.

Under the same assumption as above, in typical operating conditions, the bias of the median estimator is negligible and the actual distance dij in (8) can be replaced by its estimate {tilde over (d)}ij to get an approximate value {circumflex over (σ)}d,ij2 of σd,ij2.
The conventional WLS positioning algorithm suffers from several severe limitations.
First, this algorithm assumes that the path loss decay exponents αij and the variance terms σd,ij2 are available a priori. However, this condition is rarely met in practice as the environment and the channel configuration are often unknown or may change as a function of time. Furthermore, the nodes can be mobile and, in such instance, the terms αij and σd,ij2 may vary due to a change of environment and/or channel configuration.
Second, the receivers have in practice a limited sensitivity (i.e. a finite detection threshold if Pth is labeled in dBm). The probability density function of the received signal strength PRx expression (3) is not a Gaussian distribution anymore but is truncated below the detection threshold Pth. This truncation leads in turn to a so-called “distortion” of the probability density function of the estimation errors {tilde over (d)}ij−dij in comparison with the standard Gaussian centered case.
FIG. 2A represents the probability density functions of the received signal strength (RSS), PRx, respectively measured by an ideal receiver and a non-ideal receiver having a detection threshold Pth.
It will be noted that the probability density function of the received signal strength for the ideal receiver is represented by a Gaussian curve (210) whereas the one for the non-ideal receiver (220) has a similar shape but truncated below Pth. Strictly speaking, curve (220) represents a conditional probability density function (probability of the received signal strength conditioned on true detection of the signal). For the sake of understanding and for facilitating the comparison with the ideal case, the conditional probability density has not been normalized.
FIG. 2B represents the probability density functions of the estimation ranging error {tilde over (d)}−d (the indices referring to the nodes are omitted for the sake of simplification) for an ideal receiver (230) and a non-ideal receiver (240). As above, the probability should be understood as conditioned by true detection of the signal. The normalization has also been omitted for the sake of comparison.
While the probability density function 230 is substantially Gaussian and centered, the probability density function 240 is not centered anymore. In the latter case, distance estimation is affected by a systematic bias μd=E({tilde over (d)}−d)≠0 where E(·) is the mathematical expectation. Similarly, variance σd2 can no longer be obtained from expression (8) for the purpose of the WLS optimization (7).
The problem underlying the invention is therefore to propose a node positioning algorithm for a WSN network which does not require knowledge of the environment and the channel configurations and which is nevertheless accurate.
A subsidiary problem is to propose a node positioning algorithm that further allows for the use of real receivers with limited power sensitivity.
DISCLOSURE OF THE INVENTION
The present invention is defined in the appended independent claims. Various advantageous embodiments are given in the dependent claims.



BRIEF DESCRIPTION OF THE DRAWINGS
The present invention will be better understood from the description of the following embodiments, by way of illustration and in no way limitative thereto:
FIG. 1 schematically illustrates a wireless sensor network having anchor nodes and regular nodes;
FIG. 2A schematically represents the probability distributions of the received signal strength for an ideal and a non-ideal receiver;
FIG. 2B schematically represents the probability distributions of the distance estimate error for an ideal and a non-ideal receiver;
FIG. 3 schematically illustrates a method of node positioning for a wireless network according to a first embodiment of the invention;
FIG. 4 schematically illustrates a method of node positioning for a wireless network, according to a variant of this embodiment;
FIG. 5 schematically illustrates a method of node positioning for a wireless network, according to a second embodiment of the invention;
FIG. 6 schematically illustrates a method of node positioning for a wireless network, according to a third embodiment of the invention.



DETAILED DISCLOSURE OF PARTICULAR EMBODIMENTS
We will consider in the following a wireless network, for example a WSN network comprising anchor nodes (the respective positions of which are known) and regular nodes (the respective positions of which have to be determined). For example, the WSN network may comply with the IEEE 802.15.4 standard.
Each regular node is equipped with a receiver having a limited sensitivity. Without prejudice of generalization, we will assume in the following that all the receivers have the same RSS detection threshold Pth.
The idea at the basis of the invention is to propose a node positioning algorithm which is supervised by a channel configuration classifier. By channel configuration we mean here inter alia line-of-sight (LOS) or non line-of-sight (NLOS). A further channel configuration denoted NLOS2 can also be envisaged, it refers to a NLOS situation where the propagation channel exhibits severe attenuation (deep fade) due to an obstruction.
FIG. 3 diagrammatically represents a node positioning algorithm according to a first embodiment of the invention.
The node positioning algorithm is performed after the network discovery has been completed. Preferably, the nodes are grouped into clusters and the node positioning algorithm is carried out individually on each cluster. Without loss of generality, we will assume in the following that the network contains only one cluster.
At step 310, each regular node i of the network measures the respective received signal strengths (RSSs) of the signals it respectively receives from its neighbors j.
At step 320, the propagation channels linking neighboring nodes are classified into different channel categories. For example, the channels can be classified into line of sight (LOS) and non line of sight (NLOS) categories as explained further below. Preferably, the channels are classified into three categories: LOS, NLOS and NLOS2 as defined above. Additional categories may be envisaged without departing from the scope of the present invention.
At step 330, each channel Cij between neighboring nodes i and j is allocated a path loss decay exponent αij, a path loss reference PL0,ij and a shadowing coefficient σz,ij2, according to the category the channel belongs to. It will be understood that the path loss law according to (3) is then completely defined, provided the reference distance d0 is known. In some instances, the reference distance d0 may depend upon the category of the channel, the reference distances are then denoted d0,LOS, d0,NLOS, and d0,NLOS2.
If channel Cij has been classified as LOS, αij=αLOS, PL0,ij=PL0,LOS and σz,ij2=σLOS2. Conversely, if channel Cij has been classified as NLOS, αij=αNLOS, PL0,ij=PL0,NLOS and σz,ij2=σNLOS2. The same applies mutatis mutandis to NLOS2. The parameters αLOS, αNLOS, αNLOS2, PL0,LOS, PL0,NLOS, PL0,NLOS2, σLOS2, σNLOS2, σNLOS22 are determined a priori by a channel model in 335. This model can depend upon the type of environment (e.g. urban, rural) in which the network is located.
At step 340, distance estimates {tilde over (d)}ij are calculated from the received signal strengths measured at step 310 and the path loss decay exponents obtained at step 330.
More specifically, the estimate {tilde over (d)}ij of the distance between nodes i and j is given by expression (5), that is:

{tilde over (d)}ij=exp(Mij) where





  
    
      
        
          M
          ij
        
        =
        
          
            
              
                (
                
                  
                    [
                    
                      
                        P
                        Tx
                      
                      +
                      
                        G
                        Rx
                      
                      +
                      
                        G
                        Tx
                      
                      -
                      
                        P
                        
                          Rx
                          ,
                          ij
                        
                      
                    
                    ]
                  
                  -
                  
                    PL
                    
                      0
                      ,
                      ij
                    
                  
                
                )
              
              ⁢
              
                log
                ⁡
                
                  (
                  10
                  )
                
              
            
            
              10
              ⁢
              
                
              
              ⁢
              
                α
                ij
              
            
          
          +
          
            log
            ⁡
            
              (
              
                d
                
                  0
                  ,
                  ij
                
              
              )
            
          
        
      
    
    
      
        (
        9
        )
      
    
  




with PRx,ij is the RSS of the signal received by node i from node j, PL0,ij is the path loss data at reference distance d0,ij (indexation by ij accounts here for the case where different reference distances are chosen for different channel categories e.g. d0,ij=d0,LOS, or d0,ij=d0,NLOS2), αij=αLOS, αij=αNLOS or αij=αNLOS2 depending on the category of the channel.

For each channel, the variance of the distance estimator is obtained by the approximation:

{tilde over (σ)}d,ij2=[{tilde over (d)}ij2exp(Sij2)(eSij2−1)]  (10)

where





  
    S
    ij
  
  =
  
    
      
        
          σ
          
            z
            ,
            ij
          
        
        ⁢
        ln
        ⁢
        
          
        
        ⁢
        10
      
      
        10
        ⁢
        
          α
          ij
        
      
    
    .
  




At step 350, the positions of the regular nodes are estimated by minimizing the weighted quadratic cost function:




  
    
      
        
          (
          
            
              
                X
                ^
              
              WLS
            
            ,
            
              
                Y
                ^
              
              WLS
            
          
          )
        
        =
        
          
            argmin
            
              (
              
                
                  X
                  ^
                
                ,
                
                  Y
                  ^
                
              
              )
            
          
          [
          
            
              ∑
              
                i
                =
                1
              
              N
            
            ⁢
            
              
            
            ⁢
            
              
                
                  ∑
                  
                    j
                    =
                    1
                  
                
                N
              
              ⁢
              
                
              
              ⁢
              
                
                  
                    I
                    ij
                  
                  
                    
                      σ
                      ~
                    
                    
                      d
                      ,
                      ij
                    
                    2
                  
                
                ⁢
                
                  
                    (
                    
                      
                        
                          d
                          ^
                        
                        ij
                      
                      -
                      
                        
                          d
                          ~
                        
                        ij
                      
                    
                    )
                  
                  2
                
              
            
          
          ]
        
      
    
    
      
        (
        11
        )
      
    
  




where {circumflex over (X)}=[{circumflex over (x)}Nα+1 . . . {circumflex over (x)}i . . . {circumflex over (x)}N], Ŷ=[ŷNα+1 . . . ŷi . . . ŷN] and {circumflex over (d)}ij=√{square root over (({circumflex over (x)}i−{circumflex over (x)}j)2+(ŷi−ŷj)2)}.

It should be understood that only the terms ({circumflex over (d)}ij−{tilde over (d)}ij)2 for which Iij=1 need to be calculated in (11), that is only the terms for which at least node i or node j is a regular node and PRx,ij>Pth. Where one of these nodes is an anchor node, its coordinates {circumflex over (x)}i, ŷi are those which are known.
The WLS solution ({circumflex over (X)}WLS,ŶWLS) gives estimates of the abscissas [{circumflex over (x)}Nα+1WLS, . . . , {circumflex over (x)}NWLS] and ordinates [ŷNα+1WLS, . . . , ŷNWLS] of the regular nodes.
Minimization of quadratic cost function (11) can be achieved in various ways e.g. by using the algorithm of steepest descent. This algorithm can be initialized by an initial guess of the coordinates of the regular nodes. Advantageously, a range-free node positioning method such as the DV-hop referred to above may provide this initial guess.
The node positioning algorithm described above can be carried out, at least partially, in a centralized way, at the network coordinator. In such instance, the RSS measurements PRx,ij or, preferably, the distance estimates {tilde over (d)}ij are forwarded to the network controller in charge of the WLS optimization. According to a variant, the network coordinator can collect the RSS measurements or the distance estimates and forward them to a calculation node.
Channel classification in 320 can be obtained in various ways.
For example, the channel classification can be based on the statistical properties of the power envelope of the received signal.
For a LOS path, the power envelope exhibits a Ricean distribution whereas for a NLOS path, the power envelope exhibits a Rayleigh distribution. The fit to one distribution or the other can be determined e.g. by using a Kolgomorov-Smirnov test.
Alternately, LOS/NLOS discrimination can be based on the crossing rate of the power envelope (i.e. the rate at which the power envelope crosses a predetermined level) and/or the average fade duration (i.e. how long the power envelope remains below a predetermined level).
A detailed description of the above-mentioned channel classification methods can be found in the article of S. Al-Jazzar et al. entitled “New algorithms for NLOS identification”, published in IST Mobile and Wireless Comm. Summit, Dresden, 2005, incorporated herein by reference.
According to another variant, the channel classification can be based on the statistics of the strength of the received signal (RSS). A detailed description of the two channel classification methods can be found in the article of K. Yu et al. entitled “Statistical NLOS identification based on AOA, TOA and signal strength” published in IEEE Trans. on Vehicular Technology, vol. 58, No. 1, January 2009, pp. 274-286, incorporated herein by reference.
According to a preferred variant illustrated in FIG. 4, the channel classification is obtained by exploiting the WLS optimization residuals.
In FIG. 4, steps 410, 430 to 450 are identical to steps 310, 330 to 350 of FIG. 3 and their description will therefore not be repeated here.
However, by contrast with the first variant, channel classifier 420 systematically classifies the channels into the LOS category in a first attempt. In other words all Cij are initially assumed to be LOS in a first run.
Once the positions of the regular nodes have been estimated in 450, the WLS optimization residuals, |{circumflex over (d)}ijWLS−{tilde over (d)}ij| (or ({circumflex over (d)}ijWLS−{tilde over (d)}ij)2) are calculated in step 460, where:

{circumflex over (d)}ijWLS=√{square root over (({circumflex over (x)}iWLS−{circumflex over (x)}jWLS)2+(ŷiWLS−ŷjWLS)2)}  (12)

is a refined estimate of the distance separating nodes i and j based on WLS optimization of the positions of the nodes. Again, if i or j is an anchor node its actual coordinates are used instead of estimates in (12) for the calculation of the WLS optimization residual.

It should be understood that only the optimization residuals contributing to the cost function are actually calculated (those for which adjacency matrix element Iij≠0, i.e. those involving at least one regular node with PRx,ij>Pth).
These optimization residuals are provided to the channel classifier at step 420 which, in a second run, classifies the channels as follows:
If |{circumflex over (d)}ijWLS−{tilde over (d)}ij|≦δ, where δ is a predetermined error margin, the first guess (LOS category) is confirmed, Cij is classified as LOS.
Else, the first guess is infirmed and Cij is classified as NLOS.
In practice, a value of δ=0.25 m has been found acceptable for IEEE 802.15.4-compliant networks in a typical 50 m*50 m scene.
Preferably, channels classified as NLOS are ranked according to their optimization residuals and a predetermined part of these channels are promoted to category NLOS2. More specifically, a predetermined percentage of the NLOS channels exhibiting the highest optimization residuals are considered as NLOS2. Alternately, the channels for which the first guess was erroneous beyond a second error margin, i.e. |{circumflex over (d)}ijWLS−{tilde over (d)}ij|>Δ, where Δ>δ, are considered as NLOS2. In practice a value of Δ=0.5 m has been found acceptable in the scenario mentioned above.
At any rate, steps 430, 440 and 450 are carried out once again with the updated channel classification. Step 450 outputs refined estimates of the positions of the regular nodes, denoted {circumflex over (X)}(2)WLS and Ŷ(2)WLS.
It will be understood that the cooperative process of channel classification, path-loss based distance estimation and WLS optimization can be iterated. More precisely, channel classification will benefit from a more accurate positioning and the WLS optimization will conversely benefit from a more accurate channel classification. The process is iterated until a stopping criterion is met. The stopping criterion can be based for example on a distance between consecutive position estimates such as:

∥{circumflex over (X)}(n)WLS−{circumflex over (X)}(n-1)WLS∥+∥Ŷ(n)WLS−Ŷ(n-1)WLS∥<ε  (13)

where ε is a predetermined positive number and n the latest iteration step. Alternately or subsidiarily, the iteration process can be stopped when a predetermined number of iterations is reached.

As already indicated above, the channel classifier of the preferred variant initially assumes that all channels are LOS. Alternately however, if a channel classification is available, e.g. as provided by one of the classification methods set out above (based on the statistics of the power envelope or RSSI measurements) the channel classifier may start from this available classification. If the initial guess proves to be erroneous for a given channel (e.g. optimization residual greater than δ when the channel was classified as LOS), the channel may then be tentatively classified in another category.
Again, the node positioning algorithm described above can be carried out, at least partially, in a centralized way, at the network coordinator. In such instance, the RSS measurements PRx,ij or, preferably, the distance estimates {tilde over (d)}ij are forwarded to the network controller in charge of the WLS optimization. According to a variant, the network coordinator can collect the RSS measurements or the distance estimates and forward them to a calculation node.
FIG. 5 illustrates a node positioning algorithm according to a second embodiment of the invention.
It is assumed in this embodiment that the channels are classified according to the statistics of their CIRs as in the first variant described above, or that the channel classification is provided by a distinct and independent classifier.
Contrary to the first embodiment in which path loss parameters αLOS, αNLOS, αNLOS2, PL0,LOS, PL0,NLOS2, σLOS2, σNLOS2, σNLOS22 were assumed to be known a priori from the channel model, the present embodiment performs a blind estimation of at least some of these parameters, as explained hereinafter.
Steps 510, 520, 540, 550 are identical to steps 310, 320, 340, 340, and therefore their description will be omitted.
At step 530, the path loss parameters of LOS, NLOS and NLOS2 are initialized at predetermined values.
The distances estimates, {tilde over (d)}ij, are then first calculated in step 540 on basis of these initial values.
After the positions of the regular nodes have been estimated in 550, refined estimates of the distances between the regular nodes, {circumflex over (d)}ijWLS, are calculated in step 560 according to expression (12).
The path loss parameters are then estimated in 570 on the basis of the refined distance estimates. More specifically, the channels are clustered into groups of LOS, NLOS and NLOS2 channels and, for each group, a set of equations according to (3) is solved. For example, for the group of LOS channels, αLOS, PL0,LOS can be estimated by solving:

PLij=0,LOS=10{circumflex over (α)}LOS log10({circumflex over (d)}ijWLS/d0,LOS)  (14)

where path loss PLij is determined from PRx,ij according to expression (3), 0,LOS and {circumflex over (α)}LOS are respectively the path loss reference and the exponent decay coefficient estimates of a LOS channel. It has been assumed in (14) that the reference distance d0,LOS was known. In practice, it may also be estimated together with αLOS, PL0,LOS by solving the set of equations (14) for the LOS channels.

The set of equations (14) (or similar sets of equations for NLOS and NLOS2) are generally over-determined and hence can be solved via LS optimization. If needed, an estimation of the shadowing coefficient σLOS2, denoted {circumflex over (σ)}LOS2, can be obtained from the estimation errors on PLLOS fitting. The same applies also to NLOS and NLOS2.
The path loss parameters estimated in 570 can be used for a second distance estimation in 540 and node positioning in 550. In fact, the cooperative process of node positioning and path loss parameters estimation can be iterated: a more accurate positioning leads to more accurate parameters, and vice versa.
The process is iterated until a predetermined stopping criterion is met. In addition to stopping condition (12) a further condition on consecutive estimates of the path loss parameters can be envisaged such as:

|(n)−(n-1)∥<η  (15)

where (n) represents an estimate of any of the PL parameters above obtained at the nth iteration and η is a predetermined positive number.

FIG. 6 illustrates a node positioning algorithm according to a third embodiment of the invention.
The third embodiment differs from the first in that the effects of sensitivity limitation of the receivers are now taken into account.
More specifically, steps 610 to 640 are identical to steps 310 to 340, respectively.
At step 645, however, the systematic biases on the distance estimates and the change of the distance variance terms, induced by the sensitivity limitation, are corrected.
Assuming the median estimator is used, it is recalled (see expression (5)) that, for a perfect receiver with infinite sensitivity (i.e. infinite detection threshold in dBm), the distance d can be estimated from received signal strength PRx:

{tilde over (d)}=exp(M) where





  M
  =
  
    
      
        
          (
          
            
              [
              
                
                  P
                  Tx
                
                +
                
                  G
                  Rx
                
                +
                
                  G
                  Tx
                
                -
                
                  P
                  Rx
                
              
              ]
            
            -
            
              PL
              0
            
          
          )
        
        ⁢
        
          log
          ⁡
          
            (
            10
            )
          
        
      
      
        10
        ⁢
        
          
        
        ⁢
        α
      
    
    +
    
      log
      ⁡
      
        (
        
          d
          0
        
        )
      
    
  




For a real receiver having finite detection threshold Pth, only the detected received power below this threshold can be taken into account into the further ranging and positioning calculi. Hence, the shape of the (conditional i.e. conditioned on a detection) probability density function of the RSS can be considered as truncated in comparison with the one of an ideal receiver with an infinite threshold (Pth=−∞ in dBm). The median distance estimator is consequently affected by a bias μd=Ez({tilde over (d)}−d) where the expectation is taken over the distribution of random variable z (see expression (4)). This bias can be calculated from threshold value Pth as follows:




  
    
      
        
          μ
          d
        
        =
        
          d
          ⁡
          
            [
            
              
                
                  1
                  
                    2
                    ⁢
                    
                      
                        2
                        ⁢
                        
                          
                        
                        ⁢
                        A
                      
                    
                    ⁢
                    
                      σ
                      z
                    
                    ⁢
                    
                      Pr
                      det
                    
                  
                
                ⁢
                
                  exp
                  ⁡
                  
                    (
                    
                      
                        
                          B
                          2
                        
                        -
                        
                          4
                          ⁢
                          
                            
                          
                          ⁢
                          AC
                        
                      
                      
                        4
                        ⁢
                        
                          
                        
                        ⁢
                        A
                      
                    
                    )
                  
                
                ⁢
                
                  erfc
                  ⁡
                  
                    (
                    
                      B
                      
                        2
                        ⁢
                        
                          A
                        
                      
                    
                    )
                  
                
              
              -
              1
            
            ]
          
        
      
    
    
      
        (
        16
        )
      
    
  




With




  
    
      A
      =
      
        1
        
          2
          ⁢
          
            σ
            z
            2
          
        
      
    
    ,
    
      
    
    ⁢
    
      B
      =
      
        
          
            ln
            ⁡
            
              (
              10
              )
            
          
          
            10
            ⁢
            α
          
        
        +
        
          
            
              P
              th
            
            -
            
              
                P
                _
              
              Rx
            
          
          
            σ
            z
            2
          
        
      
    
    ,
    and
  




  
    
      C
      =
      
        
          (
          
            
              P
              th
            
            -
            
              
                P
                _
              
              Rx
            
          
          )
        
        ⁢
        
          (
          
            
              
                ln
                ⁡
                
                  (
                  10
                  )
                
              
              
                10
                ⁢
                α
              
            
            +
            
              
                
                  P
                  th
                
                -
                
                  
                    P
                    _
                  
                  Rx
                
              
              
                σ
                z
                2
              
            
          
          )
        
      
    
    ,
  



and Prdet is the detection rate of the received signal:





  
    
      
        
          Pr
          det
        
        =
        
          
            
              ∫
              
                P
                th
              
              
                +
                ∞
              
            
            ⁢
            
              
                pdf
                ⁡
                
                  (
                  
                    P
                    Rx
                  
                  )
                
              
              ⁢
              
                
              
              ⁢
              d
              ⁢
              
                
              
              ⁢
              
                P
                Rx
              
            
          
          =
          
            
              1
              2
            
            ⁢
            
              erfc
              ⁡
              
                (
                
                  
                    
                      P
                      th
                    
                    -
                    
                      
                        P
                        _
                      
                      Rx
                    
                  
                  
                    
                      2
                      ⁢
                      
                        σ
                        z
                      
                    
                  
                
                )
              
            
          
        
      
    
    
      
        (
        17
        )
      
    
  




where PRx the mean received signal strength and erfc(•) is the Gauss error function.

Similarly, due to the sensitivity limitation, the variance of the distance estimator cannot be obtained from expression (8) anymore. Starting from the definition σd2=Ez[({tilde over (d)}−d)2]−μd2 where the expectation is taken over the distribution of random variable z, it can be shown that this variance can be expressed as:




  
    
      
        
          σ
          d
          2
        
        =
        
          
            
              d
              2
            
            ⁡
            
              [
              
                
                  
                    1
                    
                      2
                      ⁢
                      
                        
                          2
                          ⁢
                          
                            A
                            ′
                          
                        
                      
                      ⁢
                      
                        σ
                        z
                      
                      ⁢
                      
                        Pr
                        det
                      
                    
                  
                  ⁢
                  
                    exp
                    ⁡
                    
                      (
                      
                        
                          
                            B
                            ′2
                          
                          -
                          
                            4
                            ⁢
                            
                              
                            
                            ⁢
                            
                              A
                              ′
                            
                            ⁢
                            
                              C
                              ′
                            
                          
                        
                        
                          4
                          ⁢
                          
                            
                          
                          ⁢
                          
                            A
                            ′
                          
                        
                      
                      )
                    
                  
                  ⁢
                  
                    erfc
                    ⁡
                    
                      (
                      
                        
                          B
                          ′
                        
                        
                          2
                          ⁢
                          
                            
                              A
                              ′
                            
                          
                        
                      
                      )
                    
                  
                
                -
                
                  2
                  ⁢
                  
                    (
                    
                      
                        μ
                        d
                      
                      d
                    
                    )
                  
                
                -
                1
              
              ]
            
          
          -
          
            μ
            d
            2
          
        
      
    
    
      
        (
        18
        )
      
    
  




with A′=A,





  
    
      B
      ′
    
    =
    
      
        
          ln
          ⁡
          
            (
            10
            )
          
        
        
          5
          ⁢
          α
        
      
      +
      
        
          
            P
            th
          
          -
          
            
              P
              _
            
            Rx
          
        
        
          σ
          z
          2
        
      
    
  
  ,
  
    
      C
      ′
    
    =
    
      
        (
        
          
            P
            th
          
          -
          
            
              P
              _
            
            Rx
          
        
        )
      
      ⁢
      
        (
        
          
            
              ln
              ⁡
              
                (
                10
                )
              
            
            
              5
              ⁢
              α
            
          
          +
          
            
              
                P
                th
              
              -
              
                
                  P
                  _
                
                Rx
              
            
            
              2
              ⁢
              
                σ
                z
                2
              
            
          
        
        )
      
    
  




It should be noted that expressions (16) and (17) are parametric functions of distance d. These parametric functions can be pre-computed for various values of d and the results stored in a look-up table.
Turning back to step 645, the distance estimates {tilde over (d)}ij obtained at step 640 are corrected as follows:

{tilde over (d)}ijcorr={tilde over (d)}ij−{circumflex over (μ)}d,ij  (19)

where {tilde over (d)}ijcorr denotes the corrected estimate of the distance between nodes i and j and where {circumflex over (μ)}d,ij is obtained from equation (16) by using the distance estimate d={tilde over (d)}ij.

Similarly, the corrected distance variance terms, ({tilde over (σ)}d,ijcorr)2 can be calculated from expression (18) by using the distance estimate d={tilde over (d)}ij. According to a variant, the corrected distance {tilde over (d)}ijcorr can be used instead.
At step 650, the positions of the regular nodes are estimated by minimizing the corrected cost function:




  
    
      
        
          (
          
            
              
                X
                ^
              
              corr
              WLS
            
            ,
            
              
                Y
                ^
              
              corr
              WLS
            
          
          )
        
        =
        
          
            argmin
            
              (
              
                
                  X
                  ^
                
                ,
                
                  Y
                  ^
                
              
              )
            
          
          [
          
            
              ∑
              
                i
                =
                1
              
              N
            
            ⁢
            
              
            
            ⁢
            
              
                
                  ∑
                  
                    j
                    =
                    1
                  
                
                N
              
              ⁢
              
                
              
              ⁢
              
                
                  
                    I
                    ij
                  
                  
                    
                      (
                      
                        
                          σ
                          ~
                        
                        
                          d
                          ,
                          ij
                        
                        corr
                      
                      )
                    
                    2
                  
                
                ⁢
                
                  
                    (
                    
                      
                        
                          d
                          ^
                        
                        ij
                      
                      -
                      
                        
                          d
                          ~
                        
                        ij
                        corr
                      
                    
                    )
                  
                  2
                
              
            
          
          ]
        
      
    
    
      
        (
        20
        )
      
    
  




As for the previous embodiments, minimization of the corrected cost function (20) can be achieved in various ways e.g. iteratively by using the steepest descent algorithm.
According to a variant of the third embodiment (not described), the distance correction and distance variance correction (645) are not performed prior to the minimization of the cost function (650). Instead, if the minimization of the cost function is carried out iteratively, the distance correction and variance correction are updated at each iteration. More specifically, if {circumflex over (x)}i(m),ŷi(m) denote the abscissas and the ordinates of the nodes at current iteration m, the corrected distance {tilde over (d)}ijcorr and the corrected variance ({tilde over (σ)}d,ijcorr)2 at iteration m+1 are calculated from expressions (16) and (18), by using the refined distance estimate {circumflex over (d)}ij(m)=(({circumflex over (x)}i(m)−{circumflex over (x)}j(m))2+(ŷi(m)−ŷj(m))2)1/2 just obtained.
It will be understood by the man skilled in the art that the present embodiment can also be combined with the various channel classification methods described in relation with the first embodiment. For example, the channel classification in 620 can be performed on the basis of the optimization residuals of corrected cost function (20). The cooperative process of channel classification and node positioning can also be iterated in the same way as described in relation with FIG. 4, until a predetermined stopping criterion is met.
Furthermore, the present embodiment can also be combined with the channel parameters blind estimation described in the relation with FIG. 5. More precisely, refined estimates of the distances between the regular nodes can be obtained by the positions obtained at step 650, similar to (12):

{circumflex over (d)}corr,ijWLS=√{square root over (({circumflex over (x)}corr,iWLS−{circumflex over (x)}corr,jWLS)2+(ŷcorr,iWLS−ŷcorr,jWLS)2)}  (21)

where {circumflex over (x)}corr,iWLS and ŷcorr,iWLS are the elements of vectors {circumflex over (X)}corrWLS and ŶcorrWLS respectively. These refined distance estimates can then be used to refine the channel model and update the channel parameters. As in the second embodiment, the cooperative process of blind channel parameters estimation and node positioning can be iterated until a predetermined stopping criterion is met.

## Claims

1. A node positioning method for a wireless network, the network including anchor nodes whose positions are known, and regular nodes whose positions have to be determined, the method comprising:
(a) each regular node measuring respective strengths of signals received from neighboring nodes;
(b) classifying channels linking any of the neighboring nodes into different channel categories;
(c) allocating path loss parameters to each of the channels according to the category the channel is classified into;
(d) estimating distances separating said each regular node from each of the neighboring nodes, and respective variances thereof, on the basis of measured strengths of the signals respectively received from the neighboring nodes and the allocated path loss parameters linking said each regular node with each of the neighboring nodes; and
(e) estimating the positions of the regular nodes by minimizing a cost function depending upon weighted quadratic differences between distances separating said each regular node from the neighboring nodes and the estimated distances from (d), the weighted quadratic differences being inversely proportional to the respective variances of the estimated distances from (d),
wherein said classifying further comprises first classifying all the channels into a line of sight category, and after the first completion of (c), (d), and (e), updating the first classification to the updated classification, in a second attempt, depending upon the estimated positions of the regular nodes step (e), and
further comprising calculating, for each channel linking said each regular node and one of the neighboring nodes, an optimization residual indicative of a difference between the estimated distance at (d) and a refined estimated distance calculated from the estimated position of said each regular node at (e), and from the position of the neighboring node, which is a known position if the neighboring node is an anchor node, or is otherwise estimated at (e),
wherein if the optimization residual relative to said each channel exceeds a predetermined first threshold, said each channel is classified into a non line of sight category, otherwise said each channel is maintained in the line of sight category,
wherein if the optimization residual relative to said each channel exceeds a predetermined second threshold higher than the predetermined first threshold, said each channel is classified into a category of non line of sight with deep attenuation,
wherein (b), (c), (d), and (e) are iterated, such that in each iteration after a first completion of (b), (c), (d), and (e):
an allocation of path loss parameters in (c) taking into account an updated classification of the channels of (b) in said each iteration,
the distances separating each regular node from each of its neighboring nodes and the variances thereof being estimated at (d) in said each iteration on the basis of the path loss parameters allocated at (c) in said each iteration, and
the positions of the regular nodes being obtained in said each iteration by minimizing the cost function calculated with the distances and distance variances estimated at (d) in said each iteration.

2. The node positioning method according to claim 1, wherein said classifying further comprises classifying the channels into categories of line of sight, non line of sight, and non line of sight with deep attenuation.

3. The node positioning method according to claim 1, wherein the allocated path loss parameters are a path loss value at a reference distance, a path loss decay exponent, and a shadowing coefficient, the path loss value, the path loss decay exponent, and the shadowing coefficient being dependent upon a category into which the channel has been classified.

4. The node positioning method according to claim 1, wherein-said classifying further comprises classifying the channels on the basis of statistics of power envelopes of signals received from the channels.

5. The node positioning method according to claim 1, wherein said classifying further comprises classifying the channels on the basis of a crossing rate and/or average fade duration crossing rate of power envelopes of signals received from the channels.

6. The node positioning method according to claim 1, wherein a predetermined percentage of the channels classified into the non line of sight category, and exhibiting largest optimization residuals, are classified into a category of non line of sight with deep attenuation.

7. The node positioning method according to claim 1, wherein, in a first run, the path loss parameters are initialized in (c) at predetermined values for each channel category, and after (d) and (e) have been completed, further comprising:
(f) calculating refined distance estimates on basis of the positions of the regular nodes estimated at (e);
(g) using the refined distance estimates to estimate updated path loss parameters for each channel category; and
(h) allocating, in a second run of (c), the updated path loss parameters of the channels according to the categories the channels are respectively classified into.

8. The node positioning method according to claim 7, wherein (c), (d), (e), (f), and (g) are iterated, such that in each iteration after a first completion of (c), (d), (e), (f), and (g), the distances and the variances thereof being estimated for each channel category at (d) in said each iteration on the basis of the updated path loss parameters allocated in said each iteration, and the positions of the regular nodes being obtained in said each iteration by minimizing the cost function calculated with the distances and the variances thereof estimated at (d) in said each iteration.

9. The node positioning method according to claim 1, wherein the distances and variances thereof that have been estimated at (d) are corrected by performing (d′ 1) and (d′ 2) in which:
(d′ 1) the distance estimate between any regular node of the regular nodes and each neighboring node thereof is corrected for a systematic bias depending upon a detection threshold of a receiver equipping the any regular node, a path loss decay exponent and a shadowing coefficient of the channel linking the any regular node and the neighboring node thereof;
(d′ 2) the distance variance is corrected on the basis of the detection threshold of the receiver in the any regular node, the path loss decay exponent and the shadowing coefficient of the channel linking the any regular node and the neighboring node thereof; and
(e′ 1) estimating the positions of the regular nodes by minimizing a cost function depending upon weighted quadratic differences between distances separating said each regular node from the neighboring nodes and corresponding estimated distances corrected at (d′ 1), the weighted quadratic differences being inversely proportional to the respective estimated variances of the estimated distances corrected at (d′ 2).

10. The node positioning method according to claim 1, wherein the cost function is minimized in iterations of (e), each iteration of (e) providing an estimate of the positions of the regular nodes and deducing therefrom a refined estimate of the distances separating said each regular node from the neighboring nodes,
the refined estimate being used for calculating:
a systematic bias depending upon a detection threshold of a receiver equipping the any regular node, a path loss decay exponent and a shadowing coefficient of the channel linking the any regular node and the neighboring node thereof, the distance estimate at (d) being corrected by the systematic bias;
a corrected distance variance depending upon the detection threshold, the path loss decay exponent, and the shadowing coefficient;
the positions of the regular nodes being estimated at a next iteration of (e) by continuing to minimize the cost function depending upon weighted quadratic differences between distances separating said each regular node from the neighboring nodes and corresponding estimated distances thus corrected, the weighted quadratic differences being inversely proportional to the respective estimated variances of the estimated distances thus corrected.

11. The node positioning method according to claim 1, wherein the cost function is minimized by a steepest descent algorithm, the node positions being first initialized by coarse node positions supplied by a range-free positioning algorithm.