# Théorie mathématique de la viabilité (détails)

La théorie mathématique de la viabilité, introduite par Jean-Pierre Aubin, fournit un cadre formel pour étudier la compatibilité entre un système dynamique et des contraintes dans l'espace d'état.
Les problèmes étudiés se veulent les plus larges possibles : ce qui est demandé à l'ensemble de contraintes, en général, c'est d'être un fermé. Cela permet de prendre en compte des contraintes qui soient, par exemple, des unions de convexes (qui ne sont pas nécessairement convexes) ; ou des intersections de sous-variétés régulières (qui ne sont pas nécessairement régulières).
On peut écrire les problèmes de viabilité comme des problèmes d'optimisation où la fonction objectif est discontinue (elle vaut, par exemple, $0$ dans l'ensemble de contraintes et $-\infty$ en dehors. Les stratégies de contrôle viable peuvent faire appel à des opérateurs comme la vitesse de norme minimale. De ce fait les résultats et théorèmes peuvent être différents de ce qui existe en théorie du contrôle ou en contrôle optimal, en particulier pour les systèmes en temps continu.
On considère :
* un système dynamique $S$ défini sur un ouvert $\Omega$ d'un espace vectoriel de dimension finie ($\mathbb {R} ^{n}$ dans la suite),
* un ensemble de contraintes $K$ dans l'espace d'état : $K\subset \Omega$.
Soit $F$ une correspondance de $\mathbb {R} ^{n}$ dans $\mathbb {R} ^{n}$. On définit $S$ par :
* en temps continu : $x'(t)\in F(x(t))$ for almost all $t\geq 0\qquad$ (1)
* en temps discret : $x_{k+1}\in F(x(t))$ for all $k\in \mathbb {N} \qquad$ (2)
Définition — Une évolution $x(.)$ du système $S$ est viable dans $K$ si et seulement si sa trajectoire reste dans $K$.
* En temps continu : $\forall t\geq 0,x(t)\in K$
* En temps discret : $\forall k\in \mathbb {N} ,x_{k}\in K$
On note $S(x)$ l'ensemble des évolutions gouvernées par $S$ issues de l'état $x$.
Un domaine de viabilité pour $S$ défini sur $\mathbb {R} ^{n}$ est un sous-ensemble $D\subset \mathbb {R} ^{n}$ tel que, à partir de tout $x\in D$, il existe au moins une évolution gouvernée par $S(x)$ qui reste dans $D.$
Notation : dans la suite on utilisera $x(t),t\in \mathbb {N}$ ou $x_{k},k\in \mathbb {N}$ suivant le cas pour des raisons de simplification des formules en temps discret.

## Noyau de viabilité

Définition —  Le noyau de viabilité de $K$ pour le système $S$ est l'ensemble des états de $K$ à partir desquels il existe au moins une évolution gouvernée par $S$ viable dans $K$.
${\texttt {Viab}}_{S}(K)=\{x_{0}\in K\mid \exists x(.)\in S(x_{0}),\ \forall t\geq 0,\ x(t)\in K\}$
Par définition, le noyau de viabilité est le plus grand des domaines de viabilité.
Le noyau de viabilité est un ensemble fermé moyennant certaines conditions sur le système dynamique, pour lesquelles nous rappelons les définitions suivantes :
Soit $G$ une correspondance de $A$ vers $B$ ($A$ et $B$ étant des espaces vectoriels normés de dimension finie), $G:A\rightsquigarrow B$.
* Le domaine de $G$ est $Dom(G)=\left\lbrace x\in A,G(x)\neq \emptyset \right\rbrace$
* Le graphe de $G$ est $Graph(G)=\{(x,y)\in A\times B,y\in G(x)\}$.
* On note $\lVert G(x)\rVert =\sup _{y\in G(x)}\lVert y\rVert$
* $G$ est à croissance linéaire s'il existe une constante $c>0$ telle que $\forall x\in Dom(G)$, $\lVert G(x)\rVert \leq c(\lVert x\rVert +1)$.
Définition : Soit $F$ une correspondance de $A$ vers $B$. $F$ est Marchaud si :
* Le graphe et le domaine de $F$ sont des fermés non vides
* $\forall x\in Dom(F)$, $F(x)$ est convexe
* $F$ est à croissance linéaire
Le système dynamique $S$ défini par (1) sera dit Marchaud si la correspondance $F$ est Marchaud.
Théorème — Fermeture du noyau de viabilité (système à temps continu).
Si $K$ est fermé, et le système dynamique $S$ est Marchaud, le noyau de viabilité de $K$ pour $S$ est fermé.
Théorème — Fermeture du noyau de viabilité (système à temps discret).
Si $K$ est compact, et le système dynamique $S$ est tel que $F$ est hémicontinue supérieurement et à images fermées, le noyau de viabilité de $K$ pour $S$ est fermé.
Il existe des variantes de ces théorèmes avec des conditions plus ou moins faibles pour l'ensemble de contraintes $K$ et le système dynamique $S$.

