<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
<!--Converted with LaTeX2HTML 98.1p1 release (March 2nd, 1998)
originally by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds
* revised and updated by:  Marcus Hennecke, Ross Moore, Herb Swan
* with significant contributions from:
  Jens Lippmann, Marek Rouchal, Martin Wilck and others -->

<html>
<head>
  <meta name="generator" content=
  "HTML Tidy for Mac OS X (vers 31 October 2006 - Apple Inc. build 13), see www.w3.org">

  <title>Projet : PROMATH - Optimisation dynamique</title>
  <meta name="description" content="Optimisation dynamique">
  <meta name="keywords" content="promath">
  <meta name="resource-type" content="document">
  <meta name="distribution" content="global">
  <meta http-equiv="Content-Type" content=
  "text/html; charset=utf-8">
  <link rel="STYLESHEET" href="promath.css" type="text/css">
  <link rel="next" href="fonde_commande.html">
  <link rel="previous" href="fonde.html">
  <link rel="up" href="fonde.html">
  <link rel="next" href="fonde_commande.html">
</head>

<body bgcolor="white">
  <a href="http://www.inria.fr/Equipes/PROMATH-fra.html">Projet :
  PROMATH</a>

  <p><a name="tex2html102" href="fonde.html"><img width="24"
  height="24" align="bottom" border="4" alt="previous" src=
  "../icons/previous_motif.gif"></a> <a name="tex2html108" href=
  "fonde.html"><img width="24" height="24" align="bottom" border=
  "4" alt="up" src="../icons/up_motif.gif"></a> <a name=
  "tex2html111" href="fonde_commande.html"><img width="24" height=
  "24" align="bottom" border="4" alt="next" src=
  "../icons/next_motif.gif"></a> <a name="tex2html110" href=
  "promath.html"><img width="24" height="24" align="bottom" border=
  "4" alt="contents" src="../icons/contents_motif.gif"></a><br>
  <b>Précédent :</b> <a name="tex2html103" href=
  "fonde.html">Fondements scientifiques</a> <b>Remonter&nbsp;:</b>
  <a name="tex2html109" href="fonde.html">Fondements
  scientifiques</a> <b>Suivant&nbsp;:</b> <a name="tex2html112"
  href="fonde_commande.html">Commande optimale d'équations aux
  dérivées</a><br></p>
  <hr>

  <p><!--End of Navigation Panel--></p>

  <h2><a name="SECTION00031000000000000000">&nbsp;</a> <a name=
  "PROMATH_fondements_optimisation">&nbsp;</a><br>
  Optimisation dynamique</h2>

  <p>Les problèmes de commande optimale connaissent actuellement
  une importance accrue liée à l'introduction de nouvelles
  technologies dans les domaines suivants&nbsp;: trafic aérien,
  pollution automobile, biodégradation de déchets. Ils sont
  toujours importants pour les applications ``classiques''
  concernant les engins guidés, les avions spatiaux, et le génie
  des processus.</p>

  <p>Le problème modèle a la structure suivante<br></p>

  <div align="center">
    <a name="PB1">&nbsp;</a> <!-- MATH: \begin{eqnarray}
