Projet Meta2

previous up next contents
Précédent : Présentation générale et objectifs Remonter : Rapport activite 1997 Suivant : Grands domaines d'application



Fondements scientifiques

Systèmes à événements discrets et algèbre max-plus



Participant : Marianne Akian , Guy Cohen , Stéphane Gaubert , Jean-Pierre Quadrat


Mots-clés : Algèbre max-plus, Systèmes à événements discrets, Décision markovienne


Résumé : L'idée est de substituer au corps des nombres réels le demi-corps idempotent $\mathbb {R}_{\max}$ des nombres réels auxquels on ajoute $-\infty$ et que l'on munit des opérations max et +. A partir de ce demi-corps, on peut développer l'analogue de l'algèbre linéaire classique, une théorie des systèmes dynamiques linéaires, un analogue du calcul des probabilités, l'analogue des espaces de Sobolev etc ...

Les nouveaux systèmes dynamiques linéaires ainsi obtenus ne sont rien d'autre que les systèmes régis par des équations de la programmation dynamique qui jouent un rôle important en ingéniérie et en physique.


L'algèbre max-plus

Le semianneau max-plus, parfois appelé ``algèbre max-plus'', et noté $\mathbb {R}_{\max}$. C' est l'ensemble $\R \cup \{- \infty\}$,muni des lois max et +. Traditionnellement, on note $\oplus$ au lieu de max ($2 \oplus 3 =3$), et $\otimes$ au lieu de + $(1 \otimes 1 = 2)$.L'élément zéro, c'est-à-dire le neutre pour la loi $\oplus$, est noté $\varepsilon$(ici $\varepsilon=-\infty$). L'unité, c'est-à-dire le neutre pour la loi $\otimes$,est notée e (ici e=0). Les axiomes de structure des semianneaux sont ici satisfaits : $\oplus$ est associative, commutative, a un zéro, $\otimes$ est associative, a une unité, distribue par rapport à $\oplus$,et zéro est absorbant. Le semianneau max-plus est très particulier : il est commutatif $(a \otimes b = b \otimes a)$, idempotent $(a \oplus a = a)$, et les éléments ont un inverse, hormis zéro (on nomme semicorps les semianneaux qui satisfont cette dernière propriété).

Ces nouvelles notations $\oplus$ et $\otimes$sont mieux adaptées que max et + aux réflexes de calcul qui sont liés à l'algèbre ordinaire. Nous écrirons par exemple :


\begin{alignat*}{1}&ab=a\otimes b,\;\; a^n = a \otimes \cdots \otimes a \; \; ... ... 3x \oplus x^2= 6\oplus x^2 \;\; (=\max(6; 2\times x)) \enspace .\end{alignat*}

La table suivante donne une liste d'autres semianneaux apparentés au semicorps max-plus.

Systèmes dynamiques max-plus linéaires et graphes d'événements.