### Caractérisation par le cône contingent

Il est possible de caractériser le noyau de viabilité comme le plus grand des domaines de viabilité de la dynamique $S$.
Un domaine de viabilité peut être caractérisé par le cône contingent.
Soit $x\in K$, $T_{K}(x)$, le cône contingent à $K$ en $x$ est le cône (fermé) des éléments $v$ tels que :
$\liminf _{h\to 0+}{\frac {d(x+hv,K)}{h}}=0$
où $d(x,K)$ est la distance à un ensemble induite par la métrique sur $K$.
Concrètement, cela veut dire que si $v\in T_{K}(x)$, il y a une suite $(h_{n}>0)$ convergeant vers $0$, et une suite $(v_{n})$ convergeant vers $v$, telle que $x+h_{n}v_{n}\in K$ pour tout $n$.
Définition — Domaine de viabilité pour $S$ défini par la correspondance $F$
$D\subset Dom(F)$ est un domaine de viabilité pour $S$ si et seulement si :
$\forall x\in D,F(x)\cap T_{D}(X)\neq \emptyset$
On peut montrer l'équivalence entre cette définition et la définition par les évolutions, car le cône contingent caractérise les évolutions non sortantes.
Cette caractérisation permet à la théorie de disposer d'algorithmes généraux de calcul d'approximation du noyau de viabilité avec preuve de convergence.

### Systèmes contrôlés

