\documentclass[XUPS,XML,SOM,Unicode,francais, NoEqCountersInSection,NoFloatCountersInSection,ThmDefs]{cedram}
\OneNumberAllTheorems
\graphicspath{{xups99-01_figures}}
\setcounter{tocdepth}{2}
%\XUPScorrections
\RequirePackage{pdfpages}

\AtEndDocument{%
\includepdf[pages={-}]{xups99-01_mathlab/xups99-01_mathlab.pdf}%
\setcounter{page}{126}%
}
\NumberTheoremsIn{part}
\numberwithin{figure}{part}
\numberwithin{equation}{part}
\numberwithin{section}{part}
\renewcommand{\thepart}{\arabic{part}}
\renewcommand{\thesection}{\arabic{part}.\arabic{section}}
\renewcommand{\thesubsection}
{\arabic{part}.\arabic{section}.\alph{subsection}}

\let\cal\mathcal
\let\hat\widehat
\let\tilde\widetilde
\renewcommand{\RR}{{\mathbb R}}
\newcommand{\vecj}{\vec{\jmath}}
\newcommand{\SSS}{{\mathbb S}}
\renewcommand{\CC}{{\mathbb C}}
\newcommand{\abs}[1]{\lvert#1\rvert}
\newcommand{\norm}[1]{\lVert#1\rVert}
\renewcommand{\MM}{{\mathfrak M}}
\renewcommand{\NN}{{\mathfrak N}}
\newcommand\bcle{R}
\newcommand{\pot}{{\mathcal Y}}
\newcommand{\dpot}{\dot{{\pot}}}
\newcommand{\bs}{\boldsymbol}
\newcommand{\ds}{\displaystyle}
\newcommand{\dv}[2]{{\frac{\partial #1}{\partial #2}}}
\newcommand{\dvv}[2]{{\frac{\partial^2 #1}{\partial {#2}^2}}}
\newcommand{\dotex}{{\frac{d}{dt}}}
\newcommand{\ddotex}{{\frac{d^2}{dt^2}}}


\newcommand{\drvd}[2]{{\displaystyle\frac{\mbox{\rm d}#1}{\mbox{\rm d}#2}}}
\newcommand{\drvp}[2]{{\displaystyle\frac{\partial #1}{\partial #2}}}
\newcommand{\ol}[1]{\overline{#1}}
\newcommand{\dr}[2]{ \dfrac {\partial{#1}} {\partial{#2}} }
\newcommand{\bra}[1]{\langle#1\rangle}

\newcommand{\qqbox}[1]{\quad\text{#1}\quad}
\DeclareMathOperator{\im}{Im}

\hyphenation{dyna-mi-que dyna-mi-ques solu-tion solu-tions inté-gra-tion ordi-nai-re résul-tat résul-tats}

\begin{document}
\frontmatter
\def\partname{Chapitre}

\title[Systèmes plats: planification et suivi de trajectoires]{Systèmes plats: \\
planification et suivi de trajectoires}

\author[\initial{Ph.} \lastname{Martin}]{\firstname{Philippe} \lastname{Martin}}
\address{Mines ParisTech,
Centre Automatique et Systèmes,
Mathématiques et Systèmes,
60, Bd Saint-Michel, 75272 Paris Cedex 06}
\email{philippe.martin@minesparis.psl.eu}

\author[\initial{P.} \lastname{Rouchon}]{\firstname{Pierre} \lastname{Rouchon}}
\address{Mines ParisTech,
Centre Automatique et Systèmes,
Mathématiques et Systèmes,
60, Bd Saint-Michel, 75272 Paris Cedex 06}
\email{pierre.rouchon@minesparis.psl.eu}
\urladdr{https://cas.mines-paristech.fr/~rouchon/}

\thanks{Journées X-UPS 1999. Aspects de la théorie du contrôle. Prépublication du Centre de mathématique de l'École polytechnique, 1999, et Éditions de l'École polytechnique, 2008}

\maketitle
\vspace*{\baselineskip}\enlargethispage{-\baselineskip}
\tableofcontents
\mainmatter

\vspace*{-\baselineskip}\vskip0pt
\part{Introduction}
\section{Un exemple}

Cet exemple est une illustration très élémentaire
de certains problèmes fondamentaux. Il permet de se familiariser
avec le langage et les notions de base en dynamique et commande des
systèmes. Les calculs y sont simples et les justifications mathématiques
aisées.
\begin{figure}[htb]
\begin{center}
\includegraphics[scale=1]{bras}
\end{center}
\protect\caption{Un bras de robot tournant dans un plan vertical
autour d'un axe horizontal
motorisé. }
\label{bras-fig}
\end{figure}
L'exemple de la figure \ref{bras-fig} est emprunté à la
robotique. Il s'agit d'un bras rigide tournant dans un plan vertical
autour d'un axe horizontal. Cet axe horizontal est équipé d'un moteur
délivrant un couple variable $u$, que l'on peut choisir arbitrairement:
$u$ est la {\em commande} du système (on dit aussi {\em contrôle} ou {\em entrée}). La
position géométrique du système est complètement décrite par un angle
$\theta \in \SSS^1$. La conservation du moment cinétique
autour de l'axe horizontal permet de relier l'angle $\theta$ à la
commande en couple $u$ par l'équation différentielle du second ordre
suivante:
\begin{equation}
J \ddot \theta(t) + m l g \sin \theta(t) = u(t)
\label{bras-eq}
\end{equation}
où $m$ est la masse du bras, $J$ son moment d'inertie par rapport à
l'axe, $l$ la distance du centre de gravité à l'axe et $g$
l'accélération due à la pesanteur.\enlargethispage{\baselineskip}

Fixons, pour un intervalle de temps $[0,T]$ la commande
$[0,T]\ni t\mto u(t)$. La loi horaire $[0,T]\ni t\mto
\theta(t)$ est alors obtenue en intégrant cette équation du second ordre à partir de
conditions initiales en position $\theta(0)=\theta_0$ et en vitesse
$\dot \theta(0)=\dot \theta_0$. L'ensemble des conditions initiales
forme l'état du système (l'espace des phases en mécanique). Il suffit
de réécrire cette équation scalaire du second ordre en deux
équations scalaires du premier ordre:
\begin{equation}
\begin{aligned}
\dot \theta &= \omega
\\
\dot \omega &= u/J - (mgl/J) \sin \theta.
\end{aligned}
\label{bras-etat-eq}
\end{equation}
Les variables $(\theta,\omega)$ forment alors {\em l'état} du système;
le triplet $t\mto (\theta(t), \omega(t),u(t))$ sera dit {\em
trajectoire} du système s'il vérifie, pour tout~$t$, les deux équations
différentielles (\ref{bras-etat-eq}).

La {\em planification de trajectoires} consiste à trouver une
trajectoire du système $t\mto (\theta(t),\omega(t),u(t))$ partant
d'un état $(\theta_i,\omega_i)$ en $t=0$ et arrivant en $t=T$ à l'état
final $(\theta_{f},\omega_{f})$, ces deux états étant fixés par avance.
Il s'agit du problème de base de la {\em commandabilité}: comment amener le
système d'un endroit (d'un état) à un autre. Lorsque le système est
commandable, on dispose, en général, d'une infinité de trajectoires et
donc de commandes pour réaliser cette transition. Se~pose alors le
problème du choix entre ces diverses trajectoires: c'est en autre
l'objet de la commande optimale qui sélectionne la trajectoire en
minimisant un certain critère. Citons par exemple le temps minimum pour
aller d'une position de repos $(\theta_i,\omega_i=0)$ à une autre
position de repos $(\theta_f,\omega_f=0)$ sachant que la commande $u$
reste bornée ($\forall t,~|u(t)|\leq u_{\max}$ où $u_{\max}$ est le
couple maximum développé par le moteur. On en déduit ainsi une
trajectoire de référence du système: $[0,T]\ni t\mto
(\theta_r(t),\omega_r(t),u_r(t))$.

\enlargethispage{2\baselineskip}%
Une autre question, directement liée à la première: étant donné que
tout modèle est approximatif (les paramètres $J$ et $m$ et $l$ sont
connus avec une certaine précision, les frottements sont ici négligés, le bras est légèrement flexible et donc des degrés de libertés et leur dynamiques ne sont pas prises en compte, ...), il convient d'ajuster la commande
$u$ en temps réel de façon à compenser les écarts à la trajectoire de
référence, $\theta - \theta_r$ et $\omega-\omega_r$, qui peuvent
apparaître. Il~s'agit de la {\em stabilisation} autour d'une
trajectoire (\og tracking\fg en anglais). Lorsque cette trajectoire est un
point d'équilibre du système (comme, par exemple $(\theta,\omega,u)=0$
ou $(\theta,\omega,u)=(\pi, 0, 0)$) on parle alors de stabilisation. Une
démarche très naturelle consiste à corriger la commande de référence
$u_r(t)$ par des termes du type $\theta-\theta_r(t)$ et
$\omega-\nobreak\omega_{r}(t)$. L'utilisation de ce type de terme correspond à
un {\em bouclage}, i.e., une boucle de rétro-action ({\em \og feedback\fg} en
anglais) que l'on schématise souvent par le diagramme bloc de la
figure \ref{feedback-fig}.
\begin{figure}[htb]
\begin{center}
\includegraphics[scale=.9]{feedback}
\end{center}
\protect\caption{Schéma-bloc d'une loi de rétro-action,
dit aussi retour d'état ou \og feedback\fg. }
\label{feedback-fig}
\end{figure}

La mise en {\oe}uvre de ce schéma revient, avec un calculateur temps-réel, à mettre à jour très rapidement (avec une période d'échantillonnage $T_e$ bien plus rapide que les échelles de temps naturelles du système)
la commande $u$ en fonction de la trajectoire de référence et des
mesures de $\theta$ et de $\omega$.

Considérons, par exemple la stabilisation autour de l'équilibre
instable $(\theta,\omega,u)=(\pi,0,0)$. Pour cela, linéarisons les
équations (\ref{bras-etat-eq}) autour de ce point: nous faisons un
développement limité des seconds membres en ne retenant que les termes
d'ordre~$1$ (ceux d'ordre~$0$ sont nuls, car nous sommes autour d'un
point d'équilibre). En notant~$\tilde \theta$,~$\tilde \omega$ et
$\tilde u$ les écarts, nous obtenons les équations du système {\em
linéarisé tangent}:\vspace*{-3pt}
\begin{equation}
\label{bras-lin-eq}
\begin{aligned}
\dot{\tilde\theta} &= \tilde\omega
\\[-3pt]
\dot{\tilde\omega} &= \tilde u/J + (mgl/J) \tilde \theta.
\end{aligned}
\end{equation}
En remplaçant la dérivée en temps avec la multiplication par $s$
(transformation de Laplace) on obtient la relation entre les
transformées de Laplace $\hat \theta$ et $\hat u$ de $\tilde \theta$ et
$\tilde u$ (conditions initiales nulles):
$$
(J s^{2}- mgl) \hat \theta = \hat u.
$$
Nous retrouvons bien la fonction de transfert $H(s)= 1/(J s^{2} -
mgl)$, fraction rationnelle en $s$ la variable de Laplace,
fréquemment utilisée par les ingénieurs pour représenter la relation
entre la commande $\hat u$ et la sortie $\hat y$, $\hat y =H(s) \hat u$. La stabilité du système (en boucle ouverte) est fonction de la position par rapport à l'axe imaginaire des pôles de~$H$: s'ils sont tous à partie réelle strictement négative alors le système est stable; si l'un d'entre eux est à partie réelle strictement positive, alors le système est instable. Ici les pôles étant $\pm \sqrt{\sfrac{mgl}{J}}$, le système est instable en boucle ouverte (le point d'équilibre $(\pi,0)$ de l'espace des phases est un col).
Noter qu'une telle représentation est impossible pour
$ J \ddot \theta = -mgl \sin \theta + u$ dès que $\theta-\pi$ n'est plus
petit. Les fonctions de transfert ne peuvent pas être
étendues aux systèmes non linéaires.

Si on pose, comme loi de commande
\begin{equation}
\tilde u = -(J k_1+mgl)\tilde\theta - J k_2 \tilde\omega,
\label{bras-com-eq}
\end{equation}
où $k_1=(1/\tau_1 + 1/\tau_2)$ et $k_2=1/\tau_1 \tau_2$ ($0 < \tau_1<
\tau_2$ sont deux constantes positives homogènes à des temps), alors
les équations du système linéaire tangent bouclé (c'est à dire avec sa
boucle de rétro-action) sont
$$
\begin{array}{rcl}
\dot{\tilde\theta} &=& \tilde\omega
\\
\dot{\tilde\omega} &=& -k_1 \tilde \theta -k_2 \tilde \omega.
\end{array}
$$
Ce système est {\em asymptotiquement stable}: pour toutes conditions
initiales, ses solutions tendent vers zéro lorsque $t$ tend vers
l'infini. La convergence est même exponentielle: toute solution est
une combinaison linéaire de $\exp(-t/\tau_1)$ et $\exp(-t/\tau_2)$:
$-1/\tau_1$ et $-1/\tau_2$ sont appelés les {\em pôles} ou {\em modes} du système
bouclé. Noter que le bouclage (\ref{bras-com-eq}) n'est qu'un retour
proportionnel en position (ressort en $\theta$ de raideur $(J
k_1+mgl)$) et en vitesse (frottement visqueux en $\dot \theta= \omega$
de coefficient $J k_2$). C'est un simple régulateur \og proportionnel-dérivé\fg sur l'angle $\theta$. Par la commande, nous pouvons rajouter à
volonté des forces élastiques et visqueuses pour stabiliser le système.

Ce bouclage a été réalisé sur une approximation au premier ordre du
système. Se pose alors la question du comportement du système non
linéaire (\ref{bras-etat-eq}) avec le bouclage linéaire
$$
u= \tilde u=-(J k_1+mgl)(\theta-\pi)- J k_2 \omega.
$$
Il est immédiat de voir que
le linéarisé tangent autour de l'équilibre $(\pi,0)$ du système non
linéaire bouclé est identique au linéaire tangent bouclé. Un résultat
classique sur la stabilité structurelle des points d'équilibres
hyperboliques (les valeurs propres de la matrice jacobienne sont toutes
à partie réelle non nulle) d'un système dynamique garantit alors la
stabilité asymptotique locale du système non linéaire bouclé: cela veut
dire simplement que toute trajectoire du système (\ref{bras-etat-eq})
avec la commande (\ref{bras-com-eq}) qui démarre assez près de
$(\pi,0)$ tends vers $(\pi,0)$ lorsque $t$ tends vers l'infini, la
convergence étant exponentielle, comme pour le linéaire tangent.

Étant donné que $\tau_1$ et $\tau_2$ sont deux constantes de
temps arbitraires directement liées au taux de convergence, on aura
tendance à les choisir aussi proches de zéro que possible. Cependant,
il convient de ne pas les choisir trop proches de zéro. D'une part des gains
trop grands vont faire saturer les actionneurs.
D'autre part, le
modèle sur lequel la commande est synthétisée, n'est valable que pour
une certaine gamme d'échelles de temps (on parle en fréquentiel de
modèle valable sur une certaine plage de fréquences). Ici la dynamique
du moteur est négligée. Si le moteur est à courant continu, la commande
physique est en fait la tension $U_m$ appliquée au moteur. Elle est
reliée au couple $u$ par une équation différentielle du type:
\begin{equation}
L\dot{I}_{m} + RI_{m} = U_{m}, \quad u =K_c I_m
\label{moteur-eq}
\end{equation}
($L$ est l'inductance, $R$ la résistance, $K_{c}$ la constante de
couple du moteur). En pratique la dynamique du moteur est souvent
négligeable par rapport à la dynamique inertielle de la barre. Ainsi la
constante de temps du moteur $ \tau_m = L/R$ est bien inférieure au
temps caractéristique du bras $\tau_b= \sqrt{J/(mlg)}$. Aussi, a-t-on
l'approximation suivante dite quasi-statique:
$$
R I_m = U_m, \quad u = K_c I_{m} = (K_c/R) U_m
$$
qui relie directement le couple $u$ à la tension $U_m$. Il convient de
choisir~$\tau_1$ et~$\tau_2$ du même ordre de grandeur que $\tau_b$, et
donc très supérieur à~$\tau_m$, la constante de temps de la dynamique
négligée.

D'autres phénomènes peuvent apparaître vers les hautes fréquences,
comme la flexibilité du bras. Des résultats classique (théorie de
perturbations, systèmes lents/ rapides) assurant qu'avec des gains~$k_1$
et~$k_2$ pas trop grands ($\tau_1, \tau_2 \gg \tau_m$), le système non
linéaire avec la dynamique du moteur (\ref{moteur-eq}) et la commande
en tension
$$
U_m = -(K_c/R)~((J k_1-mgl)(\theta+\pi) + J k_2 \omega)
$$
est localement asymptotiquement stable autour de $(\pi,0)$, pour toute
valeur de $L$ assez faible.

La loi de feedback précédente suppose que l'on mesure à chaque instant
l'état complet du système $\theta$ et $\omega$. Si nous connaissons
uniquement la loi $t\mto\theta(t)$, nous obtenons $\omega(t)$ par
simple dérivation: on~dit que l'état du système est {\em observable} à
partir de la {\em sortie} $\theta$. D'une façon plus générale, l'état $x$
d'un système sera dit observable à partir de la {\em sortie} $y$, si
l'on peut reconstruire $x$ à partir d'un nombre fini de dérivées de
$y$.

Pour le bras, nous pouvons dériver numériquement le signal de mesure
pour en déduire $\omega$. Cette solution fonctionne correctement si la
mesure de $\theta$ n'est pas trop bruitée. Sinon, l'opération de
dérivation est à éviter. Pour cela, nous pouvons utiliser la dynamique
du système pour construire un observateur asymptotique, c'est à dire,
reconstruire la vitesse $\omega$ du système en intégrant (on peut dire
aussi en filtrant) la position $\theta$ via une équation différentielle
bien choisie.

Plaçons nous autour du point $(\pi,0)$ et considérons le linéaire
tangent (\ref{bras-lin-eq}) avec comme quantités connues la commande
$\tilde u$ et l'angle~$\tilde \theta$. L'objectif est de reconstruire à
terme $\tilde \omega$ sans utiliser l'opération de dérivation très
sensible au bruit. En revanche nous pouvons utiliser l'intégration et
les changements de variables.

Nous allons montrer comment construire un {\em observateur
asymptotique} (d'ordre réduit). Soit $\lambda$ un paramètre que nous
ajusterons plus tard. Considérons la variable composite $\xi = \tilde \omega
+\lambda \tilde \theta$. Si l'on sait recons\-truire $\xi$, on obtient $\tilde
\omega$ avec $\tilde \omega = \xi- \lambda \tilde \theta(t)$. Or, grâce
à (\ref{bras-lin-eq}), $\xi$~vérifie
$$
\dot \xi = u/J - (mgl/J)\tilde\theta + \lambda \tilde \omega
= u/J - (mgl/J + \lambda^2) \tilde \theta + \lambda \xi.
$$
Ainsi recopiant cette équation et en remplaçant la variable $\xi$ non
mesurée par $\hat \xi$, on obtient une équation différentielle du
premier ordre dépendant des quantités connues $u$ et $\tilde \theta$
(un filtre passe bas d'ordre 1 d'une combinaison linéaire de la mesure $\tilde
\theta$ et de la commande $\tilde u$):
\begin{equation}
\dot{\hat\xi} = u(t)/J - (mgl/J + \lambda^2) \tilde \theta(t) + \lambda \hat \xi
\label{bras-obs-eq}
\end{equation}

Par soustraction avec l'équation différentielle satisfaite par le vrai~$\xi$, les termes sources en $u$ et $\tilde \theta$ disparaissent. On
obtient alors une dynamique de l'erreur $\hat \xi -\xi$ autonome
$$
\frac{d}{dt} (\hat \xi -\xi) = \lambda (\hat \xi -\xi)
$$
qui converge vers zéro, quelle que soit la condition initiale sur~$\hat
\xi$, dès que le paramètre $\lambda=-1/\tau_f$ est choisi négatif
($\tau_f$ est la constante de temps de l'observateur
(\ref{bras-obs-eq})). Là encore, le gain $\lambda$ de \hbox{l'observateur}~(\ref{bras-obs-eq}) doit être choisi en fonction des niveaux de bruit
sur $\theta$ et surtout des échelles de temps naturelles du système
(prendre, par exemple, $\tau_f$ du même ordre de grandeur que $\tau_b=
\sqrt{J/(mlg)}$).

Ainsi, en combinant l'observateur (\ref{bras-obs-eq}) et la commande
(\ref{bras-com-eq}) où~$\tilde \omega$ est remplacé par $\hat \xi -
\lambda \tilde \theta$, nous obtenons un bouclage qui stabilise
localement la position inverse du pendule. Ce bouclage est un {\em
bouclage dynamique } sur la sortie $y=\tilde \theta$: le terme
dynamique vient du fait que la commande $u$ est une fonction de
$\tilde \theta$ et de $\hat \xi$ qui est en fait une sorte \og d'intégrale\fg de
$\tilde u$ et $\tilde \theta$:
\begin{equation}
\begin{array}{rcl}
\dot{\hat\xi}&=& \tilde u/J - (mgl/J + \lambda^2) \tilde \theta + \lambda \hat \xi
\\
\tilde u&=& -(J k_1+mgl)\tilde\theta - J k_2 (\hat \xi - \lambda \tilde \theta).
\end{array}
\label{bras-obs-com-eq}
\end{equation}
Il s'agit d'un {\em observateur-contrôleur}.

\section{Plan}

Cet exemple permet de se faire une idée des problèmes traités par la
commande des systèmes et de faire le lien avec les méthodes
classiques de synthèse de régulateurs avec les fonctions de transfert
(systèmes linéaires à une entrée et une sortie). Dès que le système est
multi-variable ou non linéaire , l'approche transfert devient alors
nettement plus difficile à mettre en {\oe}uvre ou impossible. L'objectif est ici de
présenter des résultats récents et en cours d'élaboration sur une
classe de systèmes très souvent rencontrés en pratique, les système
plats. Leur commandabilité est particulièrement simple. Elle se ramène,
via une paramétrisation explicite des trajectoires, à celle des
systèmes linéaires de dimension finie. On en déduit alors des
algorithmes fondés sur des calculs explicites de planification de trajectoires,
et, pour les systèmes de dimension finie, de suivi de trajectoires (\cf le problème de la section \ref{bras-nl-sec}).

Dans le chapitre \ref{lin:ch}, nous abordons la commandabilité des systèmes
$\dot x = f(x,u)$. Après de
courtes définitions, nous étudions les systèmes linéaires
stationnaires. Nous mettons l'accent sur la forme canonique de
Brunovsky, la planification de trajectoires, et la stabilisation par
placement de pôles. Ce chapitre se termine avec la linéarisation par
bouclage statique: il s'agit de reconnaître si un système est
linéaire après changements de coordonnées (a priori non linéaires) sur l'état et sur la
commande.

Dans le chapitre \ref{flat:ch}, nous abordons les systèmes plats,
systèmes gouvernés par des équations différentielles ordinaires et
équivalents aux systèmes linéaires commandables. La relation
d'équivalence utilisée est une correspondance entre les trajectoires,
correspondance déjà suggérée en 1912 par David Hilbert et reprise peu après par
Élie Cartan (équivalence absolue) pour les
systèmes différentiels sous-déterminés. Avec de tels systèmes la
planification et le suivi de trajectoires sont faciles à résoudre. Pour
des définitions mathématiques précises et simples, nous utilisons le
langage des diffiétés, une géométrie sur des variétés $C^{\infty}$ de
dimension infinie développée par l'école russe autour de Vinogradov. La
caractérisation des systèmes plats étant un problème ouvert, nous
listons les quelques résultats disponibles.\enlargethispage{\baselineskip}%

Une façon d'étendre la platitude aux systèmes gouvernés par des
équations aux dérivées partielles est la paramétrisation explicite des
trajectoires. Bien que l'on soit loin d'une définition claire de la
platitude en dimension infinie (une voie intéressante semble être, dans
le cas linéaire, la théorie des modules et la notion de $\pi$-liberté),
nous traitons quelques exemples significatifs. Tel est l'objet du
chapitre \ref{inf:ch}.
Le chapitre \ref{cat:ch} est un catalogue non exhaustif de
systèmes plats.

Cette présentation reprend pour partie~\cite{martin-et-al-caltech03}. Le livre récent sur les systèmes plats~\cite{sira-agarwal-book04} fait aussi le lien, comme c'est le cas ici, avec les systèmes linéaires de dimension finie, et propose aussi de nombreux exemples d'intérêt pratique.

\section{Problème}
\label{bras-nl-sec}
\subsection{Énoncé}
On reprend ici, sous la forme d'un problème et pour l'étendre au non
linéaire, l'observateur-contrôleur que nous avons construit avec le
linéaire tangent du système (\ref{bras-etat-eq}). L'objectif de
commande est d'aller du point d'équilibre $\theta=0$ au point
d'équilibre $\theta=\pi$ pendant le temps $T>0$ en ne mesurant que
$\theta$. Cette extension non linéaire ne nécessite que très peu de calculs et reste
à un niveau de complexité très élémentaire.

\begin{enumerate}

\item
Donner une trajectoire du système $[0,t]\mto
(\theta_r(t),\omega_r(t),u_r(t))$ qui assure cette transition.

\item \label{bras-exo-Q2}
Calculer le bouclage d'état qui stabilise la dynamique de l'erreur à la
trajectoire $e=\theta-\theta_r(t)$ de la façon suivante:
$$
\ddot e + \sigma_1 \dot e + \sigma_2 e =0
$$
avec $\sigma_1,\sigma_2 >0$.

\item \label{bras-exo-Q3}
On suppose que l'on ne mesure que $\theta$. Montrer que l'observateur
non linéaire
$$
\dot{\hat \xi } = \lambda \hat \xi - \lambda^2 \theta(t) + u(t)/J - (mgl/J) \sin \theta(t)
$$
permet de reconstruire asymptotiquement $\omega$ par $\hat \omega = \xi
- \lambda \theta$, dès que $\lambda<0$.

\item
Montrer la convergence de l'observateur-contrôleur où l'on a remplacé
la mesure de vitesse $\omega$ dans la question \ref{bras-exo-Q2} par
l'estimée $\hat \omega$ de la question \ref{bras-exo-Q3}.

\item
Faire des simulations de cette man{\oe}uvre en $T=5$~s en prenant comme
paramètres $m=1,0$~kg, $l=0,2$~m, $J=0,1$~kg m$^2$ et
\hbox{$g=9,81$~m/s$^{2}$}. Tester la robustesse de cette commande dynamique de
sortie par rapport à des dynamiques négligées (rajouter une dynamique
pour le moteur) et par rapport à des erreurs dans le
modèle (\ref{bras-etat-eq}) (rajouter un petit frottement au niveau de
l'axe du bras).
\end{enumerate}

\Subsection{Solution}
\begin{enumerate}

\item Il suffit d'utiliser l'équation de Newton
à l'envers: au lieu de donner le couple $t\mto u$ et d'intégrer pour avoir l'angle $\theta$, on se donne l'angle $t\mto \theta_r(t)$ pour en déduire le couple $u_r$ par dérivation
$$
u_r(t)=J \ddot \theta_r(t) + m l g \sin \theta_r(t)
$$
avec, par exemple, $\theta_r(t)= \pi \bigl(3 \left(\sfrac{t}{T}\right)^2 - 2 \left(\sfrac{t}{T}\right)^3 \bigr)$ pour $t\in[0,T]$. En~effet la solution du problème de Cauchy
$$
\dot \theta = \omega, \quad J \dot \omega= - m l g \sin \theta + u_r(t)
$$
de condition initiale nulle est donnée par
$$
\theta(t)=\theta_r(t), \quad \omega(t)=\omega_r(t), \quad t\in [0,T]
$$
avec
$$
\omega_r(t)=\frac{6\pi}{T} \bigl(\left(\sfrac{t}{T}\right) - \left(\sfrac{t}{T}\right)^2 \bigr).
$$
On a ainsi comme contrôle de référence (boucle ouverte)
$$
u_r(t)= \frac{6\pi J}{T^2} \left(1-2 \left(\sfrac{t}{T}\right) \right) + m l g
\sin\left( \pi \bigl(3 \left(\sfrac{t}{T}\right)^2 - 2 \left(\sfrac{t}{T}\right)^3\bigr)\right).
$$

\item Il suffit de considérer le bouclage non-linéaire:
$$
u= J\left(\ddotex \theta_r(t) - \sigma_1(\omega-\omega_r(t)) - \sigma_2(\theta-\theta_r(t) \right)
+ mgl \sin\theta.
$$

\item En effet la variable composite $\xi= \omega + \lambda \theta $ vérifie
$$
\dot\xi= \lambda \xi - \lambda^2 \theta(t) + u(t)/J - (mgl/J) \sin \theta(t).
$$
Ainsi $\dotex {(\xi -\hat \xi)}= \lambda (\xi-\hat \xi)$ et donc avec $\lambda <0$, $\hat \xi$ converge vers $\xi$ quand~$t$ tend vers $+\infty$.

\item Le feedback devient alors (remplacer $\omega$ par $\hat\xi-\lambda \theta$)
$$
u= J\left(\ddotex \theta_r(t) - \sigma_1(\hat \xi - \lambda\theta -\omega_r(t)) - \sigma_2(\theta-\theta_r(t) \right)
+ mgl \sin\theta.
$$
En boucle fermée, on est face à un système avec 3 états $(\theta,\omega,\hat \xi)$. Le~changement de variables
$$
(\theta,\omega,\hat \xi)\mto
(\underbrace{\theta-\theta_r(t)}_{e},
\underbrace{\omega-\omega_r(t)}_{\dot e},
\underbrace{\hat \xi- \omega - \lambda \theta}_{\tilde \xi} )
$$ conduit à une structure triangulaire avec $\dot{\tilde\xi} = \lambda \tilde \xi$ qui tend vers $0$. Asymptotiquement $\tilde\xi=0$ et donc, pour les deux autres états $e$ et $\dot e$, on a un oscillateur harmonique amorti: $\ddot e = -\sigma_1 \dot e - \sigma_2 e$. On en déduit la stabilité asymptotique du système bouclé.

\item Utiliser le logiciel libre Scilab: {\tt http://www.scilab.org/}. Comme couple de frottement on pourra prendre $-\gamma\dot\theta$ avec $\gamma >0$ et pouvant dépendre de $\theta$ et/ou $\dot\theta$. L'ordre de grandeur de $\gamma$ sera $J/T$. On pourra aussi modéliser la dynamique du moteur soit comme un retard pur, soit comme un premier ordre. Le retard ou la constante de temps seront de l'ordre de $T/10$.

\end{enumerate}

\subsection{Aspect global}
À cause du terme en $\theta-\theta_r$ dans le bouclage, ce dernier n'est pas défini globalement sur $\SSS^1$. En fait, il faut remplacer $\theta-\theta_r$ par $\sin(\theta-\theta_r)$ et imposer la dynamique suivante pour l'erreur de suivi $e=\theta-\theta_r$: $ \ddot e = - \sigma_1 \dot e - \sigma_2 \sin e$.
En effet le bouclage qui conduit à cette dynamique de suivi,
$$
u= J\left(\ddotex \theta_r(t) - \sigma_1(\omega -\omega_r(t)) - \sigma_2\sin(\theta-\theta_r(t) \right)
+ mgl \sin\theta
,
$$
est alors globalement défini pour $\theta,\theta_r\in\SSS^1$.
La dynamique de l'erreur~$e$ obéit ainsi à celle d'un pendule amortie: $ \ddot e = - \sigma_1 \dot e - \sigma_2 \sin e$. La~convergence vers $0$ est quasi-globale mathématiquement et toujours effective en pratique.

De même, l'observateur réduit avec la variable composite $\xi$ faisant intervenir directement $\theta$ n'est pas défini globalement sur~$\SSS^1$. Il~convient alors d'utiliser l'observateur asymptotique
(gains cons\-tants $\lambda_1,\lambda_2 >0$)
$$
\dot{\hat \theta} = \hat \omega - \lambda_1 \sin(\hat\theta - \theta(t)),
\quad
\dot{\hat \omega}= \frac{u(t) - mgl\sin\theta(t)}{J} - \lambda_2 \sin(\hat\theta - \theta(t))
$$
globalement défini et dont la convergence est quasi-globale. En effet, les erreurs d'estimation $\tilde \theta=\hat\theta - \theta$ et $\tilde\omega=\hat\omega -\omega$ vérifient le système autonome
$$
\dot{\tilde \theta} = \tilde \omega - \lambda_1\sin\tilde\theta,
\quad
\dot{\tilde \omega } = - \lambda_2\sin\tilde\theta
$$
qui admet comme fonction de Lyapounov $V=(\tilde\omega)^2 - \lambda_2 \cos\tilde\theta$ car $\dot V = - \lambda_1\lambda_2 \sin^2\tilde\theta \leq 0$. Ce système autonome admet deux équilibres: $(0,0)$ est un n\oe{}ud exponentiellement stable et $(\pi,0)$ est un col. Le bassin d'attraction de $(0,0)$ est le cylindre $\SSS^1\times \RR$ à l'exception de l'espace rentrant dans le col $(\pi,0)$. En pratique, la convergence de l'observateur est alors globale.

L'observateur/contrôleur globalement défini sur $\SSS^1$ est alors obtenu en remplaçant $\theta$ et $\omega$ par leur estimées
$$
u= J\left(\ddotex \theta_r(t) - \sigma_1(\hat \omega -\omega_r(t)) - \sigma_2\sin(\hat\theta-\theta_r(t) \right)
+ mgl \sin\hat\theta.
$$

\part{Systèmes linéaires de dimension finie} \label{lin:ch}

Après de courtes définitions, nous étudions en détail les systèmes linéaires
explicites $\dot x = A x + B u $. Leur commandabilité est caractérisée
par le critère de Kalman et la forme normale dite de Brunovsky. Cette
dernière permet un paramétrage explicite de toutes les trajectoires en
fonctions de $m$ fonctions scalaires arbitraires $t\mto y(t)$
et d'un nombre fini de leurs dérivées. Ces quantités $y$, dites sorties
de Brunovsky, sont des combinaisons linéaires de $x$. Elles jouent
d'une certaine façon le rôle d'un potentiel. Elles permettent
surtout de calculer très simplement les commandes $u$ pour aller d'un
état vers un autre (planification de trajectoire). Elles donnent
également le bouclage (\og feedback\fg) qui assure le suivi
asymptotique d'une trajectoire de référence arbitraire (stabilisation
par placement de pôles).

\section{Commandabilité}
On considère le système explicite ($f$ fonction régulière)
\begin{equation}\label{expcom}
\dotex{x}=f(x,u), \quad x\in\RR^{n}, \quad u\in\RR^{m}
\end{equation}

\Subsection{Définitions}

\begin{definition}[trajectoire]
\label{traj-dfn}
On appelle trajectoire du système (\ref{expcom})
toute fonction régulière $I \ni t\mto (x(t),u(t))\in\RR^n\times
\RR^m$ qui satisfait
identiquement sur un intervalle d'intérieur non vide $I$ de $\RR$ les
équations (\ref{expcom}).
\end{definition}

\begin{definition}[commandabilité]
\label{expcom-dfn}
Le système (\ref{expcom}) est dit commandable en temps $T>0$, si et
seulement si, pour $p, q\in \RR^n$, il existe une loi horaire
$[0,T]\ni t \mto u(t)\in \RR^m$, dite commande en boucle ouverte,
qui amène le système de l'état $x(0)=p$ à l'état $x(T)=q$, c'est à
dire, telle que la solution du problème de Cauchy
$$
\begin{array}{rcl}
\dot x &=& f(x,u(t))\quad \mbox{pour }t\in [0,T]
\\
x(0)&=&p
\end{array}
$$
vérifie $x(T)=q$. Le système est dit commandable lorsqu'il
est commandable pour au moins un temps $T>0$.
\end{definition}

D'autres définitions sont possibles: elles correspondent toutes à des
variantes plus ou moins subtiles de la définition \ref{expcom-dfn}.
Nous renvoyons à \cite{coron-book} pour de plus amples développements.

Comme l'illustre la figure \ref{com-fig},
\begin{figure}[htb]
\begin{center}
\includegraphics[scale=.9]{planif}
\end{center}
\caption{La planification de trajectoire}
\label{com-fig}
\end{figure}
la commandabilité est une
propriété topologique très naturelle. En général, la {\em commande en
boucle ouverte $[0,T]\ni t \mto u(t)$} n'est pas unique, il en
existe une infinité. Cette étape s'appelle {\em planification de
trajectoire}: calculer $t\mto u(t)$ à partir de la connaissance de
$f$, $p$ et $q$ constitue l'une des questions majeures de
l'automatique. Cette question est loin d'être résolue actuellement.

Très souvent, l'absence de commandabilité est due à l'existence
d'intégrales premières non triviales. Ce sont des observables qui
restent constantes le long de toute trajectoire et qui ne sont pas
influencées par la commande $u$.

\subsection{Intégrale première}
Considérons le réacteur exothermique de la figure \ref{reacteur-fig}.
\begin{figure}[htb]
\begin{center}
\includegraphics[scale=.9]{reacteur}
\end{center}
\protect\caption{Un réacteur chimique exothermique où $u$ correspond aux échanges
thermiques avec l'extérieur}
\label{reacteur-fig}
\end{figure}
Les équations de bilan matière et énergie donnent alors les équations
différentielles suivantes:
\begin{equation}
\begin{aligned}
\dot x_1 &= D (x_{1}^{in}-x_1) - k_0 \exp(-E/RT) x_1
\\
\dot x_2 &= -D x_2 + k_0 \exp(-E/RT) x_1
\\
\dot T &= D (T^{in}-T) + \alpha \Delta H \exp(-E/RT) x_1 + u.
\end{aligned}
\label{reacteur-eq}
\end{equation}
La cinétique est linéaire du premier ordre, les constantes physiques
usuelles ($D$, $x_{1}^{in}$, $k_0$, $E$, $T^{in}$, $\alpha$ et $\Delta
H$) sont toutes positives, la commande $u$ est proportionnelle à la
puissance thermique échangée avec l'extérieur. $x_i$ est la
concentration de l'espèce chimique $X_i$, $i=1,2$. On reconnaît l'effet
non linéaire essentiel de la loi d'Arrhenius $k=k_0 \exp(-E/RT)$ qui
relie la constante de vitesse $k$ à la température $T$. Il est assez
facile de voir que ce système n'est pas commandable. En effet, le bilan
global sur $X_1+X_2$, élimine le terme non linéaire pour donner
$$
\frac{d}{dt}(x_1 +x_2) = D(x_{1}^{in}- x_1 -x_2).
$$
Ainsi donc la quantité $\xi= x_1+x_2$ vérifie une équation
différentielle autonome $\dot \xi= D(x_{1}^{in}-\xi)$. Donc $\xi=
x_{1}^{in}+\xi_0 \exp(-Dt)$ où $\xi_0$ est la valeur initiale de $\xi$.
Si, dans la définition \ref{expcom-dfn}, on prend l'état initial~$p$
tel que $\xi=x_1+x_2=x_{1}^{in}$ et $q$ tel que $\xi=x_1+x_2=0$, il
n'existe pas de commande qui amène le système de $p$ vers $q$. En
effet, pour toute trajectoire démarrant en un tel $p$, la quantité
$x_1+x_2$ reste constante et égale à $x_{1}^{in}$. Cette partie non
commandable du système représentée par la variable $\xi$ admet ici un
sens physique précis. Elle est bien connue des chimistes. C'est un
invariant chimique.

L'exemple ci-dessus nous indique que l'absence de commandabilité
peut-être liée à l'existence d'invariants, i.e., à des combinaisons des
variables du système (on pourrait les appeler des observables) et
éventuellement du temps, qui sont conservées le long de toute
trajectoire. Pour (\ref{reacteur-eq}), il s'agit de $
(x_1+x_2-x_{1}^{in}) \exp(Dt)$ correspondant à $\xi_0$. Nous sommes
donc conduits à prolonger la notion d'intégrale première pour les
systèmes commandés.

\begin{definition}[intégrale première]
Une fonction régulière $\RR\times \RR^n \ni (t,x)\mto h(t,x)\in \RR
$ est appelée intégrale première du système (\ref{expcom}), si elle
est constante le long de toute trajectoire du système. Une intégrale
première est dite triviale si c'est une fonction constante sur
$\RR\times\RR^n$.
\end{definition}
Si $h$ est une intégrale première, sa dérivée le long d'une trajectoire
arbitraire est nulle:
$$
\frac{d}{dt} h = \frac{\partial h}{\partial t} + \frac{\partial h}{ \partial x} \dot x
\equiv 0
$$
pour toute trajectoire $(t\mto (x(t),u(t))$ du système.

Si (\ref{expcom}) admet une intégrale première non triviale
$t\mto h(t,x)$, alors (\ref{expcom}) n'est pas commandable.
Sinon, il existe $T>0$, tel que pour tout $p,q\in\RR^n$ et tout instant
initial $t$, $h(t,p)=h(t+T,q)$ (il existe une trajectoire reliant $p$
à $q$ sur $[t, t+T]$). Donc $h$ est une fonction périodique du temps et
indépendante de $x$. Mais alors la dérivée de $h$ le long des
trajectoires du système correspond à $\frac{\partial}{\partial t}h$.
Comme elle est nulle, $h$ est une constante, ce qui contredit
l'hypothèse. Nous avons montré la proposition suivante:

\begin{proposition} \label{com-prp}
Si le système (\ref{expcom}) est commandable, alors ses intégrales premières
sont triviales.
\end{proposition}
Il est possible de caractériser à partir de $f$
et de ses dérivées partielles l'existence d'intégrale
première non triviale (voir par exemple \cite{isidori-book,fliess-et-al-scl97}).
L'existence de telles intégrales premières est liée à
celle de sous-systèmes différentiels autonomes. D'une façon
plus précise si, à~$u$ fixé, l'algèbre de Lie
$$
{\cal L }= \mbox{Lie } \Big\{ f,
\frac{\partial^{(\alpha)} f}{\partial u^{(\alpha)}}_{\alpha\in {\mathbb N}^{m}}
\Big\}
$$
est de rang $n$ alors il n'existe pas d'intégrale première non triviale ne dépendant
que de $x$. L'algèbre de Lie $\cal L$ est engendrée par tous les crochets de Lie (en $x$)
de n'importe quelle longueur qu'il est possible de faire à partir de
$f$ et de ses dérivées partielles en $u$. Si cette dernière est de dimension $n$, la dimension $x$, alors le système est dit faiblement
accessible.

Si, dans l'algèbre de Lie $\cal L$, l'idéal de Lie engendré par les
$\sfrac{\partial^{(\alpha)} f}{\partial u^{(\alpha)}}$ avec $\alpha \in
{\mathbb N}^{m}$, au moins l'un des $\alpha_{i}$ non nuls, est de rang~$n$
alors il n'existe pas d'intégrale première non triviale dépendant de~$x$ et/ou de~$t$. Le système
est alors dit fortement accessible (voir \cite{sussmann-jurdjevic-72}). Nous
renvoyons au livre de Jean-Michel Coron \cite{coron-book} pour des énoncés plus
détaillés et en rapport direct avec la commandabilité.

\section{Commandabilité linéaire}

Nous considérons ici les systèmes linéaires stationnaires du type
\begin{equation}
\dot x = A x + B u
\label{lincom-eq}
\end{equation}
où l'état $x\in \RR^n$, la commande $u\in
\RR^m$ et les matrices $A$ et $B$ sont constantes et de tailles
$n\times n$ et $n\times m$, respectivement.

\Changel
\subsection{Matrice de commandabilité}

Supposons que \eqref{lincom-eq} admette une intégrale première
$h:~\RR\times \RR^{n}\ni (t,x)\mto h(t,x)\in\RR$. Soit le changement
de variables sur $x$ défini par $x= \exp(t A) z$. Avec les variables
$(z,u)$, \eqref{lincom-eq} devient $ \dot z = \exp(-tA) B u$ et
l'intégrale première $h(t, \exp(t A) z)=l(t,z)$. Comme la
valeur de $l$ est constante le long de toute trajectoire nous avons, en
dérivant le long d'une trajectoire arbitraire $t\mto (z(t),u(t))$
$$
\dot l = \frac{\partial l}{\partial t} + \frac{\partial l}{\partial z} \dot z
=0.
$$
Comme $ \dot z = \exp(-tA) B u$, pour toute valeur de $z$ et $u$ on a
l'identité suivante:
$$
\frac{\partial l}{\partial t}(t,z) + \frac{\partial l}{\partial z}(t,z) \exp(-tA) B u \equiv 0.
$$
En prenant, $u=0$, $z$ et $t$ arbitraires, on en déduit (prendre, par exemple,
la trajectoire du système qui passe par $z$ à l'instant $t$ et dont la
commande $u$ est nulle):
$$
\frac{\partial l}{\partial t}(t,z) \equiv 0.
$$
Donc nécessairement $l$ est uniquement fonction de $z$. Ainsi
$$
\frac{\partial l}{\partial z}(z) \exp(-tA) B \equiv 0.
$$
En dérivant cette relation par rapport à $t$, on a,
$$
\frac{\partial l}{\partial z}(z) \exp(-tA) A B \equiv 0
$$
car $\frac{d}{dt}(\exp(-tA)) = - \exp(-tA) A $. Plus généralement, une
dérivation à n'importe quel ordre $k\geq 0$ donne
$$
\frac{\partial l}{\partial z}(z) \exp(-tA) A^k B \equiv 0.
$$
En prenant $t=0$ on obtient
$$
\frac{\partial l}{\partial z}(z) A^k B = 0, \quad \forall k \geq 0.
$$
Ainsi le vecteur $\sfrac{\partial l}{\partial z}(z)$ appartient à
l'intersection des noyaux à gauche de la famille infinie de matrice
$(A^k B)_{k\geq 0}$. Le noyau à gauche de $A^k B$ n'est autre que
$\im(A^k B)^{\perp}$, l'orthogonal de l'image de $A^k B$. Donc
$$
\frac{\partial l}{\partial z}(z)
\in \bigcap_{k\geq 0} \im (A^k B)^{\perp}.
$$
Mais
$$
\bigcap_{k\geq 0} \im (A^k B)^{\perp} =
\left(\im (B)+ \cdots+ \im (A^k B)+\cdots \right)^{\perp}.
$$
La suite d'espace vectoriel $E_{k}=\im (B)+ \cdots+ \im (A^k
B)$ est une suite croissante pour l'inclusion, $E_{k}\subset E_{k+1}$.
Si pour un certain $k$, $E_{k}=E_{k+1}$, cela signifie que $\im
(A^{k+1} B)\subset E_{k}$, donc $A(E^{k})\subset E_{k}$. Mais
$\im (A^{k+2} B) = \im (A A^{k+1} B) \subset A(E^{k+1})$.
Ainsi $\im (A^{k+2} B)\subset E_{k}$. On voit donc que pour tout
$r>0$, $\im (A^{k+r} B)\subset E_{k}$, d'où $E_{k+r}=E_{k}$.
Ainsi la suite des $E_{k}$ est une suite de sous-espaces vectoriels de
$\RR^{n}$ emboîtés les uns dans les autres. Cette suite stationne dès
qu'elle n'est plus, pour un certain $k$, strictement croissante. Il
suffit donc de ne considérer que ses $n$ premiers termes soit $E_{0}$,
\ldots, $E_{n-1}$, car automatiquement $E_{n-1}=E_{n+r}$ pour tout
$r>0$.

En revenant à la suite des noyaux à gauche de $A^k B$, nous voyons que
$\sfrac{\partial l}{\partial z}(z)$ dans le noyau à gauche de la
suite infinie de matrices $(A^k B)_{k\geq 0}$, est équivalent à $\sfrac{\partial l}{\partial z}(z)$ dans le noyau à gauche de la {\em
suite finie} de matrices $(A^k B)_{0\leq k\leq n-1}$\footnote{On
pourrait aussi utiliser le théorème de Cayley-Hamilton qui donne un
résultat plus précis: toute matrice carrée est racine de son
polynôme caractéristique. Cela veut dire, $A$ étant de taille $n$, que
$A^n$ est une combinaison linéaire des $(A^k)_{0\leq k\leq n-1}$:
$$
A^n = \sum_{k=0}^{n-1}p_k A^{k}
$$
où les $p_k$ sont définis par $\det(\lambda I_{n}-A)=\lambda^n -
\sum_{k=0}^{n-1}p_k \lambda^{k}$. Nous avons préféré un argument plus
simple avec la suite des $E_{k}$ mais qui a l'avantage de passer au non
linéaire et qui correspond au calcul de l'algèbre de Lie de
commandabilité.}.

Ainsi, pour tout $z$, $\sfrac{\partial l}{\partial z}(z)$ appartient au
noyau à gauche de la matrice $n\times (nm)$,
\begin{equation}
{\cal C}= (B, AB, A^2B, \ldots, A^{n-1}B)
\label{kalmancom-eq}
\end{equation}
dite {\em matrice de commandabilité} de Kalman. Si $\cal C$ est de rang
$n$, son noyau à gauche est nul, donc $l$ ne dépend pas de $z$: $l$ est
alors une fonction constante et $h$ également.

Réciproquement, si la matrice de commandabilité $\cal C$ n'est pas de
rang maximal, alors il existe un vecteur $w \in \RR^n/\{0\}$, dans le
noyau à gauche de (\ref{kalmancom-eq}). En remontant les calculs avec
$l(z,t)=w^{\prime}z$ on voit que $\dot \lambda=0$ le long des
trajectoires. En passant
aux variables $(x,u)$, on obtient une intégrale première non triviale
$=h(t,x)=w^{\prime} \cdot \exp(-tA) x$. Toute trajectoire du système se
situe dans un hyperplan orthogonal à $w$.

En résumé, nous avons démontré la
\begin{proposition}
\label{int-prm-prp}
La matrice de commandabilité
$$
{\cal C}= (B, AB, A^2B, \ldots,A^{n-1}B)
$$
est de rang $n$, si, et seulement si, les seules intégrales
premières du système \eqref{lincom-eq} sont triviales.
\end{proposition}

Des propositions \ref{com-prp} et \ref{int-prm-prp}, il vient: si le
système \eqref{lincom-eq} est commandable, sa matrice de commandabilité
est de rang $n$. Nous allons voir que la réciproque est vraie. Pour
cela, nous avons besoin de certaines propriétés d'invariance.

\Changelback

\Subsection{Invariance}

\begin{definition}[changement d'état, bouclage statique régulier]
Un changement linéaire de coordonnées $x\mto \tilde x$ est défini
par une matrice $M$ inversible d'ordre~$n$: $x= M \tilde x$. Un
bouclage statique régulier $u\mto \tilde u$ est défini par une
matrice $N$ inversible d'ordre~$m$ et une autre matrice $K$, $m\times
n$ : $u= K \tilde x + N \tilde u$. C'est un changement de variables sur
les commandes paramétré par l'état.
\end{definition}
L'ensemble des transformations
\begin{equation}
\left(\begin{array}{c}
\tilde x\\ \tilde u
\end{array}
\right)
\mto
\left(
\begin{array}{c}
x\\ u
\end{array}
\right)
=
\left(\begin{array}{cc}
M& 0
\\
K & N
\end{array}
\right)
\left(\begin{array}{c}
\tilde x\\ \tilde u
\end{array}
\right)
\label{groupe-eq}
\end{equation}
forment un groupe lorsque les matrices $M$, $N$ et $K$ varient
($M$ et $N$ restant inversibles).

Si $\dot x = A x+ Bu$ est commandable (\resp n'admet pas d'intégrale
première) alors il est évident que
$\dot{\widetilde{x}}= \widetilde{A} \widetilde{x}
+ \widetilde{B}\widetilde{u}$ obtenu avec (\ref{groupe-eq}) est
commandable (\resp n'admet pas d'intégrale première).

Les notions de commandabilité et d'intégrale première sont
intrinsèques, c'est-à-dire, indépendantes des coordonnées avec
lesquelles les équations du système sont établies. Si la matrice de
commandabilité dans les coordonnées $(x,u)$ est de rang $n$, la matrice
de commandabilité dans les coordonnées $(\tilde x,\tilde u)$ sera aussi
de rang $n$. Cette simple remarque conduit au résultat non évident
suivant:
$$
\mbox{rang}(B,AB,\ldots, A^{n-1}B)=n \ssi
\mbox{rang}(\tilde B, \tilde A\tilde B, \ldots,\tilde A^{n-1}\tilde B) =n
$$
où $\tilde A$ et $\tilde B$ s'obtiennent en écrivant $\dot x = A x+ B
u$ dans les coordonnées $(\tilde x,\tilde u)$:
$$
\dot{\tilde x }= M^{-1}(AM+BK) \tilde x + M^{-1}BN \tilde u.
$$
Soit $\tilde A = M^{-1}(AM+BK)$ et $\tilde B = M^{-1}BN$. En fait, il
est possible d'aller beaucoup plus loin et de montrer que les indices
de commandabilité définis ci-dessous sont aussi invariants.

\begin{definition}[indices de commandabilité]
Pour tout entier $k$, on note~$\sigma_k$ le rang de la matrice $(B, AB,
A^2B, \ldots, A^{k}B)$. Les $(\sigma_k)$ sont appelés indices de
commandabilité du système linéaire \eqref{lincom-eq},
\end{definition}
La suite $\sigma_k$ est croissance, majorée par $n$. Ainsi, l'absence
d'intégrale première est équivalente à $\sigma_{n-1}=n$.

\begin{proposition}[invariance]
Les indices de commandabilité de $\dot x =A x+Bu$ sont invariants par
changement de variable sur $x$ et bouclage statique régulier sur $u$.
\end{proposition}
Nous laissons la preuve de ce résultat par récurrence sur $k$ en
exercice.

Il est important de comprendre la géométrie derrière cette invariance.
Les transformations $(x,u)\mto (\tilde x,\tilde u)$ du
type (\ref{groupe-eq}) forment un groupe. Ce groupe définit une
relation d'équivalence entre deux systèmes ayant même nombre d'états et
même nombre de commandes. La proposition précédente signifie simplement
que les indices de commandabilité sont les même pour deux systèmes
appartenant à la même classe d'équivalence, i.e, le même objet
géométrique vu dans deux repères différents. En fait, on peut montrer
que les indices de commandabilité sont les seuls invariants: il y a
autant de classes d'équivalence que d'indices de commandabilité
possibles. Nous ne montrerons pas directement ce résultat. Tous les
éléments nécessaires à cette preuve se trouvent dans la construction de
la forme de Brunovsky ci-dessous (voir aussi
\cite{kailath-book,sontag-book}).

\subsection{Un exemple}
Soit le système mécanique à deux degrés de liberté et une seule
commande de la figure \ref{com:ex:fig}.
\begin{figure}[htb]
\begin{center}
\includegraphics[scale=1]{MasseRessort}
\end{center}
\caption{Deux masses couplées par un ressort, le tout piloté
par une seule force~$u$}
\label{com:ex:fig}
\end{figure}
Il s'agit d'un système
mécanique sous actionné contrairement au bras motorisé étudié dans l'introduction
(un degré de liberté (l'angle $\theta$) et un
moteur). En négligeant les frottements et en
supposant le ressort linéaire de raideur~$k$, on est conduit au modèle
suivant:
\begin{equation}\label{com:ex:eq}
\left\{
\begin{aligned}
m_{1} \ddot x_{1}& = k(x_{2}-x_{1})+ u \\
m_{2} \ddot x_{2} & = k(x_{1} - x_{2}).
\end{aligned}
\right.
\end{equation}
Montrons que ce système est commandable. Il suffit pour cela de
remarquer que la quantité $x_{2}$, l'abscisse de la masse qui n'est pas
directement soumise à la force $u$, joue un rôle très particulier
(sortie de Brunovsky). Si au lieu de donner $t\mto u(t)$ et
d'intégrer (\ref{com:ex:eq}) à partir de positions et vitesses initiales, on
fixe $t\mto x_{2}(t)=y(t)$. Alors $x_{1}=(\sfrac{m_{2}}{k}) \ddot y + y$
et donc $u=m_{1} \ddot x_{1}+m_{2} \ddot x_{2}= (\sfrac{m_{1} m_{2}}{k}) y^{(4)} +
(m_{1}+m_{2}) \ddot y$. Ainsi on peut écrire le système en faisant jouer à
$x_{2}$ un rôle privilégié:
\begin{equation*}
\left\{
\begin{aligned}
x_{1} & = (m_{2}/k)~ \ddot y + y \\
x_{2} & = y \\
u & = (m_{1} m_{2}/k)~y^{(4)} + m_{1}+m_{2}) \ddot y.
\end{aligned}
\right.
\end{equation*}
On obtient ainsi un paramétrisation explicite de toutes les
trajectoires du système. Les relations précédentes établissent une
correspondance bi-univoque et régulière entre les trajectoires
de (\ref{com:ex:eq}) et les fonctions régulières $t\mto y(t)$.

Cela permet de calculer de
la façon la plus élémentaire possible une commande $[0,T]\ni t \mto
u(t)$ qui fait passer de l'état
$p=(x_{1}^{p},v_{1}^{p},x_{2}^{p},v_{2}^{p})$ à l'état
$q=(x_{1}^{q},v_{1}^{q},x_{2}^{q},v_{2}^{q})$ ($v_{i}$ correspond à
$\dot x_{i}$). Comme
\begin{equation*}
\left\{
\begin{aligned}
x_{1} & = (m_{2}/k)~ \ddot y + y \\
v_{1} & = (m_{2}/k) ~y^{(3)} + \dot y \\
x_{2} & = y \\
v_{2} & = \dot y \\
\end{aligned}
\right.
\end{equation*}
imposer $p$ en $t=0$ revient à imposer $y$ et ses dérivées jusqu'à
l'ordre~$3$ en~$0$. Il en est de même en $t=T$. Il suffit donc de
trouver une fonction régulière $[0,T]\ni t \mto y(t)$ dont les
dérivées jusqu'à l'ordre~$3$ sont données a priori en $0$ et en $T$:
un polynôme de degré 7 en temps répond à la question mais il existe
bien d'autres possibilités.

Nous allons voir, avec la forme normale de Brunovsky, qu'une telle
correspondance entre $y$ et les trajectoires du système est générale.
Il suffit que \eqref{lincom-eq} soit commandable. Tout revient donc à
trouver la sortie de Brunovsky~$y$ de même dimension que la commande~$u$.

\Subsection{Critère de Kalman et forme de Brunovsky}

\begin{theoreme}[critère de Kalman]
\label{kalmancom-thm}
Le système $\dot x =A x + B u$ est commandable si, et seulement si, la
matrice de commandabilité ${\cal C}=(B,AB,\ldots, A^{n-1}B)$ est de rang
$n=\dim(x)$.
\end{theoreme}
{\em La paire $(A,B)$ est dite
commandable} si le rang de la matrice de commandabilité
$\cal C$ est maximum.

La preuve que nous allons donner de ce résultat n'est pas la plus
courte possible. Cependant, elle permet de décrire explicitement, pour
toute durée $T>0$ et pour $p,q\in \RR^n$, les trajectoires du
système qui partent de $p$ et arrivent en $q$. Cette
preuve utilise la forme dite de Brunovsky. Cette dernière se construit
grâce à une méthode d'élimination, proche de celle très classique du
pivot de Gauss.

\begin{theoreme}[forme de Brunovsky]\label{Brunovsky-thm}
Si la matrice de commandabilité $(B,A B,\ldots, A^{n-1}B)$ du système
$\dot x =A x + B u$ est de rang $n=\dim(x)$ et si $B$ est de rang
$m=\dim(u)$, alors il existe un changement d'état $z=Mx$ ($M$ matrice
inversible $n\times n$) et un bouclage statique régulier $u=Kz + N v$
($N$ matrice inversible $m\times m$), tels que les équations du système
dans les variables $(z,v)$ admettent la forme suivante (écriture sous
la forme de $m$ équations différentielles d'ordre~$\geq 1$) :
\begin{equation}
y_1^{(\alpha_1)}= v_1, \ldots,\quad y_m^{(\alpha_m)}=v_m
\label{Brunovsky-eq}
\end{equation}
avec comme état $z=(y_1,y_1^{(1)}, \ldots, y_1^{(\alpha_1-1)},
\ldots, y_m,y_m^{(1)},
\ldots, y_m^{(\alpha_m-1)})$, les $\alpha_i$ étant des entiers positifs.
\end{theoreme}
Les $m$ quantités $y_{j}$, qui sont des combinaisons linéaires de l'état
$x$, sont appelées {\em sorties de Brunovsky}.

Pour une paire $(A,B)$ commandable, les indices de commandabilité
$\sigma_k$ sont directement reliés aux $m$ entiers $\alpha_i$ de la forme
de Brunovsky. Il est facile de voir que, dans le cas commandable,
se donner les $\sigma_k$ revient à ce donner les $\alpha_i$.
Ainsi, deux systèmes commandables
ayant les mêmes indices de commandabilité admet la même forme de
Brunovsky, ils sont donc équivalents. Ce n'est plus vrai si ces deux
systèmes ne sont plus commandables avec les mêmes indices de commandabilité.
Il n'y aura équivalence que de la
partie commandable. L'équivalence sera complète, si les parties non
commandables sont équivalents, i.e., si les matrices définissant les
dynamiques autonomes des parties non commandables sont semblables et
donc admettent la même forme normale de Jordan.

\subsubsection*{Démonstration du théorème \ref{Brunovsky-thm}}
Elle repose sur
\begin{enumerate}

\item une mise sous forme triangulaire des équations d'état et
l'élimination de $u$;

\item l'invariance du rang de $(B,AB,\ldots, A^{n-1}B)$ par rapport aux
transformations (\ref{groupe-eq});

\item une récurrence sur la dimension de l'état.

\end{enumerate}

\subsubsection*{Mise sous forme triangulaire}
On suppose que $B$ est de rang $m=\dim(u)$ (sinon, faire un
regroupement des commandes en un nombre plus petit que $m$ de façon à
se ramener à ce cas). Alors, il existe une partition de l'état
$x=(x_r,x_u)$ avec $\dim(x_r)=n-m$ et $\dim(x_u)=m$ telle que les
équations \eqref{lincom-eq} admettent la structure bloc suivante
$$
\begin{array}{rcl}
\dot x_r& =& A_{rr} x_r + A_{ru}x_u + B_{r} u
\\
\dot x_u& =& A_{ur} x_r + A_{uu}x_u + B_{u} u
\end{array}
$$
où $B_u$ est une matrice carrée inversible. Cette partition n'est pas
unique, bien sûr. En tirant $u$ de la seconde équation et en reportant
dans la première, on obtient
$$
\begin{array}{rcl}
\dot x_r& =& A_{rr} x_r + A_{ru}x_u + B_{r} B_{u}^{-1}(\dot x_u - A_{ur} x_r - A_{uu}x_u)
\\
\dot x_u& =& A_{ur} x_r + A_{uu}x_u + B_{u} u.
\end{array}
$$
En regroupant les dérivées dans la première équation, on a
$$
\begin{array}{rcl}
\dot x_r -B_{r} B_{u}^{-1} \dot x_u & =& (A_{rr}- B_{r} B_{u}^{-1}A_{ur}) x_r + (A_{ru}- B_{r}
B_{u}^{-1}A_{uu}) x_u
\\
\dot x_u& =& A_{ur} x_r + A_{uu}x_u + B_{u} u.
\end{array}
$$
Avec une transformation (\ref{groupe-eq}) définie par
$$
\tilde x_r = x_r - B_{r}B_{u}^{-1}x_u, \quad \tilde x_u = x_u, \quad \tilde u = A_{ur} x_r +
A_{uu}x_u + B_{u} u
,
$$
les équations $\dot x = A x +B u$ deviennent
$$
\begin{array}{rcl}
\dot{\tilde x_r} & =& \tilde A_{r} \tilde x_r + \tilde A_{u} \tilde x_u
\\
\dot{\tilde x_u}& =&\tilde u
\end{array}
$$
où $\tilde A_{r} = (A_{rr}- B_{r} B_{u}^{-1}A_{ur})$ et $\tilde A_{u}=
(A_{rr}- B_{r} B_{u}^{-1}A_{ur})B_r B_{u}^{-1} + (A_{ru}-\nobreak B_{r}
B_{u}^{-1}A_{uu}) $. Dans cette structure triangulaire où la commande~$\tilde u$ n'intervient pas dans la première équation, nous voyons
apparaître un système plus petit d'état $\tilde x_r$ et de commande
$\tilde x_u$. Cela nous permet de réduire la dimension de $x$ et de
raisonner par récurrence.

\subsubsection*{Invariance}
Un simple calcul par blocs nous montre que si la matrice $(B,AB,\ldots, A^{n-1}B)$
est de rang $n$ alors $(A_u,A_rA_u,\ldots, A_r^{n-m-1}A_u)$ est de rang
$n-m$. Du système de taille $n$ on passe ainsi au système de taille
réduite $n-m$, $\dot{\tilde x_r} = \tilde A_{r} \tilde x_r + \tilde
A_{u} \tilde x_u$ ($\tilde x_r$ l'état, $\tilde x_u$ la commande).

\subsubsection*{Récurrence sur le nombre d'états}
Supposons donc, le résultat vrai pour toutes les dimensions d'état
inférieures ou égales à $n-1$. Considérons un système $\dot x= A x + B
u$ avec $n=\dim(x)$, sa matrice de commandabilité de rang $n$, et $B$
de rang $m=\dim(u)>0$. L'élimination de $u$ donne, après une
transformation de type (\ref{groupe-eq}),
$$
\begin{array}{rcl}
\dot{x_r} & =& A_{r} x_r + A_{u} x_u
\\
\dot{ x_u}& =& u
\end{array}
$$
avec $(A_u,A_rA_u,\ldots, A_r^{n-m-1}A_u)$ de rang $n-m<n$, où $\dim(u)=\dim(x_u)=m$ et $\dim(x_r) =n-m$ (les $\tilde{~}$ ont été
enlevés pour alléger les notations). Notons $\bar m$ le rang de
$A_{u}$. Comme $\bar m \leq m$, un changement de variable sur $x_u$,
$(\bar x_u, \tilde x_u)= P x_u$ avec $P$ inversible, permet d'écrire le
système sous la forme
\begin{equation}
\begin{array}{rcl}
\dot{x_r} & =& A_{r} x_r + \bar A_{u} \bar x_u
\\
\dot{\bar x_u}& =& \bar u
\\
\dot{\tilde x_u}& =& \tilde u
\end{array}
\label{elim-proof}
\end{equation}
avec $(\bar u, \tilde u)= P u$, $\dim(\bar x_u)=\bar m$ et $\bar A_u$
de rang $\bar m$. Comme le rang de la matrice de commandabilité de
$\dot{x_r} = A_{r} x_r + \bar A_{u} \bar x_u$ ($x_r$ est l'état et
$\bar x_u$ la commande) est égal à $n-m=\dim(x_r)$, l'hypothèse de
récurrence assure l'existence d'un changement de variable $x_r=Mz$ et
d'un bouclage statique régulier $\bar x_u = K z + N \bar v$ ($\bar v$
est la nouvelle commande ici) mettant ce sous système sous forme de
Brunovsky. Alors le changement d'état $(x_r,\bar x_u,\tilde x_u)$
défini par
$$
\left(
\begin{array}{c}
x_r\\ \bar x_u \\ \tilde x_u
\end{array}
\right)
=
\left(
\begin{array}{ccc}
M& 0 & 0
\\
K & N & 0
\\
0 & 0 & 1
\end{array}
\right)
\left(
\begin{array}{c}
z \\ \bar v \\ \tilde x_u
\end{array}
\right)
$$
et le bouclage statique régulier sur $(\bar u,\tilde u)$
$$
\bar u = KM^{-1}(A_r x_r + \bar A_u \bar x_u) + N \bar v, \quad \tilde u = \tilde v
$$
transforme alors le système (\ref{elim-proof}) sous forme de Brunovsky
avec $v=(\bar v, \tilde v)$ comme nouvelle commande. \hfill
\qed

\subsubsection*{Démonstration du théorème \ref{kalmancom-thm}}
La commandabilité est indépendante du choix des variables sur~$x$ et
d'un bouclage statique régulier sur~$u$. On peut donc supposer le
système sous sa forme de Brunovsky. Dans ces coordonnées, aller d'un
état à un autre est élémentaire. On se ramène à étudier la
commandabilité du système scalaire $y^{(\alpha)} = v$. L'état initial
$(y_a,\ldots,y^{(\alpha-1)}_a)$ et l'état final
$(y_b,\ldots,y^{(\alpha-1)}_b)$ ainsi que la durée~$T$ étant donnés,
les lois horaires $t\mto v(t)$ assurant le passage entre ces deux
états pendant la durée $T$ correspondent alors à la dérivée
$\alpha$-ième de fonctions $[0,T]\ni t\mto \varphi(t)\in \RR$, dont
les dérivées jusqu'à l'ordre $\alpha-1$ en $0$ et $T$ sont imposées par
$$
\varphi^{(r)}(0)=y_{a}^{(r)}, \quad \varphi^{(r)}(T)=y_{b}^{(r)}, \quad r=0, \ldots, \alpha-1.
$$
Il existe bien sûr une infinité de telles fonctions $\varphi$ (on peut
prendre pour $\varphi$ un polynôme de degré $2\alpha -1$, par exemple).
\hfill \qed

\subsection{Planification et suivi de trajectoires}

De la preuve des deux théorèmes précédents, il est important de retenir
deux choses :

\begin{itemize}

\item Dire que le système $\dot x = Ax + Bu$ est commandable, est
équivalent à l'existence d'un bouclage statique régulier $u=K z + N v$
et d'un changement d'état $x=Mz$ se ramenant à la forme de Brunovsky
$y^{(\alpha)}=v$ et $z=(y, \ldots, y^{(\alpha-1)})$ (par abus de
notation $y=(y_1,\ldots, y_{m})$ et
$y^{(\alpha)}=(y_1^{(\alpha_1)},\ldots, y_m^{(\alpha_m)})$). Ainsi
$$
x= M (y, \ldots, y^{(\alpha-1)}), \quad u = L (y, \ldots, y^{(\alpha)})
$$
où la matrice $L$ est construite avec $K$, $N$ et $M$. Lorsque l'on
considère une fonction régulière arbitraire du temps $t\mto
\varphi(t)\in \RR^{m}$ et que l'on calcule $x(t)$ et $u(t)$ par les
relations
$$
x(t)= M (\varphi(t), \ldots, \varphi^{(\alpha-1)}(t)), \quad u(t) = L (\varphi(t), \ldots,
\varphi^{(\alpha)}(t))
$$
alors $t\mto (x(t),u(t))$ est une trajectoire du système: on a
identiquement $\dot x(t) - A x(t) - B u(t) =0$. Réciproquement, toutes
les trajectoires régulières du système se paramétrisent de cette façon,
grâce à $m$ fonctions scalaires arbitraires $\varphi_1(t)$, $\ldots$, $
\varphi_m(t)$ et un nombre fini de leurs dérivées par les formules
ci-dessus.

\item La commandabilité de $\dot x = A x + B u$ implique la
stabilisation par retour d'état. En effet, il suffit de considérer la
forme de Brunovsky et dans la forme de Brunovsky, chacun des $m$
sous-systèmes indépendants $y_{i}^{(\alpha_i)}= v_i$. Soient $\alpha_i$
valeurs propres, $\lambda_1, \ldots, \lambda_{\alpha_i}$, correspondant
au spectre d'une matrice réelle de dimension $\alpha_i$. Notons $s_k$
les fonctions symétriques des $\lambda_i$ (des quantités réelles donc)
homogènes de degré~$k$,
$$
\prod_{k=1}^{\alpha_i} (X-\lambda_k) = X^{\alpha_i} - s_1 X^{\alpha_i-1} + s_2 X^{\alpha_i-2}
+ \cdots + (-1)^{\alpha_i} s_{\alpha_i}
$$
Alors, dès que les $\lambda_k$ sont à partie réelle strictement négative, le bouclage
$$
v_i = s_1 y_i^{(\alpha_i-1)} - s_2 y_i^{(\alpha_i-2)} + \cdots
+ (-1)^{\alpha_i-1} s_{\alpha_i} y_i
$$
assure la stabilité de $y_i^{(\alpha_i)}=v_i$: en effet, les exposants
caractéristiques (on dit aussi les {\em pôles}) du système bouclé sont
les $\lambda_k$.

\end{itemize}
Aussi de la forme de Brunovsky l'on déduit directement le résultat
suivant:
\begin{theoreme}[placement de pôles] \label{pole-thm}
Si la paire $(A,B)$ est commandable alors, pour toute matrice réelle $F$ $n\times
n$, il existe une matrice $m\times n $, $K$ (non nécessairement unique), telle que le
spectre de $A+BK$ coïncide avec celui de $F$.
\end{theoreme}

De retour dans les coordonnées de modélisation, $\dot x = A x + B u$,
la planification de trajectoire nous donne une trajectoire du système
(par exemple la trajectoire que doit suivre une fusée au décol\-lage, la
man{\oe}uvre d'atterrissage d'un avion...). Nous la notons
$t\mto (x_r(t),u_r(t))$ avec l'indice $r$ pour référence. En
pratique, et à cause des aléas de l'existence, il convient, comme
l'illustre la figure \ref{tracking-fig}, de corriger en fonction de
l'écart $\Delta x$, la commande de référence $u_r$ (il~est rare de
piloter un système en aveugle, uniquement en sachant d'où l'on part et
où l'on veut aller). Le problème est donc de calculer la correction
$\Delta u$ à partir de $\Delta x$ de façon à revenir sur la trajectoire
de référence. On peut alors utiliser un bouclage stabilisant en plaçant
les pôles sur la forme de Brunovsky.
\begin{figure}[htb]
\begin{center}
\includegraphics[scale=1]{tracking}
\end{center}
\caption{Le suivi de trajectoire}
\label{tracking-fig}
\end{figure}

D'une façon plus précise: comme $\dot x_r = A x_r + B u_r$, on obtient,
par différence avec $\dot x = A x + B u$ l'équation d'erreur suivante
$$
\dotex{(\Delta x)} = A ~\Delta x + B~ \Delta u
$$
où $\Delta x=x-x_r$ et $\Delta u=u-u_r$; le système étant commandable,
il existe $K$, matrice $m\times n$, telle que les valeurs propres de
$A+BK$ soient à parties réelles strictement négatives (placement de
pôles). Ainsi la correction
$$
\Delta u = K~\Delta x
$$
assure le suivi asymptotique de la trajectoire de référence $t\mto
x_{r}(t)$.
La stabilité structurelle des points d'équilibres hyperboliques
garantie
que toute erreur assez faible (petite incertitude sur $A$ et $B$,
effets non linéaires faibles, erreurs de mesure, erreurs de troncature
dues à la discrétisation de la loi de contrôle obtenue, $\ldots$) ne
sera pas amplifiée au cours du temps: $x$ restera ainsi proche de
$x_{r}$.

Nous terminerons par une constatation d'ordre expérimental: lorsque le
modèle dynamique $\dot x = A x + Bu$ est d'origine physique, il n'est
pas rare que sa partie non commandable, i.e., ses intégrales premières,
ait une signification physique immédiate, tout comme les grandeurs $y$,
fonction de $x$ et intervenant dans la forme de Brunovsky (\cf
théorème \ref{Brunovsky-thm}) de sa partie comman\-dable. Cet état de
fait n'est vraisemblablement pas dû entièrement au hasard: en~phy\-sique,
les grandeurs qui admettent une signification intrinsèque, i.e., les
grandeurs physiques, sont celles qui ne dépendent pas du repère de
l'observateur. En automatique, le passage d'un repère à un autre
correspond, entre autre, à une transformation de type
(\ref{groupe-eq}). Il est alors clair que le \og sous-espace\fg engendré par
les sorties de Brunovsky est un invariant. Il a donc toutes les chances
d'avoir un sens physique immédiat. De plus les sorties de Brunovsky
admettent un équivalent non linéaire pour de nombreux systèmes
physiques. On les appelle alors sorties plates (voir le chapitre~\ref{flat:ch}).

\begin{enonce}[remark]{Exercice}
Pour le système (\ref{com:ex:eq}) calculer explicitement un bouclage
d'état qui place les pôles. Connaissant les paramètres $m_{1}$,
$m_{2}$ et~$k$, que choisir comme pôles pour assurer la stabilité
asymptotique du système bouclé ainsi que la robustesse par rapport à
des dynamiques négligées~?
\end{enonce}

\begin{enonce}[remark]{Exercice}
Soit le système de la figure \ref{com:ex:fig}. On rajoute
un amortisseur linéaire entre les deux masses. Ainsi (\ref{com:ex:eq})
devient ($a >0$ est le coefficient de frottement)
\begin{equation*}
\left\{
\begin{aligned}
m_{1} \ddot x_{1}& = k(x_{2}-x_{1}) + a (\dot x_{2}-\dot x_{1}) + u \\
m_{2} \ddot x_{2} & = k(x_{1} - x_{2}) + a (\dot x_{1}-\dot x_{2}).
\end{aligned}
\right.
\end{equation*}
Montrer que le système reste commandable et calculer sa sortie de
Brunovsky.
\end{enonce}

\section{Linéarisation par bouclage statique}

\subsection{Équivalence statique}
La relation d'équivalence qui permet de mettre un système linéaire
$\dot x = A x + Bu $
commandable sous forme de Brunovsky peut être prolongée de la manière
suivante. Au lieu de considérer des transformations du type
$$
\begin{bmatrix}
x\\u
\end{bmatrix}
\mto
\begin{bmatrix}
M x\\ K x + N u
\end{bmatrix}
$$
avec $M$ et $N$ matrices inversibles, considérons des transformations
inversibles plus générales et non linéaires suivantes
$$
\begin{bmatrix}
x\\u
\end{bmatrix}
\mto
\begin{bmatrix}
z=\phi(x)\\ v=k(x,u)
\end{bmatrix}
$$
où $\phi$ est un difféomorphisme et à $x$ bloqué, $u \mto k(x,u)$
également. Il~est donc logique de considérer maintenant les systèmes
non linéaires de la forme $\dot x = f(x,u)$ et leur classification
modulo le groupe de transformations ci-dessus. La relation
d'équivalence qui en résulte est appelée équivalence par bouclage
statique régulier et changement de coordonnées (d'une façon plus abrégée équivalence statique).
Déci\-der si deux systèmes
avec les mêmes nombres d'états et des commandes, $\dot x =f(x,u)$ et
$\dot z= g(z,v)$, ($f$, $g$ régulières) sont équivalents, est un
problème de géométrie très compliquée et largement ouvert.
En revanche, il existe une caractérisation explicite des systèmes
non linéaires équivalents aux systèmes linéaires commandables: ces
systèmes sont dits {\em linéarisables par bouclage statique régulier}.

\subsection{CNS de linéarisation statique}
L'intérêt pratique est le suivant. Les équations issues de la physique
$\dot x =f(x,u)$ sont en géné\-ral non linéaires dans les coordonnées de
modélisation $x$ et $u$. La question \og Existe-t-il des coordonnées,
$z=\phi(x)$ et $v=k(x,u)$, qui rendent les équations linéaires, $\dot z
= A z + B v$ avec $(A,B)$ commandable~? \fg est alors d'importance. En
effet, une réponse positive signifie que le système est faussement non
linéaire. Il suffit de changer de \og repère\fg pour que tout devienne
linéaire.

À partir de maintenant, nous considérons le système
$$
\dot x = f(x,u),\quad x\in \RR^{n}, \quad u\in\RR^{m}
$$
avec $f$ régulière et $f(0,0)=0$. Notre point de vue sera local autour
de l'équilibre $(x,u)=(0,0)$. Il peut être élargi à l'espace tout
entier sans difficulté importante.

\begin{lemme}\label{x1x2:lem}
Les deux propositions suivantes sont équivalentes
\begin{enumerate}
\item Le système étendu
\begin{equation}\label{xu:eq}
\left\{
\begin{aligned}
\dot x & =f(x,u) \\
\dot u & = \bar u \\
\end{aligned}
\right.
\end{equation}
est linéarisable par bouclage statique ($\bar u $ est ici la commande)

\item Le système
\begin{equation}\label{x:eq}
\dot x =f(x,u)
\end{equation}
est linéarisable par bouclage statique.
\end{enumerate}

\end{lemme}
\begin{proof}
Si $x=\phi(z)$ et $u=k(z, v)$ transforment (\ref{x:eq}) en un
système linéaire commandable $\dot z = A z + B v$, alors
$$(x,u)=(\phi(z),k(z,v)) \qqbox{et}\bar u = \frac{\partial k}{\partial z}
(Az+Bv) + \frac{\partial k}{\partial v} \bar v$$ transforme (\ref{xu:eq})
en
\begin{equation}\label{zv:eq}
\dot z = A z + B v,\quad \dot v = \bar v
\end{equation}
système linéaire commandable. Ainsi la seconde proposition implique
la première.

Supposons maintenant la première proposition vraie. Comme tout système
linéaire commandable peut s'écrire sous la forme (\ref{zv:eq}) avec
$(A,B)$ commandable, (\cf forme de Brunovsky)
il existe une transformation
$(x,u)=(\phi(z,v),\psi(z,v))$ et $\bar u = k(z,v,\bar v) $ qui
transforme (\ref{xu:eq}) en (\ref{zv:eq}) avec $\dim(z)=\dim(x)$. Cela
veut dire que pour tout $(z,v,\bar v)$,
$$
\frac{\partial \phi}{\partial z}(z,v) (Az+Bv) + \frac{\partial \phi}{\partial
v}\bar v = f(\phi(z,v),\psi(z,v)).
$$
Donc $\phi$ ne dépend pas de $v$ et la transformation inversible
$x=\phi(z)$, $u=\psi(z,v)$ transforme (\ref{x:eq}) en $\dot z= A z+ B
v$.
\end{proof}

Ainsi, quitte à étendre l'état en posant $\dot u =\bar u$ et en
prenant comme entrée $\bar u$, on peut toujours supposer que $f$ est
affine en $u$, i.e., que le système admet les équations
\begin{equation}\label{fg:eq}
\dot x = f(x) + g_{1}(x) u_{1} + \cdots + g_{m}(x) u_{m}
\end{equation}
où $f$ et les $g_{i}$ sont des champs de vecteurs. Il est alors facile
de voir que les transformations $x=\phi(z)$ et $u=k(z,v)$ qui rendent
le système linéaire sont nécessairement affines en $v$, i.e.,
$k(x,v)= \alpha(x) + \beta(x) v$ avec $\beta$ inversible pour tout
$x$.

À partir des champs de vecteurs définissant \eqref{fg:eq}, on définit
une suite de distributions croissantes par la récurrence suivante
$$
E_{0} = \{ g_{1}, \ldots, g_{m} \}, \quad\quad
E_{i} = \{ E_{i-1}, [f,E_{i-1}] \} \quad i\geq 1
$$
où $[f,g]$ est le crochet de Lie de deux champs de vecteurs. Ces
distributions et le crochet sont invariants par changement de
coordonnées.

Le résultat suivant est issu de \cite{jakubczyk-respondek-80}.
\begin{theoreme}[CNS de linéarisation statique]
\label{cnsstat:thm}
Autour de l'équilibre $(x,u)=(0,0)$, le système \eqref{fg:eq} est
linéarisable par bouclage statique régulier si, et seulement si, les
distributions $E_{i}$, $i=1, \ldots, n-1$, définies ci-dessus sont
involutives (stable par le crochet de Lie),
de rang cons\-tant autour de $x=0$ et le rang de
$E_{n-1}$ vaut $n$, la dimension de~$x$.
\end{theoreme}

\begin{proof}
Il est évident que les distributions $E_{i}$, qui sont des objets
intrinsèques par rapport au coordonnées $x$, restent également
inchangées par bouclage statique $u=\alpha(x) + \beta(x) v$ avec
$\beta(x)$ inversible. Comme pour un système linéaire commandable
$\dot x = A x + Bu$, $E_{i}$ correspondent à l'image de
$(B,AB,\ldots, A^{i}B)$, les conditions sur les $E_{i}$ sont donc
nécessaires. Leur coté suffisant repose essentiellement sur le théorème
de Frobenius \cite{godbillon-book}. Si les $E_{i}$ vérifient les
conditions du théorème, alors il existe un système de coordonnées
locales $(x_{1},\ldots,x_{n})$ autour de $0$ tel que
$$
E_{i}=
\left\{
\frac{\partial }{\partial x_{1}}, \ldots, \frac{\partial }{\partial x_{\sigma_{i}}}
\right\},
$$
où $\sigma_{i}$ est le rang de $E_{i}$. Dans ces coordonnées locales,
$\dot x_{i}$ pour $i >\nobreak \sigma_{0}$ ne dépend pas de la commande $u$.
Ainsi, en remplaçant $u$ par $\alpha(x) + \beta(x) u$ avec une matrice inversible $\beta$
bien choisie, la dynamique \eqref{fg:eq} s'écrit nécessairement ainsi
\begin{align*}
\dot x_{i} & = u_{i}, \quad i=1, \ldots,\sigma_{0} \\
\dot x_{i} &= f_{i}(x), \quad i = \sigma_{0} + 1, \ldots, n.
\end{align*}
Un raisonnement simple montre que, pour $i>\sigma_{1}$, $f_{i}$ ne dépend
pas de $(x_{1}, \ldots, x_{\sigma_{0}})$ car $E_{1}$ involutive. Ainsi
nous avons la structure suivante
\begin{align*}
\dot x_{i} & = u_{i}, \quad i=1, \ldots,\sigma_{0} \\
\dot x_{i} &= f_{i}(x_{1},\ldots,x_{n}), \quad i = \sigma_{0} + 1, \ldots, \sigma_{1}
\\
\dot x_{i} &= f_{i}(x_{\sigma_{0}+1}, \ldots, x_{n}),\quad i =\sigma_{1} + 1, \ldots,
n.
\end{align*}
De plus le rang de $(f_{\sigma_{0}+1}, \ldots, f_{\sigma_{1}})$ par
rapport à $(x_{1}, \ldots,x_{\sigma_{0}})$ vaut
$\sigma_{1}-\sigma_{0}$. Donc $\sigma_{0}\leq \sigma_{1}-\sigma_{0}$.
Quitte à faire des permutations sur les $\sigma_{0}$ premières composantes de $x$,
on peut supposer que
$(x_{1}, \ldots, x_{\sigma_{1}-\sigma_{0}}) \mto
(f_{\sigma_{0}+1}, \ldots, f_{\sigma_{1}})$ est inversible. Cela permet de
définir un nouveau système de coordonnées en remplaçant les $\sigma_{1}-\sigma_{0}$
premières composantes de $x$ par
$(f_{\sigma_{0}+1}, \ldots, f_{\sigma_{1}})$. Dans ces nouvelles coordonnées et après bouclage
statique régulier $u \mto \beta(x) u$ avec $\beta(x)$ inversible
bien choisi, nous avons la structure suivante (les notations avec $u$, $x$ et $f$ sont conservées):
\begin{align*}
\dot x_{i} & = u_{i}, \quad i=1, \ldots,\sigma_{0} \\
\dot x_{i} &= x_{i-\sigma_{0}}, \quad i = \sigma_{0} + 1, \ldots, \sigma_{1}
\\
\dot x_{i} &= f_{i}(x_{\sigma_{0}+1}, \ldots, x_{n}),\quad i =\sigma_{1} + 1, \ldots,
n.
\end{align*}
On sait que ce système est linéarisable si, et seulement si, le
système réduit
\begin{align*}
\dot x_{i} &= x_{i-\sigma_{0}}, \quad i = \sigma_{0} + 1, \ldots,
\sigma_{1}
\\
\dot x_{i} &= f_{i}(x_{\sigma_{0}+1}, \ldots, x_{n}),\quad i =\sigma_{1} + 1, \ldots,
n
\end{align*}
avec $(x_{1},\ldots,x_{\sigma_{1}-\sigma_{0}})$ comme commande. Comme
les distributions $E_{i}$ associées à ce système réduit se déduisent
simplement de celles du système étendu en éliminant les champs de
vecteurs
$\sfrac{\partial }{\partial x_{1}} $, \ldots, $\sfrac{\partial }{\partial
x_{\sigma_{0}}}$, on voit qu'elles vérifient, elles aussi, les
conditions du théorème. Ainsi il est possible de réduire encore le système.
À chaque étape, la linéarisation du système étendu est équivalente à
celle du système réduit. Au bout de cette élimination (en au plus de $n-1$ étapes), la
linéarisation du système de départ est alors équivalent à celle d'un
système réduit de la forme
$$
\dot x =f(x,u)
$$
où le rang de $f$ par rapport à $u$ est égale à la dimension de $x$,
linéarisation qui est alors triviale.
\end{proof}

\begin{enonce}[remark]{Exercice}\label{flat:ex}
Soit le système de la figure \ref{com:ex:fig}. On suppose que le
ressort est non linéaire. Dans (\ref{com:ex:eq}) la raideur $k$ est
fonction de $x_{1}-x_{2}$ : $k=k_{0}+ a (x_{1}-x_{2})^{2}$ avec
$k_{0}$ et $a >0$. Montrer que ce système est linéarisable. Quelle est
la sortie de Brunovsky du système linéaire équivalent~? Que se
passe-t-il si on rajoute du frottement~?
\end{enonce}

\begin{enonce}[remark]{Exercice}\label{reacf.lat:ex}
Prenons l'exemple (\ref{reacteur-eq}) en ne considérant que les deux
équations différentielles relatives à $x_{1}$ et $T$ (nous ne
considérons que la partie commandable). Montrer que ce sous-système à
deux états et une commande est linéarisable. Calculer le bouclage
statique qui linéarise le système.
\end{enonce}

\subsection{Bouclage dynamique}
Le lemme \ref{x1x2:lem} est trompeur. Il~sem\-ble suggérer que le fait
d'étendre un système en rajoutant des dérivées de la commande dans
l'état ne rajoute rien pour la linéarisation. Ceci est vrai si on
rajoute le même nombre d'intégrateurs sur toutes les commandes (\og prolongation totale\fg).
Par contre, des nombres différents peuvent permettre de gagner quelque
chose. Par exemple, le système
$$
\ddot x = -u_{1} \sin \theta,\quad \ddot z = u_{1} \cos\theta -1, \quad \ddot \theta
= u_{2}
$$
n'est pas linéarisable par bouclage statique bien que le système étendu
$$
\ddot x = -u_{1} \sin \theta,\quad \ddot z = u_{1} \cos\theta -1,\quad
\ddot u_{1}= \bar u_{1},
\quad \ddot \theta
= u_{2}
$$
de
commande $(\bar u_{1},u_{2})$ le soit.
Ce fait n'est nullement contraire au lemme \ref{x1x2:lem} puisque
seule l'entrée $u_{1}$ a été prolongée deux fois.
Pour un système à une seule commande, on ne gagne évidement rien \cite{charlet-et-al-scl89}.

Cette remarque est à l'origine de la linéarisation par bouclage
dynamique tel qu'elle a été posée dans \cite{charlet-et-al-scl89}. Un
système $\dot x = f(x,u)$ est dit linéarisable par bouclage dynamique
régulier, si, et seulement si, il existe un compensateur dynamique
régulier
$$
\dot \xi = a(x,\xi, v),\quad u=k(x,\xi,v)
,
$$ tel que le système bouclé
$$
\dot x = f(x,k(x,\xi,v)),\quad \dot \xi = a(x,\xi, v)
$$
soit linéarisable par bouclage statique régulier. Noter que
la dimension de $\xi$ est libre. La dimension de l'espace dans
lequel on doit travailler peut a priori être arbitrairement grande.
Noter également que les compensateurs dynamiques qui consistent à ne
prolonger que les entrées, sont des compensateurs particuliers. Ils ne
permettent pas de linéariser certains systèmes comme celui ci
(voir l'exemple \ref{vtol:ex}):
\begin{align*}
\ddot{x} &= -u_{1}\sin\theta + \varepsilon u_{2}\cos\theta\\
\ddot{z} &= u_{1}\cos\theta + \varepsilon u_{2}\sin\theta -1\\
\ddot\theta &= u_{2}.
\end{align*}
En effet, on peut montrer que, quelque soit le compensateur dynamique de la forme
$u_{1}^{(\alpha_{1})} = \bar u_{1}$, $u_{2}^{(\alpha_{2})} = \bar u_{2}$
($\alpha_{1}$ et $\alpha_{2}$ entiers arbitraires), le système étendu
n'est pas linéarisable par bouclage statique. En revanche il est
linéarisable par le bouclage dynamique endogène construit
en \ref{vtol:ex}.

Cette question est à l'origine des systèmes plats, les systèmes
liné\-ari\-sables par des bouclages dynamiques dits endogènes et auxquels
est associée une relation d'équivalence (i.e., une géométrie). Nous ne
\hbox{savons} pas s'il existe des systèmes non linéarisables par bouclage
dynamique endogène et cependant linéarisable par des bouclages
dynamiques réguliers encore plus généraux dit exogènes. Tous les exemples que nous
connaissons et qui sont linéarisables par bouclage dynamique, le sont par
bouclage dynamique endogène.

\part{Systèmes plats} \label{flat:ch}

Un système $\dot x = f(x,u)$ est ici vu comme un système
sous-déterminé d'équations différentielles. Les variables $(x,u)$
sont soumises aux contraintes $\dot x -f(x,u) =0$. Les systèmes plats
forment une classe pour lesquels nous disposons d'une
paramétrisation explicite de toutes leurs solutions. Par explicite,
nous signifions ici sans intégration, uniquement à partir
d'opérations de nature statique (combinaison algébrique, \ldots) et
d'un nombre fini de dérivation en temps.

Les solutions $t\mto (\theta(t), u(t))$ du bras de robot (\ref{bras-fig})
sont soumises aux lois de la mécanique, la contrainte qui est ici
$$
J \ddot \theta + mgl \sin \theta - u =0.
$$
Il est évident que l'on peut paramétrer explicitement toutes les
solutions à l'aide d'une fonction scalaire arbitraire du temps $ t
\mto y(t)$ supposée assez régulière ($C^{2}$ par morceaux suffit)
grâce aux formules explicites suivantes
$$
\theta = y,\quad
u = J \ddot y + mgl \sin y.
$$
Ces formules sont celles du \og couple calculé\fg. Elles consistent
à utiliser les équations de la mécanique à l'envers. Au lieu de
fixer les loi horaires des forces et les configurations/vitesses initiales, pour en déduire
le mouvement en intégrant des équations différentielles du second ordre
(opération en général délicate explicitement), il suffit d'imposer la loi horaire sur les configurations et d'en déduire les forces simplement en dérivant deux fois. Pour le bras de robot, la
force est notre commande en couple, et la configuration est donnée par l'angle~$\theta$. Nous dirons que ce système mécanique est plat avec comme sortie plate $\theta$.

À l'origine, la platitude a été
définie \cite{fliess-et-al-cras92,fliess-et-al-ijc95} dans le cadre de
l'algèbre différentielle. Un système est alors vu comme une extension
différentielle de degré fini de transcendance différentielle. Le degré
de transcendance différentielle correspond alors au degré de
sous-détermination, i.e., au nombre de commandes indépendantes. Un
système est alors plat s'il est une extension différentielle
transcendante pure. Les générateurs d'une telle extension forment alors
la sortie plate. L'avantage d'une telle approche est sa capacité à
traiter les systèmes mixtes, d'équations différentielles et d'équations
algébriques, ainsi que les systèmes différentiels implicites.

En langage plus ordinaire, nous avons la définition
suivante. Un système d'état $x \in\RR^n$, de commande $u \in \RR^m$,
$\dot x = f(x,u)$ ($f$ régulière) est plat s'il existe
$y \in \RR^m$ de la forme
\begin{equation*}
y = h(x, u, \dot u, \dots, u^{(r)})
\end{equation*}
tel que
\begin{align*}
x &= \varphi (y, \dot y, \dots, y^{(q)}) \\
u &= \alpha(y, \dot y, \dots, y^{(q)})
\end{align*}
(les fonctions $h$, $\varphi$ et $\alpha$ sont régulières).
D'un point de vue formel, le~passage de $\dot x = f(x,u)$
à
\begin{align*}
x &= \varphi (y, \dot y, \dots, y^{(q)}) \\
u &= \alpha(y, \dot y, \dots, y^{(q)})
\end{align*}
revient à rajouter $m$ variables supplémentaires formant
la sortie plate $$y = h(x, u, \dot u, \dots, u^{(r)})$$
et à tout exprimer en fonction de cette dernière.
Le passage inverse s'obtient en éliminant $y$. Au cours de cette
élimination, nous obtenons au passage la fonction $h$ donnant $y$ en
fonction de $x$ et $u$. Ainsi, il est équivalent de se donner $(f,h)$
ou $(\varphi,\alpha)$. Le problème fondamental est alors le
suivant: étant donnée la fonction $f$, i.e. les équations issues de la physique du système,
existe-t-il $h$ tel que le système déterminé implicite
$$
\dot x = f(x,u),\quad y = h(x,u,\ldots,u^{(r)})
$$
avec $y$ fonction régulière du temps supposée donnée et
$(x,u)$ fonctions régulières du temps supposées
inconnues, puisse être résolu sans intégration par des formules
générales du type:
$$
x = \varphi (y, \dot y, \dots, y^{(q)}),
\quad u = \alpha(y, \dot y, \dots, y^{(q)}).
$$

Ce problème est un problème ouvert. Il a été posé par David Hilbert en
1912 \cite{hilbert-1912}, pour l'équation de Monge du second ordre
$$
\frac{d^{2} y}{d^{2}x } =
F\left(x,y,z,\frac{d y}{d x}, \frac{d z}{d x} \right)
,
$$
un système différentiel sous-déterminé (une équation différentielle
ordinaire en $x$ reliant deux fonctions de $x$, $y(x)$ et $z(x)$).
Hilbert parle alors de \og solution sans intégrale\fg (\og integrallos
Auflösung\fg). Hilbert montre aussi que cette question est liée à
la classification des systèmes différentiels sous-déterminés via un
groupe de transformations, dites \og inversibles sans intégrale\fg (\og umkehrbar integrallos\fg).
Hilbert note une analogie suggestive avec
les transformations birationnelles et la classification des variétés
algébriques.

Peu après, Élie Cartan \cite{cartan-crelle-1915} reprend la
question posée par Hilbert et montre comment des calculs sur les
systèmes de Pfaff (le drapeau) permettent de caractériser les équations
de Monge du second ordre qui admettent une solution générale sans
intégrale. Il en déduit une description explicite de toutes les courbes
de l'espace Euclidien $\RR^{3}$ dont le rapport de la courbure et la
torsion est constant. Les résultats d'Élie Cartan sont complets
pour les systèmes de Pfaff de codimension~$2$, c'est à dire les
systèmes différentiels sous-déterminés de codimension~$1$, i.e., ne
faisant intervenir qu'une seule fonction arbitraire (pour nous ne
faisant intervenir essentiellement qu'une seule commande). Élie
Cartan \cite{cartan-bsmf-1914} suggère aussi la notion d'équivalence
absolue mais ne la définit pas avec précision. Il note que pour les
systèmes de Pfaff de codimension supérieure à $2$ (faisant intervenir
au moins 2 commandes) la question se
complique notablement. À notre connaissance, elle reste aujourd'hui
très largement ouverte.

Nous allons maintenant donner un cadre formel pour
définir l'analogue en théorie de la
commande, des systèmes différentiels ordinaires sous-déterminés
résolubles sans intégration. Ce cadre a été pour la première fois
proposé en 1993 dans \cite{fliess-et-al-cras93b}. Il est relié
à \cite{ABMP-ieee,pomet-varsovie93}. D'autres approches
reprenant plus directement les systèmes de Pfaff et l'équivalence absolue
sont également possibles \cite{NRM98-jco,sluis-thesis}.

Il est intéressant de noter qu'à l'origine, dans le mémoire de Monge~\cite{monge-memorial1784}, ce dernier parle de systèmes intégrables, bien qu'étudiant les systèmes différentiels sous-déterminés et non déterminés. Aussi, il est suggestif de considérer la sous-classe des systèmes plats parmi les systèmes différentiels sous-déterminés comme l'analogue de celle des systèmes intégrables parmi des systèmes dynamiques déterminés. Si une telle analogie est valide (comme le pense Jean-Pierre Ramis), alors la caractérisation en termes finis de la platitude a toutes les chances d'être impossible. Tout au plus peut-on espérer avoir des critères qui permettent de montrer que certains systèmes ne sont pas plats (voir le critère des variétés réglées ci-dessous). Ces critères auront alors un rôle analogue à celui du théorème de Morales-Ramis~\cite{morales-ramis-02} qui donne la non-intégrabilité des certains systèmes hamiltoniens ainsi que des trois célèbres équations différentielles de Lorenz.

\section{Équivalence et platitude} \label{equiv-sec}

\subsection{Champ de vecteurs en dimension infinie }

Un système dynamique
\begin{equation}\label{sde}
\dot x=f(x),\quad x\in X\subset\RR^n
\end{equation}
est par définition une paire $(X,f)$, où $X$ est un ouvert de $\RR^n$
et $f$ un champ de vecteurs sur~$X$.
Une solution, ou {\em trajectoire}, de (\ref{sde}) est une application $C^{1}$, $t\mto
x(t)$, telle que
\begin{displaymath}
\quad\dot x(t) = f(x(t)) \quad \forall t \geq 0.
\end{displaymath}
Notons que si $x\mto h(x)$ est une application régulière sur~$X$ et
$t\mto x(t)$ une trajectoire de (\ref{sde}), alors
\begin{displaymath}
\frac{d}{dt} h(x(t)) = \dr{h}{x}(x(t)) \cdot \dot x(t)
=\dr{h}{x}(x(t)) \cdot f(x(t)) \quad\forall t \geq 0.
\end{displaymath}
Pour cette raison, la {\em dérivée totale}, i.e., l'application
\begin{displaymath}
x\mto\dr{h}{x}(x) \cdot f(x)
\end{displaymath}
est souvent appelée \og dérivée en temps\fg de~$h$ et notée~$\dot h$.

Nous voudrions avoir une description similaire, i.e., un \og espace\fg et
un champ de vecteurs sur cet espace, pour un système commandé
\begin{equation}\label{dynamics}
\dot x=f(x,u),
\end{equation}
où$f$ est régulière sur un ouvert $X\times
U\subset\RR^n\times\RR^m$. Ici $f$ n'est plus un champ de vecteurs sur~$X$,
mais plutôt une {\em collection infinie} de champs de vecteurs sur~$X$
paramétrés par~$u$: pour chaque $u\in U$, l'application
\begin{displaymath}
x\mto f_u(x)=f(x,u)
\end{displaymath}
est un champ de vecteurs sur~$X$. Une telle description n'est pas
adaptée au bouclage dynamique, i.e., au rajout d'intégrateurs. Si l'on prend comme commande $v=\dot u$ au
lieu de $u$, on obtient alors un système étendu
\begin{displaymath}
\dot x=f(x,u), \quad \dot u = v
\end{displaymath}
qui correspond en un certain sens au même système mais pour lequel
la notion d'état classique n'a plus cours: l'espace $X$ doit être
prolongé à l'espace $X\times U$.

Il est cependant possible d'associer à (\ref{dynamics}) un champ de
vecteurs avec les \og mêmes\fg solutions et pour lequel le fait de considérer
$u$ ou $v=\dot u$ comme entrée ne change rien. Pour cela nous allons
maintenant supposer que toutes les fonctions manipulées sont régulières,
i.e., $C^{\infty}$.

Soit une solution régulière de (\ref{dynamics}), i.e., une application
$t\mto(x(t),u(t))$ à valeur dans $X\times U$ telle que
\begin{displaymath}
\dot x(t)=f(x(t),u(t)) \quad\forall t \geq 0.
\end{displaymath}
On peut considérer l'application {\em infinie}
\begin{displaymath}
t\mto\xi(t)=(x(t),u(t),\dot u(t),\ldots)
\end{displaymath}
prenant ses valeurs dans $X\times U\times\RR_m^\infty$, où
$\RR_m^\infty=\RR^m\times\RR^m\times\dots$ représente le produit infini
dénombrable de $\RR^m$. Un point
de~$\RR_m^\infty$ est de la forme $(u^1,u^2,\ldots)$ avec
$u^i\in\RR^m$. Cette application satisfait
\begin{displaymath}
\dot\xi(t) = \bigl(
f(x(t),u(t)),\dot u(t),\ddot u(t),\ldots
\bigr) \quad\forall t \geq 0,
\end{displaymath}
et donc peut être interprétée comme la trajectoire d'un champ de vecteurs {\em infini}
\begin{displaymath}
(x,u,u^1,\ldots)\mto F(x,u,u^1,\ldots)=(f(x,u),u^1,u^2,\ldots)
\end{displaymath}
sur~$X\times U\times\RR_m^\infty$.
Inversement, chaque application
\begin{displaymath}
t\mto\xi(t)=(x(t),u(t),u^1(t),\ldots)
\end{displaymath}
qui est une trajectoire de ce champ de vecteurs infini nécessairement prend la forme
$(x(t),u(t),\dot u(t),\ldots)$ avec $\dot x(t)=f(x(t),u(t))$, et donc correspond
à une solution de (\ref{dynamics}). Ainsi $F$ est réellement un champ de vecteurs et non
une famille paramétrée de champs de vecteurs.

Avec une telle construction, le système (\ref{dynamics}) est défini par
la donnée d'un espace $X\times U\times\RR_m^\infty$ est d'un champ de vecteurs~$F$
sur cet espace. Comme pour un système dynamique classique sans
commande, la
\og dérivation en temps\fg d'une fonction régulière $(x,u,u^1,\ldots)\mto h(x,u,u^1,\ldots,u^k)$
dépendant d'un nombre {\em fini} de variables s'écrit
\begin{align*}
\dot h(x,u,u^1,\ldots,u^{k+1}): &=Dh\cdot F\\
&=\dr{h}{x} \cdot f(x,u)+\dr{h}{u} \cdot u^1+\dr{h}{u^1} \cdot u^2+\cdots.
\end{align*}
La somme est ici {\em finie } car $h$ dépend d'un nombre fini de variables.

Pour être rigoureux, il faut définir la topologie et la structure
différentiable de $\RR_m^{\infty}$ pour pouvoir parler d'objet
régulier \cite{zharinov-book}. Cette topologie est celle de {\em
Fréchet}. Elle fait en sorte que tout se passe comme si
on manipule des fonctions régulières sur $k$ copies de $\RR^m$ pour un
$k$ \og assez grand\fg. Pour la suite, il est suffisant de savoir
qu'une base d'ouverts est composée de produits infinis
$U_0\times U_1\times\ldots$ d'ouverts de $\RR^m$, qu'une fonction de
$\RR_m^{\infty}$ à valeur dans $\RR$ est régulière si elle dépend d'un
nombre fini de variable et est régulière au sens usuel.
Ainsi une application
$\Phi:\RR_m^\infty\to\RR_n^\infty$ est régulière si chacune
de ces composantes est une fonction régulière.

L'espace $\RR_m^\infty$ avec sa topologie de Fréchet admet peu de
propriétés. Des théorèmes utiles comme celui des fonctions implicites,
celui de Frobenius et le théorème de redressement d'un champ de
vecteurs ne sont plus valables.

Cependant, les notions de sous-variétés de $\RR_m^\infty$ et aussi
de variétés de dimension infinie existent dans ce cadre. Il suffit de
recopier les définitions de la dimension finie, en utilisant
coordonnées locales, cartes et atlas. Un lecteur non intéressé
par ces développements techniques ne perdra pas grand chose pour la
suite s'il remplace variété par \og ouvert de~$\RR_m^\infty$\fg.

Nous sommes en mesure de donner une définition précise de système:
\begin{definition}
\label{sysdef}
Un {\em système} est une paire $(\MM,F)$ où $\MM$ est une variété de
dimension infinie modelée sur $\RR_m^\infty$ et $F$ un champ de vecteurs régulier sur $\MM$.
\end{definition}
Localement, un système est défini par $\RR^\alpha$
($\alpha$ non nécessairement fini) avec comme coordonnées
$(\xi_1,\ldots,\xi_\alpha)$ et un champ de vecteur
\begin{displaymath}
\xi\mto F(\xi)=(F_1(\xi),\ldots,F_\alpha(\xi))
\end{displaymath}
où toutes ses composantes $F_i$ sont des fonctions d'un nombre fini de
coordonnées. Une {\em trajectoire} est alors un application
régulière $t\mto\xi(t)$ telle que $\dot\xi(t)=F(\xi(t))$.

Nous avons vu qu'une telle définition permet de prendre en compte les
systèmes \og traditionnels\fg $\dot x = f(x,u)$. Elle comporte une
différence essentielle: la notion d'état n'existe plus ici.
En effet
\begin{equation}\label{fu}
\dot x=f(x,u),
\quad (x,u)\in X\times U\subset\RR^n\times\RR^m
\end{equation} et
\begin{equation}\label{fv}
\dot x =f(x,u),\quad \dot u = v
\end{equation}
admettent la même description $(X\times U\times\RR_m^\infty,F)$, avec
\begin{displaymath}
F(x,u,u^1,\ldots)=(f(x,u),u^1,u^2,\ldots),
\end{displaymath}
Dans notre formalisme: $t\mto(x(t),u(t))$ est une trajectoire de
(\ref{fu}) si, et seulement si, $t\mto(x(t),u(t),\dot u(t))$ est une
trajectoire de (\ref{fv}). Cette situation n'est pas surprenante car le
bouclage dynamique ne préserve pas la dimension de l'état. Cependant
le nombre de commande est préservé.

\begin{exemple}[le système trivial]\label{trivial}
Le {\em système trivial} $(\RR_m^\infty,F_m)$, avec les coordonnées
$(y,y^1,y^2,\ldots)$ et le champs de vecteur
\begin{displaymath}
F_m(y,y^1,y^2,\ldots)=(y^1,y^2,y^3,\ldots)
\end{displaymath}
décrit n'importe quel système \og traditionnel\fg composé de $m$ chaînes
d'intégrateurs de longueurs arbitraires (\cf la forme normale de
Brunovski des systèmes linéaires commandables), et en particulier le
transfert direct $y=u$.
\end{exemple}

En pratique nous identifions le champ de vecteurs infini $$(f(x,u),u^1,u^2,\ldots)$$
avec l'équation $\dot x=f(x,u)$ qui le
définit. La principale motivation de ce formalisme tient à ce que les
notions d'équivalence et de platitude y sont particulièrement
naturelles et simples à définir.

\begin{remarque}
Si la variété $\MM$ est de dimension finie alors il s'agit d'une
équation différentielle classique, i.e., d'un système différentiel
ordinaire déterminé avec autant de variables que d'équations.
Dans le cas d'un système $\dot x = f(x,u)$, le système devient sous-déterminé,
il comporte plus de variables $(x,u)$ que d'équations. La variété $\MM$ associée est
alors de dimension infinie.
\end{remarque}

\begin{remarque}
Notre définition est adaptée de la notion de diffiété introduite
dans \cite{krasilshichik-et-al-book} (voir aussi \cite{zharinov-book}
pour une introduction plus abordable) pour traiter les systèmes aux
dérivées partielles. Par définition, une diffiété est une paire
$(\MM,CT\MM)$ où $\MM$ est une variété régulière, de dimension finie ou
infinie, est $CT\MM$ une distribution (dite de Cartan) involutive
sur~$\MM$, i.e., le crochet de Lie de deux champs de vecteurs
appartenant à $CT\MM$ reste dans~$CT\MM$. La dimension de $CT\MM$ est
égale au nombre de variables indépendantes, i.e., au nombre de
dérivation. Comme nous considérons les systèmes gouvernés par des
équations différentielles ordinaires, nous utilisons des diffiétés avec
des distributions de Cartan de dimension $1$.
\end{remarque}

\subsection{Équivalence de systèmes}

Nous définissons ici une relation d'équivalence en formalisant l'idée
que deux systèmes sont équivalents s'il existe une transformation
inversible qui échange leur trajectoires. Comme nous le verrons plus
loin la pertinence d'une telle d'équivalence vient du fait qu'elle
admet une interprétation en termes de bouclage dynamique.

Soient deux systèmes, $(\MM,F)$ et $(\NN,G)$, et une application
régulière $\Psi:\MM\to\NN$ Rappelons que, par définition,
chaque composante de $\Psi$ dépend d'un nombre fini de variables. Si
$t\mto\xi(t)$ est une trajectoire de $(\MM,F)$, i.e.,
\begin{displaymath}
\forall \xi,\quad\dot\xi(t)=F(\xi(t)),
\end{displaymath}
Alors la composée $t\mto\zeta(t)=\Psi(\xi(t))$ satisfait
\begin{displaymath}
\dot\zeta(t)=\dr{\Psi}{\xi}(\xi(t)) \cdot \dot\xi(t)
=\dr{\Psi}{\xi}(\xi(t)) \cdot F(\xi(t)).
\end{displaymath}
La somme ci-dessus ne comporte qu'un nombre fini de termes même si
les matrices et les vecteurs admettent un nombre infini de
composantes: en fait une ligne de $\dr{\Psi}{\xi}$ ne contient qu'un
nombre fini de termes non nuls.

Maintenant, supposons que les champs de vecteurs $F$ et $G$ soient {\em $\Psi$-conjugués}, i.e.,
\begin{displaymath}
\forall \xi,\quad G(\Psi(\xi))=\dr{\Psi}{\xi}(\xi) \cdot F(\xi).
\end{displaymath}
Alors
\begin{displaymath}
\dot\zeta(t)=G(\Psi(\xi(t))=G(\zeta(t)),
\end{displaymath}
signifie que $t\mto\zeta(t)=\Psi(\xi(t))$ est une trajectoire de $(\NN,G)$.
Si de plus~$\Psi$ admet une application inverse régulière $\Phi$ alors $F,G$ sont également
$\Phi$-conjugués.
Il existe alors une correspondance entre les trajectoires des deux
systèmes. Une telle application $\Psi$ qui échange $F$ et $G$ est appelé {\em transformation endogène}.

\begin{definition}\label{eq-def}
Deux systèmes $(\MM,F)$ et $(\NN,G)$ sont {\em équivalents en $(p,q)\in\MM\times\NN$}
si, et seulement si, il existe une transformation endogène d'un
voisinage de $p$ vers un voisinage de $q$. $(\MM,F)$ et $(\NN,G)$ sont {\em équivalents} s'ils sont équivalents
pour toute paire de points $(p,q)$ dans un ouvert dense de $\MM\times\NN$.
\end{definition}

Si $\MM$ et $\NN$ ont la même dimension {\em finie}, les
systèmes sont équivalents à cause du théorème de
redressement (avec des conditions restrictives évidentes sur les point
critiques des deux champs de vecteurs). Ce n'est plus le cas en
dimension infinie.

Avec des coordonnées, les notions précédentes s'expriment comme suit.
Considérons les deux systèmes
$$
(X\times U\times\RR_m^\infty,F)\qqbox{et}(Y\times V\times\RR_s^\infty,G)
$$
décrivant les dynamiques
\begin{align}
\label{dynf}\dot x &= f(x,u),\quad (x,u)\in X\times
U\subset\RR^n\times\RR^m
\\
\label{dyng}\dot y &= g(y,v),\quad (y,v)\in Y\times
V\subset\RR^r\times\RR^s.
\end{align}
Les champs de vecteurs $F,G$ sont définis par
\begin{align*}
F(x,u,u^1,\ldots) &= (f(x,u),u^1,u^2,\ldots)\\
G(y,v,v^1,\ldots) &= (g(y,v),v^1,v^2,\ldots).
\end{align*}
Si ces deux systèmes sont équivalents, la transformation endogène
$\Psi$ prend la forme suivante
\begin{displaymath}
\Psi(x,u,u^1,\ldots)=(\psi(x,\ol u),\beta(x,\ol u),
\dot\beta(x,\ol u),\ldots).
\end{displaymath}
Ici nous utilisons la notation abrégée $\ol u=(u,u^1,\ldots,u^k)$, où $k$
est un entier fini mais arbitraire. Ainsi $\Psi$ est complètement déterminé par les applications
$\psi$ et $\beta$, i.e, par l'expression de $y,v$ en fonction de $x,\ol u$.
De même, l'inverse $\Phi$ de $\Psi$ prend la forme
\begin{displaymath}
\Phi(y,v,v^1,\ldots)=(\varphi(y,\ol v),\alpha(y,\ol v),
\dot\alpha(y,\ol v),\ldots).
\end{displaymath}
Comme $\Psi$ et $\Phi$ sont inverses l'une de l'autre, nous avons
\begin{equation*}
\begin{aligned}
\psi\bigl(\varphi(y,\ol v),\ol\alpha(y,\ol v)\bigr) &= y\\
\beta\bigl(\varphi(y,\ol v),\ol\alpha(y,\ol v)\bigr) &= v
\end{aligned}\quad\mbox{et}\quad
\begin{aligned}
\varphi\bigl(\psi(x,\ol u),\ol\beta(x,\ol u)\bigr) &= x\\
\alpha\bigl(\psi(x,\ol u),\ol\beta(x,\ol u)\bigr) &= u.
\end{aligned}
\end{equation*}
De plus $F$ et $G$ $\Psi$-conjugués impliquent
\begin{equation*}
f\bigl(\varphi(y,\ol v),\alpha(y,\ol v)\bigr)=
D\varphi(y,\ol v) \cdot \ol g(y,\ol v)
\end{equation*}
où $\ol g$ correspond à $(g,v^1,\dots,v^k)$, i.e., une troncature de
$G$ pour un entier $k$ assez grand. Inversement,
\begin{equation*}
g\bigl(\psi(x,\ol u),\beta(x,\ol u)\bigr)=
D\psi(x,\ol u) \cdot \ol f(x,\ol u).
\end{equation*}

En résumé, dès que $t\mto(x(t),u(t))$ est une trajectoire de (\ref{dynf})
\begin{displaymath}
t\mto(y(t),v(t))=\bigl(\psi(x(t),\ol u(t)),~\beta(x(t),\ol u(t))\bigr)
\end{displaymath}
est une trajectoire de (\ref{dyng}), et réciproquement.

\begin{exemple}[l'avion à décollage vertical]\label{vtol1}
Le système associé à
\begin{align*}
\ddot x &= -u_{1}\sin\theta + \varepsilon u_{2}\cos\theta\\
\ddot z &= u_{1}\cos\theta + \varepsilon u_{2}\sin\theta - 1\\
\ddot\theta &= u_{2}.
\end{align*}
est globalement équivalent au système
$$\ddot y_{1} = -\xi\sin\theta,\quad
\ddot y_{2} = \xi\cos\theta-1,$$
où $\xi$ et $\theta$ sont les commandes. En effet, avec
\begin{equation*}
\begin{aligned}
X &:=(x,z,\dot x,\dot z,\theta,\dot\theta)\\
U &:=(u_{1},u_{2})
\end{aligned}
\quad\mbox{et}\quad
\begin{aligned}
Y &:=(y_{1},y_{2},\dot y_{1},\dot y_{2})\\
V &:=(\xi,\theta)
\end{aligned}
\end{equation*}
et avec les notations abrégées ci-dessus (discussion après la
définition \ref{eq-def}), nous définissons les applications
$Y=\psi(X,\ol U)$ et $V=\beta(X,\ol U)$ par
\begin{equation*}
\begin{aligned}
\psi(X,\ol U):=\begin{pmatrix}
x-\varepsilon\sin\theta\\
z+\varepsilon\cos\theta\\
\dot x-\varepsilon\dot\theta\cos\theta\\
\dot z-\varepsilon\dot\theta\sin\theta
\end{pmatrix}\end{aligned}
\quad\mbox{et}\quad
\begin{aligned}
\beta(X,\ol U):=\begin{pmatrix}
u_{1}-\varepsilon\dot\theta^2\\
\theta
\end{pmatrix}\end{aligned}
\end{equation*}
pour obtenir la transformation endogène~$\Psi$. La transformation inverse $\Phi$ est alors
engendrée par $X=\varphi(Y,\ol V)$ et $U=\alpha(Y,\ol V)$ comme suit:
\begin{equation*}
\begin{aligned}
\varphi(Y,\ol V):=\begin{pmatrix}
y_{1}+\varepsilon\sin\theta\\
y_{2}-\varepsilon\cos\theta\\
\dot y_{1}+\varepsilon\dot\theta\cos\theta\\
\dot y_{2}-\varepsilon\dot\theta\sin\theta\\
\theta\\
\dot\theta
\end{pmatrix}\end{aligned}
\quad\mbox{et}\quad
\begin{aligned}
\alpha(Y,\ol V):=\begin{pmatrix}
\xi+\varepsilon\dot\theta^2\\
\ddot\theta
\end{pmatrix}\end{aligned}
\end{equation*}
\end{exemple}
Une propriété importante des transformations endogènes la
préservation du nombre de commandes.

\begin{theoreme}\label{inputdim}
Si les deux systèmes
$$
(X\times U\times\RR_m^\infty,F)\qqbox{et}(Y\times
V\times\RR_s^\infty,G)
$$
sont équivalents alors ils admettent le même
nombre de commandes, i.e., $m=s$.
\end{theoreme}

\begin{proof}
Considérons la troncature $\Phi_\mu$ de $\Phi$ sur $X\times U\times(\RR^m)^\mu$,
\begin{displaymath}
\begin{array}{rcl}
\Phi_\mu: X\times U\times(\RR^{m+k})^\mu\ &\longrightarrow&
Y\times V\times(\RR^s)^\mu\\
(x,u,u^1,\ldots,u^{k+\mu}) &\dpl\mto&
(\varphi,\alpha,\dot\alpha,\ldots,\alpha^{(\mu)}),
\end{array}
\end{displaymath}
i.e., les premiers $\mu+2$ blocs des composantes de $\Psi$; $\mu$ est
juste un entier \og assez grand\fg. Comme $\Psi$ est inversible,
$\Psi_\mu$ est une submersion pour tout $\mu$. Donc la dimension de son espace de départ est supérieure
ou égale
à celle de son espace d'arrivée,
$$
n+m(k+\mu+1)\geq s(\mu+1) \quad\forall\mu > 0.
$$
Ce qui implique $m\geq s$. De même avec $\Psi$ on obtient $s\geq m$.
\end{proof}

\begin{remarque}
Cette définition de l'équivalence est adaptée de l'équivalence entre
deux diffiétés. Étant données deux diffiétés $(\MM,CT\MM)$ et
$(\NN,CT\NN)$, on dit qu'une application régulière $\Psi$ d'un ouvert
de $\MM$ vers $\NN$ est {\em Lie-Bäcklund} ou un {\em un $C$-morphisme} si son application
tangente $T\Psi$ satisfait $T\Phi(CT\MM)\subset CT\NN$. Si de plus
$\Psi$ admet une inverse régulière $\Phi$ telle que
$T\Psi(CT\NN)\subset CT\MM$, alors $\Psi$ est un {\em isomorphisme de
Lie-Bäcklund} ou un {\em $C$ isomorphisme}. Lorsqu'un tel isomorphisme existe, les diffiétés sont
dites {\em équivalentes}. Une transformation endogène n'est donc qu'un
isomorphisme spécial de Lie-Bäcklund qui préserve le paramétrage en
temps des courbes intégrales. Il est possible de définir un concept
plus général, l'équivalence {\em
orbitale} \cite{fliess-et-al-cras93b,fliess-et-al-mtns96} avec les
isomorphismes de Lie-Bäcklund ne préservant que le lieu géométrique
des courbes intégrales.
\end{remarque}

\subsection{Platitude différentielle} \label{flatness}

Nous mettons en évidence une classe de systèmes, les systèmes
équivalents aux systèmes triviaux $(\RR_s^\infty,F_s)$
(voir exemple \ref{trivial}):
\begin{definition}
Le système $(\MM,F)$ est {\em plat en $p\in\MM$} (\resp {\em plat}) si,
et seulement si, il est équivalent en~$p$ (\resp équivalent) à un
système trivial.
\end{definition}

Considérons un système plat $(X\times
U\times\RR_m^\infty,F)$, d'après la définition~\ref{eq-def}, associé à
\begin{equation*}
\dot x = f(x,u),\quad (x,u)\in X\times U\subset\RR^n\times\RR^m.
\end{equation*}
Par définition le système est équivalent au système trivial
$(\RR_s^\infty,F_s)$ où la transformation endogène~$\Psi$ prend la
forme
\begin{equation}\label{endomap}
\Psi(x,u,u^1,\dots)=(h(x,\ol u),\dot h(x,\ol u),\ddot h(x,\ol u),\dots).
\end{equation}
En d'autres termes, $\Psi$ est le prolongement infini de l'application
$h$. L'inverse $\Phi$ de $\Psi$ prend la forme
\begin{displaymath}
\Psi(\ol y)=(\psi(\ol y),\beta(\ol y),
\dot\beta(\ol y),\ldots).
\end{displaymath}
Comme $\Phi$ et $\Psi$ sont des applications inverses, on a
$$\varphi\bigl(\ol h(x,\ol u)\bigr)=x \quad\text{and}\quad
\alpha\bigl(\ol h(x,\ol u)\bigr)=u.$$
De plus $F$ et $G$ $\Phi$-conjugués implique que si $t\mto y(t)$ est une
trajectoire de $y=v$ --- i.e., rien d'autre qu'une fonction régulière
{\em arbitraire} du temps --- alors
\begin{displaymath}
t \mto \bigl(x(t),u(t) \bigr) =
\bigl(\psi(\ol{y}(t)),~\beta(\ol{y}(t)) \bigr)
\end{displaymath}
est une trajectoire de $\dot x=f(x,u)$, et vice versa.

L'application $h$ de l'exemple ci-dessus est importante:
\begin{definition}
Soit $(\MM,F$) un système plat et $\Psi$ la transformation endogène le
mettant sous forme triviale. Le premier bloc des composantes de $\Psi$,
i.e., l'application $h$ dans (\ref{endomap}), est appelée {\em sortie
plate ({\em ou} linéarisante)}.
\end{definition}
Avec cette définition, une conséquence évidente du théorème \ref{inputdim} est:
\begin{corollaire}
Considérons un système plat. La dimension d'une sortie plate est
égale au nombre de commandes, i.e., $s=m$.
\end{corollaire}
La sortie plate n'est pas unique. Si $y$ est une sortie plate,
$\gamma(y)$ est aussi une sortie plate dès que $\gamma$ est un
difféomorphisme régulier. Pour les systèmes à une seule commande, i.e.,
une sortie plate scalaire ($s=m=1$), il est facile de démontrer de l'on
passe d'une sortie plate à une autre par un simple changement de
variable purement statique. Le cas multi-variable est nettement plus
complexe. Par exemple pour $s=m=2$, il est facile de voir que si
$(y_{1},y_{2})$ est une sortie plate alors $(\tilde y_{1}, \tilde
y_{2})=(y_{1}, y_{2} + \gamma(y_{1}^{(r)}))$ est aussi une sortie
plate quelque soit $\gamma$ régulière et $r\geq 0$. Le choix étant loin
d'être unique, il faut prendre une sortie plate qui conduit aux
calculs de planification et de bouclage (\cf ce qui suit) les plus
simples. À ce niveau le sens physique et surtout les symétries
naturelles du système peuvent être d'une grande
utilité dans un tel choix (\cf section \ref{sym:sec}).

\begin{exemple}[l'avion à décollage vertical (suite)]\label{vtol2}
Le système étudié en \ref{vtol1} est plat, avec
$$y=h(X,\ol U):=(x-\varepsilon\sin\theta,z+\varepsilon\cos\theta)$$
comme sortie plate.
En effet, les applications $X=\varphi(\ol y)$ et $U=\alpha(\ol y)$ qui engendrent
l'inverse de~$\Phi$ peut être obtenues par les fonctions implicites:
\begin{align*}
(y_1-x)^2 + (y_2-z)^2 &= \varepsilon^2\\
(y_1-x)(\ddot y_2+1) - (y_2-z)\ddot y_1 &= 0\\
(\ddot y_2+1)\sin\theta + \ddot y_1\cos\theta &= 0.
\end{align*}
Nous résolvons directement $x,z,\theta$,
\begin{align*}
x &= y_1 ~ \pm~\varepsilon\frac{\ddot y_1}{\sqrt{\ddot y_1^2+(\ddot y_2+1)^2}}\\
z &= y_2~\pm~\varepsilon\frac{(\ddot y_2+1)}{\sqrt{\ddot y_1^2+(\ddot y_2+1)^2}}\\
\theta &= \mbox{arctan} (\ddot y_2+1/\ddot y_{1})\quad \mod\pi.
\end{align*}
Il suffit de différentier pour avoir $\dot x,\dot z,\dot\theta,u$ en
fonctions des dérivées de~$y$. Noter que la seule singularité est $\ddot y_1^2+(\ddot
y_2+1)^2=0$; elle est liée au deux branches de solutions.
\end{exemple}

\subsection{Application à la planification de trajectoires} \label{mp-sec}

Nous illustrons maintenant comment la platitude peut être utilisée
pour résoudre des problèmes de commande.
Soit un système non linéaire
\begin{displaymath}
\dot x = f(x, u) \quad x\in\RR^n,\, u\in\RR^m
\end{displaymath}
avec comme sortie plate
\begin{displaymath}
y = h(x, u, \dot u, \dots, u^{(r)}).
\end{displaymath}
Ainsi, les trajectoires $(x(t), u(t))$ s'écrivent en fonction de $y$ et
ses dérivées:
\begin{align*}
x &= \varphi(y, \dot y, \dots, y^{(q)}) \\
u &= \alpha(y, \dot y, \dots, y^{(q)}).
\end{align*}

Nous commençons par le problème de la planification de trajectoire entre
un état de départ et un état d'arrivée. Nous supposons la sortie
plate (référence) donnée
$y_i$, $i=1,\dots, m$~par
\begin{equation}
y_i(t) := \sum_{j} A_{ij} \lambda_j(t),
\end{equation}
où les $\lambda_j(t)$, $j=1, \dots, N$ sont des fonctions de base. Nous
réduisons le problème à trouver une fonction dans un espace de
dimension fini, l'espace vectoriel sur $\RR$ engendré par les
$\lambda_j(t)$.

Supposons donnés l'état initial $x_0$ au temps $\tau_0$ et l'état final
$x_f$ au temps $\tau_f> \tau_{0}$. Pour un système plat ce problème est
très simple. Il suffit de calculer, au départ et à l'arrivée, la sortie
plate et ses dérivées à partir des états de départ et d'arrivée.
Ensuite les coefficients $A_{ij}$ vérifient les contraintes suivantes:
\begin{equation}
\begin{array}{rclcrcl}
y_i(\tau_0) &=& \sum_{j} A_{ij} \lambda_j(\tau_0) &\hspace{0.2in}&
y_i(\tau_f) &=& \sum_{j} A_{ij} \lambda_j(\tau_f) \\
&\vdots& && &\vdots& \\
y_i^{(q)}(\tau_0) &=& \sum_{j} A_{ij} \lambda_j^{(q)}(\tau_0) &\hspace{0.2in}&
y_i^{(q)}(\tau_f) &=& \sum_{j} A_{ij} \lambda_j^{(q)}(\tau_f).
\end{array}
\label{eq:p2p}
\end{equation}

Nous détaillons le cas
\emph{mono}-dimensionnel (sortie plate de dimension un, une seule commande).
Le cas multi-dimensionnel est similaire: il suffit de dupliquer pour
chaque composante de la sortie plate le cas mono-dimensionnel. Notons $\Lambda(t)$
la matrice $q+1$ par $N$ d'élément
$\Lambda_{ij}(t) = \lambda^{(i)}_j(t)$ et posons
\begin{equation}
\begin{aligned}
\bar y_0 &= (y_1(\tau_0), \dots, y_1^{(q)}(\tau_0)) \\
\bar y_f &= (y_1(\tau_f), \dots, y_1^{(q)}(\tau_f)) \\
\bar y &= (\bar y_0, \bar y_f).
\end{aligned}
\end{equation}
Alors la contrainte dans l'équation (\ref{eq:p2p}) s'écrit
\begin{equation}
\bar y = \left(\begin{array}{c}
\Lambda(\tau_0) \\
\Lambda(\tau_f)
\end{array}\right)
A =: \Pi A.
\label{eq:linconst}
\end{equation}
Les coefficients de $A$ appartiennent à la sous-variété affine
d'équation (\ref{eq:linconst}). La seule condition est que la matrice $\Pi$
soit de rang plein pour que (\ref{eq:linconst}) ait toujours une solution.
Cela signifie que l'espace des fonctions $\lambda_{j}$ doit être
suffisamment riche.

Formellement, la planification de trajectoires se ramène, pour un
système plat, à de l'algèbre linéaire élémentaire.

\subsection{Planification sous contraintes}

Nous cherchons maintenant une trajectoire allant de $a$ vers $b$ qui
satisfait des contraintes $k(x,u,\ldots,u^{(p)}) \leq 0$ à chaque instant. Dans les
\og coordonnées\fg plates cela consiste à trouver $T>0$ et une fonction
$[0,T]\ni t \mto y(t)$ avec $(y,\ldots,y^{(q)})$ donné en $t=0$ et
$T$ et surtout vérifiant $\forall t\in[0,T]$, $ K(y, \ldots,
y^{(\nu)})(t) \leq 0$ pour un certain $\nu$ et une fonction $K$ obtenue
à partir de $k$, $\varphi$ et $\alpha$. Lorsque $q=\nu=0$ ce problème,
celui du déménageur de piano, est déjà très
difficile.

Supposons ici simplement que les états initial et final soient deux
états d'équilibre. Supposons aussi qu'un mouvement quasi-statique
satisfaisant les contraintes soient possible: il existe un {\em chemin
} (pas une trajectoire) $[0,1]\ni \sigma \mto Y(\sigma)$ tel que
$Y(0)$ et $Y(1)$ correspondent aux équilibres de départ et d'arrivée et, pour tout
$\sigma\in[0,1]$, $K(Y(\sigma),0,\ldots,0) < 0$. Alors il existe $T>0$
et $[0,T]\ni t \mto y(t)$ solution du problème. Il suffit de prendre
$Y(\eta(t/T))$ où $T$ est assez grand, et avec $\eta$ fonction
régulière croissante $[0,1]\ni s \mto \eta(s) \in[0,1]$ avec
$\eta(0)=0$, $\eta(1)=1$ et $\frac{d^i\eta}{ds^i}(0,1)=0$ pour
$i=1,\ldots,\max(q,\nu)$.

Dans \cite{rothfuss-et-al-auto96} cette méthode est utilisée sur un
réacteur chimique à deux commandes. Dans \cite{raczy-thesis} le temps
minimum sous contrainte d'état est étudié pour divers systèmes
mécaniques comme ceux intervenant pour la commande numérique des
machines-outils et le problème de l'usinage à grande vitesse.

Enfin \cite{sekhavat-thesis} aborde, pour les systèmes non holonomes,
la planification avec obstacles. À cause des contraintes non holonomes
la méthode précédente ne marche plus: il n'est plus possible de mettre
les dérivées de $y$ à zéro car elles ne correspondent plus à des
dérivées en temps mais des dérivées en longueur d'arc. Cependant,
plusieurs expériences numériques montrent clairement l'importance de
classer les contraintes en fonction de l'ordre des dérivées de $y$.

\subsection{Planification de trajectoires avec singularités} \label{mps-sec}
Dans la section précédente, nous avons toujours supposé que la
transformation endogène
$$
\Psi(x,u,u_{1},\dots):=\bigl(h(x,\ol u),\dot h(x,\ol u),\ddot h(x,\ol u),\dots\bigr)
$$
engendrée par la sortie plate $y=h(x,\ol u)$ est partout définie,
régulière et inversible de sorte qu'il est toujours possible
d'exprimer
$x$ et $u$ en fonction de $y$ et de ses dérivées,
$$
(y, \dot y, \dots, y^{(q)}) \mto (x,u)=\phi(y, \dot y, \dots, y^{(q)}).
$$
Cependant il peut arriver qu'une singularité se situe juste à l'endroit
où il est intéressant de piloter de système. Comme
$\phi$ n'est pas définie en un tel point, les calculs précédents deviennent caduques.
Une façon de contourner le problème est d'éclater la singularité en
considérant des trajectoires bien choisies $t
\mto y(t)$ telles que
$$t \mto \phi\bigl(y(t), \dot y(t), \dots, y^{(q)}(t)\bigr)$$
puisse être régulièrement prolonger en temps là où $\phi$ n'est
pas défini. Une telle procédure nécessite une étude détaillée et au
cas par cas de la singularité. Nous allons simplement illustrer cette idée sur
un exemple simple. Nous renvoyons le lecteur aux exemples de robots
mobiles avec ou sans remorques \cite{rouchon-et-al-ecc93,rouchon-et-al-cdc93,fliess-et-al-ijc95}
et à la construction d'une trajectoire
de référence pour retourner le pendule sphérique du robot $2k\pi$ \cite{lenoir-et-al-cdc98}.

\begin{exemple} \label{mps-ex}
Considérons la dynamique plate
$$ \dot x_{1} = u_{1}, \quad \dot x_{2} = u_{2}u_{1}, \quad \dot x_{3} =x_{2} u_{1},$$
avec la sortie plate $y:=(x_{1},x_{3})$. Alors dès que $u_{1}=0$, i.e., $\dot y_{1}=0$
la transformation endogène définie avec la sortie plate est singulière
et son inverse
$$(y,\dot y, \ddot y) \overset{\ds\phi}{\mto} (x_{1},x_{2},x_{3},u_{1},u_{2})=
\left(y_{1},\frac{\dot y_{2}}{\dot y_{1}}, y_{2},\dot y_{1},
\frac{\ddot y_{2}\dot y_{1} - \ddot y_{1}\dot y_{2} }{\dot y_{1}^{3}} \right),$$
n'est pas définie. Cependant si nous considérons des trajectoires de
la forme
$t\mto y(t):=\bigl(\sigma(t),p(\sigma(t))\bigr)$,
avec $\sigma$ et $p$ fonctions régulières, nous trouvons que
$$
\frac{\dot y_{2}(t)}{\dot y_{1}(t)} =
\frac{\ds\frac{dp}{d\sigma}\bigl(\sigma(t)\bigr)\cdot\dot\sigma(t)}{\dot\sigma(t)}
\quad\text{et}\quad
\frac{\ddot y_{2}\dot y_{1} - \ddot y_{1}\dot y_{2} }{\dot y_{1}^{3}}=
\frac{\ds\frac{d^2p}{d\sigma^2}\bigl(\sigma(t)\bigr)\cdot\dot\sigma^3(t)}{\dot\sigma^3(t)}.
$$
Ainsi, nous pouvons prolonger $t\mto \phi(y(t),\dot y(t),\ddot y(t))$ partout en temps
avec
$$
t\mto
\left(\sigma(t),~\frac{d p}{d\sigma}\bigl(\sigma(t)\bigr),
~p(\sigma(t)),
~\dot \sigma(t),
~\frac{d^{2} p}{d\sigma^{2}}\bigl(\sigma(t)\bigr) \right).
$$
La planification de trajectoire se fait alors de la même façon que
pré\-cé\-dem\-ment: en effet, les fonctions $\sigma$ et $p$ et leur dérivées
sont con\-train\-tes au départ et à l'arrivée. Ailleurs elles sont libres.
Sur cet exemple, le passage de la singularité est intimement lié à une
symétrie du système. Les équations $$ \dot x_{1} = u_{1}, \quad \dot
x_{2} = u_{2}u_{1}, \quad \dot x_{3} =x_{2} u_{1},$$ sont linéaires en
$u_{1}$; la transformation $t\mto \tilde t=\sigma(t)$ et $u_{1}
\mto \tilde u_{1}= u_{1}/ \dot \sigma(t)$ où seule le temps $t$ et la
commande $u_{1}$ changent, laisse les équations invariantes.
\end{exemple}

\section{Bouclage et équivalence} \label{control-sec}

\subsection{De l'équivalence au bouclage}

La relation d'équivalence que nous avons définie est très naturelle:
c'est essentiellement une correspondance entre les trajectoires
fondée sur un point de vue boucle ouverte. Nous allons
maintenant aborder la boucle fermée en interprétant
l'équivalence en termes de bouclage.
Pour cela considérons deux dynamiques
\begin{align*}
\dot x &= f(x,u), \quad(x,u)\in X\times U\subset\RR^n\times\RR^m\\
\dot y &= g(y,v), \quad(y,v)\in Y\times V\subset\RR^r\times\RR^s.
\end{align*}
Dans notre formalisme elles correspondent aux deux systèmes
\[
(X\times U\times\RR_m^\infty,F)\qqbox{et} (Y\times V\times\RR_s^\infty,G),
\]
où $F$ et
$G$ sont définis par
\begin{align*}
F(x,u,u^1,\ldots) &:= (f(x,u),u^1,u^2,\ldots)\\
G(y,v,v^1,\ldots) &:= (g(y,v),v^1,v^2,\ldots).
\end{align*}
Supposons maintenant que ces deux systèmes soient équivalents,
i.e., ils ont les mêmes trajectoires.
Est-ce que cela implique que nous pouvons aller du système $\dot x=f(x,u)$ au système $\dot y=g(y,v)$
par un bouclage (dynamique éventuellement),
\begin{align*}
\dot z &= a(x,z,v),\quad z\in Z\subset\RR^q\\
u &= \kappa(x,z,v),
\end{align*}
et {\em vice versa}? La question peut paraître stupide au premier abord puisque
un bouclage ne peut qu'augmenter la dimension de l'état du système.
Cependant, nous pouvons lui donner un sens si nous acceptons de
travailler \og à des intégrateurs purs près\fg (rappelons que cela ne change pas
d'après la définition \ref{sysdef} le système).
\begin{theoreme}\label{eqfeed}
Supposons que $\dot x=f(x,u)$ et $\dot y=g(y,v)$ soient équivalents.
Alors $\dot x=f(x,u)$ peut être transformé par un bouclage (dynamique)
et changement de coordonnées en
$$\dot y=g(y,v),\quad\dot v=v^1,\quad\dot v^1=v^2,\dots,\quad\dot v^\mu=w$$
pour un entier~$\mu$ assez grand. Inversement, $\dot y=g(y,v)$ peut être transformé
par un bouclage
(dynamique) et changement de coordonnées en
$$\dot x=f(x,u),\quad\dot u=u^1,\quad\dot u^1=u^2,\dots,\quad\dot u^\nu=w$$
pour un entier~$\nu$ assez grand.
\end{theoreme}
\begin{proof}[Démonstration {\cite{martin-thesis,fliess-et-al-ieee99}}]
Notons $F$ et $G$ les champs de vecteurs infinis représentant les deux systèmes.
L'équivalence signifie qu'il existe une application inversible
$$\Phi(y,\ol v) = (\varphi(y,\ol v),\alpha(y,\ol v), \dot\alpha(y,\ol v),\ldots)$$
telle que
\begin{equation}\label{conj}
F(\Phi(y,\ol v)) = D\Phi(y,\ol v).G(y,\ol v).
\end{equation}
Posons $\tilde{y}:=(y,v,v^1,\ldots,v^\mu)$ et $w:=v^{\mu+1}$. Pour $\mu$ assez grand,
$\varphi$ (\resp $\alpha$) dépend uniquement de~$\tilde y$ (\resp de $\tilde y$ et $w$).
Avec ces notations, $\Phi$ s'écrit
\begin{align*}
\Phi(\tilde y,\ol w) &= (\varphi(\tilde y),\alpha(\tilde y,w),
\dot\alpha(y,\ol w),\ldots),
\end{align*}
et l'équation (\ref{conj}) implique en particulier
\begin{equation}\label{conj2}
f(\varphi(\tilde y),\alpha(\tilde y,w))=
D\varphi(\tilde y)\cdot\tilde g(\tilde y,w),
\end{equation}
où $\tilde g:=(g,v^1,\dots,v^k)$. Comme $\Phi$ est inversible,
$\varphi$ est de rang plein et donc peut être complétée par une
application $\pi$ pour obtenir une changement de coordonnées $$\tilde
y\mto \phi(\tilde y)=(\varphi(\tilde y),\pi(\tilde y)).$$

Considérons maintenant le bouclage dynamique
\begin{align*}
u &= \alpha(\phi^{-1}(x,z),w))\\
\dot z &= D\pi(\phi^{-1}(x,z))\cdot \tilde g(\phi^{-1}(x,z),w)),
\end{align*}
qui transforme $\dot x=f(x,u)$ en
$$\begin{pmatrix}\dot x\\\dot z\end{pmatrix}=\tilde f(x,z,w):=
\begin{pmatrix}
f(x,\alpha(\phi^{-1}(x,z),w))\\
D\pi(\phi^{-1}(x,z))\cdot\tilde g(\phi^{-1}(x,z),w))
\end{pmatrix}.$$
Utilisant (\ref{conj2}), nous avons
\begin{align*}
\tilde f\bigl(\phi(\tilde y),w\bigr)=
\begin{pmatrix}
f\bigl(\varphi(\tilde y),\alpha(\tilde y,w)\bigr)\\ D\pi(\tilde y)\cdot\tilde g(\tilde y,w)
\end{pmatrix}&=
\begin{pmatrix}
D\varphi(\tilde y) \\ D\pi(\tilde y)
\end{pmatrix}
\cdot\tilde g(\tilde y,w)\\
&=
D\phi(\tilde y)\cdot\tilde g(\tilde y,w).
\end{align*}
Ainsi $\tilde f$ et $\tilde g$ sont $\phi$-conjugués, ce qui termine la preuve.
Un échange des rôles entre $f$ et $g$ conduit au bouclage dans l'autre sens.
\end{proof}

Comme un système plat est équivalent à un système trivial, on obtient
immédiatement le théorème suivant:
\begin{corollaire}\label{flfeed}
Une dynamique plate est linéarisable par bouclage (dynamique) et changement de coordonnées.
\end{corollaire}
\begin{remarque}
Comme le montre la preuve du théorème ci-dessus, de nombreux bouclages
réalisant l'équivalence sont possibles, autant que de fonctions~$\pi$.
Noter que tous ces bouclages ne sont pas définis et explosent en
général au point où $\varphi$ est singulière (i.e., là où son rang
chute). Plusieurs détails sur la construction de bouclages linéarisants
à partir de la sortie et les liens avec l'algorithme d'extension
dynamique se trouve dans \cite{martin-scl93}. Noter enfin qu'il est
souvent possible de construire, pour les systèmes plats, des bouclages
dits quasi-statiques. Ils ne rajoutent pas d'état supplémentaire et
permettent de linéariser la dynamique sans nécessairement passer par
une forme d'état explicite. Pour une excellente référence sur le sujet,
nous renvoyons à~\cite{delaleau-rudolph-ijc98}.
\end{remarque}

\begin{exemple}[l'avion à décollage vertical (suite)]\label{vtol:ex}
Nous savons de l'exemple \ref{vtol2} que la dynamique
\begin{align*}
\ddot x &= -u_{1}\sin\theta + \varepsilon u_{2}\cos\theta\\
\ddot z &= u_{1}\cos\theta + \varepsilon u_{2}\sin\theta - 1\\
\ddot\theta &= u_{2}
\end{align*}
admet comme sortie plate
$$y=(x-\varepsilon\sin\theta,z+\varepsilon\cos\theta).$$

Elle se transforme en
$$y^{(4)}_{1}= v_{1},\quad y^{(4)}_{2}= v_{2}$$
avec le bouclage dynamique
\begin{align*}
\ddot\xi & = -v_{1}\sin\theta+v_{2}\cos\theta+\xi \dot\theta^{2} \\
u_{1} & = \xi+\varepsilon\dot\theta^{2} \\
u_{2} &=
\frac{-1}{\xi}(v_{1}\cos\theta+v_{2}\sin\theta+2\dot\xi\dot\theta)
\end{align*}
et le changement de coordonnées
$$(x,z,\theta,\dot x,\dot z,\dot\theta,\xi,\dot\xi)\mto(y,\dot y,\ddot y,y^{(3)}).$$
La seule singularité de ce bouclage est quand $\xi=0$, c'est-à-dire
\[
\ddot y_{1}^2+(\ddot y_{2}+1)^2=0
\]
(l'avion est en chute
libre).
Notons enfin que l'avion à décollage vertical n'est pas linéarisable
par bouclage statique: il suffit d'appliquer le théorème \ref{cnsstat:thm}.
\end{exemple}

\subsection{Bouclages endogènes}
Le théorème \ref{eqfeed} assure l'existence d'un bouclage tel que
\begin{equation}\label{endo}
\begin{aligned}
\dot x &= f(x,\kappa(x,z,w))\\
\dot z &= a(x,z,w).
\end{aligned}
\end{equation}
s'écrit, à un changement de coordonnées près,
\begin{equation}\label{prol}
\dot y= g(y,v),\quad\dot v= v^1,\dots,\quad\dot v^\mu= w.
\end{equation}
Mais (\ref{prol}) est équivalent à $\dot y=g(y,v)$ (voir la remarque
après la définition \ref{sysdef}), lui-même équivalent à $\dot
x=f(x,u)$. Ainsi, (\ref{endo}) est équivalent à $\dot x=f(x,u)$. Cela
conduit à la
\begin{definition}
Considérons la dynamique $\dot x=f(x,u)$. Le bouclage
\begin{align*}
u &= \kappa(x,z,w)\\
\dot z &= a(x,z,w)
\end{align*}
est dit {\em endogène} si la dynamique en boucle ouverte $\dot x=f(x,u)$
est équivalente à la dynamique en boucle fermée
\begin{align*}
\dot x &= f(x,\kappa(x,z,w))\\
\dot z &= a(x,z,w).
\end{align*}
\end{definition}
Le terme \og endogène\fg traduit le fait que les variables du bouclage $z$
et $w$ sont en un certain sens \og engendrées\fg par les variables
originales $x,\ol u$ (voir \cite{martin-thesis,martin-mtns93} pour plus
de détails sur ces bouclages).
\begin{remarque}
Il est aussi possible de considérer sans coût supplémentaire des
bouclages \og généralisés\fg dépendant non seulement de~$w$, mais aussi des
dérivées de $w$. Les bouclages quasi-statiques en font
partie \cite{delaleau-rudolph-ijc98}.
\end{remarque}

Nous avons ainsi une caractérisation encore plus précise de
l'équivalence et de la platitude:
\begin{theoreme}
Deux dynamiques, $\dot x=f(x,u)$ et $\dot y=g(y,v)$, sont équivalentes si,
et seulement si, $\dot x=f(x,u)$ peut être transformé par bouclage
endogène et changement de coordonnées en
\begin{equation}
\dot y= g(y,v),\quad\dot v= v^1,\dots,\quad\dot v^\mu= w.
\end{equation}
pour un entier~$\nu$ assez, et vice versa.
\end{theoreme}
\begin{corollaire}
Une dynamique est plate si, et seulement si, elle est linéarisable
par bouclage dynamique endogène et changement de coordonnées.
\end{corollaire}

Une autre conséquence élémentaire et importante du
théorème \ref{eqfeed} est qu'un bouclage dynamique endogène peut être
défait par un autre bouclage endogène:
\begin{corollaire}
Considérons la dynamique
\begin{align*}
\dot x &= f(x,\kappa(x,z,w))\\
\dot z &= a(x,z,w)
\end{align*}
où
$$
u = \kappa(x,z,w),\quad
\dot z = a(x,z,w)
$$
est un bouclage endogène. Elle peut être transformée par bouclage
endogène en
\begin{equation}
\dot x=f(x,u),\quad\dot u= u^1,\dots,\quad\dot u^\mu= w.
\end{equation}
pour un entier~$\mu$ assez grand.
\end{corollaire}
Cela montre clairement les propriétés préservées par équivalence:
les propriétés qui sont préservées par l'ajout d'intégrateurs purs
et les changements de coordonnées, en particulier la commandabilité.

Un bouclage endogène est réellement \og réversible\fg, à des intégrateurs
purs près. Il est important de mentionner qu'un bouclage qui est {\em
inversible} dans la terminologie standard --- mais peut-être
malheureuse --- \cite{nijmeijer-schaft-book} n'est pas nécessairement
endogène. Par exemple le bouclage $\dot z=\nobreak v$, $u=v$ agissant sur le
système scalaire $\dot x=u$ n'est pas endogène. En effet, la dynamique
en boucle fermée $\dot x=v,~\dot z=v$ n'est plus commandable, ce qui
est impossible à changer par n'importe quel autre bouclage~!

\subsection{Suivi de trajectoires}\label{linearization}

Un problème important en pratique est celui du {\em suivi de
trajectoires}: étant donnée une dynamique $\dot x=f(x,u)$, nous
cherchons un contrôleur capable de suivre n'importe quelle trajectoires
de référence $t\mto\bigl(x_{r}(t),u_{r}(t)\bigr)$: il convient de
rajouter à la commande en boucle ouverte une correction $\Delta u$ en
fonction des erreurs sur l'état $\Delta x= x-x_{r}$. Pour les systèmes
plats une méthode systématique existe pour calculer $\Delta u$ à partir de
$\Delta x $ et de la trajectoire de référence.

Si la dynamique admet comme sortie plate $y=h(x,\ol u)$, nous pouvons
utiliser le corollaire \ref{flfeed} pour la transformer par bouclage
dynamique (endogène) et changement de coordonnées en $y^{(\mu+1)}=w$.
Avec
$$v:=y_{r}^{(\mu+1)}(t)-K\Delta\tilde y$$
et une matrice gain $K$ dont les valeurs propres sont à parties réelles
positives, nous obtenons une dynamique de l'erreur asymptotiquement
stable
$$\Delta y^{(\mu+1)}=-K\Delta\tilde y,$$
où $y_{r}(t):=(x_{r}(t),\ol u_{r}(t)\bigr)$ et $\tilde y:=(y,\dot
y,\dots,y^\mu)$ et $\Delta\xi$ représente $\xi-\xi_{r}(t)$.

Une telle loi de commande assure le suivi asymptotique. Il
existe une transformation inversible
$$\Phi(\ol y)=(\varphi(\ol y),\alpha(\ol y),\dot\alpha(\ol y),\dots)$$
qui conjugue les champs infinis $F(x,\ol u):=(f(x,u),u,u^1,\dots)$ et
$G(\ol y):=(y,y^1,\dots)$. De la preuve du théorème \ref{eqfeed}, cela
signifie que
\begin{align*}
x &= \varphi(\tilde y_{r}(t)+\Delta \tilde y) \\
&= \varphi(\tilde y_{r}(t))+R_{\varphi}(y_{r}(t),\Delta\tilde y)\cdot\Delta\tilde y \\
&= x_{r}(t)+R_{\varphi}(y_{r}(t),\Delta \tilde y)\cdot\Delta \tilde y
\end{align*}
et
\begin{align*}
u &= \alpha(\tilde y_{r}(t)+\Delta\tilde y,-K\Delta\tilde y) \\
&= \alpha(\tilde y_{r}(t))+R_{\alpha}(y_{r}^{(\mu+1)}(t),\Delta \tilde y)\cdot
\begin{pmatrix}\Delta \tilde y \\ -K\Delta \tilde y \end{pmatrix} \\
&= u_{r}(t)+R_{\alpha}(\tilde y_{r}(t),y_{r}^{(\mu+1)}(t),\Delta\tilde y,\Delta w)\cdot
\begin{pmatrix}\Delta\tilde y \\ -K\Delta\tilde y \end{pmatrix},
\end{align*}
où nous avons utilisé le résultat classique de factorisation
\begin{align*}
R_{\varphi}(Y,\Delta Y) &:= \int_0^1D\varphi(Y+t\Delta Y)dt \\
R_{\alpha}(Y,w,\Delta Y,\Delta w) &:=
\int_0^1D\alpha(Y+t\Delta Y,w+t\Delta w)dt.
\end{align*}
Comme $\Delta y\to 0$ quand $t\to\infty$, cela signifie
que $x\to x_{r}(t)$ et $u\to u_{r}(t)$. Il est clair
qu'un tel algorithme de suivi a des performances qui vont se dégradant
(robustesse, sensibilité aux erreurs) au fur et à mesure l'on
s'approche d'une singularité de la transformation $\varphi$ c'est à
dire de $\Phi$ et donc de la sortie plate.

Nous terminons cette section par quelques commentaires sur
l'utilisation de la linéarisation par bouclage. Un bouclage
linéarisant doit toujours être nourri par un {\em générateur de
trajectoires}, même si le problème original n'est pas posé en termes de
suivi de trajectoires. Supposons que l'on désire {\em stabiliser} un
point d'équilibre. L'application brutale d'un bouclage linéarisant
sans planification de trajectoires conduit à des commandes très
importantes si l'on est loin de l'équilibre. Le rôle du générateur de
trajectoires est de définir une trajectoire boucle ouverte
\og raisonnable\fg ramenant progressivement le système à l'équilibre
--- i.e., satisfaisant certaines contraintes sur l'état et/ou la commande
--- que le contrôleur linéarisant devra suivre.

\subsection{Suivi de trajectoires: singularités et échelles de temps} \label{tracksing-sec}

Le suivi de trajectoire est possible uniquement loin des singularités
de la transformation engendrée par la sortie plate. Si la trajectoire
de référence passe près ou traverse la singularité il n'est plus
possible de procéder comme ci-dessus. Cependant, tout n'est pas perdu
comme le montre l'exemple qui suit. Il peut être utile parfois de
changer le paramétrage du temps. L'intérêt est alors, dans le nouveau
temps, de retrouver une transformation régulière et inversible et
d'assurer ainsi le suivi exponentiel.
\begin{exemple} \label{tracks-ex}
Soit la trajectoire de référence $t\mto
y_{r}(t)\!=\! (\sigma(t),p(\sigma(t))$ pour l'exem\-ple \ref{mps-ex}.
Considérons le compensateur dynamique dépendant du temps
$u_{1}= \xi\dot \sigma(t)$ et $\dot \xi = v_{1} \dot \sigma(t)$.
Le système en boucle fermée s'écrit
$$
x_{1}^{\prime} = \xi,
\quad
x_{2}^{\prime} = u_{2}\xi,
\quad
x_{3}^{\prime} =x_{2} \xi
\quad
\xi^{\prime} =v_{1}.
$$
avec $^{\prime}$ pour $d/d\sigma$. Une formulation équivalente
est
$$
x_{1}^{\prime\prime}= v_{1},\quad x_{3}^{\prime\prime} =
u_{2}\xi^{2} + x_{2} v_{1}.
$$
Pour $\xi$ loin de zéro, le bouclage statique
$u_{2}= (v_{2}-x_{2} v_{1})/\xi^{2}$
linéarise la dynamique,
$$
x_{1}^{\prime\prime}= v_{1},\quad x_{3}^{\prime\prime} = v_{2}
$$
dans le temps $\sigma$. Si le système reste proche de sa référence, $\xi
\approx 1$, même si pour certain $t$, $\dot \sigma(t)=0$.
Prenons
\begin{equation}
\begin{array}{l}
v_{1}= 0 -\mbox{signe}(\sigma) a_{1}(\xi-1) - a_{2}(x_{1}-\sigma)
\\
v_{2}= \dfrac{d^{2}p}{d\sigma^{2}} -
\mbox{signe}(\sigma) a_{1}
\Bigl(x_{2}\xi - \dfrac{dp}{d\sigma}\Bigr)
- a_{2}(x_{3}-p)
\end{array}
\label{bouclage}
\end{equation}
avec $a_{1}>0$ et $a_{2}>0$. Alors la dynamique de l'erreur devient
exponentiellement stable en échelle $\sigma$ (le terme
$\mbox{signe}(\sigma)$ est pour le cas $\dot \sigma < 0$).

\end{exemple}
Des calculs similaires sont possibles pour les robots
mobiles \cite{fliess-et-al-ecc95a,fliess-et-al-mtns96}.

\section{Caractérisation de la platitude}

\subsection{La question de base}\label{genpro}
L'existence d'un critère calculable pour décider si $\dot
x=f(x,u),x\in\RR^n,u\in\RR^m$ est plat reste une question ouverte. Cela
signifie qu'il n'existe pas de méthode systématique pour construire une
sortie plate. La situation est un peu analogue à celle des fonctions de
Lyapounov ou des intégrales premières uniformes pour un système
dynamique. Elles sont très utiles à la fois d'un point de vue théorique
et pratique bien qu'elles ne soient pas systématiquement calculables.

La principale difficulté dans le calcul d'une sortie plate
$y=h(x,u,\ldots,u^{(r)})$ réside dans sa dépendance par rapport aux
dérivées en $u$ d'ordre~$r$ arbitrairement grand. Savoir si cet
ordre~$r$ admet une borne supérieure (en terme de $n$ et $m$) reste une
énigme. Nous ne savons même pas, pour une dimension d'état et un nombre donné
de commandes, si une borne finie existe.
Par la suite, nous dirons qu'un système est {\em $r$-plat} s'il admet une
sortie plate dépendant de $u$ dérivé au plus $r$ fois.

Pour illustrer le fait qu'une telle borne doit être au mieux linéaire
en la dimension de l'état, considérons l'exemple suivant:
$$x_1^{(\alpha_1)}=u_1,\quad x_2^{(\alpha_2)}=u_2, \quad \dot x_3 = u_1 u_2$$
avec $\alpha_1 >0$ et $\alpha_2 >0$. Il admet comme sortie plate
$$
y_1= x_3 +\sum_{i=1}^{\alpha_1} (-1)^{i} x_1^{(\alpha_1-i)}u_2^{(i-1)},
\quad y_2= x_2.
$$
Ce système est $r$-plat avec $r:=\min(\alpha_1,\alpha_2)-1$. Nous conjecturons
qu'il n'existe pas de sortie plate dépendant des dérivées de $u$ d'un
ordre inférieur ou égal à $r-1$.

Admettons qu'une telle borne $\kappa(n,m)$ soit connue, Le problème de
caractériser la $p$-platitude pour un $p \leq \kappa(n,m)$ {\em donné} peut être résolu au moins théoriquement.
Cela revient (voir \cite{martin-thesis}) à trouver $m$ fonctions $h_1,\dots,h_m$
dépendant de $(x,u,\ldots,u^{(p)})$ tel que
\begin{multline*}
\mbox{dim span}\left\{
dx_1,\dots,dx_n, du_1,\dots,du_m,d h^{(\mu)}_1,\dots,d h^{(\mu)}_m
\right \}_{0\leq \mu\leq \nu}\\
= m(\nu+1),
\end{multline*}
où $\nu:= n+p m$. Cela revient à vérifier l'intégrabilité d'un système aux dérivées partielles
avec comme condition de transversalité
\begin{align*}
dx_i\wedge dh\wedge\cdots\wedge dh^{(\nu)} &=0, &&i=1,\dots,n\\
du_j\wedge dh \wedge\cdots\wedge dh^{(\nu)} &=0, &&j=1,\dots,m\\
dh \wedge\cdots\wedge dh^{(\nu)} &\neq 0,
\end{align*}
où $dh^{(\mu)}$ représente $dh^{(\mu)}_1\wedge\cdots\wedge dh^{(\mu)}_m$.
Il est en théorie possible de conclure par un critère
calculable \cite{bryant-et-al-book,pommaret-book1},
bien que les calculs généraux soient inextricables en pratique.
Cependant, on peut espérer utiliser la structure spéciale du problème
pour mettre en évidence des simplifications majeures. En bref, tout
reste à faire même si l'on dispose de plusieurs façon d'aborder la question (voir \cite{ABMP-ieee,Cht,pereira-mtns,L-arXiv,avanessoff-2006-inria}).

\Subsection{Résultats connus}\label{stdresults}

\subsubsection*{Systèmes linéarisables par bouclage statique}
Nous avons vu qu'un tel système admettait une forme normale de
Brunovsky. Il est donc plat, les sorties de Brunovsky, fonction de $x$
uniquement, forment alors une sortie plate. La condition nécessaire et
suffisante \cite{jakubczyk-respondek-80,hunt-et-al-ieee83} du
théorème \ref{cnsstat:thm} est de nature purement géométrique. Noter
qu'un système plat n'est pas, en général, linéarisable par bouclage
statique (\cf l'avion à décollage vertical \ref{vtol2}) sauf pour les
systèmes avec une seule commande.

\subsubsection*{Systèmes à une seule commande}\label{singlei}
Avec une seule commande, la linéarisation par bouclage dynamique
implique la linéarisation par bouclage
statique \cite{charlet-et-al-scl89}. Ainsi la platitude est, dans ce
cas,
entièrement caractérisée par le théorème \ref{cnsstat:thm}.

\subsubsection*{Systèmes affines en commande de co-dimension~$1$} \label{afcodim1}
Un système de la forme
$$\dot x = f_0(x) +\sum_{j=1}^{n-1} u_j g_j(x),\quad x\in\RR^n,$$
i.e., avec une commande de moins que d'état est $0$-plat dès qu'il est
commandable \cite{charlet-et-al-scl89} (plus précisément fortement
accessible en~$x$). La situation se complique très sensiblement lorsque
la dépendance en $u$ n'est plus affine (voir \cite{Mart93c} pour des
conditions suffisantes de nature géométrique).

\subsubsection*{Systèmes affines en commande à deux états et quatre commandes}
Des con\-di\-tions nécessaires et suffisantes de $1$-platitude de tels
systèmes se trouvent dans \cite{avanessoff-2007-13,pomet-cocv97}. Elles donnent une bonne
idée de la difficulté calculatoire du test effectif de la
$r$-platitude même pour $r$ petit.

\subsubsection*{Systèmes sans dérive}
Pour les systèmes de la forme $\dot x = \sum_{i=1}^{m} f_i(x) u_i$
d'autres résultats sont disponibles.
\begin{theoreme}[systèmes sans dérive à deux commande \cite{martin-rouchon-mcss94}] \label{codim2}
Le système
$$\dot x = f_1(x) u_1 + f_2(x) u_2$$
est plat si, et seulement si, le rang générique de $E_k$ est égale à $k+2$ pour $k=0,\ldots,n-2$
où $E_0:=\{f_1,f_2\}$, $E_{k+1}:=\{E_k,[E_k,E_k]\}$, $k\geq 0$.
\end{theoreme}
Un système plat sans dérive à deux commandes est toujours $0$-plat. Un
tel système satisfaisant des conditions supplémentaires de régularité
(voir \cite{murray-mcss94}), peut être mis par bouclage statique
régulier et changement de coordonnées sous {\em forme
chaînée} \cite{murray-sastry-ieee93}
$$
\dot x_1=
u_1, \quad \dot x_2 =
u_2,\quad \dot x_3 = x_2 u_1, \ldots, \quad \dot x_n =x_{n-1} u_1,
$$
la sortie plate étant alors $y=(x_{1},x_{n})$.

\begin{theoreme}[système sans dérive, $n$ états, $n-2$
commandes \cite{martin-rouchon-scl95,martin-rouchon-cdc95b}] \label{dim2}
Le système
$$\dot x = \sum_{i=1}^{n-2}u_{i}f_{i}(x),\quad x\in\RR^n$$
est plat dès qu'il est commandable (i.e., fortement accessible pour
presque tout $x$). Plus précisément, il est $0$-plat si $n$ est
impaire, et $1$-plat si $n$ est pair.
\end{theoreme}
Tous les résultats ci-dessus utilisent les systèmes différentiels
extérieurs et s'appuient sur certains travaux d'Élie Cartan.

\subsubsection*{Certains systèmes mécaniques}
Lorsque le nombre des commandes (i.e., de moteurs) est égal aux nombre
de degrés de liberté géométrique moins un, une caractérisation très
intrinsèque d'une sortie plate ne dépendant que des variables
de configuration est disponible. Dans \cite{rathinam-murray-siam98} l'existence d'une
telle sortie plate est caractérisée à partir de la métrique issue de
l'énergie cinétique et de la co-distribution des commandes.

\subsubsection*{Une condition nécessaire}
Comme on ne sait pas si la platitude peut être testée de manière finie,
voir section \ref{genpro}, il est souvent très difficile de montrer
qu'un système n'est pas plat. Le critère suivant donne une condition
simple qui permet de montrer de façon élémentaire que
certains systèmes ne sont pas plats.

\begin{theoreme}[le critère de la variété
réglée \cite{rouchon-jmsec95}]
Supposons que $\dot x =f(x,u)$ soit plat. La projection sur le
$p$-espace de la sous-variété d'équation $p=f(x,u)$ dans le
$(p,u)$-espace ($x$ est ici un paramètre) est une sous-variété réglée
pour tout $x$.
\end{theoreme}
Ce critère signifie que l'élimination de $u$ des $n$ équations $\dot
x=f(x,u)$ conduit à $n-m$ équations $F(x,\dot x)=0$ avec la
propriété suivante: pour tout $(x,p)$ tel que $F(x,p)=0$, il existe
$a\in \RR^{n}$, $a\neq 0$ tel que
$$\forall \lambda\in\RR, \quad F(x, p+\lambda a) = 0. $$
$F(x,p)=0$ est donc réglée car elle contient la droite passant par $p$
de direction~$a$.

La preuve de ce résultat est directement dans l'esprit du papier de
Hilbert \cite{hilbert-1912} qui montre que l'équation de Monge
$$\frac{d^2z}{dx^2}= \left(\frac{dy}{dx}\right)^2$$ n'est pas résoluble
sans intégrale. Une version restreinte est proposée
dans \cite{sluis-scl93} pour des systèmes linéarisables par des
bouclages dynamiques très particuliers (prolongements purs).

\begin{proof}
Soit $(\bar x,\bar u,\bar p)$, tel que $\bar p=f(\bar x,\bar u)$.
Génériquement, $f$ est de rang $m=\dim(u)$ par rapport à $u$ (sinon, il
suffit d'enlever certaines commandes). Aussi, l'élimination de $u$ des
équations est possible. Cela conduit à $n-m$ équations ne faisant
intervenir que $x$ et $p$, $F(x,p)=0$. Ainsi nous avons la contrainte
sur les trajectoires autour de $(\bar x,\bar u)$: $F(x,\dot x)=0$. Si
le système est plat alors
$$
x = \varphi (y, \dot y, \dots, y^{(q)})
$$
où $y$ est une sortie plate et l'application $\varphi$ une submersion.
Ainsi, existe $(\bar y, \dot{\bar y}, \dots, \bar
y^{(q)})$ tel que $\bar x = \varphi (\bar y, \dot{\bar y}, \dots, \bar
y^{(q)})$. Quelque soit la fonction régulière du temps
$y$, on a l'identité suivante
$$
F\left(
\varphi (y, \dot y, \dots, y^{(q)}),
\varphi_{y} \dot y + \varphi_{\dot y } \ddot y + \cdots + \varphi_{y^{(q)}}
y^{(q+1)}
\right) \equiv 0.
$$
En prenant une fonction $y$ dont les dérivées en $t=0$ jusqu'à l'ordre~$q$ sont imposées $y^{(r)}(0)=\bar y^{(r)}$, $r=0,\dots,q$ et
$y^{(q)}(0)=\bar y^{(q)} + \xi$ où $\xi$ est un vecteur arbitraire de
$\RR^{m}$ on a en particulier l'identité suivante pour tout $\xi\in
\RR^{m}$
$$
F\left(\bar x,\dot{\bar x} + \varphi_{y^{(q)}} \xi
\right) \equiv 0
$$
avec $\varphi_{y^{(q)}}$ évaluer en $(\bar y, \dot{\bar y}, \dots, \bar
y^{(q)})$. Par le point $(\bar x,\bar p)$ de $F(x,p)=0$, passe
l'espace affine parallèle à l'image de $\varphi_{y^{(q)}}$, un espace
vectoriel de dimension au plus égale à $m$ et au moins égale à $1$.
\end{proof}

Ce résultat est particulièrement simple. Il constitue cependant le seul
moyen de montrer que certains systèmes avec plusieurs commandes ne sont
pas plats.
\begin{exemple}Le système
$$\dot x_1=u_1, \quad\dot x_{2}=u_2, \quad \dot x_3= (u_1)^2 + (u_2)^3$$
n'est pas plat, car la sous-variété $p_3\!=\!p_1^2\!+\!p_2^3$ n'est pas
réglée: il~n'exis\-te pas de $a\in \RR^3$, $a\neq 0$, tel que
$$\forall \lambda\in \RR, p_3+\lambda a_3= (p_1+\lambda a_1)^2+(p_2+\lambda a_2)^3.$$
En effet, le terme cubique en $\lambda$ implique $a_2=0$, le terme
quadratique $a_1=0$ et donc $a_3=0$.
\end{exemple}
\begin{exemple}
Le système $\dot{x}_{3} = \dot{x}_{1}^{2} + \dot{x}_{2}^{2}$ ne
définit pas une sous-variété réglée de $\RR^{3}$: il n'est pas plat
dans~$\RR$. En revanche, il définit une sous-variété réglée de
$\CC^{3}$: il est plat dans~$\CC$, avec comme sortie plate
$$y= \bigl(x_{3}- (\dot{x}_{1}-\dot{x}_{2}\sqrt{-1})(x_{1}+x_{2}\sqrt{-1}),~
x_{1}+x_{2}\sqrt{-1}\bigr).$$
\end{exemple}
\begin{exemple}[la bille sur une règle \cite{hauser-et-al-ieee92}]
Considérons le système de la figure \ref{bb:fig} décrit par les
équations
\begin{align*}
\ddot{r}
&= - Bg\sin\theta + B r \dot{\theta}^{2} \\
(mr^{2}+J+J_{b})\ddot{\theta}
&= \tau - 2mr\dot{r}\dot{\theta} - mgr\cos\theta,
\end{align*}
\begin{figure}[htb]
\begin{center}
\includegraphics[scale=.7]{ballbeam}
\end{center}
\caption{La bille roule sans glisser sur la règle dont on pilote l'inclinaison}
\label{bb:fig}
\end{figure}
où $(r,\dot{r},\theta,\dot{\theta})$ est l'état et $\tau$ la commande,
En tant que système à une commande, nous savons qu'il n'est pas
linéarisable par bouclage statique et donc qu'il ne peut pas être plat
(\cf sous-section \ref{singlei}). Cependant il est très instructif de
le montrer avec le critère des variétés réglées. Cela permet de
comprendre pourquoi la caractérisation des systèmes plats à une seule
commande est une question résolue.

L'élimination de $\tau$ donne
$$\dot r =v_r, \quad \dot{v}_r = - Bg\sin\theta + B r \dot{\theta}^{2},
\quad\dot \theta = v_{\theta}$$
qui définit une sous-variété réglée de l'espace $(\dot r,\dot v_r,\dot \theta,\dot
v_{\theta})$ pour chaque $r,v_r,\theta,v_{\theta}$. On ne peut pas
conclure directement.
Cependant le système est équivalent à
$$\dot r =v_r, \quad \dot{v}_r = - Bg\sin\theta + B r \dot{\theta}^{2},$$
qui ne définit pas une sous-variété réglée pour chaque $(r,v_r,\theta)$.
Donc ce système n'est pas plat.
\end{exemple}

L'exemple qui précède montre clairement pourquoi les systèmes plats à
une commande coïncident avec les systèmes linéarisables par bouclage
statique. Pour un système mono-entrée plat, l'élimination de~$u$,
conduit à une sous-variété de dimension~$1$ dans l'espace des $p=\nobreak\dot
x$. Or les seules sous-variétés réglées de dimension~$1$ sont des
droites. Il est alors toujours possible de faire une changement de
variable sur~$x$ pour avoir des droites parallèles à une direction
fixe, indépendante de~$x$ et ainsi se ramener à un système équivalent
avec un état de moins et toujours une seule commande. On se ramène
ainsi de proche en proche, par changement de variables et élimination, à un système
avec un état et une commande. La sortie plate est alors l'état
mono-dimensionnel restant. Cette simple procédure montre clairement
que le système est linéarisable par bouclage statique.

Pour un système plat à deux entrées, l'élimination de $u$
conduit à une sous-variété réglée de dimension $2$ qui n'est pas en
général un plan et donc n'a aucune raison d'être un espace affine. Le
fait que la géométrie des variétés réglées de dimension $\geq 2$
soit bien plus complexe que celles de dimension~$1$ explique la
différence entre le cas mono-entrée et le cas multi-entrées. Nous donnons ici un exemple qui vérifie le critère des variétés réglées mais qui n'est pas susceptible d'être traité par la procédure récemment proposée dans~\cite{schlacher-schoberl-nolcos07}:
$$
\dot x_1 = x_2 + (u_1-x_1 u_2)^2 u_2, \quad \dot x_2=u_1,\quad \dot x_3 = u_2
$$
Cet exemple est issu de \cite{pomet-siam09} où est proposée une généralisation du critère des variétés réglées: cette généralisation permet de montrer que deux systèmes $\dot x = f(x,u)$ et $\dot y=g(y,v)$ ne sont pas équivalents au sens de la définition~\ref{eq-def} lorsque $\dot y=g(y,v)$ n'est plus le système trivial $\dot y =v$.

\section{Commande optimale et prédictive}
Considérons le problème classique
$$
\min_{u} J(u)=\int_{0}^T L(x(t),u(t)) dt
$$
avec $\dot x =f(x,u)$, $x(0)=a$ et $x(T)=b$, où $a,b$ et $T>0$ sont donnés.

Supposons que $\dot x= f(x,u)$ soit plat avec $y=h(x,u,\ldots,u^{(r)})$
comme sortie plate,
$$
x=\varphi(y,\ldots, y^{(q)}), \quad u = \alpha(y,\ldots, y^{(q)}).
$$
La résolution numérique de $\min_{u} J(u)$ nécessite a priori la
discrétisation de l'espace d'état, une approximation de dimension
finie. Une autre façon consiste à discrétiser la sortie plate.
Comme dans la section \ref{mp-sec}, posons $y_{i}(t) =\sum_{1}^{N} A_{ij}
\lambda_j(t)$. Les conditions initiales et finales sur $x$
signifient
que les $A_{ij}$ sont dans un sous espace affine, noté~$V$. Ainsi
nous sommes conduits au programme non linéaire suivant
$$\min_{A\in V} J(A)=
\int_{0}^T L(\varphi(y,\ldots, y^{(q)}),\alpha(y,\ldots, y^{(q)})) dt,
$$
où les $y_{i}$ sont remplacés par $\sum_{1}^{N} A_{ij} \lambda_j(t)$.

Cette méthode a été utilisée dans \cite{niewstadt-murray-ijrnc98}
pour la génération de trajectoires optimales. Elle est généralisée à des systèmes plus généraux que les systèmes plats dans~\cite{chaplais-petit-cocv08}.
Elle peut également être utilisée pour la commande prédictive. Le
principal intérêt réside dans des gains importants en temps de calculs
et une meilleure stabilité numérique. En effet, la quadrature exacte
de la dynamique --- correspondant à la discrétisation exacte de la
dynamique grâce à des signaux de commande bien choisis avec $\alpha$ ---
évite les problèmes usuels liés à l'intégration de $\dot x =f(x,u)$ et
à la contrainte finale $x(T)=b$. Une référence récente sur le sujet est~\cite{hagenmeyer-delaleau-IJC08}.

\section{Symétries} \label{sym:sec}

\subsection{Sortie plate invariante}
Soit une dynamique $\dot x=f(x,u)$, $(x,u)\in X\times
U\subset\RR^n\times\RR^m$. Selon la section \ref{equiv-sec}, elle
engendre un système $(F,{\mathfrak M}),$ où
$$
{\mathfrak M}:=X\times
U\times\RR^\infty_{m}\qqbox{et}F(x,u,u^1,\dots):=(f(x,u),u^1,u^2,\dots).
$$
Au c{\oe}ur de notre notion d'équivalence se trouvent les applications
endogènes qui envoient les solutions d'un système vers celles d'un autre
système. Nous allons maintenant considérer une sous-classe importante
de transformations endogènes, celles qui envoient les solutions du système
sur d'autres solutions du {\em même} système:
\begin{definition}
Une transformation endogène $\Phi_{g}:{\mathfrak M}\mto{\mathfrak M}$ est une {\em
symétrie} du système $(F,{\mathfrak M})$ si
$$\forall\xi:=(x,u,u^1,\dots)\in{\mathfrak M},
\quad F(\Phi_{g}(\xi))=D\Phi_{g}(\xi)\cdot F(\xi).$$
\end{definition}
Plus généralement, nous pouvons considérer un {\em groupe de symétries}, i.e.,
une collection
$\bigl(\Phi_{g}\bigr)_{g\in G}$ de symétries
$\forall g_{1},g_2\in G,\Phi_{g_{1}}\circ\Phi_{g_{2}}=\Phi_{g_{1}*g_{2}},$
où $(G,*)$ est un groupe.

Supposons le système plat. Le choix de la sortie plate n'est pas
unique, car toute transformation sur la sortie plate donne lieu à une
autre sortie plate. Cependant, nous allons voir sur un exemple que
certains choix sont meilleurs que d'autres. Cela tient au fait que
certaines sorties plates admettent alors un sens physique immédiat et
donc, d'une certaine manière, préservent les symétries naturelles.

\begin{exemple}[la voiture] Le système décrivant une voiture (condition de
roulement sans glissement à l'avant et à l'arrière)
$$\dot x = u_1 \cos\theta, \quad \dot y=u_1 \sin\theta, \quad \dot \theta= u_2,$$
admet, comme groupe de symétries, le groupe $SE(2)$ des déplacements du plan $(x,y)$ préservant l'orientation:
chaque translation de vecteur~$(a,b)^{\prime}$ et rotation d'angle~$\alpha$,
conduit à la transformation endogène
\begin{align*}
X &= x\cos\alpha - y \sin\alpha +a\\
Y &= x\sin\alpha +y \cos \alpha +b\\
\Theta &= \theta+\alpha\\
U_1 &= u_1\\
U_2 &= u_2
\end{align*}
qui est une symétrie, puisque les équations d'état restent les mêmes,
$$\dot X = U_1\cos\Theta, \quad \dot Y=U_1\sin\Theta, \quad \dot \Theta= U_2.$$

Ce système est plat avec $z:=(x,y)$ comme sortie plate. Évidemment,
une multitude de sorties plates est possible comme $\tilde z:=(x,y+\dot
x)$. Cependant, $z$ est un choix bien plus \og naturel\fg que~$\tilde z$,
car~$z$ correspond aux coordonnées cartésienne de l'essieu arrière
alors que la seconde composante de $\tilde z$ n'a physiquement aucun
sens en tant que somme d'une position et d'une vitesse. Une
façon plus formelle serait de dire que $z$ préserve les symétries
alors que $\tilde z$ ne les respecte pas. En fait chaque symétrie sur
le système induit une transformation sur~$z$:
$$
\begin{pmatrix}z_1\\z_2\end{pmatrix}\mto
\begin{pmatrix}Z_1\\Z_2\end{pmatrix}=
\begin{pmatrix}X\\Y\end{pmatrix}=
\begin{pmatrix}
z_1\cos\alpha-z_2\sin\alpha+a\\
z_1\sin\alpha+z_2\cos\alpha+b
\end{pmatrix}.
$$
Cette transformation ne fait pas apparaître les {\em dérivées} de~$z$:
c'est une transformation {\em ponctuelle}. Cette transformation
engendre une transformation endogène $(z,\dot z,\dots)\mto(Z,\dot
Z,\dots)$ par simple prolongement. Selon \cite{gromov-book}, nous
dirons qu'une telle transformation qui est le prolongement d'une
transformation ponctuelle est {\em holonome}.

La transformation induite de façon similaire sur $\tilde z$
\begin{align*}
\begin{pmatrix}\tilde z_1\\\tilde z_2\end{pmatrix}\mto
\begin{pmatrix}\tilde Z_1\\\tilde Z_2\end{pmatrix}&=
\begin{pmatrix}X\\Y+\dot X\end{pmatrix}\\
&=
\begin{pmatrix}
\tilde z_1\cos\alpha+(\dot{\tilde{z_1}}-\tilde{z_2})\sin\alpha+a\\
\tilde z_1\sin\alpha+\tilde z_2\cos\alpha+(\ddot{\tilde{z_1}}-\dot{\tilde{z_2}})\sin\alpha+b
\end{pmatrix}
\end{align*}
n'est {\em plus } une transformation ponctuelle (elle comporte des
dérivées de~$\tilde z$). Elle n'est pas holonome.
\end{exemple}

Soit un système $(F,\mathfrak M)$ admettant une symétrie $\Phi$ (\resp un groupe de symétries $\bigl(\Phi_{g}\bigr)_{g\in G}$). Supposons que
ce système soit plat avec $y=h(x,u,\ldots,u^{(q)})$ comme sortie plate.
Notons $\Psi:=(h,\dot h,\ddot h,\dots)$ la transformation endogène
engendrée par~$h$. L'exemple ci-dessus nous suggère la définition
suivante.
\begin{definition}[sortie plate invariante]
La sortie plate $h$ est dite {\em invariante} par rapport à la symétrie
$\Phi$ (\resp au groupe de symétries $\bigl(\Phi_{g}\bigr)_{g\in G}$)
si, et seulement si, la transformation $\Psi\circ\Phi\circ\Psi^{-1}$ est
holonome (\resp les transformations $\Psi\circ\Phi_{g}\circ\Psi^{-1}$
sont holonomes pour tout $g\in G$).
\end{definition}
Se pose alors la question fondamentale suivante: soit
$\bigl(\Phi_{g}\bigr)_{g\in G}$ un groupe de symétries d'un système
plat. Sous quelles conditions existe-t-il une sortie plate invariante
par rapport à un tel groupe.

Cette question peut être vue comme le cas particulier du problème général
suivant: soit un système différentiel {\em sous-déterminé} $\dot
x-f(x,u)=0$ avec un groupe de symétries; peut-il être réduit à un
système plus petit~? Contrairement au cas {\em déterminé} où ce
problème a été étudié et résolu depuis longtemps, il semble que, pour
les systèmes sous-déterminés cette question ait été très peu
étudiée \cite{Olve93a}.

\subsection{Sortie plate, potentiel et degré de liberté de jauge}

Symétries et potentiels sont des concepts très importants en physique. Pour clore ce
chapitre, nous ne pouvons pas résister à la tentation de montrer que la
problématique des systèmes plats s'inscrit très naturellement dans ce
cadre.

Les équations de Maxwell dans le vide indique que le champ
magnétique $H$ est à divergence nulle,
$\nabla \cdot H =0$. En coordonnées euclidiennes $(x_{1},x_{2},x_{3})$,
cela conduit au système sous-déterminé aux dérivées partielles
suivant
$$
\frac{\partial H_{1}}{\partial x_{1}} +
\frac{\partial H_{2}}{\partial x_{2}} +
\frac{\partial H_{3}}{\partial x_{3}} =0.
$$
Une observation clé est que la solution générale de ce système dérive
d'un potentiel vecteur $H = \nabla \times A:$ la contrainte $\nabla
\cdot H =0$ est alors automatiquement vérifiée quelque soit le
potentiel vecteur $A$. Ce potentiel paramétrise toutes les solutions du
système sous-déterminé $\nabla\cdot H =0$ (voir \cite{pommaret-cras95}
pour une théorie générale dans le cadre linéaire avec la notion de
systèmes paramétrisables). $A$~est a priori non unique car il est
défini, à partir de $H$, à un champ de gradient près, le degré de
liberté de jauge. Les symétries du problème indiquent souvent comment
utiliser ce degré de liberté pour définir un potentiel $A$ \og naturel\fg
de façon à avoir les calculs les plus simples par la suite.

La situation est très analogue pour les systèmes plats. La sortie plate
est un \og potentiel\fg pour le système différentiel sous-déterminé $\dot
x -f(x,u)=0$. Les transformations endogènes sur la sortie plate
correspondent aux degrés de liberté de jauge. La sortie plate
\og naturelle\fg est également déterminée par les symétries \og naturelles\fg
du système. Avec une telle sortie plate, les bouclages deviennent aussi
invariants et donc préservent la physique du système (voir~\cite{martin-et-al-cocv03} pour le suivi de trajectoire invariant).

Une façon moins ésotérique et plus pragmatique pour se convaincre
que la platitude est une notion intéressante consiste à parcourir le
petit catalogue de systèmes plats du chapitre \ref{cat:ch}.

\part{Systèmes plats de dimension infinie} \label{inf:ch}
\addtocontents{toc}{\protect\enlargethispage{\protect\baselineskip}}

La correspondance entre les trajectoires
est à la base de la notion d'équivalence et de platitude. Une telle
correspondance peut être étendue à des systèmes qui ne sont plus
nécessairement gouvernés par des équations différentielles ordinaires.
Des prolongements sont possibles pour les systèmes gouvernés par des
équations aux dérivées partielles avec commande sur la frontière. Ici la
situation est bien moins claire que pour les équations différentielles
ordinaires. Cependant des tels prolongements peuvent être très utiles pour la
planification de trajectoires.

Le cadre théorique qui permettrait de regrouper sous une même forme les
exemples qui suivent reste à définir. Nous renvoyons
à \cite{mounier-thesis,fliess-mounier-cras94,fliess-mounier-cocv} pour
un début de formalisation dans le cas linéaire. On trouvera aussi dans le numéro spécial de \og International Journal of Control \fg en l'honneur de Michel Fliess (Vol 81, issue 3, 2008), plusieurs articles sur la dimension infinie et la platitude, articles qui complètent la monographie~\cite{rudolph-book03}. Nous ne retenons
ici que le coté explicite des paramétrisations à l'aide de
grandeurs jouant le rôle de sorties plates et dont la dépendance en temps
est libre de toutes contraintes en dehors de celles liées à la régularité.

\section{Retards et équations des ondes}

\subsection{Exemples de base}
Soit le système différentiel à retard
$$
\dot x_{1}(t)=x_{2}(t),\quad\dot x_{2}(t)=x_{1}(t)-x_{2}(t)+u(t-1).
$$
Avec $y(t):=x_{1}(t)$, nous avons une paramétrisation explicite des
trajectoires
$$
x_{1}(t)=y(t),\quad x_{2}(t)=\dot y(t),\quad u(t)=\ddot y(t+1)+\dot y(t+1)-y(t+1).
$$
Ainsi, $y(t):=x_{1}(t)$ joue ici le rôle d'une sortie \og plate\fg quitte
à utiliser dans les formules des valeurs avancées de $y$.
Cette idée est étudiée en détail dans \cite{mounier-thesis}, où la
classe des systèmes {\em $\delta$-libre} est définie ($\delta$ est ici
l'opérateur de retard). Plus précisément, \cite{mounier-thesis}
considère les systèmes linéaires avec retard de la forme
$$
M(d/dt, \delta)w = 0
$$
où $M$ est une matrice~$(n-m)\times n$ dont les éléments sont des polynômes en $d/dt$ et $\delta$
et où $w=(w_1,\ldots,w_n)$ correspond aux variables du système. Un
tel système est alors dit $\delta$-libre s'il est relié au système libre $y=(y_1,\ldots,y_m)$
engendré par $m$ fonctions arbitraires du temps par
\begin{align*}
w &= P(d/dt, \delta, \delta^{-1})y\\
y &= Q(d/dt, \delta, \delta^{-1})w,
\end{align*}
avec $P$ (\resp Q) une matrice $n\times m$ (\resp $m\times n$) à
éléments polynomiaux en $d/dt$, $\delta$ et $\delta^{-1}$.

De nombreux systèmes linéaires sont $\delta$-libres. Par exemple, $\dot
x(t) = A x(t) + B u(t-1)$, avec $(A,B)$ commandable, est
$\delta$-libre, avec la sortie de Brunovsky de $\dot x =
Ax+Bv$ comme sortie \og $\delta$-libre\fg.

Les modèles suivants, très souvent utilisés en commande de procédés,
$$z_{i}(s) = \sum_{j=1}^m\left\{
\frac{K_{i}^{j} \exp(-s\delta_i^{j})}{1+\tau_i^{j}s}
\right \}u_{j}(s),\quad i=1,\dots p$$
($s$ est la variable de Laplace, $K_{i}^{j}$ est le gain statique,
$\delta_i^j$ le retard et $\tau_i^{j}$ la constante de temps du
transfert entre $u_j$ et $z_i$) sont $\delta$-libres \cite{petit-et-al-ecc97}.

À ce niveau, les travaux dans~\cite{quadrat-robertz-la07} sur des modules libres sont particulièrement intéressants: ils proposent des méthodes formelles systématiques pour le calcul de base, i.e., de paramétrisation explicite via la sortie plate.

\subsection{Barre en torsion}
D'autres exemples de systèmes $\delta$-libres sont obtenus par l'équation des ondes.
La dynamique en torsion d'une barre
élastique \cite{fliess-et-al-cdc95a} avec d'un côté un moteur
et de l'autre une inertie est en variables réduites
(figure \ref{torsion-fig})
\begin{align*}
\partial^2_{t} \theta (x,t) &= \partial^2_{x} \theta(x,t), \quad x\in[0,1]\\
\partial_{x} \theta (0,t) &=-u(t)\\
\partial_{x} \theta (1,t) &= -\partial^2_{t}\theta(1,t),
\end{align*}
\begin{figure}[htb]
\begin{center}
\includegraphics[scale=.5]{torsion}
\end{center}
\protect\caption{Une barre en torsion avec inertie ponctuelle} \label{torsion-fig}
\end{figure}
où $\theta(x,t)$ est l'angle de torsion et $u(t)$ la commande
proportionnelle au couple du moteur. Des formules de d'Alembert,
$\theta(x,t)=\phi(x+\nobreak t)+\psi(x-\nobreak t)$, on déduit sans peine,
\begin{align*}
2\theta(t,x) &= -\dot y(t+x-1)+\dot y(t-x+1) + y(t+x-1)+y(t-x+1)
\\
2u(t) &= \ddot y(t+1) + \ddot y(t-1) + \dot y(t+1) - \dot y(t-1),
\end{align*}
avec $y(t):=\theta(1,t)$. Ce système est clairement $\delta$-libre
avec
$\theta(1,t)$ comme sortie \og $\delta$-plate\fg.
Nous renvoyons à \cite{mounier-et-al-ecc95,fliess-et-al-cdc95a} pour
les calculs et l'application à la planification de trajectoires
(démarrage d'une machine tournante).

Les paramétrisations précédentes utilisent des retards ponctuels. Sur
certains systèmes où la vitesse de propagation des ondes dépend de
l'espace, il est utile d'introduire des retards répartis comme le
montre l'exemple d'une chaîne pesante.

\subsection{Chaîne pesante}
Nous reprenons ici l'exemple introductif de~\cite{petit-rouchon-siam01}.
Les équations de la dynamique d'une chaîne pesante (\cf figure \ref{chaine-fig}) sont
$$
\frac{\partial^{2} X}{\partial t^{2}}
= \frac{\partial }{\partial z}\left(
g z \frac{\partial X}{\partial z}
\right)
\quad \mbox{pour } z\in[0,L]
, \quad X(L,t)=D(t)
$$
\begin{figure}[htb]
\begin{center}
\includegraphics[scale=.4]{chaine}
\end{center}
\caption{La chaîne pesante}
\label{chaine-fig}
\end{figure}
avec la commande au bord $D(t)$, le déplacement du chariot. Ce~\hbox{modèle}
est un modèle linéarisé autour de l'équilibre $X=D(t)$, $X(z,t)$
étant l'abscisse à l'instant $t$ du maillon à la coté $z$.
Nous allons montrer que la sortie plate est $y(t):= X(0,t)$ avec
\begin{equation}\label{chaine:eq}
X(z,t) = \frac{1}{2 \pi} \int_{0}^{2\pi}
y\left(t+2\sqrt{z/g}\sin\xi\right) \,d\xi.
\end{equation}
Une façon de faire est de vérifier a posteriori que, quelque soit la
fonction $t \mto y(t)$ deux fois dérivable, le profil $X(z,t)$
ci-dessus vérifie les équations de la dynamique avec comme commande
$$
D(t)= \frac{1}{2 \pi} \int_{0}^{2\pi}
y\left(t+2\sqrt{L/g}\sin\xi\right) ~d\xi.
$$
Une autre manière de procéder est le calcul symbolique à la Heaviside
ou Mikusi\'nski. Formellement, cela revient à utiliser la transformation
de Laplace en temps et à remplacer la dérivée en temps
avec la multiplication par $s$, la variable de Laplace ($\hat X$
désigne la transformée de Laplace de $X$):
$$
\frac{d }{d z}\Big(g z \frac{d \hat X}{d z} \Big)
= s^{2} \hat X.
$$
Il est bien connu \cite{watson-book} que la solution fondamentale de cette équation
du second ordre qui n'est pas infinie en $z=0$ s'exprime avec la
fonction de Bessel $J_{0}$ (il s'agit de la fonction de Clifford):
$$
J_{0}(-2i\sqrt{z/g} s).
$$
Comme $J_{0}(0)=1$, on a
$$
\hat X(z,s) = J_{0}(-2i\sqrt{z/g} s) ~X(0,s).
$$
Avec la représentation intégrale de Poisson
$$
J_{0}(\xi) = \frac{1}{2\pi} \int_{0}^{2\pi} \exp(i\xi\sin \theta) ~ d\theta
$$
on obtient
$$
\hat X(z,s) \!=\!
\frac{1}{2\pi} \int_{0}^{2\pi} \exp\left(2s\sqrt{x/g} \sin \theta\right) \hat y(s)~ d\theta
$$
avec $y=X(0,t)$. Comme la transformée de Laplace de $y(t+a)$ est
$\exp(a s) \hat y$, on en déduit directement la
formule (\ref{chaine:eq}). L'opérateur qui à $y$ associe le profil
$X(z,t)$ est à support compact. Il est facilement de construire des
trajectoires allant d'une position statique vers une autre en temps
fini. Les formules (\ref{chaine:eq}) fournissent une réponse
élémentaire à la planification de trajectoires.

\subsection{Réacteur chimique avec recyclage}
Cet exemple est issu de \cite{rouchon-rudolph-hermes99}.
\begin{figure}[htb]
\begin{center}
\includegraphics[scale=.6]{recycle}
\end{center}
\caption{Le réacteur de Aris et Amundson avec un recyclage}
\label{recycle-fig}
\end{figure}
Dans \cite{aris-amundson-58}, Aris et Amundson considèrent une classe
de réacteurs chimiques ne faisant intervenir qu'une seule réaction et
dont le prototype (ici $A \to B$ et deux espèces $A$ et
$B$) est décrit sur la figure \ref{recycle-fig} où nous avons rajouté
un recyclage et une dynamique de
transfert thermique représentée par un retard pur $\tau_{Q}$ constant.
Sous des hypothèses
classiques (agitation parfaite, volume constant, échange thermique
instantané, thermodynamique simplifiée) les bilans de
matière et d'énergie conduisent aux équations suivantes:
\begin{equation}\label{reac:eq}
\begin{cases}
\dot x(t) = D (x_{F} - x(t))+D_\bcle(x(t-\tau_\bcle) - x(t))\\
\hspace*{6.2cm}- r(x(t),T(t))\\
\dot T(t) = D (T_{F}-T(t))+D_\bcle(T(t-\tau_\bcle)-T(t))\\
\hspace*{3.6cm}+ \alpha ~r(x(t),T(t)) + Q (t-\tau_Q).
\end{cases}
\end{equation}
La concentration de l'espèce $A$ est notée $x$ et la température, $T$.
La commande $Q$ est directement proportionnelle à la puissance échangée
avec l'extérieur. Les paramètres suivants sont supposés constants:
$\alpha$, proportionnel à l'enthalpie de réaction; $D$, le taux de
dilution; $x_{F}$ et~$T_{F}$, les composition et température d'entrée.

Le recyclage est ici représenté par un retard pur $\tau_{\bcle}$
(absence de réaction et écoulement piston). Si
${\cal V}_\bcle$ est le volume du circuit de recycle et
$F_\bcle$ son débit, alors $\tau_\bcle={\cal V}_\bcle/F_\bcle$.

Ainsi le modèle du réacteur est un système non linéaire à
retards. Pour son intégration, il est nécessaire de fixer la
valeur initiale de~$x$ et~$T$ non seulement dans le réacteur mais aussi
dans le circuit de recyclage. Ainsi la condition initiale porte sur les
valeurs de $x$ et $T$ entre les instants $-\tau_\bcle$ et $0$: elle
est de dimension infinie.

Supposons maintenant que la loi horaire de $x(t)=y(t)$ soit donnée. Le bilan matière (la
première équation de (\ref{reac:eq}))
donne une équation implicite définissant la température en fonction de
$y(t)$, $\dot y(t)$ et
$y(t-\nobreak\tau_\bcle)$:
$$
T(t)=\Theta(y(t),\dot y(t),y(t-\tau_\bcle)).
$$
Le bilan énergie fournit le flux thermique
$$
Q(t-\tau_Q)= \dot T(t) - D (T_{F}-T(t)) - D_\bcle(T(t-\tau_\bcle)-T(t))
- \alpha ~r(y(t),T(t));
$$
d'où
\begin{multline*}
Q (t)= \dot T(t+\tau_Q) - D (T_{F}-T(t+\tau_Q))\\
- D_\bcle(T(t-\tau_\bcle+\tau_Q)-T(t+\tau_Q))
- \alpha ~r(y(t+\tau_Q),T(t+\tau_Q)).
\end{multline*}
Il s'en suit que $Q(t)$ dépend de $y(t+\tau_Q)$, $\dot y(t+\tau_Q)$,
$\ddot y(t+\tau_Q)$, \hbox{$y(t-\tau_\bcle+\tau_Q)$},
$y(t-2\tau_\bcle+\tau_Q)$ et $\dot y(t-\tau_\bcle+\tau_Q)$.
Formellement nous avons
\begin{multline*}
Q(t)= \Lambda[ y(t+\tau_Q),
\dot y(t+\tau_Q),
\ddot y(t+\tau_Q),
y(t-\tau_\bcle+\tau_Q),\\
y(t-2\tau_\bcle+\tau_Q),
\dot y(t-\tau_\bcle+\tau_Q) ].
\end{multline*}
Ainsi la valeur de $Q(t)$ sur l'intervalle $[0,t_{\ast}]$ dépend de la
valeur de~$y(t)$ sur l'intervalle
$[-2\tau_\bcle+\tau_Q,t_{\ast}+\tau_Q]$. Pour trouver une commande~$Q$ qui
connecte deux états stationnaires en temps fini, il suffit alors de
définir une fonction $t\mto y(t)$ qui ne varie que sur
$[0,t_{\ast}]$. Dans ce cas la transition vers le nouveau état stationnaire
commencera au temps $-\tau_Q$ pour la commande $Q$, au temps $0$ pour
$T$ et $x$. Le nouveau régime stationnaire sera alors atteint au temps
$t_{\ast}$ pour $x$, au temps $t_{\ast}+\tau_\bcle$ pour $T$ et au temps
$t_{\ast}+2\tau_\bcle-\tau_{Q}$ pour $Q$.

\subsection{Serpent non holonome}
L'exemple le plus connu de système plat est celui de la voiture avec plusieurs remorques (\cf chapi\-tre~\ref{cat:ch}), la sortie plate étant la position de la
dernière remorque.
\begin{figure}[htb]
\begin{center}
\includegraphics[scale=.6]{serpent}
\end{center}
\caption{Le serpent non holonome: approximation par un système continu de la voiture avec beaucoup de remorques}
\label{serpent:fig}
\end{figure}
Lorsque le nombre de remorques est important, il est
tentant, comme le montre le figure \ref{serpent:fig}, de considérer
l'approximation continue par le \og serpent non holonome\fg. Les remorques
sont repérées par une variable continue, $l\in[0,L]$ et un point dans
le plan $M(l,t)$. Les équations aux dérivées partielles vérifiées par
$M$ sont les suivantes
$$
\left\| \frac{\partial M}{\partial l} \right\| =1,
\quad \frac{\partial M}{\partial l} \wedge \frac{\partial M}{\partial t}
= 0.
$$
La première équation dit que $l\mto M(l,t)$ est une paramétrisation
en longueur d'arc du serpent (les attaches des remorques sont
inextensibles). La seconde équation traduit les conditions de roulement
sans glissement, les contraintes non holonomes: la vitesse de la
remorque~$l$ est parallèle la direction de la remorque $l$, i.e., la
tangent à la courbe $l\mto M(l,t)$. Il est évident que la
solution générale de ce système est très simple:
$$
M(l,t)= P(s(t)-l), \quad l\in[0,L]
$$
où $P$ correspond à la tête du serpent avec $s \mto P(s)$ une
paramétrisation en longueur d'arc de la courbe suivie par $P$. De la
même façon
$$
M(l,t)= Q(s(t)+l), \quad l\in[0,L]
$$
où $Q$ correspond à la queue du serpent, la sortie plate pour le
système avec un nombre fini de remorques. Le lien avec la dimension
finie est alors simplement le développement en série de $Q(s+l)$ en~$s$ via $Q(s+\nobreak l)=\sum_{i\geq 0} Q^{(i)}(s) l^{i}/i!$. La formule avec le
retard est cependant bien plus simple et pratique. Avec beaucoup de
remorques (typiquement plus de 5), il est économe de fonder la
planification de trajectoires sur $M(l,t)= Q(s(t)+l)$. Ainsi le modèle
réduit du système, i.e., le modèle qui conduit aux calculs les plus
simples, est ici de dimension infinie.

\subsection{Équation de Burger sans diffusion}
Nous considérons ici l'équation de Burger sans diffusion \cite{petit-et-al-cdc98}.
\begin{figure}[htb]
\begin{center}
\includegraphics[scale=.4]{burger}
\end{center}
\caption{Un écoulement obéissant à l'équation de Burger; transition d'une vitesse basse
$v\equiv1$ vers une vitesse haute $v\equiv4$ sans choc de compression. }
\label{burger-fig}
\end{figure}
Elle
représente un gaz de particules sans interaction et en mouvement
inertiel dans un tuyau de longueur $l$:
\begin{equation}
\begin{array}{c}
\ds \frac{\partial v}{\partial t} + v \frac{\partial v}{\partial x} = 0 \quad x\in[0,1]
\\
v(0,t)=u(t)
\end{array}. \label{burger-eq}
\end{equation}
Le champ $x\mto v(x,t)$ est la vitesse des particules en
$x\in [0,l]$. La commande est la vitesse d'entrée dans le tuyau
$u(t)>0$.

La vitesse en sortie est notée $y(t)=v(l,t)$. Comme l'accélération de
chaque particule est constant, sa vitesse reste constante tout au long
de son trajet dans le tuyau. La particule qui en $t$ sort, admet
comme vitesse $y(t)$. Au temps $t-l/y(t)$ cette même particule était
à l'entrée, c'est à dire en $x=0$. Sa vitesse était alors de $u(t-1/y(t))$.
D'où
$$
y(t) = u(t-1/y(t)).
$$
Symétriquement nous avons;
$$
u(t) = y(t+1/u(t)).
$$
Plus généralement, nous avons :
$$
y(t)=v(t-(1-x)/y(t),x)\quad x\in[0,1]
$$
et
$$
u(t)=v(t+x/u(t),x)\quad x\in[0,1].
$$

Formellement, nous avons une correspondance entre les trajectoires
$t\mto v(\cbbullet,t)$, solution de (\ref{burger-eq}),
et $t\mto y(t)$. Cette correspondance est
effective dès que $y>0$ est différentiable et
$t\mto t-(1-x)/y(t)$ croissante pour tout $x\in[0,l]$,
c'est à dire tel que pour tout temps $t$, $\dot y(t) > - y^{2}(t)$.

Cette condition correspond à des solutions régulières sans
choc \cite{chorin-marsden-book}. Il est alors facile de générer des
commandes $t\mto u(t)$ allant des bases vitesses
$v(\cbbullet,0)\equiv v_{1}>0$ vers les hautes vitesses
$v(\cbbullet,T)\equiv v_{2}> v_{1}$ en un temps $T$ pas trop
court en évitant la formation d'onde de choc (ce~problème est typique
des coups de bélier en hydraulique).

Notons que les calculs restent valables pour tout système de la forme
$$
\begin{array}{c}
v_{t} + \lambda(v) v_{x} = 0 \quad x\in[0,l]
\\
v(0,t)=u(t)
\end{array}
$$
car les relations entre $y(t)=v(l,t)$, $u$ et $v$ sont (voir, par exemple,
\cite[page 41]{CH-book-T2}):
$$
y(t)=u[t-1/\lambda(y(t))], \quad y(t)=v[t-(1-x)/\lambda(y(t)), x].
$$

\subsection{Mélange}
L'exemple de la figure \ref{chromatic:fig} est issu de \cite{petit-et-al-cdc98},
un système où le retard dépend de la commande.
\begin{figure}[htb]
\begin{center}
\includegraphics[scale=.37]{chromatic}
\end{center}
\caption{Mélange de couleurs; les délais variables non négligeables sont
dus aux rétentions $V_{\alpha}$ et $V_{\beta}$ dans les tuyaux.}
\label{chromatic:fig}
\end{figure}
À partir des trois bacs de
couleurs pures, il convient d'obtenir dans
le bac de sortie un mélange de couleur et quantité fixées à l'avance.
Du fait que les volumes des tuyaux sont importants des retards apparaissent.
On suppose ici les écoulements pistons dans les tuyaux $\alpha$ et
$\beta$. Connaissant les quantités de couleurs dans le bac de sortie,
$t\mto Y=(Y_{1},Y_{2},Y_{3})$, il est possible de calculer
explicitement les trois commandes $u=(u_{1},u_{2},u_{3})$ et les
profils de couleurs dans les tuyaux $\alpha$ et $\beta$ avec $Y$ et sa
dérivée en temps $\dot Y$. Les notations sont les suivantes (\cf figure \ref{chromatic:fig}).

\begin{itemize}

\item une couleur (ou composition) est un triplet $(c_{1},c_{2},c_{3})$
avec $\forall i=1,2,3$ $0\leq c_{i} \leq 1$ et $c_{1}+c_{2}+c_{3}=1$.

\item $b_{i}=(\delta_{ij})_{j=1,2,3}$ correspond aux couleurs
fondamentales des trois bacs d'entrée $i$, $i=1,2,3$.

\item $u=(u_{1},u_{2},u_{3})^T$: les débits de soutirage des trois bacs
d'entrée (la commande).

\item $\alpha=(\alpha_{1},\alpha_{2},0)^{T}$ :
couleur au n{\oe}ud mélangeur $\alpha$.

\item $\beta=(\beta_{1},\beta_{2},\beta_{3})^{T}$: couleur au n{\oe}ud
mélangeur
$\beta$.

\item $V$: volume dans le bac de sortie.

\item $X=(X_{1},X_{2},X_{3})$: couleur du bac de sortie.

\item $Y=(Y_{1},Y_{2},Y_{3})^{T}=(V.X_{1},V.X_{2},V.X_{3})^{T}$ les
rétentions dans le bac de sortie. $Y_{1},Y_{2},Y_{3}$ sont des fonctions croissantes du temps.

\item $V_{\alpha}$: volume du tuyau $\alpha$.

\item $V_{\beta}$: volume du tuyau $\beta$.
\end{itemize}

\enlargethispage{\baselineskip}%
Noter que
\begin{alignat}{3}
\alpha_{1}+\alpha_{2}=1,~~ &
\beta_{1}+\beta_{2}+\beta_{3}=1,~~ & X_{1}+X_{2}+X_{3}=1.
\notag
\end{alignat}

L'utilisation des équations de bilan couleur par couleur permet de construire $u$, $\alpha$ et $\beta$
à partir de $Y$. Supposons que $t\mto \sigma(t) \mto Y(\sigma(t))$ est donnée
avec $t\mto \sigma(t)$ une fonction croissante différentiable et
$\sigma\mto Y_{i}(\sigma)$ positive, différentiable et
strictement croissante pour
$i=1,2,3$. Les calculs se déroulent en partant de la sortie
pour aller vers l'entrée en remontant le sens des fluides. Les étapes sont les suivantes (où~$^{\prime}$
signifie $d/d\sigma$):
\begin{enumerate}

\item résoudre (avec, par exemple, une méthode de Newton) l'équation
scalaire
$$
\sum_{i=1}^{3} Y_{i}(\sigma_{\beta})
=\sum_{i=1}^{3} Y_{i}(\sigma(t)) + V_{\beta}
$$
avec $\sigma_{\beta}$ comme inconnue.

\item résoudre de même l'équation scalaire
$$
Y_{1}(\sigma_{\alpha}) + Y_{2}(\sigma_{\alpha})
= Y_{1}(\sigma_{\beta}) + Y_{2}(\sigma_{\beta}) + V_{\alpha}
$$
avec $\sigma_{\alpha}$ comme inconnue.

\item poser
$$
\alpha_{1}(t)=\frac{Y^{\prime}_{1}(\sigma_{\alpha})}{Y^{\prime}_{1}(\sigma_{\alpha})
+ Y^{\prime}_{2}(\sigma_{\alpha})}
,\quad \alpha_{2}(t)=1-\alpha_{1}(t).
$$
et
$$
\beta(t) = \left[ \frac{Y^{\prime}}{V^{\prime}}\right](s_{\beta})
$$
avec $V=Y_{1}+Y_{2}+Y_{3}$.

\item poser
$$
u_{i}(t) = \alpha_{i}(t)~ (Y^{\prime}_{1}(\sigma_{\beta}) +
Y_{2}^{\prime}(\sigma_{\beta}))~V^{\prime}(\sigma(t))~ \dot \sigma (t)
\quad i=1,2
$$
et
$$
u_{3}(t) = V^{\prime}(\sigma(t))~ \dot \sigma (t) - u_{1}(t) - u_{2}(t)
$$
\end{enumerate}

Supposons maintenant que nous ayons à produire une série de mélanges de
couleurs différentes définies par
$Q^{a}=(Q^{a}_{1},Q^{a}_{2},Q^{a}_{3})$, $Q^{b}=(Q^{b}_{1},Q^{b}_{2},Q^{b}_{3})$, $Q^{c}$, \ldots sans
possibilité de purger les tuyaux $\alpha$ et $\beta$ entre chaque
mélange. Il suffit de définir une courbe croissante pour chaque
composante de $Y$, $t\mto \sigma\mto Y_{i}$ comme sur la
figure \ref{batch:fig}. La loi horaire $t\mto \sigma(t)$ admet des
tangentes horizontales aux instants $t^{a}$, $t^{b}$, $t^{c}$, \ldots
pour assurer des transitions douces entre les divers mélanges.
\begin{figure}[htb]
\begin{center}
\includegraphics[scale=.3]{y}
\\
\includegraphics[scale=.3]{sigm}
\end{center}
\caption{Planification de la production en définissant une bonne trajectoire
pour la \og sortie plate\fg $t\mto Y(t)$. }
\label{batch:fig}
\end{figure}

\section{Diffusion}\label{diff:sec}
Dans la section précédente, nous avons vu comment utiliser les retards
(linéaire et non linéaires) pour résoudre la planification de
trajectoires de systèmes avec propagation à vitesse finie et sans
diffusion. Nous allons maintenant voir des calculs très différents
avec des séries faisant intervenir un nombre infini de dérivées de
$y$. La fonction $t\mto y(t)$ est alors $C^{\infty}$. Pour assurer
la convergence des séries, $y$ doit être d'un ordre Gevrey
fini \cite{ramis-smf}.

\subsection{Équation de la chaleur}

Soit l'équation de la chaleur linéaire \cite{laroche-et-al-ijrnc00},
\begin{align}
\label{hpde}\partial_{t} \theta(x,t) &= \partial^2_x\theta(x,t),\quad x\in[0,1]\\
\label{hbc0}\partial_{x} \theta (0,t) &=0\\
\label{hbc1}\theta (1,t) &= u(t),
\end{align}
avec $\theta(x,t)$ le profil de température et $u(t)$ la commande.
Nous allons voir que
$$y(t):=\theta(0,t)$$
est une \og sortie plate\fg. Comme pour la chaîne pesante nous allons commencer
par un calcul formel. Avec la variable de Laplace $s$, le système
s'écrit
$$s \hat\theta(x,s) = \hat \theta^{\prime\prime}(x,s) \quad\mbox{avec}\quad
\hat \theta^{\prime} (0,s)= 0,\quad\hat \theta(1,s)=\hat u(s)$$
(où $^{\prime}$ signifie $\partial_{x}$ et $\hat{~}$ transformée de
Laplace).
La solution est clairement
$\hat \theta(x,s)=\cosh(x\sqrt{s}) \hat u(s)/\cosh(\sqrt{s})$.
Comme $\hat\theta(0,s)=\hat u(s)/\cosh(\sqrt{s})$, nous avons
$$\hat u(s) = \cosh(\sqrt{s})~ \hat y(s) \quad\text{et}\quad \hat \theta(x,s)=
\cosh(x\sqrt{s})~ \hat y(s).$$
Puisque $\cosh{\sqrt{s}}=\sum_{i=0}^{+\infty} s^i/(2i)!$, nous avons
formellement
\begin{align}
\label{devu}\theta(x,t) &=\sum_{i=1}^{+\infty} x^{2i}~\frac{y^{(i)}(t)}{(2i)!}\\
\label{devt}u(t) &=\sum_{i=1}^{+\infty}\frac{y^{(i)}(t)}{(2i)!}.
\end{align}
Noter que ces calculs sont connus depuis longtemps
(voir \cite[pp.\,588 and 594]{valiron-tome2} ou
encore \cite{gevrey-1918}). Ils sont à l'origine des fonctions
Gevrey-2, fonctions $C^{\infty}$ telles que les séries
ci-dessus convergent.

Regardons un peu ces questions de convergence. D'un coté,
$t\mto y(t)$ doit être une fonction régulière telle que
$$\exists K,M>0,\quad\forall i\geq 0,\forall t\in[t_{0},t_{1}],
\quad\abs{y^{(i)}(t)}\leq M (Ki)^{2i}
$$
pour que les séries (\ref{devu})-(\ref{devt}) convergent. D'un autre
coté, $t\mto y(t)$ ne peut pas être analytique partout, si l'on
souhaite utiliser ces séries pour aller d'un profil vers une autre.
En effet si le système est à piloter d'un profil initial
$\theta(x,t_{0})=\alpha_{0}(x)$ en~$t_{0}$ au profil final $\theta(x,t_{1})=\alpha_{1}(x)$ en~$t_{1}$,
l'équation (\ref{hpde}) implique que $$\forall t\in[0,1],\forall i\geq0,\quad y^{(i)}(t)=
\partial^i_{t}\theta(0,t)=\partial^{2i}_{x}\theta(0,t),$$ et en
particulier
$$\forall i\geq0,\quad y^{(i)}(t_{0})=\partial^{2i}_{x}\alpha_{0}(0)\quad\text{et}\quad
y^{(i)}(t_{1})=\partial^{2i}_{x}\alpha_{1}(1).$$
Si, par exemple $\alpha_{0}(x)=c$ pour tout $x\in[0,1]$ (i.e., profil uniforme),
alors
$y(t_{0})=c$ et $y^{(i)}(t_{0})=0$ pour tout $i\geq1$, ce qui implique
$y(t)=c$ pour tout~$t$ si $f$ est analytique. Il est alors impossible
avec une telle classe de fonctions de générer des trajectoires autre
que $\theta\equiv c$.

Les fonctions $t\in[t_{0},t_{1}]\mto y(t)$ qui vérifient
$$
\exists K,M>0,\quad\forall i\geq 0,\quad \forall t\in[t_{0},t_{1}],\quad \abs{y^{(i)}(t)}
\leq M (Ki)^{\sigma i}
$$
sont connues sous le nom de fonction Gevrey
d'ordre~$\sigma$ \cite{ramis-asterisque78} (elles sont aussi reliées
aux fonctions de classe~$S$ \cite{guelfand-book3}). Les fonctions
analytiques sont les fonctions Gevrey d'ordre~$\leq 1$.
Pour tout $\sigma >1$, il existe une fonction d'ordre Gevrey $\sigma$ à support compact
sans être nulle. Citons, comme prototype, la
fonction $\Delta_{\sigma}$ en forme de cloche
de support $[0,1]$ et définie par
$$
\Delta_{\sigma}(t)= \exp\bigl(-1/(t(1-t))^{1/(\sigma-1)}\bigr)
\quad \mbox{pour } t\in[0,1].
$$
Enfin la classe des fonctions Gevrey $\sigma \geq 1$ est stable par
addition, multiplication, composition, dérivation et intégration.

Ainsi pour la planification de trajectoires de l'équation de la chaleur,
nous avons besoin de fonctions Gevrey d'ordre~$>1$, $\leq 2$ pour la convergence des séries et dont les séries de Taylor en $t_{0}$ et $t_{1}$ sont
imposées par les profils initiaux et finaux. Avec de telles fonctions nous pouvons
calculer avec (\ref{devu}), la commande en boucle ouverte qui assure
la transition d'un profil vers un autre.

Par exemple, la figure \ref{heatsimu:fig} correspond
au passage de ~$\theta=0$ en
$t=0$ à $\theta=1$ en $t=1$ avec la fonction
$$\RR\ni t \mto y(t):=
\begin{cases}
0& \text{si $t<0$}\\
1& \text{si $t>1$}\\
\ds\frac{\int_{0}^{t} \Delta_{2}(\tau) d\tau}
{\int_{0}^{1} \Delta_{2} }&
\text{si $t\in[0,1]$}.
\end{cases}$$
\begin{figure}[htb]
\begin{center}
\includegraphics[scale=.4]{heatsimu}
\end{center}
\protect\caption{Équation de la chaleur; profil de température entre deux états stationnaires $t\in[0,1]$}
\label{heatsimu:fig}
\end{figure}

Suite à une discussion avec Jean-Pierre Ramis en octobre 1997, des
essais numériques indiquent que les calculs peuvent également être
conduits avec des fonctions d'ordre Gevrey $>2$. Les séries divergent
alors mais une sommation aux plus petits termes
(voir \cite{ramis-smf}) donne des résultats numériques très
encourageants. Les commandes semblent plus douces qu'avec des séries
convergentes. Ces premiers calculs ont été confirmés par la suite dans~\cite{meurer-zeitz-zamm04,meurer-zeitz-iecr05} sur équations de convection/diffusion 1D avec des termes sources non-linéaires.

\Subsection{Réacteur chimique tubulaire (convection/diffu\-sion)}
Nous reprenons ici \cite{fliess-et-al-cdc98,rouchon-rudolph-hermes99}.
La seule différence vient du fait que le système est vectoriel et les
coefficients sont des fonctions de l'abscisse $z$. La convergence des
séries est encore assurée bien que moins évidente que pour l'équation
de la chaleur.
\begin{figure}[htb]
\begin{center}
\includegraphics[scale=.5]{tubrc}
\end{center}
\caption{Réacteur tubulaire à parois adiabatiques}
\label{tubrc-fig}
\end{figure}
Le réacteur tubulaire est uniquement piloté par les flux de matière et d'énergie à l'entrée.
Il est possible de paramétrer les trajectoires avec la concentration
et la température en sortie $x(l,t)$ et $T(l,t)$.

Un premier modèle, linéarisé autour d'un régime
stationnaire est de la forme (convection-diffusion):
\begin{multline}\label{aris:eq_edp_diff}
\frac{\partial }{\partial t}
\begin{bmatrix}x(z,t)\\T(z,t)\end{bmatrix}
= \Gamma\frac{\partial^2 }{\partial z^2}
\begin{bmatrix}x(z,t)\\T(z,t)\end{bmatrix}
-v \frac{\partial }{\partial z}
\begin{bmatrix}x(z,t)\\T(z,t)\end{bmatrix}
\\
+ \begin{bmatrix}-r_{x}& -r_{T}\\ \alpha r_{x}& \alpha r_{T}\end{bmatrix}
\begin{bmatrix}x(z,t)\\T(z,t)\end{bmatrix},
\end{multline}
pour $z\in[0,l]$, avec les conditions aux bords
\begin{align*}
v \begin{bmatrix}x(0,t)\\T(0,t)\end{bmatrix}-
\Gamma\frac{\partial }{\partial z}
\left.\begin{bmatrix}x\\T\end{bmatrix}\right|_{0,t}&=
\begin{bmatrix}u_x(t)\\u_T(t)\end{bmatrix}\\
\frac{\partial }{\partial z}
\left.\begin{bmatrix}x\\T\end{bmatrix}\right|_{l,t}&=0.
\end{align*}
Le système est piloté via les flux totaux $u_{x}$ et $u_{T}$ à
l'entrée du réacteur ($z=0$). Les flux de diffusion sont nuls à la
sortie du réacteur ($z=\nobreak l$). La vitesse de l'écoulement est $v$.
La matrice de diffusion est $\Gamma$;
$\alpha$ est proportionnel à l'enthalpie de réaction. Les dérivées
partielles de la cinétique $r(x,T)$ par rapport à $x$ et $T$ sont notées
$r_{x}$ et $r_{T}$. Il est possible de conduire les calculs avec
$\Gamma$, $\alpha$, $r_{x}$ et $r_{T}$ fonctions analytiques en $x$,
et $v$ Gevrey 2 en temps: les récurrences qui suivent sont alors plus
complexes mais les séries convergent sous les mêmes hypothèses (\cf \cite{laroche-et-al-ijrnc00}). Pour simplifier nous présentons les
calculs en supposant $v$, $\Gamma$, $\alpha$, $r_{x}$ et $r_{T}$
constants.

Les concentration et température, $x(l,t)$ et $T(l,t)$, à la sortie du
réacteur forment une sortie plate. Notons $y(t)$ le vecteur
$[x(l,t),T(l,t)]^{\prime}$.

En effet considérons un développement en série de puissances de $(z-l)$:\vspace*{-3pt}
$$
\begin{bmatrix}x\\T\end{bmatrix}(z,t) = \sum_{i=0}^\infty
\frac{(z-l)^i}{i !}~ {a}_i(t).
$$
où les ${a}_i$ sont des vecteurs de dimension 2. Ainsi\vspace*{-3pt}
$$
{a}_0 (t) = {y}(t),
$$
et la condition au bord $z=l$ donne\vspace*{-3pt}
$$
{a}_1 (t) = 0.
$$
L'équation~\eqref{aris:eq_edp_diff} impose après identification
terme à terme la récurrence suivante:\vspace*{-3pt}
\begin{equation}
\label{for_a}
{a}_{i+2} = {\Gamma^{-1}}\left[
\frac{d {a}_i}{dt} + v {a}_{i+1} + R {a}_{i}\right]
, \ \ i>0,
\end{equation}
avec\vspace*{-3pt}
$$
R = \begin{bmatrix}r_{x}&r_{T}\\
-\alpha r_{x} & - \alpha r_{T}
\end{bmatrix}.
$$
Ainsi $a_{i}$ s'exprime en fonction de $y$ et de ses dérivées jusqu'à
l'ordre\footnote{$E(i/2)$ est la partie entière de $i/2$.} $E(i/2)$.

Formellement la commande est obtenue en évaluant pour $z=0$ les séries
donnant $x$, $T$, $\sfrac{\partial x}{\partial z}$ et $\sfrac{\partial T}{\partial z}$:
\begin{align*}
\begin{bmatrix}x\\T\end{bmatrix}(0,t) &= \sum_{i=0}^\infty
\frac{(-l)^i}{i !}~ {a}_i(t)\\
\tag*{et}
\frac{\partial }{\partial z}\begin{bmatrix}x\\T\end{bmatrix}(0,t) &= \sum_{i=0}^\infty
\frac{(-l)^i}{i !}~ {a}_{i+1}(t).
\end{align*}
Ainsi
\begin{equation}\label{useriesina}
\begin{bmatrix}u_x(t)\\u_T(t)\end{bmatrix}
= \sum_{i=0}^\infty \frac{(-l)^i}{ i !} (v{a}_{i}- \Gamma a_{i+1}).
\end{equation}

Les profils $x$ et $T$ ainsi que le contrôle $u(t)$ dépendent de $y$ et
d'un nombre infini de ses dérivées en temps.

Les développements précédents sont formels. Ils doivent être
complétés par l'analyse de la convergence des séries. La classe des
fonctions~$y$ pour laquelle ces séries admettent un rayon de
convergence non nul est comme pour l'équation de la chaleur, celle des
fonctions d'ordre Gevrey $\leq 2 $.

\subsection{Poutre en flexion (Euler-Bernoulli) }
Nous reprenons \cite{aoustin-et-al-syroco,fliess-et-al-esaim96}.
Ici le coté calcul symbolique est particulièrement important.
\begin{figure}[htb]
\begin{center}
\includegraphics[scale=.8]{eb}
\end{center}
\caption{Une poutre flexible en rotation autour d'un axe}
\label{eb:fig}
\end{figure}

Nous ne développerons pas le cadre formel avec le calcul
opérationnel de Mikusi\'nski. Pour cela nous renvoyons à
\cite{fliess-et-al-esaim96}. Nous allons uniquement présenter les
calculs symboliques qui consistent comme toujours à remplacer la
dérivée en temps par la multiplication par~$s$. Le cadre formel donne
un sens précis aux calculs que nous allons faire.

Les équations de l'élasticité linéaire conduisent au modèle 1D suivant
$$
\begin{array}{l}
\partial_{tt} X = - \partial_{xxxx} X
\\[1.em]
X(0,t)=0, \quad \partial_x X(0,t)= \theta(t)
\\
\ddot \theta(t) = u(t) + k \partial_{xx} X(0,t)
\\[1.em]
\partial_{xx} X(1,t)=-\lambda \partial_{ttx} X(1,t)
\\
\partial_{xxx} X(1,t)=\mu \partial_{tt} X(1,t)
\end{array}
$$
où la commande est le couple du moteur $u$, $X(r,t)$ est le profile la
poutre, $k$, $\lambda$ et $\mu$ sont des paramètres positifs liés aux
inerties du moteur et de la masse en $r=1$ ($t$ et $r$ sont en
échelles réduites sans dimension).

Nous allons démontrer que formellement la solution générale de ce
système s'exprime à l'aide de $y$ une fonction scalaire arbitraire $C^{\infty}$
(d'ordre Gevrey $ \leq 2$ pour la convergence):\vspace*{-3pt}
\begin{multline}\label{ebgen:eq}
X(x,t) =
\sum_{n\geq 0}
\frac{ (-1)^{n}~y^{(2n)}(t) }{(4n)!} P_{n}(x)\\
+
\sum_{n\geq 0}
\frac{ (-1)^{n}~y^{(2n+2)}(t) }{(4n+4)!} Q_{n}(x)
\end{multline}
avec ($\imath = \sqrt{-1}$, $\Re$ et $\Im$ signifient partie réelle et
partie imaginaire, respectivement)\vspace*{-3pt}
$$
P_{n}(x)= \frac{x^{4n+1}}{2(4n+1)} + \frac{(\Im-\Re)(1-x+\imath)^{4n+1}}{2(4n+1)}
+ \mu \Im (1-x+\imath)^{4n}
$$
et\vspace*{-3pt}
\begin{multline*}
Q_{n}(x)\\[-3pt]
 =
\frac{\lambda\mu}{2}(4n+4)(4n+3)(4n+2)
\left((\Im-\Re)(1-x+\imath)^{4n+1} - x^{4n+1} \right)
\\
- \lambda (4n+4)(4n+3) \Re (1-x+\imath)^{4n+2}.
\end{multline*}
Noter que les autres quantités $\theta$ et $u$ se déduisent sans difficulté
de la série (\ref{ebgen:eq}). Il suffit de dériver terme à terme.

Nous allons uniquement montrer la formule pour $\lambda=\mu=0$ (pas de
masse en $r=1$, $M=J=0$). La méthode reste la même dans le cas
général. La question est alors la suivante: d'où vient la
série\vspace*{-3pt}
\begin{equation}\label{eb:eq}
X(x,t) = \sum_{n\geq 0}
\frac{ y^{(2n)}(t) (-1)^{n}}{(4n)!} \pi_{n}(x)
\end{equation}
avec\vspace*{-3pt}
$$
\pi_{n}(x) = \frac{x^{4n+1}}{2(4n+1)} +
\frac{(\Im-\Re)(1-x+\imath)^{4n+1}}{2(4n+1)}.
$$
Avec la variable de Laplace $s$, nous avons le système différentiel ordinaire\vspace*{-3pt}
$$
X^{(4)} = - s^{2} X
$$
où\vspace*{-3pt}
$$
X(0)=0,\quad X^{(2)}(1)=0, \quad X^{(3)}(1) = 0.
$$
Les dérivées portent sur l'espace et $s$ est ici un paramètre. La
solution générale de ce système dépend d'une constante arbitraire, i.e.,
d'une fonction arbitraire de $s$, puisque nous n'avons que $3$ conditions aux limites.
Avec les quatre solutions élémentaires
suivantes
\begin{align*}
C_{+}(x) & = (\cosh((1-x)\sqrt{s}\xi)+\cosh((1-x)\sqrt{s}/\xi))/2\\
C_{-}(x) & = (\cosh((1-x)\sqrt{s}\xi)-\cosh((1-x)\sqrt{s}/\xi))/(2\imath)\\
S_{+}(x) & = (\imath \sinh((1-x)\sqrt{s}\xi)+\sinh((1-x)\sqrt{s}/\xi))/(2\xi\sqrt{s})\\
S_{-}(x) & = \xi (\imath \sinh((1-x)\sqrt{s}\xi)-\sinh((1-x)\sqrt{s}/\xi))/(2\sqrt{s})
\end{align*}
où $\xi = \exp(\imath \pi/4)$, $X$ s'écrit
$$
X(x) = a C_{+}(x) + b C_{-}(x) + c S_{+}(x) + d S_{-}(x).
$$
Les trois conditions aux limites donnent trois équations reliant les
quantités $a$, $b$, $c$ et $d$:
\[
a C_{+}(0) + b C_{-}(0) + c S_{+}(0) + d S_{-}(0) =0,\quad
s b=0,\quad
s c= 0.
\]
Ainsi il nous reste une seule contrainte entre les deux quantités $a$
et~$d$
$$
a C_{+}(0) + d S_{-}(0) =0.
$$
Comme
$$
C_{+}(0) = \Re(\cosh(\xi\sqrt{s}), \quad S_{-}(0)= \Im(\xi \sinh(\xi\sqrt{s}/\sqrt{s})
$$
sont des fonctions entières de $s$ très similaires aux fonctions $\cosh(\sqrt{s})$
et $\sinh{\sqrt{s}}/\sqrt{s}$, nous pouvons leur associer des
opérateurs algébriquement indépendants qui commutent
$$
\delta_{+} = C_{+}(0),\quad \delta_{-}=S_{-}(0)
$$
(\cf le calcul opérationnel de Mikusi\'nski) (ce sont aussi
des ultra-distributions définies comme le dual des fonctions d'ordre Gevrey
$\leq 2$ à support compact, voir \cite{guelfand-book3})). Nous avons
donc un module engendré par les deux éléments $(a,d)$ vérifiant
l'équation
$\delta_{+} a + \delta_{-} d =0$.
C'est un $\RR[\delta_{+},\delta_{-}]$-module. Ce module n'est pas
libre. En revanche, il est $\delta_{+}$-libre \cite{mounier-thesis}. En
effet
$$
a = \delta_{-} y, \quad d = - \delta_{+} y
$$
avec $y = -\delta_{+}^{-1} d$.

La quantité $y$ sert ici de sortie
plate. En effet nous avons
$$
X(x)=(S_{-}(0) C_{+}(x) - S_{-}(x) C_{+}(0)) y.
$$
Des calculs un peu fastidieux utilisant la trigonométrie hyperbolique
conduisent alors à la formule
$$
X(x)= - \frac{1}{2}[ S_{-}(x) + \Im (S_{-}(1-x+\imath)) ] y.
$$
Un simple développement en série de la fonction entière $S_{-}$ donne la
formule (\ref{eb:eq}).

La quantité $y$ qui intervient ici n'a pas de sens physique direct (le
module n'était pas libre). Cependant, nous conjecturons que le $y$
choisi ici doit s'exprimer avec des intégrales en espace de $X$
(sorte de centre de flexion).

\subsection{Flexion non linéaire}

Sur un plan formel, il est possible
d'effectuer des calculs similaires au linéaire. Considérons la structure flexible
déjà étudiée dans \cite{laousy-et-al-ieee96}. Les équations sont les
suivantes
\begin{align*}
\rho\partial^2_tu(x,t) &= \rho\omega^2(t)u(x,t) - EI\partial^4_xu(x,t),
\quad x\in[0,1]\\
\dot\omega(t) &=
\frac{\Gamma_3(t)-2\omega(t)\bra{u,\partial_t u}(t)}{I_d+\bra{u,u}(t)}
\end{align*}
avec comme conditions aux limites
\begin{align*}
u(0,t)&=\partial_x u(0,t)=0, & \partial^2_x u(1,t)=\Gamma_1(t),
&&\partial^3_x u(1,t)=\Gamma_2(t).
\end{align*}
$\rho,EI,I_d$ sont des constantes physiques positives, $u(x,t)$ est la déformation de la poutre,
$\omega(t)$ la vitesse angulaire, et
\[
\bra{f,g}(t):=\int_{0}^1 \rho f(x,t)g(x,t)dx.
\]
Nous avons 3 commandes $\Gamma_1(t)$, $\Gamma_2(t)$,
$\Gamma_3(t)$.
Formellement
$$y(t):=\bigl(\partial^2_xu(0,t),~\partial^3_xu(0,t),\omega(t)\bigr)$$
est une \og sortie plate\fg. En effet, considérons le système sous la
forme de Cauchy-Kovalevsky suivante
$$EI\partial^4_xu(x,t)=\rho y_{3}^2(t)u(x,t)-\rho\partial^2_tu(x,t)
\quad\text{et}\quad
\left\{\begin{aligned}
u(0,t) &=0\\ \partial_xu(0,t) &=0\\
\partial^2_xu(0,t) &=y_{1}(t)\\ \partial^3_xu(0,t) &= y_{2}(t).
\end{aligned}\right.$$
Alors, si on pose $u(x,t)=\sum_{i=0}^{+\infty} a_i(t)\sfrac{x^i}{i!}$, les équations ci-dessus
donnent
\begin{align*}
a_0 & =0, &a_1 &= 0, &a_2 &=y_1, &a_3 &=y_2,
\end{align*}
et la récurrence
$\forall i\geq 0,~EI a_{i+4} = \rho y_3^2 a_i-\rho\ddot a_i$.
Ainsi pour $i\geq1$,
\begin{align*}
a_{4i} & =0
&a_{4i+2} &= \frac{\rho}{EI} (y_{3}^2 a_{4i-2}-\ddot a_{4i-2})\\
a_{4i+1} &= 0
&a_{4i+3} &= \frac{\rho}{EI} (y_{3}^2 a_{4i-1}-\ddot a_{4i-1}).
\end{align*}
Il s'agit d'une correspondance (formelle) entre les solutions du
système et les fonctions arbitraires $t\mto y(t)$: ce système est formellement plat.

Pour des calculs similaires avec des simulations numériques sur un modèle non-linéaire de poutre en flexion voir~\cite{ollivier-sedoglavic01}.

\part{Catalogue de systèmes plats} \label{cat:ch}
Nous donnons ici une liste non exhaustive de systèmes plats rencontrés
dans les applications. Nous renvoyons à \cite{levine-ecc99} pour des applications aux
systèmes mécaniques.

\section{Robots complètement commandés}

La dynamique d'un système mécanique holonome avec autant de commandes
que de degrés de liberté géométrique est
$$
\drvd{}{t}\left(\drvp{L}{\dot q} \right) - \drvp{L}{q} = M(q) u + D(q,\dot q),
$$
avec $q$ les variables de configuration, $L(q,\dot q) $ le lagrangien
(énergie cinétique --- énergie potentielle), $\dim(u)=\dim(q)$ et $M(q)$ inversible. Il admet
$q$ comme sortie plate --- même si $\frac{\partial^2 L}{\partial \dot
q^2}$ est singulière --- : en effet, $u$ s'exprime en fonction de $q,\dot
q, \ddot q$ par les formules du couple calculé
$$u = M(q)^{-1} \left(
\drvd{}{t}\left(\drvp{L}{\dot q} \right) - \drvp{L}{q}- D(q,\dot q) \right).$$

\section{Systèmes mécaniques non holonomes}\label{trailers-sec}

De nombreux robots mobiles avec contraintes de roulement sans
glissement (con\-train\-tes non holonomes), comme ceux considérés
dans \cite{CaAnBa96a,murray-sastry-ieee93}, sont plats.
Nous considérons ici les systèmes du type voiture avec
remorques \cite{rouchon-et-al-cdc93,fliess-et-al-ijc95,rouchon-et-al-ecc93,fliess-et-al-mtns96}.
L'invariance par le groupe des déplacements du plan et l'homogénéité de
degré $1$ par rapport à la commande $u$ rendent très naturelles les
dérivations avec des formules de Frénet.

\subsection{Voiture}
\begin{figure}[htb]
\begin{center}
\includegraphics[scale=.8]{car}
\end{center}
\caption{Cinématique d'une voiture}
\label{car:fig}
\end{figure}
Les conditions de roulement sans glissement sont les suivantes
$$
\left\{
\begin{array}{rcl}
\dot{x}&=& v \cos\theta
\\
\dot{y}&=& v\sin\theta
\\
\dot{\theta} &=& \ds{\frac{v}{l}} \tan\varphi
\end{array}
\right.
$$
avec $v$ la vitesse et $\varphi$ l'angle de braquage comme commande,
$l$ la distance entre les deux essieux.

La sortie plate est la position cartésienne de la voiture $P=(x,y)$:
$$
v=\pm \| \dot P \|
, \quad
\left(
\begin{array}{c}
\cos\theta \\ \sin \theta
\end{array}
\right) = \dot P /v,
, \quad
\tan\varphi= l \det(\ddot P \dot P) / v \sqrt{|v|}.
$$
Ces formules disent simplement que $\theta$ est l'angle de la
tangente à la courbe suivie par $P$ et $\tan\varphi/ l $ sa courbure.

\Subsection{Voiture avec \texorpdfstring{$n$}{n} remorques à attaches
centrées}
\begin{figure}[htb]
\begin{center}
\includegraphics[scale=.5]{carn}
\end{center}
\caption{Voiture avec $n$ remorques}
\label{carn:fig}
\end{figure}
Le système de la figure \ref{carn:fig} admet comme sortie plate les
coordonnées cartésiennes de la dernière remorque $P_{n}=(x_n,y_n)$ \cite{rouchon-et-al-ecc93}.
Pour montrer cela, il n'est pas utile d'écrire les équations d'état du
système avec comme commandes la vitesse de la voiture et son angle de
braquage. Il suffit de faire un dessin. Prenons le cas $n=1$ (figure \ref{car1proof:fig}), le cas
général s'en déduit aussitôt.
\begin{figure}[htb]
\begin{center}
\includegraphics[scale=.5]{car1proof}
\end{center}
\caption{Voiture avec une attache centrée, la sortie plate est $P_{1}$}
\label{car1proof:fig}
\end{figure}

Supposons donnée la courbe lisse ${\cal C}_{1}$ suivie par $P_{1}$.
Prenons $s_1\to P_1(s_1)$ un paramétrage naturel de ${\cal C}_{1}$.
Alors le roulement sans glissement de la remorque implique que
$ P_{0} = P_1 + d_1 \vec{\tau}_1 $ ($\vec\tau_{1}$, tangent unitaire à ${\cal C}_{1}$).
En dérivant par rapport à $s_1$, on obtient
$$
\ds \frac{d}{ds_1} P_{0} = \vec{\tau}_1 + d_1 \kappa_1 \vec{\nu}_1
$$
avec $\vec\nu_{1}$, normale unitaire à ${\cal C}_{1}$ et $\kappa_1$ sa
courbure. Mais $\ds \frac{d}{ds_1}P_{0}\neq 0$ est le vecteur tangent à la courbe ${\cal C}_{0}$
suivie par $P_{0}$. Donc
$$
\tan(\theta_{0}-\theta_{1}) = d_1 \kappa_1,\quad
\vec{\tau}_{0}= \ds \frac{1}{\sqrt{1+(d_1\kappa_1)^{2}}} ~(\vec{\tau}_1 + d_1
\kappa_1 {\vec{\nu}}_1) .
$$
En dérivant par rapport à $s_{0}$,
$ds_0 = \sqrt{1+(d_{1}\kappa_{1})^{2}}~ds_{1} $, on obtient l'angle de
braquage $\phi$:
$$
\tan \phi = d_0 \kappa_0
= d_0~~\ds \frac{1}{\sqrt{1+(d_1\kappa_{1})^{2}}}
\left(
\kappa_{1} + \frac{d_1}{{1+(d_1\kappa_{1})^{2}}} \frac{d\kappa_{1}}{ds_1}
\right) .
$$
La vitesse $v$ de la voiture est aussi donnée par
$$
v(t) = \sqrt{1+d_1^{2}\kappa_{1}^{2}(s_1(t))}~\dot{s}_1(t)
$$
pour toute loi horaire $C^{1}$, $t\to s_1(t)$. Noter que dans ces calculs, $\phi$ et
$\theta_0-\theta_1$ restent toujours entre $-\pi/2$ et
$\pi/2$.

\subsection{Voiture avec une remorque à attache déportée}
\begin{figure}[htb]
\begin{center}
\includegraphics[scale=1]{gencar1}
\end{center}
\caption{Voiture avec une remorque à attache décentrée}
\label{gencar1:fig}
\end{figure}
Ici la difficulté vient du fait que l'attache le longueur $b$ de la remorque n'est
plus fixée sur l'essieu arrière de la voiture mais à une certaine distance
$a$ \cite{rouchon-et-al-cdc93}. Nous supposons l'attache en arrière de l'essieu. Il est possible
de faire les mêmes calculs avec une attache devant comme sur certains
poids lourds. Les conditions de roulement sans glissement donnent la
forme d'état suivante
\begin{equation}
\left\{
\begin{aligned}
\dot{x}&= \cos\alpha~v
\\
\dot{y}&= \sin\alpha~v
\\
\dot{\alpha} &= \ds{\frac{1}{l}} \tan\varphi ~v
\\
\dot{\beta} &= \ds \frac{1}{b}
\Bigl(
\ds \frac{a}{l}\tan \varphi \cos(\alpha-\beta) - \sin(\alpha-\beta)
\Bigr)\,v.
\end{aligned}
\right.
\label{gencar-eq}
\end{equation}
Les notations sont sur la figure \ref{gencar1:fig}. Les commandes sont
la vitesse $v$ de la voiture et l'angle de
braquage $\varphi$.

Le système (\ref{gencar-eq}) est plat avec comme sortie plate
\begin{equation}
\begin{array}{l}
y_1= x + b\cos\beta + L(\alpha-\beta)
\ds{\frac{b\sin\beta-a\sin\alpha}{\sqrt{a^2+b^2-2ab\cos(\alpha-\beta)}}}
\\[1.em]
y_2=y + b\sin\beta + L(\alpha-\beta)
\ds{\frac{a\cos\alpha-b\cos\beta}{\sqrt{a^2+b^2-2ab\cos(\alpha-\beta)}}}
\end{array}
\label{P-eq}
\end{equation}
où
\begin{equation}
L(\alpha-\beta)= a b ~\int_{\pi}^{2\pi+\alpha-\beta}
\ds{\frac{\cos\sigma}{\sqrt{a^2+b^2-2ab\cos\sigma}}}~d\sigma.
\label{L-eq}
\end{equation}

Noter que $(y_1,y_2)$ sont les coordonnées cartésiennes du point $P$
de la figure \ref{gencar1:fig}.

Pour trouver ces sorties plates, il convient d'utiliser la condition
nécessaire et suffisante (théorème \ref{codim2}) pour les systèmes sans dérive à deux
commandes. Les calculs de $y_1$ et $y_2$ se simplifient en utilisant l'invariance
du système par rapport au groupe des déplacements du plan.

\begin{figure}[htb]
\begin{center}
\includegraphics[scale=1]{gencar2}
\end{center}
\caption{Construction géométrique avec les formules de Frénet}
\label{gencar2:fig}
\end{figure}
Comme le montre la figure \ref{gencar2:fig}, le
vecteur tangent $\vec \tau$ à la courbe suivie par $P$ est parallèle à la droite $AB$.
Sa courbure $\kappa$ est une fonction de
$\delta=\alpha-\beta$:
\begin{equation}
\kappa= K(\delta)
=\frac{\sin\delta}{\cos\delta~\sqrt{a^2+b^2-2ab\cos\delta}-L(\delta)~\sin\delta}
\label{K-eq}
\end{equation}
Noter que l'invariance par rapport au groupe des déplacements,
implique que $\kappa$ soit une fonction de $\alpha-\beta$ uniquement.
La fonction $K$ est une bijection croissante de $]\gamma,2\pi-\gamma[$ vers
$\RR$. La constante $\gamma\in[0,\pi/2]$ est définie par l'équation
implicite suivante
$$
\cos\gamma~\sqrt{a^2+b^2-2ab\cos\gamma}
= a b\sin\gamma
~\int_{\pi}^{\gamma}\ds{\frac{\cos\sigma}{\sqrt{a^2+b^2-2ab\cos\sigma}}}
~d\sigma.
$$
Pour $a=0$, $\gamma=\pi/2$ et $P$ coïncide avec $B$.

Des calculs simples montrent que
$D$ est donné par $D=P-L(\delta)\vec \nu$ avec $\vec \nu$ le vecteur normal
unitaire. Ainsi
$(x,y,\alpha,\beta)$ est une fonction de
$(P,\vec \tau,\kappa)$. L'angle de braquage $\varphi$ dépend donc de $\kappa$
et $d\kappa/ds$ où $s$ est la longueur d'arc de la courbe suivie par $P$. La vitesse
$v$ de la voiture s'exprime en fonction de $\kappa$, $d\kappa/ds$ et
$\dot s$.

Une application du théorème \ref{codim2} montre que la voiture avec
plus de deux remorques à attaches décentrées n'est pas un système plat.

\subsection{Systèmes mécaniques non holonomes complètement commandés}

Commençons par l'exemple d'une pièce de monnaie qui roule sans glisser
sur un plan.
\begin{align*}
\ddot x &= \lambda \sin \varphi + u_1 \cos \varphi\\
\ddot y &= -\lambda \cos \varphi + u_1 \sin \varphi\\
\ddot \varphi &= u_2\\
\dot x \sin\varphi&= \dot y \cos \varphi
\end{align*}
où $x,y,\varphi$ sont les variables de configuration, $\lambda$ est le multiplicateur de Lagrange
associé à la contrainte $\dot x \sin\varphi= \dot y \cos \varphi$, $u_1$ et $u_2$ sont les deux commandes.
Une sortie plate est $(x,y)$: avec une paramétrisation en longueur d'arc $s$ de la courbe
$t\mto (x(t),y(t))$, nous avons
$$\cos \varphi= \drvd{x}{s}, \quad \sin \varphi = \drvd{y}{s}, \quad
u_1 = \dot s, \quad u_2 = \kappa(s)~ \ddot s + \drvd{\kappa}{s}~ \dot s^2,$$
où $\kappa$ est la courbure. Ces formules restent valables même si \hbox{$u_{1}\!=\!u_{2}\!=\!0$}.

Cet exemple est représentatif d'un système mécanique soumis à~$m$~contraintes non holonomes et avec $n-m$
commandes (des forces) indépendantes des efforts de liaisons ($n$ est
la dimension de la variété de configuration). Ces systèmes sont, par
définition, les systèmes non holonomes complètement commandés
(voir \cite{CaAnBa96a} pour d'autres exemples). Il est alors facile de
montrer qu'un système non holonome complètement commandé et dont les
liaisons non holonomes sont plates est automatiquement plat, les
sorties plates étant celles de ses liaisons non holonomes.

Ainsi, à cause du théorème \ref{dim2}, les systèmes mécaniques complètement commandés et soumis à
deux contraintes non holonomes sont automatiquement plats. Les liaisons non holonomes
de la pièce de monnaie (p.\,4), de la sphère qui roule (p.\,96) et de la
bicyclette (p.\,330) décrites dans le traité classique
russe \cite{neimark-fufaev-book} sont plates. Les systèmes non
holonomes complètement commandés qui s'en déduisent restent donc
plats.

\section{Systèmes pendulaires}

Les exemples qui suivent sont des systèmes mécaniques holonomes
sous-actionnés, c'est-à-dire avec moins de commandes que de degrés de
liberté géométrique.

\subsection{Pendule inversé sur un rail}
Un pendule inversé sur un rail admet la dynamique suivante
(approximation des petits angles)
$$
\frac{d^{2}}{dt^{2}}(D+l\theta) = g \theta, \quad
M \frac{d^{2}}{dt^{2}} D = - m g \theta + {\cal F}
$$
où la commande est la force ${\cal F}$ appliquée au chariot et $l$ est
la distance du centre d'oscillation à l'axe de rotation du pendule.
\begin{figure}[htb]
\begin{center}
\includegraphics[scale=.4]{pendinv}
\end{center}
\caption{Pendule inversé sur un rail}
\label{pendinv:fig}
\end{figure}
Il est clair que la sortie plate est $y=D+l\theta$. En effet
$$
\theta = \ddot y /g, \quad D = y - l \ddot y /g .
$$
Un bouclage grand gain sur le chariot ($u$ est la consigne de
position du chariot)
$$
{\cal F} = - M k_{1}\dot D - M k_{2} (D-u)
$$
avec $k_{1} \approx 10/\tau$, $k_{2}\approx 10/\tau^{2}$ où
$\tau=\sqrt{l/g}$ est le temps caractéristique du pendule, permet
d'accélérer par la commande le porteur. On obtient ainsi une commande
hiérarchisée avec un asservissement rapide en position du porteur et
une stabilisation lente du pendule à partir du modèle lent
$$
\frac{d^{2}}{dt^{2}}(y) = g(y - u) /l= \frac{y-u}{\tau^{2}}.
$$
Le simple bouclage
$$
u = -y - \tau^{2} \ddot y_{r}(t) + \tau (\dot y - \dot y_{r}(t)) +
(y-y_{r}(t))
$$
assurent le suivi d'une trajectoire de référence $t\mto y_{r}(t)$
pour l'abscisse du centre d'oscillation du pendule.

Sans l'approximation des petits angles, le système n'est plus plat.

\Subsection{Le double pendule du musée de la Villette}
Cet exemple fait partie du parc des expositions permanentes du
musée des sciences et de l'industrie de la Villette, section
mathématiques.
\begin{figure}[htb]
\begin{center}
\includegraphics[scale=.4]{dblpnd}
\end{center}
\caption{Le double pendule du musée de la Villette}
\label{dblpnd:fig}
\end{figure}
Il s'agit de deux barres homogènes de longueur $l$ l'une au dessus de
l'autre, le tout sur un chariot linéaire actionné par un moteur. Avec l'abscisse du chariot $D$
comme commande (commande grand gain du porteur) les équations de la
dynamiques, après approximation des petits angles, sont
(après quelques transformations qui font intervenir $y$ \ldots)
\begin{align*}
\theta_{1} & = \frac{y^{(2)}}{g} - \frac{l y^{(4)}}{3 g^{2}}\\
\theta_{2} & = \frac{y^{(2)}}{g} + \frac{l y^{(4)}}{9 g^{2}}\\
D & = y - \frac{35}{36}l \theta_{1} - \frac{7}{12} l\theta_{2} \\
& = y - \frac{14 l y^{(2)}}{9 g} + \frac{7 l^{2} y^{(4)}}{27 g^{2}}.
\end{align*}

Comme pour le simple pendule, sans l'approximation des petits angles,
ce système n'est pas plat.

\subsection{Une infinité de pendules inversés}

Il s'agit du modèle de la chaîne pesante de la figure \ref{chaine-fig} avec la gravité dans
l'autre sens. Les équations sont
\begin{equation}\label{invcable:eq}
\frac{\partial^{2} X}{\partial t^{2}}
= - \frac{\partial }{\partial z}\left(
g z \frac{\partial X}{\partial z}
\right)
\quad \mbox{pour } z\in[0,L]
, \quad X(L,t)=D(t)
\end{equation}
avec la commande au bord $D(t)$, le déplacement du chariot qui se
trouve maintenant en bas. La sortie plate est alors en haut et la
formule (\ref{chaine:eq}) s'écrit avec un \og temps complexe\fg:
$$
X(z,t) = \frac{1}{2 \pi} \int_{0}^{\pi}
\left(
y(t+2\imath\sqrt{z/g}\sin\xi) + y(t-2\imath\sqrt{z/g}\sin\xi)
\right)~d\xi
$$
avec $\imath=\sqrt{-1}$.

Cette relation signifie que, pour tout fonction holomorphe $\CC\ni \zeta \mto
y(\zeta)$ dont la restriction à l'axe réel est réel, le champ de
déplacement $X(z,t)$ calculé par l'intégrale ci-dessus est réel et
vérifie identiquement
$$
\frac{\partial^{2} X}{\partial t^{2}}
= - \frac{\partial }{\partial z}\left(
g z \frac{\partial X}{\partial z}
\right).
$$
Avec cette formule nous avons la possibilité d'associer à toute
fonction holomorphe sur une bande horizontale centrée autour de l'axe des réels et de
demie hauteur $2\sqrt{L/g}$ une trajectoire du système. Cette ensemble
de trajectoires est suffisamment riche pour obtenir d'une façon
approchée des trajectoires allant d'un état d'équilibre
vers un autre. Il suffit par exemple de définir $y$ par convolution
avec un gaussienne ($\sigma>0$ donné)
$$
y(\mu+ \imath\nu) = \int_{-\infty}^{+\infty} \exp(-(\mu - \tau +
\imath \nu)^{2}/\sigma^{2}) ~f(\tau) ~d\tau
$$
avec $\RR\ni\tau \mto f(\tau)\in \RR$ mesurable et bornée
et de tronquer l'intégrale. Avec une telle construction il est possible
de montrer des propriétés de commandabilité approchée pour ce système.

Il est bien connu que le
problème de Cauchy associé à (\ref{invcable:eq}), une équation elliptique, n'est
pas bien posé au sens de Hadamard.
Physiquement, c'est tout à fait compréhensible. Nous avons vu que la
constante de temps d'instabilité d'un pendule inversé de longueur
$l$ est $\sqrt{l/g}$: un pendule de longueur infiniment petite
est instable d'une façon infiniment rapide. Malgré cela, nous pouvons donner
un sens à la planification de trajectoires, bien que le système soit
un système mal posé, en construisant explicitement des familles de trajectoires
régulières allant d'un état vers un autre (d'une façon approchée,
cependant).

\subsection{Grues et ponts roulants}
Nous reprenons une exemple traité dans \cite{fliess-et-al-ijc95}.
Les équations de Newton d'une masse $m$ déplacée par pont roulant sont les
suivantes (modèle dans un plan vertical):
\begin{align*}
m \ddot{x}&= -T \sin\theta &x &= R \sin\theta + D\\
m \ddot{z}&= -T \cos\theta + mg &z &= R \cos\theta,
\end{align*}
avec $x,z,\theta$ les variables de configuration, $T$ la tension du câble d'inertie négligeable et inextensible.
Les deux commandes sont~$D$, la position du chariot et~$R$ la longueur du câble.
Ce système est plat avec la position $(x,z)$ de la charge comme sortie plate.
Le rajout d'une seconde dimension horizontale ne change rien:
la sortie plate reste la position de la charge. D'autres types de
grues ou de ponts roulants correspondant à diverses
géométries du système de levage restent également plats,
la position de la masse transportée étant la sortie plate
(\cf \cite{levine-et-al-ecc97,kiss-levine-99})
pour les grues de débarquement de la marine américaine)

\subsection{Le robot \texorpdfstring{$2k\pi$}{2kpi}}
\begin{figure}[htb]
\begin{center}
\includegraphics[scale=.6]{robot}
\end{center}
\caption{Le robot $2k\pi$.}
\label{robot:fig}
\end{figure}

C'est un robot 3 axes portant un pendule avec 2 axes,
\cf figure \ref{robot:fig}. L'objectif est de retourner le pendule et
le maintenir en position instable. Parmi les 5 degrés de liberté,
seuls 3 sont directement commandés par des moteurs
(les angles $\theta_1,\theta_2,\theta_3$). En revanche les deux
degrés de liberté du pendule ne sont pas directement actionnés.

La position $P=(x,y,z)$ du centre d'oscillation du pendule
(\cf les travaux de Huygens sur les horloges à pendule)
est la sortie plate du système.

En effet, les relations entre $P$ et $S=(a,b,c)$, le point de
suspension du pendule, sont les suivantes
\begin{align*}
(x-a)(\ddot z + g) &= \ddot x (z-c)\\
(y-b)(\ddot z + g) &= \ddot y (z-c)\\
(x-a)^2+(y-b)^2+(z-c)^2&=l^2,
\end{align*}
où $l$ est la distance entre $S$ et $P$. Ces relations viennent
simplement des équations de Newton du pendule ponctuel isochrone
de même masse $m$ ($\vec T$ est la tension dans la tige)
$$
m \ddot P = m \vec g + \vec T
$$
de la condition de rotation parfaite sans frottement
$$
\vec T ~//~\overrightarrow{PS}
$$
et de la contrainte de rigidité
$$
\| PS \| = l^{2}.
$$
Géométriquement $S$ est à l'intersection de la sphère de centre $P$ de
rayon $l$ avec la droite passant par $P$ et parallèle à $\ddot P -
\vec g$.

Comme la géométrie du robot implique $(a,b,c)={\cal
T}(\theta_1,\theta_2,\theta_3)$ (conversion des coordonnées angulaires
en coordonnées cartésiennes), les couples à appliquer aux moteurs
s'obtiennent en inversant cette relation algébrique et en dérivant 2
fois de plus. En tout, $P$ apparaît avec ses dérivées jusqu'à l'ordre~$4$. Pour plus d'information sur la commande du robot
voir \cite{lenoir-et-al-cdc98}.

\subsection{Solide plan piloté par deux forces} \label{dfan.sec}
\begin{figure}[htb]
\begin{center}
\includegraphics[scale=1]{rigbod}
\end{center}
\caption{Un corps solide 2D piloté par deux forces de direction fixes, $\vec d_{1}$ et $\vec
d_{2}$, par rapport au solide}
\label{rigbod:fig}
\end{figure}
Soit un corps rigide dans un plan vertical soumis à la gravité et
commandé par deux forces $\vec F_{1}$ et $\vec F_{2}$, de directions,
$\vec e_{1}$ et $\vec
e_{2}$, fixes par rapport au solide
(voir figure \ref{rigbod:fig}). Ces forces sont appliquées à des points
$S_{1}$ et $S_{2}$ fixes par rapport au solide. Nous supposons que
nous avons effectivement deux forces indépendantes, i.e., lorsque
$S_{1}=S_{2}$ alors les directions ne sont pas co-linéaires. Enfin le
cas où $S_{1}=S_{2}=G$ est exclu car alors le système n'est plus
commandable, le moment cinétique étant constant.

Soit $G$ le centre de gravité et $\theta$ l'orientation du solide. On
note $\vec k$ le vecteur orthogonal au plan. Notons $m$ la masse, $J$
son inertie par rapport à l'axe parallèle à $\vec k$ passant par $G$ et
$\vec g$ le champ de gravité.

Les équations de la dynamique sont alors (conservation de la quantité
de mouvement et du moment cinétique)
\begin{align*}
m \ddot G &=\vec F_1 + \vec F_2 + m \vec g \\
J \ddot \theta \vec k &= \overrightarrow{GS_{1}}\wedge \vec F_{1} +
\overrightarrow{GS_{2}}\wedge \vec F_{2}.
\end{align*}
Comme le montre la figure \ref{rigbod:fig}, la sortie plate correspond
à $P$ le centre d'oscillation de Huygens lorsque l'axe de rotation est au
point d'intersection des deux droites qui supportent les forces
$\vec F_{1}$ et $\vec F_{2}$, le centre de poussée $Q$ sur la
figure \ref{rigbod:fig}:
$$
P = Q + \sqrt{1+ \frac{J}{m a^{2}}} \overrightarrow{Q G}.
$$
avec $a=QG$. Noter que lorsque les deux droites sont parallèles $Q$ est rejeté
à l'infini et $P$ coïncide avec $G$. Comme pour le pendule du robot $2 k
\pi$, Le point $P$ est le seul
tel que $\ddot P - \vec g$ soit co-linéaire à la direction $PG$,
i.e, à l'orientation $\theta$. Avec cette propriété, il est alors
facile de montrer que le système est plat. Certains les exemples traités
dans \cite{fliess-et-al-ijc95,niewstadt-murray-cdc95,murray-et-al-imece95,martin-et-al-auto95}.
sont de ce type.

Par exemple l'avion à décollage vertical de \cite{martin-et-al-auto95}
d'équation
\begin{align*}
\ddot{x} &= -u_{1}\sin\theta + \varepsilon u_{2}\cos\theta\\
\ddot{z} &= u_{1}\cos\theta + \varepsilon u_{2}\sin\theta -1\\
\ddot\theta &= u_{2}.
\end{align*}
admet comme sortie plate
$y=(x-\varepsilon\sin\theta,z+\varepsilon\cos\theta)$ où $\varepsilon \approx 0$
vient du fait que les poussées des réacteurs ne sont pas
parfaitement parallèles.

Des prolongement sont possibles pour des corps solides dans l'espace à
trois dimension mais avec des symétries. Le pendule de $2
k\pi$ en est un exemple avec une symétrie de révolution. Une autre
exemple fort proche avec les mêmes symétries est une fusée
ou un missile avec poussée
vectorielle. Les équations sont
\begin{align*}
m \ddot G & = \vec F + m \vec g \\
J \frac{d}{dt} (\vec b \wedge \dot{\vec b}) &= - \overrightarrow{SG} \wedge
\vec F
\end{align*}
où $\vec b = \overrightarrow{SG} / SG $ (les notations sont sur la
figure \ref{fusee:fig}). La sortie plate est alors
$$
P = S + \sqrt{SG^{2} + J/m} ~\vec b.
$$
En effet $\ddot P - \vec g$ est co-linéaire à la direction $\vec b$
de la fusée.
\begin{figure}[htb]
\begin{center}
\includegraphics[scale=.8]{fusee}
\end{center}
\caption{La fusée et sa sortie plate $P$}
\label{fusee:fig}
\end{figure}

Notons enfin que la généralisation à la dimension 3 d'espace (sans
symétrie) reste un problème ouvert. Nous ne savons pas si un corps
solide dans l'espace à trois dimensions contrôlé par l'action de trois
forces indépendantes, de directions et de points d'application fixes par
rapport au solide, est un système plat.

\subsection{Le câble aéro-tracté}
Nous reprenons ici \cite{murray-ifac96} pour ce qui du modèle de
dimension finie.
\begin{figure}[htb]
\begin{center}
\includegraphics[scale=.7]{towcab}
\end{center}
\par\vspace*{-5mm}
\caption{Le câble aéro-tracté et son approximation}
\label{towcab:fig}
\end{figure}
Le système illustré sur la figure \ref{towcab:fig} est
composé d'un avion en vol circulaire qui tracte un long câble auquel
est attaché une charge pesante. Sous certaines conditions, le câble
atteint un régime stabilisé où sa forme ne variant plus admet également
un mouvement circulaire. Avec des paramètres correctement choisis, il
est possible que le rayon de la trajectoire de la charge qui se trouve
bien en dessous de celle de l'avion soit d'un diamètre nettement
inférieur. Un tel système existe en vraie grandeur. Il a été utilisé
par l'armée américaine en Amérique du sud pour des parachutages précis
à basse altitude (sans utiliser explicitement le fait que le système soit plat).

Le câble peut être vu comme une succession de petits pendules
ponctuels
connectés les uns aux autres par leur centres de masse. Les forces agissant sur une petit pendule
(tension, traînée aérodynamique, poids,...) sont alors concentrées
au centre de masse (confondu ici avec son centre d'oscillation).
L'avion joue ici le rôle commande comme $S$ joue le rôle de commande
pour le contrôle du pendule porté par le robot $2k\pi$.

L'objectif est de générer des trajectoires de transition entre un
équilibre relatif et un autre. Ce système est plat avec comme sortie plate
la position de la charge. Nous renvoyons à \cite{murray-ifac96} pour
des calculs plus détaillés et d'autres références sur le sujet.

Il est cependant possible formellement de considérer le modèle continu
du câble. Pour des raisons de simplicité nous ne considérons que le
modèle parfait sans frottement avec uniquement la dynamique inertielle
et la gravité $\vec g$. Le câble est décrit à l'instant $t$ par une courbe
$[0,L]\ni s \mto M(s,t)\in \RR^{3}$ paramétrée en longueur d'arc. En notant,
$T(s,t)\in\RR$ la tension en $s$, $\rho$ sa densité linéaire et $m$ la masse de la charge,
les équations de Newton sont:\vspace*{-3pt}\enlargethispage{\baselineskip}
\begin{align*}
\rho \frac{\partial^{2} M}{\partial t^{2} }
&= \frac{\partial }{\partial s}
\Bigl(T
\frac{\partial M}{\partial s}
\Bigr)
+ \rho \vec g
&
\Bigl\| \frac{\partial M}{\partial s}\Bigr\| & = 1
\\
M(L,t)& =u(t)
&
T(0,t) \frac{\partial M}{\partial s}(0,t) &= m \frac{\partial^{2} M}{\partial t^{2}
}(0,t) - m \vec g.
\end{align*}
L'avion est en $s=L$. Vue du câble, sa trajectoire $t\mto u(t)\in \RR^{3}$ est ponctuelle
et considérée ici comme une entrée. La charge ponctuelle de masse $m$ est en $s=0$.
Remarquons que ce système d'équations aux dérivées partielles n'est
pas sous forme involutive: $T$ est défini implicitement par la
contrainte de non extensibilité.

Cependant, en prenant $N(s,t)=\int_{0}^{s} M(\sigma,t)~d\sigma$ au
lieu de $M(s,t)$ comme variables (transformation de Bäcklund) on a
avec les inconnues $N$ et $T$ le système suivant:\vspace*{-3pt}
\begin{align*}
\rho \frac{\partial^{2} N}{\partial t^{2} }
&=T(s,t) \frac{\partial^{2} N}{\partial s^{2}} (s,t)
- T(0,t) \frac{\partial^{2} N}{\partial s^{2}} (0,t)
+ \rho s \vec g,
\\
\Bigl\| \frac{\partial^{2} N}{\partial s^{2}}\Bigr\| & = 1,
\qquad
\frac{\partial N}{\partial s}(L,t) =u(t),
\\
T(0,t) \frac{\partial^{2} N}{\partial s^{2}}(0,t) &=
m \frac{\partial^{3} N}{\partial t^{2}\partial s}(0,t) - m \vec g,
\qquad
N(0,t) = 0.
\end{align*}
Supposons que l'on fixe la trajectoire
de la charge $t\mto y(t)= \frac{\partial N}{\partial s}(0,t)$ au
lieu de la trajectoire de l'avion. Alors on peut facilement calculer la
tension par (nous prenons la valeur positive pour $T$)
$$
T(s,t) =
\Bigl\| \rho \frac{\partial^{2} N}{\partial t^{2}}(s,t) -
(\rho s+m)\vec g + m \ddot y(t)\Bigr\|.
$$
Ainsi on obtient une forme standard de
Cauchy-Kovalevsky:
\begin{align*}
\frac{\partial^{2} N}{\partial s^{2}} (s,t) &= \frac{1}{T(s,t)}
\Bigl(\rho \frac{\partial^{2} N}{\partial t^{2}}(s,t)
- (\rho s+m)\vec g + m \ddot y(t)\Bigr)
\\
N(0,t) &= 0
\\
\frac{\partial N}{\partial s} (0,t) &= y(t).
\end{align*}
Pour $t\mto y(t)$ analytique, le système ci-dessus admet une
solution analytique en $s$ autour de $0$ dès que $T(0,t)\neq 0$, i.e.,
$\ddot y \neq \vec g$. Ce développement en série est très similaire
aux calculs effectués dans \cite{murray-ifac96} sur un modèle
discrétisé avec beaucoup de petits pendules ponctuels. Il n'est pas
sûr, compte tenu des calculs sur la chaîne pesante de la
figure \ref{chaine-fig}, qu'un tel développement soit
utilisable en pratique sauf s'il est complété par des techniques de séries
divergentes \cite{ramis-smf}.

\section{Divers systèmes mécaniques}

\subsection{Avion classique}

Les modèles représentant des avions con\-ven\-tion\-nels sont plats dès que
l'on néglige certains effets aérodyna\-mi\-ques de faibles amplitudes. La
sortie plate est le centre de gravité et l'angle de dérapage. Nous
renvoyons à \cite{martin-thesis} pour une étude détaillée.

\enlargethispage{\baselineskip}%
\subsection{Tige de forage}
La dynamique en torsion d'une tige de forage de quelques kilomètres de
longueur
\begin{figure}[htb]
\begin{center}
\includegraphics[scale=.7]{forage}
\end{center}
\caption{Tige de forage en torsion}
\label{forage:fig}
\end{figure}
peut être représentée par une équation des ondes avec une
condition aux limites non linéaire en fond, condition représentative
de l'outil qui taille la roche (\cf figure \ref{forage:fig}). Nous
avons ainsi comme dynamique:
\begin{equation}
\begin{array}{rcl}
\partial^{2}_{t} \theta & = & \partial^{2}_{x} \theta, \quad
x\in[0,1] \\
\partial_{x} \theta(0,t) & = & - u(t) \\
\partial_{x} \theta(1,t) & = & - F(\partial_{t} \theta(1,t))
- \partial^{2}_{t} \theta(1,t)
\end{array}
\label{dyn-eq}
\end{equation}
où $[0,1]\ni x \mto\theta(x,t)$ est le profil de torsion à
l'instant~$t$, $u$ est la commande le couple exercé par un moteur au sommet du train de
tiges. Les équations sont normalisées et prennent en compte l'inertie
des masses tiges au dessus de l'outil. La loi de comportement de
l'\hbox{outil} est donnée par un frottement non linéaire $F(v)$. D'autre
lois plus complexes sont possibles, le système restant plat dès
qu'elles ne dépendent que de l'angle $y=\theta(1,t)$ de l'outil, la
sortie plate du système. Un calcul simple avec les formules de
d'Alembert montre que
\begin{multline*}
2 \theta(x,t) =
y(t+1-x) + y(t-(1-x)) +
\dot y(t+1-x)\\ - \dot y(t-(1-x)) +
\int_{t-(1-x)}^{t+(1-x)} F(\dot y(\tau)) ~d\tau.
\end{multline*}

\subsection{Gamelle d'eau}
Nous reprenons ici les résultats de commandabilité obtenus sur les équations de Saint-Venant linéarisées autour d'un équilibre \cite{petit-rouchon-ieee02}. La commandabilité du modèle non-linéaire a été démontrée dans~\cite{coron-cocv02} avec des techniques très différentes.
\begin{figure}[htb]
\begin{center}
\includegraphics[scale=.7]{tank}
\end{center}
\caption{Fluide parfait dans un récipient se déplaçant horizontalement}
\label{tank:fig}
\end{figure}
Il s'agit de transporter
horizontalement un fluide dans un récipient. La question est de
contrôler les vagues engendrées par les mouvements du récipient et de
trouver des profils d'accélération et de freinage pour aller d'une
position fixe à une autre. Un modèle de commande simple issu
des équations de la mécanique des fluides s'obtient avec les
équations de Saint-Venant~\cite{landau-lifchitz-mecaflu}
\begin{align*}
\frac{\ds \partial h}{\ds \partial t}
+ \frac{\ds \partial}{\ds \partial x}
\left(h v\right)&=0\\
\frac{\ds \partial }{\ds \partial t}(hv)
+ \frac{\ds \partial}{\ds \partial x}
\left(h v^{2}+\frac{g}{2} h^{2}\right)&=0\\
v(t,D(t)-\frac{l}{2})&=\dot{D}(t)\\
v(t,D(t)+\frac{l}{2})&=\dot{D}(t)
\end{align*}
et le système linéaire tangent autour d'une profondeur constante $\bar
h$. L'étude de ce linéaire tangent montre qu'au premier ordre le
système n'est pas commandable. En revanche, les points stationnaires
sont tous sur la même \og feuille\fg de commandabilité, i.e., il est
toujours possible d'aller d'un état stationnaire à un autre (au premier
ordre). Les formules qui assurent un tel transfert sont les
suivantes (pour les détails voir \cite{petit-rouchon-ieee02}).
\begin{align*}
v(t,x)
&=\frac{1}{2}\Big[ \dpot(t+\frac{\ds x -D(t)}{\ds c}) + \dpot(t-\frac{\ds x-D(t)}{\ds c})
\Big].
\\
h(t,x)&=\Big[ \sqrt{\overline{h}}+ \frac{1}{\sqrt{4 g}}
\Big(\dpot(t-\frac{\ds x-D(t)}{\ds c}) -\dpot(t+\frac{\ds x-D(t)}{\ds c})
\Big)\Big]^{2}
\\
D(t)&=(\pot(t+\frac{\Delta}{2})+\pot(t-\frac{\Delta}{2}))/2
\end{align*}
avec $t\mto \pot(t)$ une fonction arbitraire du temps, $c=\sqrt{\bar
h g}$ la vitesse de propagation des vagues et $\Delta=l/c$ le temps que
met une vague pour aller d'un bord à l'autre. La sortie plate $\pot$
admet une interprétation physique simple. Elle résume la répartition
droite/gauche du fluide dans le récipient. Comme l'illustre la
figure \ref{tankfat:fig}, $\pot$ est l'abscisse du centre de gravité de
deux masses
$$
M^{-}=\int^{D(t)+\sfrac{L}{2}}_{D(t)} {h(t,s)} ds
,\quad
M^{+}=\int_{D(t)-\sfrac{L}{2}}^{D(t)} {h(t,s)} ds
$$
situées aux extrémités.

\begin{figure}[htb]
\begin{center}
\includegraphics[scale=.63]{tankflat}
\end{center}
\caption{La \og sortie plate\fg du linéaire tangent}
\label{tankfat:fig}
\end{figure}

\subsection{Problème de Stefan}
\begin{figure}[htb]
\begin{center}
\includegraphics[scale=.5]{stefan}
\end{center}
\caption{Le problème à frontière libre de Stefan (diffusion et solidification): la \og sortie plate\fg est $y=s(t)$. }
\label{stefan:fig}
\end{figure}
On reprend le problème à frontière libre 1D traité dans~\cite{dunbar-et-al-cocv03} et rappelé sur la figure~\ref{stefan:fig}. Supposons la fonction $t\mto s(t)$ donnée et $C^{\infty}$.
On pose
$$
x=\sum_0^\infty (a_n(t)/n!) (x-s(t))^n .
$$
Alors des calculs simples donnent
$$
a_0=0,\quad a_1=\dot s,\quad a_{n+2} = \dot a_n - a_1 a_{n+1}.
$$
On montre que la série ci-dessus converge pour tout $x$ dès que
$t\mto s(t)$ est d'ordre Gevrey $< 2$ (voir~\cite{dunbar-et-al-cocv03}). On en déduit des contrôles en boucle ouverte pour aller en temps fini $T$ d'un état stationnaire de longueur $s(t)=L_0>0$ vers un autre de longueur différente $s(T)=L_T >0 $.

\subsection{Extrusion}
\begin{figure}[htb]
\begin{center}
\includegraphics[scale=.5]{fil_vitesse}
\end{center}
\caption{Extrusion de fibres minces: le contrôle est la vitesse $u=W(L,t)$, la \og sortie plate \fg est le couple $S(L,T)\partial_zW(L,t)$. }
\label{filiere-v:fig}
\end{figure}
Le modèle le plus simple d'un procédé d'extrusion fabriquant des fibres minces est proposé dans~\cite{agassant-et-al-book}. Comme illustré sur la figure~\ref{filiere-v:fig}, il s'agit d'un système implicite aux dérivées partielles sur le domaine $z\in[0,L]$. Il caractérise le diamètre $S(z,t)$ et la vitesse $W(z,t)$ de la fibre ($\eta$ est un paramètre >0). Usuellement, le contrôle est la vitesse $u=W(L,t)$. Au delà d'une certaine vitesse critique $u^*$, le profil stationnaire devient instable comme le montre~~\cite{agassant-et-al-book}. Si, au lieu de la vitesse, on fixe le couple $y=S(L,T)\partial_zW(L,t)$ alors on est face à un problème de type Cauchy-Kovalevsky en $z$ (comme pour le câble aéro-tracté ci-dessus) et les instabilités disparaissent. En effet, de
$$
S \partial_z W = y(t), \quad \partial_t S + \partial_z(SW)=0
$$
on tire explicitement $\partial_z S$ et $\partial_z W$ en fonction de $y$, $S$, $W$ et $\partial_t S$. On dispose de deux conditions initiales en $z=0$, $S(0,t)=S_0$ et \hbox{$W(0,t)\!=\!W_0$} issues des conditions en sortie d'extrudeuse. Un dévelop\-pement en série de puissances de $z$ est donc a priori possible bien que son utilisation pour la planification de trajectoires semble délicate.

\section{Systèmes électro-mécaniques}

\subsection{Le convertisseur de tensions}

Un convertisseur de tension continu en tension continu par modulation
de largeur d'impulsions (PWM) obéit aux équations suivantes
$$\dot x_{1}= (u-1)\frac{x_2}{L}+\frac{E}{L},\quad
\dot x_{2} = (1-u)\frac{x_1}{LC}-\frac{x_2}{RC},$$
où $u\in [0,1]$ est la commande, le rapport cyclique. L'énergie
électromagnétique $\ds y:=\frac{x_{1}^{2}}{2C}+\frac{x_{2}^{2}}{2L}$
est la sortie plate \cite{sira-spong-ijc89}.

\subsection{Paliers magnétiques}
Une solution simple à la planification de trajectoires et à la
stabilisation des paliers magnétiques est proposée
dans \cite{levine-et-al-ieee96}. Le contrôle obtenu assure qu'à chaque
instant, seul l'un des deux électro-aimants est actif. Cela permet de
réduire le nombre d'aimants par un placement plus astucieux de ces
derniers.

\subsection{Moteurs à induction}
Le modèle standard d'un moteur à induction s'écrit avec des variables
complexes pour les grandeurs électriques (voir \cite{Leon85a} pour plus
de détails)
\begin{align*}
R_s \imath_s + \dot\psi_s &= u_s &\psi_s &= L_s \imath_s + Me^{jn \theta}\imath_r\\
R_r \imath_r + \dot\psi_r &= 0 &\psi_r &= Me^{-j n \theta}\imath_s + L_r \imath_r,
\end{align*}
où $\psi_s$ et $\imath_s$ (\resp $\psi_r$ et $\imath_r$) sont valeurs complexes
des flux et courants stator (\resp rotor), $\theta$ est l'angle du
rotor et $j=\sqrt{-1}$. La commande est la tension complexe $u_s$
appliquée au stator. Avec $\psi_r=\rho e^{j\alpha}$, la~dynamique du
rotor est donnée par
$$J\frac{d^2\theta}{dt^2} = \frac{n}{R_r}\rho^2\dot\alpha -
\tau_L(\theta,\dot\theta),$$
où $\tau_L$ est le couple de charge.

Ce système est plat avec les deux angles $(\theta,\alpha)$ comme
sortie plate \cite{martin-rouchon-ifac96} (voir aussi \cite{Chia93a}).

\subsection{Ligne de transmission}
\cite{fliess-et-al-cdc99} aborde la transmission d'un
signal au moyen d'une ligne décrite par l'équation des télégraphistes
avec une pré-compensation des distorsions dues à la ligne directement au
niveau du signal d'entrée.

La propagation d'un signal électrique via une ligne le longueur $\ell$
obéit aux lois de Kirchhoff (voir, par exemple, \cite{rocard-book}):\vspace*{-3pt}
\begin{align*}
L \frac{\partial i}{\partial t}&= - R i - \frac{\partial v}{\partial x} \\
C \frac{\partial v}{\partial t} &= - \frac{\partial i}{\partial x} - G v .
\end{align*}
avec $0 \leq x \leq \ell$.
Par unité de longueur, la résistance est
$R$, l'inductance~$L$, la capacité $C$ et la perditance
$G$. L'élimination du courant~$i$ donne
l'équation des {\em télégraphistes}\vspace*{-3pt}
\begin{align}
\frac{\partial ^2 v (x,t)}{\partial x ^{2}}=\Bigl(R+L \frac{\partial}{\partial
t}\Bigr)\Bigl(G+C \frac{\partial }{\partial t}\Bigr) v(x,t) .
\label{tele}
\end{align}
Les conditions aux limites sont\vspace*{-3pt}
\begin{align*}
v(0,t)&= u(t)\\
v(\ell,t)&= Z i(\ell,t)
\end{align*}
où $Z$ est la résistance en bout de ligne.
La commande est la tension d'entrée $u(t) =
v(0,t)$. Nous allons voir que $y(t) = v(\ell,t)$ est la sortie plate.

Avec $s$, la variable de Laplace, (\ref{tele}) devient une simple
équation différentielle ordinaire en $x$:\vspace*{-3pt}
\begin{equation}
\hat{v}''(x,s)=\varpi(s) \hat{v}(x,s),
\label{op}
\end{equation}
où $\varpi(s) =(R+L s)(G+ C s)$. Les
conditions aux limites donnent\vspace*{-3pt}
\begin{equation}
\hat{v}(0,s) = \hat{u}, \quad (R+L s) \hat{v}(\ell,s)=Z
\hat{v}'(\ell,s).
\label{bord}
\end{equation}
La solution générale de (\ref{op}) est\vspace*{-3pt}
$$
\hat{v}(x,s) = A(s) \cosh ((\ell-x)\sqrt{\varpi(s)}) + B(s) \sinh ((\ell-
x)\sqrt{\varpi(s)})
$$
avec $A(s)$ et $B(s)$ indépendants de $x$ et déduits des conditions aux bords (\ref{bord}).
Au lieu de considérer la relation entre $\hat{v}$ et $\hat{u}$,
regardons la relation entre $\hat{v}$ et $y(s)=v(\ell,s)$:\vspace*{-3pt}
\begin{multline}
\hat{v}(x,s)\\[-3pt] = \Big(\cosh ((\ell -x) \sqrt{\varpi (s)})
+ \frac{R+L s}{Z} \frac{\sinh ((\ell -x)
\sqrt{\varpi (s)})}{\sqrt{\varpi (s)}} \Big) \hat{y}(s) .
\label{0}
\end{multline}
Noter que le transfert entre $\hat{v}$ et $\hat{y}$ est une fonction entière de $s$.
Ainsi,~$ \hat{y}$ est une sortie plate.

Pour $x=0$ $(\ref{0})$ donne
\begin{equation}
\hat{u}(s) = \biggl(\cosh \left(\ell \sqrt{\varpi (s)}\right) +
\frac{R+L s}{Z} \frac{\sinh \left(\ell
\sqrt{\varpi (s)}\right) }{\sqrt{\varpi (s)}} \biggr) \hat{y}(s).
\label{1}
\end{equation}
Supposons $G=0$ pour plus de simplicité.
La formule (\ref{1}) donne, de retour dans le domaine temporel,
($\lambda = \ell \sqrt{LC}$, $\alpha = \sfrac{R}{2 L}$,
$\varpi(s)=RC s + LC s^{2}$)
{\small
\begin{multline*}
u(t)= \frac{1}{2} e^{-\alpha \lambda }\Bigl(1- \frac{1}{Z}\sqrt{\frac{L}{C}}\Bigr)
~y(t-\lambda)
+ \frac{1}{2} e^{\alpha \lambda }\Bigl(1+ \frac{1}{Z}\sqrt{\frac{L}{C}}\Bigr)
~y(t+\lambda)
\\
\hspace*{-4cm}+ \int_{-\lambda}^{+\lambda} \left[
\frac{R}{ 4 Z \sqrt{LC}} e^{-\alpha \tau} J_{0}\bigl(i \alpha
\sqrt{\tau^{2}-\lambda^{2}}\bigr)\right.\\
+\left. \frac{e^{-\alpha \tau}i \alpha}{2 \sqrt{
\tau^{2}-\lambda^{2} }}
\Bigl(\lambda-\frac{1}{Z}\sqrt{\frac{L}{C}}\,
\tau \Bigr)
J_{1}\bigl(i \alpha\sqrt{\tau^{2}-\lambda^{2}}\bigr)
\right]
~y(t - \tau)~d\tau
\end{multline*}
}
avec $J_0$ et $J_1$ les fonctions de Bessel
(voir les tables de transformations de Laplace dans \cite{doetsch-book2T3}).

Ainsi la relation entre $y$ et $u$ passe par un filtre à support compact mais non causal:
$u(t)$ dépend des valeurs de $y$ sur $[t-\lambda,t+\lambda]$. Il est
alors très naturel d'utiliser ce filtre pour construire un
pré-compensateur.

\section{Systèmes quantiques}

Le modèle physique le plus simple d'un système quantique à deux états (spin $1/2$) contrôlé par un champ électromagnétique cohérent est~(voir, par exemple, \cite{haroche-raimond-book06}):
$$
\frac{dx_{1}}{dt} = \omega x_{2}, \quad
\frac{dx_{2}}{dt} = -\omega x_{1} + u x_{3}, \quad
\frac{dx_{3}}{dt} = -u x_{2}
$$
avec le contrôle scalaire $u$ (typiquement proportionnel au champ électrique) et $\omega$ une pulsation constante. Comme $(x_1)^2+(x_2)^2+(x_3)^2$ est invariant, la dynamique est restreinte sur la sphère unité (sphère de Bloch): $(x_1)^2+(x_2)^2+(x_3)^2=1$. Alors $y=x_1$ est une sortie plate car
\begin{align*}
x_1=y,\quad x_2=\frac{y^{(1)}}{\omega},\quad x_{3} &= \pm \sqrt{1 - y^2 -\sfrac{(y^{(1)})^2 }{\omega^2} }
,\\
u &=\pm \frac{y+\sfrac{y^{(2)}}{\omega^2}}{\sqrt{1 - y^2 -\sfrac{(y^{(1)})^2 }{\omega^2}}}.
\end{align*}
On trouvera dans~\cite{pereira-rouchon-ieee08}, un autre exemple de dynamique quantique plate, exemple très similaire à la voiture non holonome mais où le groupe sur lequel évolue le système n'est plus $SE(2)$ mais $SU(2)$: les calculs y sont alors conduits avec les quaternions. Dans~\cite{mirrahimi-rouchon-ieee04}, on montre que la partie commandable d'un oscillateur harmonique contrôlé est plate (elle est même linéaire). Dans~\cite{rouchon-IFAC03}, on propose une version quantique de la gamelle d'eau: sur le linéaire tangent autour de tout état propre, il est possible de déplacer la particule piégée dans sa boîte sans changer son énergie finale. Dans le cas non-linéaire, la commandabilité a été montrée dans~\cite{beauchard05} avec la méthode du retour décrite dans~\cite{coron-book}. Pour d'autres résultats sur la commandabilité d'équations de Schrödinger 1D ayant une structure voisine voir~\cite{beauchard-coron06,beauchard08}. On trouvera enfin dans~\cite{rouchon-Senegal08} plusieurs autres exemples de dimension finie et infinie.

\section{Réacteurs chimiques}

Le réacteur exothermique parfaitement considéré dans~\cite{aris-amundson-58} admet la description suivante:
\begin{align*}
\frac{d x_1}{dt}&= D(x_1^{in}-x_1) - kx_1 e^{-\sfrac{T^*}{x_2}}
,\\
\frac{d x_2}{dt} &= D(x_2^{in}-x_2) + cx_1 e^{-\sfrac{T^*}{x_2}} + u
\end{align*}
avec l'état $x=(x_1,x_2)$ et le contrôle scalaire $u$, les autres grandeurs étant des paramètres strictement positifs et constants. Une sortie plate est $y=x_1$. La première équation fournit $x_2$ comme fonction de $y$ et~$y^{(1)}$. De la seconde équation, nous tirons $u$ comme fonction de $x_1$, $x_2$ et $\dot x_2$. Ainsi, $u$ est une fonction de $y$, $y^{(1)}$ et $y^{(2)}$.
Nous renvoyons à \cite{rothfuss-et-al-auto96} pour des calculs similaires avec des simulations en boucle fermée sur un réacteur plus complexe. Dans \cite{rouchon-rudolph-hermes99}, on trouvera une liste
assez complète de réacteurs chimiques plats.

\backmatter
\addtocontents{toc}{\protect \lsectionpart}
\nocite{Ra91}
\bibliographystyle{jepplain+eid}
\bibliography{xups99-01}
\addcontentsline{toc}{part}{Annexe. Quelques programmes Mathlab}
\end{document}
