This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution license (http://creativecommons.org/licenses/by/3.0/).
This paper is concerned with networked estimation, where sensor data are transmitted over a network of limited transmission rate. The transmission rate depends on the sampling periods and the quantization bit lengths. To investigate how the sampling periods and the quantization bit lengths affect the estimation performance, an equation to compute the estimation performance is provided. An algorithm is proposed to find sampling periods and quantization bit lengths combination, which gives good estimation performance while satisfying the transmission rate constraint. Through the numerical example, the proposed algorithm is verified.
Recently, networked monitoring systems are becoming increasingly popular, where sensor data are transmitted to a monitoring station through wired or wireless networks [1, 2]. In a monitoring station, estimation algorithms (such as a Kalman filter) are used to estimate the system states. A network between sensor nodes and a monitoring station can induce many problems such as time delays, packet dropouts, and limited bandwidth, where they depend on network types and scheduling methods. We note that the network issue (for example, what kinds of scheduling methods should be used?) itself is a big research area [3]. Also time delays and packet dropouts [4–7] are one of most important problems in networked estimation problems.
In this paper we focus on the case where there are many sensors and the network bandwidth is limited. For example, suppose there are three sensors (A,B,C) and 90 bytes/s can be transmitted over a network. How does one assign 90 bytes/s to each sensor? One method is to assign 30 bytes/s to each sensor. If sensor A monitors fast changing value and sensor B monitors slowly changing value, it might not be the best strategy: more data rate should be assigned to sensor A and the data rate of sensor B should be reduced. These issues are discussed quantitatively in this paper.
Note that the data rate of each sensor depends on the sampling frequency and the quantization bit length. For example, (100 Hz, 8 bit) case and (50 Hz, 16 bit) case have the same data rate (100 bytes/s). Thus given the same data rate, we have many possible combinations of the sampling frequencies and the quantization bit lengths. We first investigate how the sampling frequency and the quantization bit length affect the estimation performance and then propose a method to choose the sampling frequency and the quantization bit length of each sensor.
Using different sampling frequencies for different sensors is discussed in [10], where the sampling frequencies is chosen by minimizing the Kalman filter error covariance. In [11], the sampling frequency assignment algorithm is given, where a sampling frequency is chosen from a finite discrete set. In [12], a similar sampling frequency assignment is considered, where location of sensors and cost of measurement are also considered in the optimization problem. We note there are other attempts, where an event-based transmission method [8, 9] is used instead of a periodic transmission. In this paper, we assume that periodic sampling of sensor data.
Quantization is an extensively studied area [13]. Relating the estimation problem, a logarithm quantizer is proposed in [14]. Although theoretically appealing, the quantizer is applied to the innovation of a filter rather than to an output directly. The effect of quantization can be reduced by treating the quantization error as measurement noises as in [15]. In [16] and [17], quantization bit length assignment algorithms are proposed, where the bit length is computed by minimizing a performance index. The performance index is not directly related to estimation performance (e.g., the filter error covariance).
Simultaneous optimization of the sampling frequency and the quantization bit length has not been reported yet. In this paper, both parameters are selected so that the estimation performance is optimized given the transmission rate constraint.
The paper is organized as follows. In Section 2., estimation performance P is defined, which depends on the sampling periods and quantization bit lengths. In Section 3., a suboptimal algorithm to compute sampling period and quantization bit length combination is proposed. Through numerical examples, the proposed method is verified in Section 4. and conclusion is given in Section 5.
Problem Formulation
In this section, estimation performance is defined when the sampling frequency and the quantization bit length of each sensor are given. How to optimize the sampling frequency and the quantization bit length is discussed in Section 3.
Consider a linear time-invariant system given by
x˙(t)=Ax(t)+w(t)y(t)=Cx(t)+v(t)where x ∈ R^{n} is the state we want to estimate and y ∈ R^{p} is the measurement. Process noise w(t) and measurement noise υ(t), which are uncorrelated, zero mean white Gaussian random processes, satisfy:
E{w(t)w(s)′}=Qδ(t−s)E{v(t)v(s)′}=Rδ(t−s)E{w(t)v(s)′}=0where E{·} denotes the mean and Q and R are a process noise covariance and a measurement noise covariance, respectively.
Let T_{i} be the sampling period of the i-th output and thus the corresponding sampling frequency is 1/T_{i}. We assume that T_{i} is an integer multiple of constant T: that is, T_{i} satisfies the following condition:
Ti=MiTwhere M_{i} is an integer and T is the base sampling period.
Let l_{i} be the quantization bit length of the i-th output. Let y_{max,i} be the absolute maximum value of the i-th output: that is,
|yk,i|≤ymax,iwhere y_{k,i} is the i-th element of y_{k}. The index k is used to denote the discrete time index. We assume that the uniform quantizer is used. Let δ_{i} be the quantization level of the i-th output, which is given by
δi=ymax,i2li−1
Let q_{k} be the quantization error in y_{k}, then the following is satisfied
|qk,i|≤δi2where q_{k,i} is the i-th element of q_{k}.
Now we are going to model (1) in the discrete time considering the sampling period T_{i} and the quantization length bit l_{i}. Assume M_{i} = 1 (1 ≤ i ≤ p) temporarily:
xk+1=Φxk+wkyk=Cxk+vk+qkwhere x_{k} ≜ x(kT), Φ ≜ exp(AT) and y_{k} is the quantized output of y(kT). Process noise w_{k} and υ_{k} are uncorrelated and satisfy
E{wkwk′}=Qd,E{vkvk′}=Rwhere
Qd≜∫0Texp(Ar)Qexp(Ar)′dr
We treat the quantization error as an additional measurement noise as in (6), which is also considered in [15]. The quantization error q_{k} is assumed to be uncorrelated with w_{k} and υ_{k}. If the uniform distribution is assumed, the covariance is given by
E{qkqk′}=Δ=Diag(δ1212,⋯,δp212)
Now the temporary assumption (M_{i} = 1) is removed. The second equation of (6) is no longer true and y_{k,i} is available if k is an integer multiple of M_{i}. Let ỹ_{k} be a collection of all available y_{k,i} at time k. To define ỹ_{k} in a more formal way, let {r_{k}_{,1}, r_{k}_{,2}, . . ., r_{k,pk}} be a set of all row numbers of available y_{k}. Then ỹ_{k} is given by
y˜k≜[yk,rk,1_yk,rk,2_⋯_yk,rk,pk]
Similarly υ̃_{k} and q̃_{k} can be defined and C̃_{k} is defined as follows:
C˜k=[Crk,1_Crk,2_⋯_Crk,pk]where C_{i} is the i-th row of C. Thus the measurement equation at time k is given by
y˜k=C˜kxk+v˜k+q˜kwhere
E{v˜kv˜k′}=R˜kE{q˜kq˜k′}=Δ˜kR̃_{k} ∈ R^{pk×pk} is a matrix extracted from R so that R̃_{k}(i, j) = R(r_{k,i}, r_{k,j}). Δ̃_{k} is defined in the same way.
For example, if M_{1} = 1 and M_{2} = 2, then ỹ_{k} and C̃_{k} are given in Table 1. We can see that C̃_{k} is periodic with the period 2, which is the least common multiple of M_{1} = 1 and M_{2} = 2.
Generally C̃_{k} is periodic with the period M, where M is the least common multiple of {M_{1}, M_{2}, . . ., M_{p}}.
Using the first equation of (6) repeatedly b times, we have
xb+a=Φbxa+∑i=0b−1Φb−1−iwa+i
It is known that a periodic system can be transformed into a time-invariant system [18, 19]. From (12) with a = kM and b = M, we have
x(k+1)M=ΦMxkM+∑i=0M−1ΦM−1−iwMk+iAlso from (12) with a = kM − j and b = j, we have
xkM=ΦjxkM−j+∑i=0j−1Φj−1−iwkM−j+iMultiplying Φ^{−}^{j}, we obtain a backward equation:
xkM−j=Φ−jxkM−∑i=0j−1Φ−1−iwkM−j+i
Let x̄_{k}, w̄_{k}ȳ_{k}, ῡ_{k} and q̄_{k} be defined by
x¯k≜xkMw¯k≜[wkMwkM+1⋮wkM+M−1],y¯k≜[y˜(k−1)M+1y˜(k−1)M+2⋮y˜kM]v˜k≜[v˜(k−1)M+1v˜(k−1)M+2⋮v˜kM],q¯k≜[q˜(k−1)M+1q˜(k−1)M+2⋮q˜kM]Combining (13), (15) and (10), we have the following time invariant system:
x¯k+1=A¯x¯k+B¯w¯ky¯k=C¯x¯k+v¯k+q¯k+D¯w¯k−1where
A¯=ΦMB¯≜[ΦM−1ΦM−2⋯I]C¯≜[C˜1Φ−M+1C˜2Φ−M+2⋮C˜M−1Φ−1C˜M]D¯≜[0C˜1Φ−1C˜1Φ−2⋯C˜1Φ−M+100C˜2Φ−1⋯C˜2Φ−M+2⋮⋮⋮⋱⋮000⋯C˜M−1Φ−1000⋯0]
We will apply a Kalman filter to (16). Note that
E{w¯kw¯k′}=Q¯where
Q¯=Diag(Qd,Qd,⋯,Qd,Qd)E{(v¯k+q¯k+D¯w¯k−1)(v¯k+q¯k+D¯w¯k−1)′}=R¯where
R¯=Diag(R˜1,⋯,R˜M)+Δ¯+D¯Q¯D¯′Δ¯=Diag(Δ˜1,⋯,Δ˜M).E{B¯w¯k−1(v¯k′+q¯k′+(D¯w¯k−1)′)}=M¯=B¯Q¯D¯′
It is standard to apply a Kalman filter to (16) using (17), (18) and (19): the measurement update and the time update equations are given as follows [20]:
We will use P as an estimation performance, where P is the steady-state value of
Pk−:
P≜limk→∞Pk−In the steady state, we have
Pk+1−=Pk−=P. Inserting this into the Kalman filter equation, we have the following Riccati equation:
P=A¯PA¯′−(A¯PC¯′+A¯M¯)(C¯PC¯′+R¯+C¯M¯+M¯′C¯′)−1(A¯PC¯′+A¯M¯)′+B¯Q¯B¯′
If the sampling period T_{i} and the quantization bit length l_{i} are given, the corresponding estimation performance can be computed from (20).
<italic>T<sub>i</sub></italic> and <italic>l<sub>i</sub></italic> Optimization
In this section, a method to select the sampling period T_{i} and the quantization bit l_{i} are proposed. The main trade-off is between the transmission rate and the estimation performance.
The optimization problem can be formulated as follows:
minTi,liλ′DiagPsubject toΣi=1pliTi≤Smaxwhere λ ∈ R^{n} is a weighting vector. Note that the transmission rate S is given by
S≜∑i=1pliTiand S_{max} is the transmission rate constraint. The transmission rate S is defined as the sum of each sensor data rate without considering packet overhead. When we apply the algorithm to a specific network, the transmission rate S should be modified to take the packet overhead into account.
Note that T_{i} = M_{i}T and P depends on M, which is the least common multiple of M_{1}, . . ., M_{p}. To make M constant, M_{i} is assumed to satisfy
Mi=2mi(miis an integer)mi,min≤mi≤mi,maxWith this assumption, the least common multiple M of all possible combinations of M_{i} = 2^{mi} is given by
M=2maxi{mi,max}We assume l_{i} satisfies
li,min≤li≤li,max
If the number of combinations is small, P can be computed for all possible combinations. For a case that the number is too large, we propose a suboptimal algorithm. The proposed algorithm is based on the following lemma.
Lemma 1Let P (m_{1}, l_{1}, . . ., m_{i}, l_{i}, . . ., m_{p}, l_{p}) be the solution to (20). With the assumption (23), the following is satisfied.
Proof: We will prove with a simple case with m_{1} = 0 m_{2} = 0, T = 1, M = 2, and p = 2: note that T_{1} = 2^{m1}T = T and T_{2} = 2^{m2}T = T. C̄ for m_{1} = 0 and m_{2} = 0 is given by
C¯m1=0,m2=0=[[C1C2C1C2]]The subscript (m_{1} = 0, m_{2} = 0) is used to emphasize that m_{1} = 0 and m_{2} = 0. Also let R̄_{m1=0,m2=0} be R̄ defined in (18) and P(0, l_{1}, 0, l_{2}) be a solution to (20) when m_{1} = 0 and m_{2} = 0.
Now consider a case with m_{1} = 0 and m_{2} = 1 Instead of computing P(0, l_{1}, 1, l_{2}) using (20) with C̄_{m1=0,m2=1}, we can compute P(0, l_{1}, 1, l_{2}) using (20) with m_{1} = 0 and m_{2} = 0 except that R̄_{m1=0,m2=0} is replaced by R̄_{modified}, which is defined by
R¯modified=R¯(m1=0,m2=0)+Diag(0,∞,0,0).Note that adding ∞ to the (2, 2) element of R̄_{m1=0,m2=0} is equivalent to ignoring the second output of y_{k} when k is an integer multiple of 2. Thus P(0, l_{1}, 1, l_{2}) computed in this way is the estimation error covariance when m_{1} = 0 and m_{2} = 1. Since R̄_{modified} ≥ R̄, we have from the monotonicity of the Riccati equation (see Corollary 5.2 in [21])
P(0,l1,0,l2)≤P(0,l1,1,l2)The general case for (25) can be proved similarly.
Proving the second inequality is more straightforward from the monotonicity of the Riccati equation [21] and from the fact
R¯(m1,l1,⋯,mi,li+1,⋯,mp,lp)≤R¯(m1,l1,⋯,mi,li,⋯,mp,lp)
The third inequality (27) is just a combination of (25) and (26):
P(m1,l1,⋯,mi−1,li+1,⋯,mp,lp)≤P(m1,l1,⋯,mi,li+1,⋯,mp,lp)≤P(m1,l1,⋯,mi,li,⋯,mp,lp)
To explain Lemma 1, we consider a simple example with the following parameters:
p=2m1,min=m2,min=0,m1,max=m2,max=4l1,min=l2,min=9,l1,max=l2,max=16
There are 5 × 8 × 5 × 8 = 1, 600 possible combinations (see Figure 1). Using the result in Lemma 1, we know that P is the smallest when (m_{1}, l_{1}, m_{2}, l_{2}) = (0, 16, 0, 16) and the largest when (m_{1}, l_{1}, m_{2}, l_{2}) = (4, 9, 4, 9). On the other hand, the transmission rate S is the largest when (m_{1}, l_{1}, m_{2}, l_{2}) = (0, 16, 0, 16) and the smallest when (m_{1}, l_{1}, m_{2}, l_{2}) = (4, 9, 4, 9). Note that m_{i}− 1 and l_{i} + 1 in Lemma 1 corresponds to the upper and right combination of (m_{i}, l_{i}), respectively. Thus as we move the combination from the left-bottom corner toward the right-top corner, λ′P becomes smaller while the transmission rate increases.
In the proposed algorithm, we start from the left-bottom corner combination and move the combination toward the right-top corner combination while the transmission constrained is satisfied. The proposed algorithm is stated in pseudo-codes.
(m_{i}, l_{i}) = (m_{i,max}, l_{i,min}), i = 1, . . ., p
compute λ′P and S
(P denotes P(m_{1}, l_{1}, . . ., m_{p}, l_{p}) and S is from (22))
while (S < S_{max})
L = { }
for i = 1:p
if (m_{i} > m_{i,min})
L = L ∪ {(m_{1}, l_{1}, . . ., m_{i} − 1, l_{i}, . . ., m_{p}, l_{p})}
if (l_{i} < l_{i,max})
L = L ∪ {(m_{1}, l_{1}, . . ., m_{i}, l_{i} + 1, . . ., m_{p}, l_{p})}
end
for every element of L, compute G̃_{j}G˜j=λ′P−λ′P˜jS˜j−S where P̃_{j} = P for the j-th element of L
and S̃_{j} = S for the j-th element of L
(m_{i,old}, l_{i,old}) = (m_{i}, l_{i}), i = 1, . . ., p
Find the maximum of G_{j} and choose the
corresponding combination as (m_{i}, l_{i})
compute λ′P and S
end
Choose the combination (m_{i,old}, l_{i,old})
Note that G̃_{j} represents the estimation performance improvement per transmission rate increase. For each given (m_{i}, l_{i}), we choose (m_{i} − 1, l_{i}) and (m_{i}, l_{i} + 1) for the next combination candidates. There are at most 2^{p} combinations. Among the combinations, we find a combination of which G̃_{j} is the largest. This process is continued until the current transmission rate exceeds S_{max}.
The number of combinations tested in the proposed algorithm is small compared with the brute force search. For example, the proposed algorithm starts with the top-right-most combination (m_{1}, l_{1}, m_{2}, l_{2}) = (0, 16, 0, 16) and moves toward bottom-left-most combination (m_{1}, l_{1}, m_{2}, l_{2}) = (4, 9, 4, 9) at each step until S ≤ S_{max} is no longer satisfied. Unfortunately, there is no guarantee that the solution found by the proposed method is near the optimal solution. In Section 4., it is shown, however, through a numerical example that the gap between the suboptimal and optimal solution is not large.
We note that the optimization algorithm is applied once when the networked system is designed. Once the sampling period T_{i} and quantization length l_{i} are determined, they are programmed in each sensor node. Thus no additional computation is needed in the sensor node.
Numerical Example
In this section, the proposed method is verified for the one dimensional attitude estimation problem. The state is defined by
x(t)=[θθ˙θ¨]where θ is the attitude we want to estimate. An accelerometer-based inclinometer and a gyroscope are used as sensors. The system model is given by
A=[010001000],C=[100010]Q=[000000000.2],R=[0.0056000.003]The values given in (28), y_{max}_{,1} = 3.1416, y_{max}_{,2} = 2.6180 and T = 1 are used.
The optimization problem (21) with S_{max} = 500 and λ = [1 0 0]′ is considered. λ is a natural choice since we want to estimate θ.
First the optimization problem is solved by a brute force search: all possible combinations are examined. The optimal solution is given by
(m1,l1,m2,l2)=(2,10,2,10)and S and λP at the combination are
S=500,λP=0.00259.
Secondly the proposed suboptimal algorithm is used, where the solution is given by
(m1,l1,m2,l2)=(2,9,2,9)and S and λP at the combination are
S=450,λP=0.00260.The proposed method was able to find a nearly optimal solution with less computation time. In the brute force search, 479 combinations are tested while 21 combinations are tested in the proposed algorithm.
To test whether the proposed λP is a good indicator of the estimation performance, the data is generated with Matlab and tested with a Kalman filter. The estimation performance is evaluated with the following:
Pexperiment=1N∑k,1Nθerror,k2where N is the number of data and θ_{error,k} = θ − θ̂. Note that θ̂ is computed by [1 0 0] ◯_{k}. We computed P_{experiment} for all possible combinations and the minimizing combination is given by
(m1,l1,m2,l2)=(2,9,2,10)and S and P_{experiment} at the combination is
S=475,Pexperiment=0.00159
It can be seen that the optimal solution predicted by λP nearly coincides with the real optimal solution. To see how similar λP and P_{experiment} are, λP and P_{experiment} are plotted for different (m_{1}, l_{1}, m_{2}, l_{2}) combinations. Since the parameter space is four dimensional, it is not easy to visualize the result. Thus we fix (m_{1}, l_{1}) = (2, 9) and plot λP and P_{experiment} for (m_{2}, l_{2}) combinations in Figures 2 and 3. The data marked with “o” satisfies S ≤ S_{max} and the data marked with “*” does not satisfy S ≤ S_{max}.
It can be seen that the trend of λP is almost similar to that of P_{experiment}. Thus λP can be used to predict the estimation performance given the sampling periods and the quantization bit lengths.
The transmission rate S is given in Figure 4. To see the trade-off between S and the estimation performance, S and λP are given for three (m_{1}, l_{1}, m_{2}, l_{2}) combinations in Table 2. We can see that when S decreases (that is, if we transmit less data), λP tends to increase (that is, the estimation performance degrades).
Finally, to test the efficiency of the proposed algorithm, we applied the proposed algorithm to 100 random models, where A is randomly generated and the same C as in the previous simulation is used. In the brute force method, 479 combinations are tested as in the previous simulation since the same setting is used. In the proposed algorithm, the number of combinations tested is between 13 and 21. That is, the number of combinations tested in the worst case is 21. Thus we can see the convergence rate is relatively fast. To see the accuracy of the proposed algorithm, the following value is computed:
Accuracy=λ100×(Pproposed−Poptimal)Poptimalwhere P_{optimal} is computed using the brute force method. In the 100 trials, the worst case accuracy was 7.26% while the average value is 1.73%. Thus we believe the proposed method can find near optimal value while avoiding the large computation.
Conclusions
In this paper, attitude estimation over a network with a transmission rate constraint is considered. The transmission rate depends on the sampling periods and the quantization bit lengths. Basically the problem is trade-off between the estimation performance and the transmission rate, where the parameters are the sampling period and the quantization bit length.
First, how the sampling period and the quantization bit length affect the estimation performance is investigated. To do this, we introduced an augmented system and defined the estimation performance P. Secondly, the trade-off problem is formulated as an optimization problem and a suboptimal algorithm is provided. Through numerical examples, we showed that the defined estimation performance matches the real estimation performance in the sense that graphs of P and the real estimation performance are similar. We also showed the proposed algorithm could find a reasonably good solution.
While defining P, we made assumption (23), which makes the derivation of P easier but not essential. Removing that assumption and obtaining a general result is a future work. Also to test an algorithm using a real network is a future work.
This work was supported by National Research Foundation of Korea Grant funded by the Korean Government (No. 2009-0067447).
ReferencesZhaoFGuibasLChoiDHKimDSWireless fieldbus for networked control systems using LR-WPANWuWArapostathisAOptimal sensor querying: General markovian and LQG models with controlled observationsHeXWangZZhouDHRobust fault detection for networked systems with communication delay and data missingWeiGWangZShuHRobust filtering with stochastic nonlinearities and multiple missing measurementsDongHWangZGaoJRobust H_{∞} Filtering for a class of nonlinear networked systems with multiple stochastic communication delays and packet dropoutsLeeIChoiSDiscrimination of visual and haptic rendering delays in networked environmentsMiskowiczMSend-on-delta concept: An event-based data reporting strategySuhYSNguyenVHRoYSModified Kalman filter for networked monitoring systems employing a send-on-delta methodMehraRKOptimization of measurement schedules and sensor designs for linear dynamic systemsDoLMKSuhYSNguyenVHNetworked Kalman filter with sensor transmission interval optimizationProceedings of SICE-ICASE International Joint ConferenceBusan, Korea18–21 October 200610471052KaduSCBhushanMGudiROptimal sensor network design for multirate systemsGershoAGrayRMEliaNMitterSKStabilization of linear systems with limited informationLuong-VanDTordonMJKatupitiyaJCovariance profiling for an adaptive Kalman filter to suppress sensor quantization effectsProceedings of the 43rd IEEE Conference on Decision and ControlParadise Island, Bahamas14–17 December 200426802685SunSLinJXieLXiaoWQuantized Kalman filteringProceedings of 22nd IEEE International Symposium on Intelligent ControlSingapore26–28 September 2007712WenCTangXGeQDecentralized quantized Kalman filter with limited bandwidthProceedings of Second International Symposium on Intelligent Information Technology ApplicationShanghai, China21–22 December 2008291295LeeDJTomizukaMMultirate Optimal State Estimation with Sensor FusionProceedings of the American Control Control ConferenceDenver, CO, USA4–6 June 200328872892ChenTFrancisBBrownRGHwangPYCClementsDJWimmerHKMonotonicity of the optimal cost in the discrete-time regulator problem and Schur complementsFigures and Tables
P (estimation error covariance) and S (transmission rate) relationship according to combinations.
λP plot with (m_{1}, l_{1}) = (2, 9) (o: S ≤ S_{max}, *: S > S_{max})
P_{experiment} plot with (m_{1}, l_{1}) = (2, 9) (o: S ≤ S_{max}, *: S > S_{max})
S plot with (m_{1}, l_{1}) = (2, 9)
ỹ_{k} and C̃_{k} example (M_{1} = 1 and M_{2} = 2)