# Équation de Liapounov

En théorie du contrôle, l'équation discrète de Liapounov (également connue sous le nom d'équation de Stein ) est une équation de la forme
    $AXA^{H}-X+Q=0$,
où $Q$ est une matrice hermitienne et $A^{H}$ est la matrice adjointe de $A$.
L'équation continue de Liapounov est de la forme
    $AX+XA^{H}+Q=0$.
L'équation de Liapounov apparaît dans de nombreuses branches de la théorie du contrôle, telles que la stabilité de Liapounov et la commande optimale. Cette équation et des équations associées portent le nom du mathématicien russe Alexandre Liapounov$^,$.

## Application à la stabilité

Dans les énoncés suivants $A,P,Q\in \mathbb {R} ^{n\times n}$, et $P$ et $Q$ sont des matrices symétriques. La notation $P>0$ signifie que la matrice $P$ est définie positive.
Théorème (version temps continu) — Étant donné $Q>0$, il existe un unique $P>0$ satisfaisant
    $A^{T}P+PA+Q=0$
si et seulement si le système linéaire ${\dot {x}}=Ax$ est globalement asymptotiquement stable.
La fonction quadratique $V(x)=x^{T}Px$ est une fonction de Liapounov qui peut être utilisée pour vérifier la stabilité.
Théorème (version en temps discret) — Étant donné $Q>0$, il existe un unique $P>0$ satisfaisant
    $A^{T}PA-P+Q=0$
si et seulement si le système linéaire $x_{t+1}=Ax_{t}$ est globalement asymptotiquement stable.
Comme ci-dessus, $x^{T}Px$ est une fonction de Liapounov.

## Calcul numérique de la solution

L'équation de Liapounov est linéaire, et donc si $X$ est de taille $n$, il peut être calculé en temps ${\mathcal {O}}(n^{3})$ en utilisant les méthodes standard de factorisation matricielle.
Cependant, la structure spécifique de l'équation de Liapounov permet l'usage d'algorithmes beaucoup plus rapides. Dans le cas discret, la méthode de Schur de Kitagawa est souvent utilisée. Dans le cas de l'équation de Liapounov continue, l'algorithme de Bartels-Stewart peut être utilisé.

## Solution analytique

On considère l'opérateur de vectorisation $\operatorname {vec} (A)$ qui empile les colonnes d'une matrice $A$, et on note $A\otimes B$ le produit de Kronecker de $A$ et de $B$. Les équations de Liapounov en temps continu et en temps discret peuvent être exprimées comme des solutions d'une équation matricielle. De plus, si la matrice $A$ est stable, la solution peut également être exprimée sous la forme d'une intégrale (cas du temps continu) ou d'une somme infinie (cas du temps discret).

### Temps discret

En utilisant le fait que $\operatorname {vec} (ABC)=(C^{T}\otimes A)\operatorname {vec} (B)$, on a
    $(I_{n^{2}}-{\bar {A}}\otimes A)\operatorname {vec} (X)=\operatorname {vec} (Q)$,
où $I_{n^{2}}$ est la matrice identité de taille $n^{2}$ et ${\bar {A}}$ est la matrice adjointe de $A$. On peut alors résoudre $\operatorname {vec} (X)$ par inversion ou en résolvant les équations linéaires. Pour obtenir $X$, il suffit de recomposer la matrice depuis $\operatorname {vec} (X)$.
De plus, si $A$ est stable, la solution $X$ peut aussi s'écrire sous la forme
    $X=\sum _{k=0}^{\infty }A^{k}Q(A^{H})^{k}$ .
À titre d'exemple, considérons le cas unidimensionnel, où la formule dit simplement que la solution de $(1-a^{2})x=q$ est la fraction
    $x={\frac {q}{1-a^{2}}}=\sum _{k=0}^{\infty }qa^{2k}$ .

### Temps continu

En utilisant à nouveau le produit de Kronecker et l'opérateur de vectorisation, on a l'équation matricielle
    $(I_{n}\otimes A+{\bar {A}}\otimes I_{n})\operatorname {vec} X=-\operatorname {vec} Q,$
où ${\bar {A}}$ est la matrice adjointe de $A$.
Comme dans le cas discret, si $A$ est stable, la solution $X$ peut aussi s'écrire comme
    $X=\int _{0}^{\infty }{e}^{A\tau }Q\mathrm {e} ^{A^{H}\tau }d\tau$ .
À titre d'exemple, considérons le cas unidimensionnel ; l'expression dit simplement que la solution de $2ax=-q$ est
    $x={\frac {-q}{2a}}=\int _{0}^{\infty }q{e}^{2a\tau }d\tau$ .

## Relation entre les équations de Liapounov discrètes et continues

On considère la dynamique linéaire en temps continu :
    ${\dot {\mathbf {x} }}=\mathbf {A} \mathbf {x}$ .
On la discrétise en :
    ${\dot {\mathbf {x} }}\approx {\frac {\mathbf {x} _{t+1}-\mathbf {x} _{t}}{\delta }}$,
où $\delta >0$ indique un petit déplacement dans le temps. En explicitant l'équation et en mélangeant les termes, on obtient une équation en temps discret pour $\mathbf {x} _{t+1}$ :
    $\mathbf {x} _{t+1}=\mathbf {x} _{t}+\delta \mathbf {A} \mathbf {x} _{t}=(\mathbf {I} +\delta \mathbf {A} )\mathbf {x} _{t}=\mathbf {B} \mathbf {x} _{t}$
où $\mathbf {B} \equiv \mathbf {I} +\delta \mathbf {A}$ . Maintenant, on peut utiliser l'équation de Liapounov en temps discret pour $\mathbf {B}$ :
    $\mathbf {B} ^{T}\mathbf {M} \mathbf {B} -\mathbf {M} =-\delta \mathbf {Q}$.
Avec la définition de $\mathbf {B}$, on a :
    $(\mathbf {I} +\delta \mathbf {A} )^{T}\mathbf {M} (\mathbf {I} +\delta \mathbf {A} )-\mathbf {M} =-\delta \mathbf {Q}$.
En développant cette expression, on obtient :
    $(\mathbf {M} +\delta \mathbf {A} ^{T}\mathbf {M} )(\mathbf {I} +\delta \mathbf {A} )-\mathbf {M} =\delta (\mathbf {A} ^{T}\mathbf {M} +\mathbf {M} \mathbf {A} )+\delta ^{2}\mathbf {A} ^{T}\mathbf {M} \mathbf {A} =-\delta \mathbf {Q}$.
Comme $\delta$ est petit, si $\delta$ tend zéro, on s'approche de plus en plus d'une dynamique continue, et c'est ce qu'on obtient à la limite. On peut également récupérer les équations de Lyapounov en temps continu à la limite. Pour cela, on divise par $\delta$ des deux côtés, puis quand $\delta \to 0$, on trouve que :
    $\mathbf {A} ^{T}\mathbf {M} +\mathbf {M} \mathbf {A} =-\mathbf {Q}$
qui est l'équation de Liapounov en temps continu, comme indiqué.

## Articles liés

* Équation de Sylvester
* Équation algébrique de Riccati
* Filtre de Kalman