We saw that one algorithm that ensures that the estimator (or the sink node) has ac- cess toId,max(k) and hence can calculate the mmse estimate of x(k) is A
1. However,
that algorithm involves an increasing amount of memory and transmission at each node. We will now describe an algorithm A2 that achieves the same performance at
the expense of constant memory, processing, and transmission (modulo the transmis- sion of the time stamp). The algorithm proceeds as follows. At each time step k, every node i takes the following actions:
(a) Calculate its estimate ˆxi(k) of the state x(k) based on any data received at the previous time step k−1 and its previous estimate. The estimate can be computed using a switched linear filter, as shown later.
(b) Affix a time stamp corresponding to the latest measurement used in the cal- culation of the estimate in step 1, and transmit the estimate on the outgoing edges.
(c) Receive data on the incoming edges, if any, and store it for the next time step.
To prove that algorithm A2 is indeed optimal, we need the following intermediate
result.
Lemma 5.2. Consider any edge (i, j) and any packet drop pattern. At time step k,
let the node i transmit the measurement set
Sij ={y(0), y(1),· · · , y(l)}
on the edge (i, j) if algorithm A1 is executed. If, instead, algorithm A2 is executed,
the node i transmits the estimate
ˆ
along the edge (i, j) at time step k.
Proof. The proof readily follows by induction on the time step k. For time k = 1, the source node s transmits {y(0)} along all edges of the form (s, .) while following algorithm A1 and the estimate ˆx(1|y(0)) while executing algorithm A2. If any edge
is not of the form (s, .), there is no information transmitted along that edge in either algorithm. Thus, the statement is true for k = 1. Now assume that the statement is true for k = n. Consider the node i at time k = n+ 1. If the node i is the source node, the statement is true by an argument similar to that at k = 1. Let us assume that nodei is not the source node. Consider all edges that transmitted data at time step k =n to node i. Let each of the edges (j, i)∈ NI(i) transmits the measurement set
Sji ={y(0), y(1),· · · , y(t(j))}
if algorithm A1 is being executed. Also, denote the measurement set that the node i
has access to from time step k =n−1 as
Sii={y(0), y(1),· · · , y(t(i))}.
Note that at time step k = n, the node i transmitted the set Sii along all outgoing edges inNO(i). Let v be the node for which
t(v) = max{t(i)∪ {t(j)|(j, i)∈ NI(i)}}.
Then at timek =n+1, the nodeitransmits along all outgoing edges the measurement set
S1 ={y(0), y(1),· · · , y(t(v))}.
the statement being true at time step k =n, the edges (j, i) transmit the estimate
ˆ
x(n|Sji) = ˆx(n|{y(0), y(1),· · · , y(t(j))})
for all nodejs such that (j, i)∈ NI(i). Also, since at timek=nthe node transmitted
Sii on any edge (i, .) in algorithm A
1, it has access to the estimate ˆx(n|Sii) when
algorithm A2 is executed. Clearly, the set Svi is the superset of all sets Sii and Sji
where (j, i)∈ NI(i) and v have been defined above. Thus, the estimate that the node
i calculates at timek =n+ 1 is ˆx(n+ 1|Svi). But the measurement set Svi is simply the set S1. Hence, at time step k = n+ 1, the node i transmits along all outgoing
edges the estimate ˆx(n+ 1|S1). Thus, the statement is true at time step k =n+ 1
along all edges of the form (i, .). Since the nodei was arbitrary, the statement is true for all edges in the graph. Thus, we have proven that if the statement is true at time
k =n, it is true at time k =n+ 1. But it is also true at time k = 1. Thus, by the principle of mathematical induction, it is true at all time steps.
Note that we have also shown that if at time step k, the node has access to the measurement setSiifrom time stepk−1 when algorithmA
1is executed, it has access
to the estimate ˆx(k−1|Sii) from time step k−1 when algorithmA
2 is executed. We
can now state the following result.
Proposition 5.2. The algorithm A2 is optimal in the sense that it leads to the min-
imum possible error covariance at any node at any time step.
Proof. Consider a node i. At time k, let j ∈ {i} ∪ {q|(q, i) ∈ NI(i)} such that
λji(k−1) = “received00. Denote the measurement set that is transmitted from node
j to nodei at time stepk under algorithmA1 bySji. As in the proof of Lemma 5.2,
of nodei at time k under algorithm A1 is
ˆ
xA1(k) = ˆx(k|Svi).
From Lemma 5.2, when algorithmA2 is executed at time stepk, the nodeihas access
to the estimates ˆx(k−1|Sji). Once again, since Svi is the superset of all the setsSji, the estimate of node i at time stepk is simply
ˆ
xA2(k) =Axˆ(k−1|Svi) = ˆx(k|Svi).
Thus we see that for any node i, the estimates ˆxA1(k) and ˆxA2(k) are identical for any time stepk for any packet drop pattern. But algorithmA1 leads to the minimum
possible error covariance at each node. Thus, algorithm A2 is optimal.
The following remarks regarding the above algorithm are in order:
(a) The step of calculating the estimate at each node in the algorithm A2 can
be implemented as follows. The source node implements a Kalman filter and updates its estimate at every time step with the new measurement received. Every other nodei checks the time-stamps on the data coming on the incoming edges. The time-stamps correspond to the latest measurement used in the calculation of the estimate being transmitted. Then, node i updates its time- stamp using the relation
ti(k) = max j∈{q|(q,i)∈NI(i)}∪{i}
λji(k−1)tj(k−1). (5.5)
Suppose the maximum of (5.5) is achieved by noden∈ {q|(q, i)∈ NI(i)} ∪ {i}. Then the nodei updates its estimate as
ˆ
where ˆxt(k) denotes the estimate of the state x(k) maintained by the node t. Thus, the processing can be done as a switched linear filter.
(b) We have made no assumptions on the packet drop pattern. The algorithm provides the optimal estimate based on Id,max(k) for an arbitrary packet drop
sequence, irrespective of whether the packet drop can be modeled as an i.i.d. process or a more sophisticated model like a Markov chain or even adversar- ial. The algorithm results in the optimal estimate at every time step for any instantiation of the packet drop sequence, not merely in the optimal average performance. We also do not assume any knowledge of the statistics of the packet drops at any of the nodes.
(c) We have proved that the algorithm is optimal for any node. Thus we do not need to assume only one sink. The algorithm is also optimal for multiple sources if all sources have access to measurements from the same sensor. For multiple sources with each source obtaining measurements from a different sensor, the problem remains open.
(d) Any received data vector ˆx(k|j) “washes away” the effect of all previous packet drops. It ensures that the estimate at the receiving node is identical to the case when all measurementsy(0),y(1), · · ·,y(j) were available, irrespective of which previous data packets had been dropped.
(e) A priori we had not made any assumption about a node transmitting the same message along all the out-going edges. It turned out that in this optimal algo- rithm, the messages are the same along all the edges. This property is especially useful in the context of wireless communication, which is inherently broadcast in nature.
protocol in which a node transmits only if it updated its estimate based on data arriving on an incoming edge. This will not degrade the performance but reduce the number of transmissions, especially if packet drop probabilities are high.
In a sense our algorithm corresponds to communication of information over a digital channel, while the strategy of using no encoding is an analog communication scheme. Our algorithm allows the intermediate nodes to play the role of repeaters that help to limit the effect of the channel by decoding and re-encoding the data along the way. In analog channels, repeaters make no difference in the received SNR and hence the signal quality. Similarly, in our setting, if raw measurements are being transmitted, presence of intermediate nodes does not help in improving the estimation performance.
5.4.1
Presence of Delays
If the links introduce random delays, the algorithm remains optimal irrespective of the possibility of packet rearrangements. Each node, at every time step, still calculates the estimate of the statex(k) based on any information received at that time step and the previous estimate from its memory, affixes the correct time stamp, and transmits it along out-going edges. Further, if the graph is finite, the stability conditions of the algorithm we present in the next section also do not change.
5.4.2
Channel Between the Controller and the Actuator
If we look at the proof of the separation principle given above, the crucial assumption was that the controller knows what control input is applied at the plant. Thus, if we have a channel between the controller and the plant, the separation principle would still hold, provided there is a provision for acknowledgment from the receiver to
the transmitter for any packet successfully received over that channel.3 The optimal
information processing algorithm presented above carries over to this case as well. We can also ask the question of the optimal encoder-decoder design for the controller- actuator channel. The optimal decoding at the actuator end will depend on the information that is assumed to be known to the actuator (e.g., the cost matrices Q
and R and the measurements from the sensor). Design of the decoder for various information sets is an interesting open problem.
For Sections 5.5 and 5.6, we will analyze the stability and performance of the above algorithm by assuming that packets are erased independently from one time step to the next and are uncorrelated in space. We will return to more general packet dropping processes in Section 5.8.