Abstract
This paper presents a tag localization algorithm based on the time-difference-of-arrival (TDOA) of mobile tag signal for asynchronous wireless sensor network (WSN) with N anchors (nodes with known locations) and a large number of mobile tags. To obtain time synchronization, all anchors broadcast signals periodically; relative clock offsets and skews of anchor pairs are estimated by the least-square (LS) method using the times-of-arrival (TOAs) of broadcast signals at anchors. When a tag transmits signal, the TOA of tag signal at each anchor is stamped and errors in original TDOAs of tag signal due to relative clock offsets and skews of anchor pairs are eliminated. Based on Gaussian noise model, maximum likelihood estimation (MLE) for the tag position is obtained. Performance issues are addressed by evaluating the Cramér-Rao lower bound of synchronization and localization algorithms. Since the tag can be located via a single transmission, least power consumption of tag is required, and large number of tags can be served in WSN. The proposed algorithm is simple and effective, with performance close to that of synchronous TDOA algorithm.
1. Introduction
With the advances of wireless communications and microelectronics technologies, wireless sensor networks (WSNs) have received more attention over the recent decade due to their potential application to a wide variety of diverse areas [1], such as environmental monitoring, space exploration, military applications, target tracking, and healthcare.
One of the most important issues for WSN is that the location of each sensor node must be determined. However, it is expensive and impractical to equip all sensors in the network with a global positioning system (GPS) receiver [2]. To obtain accurate location estimates of sensor nodes, range-based localization algorithms are more favorable than range-free ones [3–5]. In general, the range-based algorithms always follow two steps [6, 7]: they first measure some metrics bearing location information, the so-called ranging or bearing, and second estimate the positions based on those metrics, the so-called location information fusion. There are mainly four metrics: time-of-arrival (TOA) or time-of-flight (TOF) [8], time-difference-of-arrival (TDOA) [5, 6], angle-of-arrival (AOA) [9], and received signal strength (RSS) [10]. The ranging methods using RSS can be implemented by energy detectors, but they can only achieve a coarse resolution. Antenna arrays are required for AOA-based methods, which encumbers their popularity. On the other hand, high accuracy and potentially low cost implementation make TOA or TDOA based on ultrawideband system (UWB) and broadband spread spectrum system a promising ranging method [11, 12].
Since TOA and TDOA measurements are time-based, clock synchronization is essential for high accuracy localization and low cost implementation. Many protocols have been proposed to resolve the synchronization problem of WSN, such as the reference broadcast synchronization (RBS) protocol [13], the timing-sync protocol for sensor networks (TPSN) [14], and flooding time synchronization protocol (FTSP) [15]. On the other hand, clock synchronization can also be handled by estimating the relative clock offsets and skews among sensor nodes using maximum likelihood estimator (MLE) [3–5, 7]; the theoretical performance limits are evaluated by Cramér-Rao lower bound (CRLB).
Due to the close relationship between synchronization and localization problems, joint estimation of the relative clock skew, the relative clock offset, and the positions of source nodes are proposed in [4, 5] for network with asynchronous anchors. The broadcasting property is exploited to jointly estimate clock parameters and source position using asymmetrical time-stamping and a passive listening protocol in [5, 16]. Although these algorithms achieve good performance, complex protocols, such as two-way ranging protocol, are necessary. Moreover, frequent transmissions of source node may cause more energy dissipation and limit the number of tags in the service area of WSN.
In this paper, we propose a robust TDOA localization algorithm for asynchronous wireless sensor networks. In WSN, sensor nodes are divided into two categories, anchor and tag. Tags are mobile sensor nodes; anchor nodes are used as reference points to localize tag nodes and assumed to have known positions and good power supplies. There are many limitations for tag nodes, such as size, cost, and energy dissipation which is concerned intensively for practical implementation. In order to synchronize anchor clocks, all anchors broadcast signal periodically; TOAs of broadcasting signal at other anchors are stamped according to their own local clocks, respectively. A localization server on the backbone network collects all these timestamps to estimate the relative clock offsets and skews of anchor pairs. When anchors receive a broadcasting signal from a tag, the TOAs of tag signal at anchors are also stamped and delivered to the localization server. The error in original TDOA of tag signal due to relative clock offsets and skews among anchors can be easily canceled by a compensation operation. Based on a Gaussian measurement noise model, maximum likelihood estimation (MLE) for tag position is obtained. Performance issues are addressed by evaluating the Cramér-Rao lower bound (CRLB) of synchronization and localization algorithm. Only anchor-anchor synchronization is required in this paper and tag node is localized via a signal transmission, so power consumption of tag can be minimized and the number of tags to be served can be maximized.
This paper is organized as follows. The sensor network model for localization problem considered in the paper is given in Section 2. Estimation of relative clock offsets and skews of anchor pairs and performance analysis are presented in Section 3. The localization of tags is studied in Section 4, and the statistical performance analysis of the localization algorithm is also presented in this section. Section 5 presents some numerical results and Section 6 concludes the paper.
2. Sensor Network Model for Localization
Wireless sensor network localization is the process by which sensor nodes determine their location. In simple terms, localization is a mechanism for discovering spatial relationships between objects. The various approaches taken in literature to solve this localization problem differ in the assumptions they make about their respective network and sensor capabilities. A detailed, but not exhaustive, list of assumptions made include assumptions about network infrastructure, device hardware, signal propagation models, timing and energy requirements, operational environment, time synchronization, communication costs, error requirements, and node mobility.
In this paper, sensor nodes are divided into two categories: anchor node and tag node. Anchor nodes are used as reference points to locate tag nodes; they are always connected to network infrastructure and well powered. To reduce network complexity and costs, the quantity of anchor is limited and positions of anchor nodes are planned in advance to guarantee the coverage of service area. The tags are sensor nodes to be located and must be designed for low cost and low power consumption and operation for a long lifetime. To further reduce the complexity and power consumption of tag, the processing capability is restricted for practical implementation. For example, a WSN based patient management consists of limited anchors which serve for large quantity of tags carried by patients.
The radio sensor network model considered in the paper is depicted in Figure 1; all anchors receive broadcasting signals from other anchors or tags, stamp TOAs according to their own clocks, and route the TOA information to the localization server where synchronization and localization algorithms are implemented. The only work of tag is to transmit signals with certain period which is determined by working condition and requirement, measuring TOA and extra processing function are not needed in tag node. For tags with low mobility, a large value of period can be chosen to prolong the working time.

