![]()
Précédent : Fondements scientifiques Remonter :
Fondements scientifiques Suivant :
Commande Stochastique
Mots clés : Algèbre max-plus, Systèmes à événements discrets, Décision markovienne. .
Participants : Marianne Akian, Guy Cohen, Stéphane
Gaubert, Jean-Pierre Quadrat.
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.
Le semianneau max-plus, parfois appelé ``algèbre max-plus'',
et noté
max, est l'ensemble
{ -
}, muni des lois max et +.
Traditionnellement, on note
au lieu de
max (
2
3 = 3), et
au lieu de +
(1
1 = 2). L'élément zéro, c'est-à-dire
le neutre pour la loi
, est noté
(ici
= -
).
L'unité, c'est-à-dire le neutre pour la loi
, est notée e(ici e = 0). Les axiomes
de structure des semianneaux sont ici satisfaits :
est associative, commutative, a un
zéro,
est associative, a une unité,
distribue par rapport à
, et zéro est
absorbant. Le semianneau max-plus est très particulier : il est
commutatif
(a
b = b
a), idempotent
(a
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
et
sont mieux adaptées que max et + aux
réflexes de calcul qui sont liés à l'algèbre ordinaire. Nous
écrirons par exemple :
| ab = a |
||
|
|
||
| (3 |
Le tableau 1 donne
une liste d'autres semianneaux apparentés au semicorps
max-plus.
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é 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
unités de temps après
que la dernière des occurences
(k -
) 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
| x(k) = |
(2) |
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 [[6],[3],[9]].
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.
La modélisation de réseaux de Petri temporisés généraux ne
peut pas se faire dans le semianneau
max ou
min, la multiplication
est indispensable.
On note
l'ensemble des places,
l'ensemble des transitions,
M les multiplicités des arcs, m le marquage
initial,
les temps de séjour. À chaque
place
p
on
associe un compteur
Zp :
,
(Zp(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
,
Zq(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
xin et
xout les ensembles des prédecesseurs et
successeurs d'un noeud x, respectivement):
Dans un fonctionnement au plus tôt, au moins une inégalité de type (4) est saturée (i.e. au moins une place est indisponible) en amont de chaque transition. On a donc:
On peut néanmoins simplifier ce problème en forçant des
routages stationnaires : on notera alors
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
![]()
= 1. En posant,
La modélisation de systèmes à événements discrets plus
généraux peut se faire en remplaçant (1), (6) par des dynamiques
f :
n
nqui
satisfont les trois axiomes :
| Homogénéité | f ( |
= | (H) | |
| Monotonie | x |
f (x) |
(M) | |
| Non-expansivité | | f (x) - f
(y)| |
| x - y| |
(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,CT80].
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) =
+ x, la
propriété N garantit que la limite
(f )=
fk(x)/k,
lorsqu'elle existe, est indépendante du point de départ
x
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é
(f ) donne alors l'inverse du taux de
production, ou le temps de cycle).
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
x
avec
= {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
immobilise la ressource r à la date
dr(a) +
et la
libère à la date
fr(a) +
.
d (a), f (a) : R(a)
sont donnés.
Un travail w est un ensemble ordonné de tâches à
accomplir
w = a1 ...
ak. 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 :
). 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
a1,..., ak sur le sol
g, comme dans le jeu de tétris. Ce profil haut se calcule
récursivement par la programmation dynamique.
|
En termes algébriques, à chaque pièce a prise dans un
ensemble de pièces
, on associe la matrice
M(a)
(
max)
x
M(a)r, s = f
(a)s - d (a)r si
r, s
R(a), et
M(a)r, r = e pour les
coefficients diagonaux hors R(a)(les autres
coefficients valent
). On a :
Autrement dit, la série génératrice
y(w)w
max![]()
![]()
![]()
![]()
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(a1), ... , M(ak). Ce travail est présenté dans [[8]].
La solution du système
Les problème de suivi de trajectoire consiste à rechercher
u tel que
y(k)
(k) , pour
k = 0, 1,... (
représente un carnet de
commandes à suivre). Le problème d'atteignabilité en horizon
k consiste à rechercher u tel que
x(k)
(
est un vecteur des dates de
disponibilité des ``ressources'' internes, machines, palettes,
personnel, etc.).
Ces deux problèmes sont de la forme Fu
v, ou F est un opérateur linéaire. E.g.,
dans le deuxième cas,
Fu =
kuk, où
k = [B,
AB,..., AkB]et
uk = [u(k),...,
u(0)]T. Il n'est pas en général possible de
résoudre exactement Fu = 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
Fu
v a toujours une solution
maximale,
F
v, donnée en termes
matriciels par
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 connues. 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ées dans la théorie des modules. Cependant, une nouvelle difficulté surgit ici : l'analogue d'un noyau doit être posé dans un espace double ker C = {(x, y) | 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 [CGQ97].
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 la résolution explicite d'équations 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ée par divers groupes indépendamment [Mas87,Pap95,dTRS90,Qua90,AQV94]. On dispose maintenant d'une théorie trés satisfaisante [[21]]. 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ée au niveau algorithmique.
Un problème d'optimisation est souvent présenté comme le calcul de
Dans le calcul des probabilités on s'intéresse au calcul de la probabilité d'événements, c.a.d.
Il suffit d'appeler
C(A)![]()
c(x) pour être dans
une situation complètement analogue au calcul des probabilités au
remplacement de l'algèbre ordinaire par
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
m,
est la forme quadratique
A l'opposé, aucun algorithme sérieux n'est donné, pour
calculer la probabilité d'un événement un peu compliqué de
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
définie par
On pourra consulter les pages web http://amadeus.inria.fr/TROPICAL/ pour obtenir des informations supplémentaires.