• No results found

Optimal Information Transmission Algorithm

3.6 Multiple Sensors

3.6.1 Optimal Information Transmission Algorithm

Let ˆxi(k|l) denote the estimate ofx(k) evolving as in (3.38) based on all the measurements of sensor

as thelocalestimates and error covariances respectively. We can also define the correspondingglobal quantities ˆx(k|l) and P(k|l) that depend on measurements from all the N sensors up to time l. Without loss of generality, denote the sensor that transmits on the packet erasure link as sensor 1. The optimal information processing algorithm proceeds as follows.

1. Encoder for sensor 1: At each time stepk1,

• Obtain measurement y1(k−1) and run a local Kalman filter to obtain ˆx1(k−1|k−1)

andP1(k−1|k−1).

• Calculate

θ1(k−1) = (P1(k−1|k−1))−1xˆ1(k−1|k−1)−(P1(k−1|k−2))−1xˆ1(k−1|k−2).

• Calculate the global error covariance matricesP(k−1|k−1) andP(k−1|k−2) using

(P(k−1|k−1))−1 = (P(k−1|k−2))−1+ N X i=1 (Ci)T R1v,i −1 (Ci) P(k1|k2) = AP(k2|k2)AT +Rw. • Obtainγ(k1) = (P(k1|k2))−1AP(k2|k2). • Finally, calculate i1(k) =θ1(k−1) +γ(k−1)i1(k−2)

withi1(−2) =i1(−1) = 0 and transmit it.

2. Encoder for all other sensors 2, 3, · · ·,N:At each time stepk1, transmit the measurement yi(k−1).

3. Decoder:At each time stepk2,

• For allj= 2, 3,· · ·,N, useyj(k−2) to come up withij(k−2) using an algorithm similar

to the one followed by the encoder for sensor 1.

• Maintain a local variable ˆxdec(k|k) which is updated as follows.

(a) Ifλ1(k−1) = ‘received0, all links successfully transmitted packets. In that case, set

the estimate through

(P(k−2|k−2))−1xˆdec(k−2|k−2) =

N

X

j=1

(b) Ifλ1(k−1) = ‘dropped0, sensor 1 could not transmit any information. In this case,

propagate the estimate ˆxdec(k

−3|k3) using the measurementsyi(k−2) fori= 2,

3,· · ·,N through a Kalman filter.

• Finally, declare the estimate of the decoder ˆxdec(k

|k2) as ˆ

xdec(k

|k2) =A2xˆdec(k

−2|k2).

Proposition 3.13 In the above algorithm,

ˆ

xdec(k|k2) = ˆx(k|Imax(k)).

Proof Consider a centralized Kalman filter that has access to measurements from a sensor of the form y(k) =Cx(k) +v(k) where C=         C1 C2 .. . CN         v(k) =         v1(k) v2(k) .. . vN(k)         . (3.39)

LetRbe the covariance matrix of the noisev(k). Since the measurement noisesvi(k)’s are indepen-

dent of each other, R is block-diagonal. Thus, the measurement update equations of the Kalman filter are (P(k|k))−1 = (P(k|k−1))−1+CTR−1C = (P(k|k1))−1+X i h (Pi(k|k))−1−(Pi(k|k−1))−1 i (P(k|k))−1x(kˆ |k) = (P(k|k1))−1x(kˆ |k1) +CTR−1y(k) = (P(k|k−1))−1x(kˆ |k−1) +X i h (Pi(k|k))−1xˆi(k|k)−(Pi(k|k−1))−1xˆi(k|k−1) i .

Recognizing that the time update equations are

P(k|k−1) = AP(k−1|k−1)AT +Rw

ˆ

we can write (P(k|k))−1x(kˆ |k) = (P(k|k−1))−1x(kˆ |k−1) +X i (Pi(k|k))−1xˆi(k|k)−(Pi(k|k−1))−1xˆi(k|k−1) = X i Ii(k),

where the termIi(k) is the contribution of the measurements of thei-th sensor and is given by

Ii(k) = Θi(k) + Γ(k)Θi(k−1) + Γ(k)Γ(k−1)Θi(k−2) +· · ·+ (Γ(k)Γ(k−1)· · ·Γ(1)) Θi(0),

where

Θi(k) = (Pi(k|k))−1xˆi(k|k)−(Pi(k|k−1))−1xˆi(k|k−1)

Γ(k) = (P(k|k1))−1AP(k1|k1).