Radio WSN model for tag localization (anchor nodes are represented by red rectangles and tags are represented by green circles).
In Figure 1, all sensor nodes broadcast signals periodically with respect to their own local clocks. The message of broadcasting signal does not include a timestamp generated by the sender, nor is it important exactly when it is sent. As a matter of fact, the broadcast of tag does not even need to be a dedicated packet for localization. Almost any extant broadcast can be used to tag localization, for instance, ARP packets, or the broadcast control traffic in wireless networks (e.g., RTS/CTS exchanges or route discovery packets).
Consider a radio WSN with N anchors at known, fixed positions
Considering random clock drift due to frequency fluctuation, the frequency The coverage range of sensor node is within 300 m, which is a typical value for short range radio transmitter working in ISM (industry, science, and medicine) band, such as IEEE 802.11 b/n/g and IEEE 802.15.4a. All sensor nodes are equipped with low cost quartz oscillators; the typical clock skew is in the range of Since the anchors are connected to wired network and well powered, the power consumption of anchor is not concerned in this paper. However, the power consumption of tag is critical and there is no limitation on signal transmitting period and moving velocity of tag. Localization server where synchronization and localization algorithms are implemented is also assumed to have enough processing capability (if the number of tag exceeds a threshold, more localization servers running on desktop computers can be adopted to balance the computation load; there is no need to revise the design of anchor and tag).
3. Estimation of Relative Clock Offsets and Skews
3.1. TOA and TDOA for Anchor Blink
Suppose anchors broadcast signals by turns with a period of T with respect to their own local clocks. The broadcasting packet or pulse of the anchor is called “anchor blink.” Two consecutive blinks and TOA measurements are plotted in Figure 2.

Anchor blinks and local TOA measurements.
Assuming anchor q broadcasts kth blink, the TOA at anchor j is
The true value
Define
Notice that the coverage range of sensor node is within 300 m,
Comparing (8) and (9), it can be seen that the true value of blink interval can be replaced by local TOA measurement. Define
3.2. Relative Clock Offset and Skew Estimation
Suppose anchor i transmits blink
From (10), we have
It should be addressed that
After each anchor blinks once, we can get
Since the noise of TOA measurement is independent,
The LS estimation of
The procedure of the relative clock offset and skew estimation is described as follows.
The localization server collects the TOAs of N continuous anchor blinks (each anchor blinks once). Evaluate the value of blink interval using Calculate measurement values of anchor relative clock offset using (4), and combine these values into measurement vector Calculate covariance matrix of measurement noise of relative clock offsets using Get the LS estimation and CRLB of relative clock offset and skew based on (19) and (20), respectively.
4. Localization of Tag
4.1. Calibration of TDOA Measurement
Since the tag transmits signal based on its own clock, some kind of media access method may be adopted to avoid collision of node transmissions. The TOAs of tag signals at anchors are depicted in Figure 3.