Il existe une formulation plus explicite de ces théorèmes pour les systèmes contrôlés.
Définition — Système contrôlé
Soit une correspondance $U:\mathbb {R} ^{n}\rightsquigarrow \mathbb {R} ^{p}$, et une fonction de plusieurs variables $f:\mathbb {R} ^{n}\times \mathbb {R} ^{p}\mapsto \mathbb {R} ^{n}$. On définit le système dynamique contrôlé $S_{(f,U)}$ par:
* en temps continu : $x'(t)\in f(x(t),u(t))$ pour presque tout $t\geq 0$, avec $u(t)\in U(x(t))\qquad$ (3)
* en temps discret : $x_{k+1}\in f(x_{k},u_{k})$ pour tout $k\in \mathbb {N}$, avec $u_{k}\in U(x_{k})\qquad$ (4)
$U$ est la correspondance qui à chaque état $x$ associe l'ensemble des contrôles admissibles en $x$. $f$ est la fonction qui à un état et un contrôle associe un nouvel état.
Le système dynamique contrôlé $S_{(f,U)}$ en temps continu est Marchaud si :
* f est continue
* Le graphe de U est fermé
* Les ensembles ${f(x,u),u\in U(x)}$ sont convexes pour tout $x\in Dom(F)$
* f et U sont à croissance linéaire
Définition — Noyau de viabilité d'un système contrôlé Le noyau de viabilité ${\text{viab}}_{S_{(f,U)}}(K)$ de l'ensemble de contraintes $K$ pour le système contrôlé $S_{(f,U)}$ est l'ensemble (éventuellement vide) des états de $K$ à partir desquels il est possible de trouver une fonction de contrôle $u(.)$ telle qu'une évolution $x(.)$ gouvernée par $S_{(f,U)}$ reste dans $K$ indéfiniment :
$x\in viab_{S(f,U)}(K)\Leftrightarrow \exists u(.)\quad \forall t\geq 0\left\{{\begin{array}{lll}x'(t)&=&f(x(t),u(t))\\u(t)&\in &U(x(t))\\x(t)&\in &K\end{array}}\right.$
Théorème — Fermeture du noyau d'un système contrôlé $S_{(f,U)}$ quand $K$ est fermé
Le noyau de viabilité ${\text{viab}}_{S_{(f,U)}}(K)$ est fermé quand le système contrôlé $S_{(f,U)}$ en temps continu est Marchaud.
Le noyau de viabilité ${\text{viab}}_{S_{(f,U)}}(K)$ est fermé quand le système contrôlé $S_{(f,U)}$ en temps discret vérifie :
* $f$ est continue
* le graphe de $U$ est fermé
* $U$ est à croissance linéaire
Il suffit de démontrer que ${\overline {{\text{viab}}_{S_{(f,U)}}(K)}}$ est un ensemble viable. Comme ${\text{viab}}_{S_{(f,U)}}(K)$ est le plus grand des ensembles viables, on aura nécessairement ${\overline {{\text{viab}}_{S_{(f,U)}}(K)}}={\text{viab}}_{S_{(f,U)}}(K)$ et le noyau est fermé.
Soit $x\in {\overline {{\text{viab}}_{S_{(f,U)}}(K)}}$, et soit $(x_{k})_{k\in \mathbb {N} }$ une suite dans ${\text{viab}}_{S_{(f,U)}}(K)$ qui converge vers $x$. Pour tout $k\in \mathbb {N}$, $x_{k}$ est dans le noyau de viabilité, donc il existe $u_{k}\in U(x_{k})$ tel que $f(x_{k},u_{k})\in {\text{viab}}_{S_{(f,U)}}(K).$ Comme $(x_{k})$ converge vers $x$, la suite $(x_{k})$ est bornée. Comme $U$ est à croissance linéaire, la suite $(u_{k})$ est bornée. Comme le graphe de $U$ est fermé, une sous-suite de $(u_{k})$ (qu'on notera encore $(u_{k})$) converge vers $u\in U(x)$. Comme $f$ est continue, et que $(x_{k})$ et $(u_{k})$ convergent vers $x$ et $u$ respectivement, on a $f(x,u)\in {\overline {{\text{viab}}_{S_{(f,U)}}(K)}}$. Comme $K$ est fermé, on a bien ${\overline {{\text{viab}}_{S_{(f,U)}}(K)}}\subset K$, donc ${\overline {{\text{viab}}_{S_{(f,U)}}(K)}}$ est un ensemble viable.

### Cartes de régulation

Dans le cas des systèmes contrôlés, quand le noyau de viabilité n'est pas vide, on peut définir la correspondance des contrôles viables ${\tilde {U}}:\mathbb {R} ^{n}\rightsquigarrow \mathbb {R} ^{p}$ qui à chaque état du noyau associe le sous-ensemble des contrôles admissibles qui permet de garder les évolutions dans le noyau : ${\text{viab}}_{S_{(f,U)}}(K)$ est un ensemble invariant pour le système contrôlé $S_{(f,{\tilde {U}})}$.
En temps continu, si l'état $x$ est dans l'intérieur du noyau de viabilité, tous les contrôles de $U(x)$ sont viables : ${\tilde {U}}(x)=U(x)$. C'est sur la frontière du noyau que l'ensemble des contrôles viables peut être strictement plus petit que l'ensemble des contrôles admissibles.
À partir des cartes de régulation viable, on peut définir des stratégies de régulation en boucle fermée. On peut citer en particulier :
* La stratégie du contrôle lourd qui consiste à sélectionner un contrôle qui minimise $\|{\frac {du}{dt}}\|$
* La stratégie du contrôle lent qui sélectionne le contrôle de norme minimale en tout état $x$ : ${\text{argmin}}_{{\tilde {U}}(x)}\|u\|$
L'inconvénient de ces stratégies est que les trajectoires qu'elles gouvernent passent beaucoup de temps sur la frontière du noyau de viabilité, ce qui les expose à quitter le noyau de viabilité en cas de perturbation. Des heuristiques de trajectoires "prudentes" ont été proposées pour remédier à ce problème.

## Bassin de capture

La théorie de la viabilité s'intéresse à la possibilité intrinsèque de capturer une cible en temps fini tout en respectant des contraintes de viabilité. Le bassin de capture d'une cible rassemble les états de l'ensemble de contraintes à partir desquels il existe une évolution viable atteignant la cible en temps fini.
Définition —  Le bassin de capture d'une cible $C\subset K$ pour le système $S$ est l'ensemble des états de $x\in K$ à partir desquels au moins une évolution gouvernée par $S$ atteint $C$ en un temps $T_{x}\geq 0$, et qui est viable dans $K$ jusqu'au temps $T_{x}$.
${\texttt {Capt}}_{S}(K,C)=\{x_{0}\in K\mid \exists x(.)\in S(x),\exists T\geq 0\quad \left\{{\begin{array}{lll}x(T)\in C\\\forall t\in [0,T],x(t)\in K\end{array}}\right.$

## Viabilité garantie

La propriété de viabilité garantie est recherchée dans le cas des systèmes dynamiques contrôlés qui prennent en compte des incertitudes de nature ensembliste (tychastique).
Définition — Système contrôlé et tychastique
Soit une correspondance $U:\mathbb {R} ^{n}\rightsquigarrow \mathbb {R} ^{p}$, une correspondance $V:\mathbb {R} ^{n}\rightsquigarrow \mathbb {R} ^{q}$, et une fonction de plusieurs variables $f:\mathbb {R} ^{n}\times \mathbb {R} ^{p}\times \mathbb {R} ^{q}\mapsto \mathbb {R} ^{n}$. On définit le système dynamique tychastique contrôlé $S_{(f,U,V)}$ par:
* en temps continu : $x'(t)\in f(x(t),u(t),v(t))$ pour presque tout $t\geq 0$, avec $u(t)\in U(x(t))$ et $v(t)\in V(x(t))\qquad$ (5)
* en temps discret : $x_{k+1}\in f(x_{k},u_{k},v_{k})$ for all $k\in \mathbb {N}$, avec $u_{k}\in U(x_{k}),v_{k}\in V(x_{k})\qquad$ (6)
$U$ est la correspondance qui à chaque état $x$ associe l'ensemble des contrôles admissibles en $x$. $V$ est la correspondance qui à chaque état $x$ associe l'ensemble des perturbations admissibles en $x$. $f$ est la fonction qui à un état et un contrôle associe un nouvel état.
Aubin définit la propriété de viabilité garantie d'un ensemble comme la possibilité de trouver une carte de contrôle définie sur cet ensemble, pour laquelle l'ensemble est invariant, c'est-à-dire que pour le système défini avec cette carte de contrôle, toutes les évolutions restent dans l'ensemble, quelles que soient les perturbations (admissibles).
Définition — Propriété de viabilité garantie Soit un ensemble $L\subset \mathbb {R} ^{n}$, soit $S_{(f,U,V)}$ un système tychastique contrôlé sur $\mathbb {R} ^{n}$, $L$ a la propriété de viabilité garantie s'il existe une carte de régulation ${\tilde {U}}:\mathbb {R} ^{n}\rightsquigarrow \mathbb {R} ^{p}$, définie sur $L$ telle que $\forall x\in L,{\tilde {U}}(x)\neq \emptyset$ et ${\tilde {U}}(x)\subset U(x)$, et telle que pour tous les états $x_{0}$, toutes les évolutions à partir de $x_{0}$ et gouvernées par $S_{(f,{\tilde {U}},V)}$ sont viables dans $L$. $L$ est appelé domaine de viabilité garantie.
Contrairement au cas de la viabilité contrôlé, ou de la viabilité tychastique sans contrôle, le plus grand des domaines de viabilité garantie dans un ensemble de contraintes $K$ fermé n'a pas, en général, cette propriété pour un système dynamique en temps continu. Il est nécessaire d'exiger des conditions supplémentaires
On rappelle la définition d'une correspondance lipschitzienne. Soit $G:A\rightsquigarrow B$ (espaces vectoriels de dimension finie), $G$ est lipschitzienne de constante $\lambda >0$ si pour tout $x_{1},x_{2}$ dans $A$, $G(x_{1})\subset G(x_{2})+\lambda \lVert x_{1}-x_{2}\rVert B$ (où $B$ est la boule unité).
Dans le cas des systèmes continus, on peut montrer l'existence du noyau de viabilité garantie dans le cas où la carte de contrôle est lipschitzienne de constante $\lambda >0$. Le noyau de viabilité n'est donc pas absolu, il est défini en fonction de la constante de Lipschitz.
Définition — Noyau de viabilité garantie
* en temps continu
Soit $K$ un ensemble de contraintes, soit $S_{(f,U_{\lambda },V)}$ un système tychastique contrôlé sur $\mathbb {R} ^{n}$, tel que $U_{\lambda }$ soit $\lambda$-Lipschitz. Le noyau de viabilité de $K$ pour $S_{(f,U_{\lambda },V)}$ est le plus grand des domaines de viabilité inclus dans $K$.
* en temps discret
Soit $K$ un ensemble de contraintes, soit $S_{(f,U,V)}$ un système tychastique contrôlé en temps discret sur $\mathbb {R} ^{n}$, le noyau de viabilité garanti de $K$ pour $S_{(f,U,V)}$ est le plus grand des domaines de viabilité inclus dans $K$.
Dans le cas discret, la fermeture du noyau de viabilité garantie est réalisée dans les mêmes conditions que pour le noyau de viabilité. Dans le cas continu, on peut montrer qu'elle est réalisée si $f$ lipschitzienne, ainsi que $U$ et $V$.
Théorème — Fermeture du noyau de viabilité garantie quand $K$ est fermé : conditions suffisantes en temps continu
Le noyau de viabilité garanti de $K$ pour le système tychastique contrôlé $S_{(f,U,V)}(K)$ et la constante $\lambda >0$ est fermé si :
* f est lipschitzienne de constante $\lambda >0$
* U et V sont à images compactes et lipschitziennes de constante $\lambda >0$
Théorème — Fermeture du noyau de viabilité garantie quand $K$ est fermé : conditions suffisantes en temps discret
Le noyau de viabilité garanti de $K$ pour le système tychastique contrôlé $S_{(f,U,V)}(K)$ est fermé si :
* $f$ et $V$ sont continues
* le graphe de $U$ est fermé
* $U$ est à croissance linéaire
La démonstration est similaire à celle de la fermeture du noyau dans le cas d'un système contrôlé : il s'agit de montrer que l'adhérence du noyau de viabilité garantie a la propriété de viabilité garantie ; comme le noyau est le plus grand des ensembles ayant cette propriété, il est donc égal à son adhérence, c'est donc un fermé.
On note $G$ le noyau de viabilité garantie de $K$ pour $S_{(f,U,V)}(K)$. Soit $x\in {\overline {G}}$, et soit $(x_{k})_{k\in \mathbb {N} }$ une suite dans $G$ qui converge vers $x$. Pour tout $k\in \mathbb {N}$, $x_{k}$ est dans le noyau de viabilité garantie, donc il existe une suite $(u_{k})_{k\in \mathbb {N} },u_{k}\in U(x_{k})$ tel que pour tout $v\in V(x_{k})$, $f(x_{k},u_{k},v)\in G$. Comme $(x_{k})$ converge vers $x$, la suite $(x_{k})$ est bornée. Comme $U$ est à croissance linéaire, la suite $(u_{k})$ est bornée. Comme le graphe de $U$ est fermé, une sous-suite de $(u_{k})$ (qu'on notera encore $(u_{k})$) converge vers $u\in U(x)$. Soit $v\in V(x_{k})$, comme $V$ est continue et que $(x_{k})_{k}$ converge vers $x$, pour tout $k\in \mathbb {N}$ il existe $v_{k}\in V(x_{k})$ tel que la suite $(v_{k})_{k\in \mathbb {N} }$ converge vers $v$. Comme $x_{k}\in G$, $f(x_{k},u_{k},v_{k})\in G$ et $f$ étant continue, $f(x,u,v)\in {\overline {G}}$ ■