LMIs in Control/Click here to continue/Optimal control systems/Discrete-time Hinf-Optimal Observer

LMIs in Control/Click here to continue/Optimal control systems/Discrete-time Hinf-Optimal Observer

In many applications, perhaps even most, the state of the system cannot be directly known. In this case, you will need to strategically to measure key system outputs that will make the system states indirectly observable. Observers need to converge much faster than the system dynamics in order for their estimations to be accurate. Optimal observer synthesis is therefore advantageous. In this LMI, we seek to optimize the H-infinity norm, which conceptually is minimizing the maximum magnitude of error in the observer.

The System

edit

The system needed for this LMI is a discrete-time LTI plant  , which has the state space realization:

 

where   and is the state vector,   and is the state matrix,   and is the input matrix,   and is the exogenous input,   and is the output matrix,   and is the feedthrough matrix,   and is the output, and it is assumed that   is detectable.

The Data

edit

The matrices  .

The Optimization Problem

edit

An observer of the form:

 

is to be designed, where   is the observer gain.

Defining the error state  , the error dynamics are found to be

 ,

and the performance output is defined as

 .

The observer gain   is to be designed such that the   of the transfer matrix from   to  , given by

 

is minimized.

The LMI: Discrete-Time Hinf-Optimal Observer

edit

The discrete-time  -optimal observer gain is synthesized by solving for  ,  , and   that minimize J  subject to  , and

 

Conclusion:

edit

The  -optimal observer gain is recovered by   and the   norm of   is  . This matrix of observer gains can then be used to form the optimal observer formulated by:

 

Implementation

edit

This implementation requires Yalmip and Sedumi.

https://github.com/rezajamesahmed/LMImatlabcode/blob/master/Hinfobsdiscretetime.m

edit

Mixed H2-Hinfinity discrete time observer

Discrete-Time_H2-Optimal_Observer

edit

This LMI comes from Ryan Caverly's text on LMI's (Section 5.2.2):

Other resources:

Return to Main Page:

edit