TOAs of tag signals at anchors.
Define
The calibrated TDOA
Since
The likelihood function is
Notice that the clock skews of anchors are assumed to be constant in (19) and (25). Considering random clock drift due to frequency fluctuation, blink interval T must be selected carefully to guarantee the accuracy of localization. The choice of blink interval will be further discussed in Section 5.
4.2. Maximum Likelihood Estimation
The MLE of
Under the Gaussian noise assumption, the MLE has a least-squares interpretation. But a closed-form solution of (32) does not exist in general due to the nonlinear function
(1) Let the estimation at the mth iteration be
(2) The estimation at the
The iteration starts with an initial guess
The procedure of the tag localization algorithm is described as follows.
The localization server collects the tag signal's TOAs at anchors and calculates original Calibrate TDOAs by eliminating relative clock offset errors using (22). Calculate covariance matrix Calculate Update tag position with (38); if position change is larger than 0.1 mm, set
4.3. CRLB for Tag Localization Algorithm
The localization performance of the proposed algorithm is analyzed using the CRLB. The CRLB is the inverse of the Fisher information matrix. For Gaussian noise, the Fisher information matrix has the form [6, 19]
Another performance measure commonly used in source localization systems is the geometric dilution of precision (GDOP) [21]. The GDOP is the magnification in localization error due to the geometric relationship between the anchors and tags. Let
5. Numerical Results
In this section, numerical results for both estimations of anchors' clock parameters and tag's localization are presented. A two-dimensional localization scene is considered in this paper; four anchors are placed evenly at coordinates of (0, 0), (100 m, 0), (0, 100 m), and (100 m, 100 m), respectively. The anchors stamp TOAs of signal emitted by other anchors or tags and deliver the TOA information to localization server where estimation of clock parameters and tag location are implemented.
Firstly, Monte Carlo simulations were carried out to evaluate the statistical performance of the proposed algorithm without taking the clock drift into consideration. The simulation result unfolds some theoretical features of the proposed algorithm. Secondly, simulations in the presence of clock drift are carried out and the appropriate value of blink interval is analyzed. At last, the GDOP performances for different layouts of anchors are evaluated.
5.1. Performance without Clock Drift
5.1.1. Results of Relative Clock Offset and Skew Estimation
Without considering clock drift, the performance of synchronization was evaluated as a function of TOA measurement. The actual root mean square error (RMSE) and root CRLB (RCRLB) of relative clock offset and skew estimates with different values of blink interval T are plotted in Figures 4 and 5. The RMSE results were averaged over 50000 independent noise measurements.

RCRLB and RMSE for relative clock offset estimation versus TOA measurement standard deviation (clock drift not concerned).

RCRLB and RMSE for clock skews estimation versus TOA measurement standard deviation (clock drift not concerned).
From Figure 4, it can be seen that the value of blink interval has no effect on the performance of relative clock offset estimation. We can see that the RMSE and CRLB of relative clock skew estimation are inversely proportional to the value of blink interval in Figure 5. It is inferred in (20) that estimate of relative clock skew is a weighted average of TOAs over time span
The performance of tag localization is given in Figure 6. It seems that blink interval has no effect on the performance of tag localization. It has been concluded that the RMSE and RCRLB of relative clock skew estimation are inversely proportional to the value of blink interval; it can be seen in (23) that

RCRLB and RMSE for tag position estimation versus TOA measurement for different blink intervals (clock drift not concerned).
5.2. Performance with Clock Drift
5.2.1. Results of Clock Difference Estimation
Clock drift is inevitable for all kinds of clock source; it must be taken into account for real implementation. In this paper, clock frequency fluctuation of quartz oscillator is modeled as AWGN [22]
The performance of synchronization in the presence of clock drift was also evaluated as a function of TOA measurement. Since blink interval T greatly influences the accuracy of localization, the actual root mean square error (RMSE) and root CRLB (RCRLB) of relative clock offset and skew estimates with different values of blink interval T are plotted in Figures 7 and 8. The RMSE results were averaged over 50000 independent noise measurements.

RCRLB and RMSE for relative clock offset estimation versus TOA measurement standard deviation,

