Simulation Tool for the Analysis of Cooperative Localization Algorithms for Wireless Sensor Networks
Abstract
:1. Introduction
2. Background
2.1. Problem Statement and Related Work
2.2. The Cramér-Rao Lower Bound (CRLB)
2.3. Potential Applications
3. Developed Graphical User Interface: wsnLocalize
- WSN topology (a). This plot shows the true node coordinates of the WSN, including the anchor and the blind nodes. The position of each node can be modified either by dragging the node or by editing the and coordinates defined in the corresponding text fields. Each time, a node position or a WSN parameter is modified, the graph associated with the modeled WSN is updated and a new simulation is executed.
- Node estimated and true locations (b). This plot shows the absolute positioning of the nodes and depends on the localization algorithm applied and all the parameters that affect to the pairwise distance estimations (WSN topology, average connectivity, etc.). The plot shows the true and estimated node locations. The Relative map push button located below the plot shows the relative map produced such as in MDS techniques. In fact, in the absence of enough anchor nodes, the absolute map cannot be computed.
- Network parameters (c). This menu allows the configuration of the node graph associated with the WSN. Basically, the user can set up the radio range of connectivity, select the distance error in the pairwise estimated distances, and add/remove blind or anchor nodes. A particular node can be located by specifying its and coordinates in the corresponding edit text fields. In addition, the user can set up these features for each particular node in the WSN, including the specification of the probability of failure in the communication. If the select as anchor radio button is enabled, the node specified in the Node to modify (number) text field will be considered as an anchor. Then, its absolute coordinates will be used to transform the relative map to the absolute map (anchor nodes are represented with black points). The distance error added to the true pairwise distances can be specified as a blurred Gaussian noise or be based on a statistical model for RSS or TOA [4]. All nodes with the same setup radio button allow the user to switch between a uniform scenario where all nodes have the same features, or specific features per node. The editable text field Comm. Nodes allows enabling or disabling the possible communication between the node specified in the Node to modify (number) editable text field. On the other hand, if the Random Anchors radio button is enabled, when executing Monte-Carlo simulations, the anchor nodes will be randomly selected in each iteration. The Node placement pop-up menu allows us to automatically generate different WSN topologies, such as random, square, and C-shaped. In all of them, it is possible to specify the number of blind and anchor nodes.
- Simulation (d). This section allows us to perform simulations of localization algorithms applied to the WSN graph model specified in Section (b). The Simulate button executes one iteration of the specified localization algorithm in the list box. The Monte-Carlo simulations are carried out with the Monte-Carlo push-button. In this case, wsnLocalize runs a specified number of iterations. The results of each iteration are averaged and displayed in a new window. The CRLB push-button calculates the Cramér-Rao Lower Bound for the WSN.
- Simulation results (e). This section provides relevant information to quantify the performance of the tested localization algorithm, such as the maximum and average error, the standard deviation error, the average connectivity of the WSN, and the localization error of a concrete node specified by the user. In addition, a set of common cost functions to evaluate the goodness of the algorithms have been implemented, such as the Frobenius Norm, and functions . The detailed information of these cost functions is included in Appendix A. In addition, the maximum error is calculated and displayed, i.e., the maximum difference between the true and estimated location of a particular node, which is also determined. Other interesting results are also shown in this section, such as the averaged error, the root mean squared error (RMSE), the maximum absolute error (MAE), and the average error relative to the radio range (R). Furthermore, the user can select a specific node and obtain specific information about the localization error.
- Localization algorithm (f). In this section, the user can select the localization algorithm to be tested. As examples, the current version of wsnLocalize provides algorithms based in the multi-dimensional scaling techniques [19,20] and the As-Rigid-As-Possible-Approach algorithm (ARAP) [7]. Nevertheless, the user can test custom localization algorithms by selecting the custom option. In this case, the tool will construct the relative and absolute maps (given enough anchor nodes) and will evaluate its performance, as previously explained.
- WSN parameters (number of nodes, node connectivity, distance estimates, etc.).
- Monte-Carlo simulation.
- Report generation.
- A probabilistic connectivity model is included with the tool [15]. Thus, the disk graph assumption can be avoided.
- Particular node features can be specified (node range, probability of failure).
- A set of stress functions, which evaluate the performance of the localization algorithms computed (see Appendix A), including the amount of time it takes to run an algorithm, and also consider specific node localization statistics.
- Interactivity: the user can move each node interactively and modify its characteristics (convert it to anchor or blind node, modify its node range, etc.).
4. Illustrative Examples
4.1. Grid Distribution
Result Analysis of Grid Distribution
4.2. Random Node Distribution
Result Analysis of Random Distribution
4.3. Non-Disk-Graph Assumption and Probabilistic Model in Connectivity
CRLB Example
5. Conclusions
Author Contributions
Funding
Acknowledgments
Conflicts of Interest
Appendix A
Function Name | Equation |
---|---|
Average normalized error per node | |
Normalized error to radio range (%) | |
Frobenius norm |
References
- Shit, R.C.; Sharma, S.; Puthal, D.; Zomaya, A.Y. Location of Things (LoT): A Review and Taxonomy of Sensors Localization in IoT Infrastructure. IEEE Commun. Surv. Tutor. 2018, 20, 2028–2061. [Google Scholar] [CrossRef]
- Caceres, M.A.; Penna, F.; Wymeersch, H.; Garello, R. Hybrid Cooperative Positioning Based on Distributed Belief Propagation. IEEE J. Sel. Areas Commun. 2011, 29, 1948–1958. [Google Scholar] [CrossRef] [Green Version]
- Ruz, M.L.; Vázquez, F.; Salas-Morera, L.; Cubero-Atienza, A. Robotic testing of radio frequency devices designed for industrial safety. Saf. Sci. 2012, 50, 1606–1617. [Google Scholar] [CrossRef]
- Patwari, N. Location Estimation in Sensor Networks. Ph.D. Thesis, University of Michigan, Ann Arbor, MI, USA, 2005. [Google Scholar]
- Yassin, A.; Nasser, Y.; Awad, M.; Al-Dubai, A.; Liu, R.; Yuen, C.; Raulefs, R.; Aboutanios, E. Recent Advances in Indoor Localization: A Survey on Theoretical Approaches and Applications. IEEE Commun. Surv. Tutor. 2017, 19, 1327–1346. [Google Scholar] [CrossRef]
- Patwari, N.; Ash, J.N.; Kyperountas, S.; Hero Iii, A.O.; Moses, R.L.; Correal, N.S. Locating the nodes: Cooperative localization in wireless sensor networks. IEEE Signal Process. Mag. 2005, 22, 54–69. [Google Scholar] [CrossRef]
- Zhang, L.; Liu, L.; Gotsman, C.; Gortler, S.J. An as-rigid-as-possible approach to sensor network localization. ACM Trans. Sens. Netw. 2010, 6, 1–21. [Google Scholar] [CrossRef] [Green Version]
- Wymeersch, H.; Lien, J.; Win, M.Z. Cooperative Localization in Wireless Networks. Proc. IEEE 2009, 97, 427–450. [Google Scholar] [CrossRef]
- Sahinogglu, Z.; Gezici, S.; Guvenc, I. Ultra-Wideband Positioning Systems: Theoretical Limits, Ranging Algorithms, and Protocols; Cambridge University Press: Cambridge, UK, 2008; ISBN 0521873096. [Google Scholar]
- Monica, S.; Ferrari, G.; Monica, S.; Ferrari, G. Improving UWB-Based Localization in IoT Scenarios with Statistical Models of Distance Error. Sensors 2018, 18, 1592. [Google Scholar] [CrossRef] [PubMed]
- Xiong, Y.; Wu, N.; Shen, Y.; Win, M.Z. Cooperative Network Synchronization: Asymptotic Analysis. IEEE Trans. Signal Process. 2018, 66, 757–772. [Google Scholar] [CrossRef]
- Meyer, F.; Etzlinger, B.; Liu, Z.; Hlawatsch, F.; Win, M.Z. A Scalable Algorithm for Network Localization and Synchronization. IEEE Internet Things J. 2018, 5, 4714–4727. [Google Scholar] [CrossRef]
- Li, Y.; Liu, D.; Wymeersch, H. Bayesian outlier detection in location-aware wireless networks. In Proceedings of the 2011 8th Workshop on Positioning, Navigation and Communication, Dresden, Germany, 7–8 April 2011; pp. 39–44. [Google Scholar]
- Xiong, Y.; Wu, N.; Wang, H.; Kuang, J. Cooperative Detection-Assisted Localization in Wireless Networks in the Presence of Ranging Outliers. IEEE Trans. Commun. 2017, 65, 5165–5179. [Google Scholar] [CrossRef]
- Drineas, P.; Javed, A.; Magdon-Ismail, M.; Pandurangan, G.; Virrankoski, R.; Savvides, A. Distance matrix reconstruction from incomplete distance information for sensor network localization. In Proceedings of the 2006 3rd Annual IEEE Communications Society on Sensor and Ad hoc Communications and Networks, Reston, VA, USA, 28 September 2006; pp. 536–544. [Google Scholar]
- Chen, S.; Zhang, J.; Mao, Y.; Xu, C.; Gu, Y. Efficient Distributed Method for NLOS Cooperative Localization in WSNs. Sensors 2019, 19, 1173. [Google Scholar] [CrossRef] [PubMed]
- Achlioptas, D.; McSherry, F. Fast computation of low-rank matrix approximations. J. ACM 2007, 54. [Google Scholar] [CrossRef]
- Virrankoski, R.; Savvides, A. TASC: Topology adaptive spatial clustering for sensor networks. In Proceedings of the IEEE International Conference on Mobile Adhoc and Sensor Systems Conference, Washington, DC, USA, 7 November 2005; pp. 605–614. [Google Scholar]
- Shang, Y.; Ruml, W.; Zhang, Y.; Fromherz, M.P.J. Localization from mere connectivity. In Proceedings of the International Symposium on Mobile Ad Hoc Networking and Computing (MobiHoc), Annapolis, MD, USA, 1–3 June 2003; pp. 201–212. [Google Scholar]
- Shang, Y.; Ruml, W. Improved MDS-based localization. In Proceedings of the IEEE INFOCOM 2004, Hong Kong, China, 7–11 March 2004; Volumn 4, pp. 2640–2651. [Google Scholar]
- Shang, Y.; Ruml, W.; Zhang, Y.; Fromherz, M. Localization from connectivity in sensor networks. IEEE Trans. Parallel Distrib. Syst. 2004, 15, 961–974. [Google Scholar] [CrossRef] [Green Version]
- Agarwal, A.; Phillips, J.M.; Venkatasubramanian, S. Universal multi-dimensional scaling. In Proceedings of the 16th ACM SIGKDD international conference on Knowledge discovery and data mining, Washington, DC, USA, 25–28 July 2010; pp. 1149–1158. [Google Scholar]
- Borg, I.; Groenen, P.J.; Mair, P. Applied Multidimensional Scaling; Springer: Heigelberg, Germany, 2012; ISBN 3642318479. [Google Scholar]
- Lee, D. Localization using Multidimensional Scaling (LMDS). Ph.D. Thesis, University of California, Berkeley, CA, USA, 2005. [Google Scholar]
- Costa, J.A.; Patwari, N.; Hero, A.O. Distributed weighted-multidimensional scaling for node localization in sensor networks. ACM Trans. Sens. Networks 2006, 2, 39–64. [Google Scholar] [CrossRef] [Green Version]
- Scheidt, F.; Jin, D.; Muma, M.; Zoubir, A.M. Fast and accurate cooperative localization in wireless sensor networks. In Proceedings of the 2016 24th European Signal Processing Conference (EUSIPCO), Budapest, Hungary, 29 August–2 September 2016; pp. 190–194. [Google Scholar]
- Jin, D.; Yin, F.; Fritsche, C.; Zoubir, A.M.; Gustafsson, F. Efficient cooperative localization algorithm in LOS/NLOS environments. In Proceedings of the 2015 23rd European Signal Processing Conference (EUSIPCO), Nice, France, 31 August–4 September 2015; pp. 185–189. [Google Scholar]
- Das, K.; Wymeersch, H. Censoring for Bayesian Cooperative Positioning in Dense Wireless Networks. IEEE J. Sel. Areas Commun. 2012, 30, 1835–1842. [Google Scholar] [CrossRef] [Green Version]
- Patwari, N.; Hero, A.O.; Perkins, M.; Correal, N.S.; O’Dea, R.J. Relative location estimation in wireless sensor networks. IEEE Trans. Signal Process. 2003, 51, 2137–2148. [Google Scholar] [CrossRef] [Green Version]
- Buehrer, R.M.; Wymeersch, H.; Vaghefi, R.M. Collaborative Sensor Network Localization: Algorithms and Practical Issues. Proc. IEEE 2018, 106, 1089–1114. [Google Scholar] [CrossRef]
- Zhang, P.; Lu, J.; Wang, Y.; Wang, Q. Cooperative localization in 5G networks: A survey. ICT Express 2017, 3, 27–32. [Google Scholar] [CrossRef]
- Sottile, F.; Caceres, M.A.; Spirito, M.A. A simulation tool for hybrid-cooperative positioning. In Proceedings of the 2011 International Conference on Localization and GNSS (ICL-GNSS), Tampere, Finland, 29–30 June 2011; pp. 64–70. [Google Scholar]
- Buja, A.; Swayne, D.F.; Littman, M.L.; Dean, N.; Hofmann, H.; Chen, L. Data visualization with multidimensional scaling. J. Comput. Graph. Stat. 2008, 17, 444–472. [Google Scholar] [CrossRef]
Algorithm | R | C | Err(%R) | Max. Error | Avg. Error | Std(Error) | Err. | t(s) | ||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
MDS-MAP(C) | 1.5 | - | 6.08 | 37.0924 | 1.7061 | 0.5564 | 0.3607 | 0.0439 | 0.1395 | 0.0879 | 0.4428 | 0.0087 |
MDS-MAP(C) | 2 | - | 8.74 | 26.7743 | 1.6048 | 0.5355 | 0.3056 | 0.0422 | 0.3060 | 0.0625 | 2.9580 | 0.0069 |
MDS-MAP(C) | 2.5 | - | 15.68 | 9.1161 | 0.5433 | 0.2279 | 0.1161 | 0.0180 | 0.5026 | 0.0372 | 7.7092 | 0.0087 |
MDS-MAP(C) | 3 | - | 20.1 | 12.1917 | 1.1245 | 0.3658 | 0.2236 | 0.0289 | 0.5866 | 0.0620 | 10.3735 | 0.0092 |
MDS-MAP(C) | 3.5 | - | 27.06 | 15.0447 | 1.3753 | 0.5266 | 0.2677 | 0.0415 | 0.6428 | 0.0582 | 12.6875 | 0.0087 |
MDS-MAP(D) | 1.5 | 5 | 6.08 | 9.9766 | 0.4016 | 0.1496 | 0.0846 | 0.0118 | 0.0509 | 0.0248 | 0.0979 | 0.0071 |
MDS-MAP(D) 1 | 1.5 | 5 | 6.08 | 12.14 | 0.4597 | 0.1821 | 0.0969 | 0.0144 | 0.0510 | 0.0247 | 0.0987 | 0.0073 |
MDS-MAP(D) | 2 | 5 | 8.74 | 6.2893 | 0.3428 | 0.1258 | 0.0689 | 0.0099 | 0.0256 | 0.0184 | 0.0310 | 0.0072 |
MDS-MAP(D) | 2.5 | 5 | 15.68 | 4.7834 | 0.3277 | 0.1196 | 0.0648 | 0.0094 | 0.0251 | 0.0178 | 0.0227 | 0.0071 |
MDS-MAP(D) | 3 | 5 | 20.1 | 4.0988 | 0.3349 | 0.1230 | 0.0677 | 0.0097 | 0.0341 | 0.0180 | 0.0347 | 0.0073 |
MDS-MAP(D) | 3.5 | 5 | 27.06 | 3.3372 | 0.3108 | 0.1168 | 0.0623 | 0.0092 | 0.0431 | 0.0173 | 0.0558 | 0.0072 |
ARAP | 1.5 | 5 | 6.08 | 6.0295 | 0.2481 | 0.0904 | 0.0487 | 0.0071 | 0.0145 | 0.0140 | 0.1001 | 0.0648 |
ARAP | 2 | 5 | 8.74 | 3.8995 | 0.2352 | 0.0780 | 0.0432 | 0.0062 | 0.0125 | 0.0122 | 0.0306 | 1.5229 |
ARAP | 2.5 | 5 | 15.68 | 2.5655 | 0.1852 | 0.0641 | 0.0351 | 0.0051 | 0.0102 | 0.0100 | 0.0240 | 3.4588 |
ARAP | 3 | 5 | 20.1 | 2.0914 | 0.1924 | 0.0627 | 0.0360 | 0.0049 | 0.0101 | 0.0098 | 0.0352 | 5.1697 |
ARAP | 3.5 | 5 | 27.06 | 1.6556 | 0.1577 | 0.0579 | 0.0309 | 0.0046 | 0.0094 | 0.0091 | 0.0554 | 8.6734 |
ARAP + ref | 1.5 | 5 | 6.08 | 5.9508 | 0.2296 | 0.0893 | 0.0469 | 0.0070 | 0.0135 | 0.1300 | 0.1002 | 1.0318 |
ARAP + ref | 2 | 5 | 8.74 | 3.6761 | 0.1928 | 0.0735 | 0.0384 | 0.0058 | 0.0121 | 0.0116 | 0.0309 | 1.5599 |
ARAP + ref | 2.5 | 5 | 15.68 | 2.5927 | 0.1779 | 0.0648 | 0.0354 | 0.0051 | 0.0098 | 0.0096 | 0.0232 | 3.5110 |
ARAP + ref | 3 | 5 | 20.1 | 2.0284 | 0.1701 | 0.0609 | 0.0336 | 0.0048 | 0.0097 | 0.0094 | 0.0375 | 5.2147 |
ARAP + ref | 3.5 | 5 | 27.06 | 1.6206 | 0.1535 | 0.0567 | 0.0299 | 0.0045 | 0.0090 | 0.0089 | 0.0548 | 8.7376 |
R | C | Err(%R) | Max. Error | Avg. Error | Std(Error) | Err. | ||||
---|---|---|---|---|---|---|---|---|---|---|
1.2 | 2 | 7.98 | 74.4760 | 3.5111 | 0.8937 | 0.6045 | 0.0683 | 0.1434 | 0.1217 | 1.1725 |
1.2 | 5 | 7.98 | 74.2523 | 3.5053 | 0.8910 | 0.6002 | 0.0681 | 0.1381 | 0.1233 | 1.0728 |
1.2 | 10 | 7.98 | 76.1126 | 3.5181 | 0.9134 | 0.6116 | 0.0698 | 0.1342 | 0.1300 | 0.8996 |
1.2 | 15 | 7.98 | 78.1152 | 3.5794 | 0.9374 | 0.6290 | 0.0716 | 0.1383 | 0.1373 | 0.7591 |
1.2 | 20 | 7.98 | 84.1155 | 3.7922 | 1.0094 | 0.6806 | 0.0771 | 0.1615 | 0.1519 | 0.7544 |
1.5 | 2 | 12.09 | 20.1486 | 1.0665 | 0.3022 | 0.1861 | 0.0217 | 0.0642 | 0.0479 | 0.1884 |
1.5 | 5 | 12.09 | 21.0064 | 1.0631 | 0.3151 | 0.1871 | 0.0227 | 0.0563 | 0.0511 | 0.1460 |
1.5 | 15 | 12.09 | 28.7786 | 1.3252 | 0.4317 | 0.2395 | 0.0311 | 0.1062 | 0.0711 | 0.2849 |
1.5 | 20 | 12.09 | 34.4011 | 1.6036 | 0.5160 | 0.2885 | 0.0371 | 0.1691 | 0.0862 | 0.7217 |
Case | Max. Error | Mean Error | Err | |||
---|---|---|---|---|---|---|
Uniform | 17 | 0.1467 | 0.0590 | 0.0104 | 0.0248 | 0.0093 |
Non-uniform | 11.1250 | 0.7124 | 0.1015 | 0.0179 | 0.0617 | 0.0546 |
© 2019 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (http://creativecommons.org/licenses/by/4.0/).
Share and Cite
Ruz, M.L.; Garrido, J.; Jiménez, J.; Virrankoski, R.; Vázquez, F. Simulation Tool for the Analysis of Cooperative Localization Algorithms for Wireless Sensor Networks. Sensors 2019, 19, 2866. https://doi.org/10.3390/s19132866
Ruz ML, Garrido J, Jiménez J, Virrankoski R, Vázquez F. Simulation Tool for the Analysis of Cooperative Localization Algorithms for Wireless Sensor Networks. Sensors. 2019; 19(13):2866. https://doi.org/10.3390/s19132866
Chicago/Turabian StyleRuz, Mario L., Juan Garrido, Jorge Jiménez, Reino Virrankoski, and Francisco Vázquez. 2019. "Simulation Tool for the Analysis of Cooperative Localization Algorithms for Wireless Sensor Networks" Sensors 19, no. 13: 2866. https://doi.org/10.3390/s19132866
APA StyleRuz, M. L., Garrido, J., Jiménez, J., Virrankoski, R., & Vázquez, F. (2019). Simulation Tool for the Analysis of Cooperative Localization Algorithms for Wireless Sensor Networks. Sensors, 19(13), 2866. https://doi.org/10.3390/s19132866