The covariance matrices do not involve any measurements and can be calculated off-line.

Note that because of our assumptions about the time-line, even if there were no packet drops, at time step k, the estimator can only calculate ˆx(k|k2). Thus, the information needed from sensor j to calculate the global estimate at time step k is precisely Ij(k−2). Now for the case

when λ(k1) = ‘received’, the decoder in the algorithm has access to ij(k−2)’s that are the

same asIj(k−2)’s. Thus, it can calculate the centralized Kalman filter output ˆx(k|k−2) which

is ˆx(k|Imax(k)). For the case whenλ(k1) = ‘dropped’, the decoder propagates the best Kalman

filter estimate ˆxdec(k3|k3) with measurements from all other sensors except the 1st sensor.

Thus, in this case too, ˆxdec(k|k−2) = ˆx(k|Imax(k))

Proposition 3.13 also presents the solution to the estimation problem depicted in Figure 3.5. We can use an encoder and a decoder described in the algorithm at each sensor. The decoder has access to local measurements at every time step while the other sensor transmits information over a packet dropping channel. Thus, the situation is identical to the one considered above for the caseN = 2.

Remarks

1. Note that the computation and memory required for calculatingIi(k) does not grow with time

since we can use the recursion

Ii(k) = Θi(k) + Γ(k)Ii(k−1).

for any packet dropping process, ability to include large delays and packet re-ordering etc. hold. 3. The algorithm, as proposed, does not extend to multiple packet dropping channels. The crucial assumption used in the algorithm that prevents this extension is that the encoder for sensor 1 uses the fact that all other sensors will transmit their information at every time step. For multiple channels, this assumption will not be satisfied. Extension of the algorithm to such cases remains an open problem.

3.6.2

Analysis of the Proposed Algorithm

We now model the channel erasures as occurring according to a Markov chain and analyze the stability and performance of the estimation error covariance using our algorithm. Let the transition probability matrix of the Markov chain be denoted byQ. We are once again interested in stability in the sense of bounded second moment, i.e., the system is stable if the error

x(k)−xˆdec(k|k−2)

have bounded covariance as time k evolves. This is, in turn, equivalent to the condition that the error

x(k)xˆdec(k|k1)

have bounded covariance as time kevolves. For simplicity, we consider only the caseN = 2. The extension to the general case is straight-forward.

Denote byy(k) the vector formed by stackingy1(k) andy2(k). We have three dynamical systems.

The plant statex(k) evolves as in (3.38). The state ˆx(k) of a centralized Kalman filter with access to measurements from both sensors at every time step would evolve as

ˆ

x(k+ 1) =Aˆx(k) +Kc(k) (y(k)Cˆx(k)). Finally, the state ˆxdec(k) of the estimator at the decoder evolves according to

ˆ xdec(k+ 1) =      Aˆxdec(k) +Kd(k) y

2(k)−C2xˆdec(k) channel in state 1

ˆ

x(k+ 1) otherwise.

Denotee(k) =x(k)x(k) andˆ t(k) = ˆx(k)xˆdec(k). Note thatt(k) evolves according to

t(k+ 1) =     

A−Kd(k)C2t(k) +L1(e(k)) +L2(v1(k)) +L3(v2(k)) channel in state 1

0 otherwise,

where Ln(β) denotes a term linear in β. Now e(k) has bounded covariance matrices by our de-

tectability assumption. Also, the measurement noisesvi(k)’s have bounded covariance. Fort(k) to

be of bounded variance, the Markov jump system of (3.40) needs to be stable. Further, note that since our encoder/decoder design is optimal, if the system is unstable with our design, it is not stabilizable by any other design. We can thus say the following.

Proposition 3.14 Consider the estimation and control problem defined in Section 3.6 for the case of two sensors. Let the packet erasure channel is modeled as a Markov chain with transition probability matrixQ= [qij]. Let the matrix pair(A, B)be stabilizable and the matrix pair (A, C)be detectable.

The system is stabilizable, in the sense that the variance of the state is bounded, if and only if q22|λmax A¯

|2<1,whereλ max A¯

is the maximum magnitude eigenvalue of the unobservable part of matrix A when (A, C2) is put in the observer canonical form and q22 is the probability that the

channel drops packets at two consecutive time steps. Further, if the system is stabilizable, one controller and encoder/decoder design that stabilizes the system is given in Proposition 3.13.

We can also carry out a performance analysis along the lines of the single sensor case. We omit the details here.