RCRLB and RMSE for clock skews estimation versus TOA measurement standard deviation,
There is an obvious gap between the RMSE and corresponding RCRLB in Figures 7 and 8, because clock skew is treated as constant in the computation procedure of RCRLB. However, frequency fluctuations are inevitable in practice; the impact of frequency fluctuations is more significant when TOA measurement standard deviation
5.2.2. Tag Localization Result
The RMSE and RCRLB for tag localization with different blink interval T are plotted in Figure 9. For simplicity,

The performance of the synchronous TDOA algorithm in [7] is presented for comparison in Figure 9. The dotted red lines with markers “▿” and “+” represent RCRLB and RMSE of [7], respectively. We can conclude that the RMSE and RCRLB values of our algorithm decrease and approach those of the synchronous TDOA algorithm if a smaller value of T is selected. This is due to the fact that the impact of clock drift on calibrated TDOA becomes less significant as the time interval of anchor blinks is reduced. Although more accurate estimation of the positions of tags can be achieved with a smaller blink interval T, the number of tags to be served will decrease due to the large number of anchor blink signals. We can conclude that a value in the range
Furthermore, the algorithm in this paper is compared with the algorithms in [4] where a joint synchronization and localization algorithm for asynchronous WSN was proposed. The RCRLB curve of this algorithm is plotted with blue marker “◊” in Figure 9. The joint algorithm in [4] performs better than our algorithm due to two-way message exchange scheme and the averaging of noisy TOAs of multiple signals from the same tag. We can also see that the difference between pairs of algorithms in localization precision is within 3 dB, which has little effect in practice for typical standard deviation in the range of
Although the algorithm proposed in this paper cannot reach the performance of algorithms in [4, 7], there are less assumptions required in this paper. Clock skews in [4, 7] are treated as constant. Furthermore, it is assumed that all anchors are synchronized and their positions are known in [7]; it is also assumed that there are
5.3. Performance of GDOP
The GDOP of the proposed asynchronous localization method is plotted in Figure 10 as a function of the tag position and it is compared with that of the synchronous algorithm in [7]. As expected, the asynchronous method had a worse geometric condition, but we notice that the tag can be located with GDOP performance (less than 2) close to synchronous algorithm when the tag is in the rectangle formed by four anchors.

Constant contour of GDOPs as a function of the tag location for both the asynchronous algorithm in this paper r (solid line) and synchronous algorithm in [7] (red dotted line).
The GDOP with different layout of anchors is plotted in Figure 11. Three anchors locate on the vertex of an equilateral triangle whose edge is 100 m; the fourth anchor locates on the center of gravity. The GDOP of the synchronous algorithm in [7] is plotted for comparison. We can also conclude that GDOP performance (less than 2) is close to synchronous algorithm when the tag is in the region formed by the outside three anchors.

Constant contour of GDOPs (anchors locate on (0, 0), (100, 0), (50, 86.6), and (50, 28.9)) for both the asynchronous algorithm in this paper (solid line) and synchronous algorithm in [7] (red dotted line).
The influence of the number of anchors is also studied in the simulation. For 2D localization, at least three anchors are needed for tag localization, and four anchors are needed for 3D localization. The GDOP of triangular layout of three anchors is plotted in Figure 12; three anchors locate on the vertex of an equilateral triangle whose edge is 100 m. The GDOP of four anchors (the fourth anchor locates on the center of gravity) is also plotted for comparison. It can be seen that the GDOP performance of the three anchors is worse than that of the four anchors. Statistically, more TOA measurements are helpful to reduce the locating error of tag. Furthermore, redundant TOA measurements can also be used to cope with the problem of non-LOS by selecting the TOA measurements with stronger receiving signal or shorter propagation delay.

Comparison of GDOP with three anchors (blue solid line; anchor locates on (0, 0), (100, 0), and (50, 86.6)) and GDOP with four anchors (red dotted line; anchor locates on (0, 0), (100, 0), (50, 86.6), and (50, 28.9)).
6. Conclusion
In this paper, a novel TDOA tag localization algorithm for WSNs is presented. To synchronize clocks of anchors, each anchor broadcasts blink signals periodically; relative clock offsets and skews of anchor pairs are estimated by the LS method using the TOAs of broadcast signals at anchors. When a tag transmits a signal, the TDOA error due to the relative clock offset of the anchor pair can be eliminated using a compensation operation. Moreover, a linearized MLE is adopted to estimate the position of the tag. Compared with previous methods, the algorithm proposed in this paper is simple, energy-efficient, and particularly suitable for low cost and fully asynchronous WSNs.
Footnotes
Conflict of Interests
The authors declare that there is no conflict of interests regarding the publication of this paper.