Certains systèmes à événements discrets (les graphes d'événements) se modélisent par des systèmes dynamiques sur le semianneau max-plus, Considérons par exemple un système comprenant n tâches répétitives (on peut penser à des assemblages dans un atelier, à des rendez-vous dans un réseau). L'instant de démarrage d'une tâche est conditionnée par l'exécution d'autres tâches devant être effectuées antérieurement. Supposons que la k-ième occurrence de la tâche i (tir de la transition i) ne puisse commencer que $\tau_{ij}$ unités de temps aprés que la dernière, des occurences $(k-\nu_{ij})$ des tâches j, n'ait eu lieu. Alors, clairement, les dates au plus tôt d'occurrence des k-ième tâches sont données par la récurrence  

\begin{equation}x_i(k) =\max_{j} \left[ \tau_{ij} + x_j(k-\nu_{ij})\right]\enspace ,\end{equation}


qui n'est autre qu'un système linéaire stationnaire sur le semianneau max-plus. On peut l'écrire en termes matriciels

\begin{equation}x(k)=\bigoplus_{\nu \in \mathsf{F}} A_{\nu} x(k-\nu) \enspace ,\end{equation}


Fest un ensemble fini, et $\{A_{\nu}\}_{\nu\in\mathsf{F}}$une famille de matrices que l'on écrira aisément.

On a obtenu un modèle linéaire pour l'évaluation de performance d'un système dans lequel les préconditions d'une tâche sont fixées a priori et invariantes en temps. En termes de système de production cela signifie à peu près qu'un ordonnancement périodique a été défini.

L'algèbre max-plus permet d'analyser complètement cette classe de systèmes. Un des résultats intéressants obtenus consiste à remarquer que la relation : instants d'entrée -instants de sortie, des pièces, est max-plus linéaire et shift invariante. C'est une inf-convolution de la suite des instants d'entrée et d'une suite caractéristique du système (sa réponse impulsionnelle au sens max-plus). On a donc une bonne notion de fonction de transfert. Ce sont les séries formelles rationnelles[*] (si le graphe d'événement n'a qu'un nombre fini de transitions) à coefficients dans l'algèbre max-plus. Ces résultats ont été largement expliqués dans [8,5,12].

Cette classe est trop restreinte (dans la majorité des applications, trouver un bon ordonnancement fait partie du problème). Elle peut être élargie au prix de la perte de la linéarité max-plus.

Systèmes dynamiques (min,+,x) implicites, réseaux de Petri, programmation dynamique stochastique.

La modélisation de réseaux de Petri temporisés généraux ne peut pas se faire dans le semianneau $\mathbb {R}_{\max}$ ou $\mathbb {R}_{\min}$la multiplication est indispensable.

On note P l'ensemble des places, Q l'ensemble des transitions, M les multiplicités des arcs, m le marquage initial, r les temps de séjour. À chaque place p$\in $P on associe un compteur $Z_p: \mathbb {R} \rightarrow\mathbb {Z}$,($Z_p(t)$ est le numéro du dernier jeton entré avant l'instant t, en incluant les jetons du marquage initial) ; de même, pour chaque transition q$\in $Q, $Z_q(t)$ note le numéro du dernier tir de q arrivé avant l'instant t. Ces fonctions sont croissantes, par définition. On a les bilans suivants (on note $x^{\text{\rm in}}$ et $x^{\text{\rm out}}$ les ensembles des prédecesseurs et successeurs d'un noeud x, respectivement):  

\begin{equation}Z_p(t) = m_p + \sum_{q\in p^{\text{\rm in}}} M_{pq} Z_q(t)\; ,\end{equation} 


\begin{equation}Z_p(t-\tau_p) \geq \sum_{q'\in p^{\text{\rm out}}} M_{q'p}Z_{q'}(t)\; .\end{equation}


Par exemple, pour le réseau de Petri de la Figure suivante, $Z_{q_3}(t)+ 2 Z_{q_2}(t) \leq Z_{p_2}(t-\tau_{p_2})$traduit le fait qu'un jeton en $p_2$ peut contribuer au tir d'une transition $q_3$, et qu'il en faut deux pour tirer $q_2$.

Dans un fonctionnement au plus tôt, au moins une inégalité de type ([*] est saturée (i.e. au moins une place est indisponible) en amont de chaque transition. On a donc:  

\begin{equation}\forall q \in \mathcal{Q},\;\min_{p\in q^{\text{\rm in}}}\left... ...\sum_{q'\in p^{\text{\rm out}}} Z_{q'}(t) M_{q'p}\right\}= 0\; .\end{equation}


Ce problème posé dans [Lib97] est un système dynamique (min,+,x) implicite sur lequel on ne sait à peu prés rien dire. Résoudre ce genre de problème, même dans le cas statique, revient à étudier les variétés algébriques max-plus. La programmation linéaire devrait être d'une aide précieuse pour la résolution de ces systèmes.

On peut néanmoins simplifier ce problème en forçant des routages stationnaires : on notera alors $\rho_{qp}$ la proportion de fluide (cas où on ne se préoccupe pas de l'intégrité des jetons) routé vers q par la place p, avec $\sum_{q\in p^{\text{\rm out}}} \rho_{qp}=1$.En posant,


\begin{displaymath}\mu_{pq}\stackrel{\text{\rm d\'ef}}{=} M_{pq},\;\; \mu_{qp}\... ...,\;\mu'_{qp}\stackrel{\text{\rm d\'ef}}{=}\mu_{qp}\rho_{qp}\; \end{displaymath}


l'évolution du système devient cette fois :  

\begin{equation}Z_q(t)=\min_{p\in q^{\text{\rm in}}} \Bigl[ \mu'_{qp}\bigl(m_{p... ...in p^{\text{\rm in}}}\mu_{pq''}Z_{q''}(t-\tau_p)\bigr)\Bigr] \; .\end{equation}


On reconnait une équation de la programmation dynamique, pour un processus de décision semi-Markovien, avec coût additif actualisé général. On peut alors calculer l'asymptotique de Z par des algorithmes du type itération sur les politiques [CGJ95].

Systèmes dynamiques monotones homogènes

La modélisation de systèmes à événements discrets plus généraux peut se faire en remplaçant ([*], ([*] par des dynamiques $f: \mathbb {R}^n\rightarrow\mathbb {R}^n$qui satisfont les trois axiomes :



\begin{displaymath}\begin{array}{lrclr}\text{\rm{Homog\'en\'eit\'e}}& f(\lamb... ...leq &\Vert x-y\Vert _{\infty}\enspace ,& \qquad (N)\end{array}\end{displaymath}


pour tout $\lambda\in \mathbb {R}, x,y\in \mathbb {R}^n$,avec $\lambda+x\stackrel{\text{\rm def}}{=}(\lambda +x_1,\ldots ,\lambda+ x_n)$, et où $\leq$ désigne l'ordre partiel usuel sur $\mathbb {R}^n$.

Sous l'hypothèse H, on sait que les propriétés M et N sont équivalentes. Gunawardena et Keane ont proposé d'appeler ``topicales'' les applications qui vérifient ces trois propriétés dont l'importance est bien connue [Nus90,MT80].

On peut dire que H, N sont le minimum vital pour faire une théorie de Perron-Frobenius, la propriété H donne du sens au problème spectral $f(x)=\lambda +x$,la propriété N garantit que la limite $\chi(f)=\lim_{k\to\infty} f^k(x)/k$, lorsqu'elle existe, est indépendante du point de départ $x\in \mathbb {R}^n$.

On essaie donc dans ce cadre de généraliser la théorie de Perron-Frobenius, et de comprendre géométriquement les asymptotiques des itérées de f (qui donnent par exemple, les performances asymptotiques de systèmes à événements discrets : ateliers, circuits digitaux; la quantité X(f) donne alors l'inverse du taux de production, ou le temps de cycle).

Ressources partagées, empilements de tâches et automates max-plus.

Un système à ressources partagées peut être vu comme un empilement de tâches (représentées par les contraintes temporelles imposées sur les ressources par ces tâches) du type jeu de Tetris.

Dans l'espace temps-ressource R x R avec R = 1, ..., n. Une tâche a est une classe d'équivalence de formes géométriques (deux formes sont équivalentes si elles sont superposables par une translation temporelle). D'un point de vue physique, une tâche mobilise des ressources de façon synchronisée. Elle peut être retardée ou avancée. La tâche a utilise les ressources R(a). Une tâche en position $\lambda$ immobilise la ressource r à la date $d_r(a) + \lambda$et la libère à la date $f_r(a) + \lambda$. d(a),f(a) : R(a) $\rightarrow$R sont donnés.

Un travail w est un ensemble ordonné de tâches à accomplir $w=a_{1}\cdots a_{k}$. On peut alors vouloir calculer les instants de libération des ressources au plus tôt x(w) pour un travail w donné, sachant que les ressources étaient disponibles au départ aux instants g (g : R $\rightarrow$ R). Cela correspond au calcul du profil haut d'un empilement de pièces si l'on donne une interprétation spatiale à l'axe temporel. Le vecteur g est alors le profil du sol. L'exécution au plus tôt des différentes tâches d'un travail w revient à laisser tomber les pièces $a_1, \ldots, a_k$ sur le sol g, comme dans le jeu de tétris. Ce profil haut se calcule récursivement par la programmation dynamique.  


\begin{equation}\begin{align}x()&= g,\; \\ x(wa)_r&=\max_{s\in R(a)}[f(a)_r-d(... ...R(a)\;,\\ x(wa)_r&=x(w)_r,\; \forall r\not\in R(a) \,.\end{align}\end{equation}




En termes algébriques, à chaque pièce a prise dans un ensemble de pièces T,



on associe la matrice $M(a) \in (\mathbb {R}_{\max})^{\mathcal{R} \times \mathcal{R}}$$M(a)_{r,s} = f(a)_s - d(a)_r$ si $r,s \in R(a)$,et $M(a)_{r,r}={e}$ pour les coefficients diagonaux hors R(a) (les autres coefficients valent $\varepsilon$). On a :  

\begin{equation}x(w) = gM(a_1) \ldots M(a_k),\; y(w)=x(w)e_{\mathcal{R}}\; ,\end{equation}


$e_{\mathcal{R}}$ désigne un vecteur de zéro et donc y(w) représente la date de fin du travail (la hauteur du tas).

Autrement dit, la série génératrice $\bigoplus_{w\in \mathcal{T}^*}y(w) w\in \mathbb {R}_{\max}\langle\langle \Sigma\rangle\rangle$ est reconnue par un automate à coefficients dans le semianneau max-plus. D'après le théorème de Kleene-Schützenberger, c'est une série rationnelle.

Les classiques problèmes d'ordonancement reviennent alors à minimiser la vitesse de croissance du tas par rapport à l'ordre des lettres dans le mot w.Ils se ramènent à l'étude des semigroupes de matrices à plusieurs générateurs $M(a_{1}),\cdots, M(a_{k})$.Ce travail est présenté dans [11].

Vers une approche géométrique des systèmes dynamiques linéaires sur le semianneau (max,+).

La solution du système



\begin{displaymath}x(k) = Ax(k-1) \oplus Bu(k) \; , y(k) = C x(k) \; ,\end{displaymath}



$x(-1)=-\infty $, est donnée par :


\begin{displaymath}y(k) = \bigoplus_{l=0}^{k} CA^{k-l}Bu(l) \;. \end{displaymath}


Dans un atelier, y(k) s'interprète comme la date d'obtention de la k-ième pièce (on suppose, afin d'alléger la notation, que le système a une seule entrée u(k) $\in $ R et une seule sortie y(k) $\in $ R).

Les problème de suivi de trajectoire consiste à rechercher u tel que $y(k)\leq \eta(k)$ , pour $k=0,1,\ldots$ ($\eta$ représente un carnet de commandes à suivre).

Le problème d'atteignabilité en horizon k consiste à rechercher u tel que $x(k)\leq \xi$($\xi$ est un vecteur des dates de disponibilité des ``ressources'' internes, machines, palettes, personnel, etc.).

Ces deux problèmes sont de la forme $F u\leq v$,ou F est un opérateur linéaire. E.g., dans le deuxième cas, $F u=\mathcal{C}_k u_k$, où $\mathcal{C}_k=[B,AB,\ldots,A^{k}B]$et $u_k=[u(k),\ldots,u(0)]^T$. Il n'est pas en général possible de résoudre exactement $F u=v$ pour toute valeur de v, car génériquement, un opérateur linéaire (max,+) n'est ni surjectif ni injectif. Cependant, il est facile de voir que $F u\leq v$ a toujours une solution maximale, $F\backslash v$, donnée en termes matriciels par


\begin{displaymath}(F\backslash v)_i=\inf_{j} (-F_{ji} + v) \; .\end{displaymath}


(il s'agit d'un cas particulier de résiduation [TM72], [5]). On peut ainsi calculer la solution au plus tard satisfaisant le carnet de commande, où l'état atteignable maximal en dessous de $\xi$.En outre, on sait tester l'atteignabilité exacte de $\xi$ en temps k : il suffit de vérifier que légalité $\calc_k(\calc_k\backslash \xi)= \xi$ soit vrai.

La version la plus achevée de ces problèmes d'atteignabilité dans le cas classique a été donnée dans [Won79]. Elle est basée sur une discussion des espaces invariants d'un opérateur linéaire. L'extension de cette théorie au cas max-plus passe par une meilleure compréhension des semi-modules (analogue sur un semianneau des espaces vectoriels). Même lorsque les semimodules sont finiment engendrés, trés peu de choses sont connus. Plusieurs notions d'indépendance existent, conduisant, chacunes, à des notions, distinctes, de rang. De plus un sous semimodule n'a pas toujours de supplémentaire. Ces difficultés sont répertoriés dans la théorie des modules. Cependant, une nouvelle difficulté surgit ici : l'analogue d'un noyau doit être posé dans un espace double $\mathrm{ker}\, C=\{(x,y) \mid Cx=Cy\}$. En effet, dans cette structure tous les termes d'une équation ne peuvent pas être ramenés dans un même membre, puisque, en général, un élément n'a pas d'opposé. Par contre, la résiduation donne des résultats intéressants que nous sommes en train d'explorer [28].

Dualité entre l'optimisation et le calcul des probabilités.

Dans de nombreux domaines (grandes déviations en probabilité, entropie en mécanique statistique et théorie de l'information, dualité filtrage-commande en commande, maximum de vraisemblance en statistique, passage de la mécanique quantique à la mécanique classique, méthode de Hopf pour le calcul explicite d'équation d'Hamilton Jacobi etc.) une dualité entre le calcul des probabilités et l'optimisation est utilisé implicitement.

Dans un certain nombre de travaux relativement récents, cette dualité a été explicité par divers groupes indépendamment [Mas87,Pap95,dTRS90,Qua90,AJV94]. On dispose maintenant d'une théorie trés satisfaisante [2]. Cette dualité, a pour intérêt, en dehors de son caractère esthétique et unifiant, de faire ressortir les dissymétries existantes dans le développement des deux domaines. Le calcul des probabilités contient beaucoup de résultats analytiques et conceptuels. L'optimisation est beaucoup plus développé au niveau algorithmique.

Un problème d'optimisation est souvent présenté comme le calcul de



\begin{displaymath}\inf_{x\in A} c(x)\;,\end{displaymath}


pour des c et des A suffisamment simples pour qu'il existe un x optimal calculable algorithmiquement. Des notions importantes sont apparues, comme la dualité, surtout pour des raisons algorithmiques.

Dans le calcul des probabilités on s'intéresse au calcul de la probabilité d'événements c.a.d.


\begin{displaymath}\int_{A} p(x)dx\end{displaymath}


pour des A et p pouvant être trés compliqués. On appelle P(A) le résultat et on fait la théorie des applications $A\mapsto $P(A). On fait apparaitre toutes sortes de notions intéressantes : moyenne, variance fonction caractéristique, etc. On fait aussi des calculs, mais surtout, dans des cas où il est possible d'obtenir des résultats explicites.

Il suffit d'appeler $C(A)\stackrel{\text{\rm d\'ef}}{=}\inf_{x\in A} c(x)\;,$ pour être dans une situation complètement analogue au calcul des probabilités au remplacement de l'algèbre ordinaire par $\mathbb {R}_{\min}$ prés. Pratiquement tous les concepts des probabilités ont une notion duale, utile en optimisation. Citons en trois. Le dual de la loi Gaussienne $\mathcal{N}_{m,\sigma}$ est la forme quadratique

\begin{displaymath}\mathcal{Q}_{m,\sigma}(x)\stackrel{\text{\rm d\'ef}}{=} \frac{1}{2}(\frac{x-m}{\sigma})^{2}\;.\end{displaymath}


Le dual de la transformée de Laplace est la transformée de Fenchel. Le dual de la convolution des lois est l'inf-convolution des coûts.

A l'opposé, aucun algorithme sérieux n'est donné, pour calculer la probabilité d'un événement un peu compliqué de $\mathbb {R}^n$, exceptée la méthode de Monte-Carlo.

Il existe un moyen systématique de transférer les résultats du calcul des probabilités. C'est l'utilisation de la transformée de Cramer C définie par



\begin{displaymath}\mathcal{C}=\mathcal{F}\circ \log \circ\mathcal{L}\;,\end{displaymath}


L désigne la transformée de Laplace, F la transformée de Fenchel. On a par exemple :


\begin{displaymath}\mathcal{C}(\mathcal{N}_{m,\sigma})=\mathcal{Q}_{m,\sigma}\; .\end{displaymath}


La transformée de Cramer a de nombreuses propriétés. Par exemple, elle transforme les convolutions de mesures en inf-convolutions de coûts convexes. Ses propriétes de continuité pour des topologies adéquates ont été étudiées dans [Aki96]. Elles permettent dans des cas assez restreints (loi log concave) le transfert immédiat des théorèmes asymptotiques du calcul de probabilités à des théorèmes analogues en optimisation.

Page WEB

Des articles et documents didactiques sur le semianneau max-plus sont accessibles à partir du serveur du groupe de travail ``Algèbres Tropicales'' à l'adresse http://amadeus.inria.fr/TROPICAL/.

Commande stochastique



Participant : Agnès Sulem


Mots-clés : commande stochastique, commande singulière, frontière libre, Hamilton-Jacobi-Bellman, inéquation variationnelle


Résumé : La commande stochastique est l'étude des systèmes dynamiques perturbés par des événements aléatoires et que l'on peut commander dans le but d'optimiser un certain critère.


La commande stochastique est l'étude des systèmes dynamiques dont l'état est modélisé par un processus de diffusion (avec sauts éventuellement), sur lequel on peut agir au moyen de variables de commande. La commande peut être continue, singulière ou impulsionnelle. Le but est d'optimiser un critère sur un horizon de gestion fini ou infini ou de type ergodique. La fonction valeur, qui réalise l'optimum du critère satisfait une équation d'Hamilton-Jacobi-Bellman ou une Inéquation variationnelle ou Quasi-Variationnelle elliptique, parabolique ou ergodique, avec des conditions aux limites appropriées selon le comportement du processus au bord du domaine : arrêté, réfléchi, etc...

Soit par exemple un système dont l'état $X_t$ est gouverné par une diffusion stochastique dans un ouvert $\Omega$ :

 \begin{equation}dX_t = b(X_t, u_t) dt + \sigma(X_t, u_t)dW_t, \; \; X_0 = x \end{equation}




$u_t$ est le processus de commande, et $W_t$ un processus de Wiener. On cherche à optimiser un critère par exemple de la forme  

\begin{equation}E \left( \int_0^\tau e^{- \alpha t} f(X_t, u_t)dt\right)\end{equation}




E désigne l'espérance, $\alpha \gt 0$ et r désigne le premier temps de sortie de $X_t$ du domaine $\Omega$.

Notons


\begin{displaymath}V(x) = \sup_{u\in \mathcal{U}} J(x,u)\end{displaymath}



$J(x,u)$ est donnée par ([*]) et U est l'ensemble des commandes admissibles.

La méthode de la Programmation Dynamique conduit à une équation d'Hamilton-Jacobi-Bellman pour la fonction valeur V :

(13)


 où $A^u$ est un opérateur elliptique, pouvant être dégénéré, du 2ème ordre :

 \begin{equation}A^uV(x) = \sum_{i,j=1}^n a_{ij} (x,u) \frac{\partial^2 V}{\part... ...m_{i=1} b_i(x,u) \frac{\partial V}{\partial x_i}(x) - \alpha V(x) \end{equation}




avec $\sum_{i=1}^n a_{ij} (x,u) \eta_i \eta_j \geq 0, \quad \forall x \in \Omega, \; \eta \in \mathbb {R}^n, \; u \in \mathcal{U}$et $a = (a_{ij})_{i,j=1, \ldots, n} = \frac{1}{2} \sigma\sigma^T.$

Dans le cas d'une commande singulière (c'est à dire lorsque le déplacement de l'état du système dû à l'application de la commande est non différentiable par rapport au temps), l'équation de la Programmation Dynamique est une inéquation variationnelle (IV), c'est à dire un système d'inéquations aux dérivées partielles.

La commande peut être également de type impulsionnel, c'est-à-dire que l'état du système subit des sauts à certains instants, les instants d'impulsion et la taille des sauts étant des variables de décision. Dans ce cas, il faut résoudre une Inéquation Quasi-Variationnelle (IQV) pour la fonction valeur. L'étude des IV et IQV sont des problèmes de frontière libre. La théorie des solutions de viscosité fournit un cadre rigoureux pour l'étude des équations de la Programmation Dynamique. L'étude de ces problèmes, théorique et numérique est un sujet de recherche traditionnel du projet et présente de nombreuses applications en mathématiques financières.



Notes:

...rationnelles
Elles sont caractérisés par leurs accroissements ultimement périodiques.



previous up next contents Précédent : Présentation générale et objectifs Remonter : Rapport activite 1997 Suivant : Grands domaines d'application