In control theory, a state observer is a system that provides an estimate of the internal state of a given real system, from measurements of the input and output of the real system. It is typically computer-implemented, and provides the basis of many practical applications.
Knowing the system state is necessary to solve many control theory problems; for example, stabilizing a system using state feedback. In most practical cases, the physical state of the system cannot be determined by direct observation. Instead, indirect effects of the internal state are observed by way of the system outputs. A simple example is that of vehicles in a tunnel: the rates and velocities at which vehicles enter and leave the tunnel can be observed directly, but the exact state inside the tunnel can only be estimated. If a system is observable, it is possible to fully reconstruct the system state from its output measurements using the state observer.
Typical observer model
The state of a linear, time-invariant physical discrete-time system is assumed to satisfy
where, at time , is the plant's state; is its inputs; and is its outputs. These equations simply say that the plant's current outputs and its future state are both determined solely by its current states and the current inputs. (Although these equations are expressed in terms of discrete time steps, very similar equations hold for continuous systems). If this system is observable then the output of the plant, , can be used to steer the state of the state observer.
The observer model of the physical system is then typically derived from the above equations. Additional terms may be included in order to ensure that, on receiving successive measured values of the plant's inputs and outputs, the model's state converges to that of the plant. In particular, the output of the observer may be subtracted from the output of the plant and then multiplied by a matrix ; this is then added to the equations for the state of the observer to produce a so-called Luenberger observer, defined by the equations below. Note that the variables of a state observer are commonly denoted by a "hat": and to distinguish them from the variables of the equations satisfied by the physical system.
The observer is called asymptotically stable if the observer error converges to zero when . For a Luenberger observer, the observer error satisfies . The Luenberger observer for this discrete-time system is therefore asymptotically stable when the matrix has all the eigenvalues inside the unit circle.
For control purposes the output of the observer system is fed back to the input of both the observer and the plant through the gains matrix .
The observer equations then become:
or, more simply,
Due to the separation principle we know that we can choose and independently without harm to the overall stability of the systems. As a rule of thumb, the poles of the observer are usually chosen to converge 10 times faster than the poles of the system .
The previous example was for an observer implemented in a discrete-time LTI system. However, the process is similar for the continuous-time case; the observer gains are chosen to make the continuous-time error dynamics converge to zero asymptotically (i.e., when is a Hurwitz matrix).
For a continuous-time linear system
where , the observer looks similar to discrete-time case described above:
The observer error satisfies the equation
The eigenvalues of the matrix can be made arbitrarily by appropriate choice of the observer gain when the pair is observable, i.e. observability condition holds. In particular, it can be made Hurwitz, so the observer error when .
Peaking and other observer methods
When the observer gain is high, the linear Luenberger observer converges to the system states very quickly. However, high observer gain leads to a peaking phenomenon in which initial estimator error can be prohibitively large (i.e., impractical or unsafe to use). As a consequence, nonlinear high gain observer methods are available that converge quickly without the peaking phenomenon. For example, sliding mode control can be used to design an observer that brings one estimated state's error to zero in finite time even in the presence of measurement error; the other states have error that behaves similarly to the error in a Luenberger observer after peaking has subsided. Sliding mode observers also have attractive noise resilience properties that are similar to a Kalman filter. Another approach is to apply multi observer, that significantly improves transients and reduces observer overshoot. Multi observer can be adapted to every system where High Gain Observer is applicable. Cubic observers are proposed as well to enhance observation performance. These observers contain a cubic term in their estimation error dynamics. A cubic observer may be used to reduce the peaking phenomenon and increase observer performance. The cubic observer is described by the following equations:
The estimation error dynamics of this observer are described as:
The estimation error dynamics will be stable if there exists a positive definite symmetric matrix satisfying:
Matrix can be chosen as . This choice guarantees stability and uniqueness of the origin as the equilibrium point of the estimation error dynamics.
State observers for nonlinear systems
Sliding mode observers can be designed for the non-linear systems as well. For simplicity, first consider the no-input non-linear system:
where . Also assume that there is a measurable output given by
There are several non-approximate approaches for designing an observer. The two observers given below also apply to the case when the system has an input. That is,
Linearizable error dynamics
One suggestion by Krener and Isidori and Krener and Respondek can be applied in a situation when there exists a linearizing transformation (i.e., a diffeomorphism, like the one used in feedback linearization) such that in new variables the system equations read
The Luenberger observer is then designed as
The observer error for the transformed variable satisfies the same equation as in classical linear case.
then the observer is designed as
where is a time-varying observer gain.
Ciccarella, Dalla Mora, and Germani obtained more advanced and general results, removing the need for a nonlinear transform and proving global asymptotic convergence of the estimated state to the true state using only simple assumptions on regularity.
Sliding mode observer
As discussed for the linear case above, the peaking phenomenon present in Luenberger observers justifies the use of a sliding mode observer. The sliding mode observer uses non-linear high-gain feedback to drive estimated states to a hypersurface where there is no difference between the estimated output and the measured output. The non-linear gain used in the observer is typically implemented with a scaled switching function, like the signum (i.e., sgn) of the estimated – measured output error. Hence, due to this high-gain feedback, the vector field of the observer has a crease in it so that observer trajectories slide along a curve where the estimated output matches the measured output exactly. So, if the system is observable from its output, the observer states will all be driven to the actual system states. Additionally, by using the sign of the error to drive the sliding mode observer, the observer trajectories become insensitive to many forms of noise. Hence, some sliding mode observers have attractive properties similar to the Kalman filter but with simpler implementation.
As suggested by Drakunov, a sliding mode observer can also be designed for a class of non-linear systems. Such an observer can be written in terms of original variable estimate and has the form
- The vector extends the scalar signum function to dimensions. That is,
- for the vector .
- The vector has components that are the output function and its repeated Lie derivatives. In particular,
- where is the ith Lie derivative of output function along the vector field (i.e., along trajectories of the non-linear system). In the special case where the system has no input or has a relative degree of n, is a collection of the output and its derivatives. Because the inverse of the Jacobian linearization of must exist for this observer to be well defined, the transformation is guaranteed to be a local diffeomorphism.
- The diagonal matrix of gains is such that
- where, for each , element and suitably large to ensure reachability of the sliding mode.
- The observer vector is such that
- where here is the normal signum function defined for scalars, and denotes an "equivalent value operator" of a discontinuous function in sliding mode.
The idea can be briefly explained as follows. According to the theory of sliding modes, in order to describe the system behavior, once sliding mode starts, the function should be replaced by equivalent values (see equivalent control in the theory of sliding modes). In practice, it switches (chatters) with high frequency with slow component being equal to the equivalent value. Applying appropriate lowpass filter to get rid of the high frequency component on can obtain the value of the equivalent control, which contains more information about the state of the estimated system. The observer described above uses this method several times to obtain the state of the nonlinear system ideally in finite time.
The modified observation error can be written in the transformed states . In particular,
- As long as , the first row of the error dynamics, , will meet sufficient conditions to enter the sliding mode in finite time.
- Along the surface, the corresponding equivalent control will be equal to , and so . Hence, so long as , the second row of the error dynamics, , will enter the sliding mode in finite time.
- Along the surface, the corresponding equivalent control will be equal to . Hence, so long as , the th row of the error dynamics, , will enter the sliding mode in finite time.
So, for sufficiently large gains, all observer estimated states reach the actual states in finite time. In fact, increasing allows for convergence in any desired finite time so long as each function can be bounded with certainty. Hence, the requirement that the map is a diffeomorphism (i.e., that its Jacobian linearization is invertible) asserts that convergence of the estimated output implies convergence of the estimated state. That is, the requirement is an observability condition.
In the case of the sliding mode observer for the system with the input, additional conditions are needed for the observation error to be independent of the input. For example, that
does not depend on time. The observer is then
Multi observer extends High Gain Observer structure from single to multi observer, with many models working simultaneously. This has two layers: the first consists of multiple High Gain Observers with different estimation states, and the second determines the importance weights of the first layer observers. The algorithm is simple to implement and does not contain any risky operations like differentiation. The idea of multiple models was previously applied to obtain information in adaptive control .
Assume that the number of High Gain Observers equals n+1
where is the observer index. The first layer observers consists of the same gain but they differ with the initial state . In the second layer all from observers are combined into one to obtain single state vector estimation
where are weight factors. These factors are changed to provide the estimation in the second layer and to improve the observation process.
Let assume that
where is some vector that depends on observer error .
Some transformation yields to linear regression problem
This formula gives possibility to estimate . To construct manifold we need mapping between and ensurance that is calculable relying on measurable signals. First thing is to eliminate parking phenomenon for from observer error
Calculate times derivative on to find mapping m lead to defined as
where is some time constant. Note that relays on both and its integrals hence it is easily available in the control system. Further is specified by estimation law; and thus it proves that manifold is measurable. In the second layer for is introduced as estimates of coefficients. The mapping error is specified as
where . If coefficients are equal to , then mapping error Now it is possible to calculate from above equation and hence the peaking phenomenon is reduced thanks to properties of manifold. The created mapping gives a lot of flexibility in the estimation process. Even it is possible to estimate the value of in the second layer and to calculate the state .
The Bounding or Interval observers constitute a class of observers that provide two estimations of the state simultaneously: one of the estimations provides an upper bound on the real value of the state, whereas the second one provides a lower bound. The real value of the state is then known to be always within these two estimations.
Mathematically, two Luenberger observers can be used, if is properly selected, using, for example, positive systems properties: one for the upper bound (that ensures that converges to zero from above when , in the absence of noise and uncertainty), and a lower bound (that ensures that converges to zero from below). That is, always
- In-line references
- Khalil, H.K. (2002), Nonlinear Systems (3rd ed.), Upper Saddle River, NJ: Prentice Hall, ISBN 978-0-13-067389-3
- Utkin, Vadim; Guldner, Jürgen; Shi, Jingxin (1999), Sliding Mode Control in Electromechanical Systems, Philadelphia, PA: Taylor & Francis, Inc., ISBN 978-0-7484-0116-1
- Drakunov, S.V. (1983), "An adaptive quasioptimal filter with discontinuous parameters", Automation and Remote Control, 44 (9): 1167–1175
- Bernat, J.; Stepien, S. (2015), "Multi modelling as new estimation schema for High Gain Observers", International Journal of Control, 88 (6): 1209–1222, doi:10.1080/00207179.2014.1000380
- Mohammad Mahdi Share Pasand (2019). "Luenberger-Type Cubic Observers for State Estimation of Linear Systems". arXiv:1909.11978. Cite journal requires
- Krener, A.J.; Isidori, Alberto (1983), "Linearization by output injection and nonlinear observers", System and Control Letters, 3: 47–52, doi:10.1016/0167-6911(83)90037-3
- Krener, A.J.; Respondek, W. (1985), "Nonlinear observers with linearizable error dynamics", SIAM Journal on Control and Optimization, 23 (2): 197–216, doi:10.1137/0323016
- Gauthier, J.P.; Hammouri, H.; Othman, S. (1992), "A simple observer for nonlinear systems applications to bioreactors", IEEE Transactions on Automatic Control, 37 (6): 875–880, doi:10.1109/9.256352
- Hammouri, H.; Kinnaert, M. (1996), "A New Procedure for Time-Varying Linearization up to Output Injection", System and Control Letters, 28 (3): 151–157, doi:10.1016/0167-6911(96)00022-9
- Ciccarella, G.; Dalla Mora, M.; Germani, A. (1993), "A Luenberger-like observer for nonlinear systems", International Journal of Control, 57 (3): 537–556, doi:10.1080/00207179308934406
- Drakunov, S.V. (1992), "Sliding-Mode Observers Based on Equivalent Control Method", Proceedings of the 31st IEEE Conference on Decision and Control (CDC) (Tucson, Arizona, December 16–18): 2368–2370, doi:10.1109/CDC.1992.371368, ISBN 978-0-7803-0872-5
- Narendra, K.S.; Han, Z. (August 2012). "A new approach to adaptive control using multiple models". International Journal of Adaptive Control and Signal Processing. 26 (8): 778–799. doi:10.1002/acs.2269. ISSN 1099-1115.
- Hadj-Sadok, M.Z.; Gouzé, J.L. (2001). "Estimation of uncertain models of activated sludge processes with interval observers". Journal of Process Control. 11 (3): 299–310. doi:10.1016/S0959-1524(99)00074-8.
- Ait Rami, M., Tadeo, F., Helmke, U. (2011), "Positive observers for linear positive systems, and their implications", International Journal of Control 84
- General references