Anytime Reliable Codes for Stabilizing Plants over Erasure Channels
The problem of stabilizing an unstable plant over a noisy communication link is an increasingly important one that arises in problems of distributed control and networked control systems. Although the work of Schulman and Sahai over the past two decades, and their development of the notions of “tree codes” and “anytime capacity”, provides the theoretical framework for studying such problems, there has been scant practical progress in this area because explicit constructions of tree codes with efficient encoding and decoding did not exist. To stabilize an unstable plant driven by bounded noise over a noisy channel one needs real-time encoding and real-time decoding and a reliability which increases exponentially with delay, which is what tree codes guarantee. We prove the existence of linear tree codes with high probability and, for erasure channels, give an explicit construction with an expected encoding and decoding complexity that is constant per time instant. We give sufficient conditions on the rate and reliability required of the tree codes to stabilize vector plants and argue that they are asymptotically tight. This work takes a major step towards controlling plants over noisy channels, and we demonstrate the efficacy of the method through several examples.
In control theory, the output of a dynamical system is observed and a controller is designed to regulate its behavior. The controller needs to react and generate control signals in real-time. In most traditional control systems, the controller and the plant are colocated and hence there is no measurement loss. There are increasingly many applications such as networked control systems  and distributed computing  where systems are remotely controlled and where measurement and control signals are transmitted across noisy channels. This necessitates a need to reliably communicate the measurement and control signals by correcting for the errors introduced by the channels. Although Shannon’s information theory is concerned with reliable transmission of a message from one point to another over a noisy channel, the reliability is achieved at the price of large delays which may lead to instability when they occur in the feedback loop of a control system. Hence, we need practical real-time encoding and decoding schemes with appropriate reliability for controlling systems over lossy networks.
Consider a control system with a single observer that communicates with the controller over a lossy communication channel and where the feedback link from the controller to the plant is noiseless. When the channel is rate-limited and deterministic, significant progress has been made (see eg.,[3, 4]) in understanding the bandwidth requirements for stabilizing open loop unstable systems. When the communication channel is stochastic,  provides a necessary and sufficient condition on the communication reliability needed over such a channel to stabilize an unstable scalar linear process, and proposes the notion of feedback anytime capacity as the appropriate figure of merit for such channels. In essence, the encoder is causal and the probability of error in decoding a source symbol that was transmitted time instants ago should decay exponentially in the decoding delay .
Although the connection between communication reliability and control is clear, very little is known about error-correcting codes that can achieve such reliabilities. Prior to the work of , and in a different context,  proved the existence of codes which under maximum likelihood decoding achieve such reliabilities and referred to them as tree codes. Note that any real-time error correcting code is causal and since it encodes the entire trajectory of a process, it has a natural tree structure to it.  proves the existence of nonlinear tree codes yet gives no explicit constructions and/or efficient decoding algorithms. Much more recently  proposed efficient error correcting codes for unstable systems where the state grows only polynomially large with time. So, for linear unstable systems that have an exponential growth rate, all that is known in the way of error correction is the existence of tree codes which are, in general, non-linear. Moreover, the existence results are not with a “high probability”. When the state of an unstable scalar linear process is available at the encoder,  and  develop encoding-decoding schemes that can stabilize such a process over the binary symmetric channel and the binary erasure channel respectively. But little is known in the way of stabilizing partially observed vector-valued processes over a stochastic communication channel.
The subject of error correcting codes for control is in its relative infancy, much as the subject of block coding was after Shannon’s seminal work in . So, a first step towards realizing practical encoder-decoder pairs with anytime reliabilities is to explore linear encoding schemes. We consider rate causal linear codes which map a sequence of -dimensional binary vectors to a sequence of dimensional binary vectors where is only a function of . Such a code is anytime reliable if there exist constants and a delay such that at all times , .
The contributions of this paper are as follows: 1. We show that linear tree codes exist and further, that they exist with a high probability. 2. For the binary erasure channel, we propose a maximum likelihood decoder whose average complexity of decoding is constant per each time iteration and for which the probability that the complexity at a given time exceeds decays exponentially in . 3. We also prove asymptotically tight sufficient conditions on the rate and exponent needed to stabilize vector-valued processes over a noisy channel. As a consequence, we can efficiently stabilize a partially observed unstable linear process over a binary erasure channel without any channel feedback.
In Section II, we introduce the notation and set up the problem. In Section III, we introduce the ensemble of time invariant codes and show that they are anytime reliable with a high probability. In Section IV, we present a simple decoding algorithm for the BEC and in Section V, we derive sufficient conditions for stabilizing unstable linear systems over noisy channels. We present some simulations in Section VIII to demonstrate the efficacy of the decoding algorithm.
Ii Problem Setup
We will begin by introducing some notation
For any matrix , , i.e., .
largest eigen value of in magnitude.
For a vector , denotes the component of .
, i.e., a column with 1’s.
For , denotes component-wise inequality.
Consider the following dimensional unstable linear system with scalar measurements. Assuming that the system is observable, without loss of generality, it can be cast in the following canonical form.
where , is the control input and, and are bounded process and measurement noise variables, i.e., and . Note that the characteristic polynomial of is .
The measurements are made by an observer while the control inputs are applied by a remote controller that is connected to the observer by a noisy communication channel. Naturally, the measurements will need to be encoded by the observer to provide protection from the noisy channel while the controller will need to decode the channel outputs to estimate the state and apply a suitable control input . This can be accomplished by employing a channel encoder at the observer and a decoder at the controller. For simplicity, we will assume that the channel input alphabet is binary. Suppose one time step of system evolution in (1) corresponds to channel uses111In practice, the system evolution in (1) is obtained by discretizing a continuous time differential equation. So, the interval of discretization could be adjusted to correspond to an integer number of channel uses, provided the channel use instances are close enough.. Then, at each instant of time , the operations performed by the observer, the channel encoder, the channel decoder and the controller can be described as follows. The observer generates a bit message, , that is a causal function of the measurements, i.e., it depends only on . Then the channel encoder causally encodes to generate the channel inputs . Note that the rate of the channel encoder is . Denote the channel outputs corresponding to by , where denotes the channel output alphabet. Using the channel outputs received so far, i.e., , the channel decoder generates estimates of , which, in turn, the controller uses to generate the control input . This is illustrated in Fig. 1. Note that we do not assume any channel feedback. Now, define
Thus, is the probability that the earliest error is steps in the past.
Definition 1 (Anytime reliability)
We say that an encoder-decoder pair is anytime reliable if
In some cases, we write that a code is anytime reliable. This means that there exists a fixed such that the code is anytime reliable.
We will show in Section V (Theorem V.1) that anytime reliability is a sufficient condition to stabilize (1) in the mean squared sense222can be easily extended to any other norm. In what follows, we will demonstrate causal linear codes which under maximum likelihood decoding achieve such exponential reliabilities.
Iii Linear Anytime Codes
As discussed earlier, a first step towards developing practical encoding and decoding schemes for automatic control is to study the existence of linear codes with anytime reliability. We will begin by defining a causal linear code.
Definition 2 (Causal Linear Code)
A causal linear code is a sequence of linear maps , and hence can be represented as
We denote . Note that a tree code is a more general construction where need not be linear. Also note that the associated code rate is . The above encoding is equivalent to using a semi-infinite dimensional block lower triangular generator matrix, , whose entries are clear from (3) or equivalently as a semi-infinite dimensional block lower triangular parity check matrix, (the parity check matrix satisfies .)
where333While for a given generator matrix, the parity check matrix is not unique, when is block lower, it is easy to see that can also be chosen to be block lower. and . In order to ensure that the code rate is equal to the design rate , needs to be full rank for every , where is the leading principal minor of . This will happen if is full rank for all . The existence results that follow imply the existence of anytime reliable whose code rate is same as the design rate.
We will present all our results for binary input output symmetric channels444which can be easily extended to more general memoryless channels. The Bhattacharya parameter for such channels is defined as
where and denote the channel output and input, respectively. We will begin by proving the existence of such codes that are anytime reliable over a finite time horizon, , i.e., under ML decoding . We will then prove their existence for all time. Due to space limitations, proofs for all the results in this section are presented in a companion paper, .
Iii-a Finite Time Horizon
Over a finite time horizon, , a causal linear code is represented by a block lower triangular parity check matrix . The following Theorem guarantees the existence of a that is anytime relable.
For each time , rate and exponent such that
there exists a causal linear code that is anytime reliable.
is the smaller root of the equation , where is the binary entropy function. Theorem III.1 proves the existence of finite dimensional causal linear codes, , that are anytime reliable for decoding instants upto time . In the following subsection, we demonstrate the existence of semi-infinite causal linear codes, , that are anytime reliable for all decoding instants. We also show that such codes drawn from an appropriate ensemble are anytime reliable with a high probability. The key is to impose a Toeplitz structure on the parity check matrix.
Iii-B Time Invariant Codes
Consider causal linear codes with the following Toeplitz structure
The superscript in denotes ‘Toeplitz’. is obtained from in (4) by setting for . Due to the Toeplitz structure, we have the following invariance, for all . The notion of time invariance is analogous to the convolutional structure used to show the existence of infinite tree codes in . The code will be referred to as a time-invariant code. This time invariance obviates the need to union bound over all time and hence allows us to prove that such codes which are anytime reliable are abundant.
Definition 3 (The ensemble )
The ensemble of time-invariant codes, , is obtained as follows, is any full rank binary matrix and for , the entries of are chosen i.i.d according to Bernoulli(), i.e., each entry is 1 with probability and 0 otherwise.
Note that being full rank implies that is full rank for every . For the ensemble , we have the following result
Theorem III.2 (Abundance of time-invariant codes)
For any rate and exponent such that
if is chosen from , then
Note that by choosing small, we can trade off better rates and exponents with sparser parity check matrices. Note that for BEC(), and for BSC(), . For the Binary Symmetric Channel (BSC) with bit flip probability and for , the threshold for rate in Theorem III.2 becomes . It turns out that this can be strengthened as follows.
Theorem III.3 (Tighter bounds for BSC())
For any rate and exponent such that
if is chosen from , then
Iv Decoding over the BEC
Owing to the simplicity of the erasure channel, it is possible to come up with an efficient way to perform maximum likelihood decoding at each time step. We will show that the average complexity of the decoding operation at any time is constant and that it being larger than decays exponentially in . Consider an arbitrary decoding instant , let be the transmitted codeword and let denote the corresponding channel outputs. Recall that denotes the leading principal minor of . Let denote the erasures in and let denote the columns of that correspond to the positions of the erasures. Also, let denote the unerased entries of and let denote the columns of excluding . So, we have the following parity check condition on , . Since is known at the decoder, is known. Maximum likelihood decoding boils down to solving the linear equation . Due to the lower triangular nature of , unlike in the case of traditional block coding, this equation will typically not have a unique solution, since will typically not be full rank. This is alright as we are not interested in decoding the entire correctly, we only care about decoding the earlier entries accurately. If , then corresponds to the earlier time instants while corresponds to the latter time instants. The desired reliability requires one to recover with an exponentially smaller error probability than . Since is lower triangular, we can write as
Let denote the orthogonal complement of , ie., . Then multiplying both sides of (6) with diag, we get
If has full column rank, then can be recovered exactly. The decoding algorithm now suggests itself, i.e., find the smallest possible such that has full rank and it is outlined in Algorithm 1.
Suppose, at time , the earliest uncorrected error is at a delay . Identify and as defined above.
Starting with , partition
where correspond to the erased positions up to delay .
Check whether the matrix has full column rank.
If so, solve for in the system of equations
Increment and continue.
Suppose the earliest uncorrected error is at time , then steps 2), 3) and 4) in Algorithm 1 can be accomplished by just reducing into the appropriate row echelon form, which has complexity . The earliest entry in is at time implies that it was not corrected at time , the probability of which is . Hence, the average decoding complexity is at most which is bounded and is independent of . In particular, the probability of the decoding complexity being is at most . The decoder is easy to implement and its performance is simulated in Section VIII. Note that the encoding complexity per time iteration increases linearly with time. This can also be made constant on average if the decoder can send periodic acks back to the encoder with the time index of the last correctly decoded source bit.
V Sufficient Conditions for Stabilizability
Consider an unstable dimensional linear system whose state space equations in canonical form are given by (1), i.e., , and recall that the characteristic polynomial of is . Suppose the observer does not have any feedback from the controller, in particular, it does not have access to the control inputs. Then we can stabilize such a system in the mean squared sense over a noisy channel provided that the rate and exponent of the anytime reliable code used to encode the measurements satisfy the following sufficient condition.
Theorem V.1 (No Feedback to the Observer)
It is possible to stabilize (1) in the mean squared sense with an anytime code provided is controllable and
If the observer knows the control inputs, it turns out that one can make do with lower rates. This is stated as the following Theorem
Theorem V.2 (Observer Knows the Control Inputs)
When the observer has access to the control inputs, it is possible to stabilize (1) in the mean squared sense with an anytime code provided is controllable and
where . Moreover
The superscript in denotes ‘feedback’ to emphasize the fact that the observer has access to the control inputs. Before proceeding further, we will give a brief outline of the proofs for Theorems V.1 and V.2 (details are in Section VII). At each time , using the channel outputs received received till , we bound the set of all possible states that are consistent with the estimates of the quantized measurements using a hypercuboid, i.e., a region of the form , where and the inequalities are component-wise. If , then from Lemma VII.1, . The anytime exponent is determined by the growth of in the absence of measurements, hence the bound . The bound on the rate is determined by how fine the quantization needs to be for to be bounded asymptotically.
V-a The Limiting Case
The sufficient conditions derived above are for the case when the measurements are encoded every time step. Alternately, one can encode the measurements every, say , time steps, and consider the asymptotic rate and exponent needed as grows. Note that this amounts to working with the system matrix . So, one can calculate this limiting rate and exponent by writing the eigen values of , , as and letting scale. The following asymptotic result allows us to compare the sufficient conditions above with those in the literature (eg., see [5, 3, 11]).
Theorem V.3 (The Limiting Case)
Write the eigen values of , , in the form . Letting scale, and converge to , and and converge to , where
In addition, the upper bounds on in (10) also converges to .
See Section -C of the Appendix. \qed
For stabilizing plants over deterministic rate limited channels,  showed that a rate , where is as in (11), is necessary and sufficient. So, asymptotically the sufficient conditions for the rate in Theorems V.1 and V.2 are tight. Though the above limiting case allows one to obtain a tight and an intuitively pleasing characterization of the rate and exponent needed, it should be noted that this may not be operationally practical. For, if one encodes the measurements every time steps, even though Theorem V.3 guarantees stability, the performance of the closed loop system (the LQR cost, say) may be unacceptably large because of the delay we incur. This is what motivated us to present the sufficient conditions in the form that we did above.
V-B A Comment on the Trade-off Between Rate and Exponent
Once a set of rate-exponent pairs that can stabilize a plant is available, one would want to identify the pair that optimizes a given cost function. Higher rates provide finer resolution of the measurements while larger exponents ensure that the controller’s estimate of the plant does not drift away; however, we cannot have both. One can either coarsely quantize the measurements and protect the bits heavily or quantize them moderately finely and not protect the bits as much. One can easily cook up examples using an LQR cost function with the balance going either way. Studying this trade-off is integral to making the results practically applicable.
Vi Tighter Bounds on the Anytime Exponent
From Theorem V.1, using the technique outlined in the previous section, one needs an exponent . It turns out that a smaller exponent of suffices. The idea is to alternately bound the set of all possible states that are consistent with the estimates of the quantized measurements using an ellipsoid . This can be seen as an extension of the technique proposed in  to filtering using quantized measurements. If , . So, let .
In view of the duality between estimation and control, we can focus on the problem of tracking (1) over a noisy communication channel. For, if (1) can be tracked with an asymptotically finite mean squared error and if is stabilizable, then it is a simple exercise to see that there exists a control law that will stabilize the plant in the mean squared sense, i.e., . In particular, if the control gain is chosen such that is stable, then will stabilize the plant, where is the estimate of using channel outputs up to time . Hence, in the rest of the analysis, we will focus on tracking (1). The control input therefore is assumed to be absent, i.e., .
We will first present a recursive state estimation algorithm using the channel outputs and then state the sufficient conditions needed for the estimation error to be appropriately bounded using such a filter. Recall that the channel outputs corresponding to the coded bits are . Let and suppose using , we have . Note that, since , the measurement update provides information of the form , which one may call a slab. would then be an ellipsoid that contains the intersection of the above slab with , in particular one can set it to be the minimum volume ellipsoid covering this intersection. Lemma .1 gives a formula for the minimum volume ellipsoid covering the intersection of an ellipsoid and a slab. Note that the width of the slab above tends to be smaller if the observer has access to the control inputs than when it does not. For the time update, it is easy to see that for any and , contains the state whenever contains . This leads to the following Lemma. For convenience, we write for .
Lemma VI.1 (The Ellipsoidal Filter)
Whenever contains , for each , the following filtering equations give a sequence of ellipsoids that, at each time , contain .
where and can be calculated in closed form using Lemma .1.
Theorem VI.2 (No Feedback to the Observer)
It is possible to stabilize (1) for in the mean squared sense with an anytime code provided is controllable and
Theorem VI.3 (Observer Knows the Control Inputs)
When the observer has access to the control inputs, it is possible to stabilize (1) in the mean squared sense with an anytime code provided is controllable and
where . Moreover
The analysis will proceed in two steps. We will first determine a sufficient condition on the number of bits per measurement, , that are required to track (1) when these bits are available error free. We will then determine the anytime exponent needed in decoding these source bits when they are communicated over a noisy channel.
At each time, we bound the set of all possible states that are consistent with the quantized measurements using a hypercuboid, i.e., a region of the form , where and the inequalities are component-wise. In what follows, we call , the uncertainty in using , i.e., quantized measurements up to time . For convenience, let . Then, the time update is given by the following Lemma.
Lemma VII.1 (Time Update)
The time update relating and is given by
From the system dynamics in (1), the following is immediate
In short, the above equations amount to . \qed
The measurement update depends on whether or not the observer has access to the control inputs.
Vii-a Observer does not know the control inputs
In this case, the observer simply quantizes the measurements according to a regular lattice quantizer with bin width , i.e., the quantizer is defined by , where . Assuming that the rate, , is large enough, we will first find the steady state value of the recursion for , which we then use to determine . At each time , the observer can communicate the measurement to within an uncertainty of , i.e., the estimator knows that the measurement lies in an interval of width . Adding to this the effect of the observation noise, , the estimator knows to within an uncertainty of . Note that for . Combining this observation with Lemma VII.1, the following is fairly straightforward.
Lemma VII.2 (Steady State value of without feedback)
If , then , where and with .
Now, we need to go back and calculate . Observe that does not depend on the starting value . So we just need . From the above Lemma, . So, we need
The minimum required rate is obtained by letting , in which case we need and this gives in Theorem V.1.
Vii-B Observer knows the control inputs
In this case, the observer can infer that the uncertainty in at the estimator side is . So, it can use the bits to shrink this to . Taking into account the observation noise, the uncertainty in after the measurement update will be given by and for . Combining this with Lemma VII.1, the overall recursion for is given by
Noting that , the above recursion is bounded if and only if is stable. It follows that is stable for all , where .
Now consider tracking (1) over a noisy channel. Intuitively, the desired anytime exponent is determined only by the growth of the tracking error in the absence of measurements, which by Lemma VII.1 is governed by . This is independent of whether or not control input is available at the observer. This explains the value of in Theorems V.1 and V.2. Making this argument rigorous is simple and has not been presented here due to space limitations.
We present two examples, one scalar and one vector, and stabilize them over a binary erasure channel with erasure probability . The number of channel uses per measurement is fixed to . In both cases, time invariant codes , for an appropriate rate , were randomly generated and decoded using Algorithm 1.
Viii-a Example 1
Consider stabilizing the scalar unstable process obtained by setting , in (1) with and being uniform on and respectively. Using Theorem V.1, inorder to stabilize in the first moment sense, one needs a code with exponent and . Using Theorem III.2, causal linear codes exist for . A quick calculation shows that for , . The observer does not have access to the control inputs, so an regular lattice quantizer with bin-width was used to quantize the measurements. The control input is just . The four curves in Fig 3 correspond to the following sets of values: (), (), () and (). Fig 2 shows the plot of a sample path of the above process with before and after closing the loop, the fact that the plant has been stabilized is clear.
By easing up on the rate , i.e., by performing coarser quantization but better error correction, the control performance of the code ensemble improves. This is demonstrated in Fig 3. For each value of from 3 to 6, 1000 time invariant codes were generated at random from . Each such code was used to control the process above over a time horizon of . The axis denotes the proportion of codes for which is below a prescribed value, e.g., with , was less than 200 for of the codes while with , this fraction increases to more than . The axis has been capped at 1000 for clarity. This shows that one can tradeoff utilization of communication resources and control performance.
Viii-B Example 2
Consider a 3-dimensional unstable system (1) with , , and . Each component of and is generated i.i.d and truncated to [-2.5,2.5]. The eigen values of are while . The observer has access to the control inputs and we use the hypercuboidal filter outlined in Section VII. Using Theorem V.2, the minimum required bits and exponent are given by and . The control input is . For , . The competition between the rate and the exponent in determining the LQR cost is evident when we look at the LQR cost in Fig 4. When , the error exponent is large. So, at any time , the decoder decodes all the source bits with a high probability. Hence, the limiting factor on the LQR cost is the resolution the source bits provide on the measurements. But when , the measurements are available almost losslessly but the decoder makes errors in decoding the source bits. Fig 4 suggest that the best choice of rate is .
We presented an explicit construction of anytime reliable tree codes with efficient encoding and decoding over erasure channels. We also gave several sufficient conditions on the rate and reliability required of the tree code to guarantee stability, and argued that they are asymptotically tight. Although the work described here is a major step towards controlling plants over noisy channels, there are many issues to study and resolve. The tradeoff between rate and reliability (how finely to quantize the measurements vs. how much error protection to use) to optimize system performance (such as an LQR cost) remains to be studied, as well as how best to quantize and generate control signals. Furthermore, the problem of constructing efficiently decodable tree codes for other classes of channels, such as the BSC and the AWGNC, remains open.
-  J. Baillieul and P.J. Antsaklis, “Control and communication challenges in networked real-time systems,” Proceedings of the IEEE, vol. 95, no. 1, pp. 9 –28, Jan 2007.
-  LJ Schulman, “Coding for interactive communication,” Information Theory, IEEE Transactions on, vol. 42, no. 6, pp. 1745 – 1756, 1996.
-  GN Nair and RJ Evans, “Stabilizability of stochastic linear systems with finite feedback data rates,” SIAM Journal on Control and Optimization, vol. 43, no. 2, pp. 413–436, 2005.
-  Alexey S. Matveev and Andrey V. Savkin, Estimation and Control over Communication Networks (Control Engineering), Birkhauser, 2007.
-  Anant Sahai and Sanjoy Mitter, “The necessity and sufficiency of anytime capacity for stabilization of a linear system over a noisy communication link - part i: Scalar systems,” Information Theory, IEEE Transactions on, vol. 52, no. 8, pp. 3369–3395, 2006.
-  R Ostrovsky, Y Rabani, and LJ Schulman, “Error-correcting codes for automatic control,” Information Theory, IEEE Transactions on, vol. 55, no. 7, pp. 2931 – 2941, 2009.
-  Serdar Yuksel, “A random time stochastic drift result and application to stochastic stabilization over noisy channels,” Communication, Control, and Computing, 2009. Allerton 2009. 47th Annual Allerton Conference on, pp. 628–635, 2009.
-  T. Simsek, R. Jain, and P. Varaiya, “Scalar estimation and control with noisy binary observations,” Automatic Control, IEEE Transactions on, vol. 49, no. 9, pp. 1598 – 1603, 2004.
-  CE Shannon, “A mathematical theory of communication,” Bell System Technical Journal, vol. 27, pp. 379 – 423 and 623 – 656, July and Oct 1948.
-  Ravi Teja Sukhavasi and Babak Hassibi, “Linear error correcting codes with anytime reliability,” http://arxiv.org/abs/1102.3526, 2011.
-  P. Minero, M. Franceschetti, S. Dey, and G.N. Nair, “Data rate theorem for stabilization over time-varying feedback channels,” Automatic Control, IEEE Transactions on, vol. 54, no. 2, 2009.
-  F. Schweppe, “Recursive state estimation: Unknown but bounded errors and system inputs,” Automatic Control, IEEE Transactions on, vol. 13, no. 1, Feb. 1968.
-  Osman Güler and Filiz Gürtuna, “The extremal volume ellipsoids of convex bodies, their symmetry properties, and their determination in some special cases,” arXiv, vol. math.MG, Sep 2007.
-  A Sluis, “Upperbounds for roots of polynomials,” Numerische Mathematik, vol. 15, no. 3, pp. 250–262, 1970.
-a The Minimum Volume Ellipsoid
Lemma .1 (Theorem 6.1 )
The minimum volume ellipsoid covering
where , is given by
If , then ,
If and , then
If and , then