Abstract
Location information is a key issue for applications of the Internet of Things. In this paper, we focus on mobile wireless networks with moving agents and targets. The positioning process is divided into two phases based on the factor graph, i.e., a prediction phase and a joint self-location and tracking phase. In the prediction phase, we develop an adaptive prediction model by exploiting the correlation of trajectories within a short period to formulate the prediction message. In the joint positioning phase, agents calculate the cooperative messages according to variational message passing and locate themselves. Simultaneously, the average consensus algorithm is employed to realize distributed target tracking. The simulation results show that the proposed prediction model is adaptive to the random movement of nodes. The performance of the proposed joint self-location and tracking algorithm is better than the separate cooperative self-localization and tracking algorithms.
1. Introduction
With the development of the Internet of Things (IoT) and related new information technology, wireless sensor networks (WSNs) are expected to gradually penetrate various industries and applications [1,2,3,4], influencing all aspects of people’s lives. WSNs connect the material world with the human world. Embedded in various “things”, sensors sense the states of the “things” and transmit collected information to processing terminals via the Internet to achieve monitoring and management in real-time [5]. The information collected by sensors is meaningful only when combined with location information, which helps the administrators know what, when, and where “things” happened. Therefore, cooperative self-localization and target tracking are two key issues in location-based applications of WSNs.
In WSNs, there are a small number of anchors and thousands of agents. Anchors are equipped with Global Position System (GPS) receivers or other devices with known coordinates, while the agents use a cooperative self-localization algorithm to estimate their own positions. In addition, when a target enters the WSNs, anchors and agents work cooperatively to track and locate it. In static WSNs, anchors and agents are fixed and so their coordinates do not change with time, meaning agents only need to locate themselves once. In mobile WSNs, anchors and agents move with time. Therefore, agents need to locate themselves in a sequential manner. In contrast with static WSNs, mobile WSNs alleviate several issues, such as coverage optimization and target tracking. A plethora of localization systems are proposed in the literature. In [6], the authors provided a general overview of localization in WSNs and showed the importance of different localization approaches in modern IoT applications. In [7], the authors focused on mobile WSNs and analyzed localization algorithms in mobile WSNs.
Cooperative self-localization and target tracking are closely related because target tracking can only be carried out when the locations of agents are clear. In recent years, some researches combined self-localization with target tracking and proposed a series of joint location algorithms. In [8], a simultaneous localization and tracking algorithm was introduced to solve the problem of tracking a non-cooperative target while simultaneously localizing and calibrating the static nodes in the network. In [9], a Bayesian method based on belief propagation (BP) was proposed for the distributed sequential localization of mobile networks composed of both cooperative agents and non-cooperative targets. This provided a consistent combination of cooperative self-localization and distributed tracking. However, the motion parameters (such as velocity) and the state-transition probability density function (pdf) of each node were assumed to be available. In [10], a distributed variational filtering was presented to simultaneously localize the detecting sensors and track the target by exploiting a series of measurements generated in the sensors when the target moved through the network field.
Target tracking is divided into two categories, i.e., centralized and distributed. In centralized target tracking, the nodes that detect the target transmit their measurements related to the target to a central processing node in a hop-by-hop communication mode. Then, the central node determines the positioning of the target by uniformly processing all of the measurements. However, the communication overhead of multi-hop data transmission is very large and energy consumption is too high. In distributed target tracking, each node locates the target according to all measurements related to the target. Therefore, the key problem is how to make each node obtain all of the measurements. In [11], a scheme was proposed in which agents broadcasted their own measurements, identification numbers, and additional information, such as the ID of the target. They also received these from other nodes and updated the information. All of the agents repeated the process until each agent obtained all of the measurement information related to the target. In this way, each agent was a fusion center and could perform tracing tasks. However, much redundant information existed in the network, and the required storage space was also very large. Therefore, this method is suitable for a fully connected network with a large communication radius. Consensus algorithm [12,13,14] provides another way for each agent to communicate observations with the remaining agents engaged in the tracking. Consensus is a distributed iterative algorithm relying on communication links between neighboring nodes and can achieve entire network polymerization (such as sum, average, or maximum). This does not need a routing algorithm and is robust to changes in network topology and unreliable network environments. Therefore, consensus algorithm is widely used in distributed target tracking [15,16]. In [17], each node calculated the mean and variance of the local posterior by weighted sampling. Then, the average consensus algorithm was employed to calculate the approximation of the global posterior to complete distributed target tracking. In [18], the global likelihood function was approximated to a Gaussian distribution, and each node obtained the approximation through consensus iteration. Furthermore, a consensus algorithm, which is applicable to any exponential likelihood function, was proposed in [19].
As an implementation of approximate Bayesian inference, messaging passing algorithm is particularly well-suited to distributed calculation and has been applied to cooperative self-localization and tracking of WSNs [9,20,21]. In previous work [22], we proposed a distributed cooperative self-localization algorithm by employing variational message passing (VMP) on factor graphs for static WSNs. With regard to the non-Gaussian messages caused by the nonlinear ranging model, we approximated them to Gaussian messages by exploiting second-order Taylor expansion, which significantly reduced the computational complexity. Then, we further combined the VMP approach in [22] with BP and proposed a cooperative self-localization algorithm for mobile WSNs in [23]. In this paper, we focus on mobile networks with anchors, moving agents, and targets deployed in a two-dimensional plane. In particular, the anchors have perfect location information at all times, while the cooperative agents and the non-cooperative targets are at unknown positions and can move independently. We divide the positioning process into two phases, i.e., a prediction phase and a joint self-location and tracking phase. Firstly, an adaptive prediction model is proposed to calculate the prediction message from the previous time slot. Then, in the joint self-location and tracking phase, the agents locate themselves using the measurements from neighboring nodes (agents and anchors) and the detectable targets, and the average consensus algorithm is employed to achieve distributed positioning of the targets. The simulation results show that the proposed prediction model is more adaptive and accurate than instant prediction, linear prediction, or square prediction, and the proposed joint self-location and tracking algorithm is better than the separate cooperative self-localization and target tracking algorithms.
This paper is organized as follows. In Section 2, we first describe the system model of cooperative self-localization, and tracking. Then, the corresponding probabilistic model and factor graph are analyzed. In Section 3, the proposed distributed joint self-location and tracking algorithm are described in detail, including a prediction phase and a joint self-location and tracking phase. The performance of the proposed prediction model and joint localization algorithm are evaluated in Section 4. Finally, conclusions are drawn in Section 5.
Notations: Boldface lowercase and uppercase letters denote vectors and matrices, respectively. Superscript ( )T and symbol stand for transposition and Euclidian norm, respectively. The probability density function (pdf) of a 1D Gaussian distribution with mean and variance is represented by while the pdf of a 2D Gaussian distribution with mean vector and covariance matrix is represented by .
2. System Model and Factor Graph
We consider a network with anchors, moving agents, and targets deployed in a two-dimensional plane, which can be defined by a vertices set and an edges set , i.e., . Here, each vertex represents a node in the plane and each edge indicates a neighborhood structure between node i and node j. We divide set into three parts: , where designates all anchors with perfect location information, includes all agents at unknown positions, and represents all non-cooperative targets. Moreover, the number of anchors, agents, and targets are denoted by , , and , respectively.
Time is slotted and we assume that all agents and targets move independently. At the kth time slot, the position variable of node is denoted by . For simplicity of illustration, the communication link between cooperative neighbors is assumed to be symmetric, which means and if , where R is the communication radius. At the kth time slot, if , nodes i can obtain the current position of node j and a ranging measurement with Gaussian noise . Consequently, the ranging measurement can be formulated as
and the likelihood function of the position variables of and is a Gaussian pdf, i.e.,
For convenience of description, we define ( for anchors and for agents) to represent all nodes who can detect target at the kth time slot. Similarly, let denote all nodes from whom node can implement ranging measurement at the kth time slot. Typically, notation represents all targets that node m can detect at the kth time slot. Moreover, we denote the position variables of all nodes by , the ranging measurements of node by , and the ranging measurements of target by , respectively. Then, let and represent the position variables of all nodes and ranging measurements at the kth time slot, respectively. Furthermore, let denote the position variables of all nodes from the 0th time slot to the kth time slot and denote the ranging measurements from the 1st time slot to the Kth time slot, respectively.
According to Bayesian rules and the assumption that all nodes move independently, the joint a posteriori distribution of with given observations can be formulated as
where is the a prior distribution of node I, which is assumed to be a Gaussian pdf with mean and covariance matrix , is the likelihood function of node i and node j, and is the probabilistic state-transition function.
For simplicity, we define and . Based on the factorization in (1), the joint a posteriori distribution of can be represented by a factor graph, as shown in Figure 1. In the factor graph, each variable node represents the position variable of node i and is depicted by a circle, while each factor node represents a local function or and is drawn by a square. Moreover, if a variable is an argument of a local function, it is connected to the factor node through an edge.
Figure 1.
The factor graph corresponding to the factorization in (1).
Generally speaking, factor graphs are undirected digraphs, which means the edge between a factor node and a variable node is undirected. However, in Figure 1, messages only flow forward in time regarding the spatiotemporal constraints of the network. We do not calculate the messages from the present to the past because network connectivity may change and the states of the nodes may be outdated. Furthermore, the variable node of an anchor’s position ignores the messages from its neighbors as anchors’ positions are known.
3. Distributed Joint Self-Location and Tracking Algorithm
As shown in Figure 1, for the cooperative agent and the non-cooperative target , the beliefs of and , denoted by and , consist of two kinds of message: Prediction messages from the (k−1)th time slot and cooperative messages from the neighbors. Based on message passing rules, for node , the belief can be described as
where Z is the normalization constant and and represent messages from factor node and factor nodes () to variable node , respectively. Therefore, agent determines and () by two phases, i.e., a prediction phase and a joint self-location and tracking phase.
3.1. Adaptive Prediction Model and Prediction Message Calculating
In (1), the probabilistic state-transition function of node i is related to the position prediction model. In this paper, according to the inertia of the motion, we propose an adaptive prediction model by exploiting the correlation of trajectories of node i within a short period.
We denote the trajectory of node i from the (k−N)th time slot to the (k−1)th time slot as , where , …, are the estimated positions of node i at the (k−N)th, …, (k−1)th time slot. Similarly, the trajectory of node i from the (k−N + 1)th time slot to the kth time slot can be described as . Then, we formulate the prediction model of node i as
where is the prediction matrix of node i and its dimension is 2N × 2N. Obviously, there are only two different elements between and , i.e., and . Therefore, the elements from the 3rd to the 2Nth rows are
According to the inertia of the motion of node i, we assume that the prediction matrix is unchanged in a short period. Based on the prediction model in (4), we have
Consequently, it can be formulated as
Based on Equations (3) and (5), we have
Obviously, translational motion will not change the prediction matrix . Therefore, it can be expressed as
and satisfies the constraint as follows
where and its two base vectors are and . Then we have and .
Assume that each node stores M () estimated positions before the kth time slot, which constitute trajectories, i.e., , ,…, . Based on the prediction model in Equation (3), we obtain an equation set which can be expressed as
According to Equations (4) and (10), we have
where and are the first and second rows of . For convenience of description, we define
Then, according to Equations (4), (10), and (11), we have
Consequently, and can be determined based on the least square method, i.e.,
Finally, the prediction matrix Pi is given by Equations (4) and (13). Let denote the predicted position of node i. According to the prediction model in Equation (3), can be given by
Then, we use the predicted position to formulate the prediction message as
where the covariance matrixes are and .
3.2. Joint Self-Location and Tracking Phase
After calculating the prediction message based on the adaptive prediction model, agent locates itself using ranging measurements, not only from its neighbor anchors and agents , but also from targets that it can detect. Meanwhile, agents and anchors that can detect target O share information with each other based on consensus iteration and determine the position of the target O. Compared with the separate cooperative self-localization and algorithms, agents use the ranging measurements from targets to improve the self-location accuracy, which promotes tracking performance in turn.
3.2.1. Self-Location of Agents Based on Variational Message Passing
At the kth time slot, agent obtains its prediction message based on the adaptive prediction model described in Section 3. Then, according to VMP update rules, cooperative messages from its neighbors are expressed as follows:
In (16), is the position of anchor at the kth time slot. Consequently, the belief in Equation (2) can be rewritten as
Considering the communication overhead, the messages passed on in Figure 1 are restricted to Gaussian distribution. However, , given by Equation (18), is non-Gaussian because of the nonlinear ranging model. In [20], we propose a low-complexity approximation method based on second-order Taylor expansion. In this way, the belief is approximated into a Gaussian function denoted by , where and are as follows:
In Equations (19) and (20), the notations and represent the estimated positions of nodes m and j in the latest iteration, respectively, notations and are the first-order gradient and the Hessian matrix of at , respectively, and the notations and are the first-order partial derivatives of and at (,), respectively (please see [22] for detailed derivation). Consequently, agent obtains its location based on maximum a posteriori (MAP), i.e., .
3.2.2. Target Tracking Based on Average Consensus
At kth time slot, node , which can detect target , computes the prediction message and the local message . Then, is approximated into Gaussian function using the approximation method in [22]. Therefore, the Gaussian approximation of can be expressed as
The mean vector and the covariance matrix are given by and , respectively. Each node can calculate and locally. However, node cannot determine unless all other neighbors of target share their local information with it.
For convenience of discussion, let , and ; therefore, we have
In order to locate the target in a distributed manner, we use the average consensus based on Metropolis weights proposed in [13] to diffuse information across the network. During the process, each node updates its data with a weighted average of its neighbors’ data, which converges to the global average. Let t denote the iteration index and represent the number of neighbors of node i, respectively. The consensus iteration process is as follows.
Step 1: Each node uses local information to initialize the global average
and as
while each node initializes and as
Step 2: Each node computes the Metropolis weight matrix, which is defined as
Step 3: Each node broadcasts its global average computed in the latest iteration and collects the information broadcasted by its neighbors. Then, each node updates the global average and by
Step 4: If (where is the maximum number of iteration), the consensus process ends. Otherwise, go to Step 2.
After sufficient consensus iterations, all nodes obtain the global average of and . Therefore, each node can compute and by
Submitting Equations (27) and (28) to Equations (22) and (23), each node has
Therefore, each node can determine the position of target based on MAP, i.e., .
3.3. Implementation Scheme of the Joint Self-Location and Tracking Algorithm
The proposed distributed joint self-location and tracking algorithm based on VMP and average consensus is stated as follows.
| Algorithm 1: Distributed joint self-location and tracking algorithm | |
| 1 | for (k is the time slot index) |
| 2 | Each agent updates M historical position information of itself and the targets before the kth time slot. |
| 3 | Each agent calculates its prediction matrix using Equation (4) and Equation (13), then predicts its position using Equations (14) and obtains its prediction message using Equation (15). |
| 4 | Each node predicts the position of target using Equation (4), Equation (13), and Equation (14), i.e., . Then, the prediction message is calculated using Equation (15). |
| 5 | Initialization: Each agent initializes its position as and initializes the position of the target that it detects as . |
| 6 | for (where q is the iteration index) |
| 7 |
|
| 8 |
|
| 9 |
|
| 10 | end for q |
| 11 | Each agent determines its position based on MAP and broadcasts and . Each node determines the position of target O based on based on MAP and broadcast and . |
| 12 | end for k |
4. Stimulation Results and Analysis
In this section, we evaluate the performance of the proposed adaptive prediction model and the distributed joint self-location and tracking algorithm (denoted by JSLT).
4.1. Stimulation Results and Performance Analysis of the Proposed Adaptive Prediction Model
In order to assess the performance of the proposed adaptive prediction model, we compare it with linear prediction and square prediction. We consider a 50 m × 50 m plane with 10 moving nodes. The prediction error is defined as the distance between the true position and the prediction position. The average prediction errors in Figure 2, Figure 3 and Figure 4 are obtained by averaging over 10,000 realizations, with each realization continuing 20 time slots.
Figure 2.
The performance of the proposed adaptive prediction model with different numbers of historical positions and an adjustment parameter .
Figure 3.
The performance comparison of the four prediction models with different standard deviations of the random variables.
Figure 4.
The performance comparison of the four prediction models with different adjustment parameter values.
We employ the Gauss–Markov (GM) mobility model [24] to simulate the motion of nodes. In the GM model, the velocity and direction of nodes are time-dependent Gauss–Markov processes, which means the velocity and direction at the kth time slot is related to that at the (k−1)th time slot. Let and denote the velocity and direction of node i from the kth time slot to the (k−1)th time slot, respectively, then we have
where constants and are the velocity and direction of node i when , and are Gaussian random variables independent of and , and is an adjustment parameter to control the randomness of motion. When increases, the impact of and rises, while the impact of and declines. As discussed above, the Gauss–Markov mobility model not only reflects the relationship between the current moment and a historical moment, but also reflects the randomness of motion. Therefore, it is very suitable for the simulation of high random motion, such as the travel of birds and the diffusion of gas.
The performance of the proposed adaptive prediction model with different numbers of historical estimated positions and is illustrated in Figure 2. Simulation configurations are as follows. For the GM mobility model shown in Equation (31), we set and . For the prediction using Equation (13), the parameters are and . As we know, the prediction algorithm is based on the historical estimated positions. In initialization, we use the true positions along with Gaussian noise (mean = 0 and variance = 4 m2) as the estimated positions. As shown in Figure 2, there is little difference in the average prediction error using different historical positions with different . Comparatively speaking, when the value of is smaller, more historical positions are used and the more accurate the obtained prediction is; when the value of is bigger, more historical positions are used and a more accurate prediction is achieved. This is because a smaller value indicates a greater randomness of motion, therefore the impact of the (k−1)th time slot on the kth time slot is less. More historical positions can reflect the trend of the movement. However, a bigger value leads to a stronger correlation between the kth time slot and the (k−1)th time slot. In this situation, the contribution of the earlier time slots to the current moment is small, and using too much historical information even influences the accuracy of prediction. Moreover, greater the number of historical positions used, the more information the nodes store and the greater the energy consumption. In subsequent simulations, we use three historical positions, meaning each node stores three historical positions.
To further evaluate the performance of the proposed adaptive prediction model, we compare the proposed model with linear prediction, square prediction, and instant prediction, which use the movements in x axis and y axis at the (k−1)th time slot to predict the position at the kth time slot. Simulation configurations are , , , , and . The performance comparison of the four prediction models with different standard deviations of the random variables and is shown in Figure 3. It is observed that the average prediction error of the four prediction models increases with an increase in . Specifically, the performance of instant prediction is the worst and the performance of the proposed adaptive prediction is the best. Moreover, the advantage of the proposed adaptive prediction model is more obvious when is bigger. Figure 4 illustrates the performance of the four prediction models with different adjustment parameter values. Simulation configurations are , , , and . It can be observed that the average prediction error of the proposed adaptive prediction model is smaller than the other three prediction models and the difference is bigger with increasing . In fact, from the Gauss–Markov mobility model in Equation (31), we see that the randomness of motion rises with the decline of and the increase in . Therefore, the proposed adaptive prediction model better adapts to different motion patterns than the other three prediction models.
4.2. Stimulation Results and Performance Analysis of the Proposed Distributed Joint Self-Location and Tracking Algorithm
The proposed distributed joint self-location and tracking (JSLT) algorithm is evaluated by comparison with the distributed cooperative self-localization algorithm and the centralized target tracking algorithm in this section. We consider a 50 m × 50 m plane with anchors, agents, and targets. The communication radius and ranging radius of anchors and agents are , the detection radius is , and the standard variance of ranging measurement noise is 1 m. At the 0th time slot, the variance matrix of the prior of agents and targets are set to be . The iterations of the average consensus algorithm and the joint location algorithm are 20 and 10, respectively. The results in Figure 5, Figure 6 and Figure 7 are obtained by performing 10,000 realizations over 20 time slots.
Figure 5.
Self-localization performance of the proposed joint self-location tracking JSLT algorithm and the cooperative self-localization (CSL) algorithm ().
Figure 6.
Self-localization performance of the proposed JSLT algorithm and the CSL algorithm ().
Figure 7.
Tracking performance of the proposed JSLT algorithm and the CT algorithm.
Self-localization performance of the proposed JSLT algorithm and the cooperative self-localization (CSL) algorithm in [23] with different numbers of agents and targets are shown in Figure 5 and Figure 6. In Figure 5, , or 10; in Figure 6, , or 5. It can be seen that the localization performance of both algorithms improves as time increases. This is because the agents’ and their neighbors’ positions become more accurate with the increase in time. However, a higher k value does not always correspond to improved positioning accuracy. The estimated accuracy becomes stable as time goes on. Furthermore, in the two scenarios, the proposed JSLT algorithm has a higher positioning accuracy than the CSL algorithm. This is because, in the JSLT algorithm, agents not only use the distance observation from the neighboring anchors and agents as in the CSL algorithm, but they also make use of the ranging measurements from the targets that they can detect, which improves the self-localization accuracy. Moreover, the performance of the two algorithms is quite different with fewer agents and more targets. When the density of agents is high, agents have enough neighbors. Therefore, they can localize themselves well by cooperating with neighboring anchors and agents. However, when the density of agents is low, many agents have few neighboring anchors and agents to localize themselves. In this case, the ranging measurements from targets play an important role in the self-localization of agents. The computational complexity of both algorithms depends on the number of neighbors. For agent , we define , , and to denote the number of neighboring agents, anchors, and targets that can detected at a certain time. The computational complexity of the CSL algorithm and the proposed JSLT algorithm are and , respectively. With regard to communication overhead, as all messages are approximated to Gaussian function, each agent broadcasts the mean and the covariance to its neighbors and collects the information broadcasted by its neighbors. The information collected by each agent is and for the CSL algorithm and the proposed JSLT algorithm, respectively. Since , the complexity and the communication overhead of the two algorithms are similar.
Figure 7 shows the tracking performance of the proposed JSLT algorithm and the centralized tracking (CT) algorithm is illustrated with and . In the CT algorithm, agents first localize themselves using the CSL algorithm in [23], then anchors and agents track the targets by sending information to a control center. As shown in Figure 7, the tracking performance of the proposed distributed JSLT algorithm is very close to that of CT algorithm, but the communication overhead of JSLT algorithm is much less than that of CT algorithm. In the CT algorithm, the information collected and broadcasted by each node (anchor or agent) are both proportional to the number of neighbors. In the proposed JLST algorithm, each node broadcasts its global average to its neighbors and collects global averages broadcasted by its neighbors, which is proportional to the number of neighbors. Therefore, the communication overhead sharply reduces by half. Moreover, in the CT algorithm, anchors and agents transmit information to the control center in a multi-hop manner, which leads to a fair amount of redundant information in the networks and information delay.
In order to visualize the tracking performance, a single trial performance of target tracking is shown in Figure 8. We can see that the trajectory recognized by the proposed algorithm is close to the actual trajectory of the target, except for at the initial time and at the moment of a sharp turn.
Figure 8.
A single trial performance of target tracking.
5. Conclusions
In this paper, we built an adaptive prediction model by exploiting the correlation of trajectories and then proposed a joint self-location and tracking algorithm based on VMP and average consensus. Simulation results and analysis illustrated that, compared with instant prediction, linear prediction, and square prediction, the proposed prediction model was more adaptive to the movement of the nodes. The self-location performance of the proposed algorithm is better than the separated cooperative self-localization, and the tracking performance of the proposed algorithm is close to the centralized tracking algorithm with less communication overhead.
The proposed algorithm is suitable for tracking bird migration patterns, monitoring gas diffusion, etc. In these applications, the motion of the targets is random. The following research aimed to apply the proposed approach to practices. In practical networks, delays in data transmission and communication errors are two important issues which affect positioning accuracy and real-time tracking. Future research will focus on the issue of how to deal with the impact of these two issues.
Author Contributions
Conceptualization, J.C. and Z.W.; Methodology, J.C. and Y.D.; Software, J.C. and Y.D.; Validation, J.C. and Z.W., and Y.D.; Formal analysis, J.C.; Investigation, J.C.; Resources, J.C.; Data curation, J.C.; Writing—Original draft preparation, J.Z.; Writing—Review and editing, J.Z. and Y.X.; Visualization, J.Z.; Supervision, Z.W.; Project administration, Z.W.; Funding acquisition, J.Z., Z.W., and Y.X.
Funding
This research was funded by the National Natural Science Foundation of China (NSFC) (grant number 61571402), the Key Scientific Research Project of Colleges and Universities of Henan Province, China (grant number 19A510019) and the Foundation for Young Backbone Teachers in Higher Education Institutions of Henan Province, China (grant number 2018GGJS126).
Conflicts of Interest
The authors declare no conflict of interest.
References
- Antolín, D.; Medrano, N.; Calvo, B. Reliable Lifespan Evaluation of a Remote Environment Monitoring System Based on Wireless Sensor Networks and Global System for Mobile Communications. J. Sens. 2016, 2016, 4248230. [Google Scholar] [CrossRef]
- Fakhrulddin, S.S.; Gharghan, S.K.; Al-Naji, A.; Chahl, J. An Advanced First Aid System Based on an Unmanned Aerial Vehicles and a Wireless Body Area Sensor Network for Elderly Persons in Outdoor Environments. Sensors 2019, 19, 2955. [Google Scholar] [CrossRef] [PubMed]
- Han, W.; Tian, Z.; Shi, W.; Huang, Z.; Li, S. Low-Power Distributed Data Flow Anomaly-Monitoring Technology for Industrial Internet of Things. Sensors 2019, 19, 2804. [Google Scholar] [CrossRef] [PubMed]
- Suryadevara, N.K.; Mukhopadhyay, S.C.; Kelly, S.D.T.; Satinder, P.S.G. WSN-Based Smart Sensors and Actuator for Power Management in Intelligent Buildings. IEEE/ASME Trans. Mechatron. 2015, 20, 564–571. [Google Scholar] [CrossRef]
- Atzori, L.; Lera, A.; Morabito, G. The Internet of Things: A Survey. Comput. Netw. 2010, 54, 2787–2805. [Google Scholar] [CrossRef]
- Fekher, K.; Abbas, B.; Abderrahim, B.; Priyanka, R.; Mohamed, A. A Survey of Localization Systems in Internet of Things. Mob. Netw. Appl. 2019, 24, 761–785. [Google Scholar]
- Chelouah, L.; Semchedine, F.; Bouallouche-Medjkoune, L. Localization Protocols for Mobile Wireless Sensor Networks: A survey. Comput. Electr. Eng. 2018, 71, 733–751. [Google Scholar] [CrossRef]
- Taylor, C.; Rahimi, A.; Bachrach, J.; Shrobe, H.; Grue, A. Simultaneous Localization, Calibration, and Tracking in an Ad Hoc Sensor Network. In Proceedings of the International Conference on Information Processing in Sensor Networks, Nashville, TN, USA, 19–21 April 2006; pp. 27–33. [Google Scholar]
- Meyer, F.; Hlinka, O.; Wymeersch, H.; Riegler, E.; Hlawatsch, F. Distributed Localization and Tracking of Mobile Networks Including Noncooperative Objects. IEEE Trans. Signal Inf. Process. Netw. 2016, 2, 57–71. [Google Scholar] [CrossRef]
- Teng, J.; Snoussi, H.; Richard, C.; Zhou, R. Distributed Variational Filtering for Simultaneous Sensor Localization and Target Tracking in Wireless Sensor Networks. IEEE Trans. Veh. Technol. 2012, 61, 2305–2318. [Google Scholar] [CrossRef]
- Djurić, P.M.; Beaudeau, J.; Bugallo, M.F. Non-Centralized Target Tracking with Mobile Agents. In Proceedings of the IEEE International Conference on Acoustics, Speech and Signal Processing, Prague Congress Center, Prague, Czech Republic, 22–27 May 2011; pp. 5928–5931. [Google Scholar]
- Xiao, L.; Boyd, S. Fast Linear Iterations for Distributed Averaging. In Proceedings of the 42nd IEEE International Conference on Decision and Control (IEEE CDC), Maui, HI, USA, 9–12 December 2003. [Google Scholar]
- Xiao, L.; Boyd, S.; Lall, S. A Scheme for Robust Distributed Sensor Fusion Based on Average Consensus. In Proceedings of the International Symposium on Information Processing in Sensor Networks, Boise, ID, USA, 15 April 2005. [Google Scholar]
- Olfati-Saber, R.; Fax, J.A.; Murray, R.M. Consensus and Cooperation in Networked Multi-Agent Systems. Proc. IEEE 2007, 95, 215–233. [Google Scholar] [CrossRef]
- Farahmand, S.; Roumeliotis, S.I.; Giannakis, G.B. Set-Membership Constrained Particle Filter: Distributed Adaptation for Sensor Networks. IEEE Trans. Signal Process. 2011, 59, 4122–4138. [Google Scholar] [CrossRef]
- Hlinka, O.; Hlawatsch, F.; Djuric, P.M. Consensus-based Distributed Particle Filtering with Distributed Proposal Adaptation. IEEE Trans. Signal Process. 2014, 62, 3029–3041. [Google Scholar]
- Gu, D.; Sun, J.; Hu, Z.; Li, H. Consensus Based Distributed Particle Filter in Sensor Networks. In Proceedings of the International Conference on Information and Automation, Zhangjiajie, Hunan, China, 20–23 June 2008. [Google Scholar]
- Ghirmai, T. Distributed Particle Filter Using Gaussian Approximated Likelihood Function. In Proceedings of the 48th Conference on Information Sciences and Systems, Princeton, NJ, USA, 19–21 March 2014. [Google Scholar]
- Hlinka, O.; Sluciak, O.; Hlawatsch, F.; Djuric, P.M.; Rupp, M. Likelihood Consensus and Its Application to Distributed Particle Filtering. IEEE Trans. Signal Process. 2012, 60, 4334–4349. [Google Scholar] [CrossRef]
- Wymeersch, H.; Lien, J.; Win, M.Z. Cooperative Localization in Wireless Networks. Proc. IEEE 2009, 97, 427–450. [Google Scholar] [CrossRef]
- Yuan, W.J.; Wu, N.; Etzlinger, B.; Wang, H.; Kuang, J. Cooperative Joint Localization and Clock Synchronization Based on Gaussian Message Passing in Asynchronous Wireless Networks. IEEE Trans. Veh. Technol. 2016, 65, 7258–7273. [Google Scholar] [CrossRef]
- Cui, J.; Wang, Z.; Zhang, C.; Sun, P.; Zhu, Z. Variational Message Passing-based Localisation Algorithm with Taylor Expansion for Wireless Sensor Networks. IET Commun. 2016, 10, 2396–2401. [Google Scholar] [CrossRef]
- Cui, J.; Wang, Z.; Zhang, C.; Zhang, Y.; Zhu, Z. Message Passing Localisation Algorithm Combining BP with VMP for Mobile Wireless Sensor Networks. IET Commun. 2017, 11, 1106–1113. [Google Scholar] [CrossRef]
- Camp, T.; Boleng, J.; Davies, V. A Survey of Mobility Models for Ad Hoc Network Research. Wirel. Commun. Mob. Comput. 2002, 2, 483–502. [Google Scholar] [CrossRef]
© 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/).