Asynchronous consensus-based time synchronisation in wireless sensor networks using unreliable communication links
Abstract
Time synchronisation is required for a variety of distributed control applications in wireless sensor networks (WSNs). In this study, a consensus-based time synchronisation protocol is presented. The proposed protocol considers asynchronous framework where the sensor nodes can have different time-periods, starting times and input update times. The communication links are assumed to be unreliable. The clocks in a WSN are modelled by a time-varying system with time-delay terms. The objective is to design local control inputs to achieve time synchronisation by processing the information received from available neighbour nodes. By employing tools from non-negative matrix and graph theories, the convergence analysis is presented. Numerical examples are given to demonstrate the effectiveness of the proposed protocol.
1 Introduction
A wireless sensor network (WSN) consists of spatially distributed sensor nodes which are deployed to observe some process of interest. Each sensor node has limited battery resources which must be efficiently utilised for sensing, processing, transmitting and receiving information. The efficient utilisation of battery resources imposes constraints on the communication capabilities of the sensor nodes. Therefore a sensor node communicates with a limited number of nearby sensor nodes which are termed as its neighbours. In most applications, coordination among sensor nodes requires precise time synchronisation [1–3]. Time synchronisation in WSNs is also required for many other tasks such as transmission scheduling, data fusion, and nodes sleep and wake-up scheduling. Thus, it is important to design distributed time synchronisation protocols which take into consideration the communication constraints of the sensor nodes.
During the recent years, the design of distributed time synchronisation protocols for WSNs has received considerable attention in the fields of control theory and signal processing (see e.g. [4–6]). A popular approach to design time synchronisation protocols is to create a hierarchical structure such as a spanning tree or a cluster within the WSN. Time synchronisation is achieved by exchanging time stamps within the hierarchical structure. The most prominent examples of hierarchy-based protocols are the Reference Broadcast Synchronisation protocol [7], Timing-sync Protocol for Sensor Networks [8] and Flooding Time Synchronisation Protocol [9]. Although the hierarchy-based protocols have been experimentally tested in [9] and their performance is remarkable, they require substantial overhead to rebuild the spanning trees or clusters if a sensor node dies or a new sensor node is added to the WSN.
Distributed time synchronisation protocols which do not require any hierarchical structure have been proposed in [10–14]. In [10], the authors proposed a distributed time synchronisation protocol using the coordinate descent optimisation algorithm; the protocol takes into consideration the natural network constraint that the sum of relative clock offsets in a network loop should be zero. In [11–13], the authors presented consensus-based time synchronisation protocols which ensure that the clocks in a WSN achieve time synchronisation with reference to a virtual clock. However, the design of the protocols presented in [10–13] assumes that the sensor nodes should periodically exchange and update their clock states at the same time instants; this assumption is unrealistic since it requires synchronisation of the clocks, which is the goal of the protocol. This assumption is partially relaxed in [4, 15], where the authors assume that all the sensor nodes should update their clock states at the same time instants but the information exchange among neighbour nodes may occur at non-regular time instants. In [14], a consensus-based time synchronisation protocol is presented which compensates for initial time offsets and skew deviations. The protocol assumes synchronous clocks update and information exchange. In [16], the authors presented a consensus-based relative time synchronisation protocol assuming the communications links are reliable and that the information from any neighbouring nodes can be made available at the input update time instants without any time-delay. To our best knowledge, the design of consensus-based time synchronisation protocol using asynchronous time updates and unreliable communication links has not been studied in WSNs.
The main contribution of this paper is to present a distributed time synchronisation protocol which relaxes the two main assumptions used in the literature. First, the proposed protocol does not require all the sensor nodes to have the same time-periods or starting times or update times. This is more realistic because a WSN typically consists of large number of sensor nodes and it is not easy to ensure that all the sensor nodes start at the same time or have the same time-periods. Second, the communication channels are considered to be unreliable. It may happen that a communication link is available between two nodes at a given time instant and it may not be available at some other time instants [Note that this also covers the case of half-duplex communication in a WSN.]. We assume that each sensor node knows its time-period but does not know its exact starting time. The objective of the proposed distributed time synchronisation protocol is to ensure that the clocks of the sensor nodes are synchronised to a virtual clock, which is not physically present or accessible to any sensor node.
The remainder of this paper is structured as follows: in Section 2, some basic definitions and results from graph and matrix theories are presented. We formulate the problem in Section 3 and then present the main results in Section 4. The analysis and proof are presented in Section 5. Numerical examples to demonstrate the effectiveness of the proposed time synchronisation protocol are given in Section 6. Finally, concluding remarks are stated in Section 7.
2 Preliminaries
Graphs provide a natural abstraction for information exchange within a WSN. In this section, we present some useful definitions and results from graph and matrix theories which will be used in this paper.
Consider an undirected (directed) graph which consists of a vertex set, , and an edge set, , where an edge is an unordered (ordered) pair of vertices [17]. If (vi, vj) is an edge in a directed graph, , then vi and vj are defined as the parent and child vertices, respectively. The set of neighbours of vi is denoted by and the associated index set is denoted by . A subgraph of is a graph such that and . The subgraph is said to be a spanning subgraph if and have the same vertex set. A path from to is a sequence, of distinct vertices such that for any j = 1, …, k − 1. An undirected (directed) graph is connected (strongly connected) if there is a path between any two distinct vertices. A directed tree is a directed graph where every vertex except the root vertex has exactly one parent vertex and the root vertex can be connected to any other vertices via paths. A spanning tree of is a directed tree which is a spanning subgraph of . The union of a group of graphs , with the same vertex set is a graph with vertex set and edge set .
Lemma 1 (Xiao and Wang [21]).Let Γ be a finite set of r × r SIA matrices with the property that for each sequence S1, S2, …, Sk ∈ Γ of positive length, is SIA. Then if , is scrambling; and for any infinite sequence of S1, S2, … . , of matrices from Γ, there exists a column vector w such that .
Lemma 2 (Xiao and Wang [22]).Let S be a stochastic matrix. If contains at least one spanning tree such that the root vertex of that spanning tree has a self-loop in , then S is SIA.
3 Problem formulation
In this section, we formulate the time synchronisation problem by presenting a model of each clock in the WSN and the communication strategy for exchanging information.
3.1 System model
3.2 Communication strategy
- A1. There exists a positive integer c such that sensor node i transmits its information at least once to any possible neighbours during for any i = 1, …, n and with .
The second interaction topology represents the union of the transmission topologies, , where i = 1,. . , n and , and is modelled by an undirected graph denoted by with vertex set and edge set . If a communication link between sensor node i and j exists at some time instant during the execution of the WSN, then . Let denote the index set of neighbours of sensor node i, where i = 1, …, n. It should be noted that the edges of topology correspond to the existence of communication channels only and they do not guarantee if at some particular time instant, any information has been transmitted on the communication channels. It can be seen that ∀i, s.
The third interaction topology characterises the utilisation of transmitted information in the WSN and is modelled by another time-varying graph, denoted by where i = 1, …, n and , with vertex set and edge set . If the state information from senor node i is used at to compute , then we write . Let denote the index set of the neighbours of sensor node j. We mention here that if sensor node i does not receive any information from its neighbour j during , then it considers the last transmitted (most recent one) information from j to compute its input. We note here that if any sensor node i transmits to j at time instant , then we write , but may not be the update time of j. Hence, the information transmitted by node i may be used by node j either at the present time instant or some future time instants to compute its input.
Fig. 1 portrays an example of a WSN having three sensor nodes which are labelled with i, j and h. The starting times and time-periods of the sensor nodes are different and we let c = 4. The dashed lines represent the time instants when the control update is applied to some sensor node(s). From Fig. 1, it can be seen that at time instant t1, the communication link between node j and i is not available, and node j transmits to node h only. At time instant t2, sensor node h utilises the delayed state information transmitted by senor node j at t1, but transmits its own state information to sensor node i only. We write that , and . At time instants t3 and t4, no communication occurs in the WSN. We can also see that during the time interval , sensor node j successfully transmit information at least once to its neighbours.
- A2. The graph, , is connected.
-
A3. For any two sensor nodes i and j, the following holds
4 Main results
Remark 1.It should be noted that a sensor node i updates its control input at , where i = 1, …, n and . From the definition of time-sequence T, it can be observed that ui(tr) = 0 when , no matter what values αii(tr) takes.
In the literature, a protocol similar to (4) has been presented for synchronised distributed systems in various papers (see e.g. [21, 25–27]). For asynchronous continuous-time systems, a protocol similar to (4) has been presented in [28–30]. For asynchronous discrete-time systems, a protocol similar to (4) has been presented in [11] without time-delays and using reliable communication links. In this paper, we study protocol (4) for asynchronous distributed systems where the transmission links are unreliable, the communication topology is changing (and may not be connected at some time instants), and the protocol has to consider time-delayed state information from neighbours. We now present the following theorem.
Theorem 1.If the WSN satisfies assumptions A1–A3, and the weighting factors belong to Λ and satisfy (5), then the clocks of the sensor nodes achieves time synchronisation using protocol (4).
Lemma 3.If system (7) using protocol (9) achieves the time-synchronisation objective as expressed by (8), then system (1) using protocol (4) achieves time synchronisation described by (3).
Lemma 4.Let where i = 1, …, n. For any sensor node i = 1, …, n and , the number of elements in the set is not greater than m, where , and ⌈g ⌉ denotes the smallest integer not less than g. For any two neighbouring nodes i and j, if node i transmits to node j at tr, then node j utilises the information, transmitted by node i at tr, no longer than tr +m (c −1)+1.
5 Technical analysis
Lemma 5.Let αmin and αmax denote the minimum and maximum elements of Λ. Given the matrix Ψ(tr) as expressed in (11), the following statements hold:
- (a) All non-zero elements of Ψ(tr) are not less than η, where η = [αmin /(nαmax)], and not greater than 1.
- (b) Ψ(tr)1 = 1.
- (c) The possible numerical values of Ψ(tr) are finite.
Proof.By the definition of the matrices Ah(tr), h = 1, …, m (c − 1), we can see that each non-zero element of Ah(tr) is less than 1. A sensor node can have maximum n − 1 neighbours. Let us consider a WSN where sensor node k has n − 1 neighbours, where k = 1, …, n. At a given time instant tr, we consider three extreme possible values of the weighting factors as follows:
- (i) We choose αki(tr) = αmin, where i, k = 1, …, n, and obtain .
- (ii) We choose αkj(tr) = αmin for some neighbour node j, where k = 1, …, n and αki(tr) = αmax, where i = 1, …, n, i ≠ j, and obtain .
- (iii) We choose αki(tr) = αmax, where i, k = 1, …, n, and obtain .
The following lemma present useful results which are required to complete the proof.
Lemma 6 (Xiao and Wang [28]).Let S1, S2, …, Sm be n × n non-negative matrices and let
Using Lemma 5, we observe that Ψ(tr) is a stochastic matrix, ∀r such that r > m (c − 1). We further obtain that during the time interval [tr, tr −m (c −1)], every sensor node receives information at least once from its neighbours. Under assumption (A2), we then conclude that the graph obtained by the union of topologies contains a spanning tree for any value of r such that r > m (c − 1). Applying Lemmas 6 and 2, we can establish that Ψ(tr) is SIA.
6 Numerical examples
In this section, we present two examples to demonstrate the effectiveness of the proposed protocol.
6.1 Example 1: small-size WSN
Node number | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
---|---|---|---|---|---|---|---|---|
time-period, s | 0.05 | 0.01 | 0.1 | 0.04 | 0.02 | 0.01 | 0.1 | 0.2 |
actual starting time, s | 1.4 | 0.3 | 2 | 2.01 | 1 | 0.04 | 0.12 | 0 |
estimated starting time, s | −3.5 | 4.69 | 0 | −12.5 | −13.25 | −15.19 | 20.04 | −7.34 |
value of z | 100 | 100 | 10 | 10 | 100 | 10 | 10 | 10 |
6.2 Example 2: medium-size WSN
7 Concluding remarks
Time synchronisation is a basic assumption in most distributed control and monitoring applications. In this paper, we investigate the design of a distributed time synchronisation protocol for WSNs by borrowing tools from linear control theory and consensus algorithms. The protocol design considers asynchronous framework where the interaction graphs are not connected at some time instants, the communication channels are unreliable and time-delayed information is utilised to compute local control inputs. By employing tools from stochastic matrix and algebraic graph theories, we presented the convergence analysis of the proposed algorithm. Simulation results have been provided to illustrate the effectiveness of the proposed protocol. For future work, the proposed protocol can be tested on an experimental setup.
8 Acknowledgment
The research work was supported by the Natural Sciences and Engineering Research Council of Canada.
10 Appendix
Proof of Lemma 3.Let us consider any initial values of system (7). For any sensor node i at time tr, if there exists s such that , then we compute and apply ui(tr) to sensor node i. Furthermore, for any node i if for any value of s, then we write yi(tr +1) = yi(tr). Therefore, the value of yi(tp) during the interval remains the same, where i = 1, …, n and . By applying protocol (9), if system (7) achieves the time synchronisation objective as expressed by (8), then and we can write the following
Proof of Lemma 4.Let j be the sensor node such that zj τj ≥ zi τi where i = 1, …, n, i ≠ j, . When sensor node j updates its control input at , the maximum number of times any sensor node i can update its control input before the time instant cannot exceed ⌈g ⌉, where i = 1, …, n, i ≠ j. Since there are n − 1 possible values of sensor node i (excluding i = j), we conclude that the number of elements in is not greater than m. Furthermore, using assumption (A1), we can state that the number of elements in is not greater than m (c − 1). □