\left\{
\begin{array}{l}
\displaystyle
\mathop {\rm Min}_{y,u} J(y,u) := \int_s^T L(y(t),u(t)) dt; \\
\\
\dot{y}(t) = f(y(t),u(t)), \; t\in [s,T]; \quad y(0)=y_0, \\
\\
C(y(t),u(t)) \leq 0, \; t\in [s,T].
\end{array}
\right.

\end{eqnarray} -->

    <table cellpadding="0" align="center" width="100%">
      <tr valign="middle">
        <td align="center"><img width="16" height="109" align=
        "middle" border="0" src="img2.gif" alt=
        "$\displaystyle \left\{\vphantom{ \begin{array}{l} \displaystyle \mathop {\rm Min... ...\quad y(0)=y_0, \ \ C(y(t),u(t)) \leq 0, \; t\in [s,T]. \end{array}}\right.$"><img width="256"
        height="109" align="middle" border="0" src="img3.gif" alt=
        "$\displaystyle \begin{array}{l} \displaystyle \mathop {\rm Min}_{y,u} J(y,u) := ... ... [s,T]; \quad y(0)=y_0, \ \ C(y(t),u(t)) \leq 0, \; t\in [s,T]. \end{array}$">
        <img width="6" height="109" align="middle" border="0" src=
        "img4.gif" alt=
        "$\displaystyle \left.\vphantom{ \begin{array}{l} \displaystyle \mathop {\rm Min}... ...\quad y(0)=y_0, \ \ C(y(t),u(t)) \leq 0, \; t\in [s,T]. \end{array}}\right.$">
        </td>

        <td>&nbsp;</td>

        <td>&nbsp;</td>

        <td width="10" align="right">(1)</td>
      </tr>
    </table>
  </div><br clear="all">
  Ici <i>L</i> est le coût distribué, <i>f</i> la dynamique,
  <i>C</i> la contrainte, <i>y</i> est l'état, <i>u</i> est la
  commande, <i>s</i> l'instant initial, et <i>T</i> l'instant
  final.

  <p>L'équation différentielle régit la dynamique du système, alors
  que les contraintes d'inégalités imposent à la trajectoire
  solution de rester dans un domaine donné. La résolution de
  (<a href="fonde_optimisation.html#PB1">1</a>) consiste donc en la
  détermination de <i>u</i> et <i>x</i>, de telle sorte que
  <i>J</i> soit minimum.</p>

  <p>Posons <!-- MATH: $H(y,u,p) := L(y,u) + p \cdot f(y,u)$ -->
  <i>H</i>(<i>y</i>, <i>u</i>, <i>p</i>) : = <i>L</i>(<i>y</i>,
  <i>u</i>) + <i>p</i> <sup>.</sup> <i>f</i> (<i>y</i>, <i>u</i>).
  Dans le cas où la contrainte n'est pas active, le système
  d'optimalité s'écrit</p>

  <table cellpadding="0" align="center" width="100%">
    <tr valign="middle">
      <td align="center"><img width="359" height="53" src=
      "img5.1.gif" alt=
      "\begin{displaymath}\left\{ \begin{array}{lll} \dot{y}(t) = &amp; H_p(y(t),u(t),p(t))... ...u(t),p(t)), &amp; t\in [s,T]. \end{array}\right. \eqno{(P_{s,x})} \end{displaymath}"></td>

      <td align="right"><img src="img5.2.gif"></td>
    </tr>
  </table>Ce système algébrico différentiel généralise en un
  certain sens les systèmes hamiltoniens issus de la mécanique. Si
  <i>H</i><sub>uu</sub> est inversible, le théorème des fonctions
  implicites permet la réécriture de la contrainte algébrique
  <i>H</i><sub>u</sub> = 0 comme <!-- MATH: $u=\Psi(y,p)$ -->
  <i>u</i> = <img width="13" height="11" align="bottom" border="0"
  src="img6.gif" alt="$ \Psi$">(<i>y</i>, <i>p</i>), où <img width=
  "13" height="11" align="bottom" border="0" src="img6.gif" alt=
  "$ \Psi$"> est telle que <!-- MATH: $H_u(y,\Psi(y,p),p)=0$ -->
  <i>H</i><sub>u</sub>(<i>y</i>,<img width="13" height="11" align=
  "bottom" border="0" src="img6.gif" alt="$ \Psi$">(<i>y</i>,
  <i>p</i>), <i>p</i>) = 0. Posant<br>

  <div align="center">
    <!-- MATH: \begin{displaymath}
{\cal H}(y,p):= H(y,\Psi(y,p),p)=0,
\end{displaymath} -->
    <img width="175" height="23" src="img8.gif" alt=
    "\begin{displaymath}{\cal H}(y,p):= H(y,\Psi(y,p),p)=0, \end{displaymath}">
  </div>on peut réécrire le système algébrico différentiel en
  (<i>y</i>, <i>p</i>, <i>u</i>)sous la forme hamiltonienne<br>

  <div align="center">
    <a name="PB2a">&nbsp;</a> <!-- MATH: \begin{eqnarray}
\left\{
\begin{array}{llll}
\dot{y}(t) & = & {\cal H}_p(y(t),p(t)), & t\in [s,T]; \quad y(0)=y_0, \\
\dot{p}(t) &= - & {\cal H}_y(y(t),p(t)), & t\in [s,T]; \quad p(T)=0, \\
\end{array}
\right.
\end{eqnarray} -->

    <table cellpadding="0" align="center" width="100%">
      <tr valign="middle">
        <td align="center"><img width="14" height="44" align=
        "middle" border="0" src="img9.gif" alt=
        "$\displaystyle \left\{\vphantom{ \begin{array}{llll} \dot{y}(t) &amp; = &amp; {\cal H}_p... ... - &amp; {\cal H}_y(y(t),p(t)), &amp; t\in [s,T]; \quad p(T)=0, \ \end{array}}\right.$"><img width="301"
        height="44" align="middle" border="0" src="img10.gif" alt=
        "$\displaystyle \begin{array}{llll} \dot{y}(t) &amp; = &amp; {\cal H}_p(y(t),p(t)), &amp; t\i... ...p}(t) &amp;= - &amp; {\cal H}_y(y(t),p(t)), &amp; t\in [s,T]; \quad p(T)=0, \ \end{array}$">
        <img width="6" height="44" align="middle" border="0" src=
        "img11.gif" alt=
        "$\displaystyle \left.\vphantom{ \begin{array}{llll} \dot{y}(t) &amp; = &amp; {\cal H}_p(... ... - &amp; {\cal H}_y(y(t),p(t)), &amp; t\in [s,T]; \quad p(T)=0, \ \end{array}}\right.$">
        </td>

        <td>&nbsp;</td>

        <td>&nbsp;</td>

        <td width="10" align="right">(2)</td>
      </tr>
    </table>
  </div><br clear="all">
  La méthode de tir résout ce système différentiel en appliquant
  une variante de la méthode de Newton à l'équation
  <i>F</i>(<i>p</i><sub>0</sub>) = 0, où <i>F</i> est l'application
  qui à l'état adjoint initial <i>p</i><sub>0</sub> associe, après
  intégration numérique du système<br>

  <div align="center">
    <!-- MATH: \begin{displaymath}
\dot{y}(t) = {\cal H}_p(y(t),p(t)), \quad \dot{p}(t) =- {\cal H}_y(y(t),p(t)),
\quad t\in [s,T], 
\end{displaymath} -->
    <img width="330" height="23" src="img15.gif" alt=
    "\begin{displaymath}\dot{y}(t) = {\cal H}_p(y(t),p(t)), \quad \dot{p}(t) =- {\cal H}_y(y(t),p(t)), \quad t\in [s,T], \end{displaymath}">
  </div>l'état adjoint final <i>p</i>(<i>T</i>). Les points
  délicats de la méthode concernent

  <ul>
    <li>La précision numérique quand l'horizon final <i>T</i> est
    ``grand'',</li>

    <li>Le cas singulier <i>H</i><sub>uu</sub> = 0, qui se produit
    quand le critère et la dynamique sont fonction affines de la
    commande, et pour lequel le système algébrico différentiel est
    d'indice 3,</li>

    <li>Le traitement des contraintes, soit par pénalisation, soit
    par découpage de [<i>s</i>, <i>T</i>] en arcs sur lesquels les
    contraintes actives sont fixées.</li>
  </ul>

  <p>On peut aussi résoudre le problème de commande optimale en
  s'appuyant sur un principe de programmation dynamique, ou (ce qui
  est très proche en pratique) en résolvant l'équation de
  Hamilton-Jacobi-Bellman (hjb)</p>

  <div align="center">
    <!-- MATH: \begin{displaymath}
\htmlimage{}
v_t(x,t) + \bar{{\cal H}}(x,v_x(x,t)) = 0, \quad \forall \, x \in \mbox{${\rm I}\!{\rm R}$}^n,
\quad v(x,T) =0,
\eqno(HJB)
\end{displaymath} -->
    <img width="352" height="23" src="img17.gif" alt=
    "\begin{displaymath}v_t(x,t) + \bar{{\cal H}}(x,v_x(x,t)) = 0, \quad \forall \, x \in \mbox{${\rm I}\!{\rm R}$}^n, \quad v(x,T) =0, \eqno(HJB) \end{displaymath}">
  </div>où

  <div align="center">
    <a name="PB3">&nbsp;</a> <!-- MATH: \begin{equation}
\bar{{\cal H}}(x,v_x(x)) := \inf_u H(x,u,p)
\end{equation} -->

    <table cellpadding="0" width="100%" align="center">
      <tr valign="middle">
        <td nowrap align="center"><img width="14" height="14"
        align="bottom" border="0" src="img18.gif" alt=
        "$\displaystyle \bar{{\cal H}}$">(<i>x</i>,
        <i>v</i><sub>x</sub>(<i>x</i>)) : = <img width="19" height=
        "32" align="middle" border="0" src="img19.gif" alt=
        "$\displaystyle \inf_{u}^{}$"><i>H</i>(<i>x</i>, <i>u</i>,
        <i>p</i>)</td>

        <td nowrap width="10" align="right">(3)</td>
      </tr>
    </table>
  </div><br clear="all">
  coïncide avec <img width="14" height="12" align="bottom" border=
  "0" src="img20.gif" alt="${\cal H}$"> si <i>H</i><sub>uu</sub>
  est inversible. On sait que la solution (en un sens généralisé,
  dit de viscosité) de cette équation n'est autre que la valeur du
  problème (<i>P</i><sub>s, x</sub>), et la commande optimale est
  obtenue en calculant en chaque point de la trajectoire l'argument
  du minimum dans (<a href="fonde_optimisation.html#PB3">3</a>),
  avec <i>p</i> = <i>v</i><sub>x</sub>. On obtient ainsi un
  algorithme calculant la solution globale, dont on sait évaluer la
  complexité. Les points délicats de la méthode, hormis
  l'inévitable limitation de dimension, concernent en
  particulier&nbsp;:

  <ul>
    <li>Le calcul d'une solution précise au voisinage de la
    trajectoire nominale.</li>

    <li>Le traitement des contraintes sur l'état,</li>

    <li>La prise en compte de réduction de la dimension de l'état
    par perturbation singulière.</li>
  </ul>

  <p>Enfin il est possible de résoudre numériquement le problème de
  commande optimale par la méthode dite directe, de discrétisation
  temporelle a priori, puis en appliquant au problème en temps
  discret ainsi obtenu un algorithme d'optimisation non linéaire.
  Ce procédé a l'avantage de permettre aisément la prise en compte
  de contraintes variées, et l'inconvénient d'un manque de
  précision d'une méthode qui reste locale.</p>

  <p>Les références classiques sur la méthode de tir en commande
  optimale datent des années 70-80 [<a href=
  "bibliographie.html#BryHo75">BH75</a>,<a href=
  "bibliographie.html#StoBur80">SB80</a>]. Leurs avantages et
  inconvénients par rapport à l''approche directe (voir par exemple
  [<a href="bibliographie.html#BetHuf92">BH92</a>], [<a href=
  "bibliographie.html#BonLau98">[10]</a>]) est discutée en détail
  dans [<a href="bibliographie.html#Bet98">Bet98</a>]. ces méthodes
  ont été appliquées au calcul de commande en boucle fermée
  [<a href="bibliographie.html#Pes89">Pes98</a>].</p>

  <p>Les problèmes avec arc singulier sont présentés dans [<a href=
  "bibliographie.html#BryHo75">BH75</a>]. On trouvera
  d'intéressantes études de cas particuliers dans [<a href=
  "bibliographie.html#TsiKel91">TK91</a>].</p>

  <p>Les méthodes de tir sont restées largement employées dans les
  dernières années, sauf en France où elles sont ignorées pour
  l'essentiel. Cependant elles n'ont pas fait l'objet
  d'investigations approfondies depuis environ une dizaine
  d'années.</p>

  <p>Par ailleurs on trouvera une synthèse récente sur l'approche
  par l'équation de Hamilton-Jacobi dans [<a href=
  "bibliographie.html#BardiCap97">BCD97</a>].</p>

  <p><br></p>
  <hr>
  <a name="tex2html102" href="fonde.html"><img width="24" height=
  "24" align="bottom" border="4" alt="previous" src=
  "../icons/previous_motif.gif"></a> <a name="tex2html108" href=
  "fonde.html"><img width="24" height="24" align="bottom" border=
  "4" alt="up" src="../icons/up_motif.gif"></a> <a name=
  "tex2html111" href="fonde_commande.html"><img width="24" height=
  "24" align="bottom" border="4" alt="next" src=
  "../icons/next_motif.gif"></a> <a name="tex2html110" href=
  "promath.html"><img width="24" height="24" align="bottom" border=
  "4" alt="contents" src="../icons/contents_motif.gif"></a><br>
  <b>Précédent :</b> <a name="tex2html103" href=
  "fonde.html">Fondements scientifiques</a> <b>Remonter&nbsp;:</b>
  <a name="tex2html109" href="fonde.html">Fondements
  scientifiques</a> <b>Suivant&nbsp;:</b> <a name="tex2html112"
  href="fonde_commande.html">Commande optimale d'équations aux
  dérivées</a>

  <p><!--End of Navigation Panel--></p>
</body>
</html>
