LMIs in Control/pages/Discrete Time H2 Optimal Dynamic Output Feedback Control

Discrete-Time H2-Optimal Dynamic Output Feedback Control 

A discrete time system operates on a discrete time signal input and produces a discrete time signal output. They are used in digital signal processing, such as digital filters for images or sound. The class of discrete time systems that are both linear and time invariant, known as discrete time LTI systems.

A Dynamic Output feedback controller is designed for a Discrete Time system, to minimize the H2 norm of the closed loop system with exogenous input $$w_{k}$$ and performance output $$z_{k}$$.

The System
Discrete-Time LTI System with state space realization $$(A_d,B_d,C_d,D_d)$$ $$ \begin{align} x_{k+1}&=A_dx_k + B_{d1}w_k + B_{d2}u_k\\ z_{k}&=C_{d1}x_k + D_{d11}w_k+ D_{d12}u_k\\ y_k &=C_{d2}x_k + D_{d21}w_k+ D_{d22}u_k\\ \end{align}$$

The Data
The matrices: System $$ (A_d,B_{d1},B_{d2},C_{d1},C_{d1},D_{d11},D_{d12},D_{d21},D_{d22}), X_1,Y_1,Z, ,X_2,Y_2 $$

Controller $$ (A_{dc},B_{dc},C_{dc},D_{dc}) $$

The Optimization Problem
The following feasibility problem should be optimized:

$$ \mu $$ is minimized while obeying the LMI constraints.

The LMI:
Discrete-Time H2-Optimal Full-State Feedback Control

The LMI formulation

H2 norm < $$\mu$$

$$ \begin{align} X_{1}, Y_{1}\in {S^{n_x}}; Z \in {S^{n_z}}; \mu \in {R_{>0}} \;\\ A_{dn} \in {R^{n_x*n_x}}; B_{dn} \in {R^{n_x*n_y}}; C_{dn} \in {R^{n_u*n_x}}; D_{dn} \in {R^{n_u*n_y}};\\ &X_{1}>0\\ &Y_{1}>0\\ &Z>0\\ \begin{bmatrix}X_{1} & 1 & X_{1}A_d+B_{dn}C_{d2} & A_{dn} & X_{1}B_{d1}+B_{dn}D_{d21}\\
 * & Y_{1} & A_d+B_{d2}D_{dn}C_{d2} & A_dY_{1}+B_{d2}C_{dn} & B_{d1}+B_{d2}D_{dn}D_{d21}\\
 * & * & X_{1} & 1 & 0\\
 * & * & * & Y_{1} & 0\\
 * & * & * & * & 1\end{bmatrix}&>0,\\

\begin{bmatrix}Z & C_{d1}+D_{d12}D_{dn}C_{d2} & C_{d1}Y_{1}^T+D_{d12}C_{dn}\\
 * & X_{1} & 1\\
 * & * & Y_{1}\end{bmatrix}&>0,\\

D_{d11}+D_{d12}D_{dn}D_{d21}=0\\

\begin{bmatrix}X_{1} & 1\\
 * & Y_{1}\end{bmatrix}&>0,\\

trZ<\mu ^2 \end{align}$$

The controller is recovered by

$$ \begin{align} &A_{dc} = A_{dk}-B_{dc}(1-D_{d22}D_{dc})^{-1}D_{d22}C_{dc}\\ &B_{dc} = B_{dk}(1-D_{d22}D_{dc})\\ &C_{dc} = (1-D_{dc}D_{d22})C_{dk}\\ &D_{dc} = 1+D_{dk}D_{d22})^{-1}D_{dk}\\ \end{align}$$

where, $$ \begin{align} \begin{bmatrix}A_{dk} & B_{dk}\\ C_{dk} & D_{dk}\end{bmatrix}&= \begin{bmatrix}X_{2} & X_{1}B_{d2}\\ 0 & 1\end{bmatrix}^{-1} (\begin{bmatrix}A_{dn} & B_{dn}\\ C_{dn} & D_{dn}\end{bmatrix} -\begin{bmatrix}X_{1}A_{d}Y_{1} & 0\\ 0 & 0\end{bmatrix}) \begin{bmatrix}Y_{2}^T & 0\\ C_{d2}Y_{1} & 1\end{bmatrix}^{-1}

\end{align}$$ and the matrixes $$X_2$$ and $$Y_2$$ satisfies $$X_2Y_2^T = 1 - X_{1}Y_{1}$$

Given $$X_1$$ and $$Y_1$$, the matrices $$X_2$$ and $$Y_2$$ can be found using a matrix decomposition, such as a LU decomposition or a Cholesky decomposition.

If $$D_{d11} = 0$$, $$D_{d12}$$ ≠ 0, and $$D_{d21}$$ ≠ 0, then it is often simplest to choose $$D_{dn} = 0$$ in order to satisfy the equality constraint

Conclusion:
The Discrete-Time H2-Optimal Dynamic Output feedback controller is the system $$ (A_{dc},B_{dc},C_{dc},D_{dc}) $$

Implementation
A link to CodeOcean or other online implementation of the LMIMATLAB Code

Related LMIs
- Continuous Time H2 Optimal Dynamic Output Feedback Control