• Aucun résultat trouvé

STRUCTURE GENERIQUE DES SDH ET AUTOMATE HYBRIDE

III. 3. Les automates hybrides :

Les exemples informels présentés dans le chapitre précédent (§II.3.1, §II.3.2 et §II.3.3) et les aspects discutés jusqu'ici, nous permettent de constater que pour développer une approche d'analyse et de synthèse de commande pour les systèmes hybrides, il faut disposer d'outils de modélisation permettant de représenter l'interaction entre les dynamiques continues et discrètes, ainsi que les spécifications relatives au fonctionnement désiré du système. De plus,

marche

1( ) x f x

arrêt

2( ) x f x x=M

x=m

SI

x[m,M] x[m,M]

Figure III.3 Modèle du thermostat avec les spécifications de fonctionnement.

le modèle doit permettre de prendre en compte des comportements non déterministes. De tels comportements peuvent être dus à des incertitudes dans l'évolution continue et discrète du système lors de l'occurrence des événements incontrôlables ou au manque de précision dans la connaissance du système.

Traditionnellement, les dynamiques continues sont modélisées par des équations différentielles (ou aux différences) et les dynamiques discrètes sont souvent modélisées et analysées par des automates discrets.

L'automate hybride combine ces deux modèles et fournit un formalisme possédant les aspects cités précédemment. Dans un automate hybride, les dynamiques continues sont modélisées par des équations différentielles associées aux sommets et l'évolution discrète par le franchissement des transitions entre ces sommets.

III. 3. 1. Définition informelle :

L’automate hybride est une extension de l’automate discret en associant une évolution continue à chaque état discret. La composante continue est décrite par un ensemble d’équations différentielles et la composante discrète par un automate à états fini. Un automate hybride évolue par une alternance de pas continus où les variables d’état et le temps évoluent de façon continue, et de pas discrets où plusieurs transitions discrètes et instantanées peuvent être franchies. Ainsi, l'automate hybride apparaît comme un système état-transition (Q, E) étendu avec un ensemble X des variables continues, comme présente la figure III.4.

L'ensemble finiQ est composé par des sommets représentant l'état discret du système où les évolutions continues ont lieu. L'ensemble finiEest composé par des arcs orientés modélisant les transitions discrètes qui relient les sommets du graphe. Tout arc orienté doit avoir un sommet destination[25].

i( )

x f x x fn( )x

Figure III.4 Schéma illustratif d’un automate hybride.

Sommet i Sommet n

1( ) x f x Sommet1

L’ensembleQ des sommets

L’ensembleE des arcs orientés

Chapitre III Structure générique des SDH et Automate Hybride

42 Définition III. 2 :

Un sommet avec un arc d'entrée sans sommet source représente un sommet initial. Un sommet avec aucun arc de sortie est appelésommet puitscomme l’indique la figure III.5.

En reprenant la signification d'un sommet interdit, i.e. le sommet du graphe où l'évolution du système ne respecte plus les spécifications de fonctionnement imposées par le cahier de charges, et en prenant en compte la définition formulée ci-dessus, nous pouvons conclure qu’un sommet puits de l'automate hybride modélise un sommet interdit du système.

Graphiquement l’automate hybride est représenté par des sommets(cercles ou ellipses), et des arcs (traits) orientés (figure III.6). Les sommets modélisent l’état continu du système, c-à-d ils contiennent c-à-des conc-à-ditions c-à-de flux telle que les équations différentielles (ou aux différences) sur le vecteur d’étatx(.) de Rn. Une condition sur un ou plusieurs variables d’état x1,..., xn appelée invariant sert à limiter l’évolution de la dynamique continue dans chaque sommet.

Les arcs orientés modélisent les transitions ou la dynamique discrète. A chaque transition on associe un prédicat qui concerne l'état interne du système, appelé garde. Ce prédicat détermine les dates possibles pour le franchissement de la transition. Ainsi, une transition de l'automate hybride peut être franchie à l'instantt si et seulement si sa garde est vérifiée par la valeur des variables d'état continues du système à l'instant de temps considéré.

L'ensemble des variables d'état continues mises à jour lors du franchissement d'une transition est décrit par une affectation.Les initialisations spécifiées par l'affectation peuvent correspondre à des fonctions, calculant la nouvelle valeur de l'état à partir de sa valeur avant le franchissement, plus complexes que la remise à zéro des horloges dans les automates

garde(T2)/Aff(T2) q1

inv(q1) flux(q1)

q2 inv(q2) flux(q2) garde(T1)/Aff(T1)

T1 T2

init(q1)

Figure III.6 Schéma général d’un automate hybride.

Sommet initial

Sommet puits Conditions

initiales

Figure III.5 Sommet initial et sommet puits.

temporisés. Par exemple dans l’exemple de la figure III.7 – qui est un modèle partiel d’un automate hybride – la variable xi sera mise à jour lors du franchissement de la transition Ti à 70% de la valeur dexiavant le franchissement.

En général, tout automate hybride débute son évolution par une initialisation (init) du vecteur d’état.

III. 3. 2. Définition formelle [25] :

Un automate hybride d’ordren(comme illustré par la figure III.6) est défini par :

A= (Q,X,flux,inv,garde,Aff,init) (3.4) Tel que :

- Q = {q1, q2, …, qm} est un ensemble fini des sommets du graphe représentant les états discrets du système modélisé;

- XRn est l’espace d’état continu. L’état continu du système est caractérisé à tout instant par le vecteurx= [x1x2xn]Tdans l’espace EuclidienRn;

- flux(qi) est la fonction qui affecte à chaque sommet une représentation pour l’évolution continue. Durant le séjour dans un sommet qi de l’automate hybride, l’évolution des variables continues est exprimée généralement sous la forme d’une équation d’état flux(qi) : x( )( , , )qi t x u , où xXRn,uURp et:XUX ;

- inv(qi) l’invariant est une fonction qui associe à chaque sommet qiQ une contrainte sur les variable d’état continues x(.). Le système peut séjourner dans un sommet tant que l’invariant du sommet est satisfait ;

- garde(Ti) est une fonction qui associe une condition de franchissement à chaque transition TiE. Cette condition est en général une fonction logique entre prédicats, portant sur les variables xX et/ou ses dérivéesxX . Une transitionTiE ne peut pas être franchie que si la conditiongarde(Ti) est vrai ;

- Aff(Ti) l’affectation est une fonction qui associe à chaque transitionTiEune relation qui permet de mettre à jour la valeur des variables d’état après l’exécution de la transition Ti.

Si ( ) x f x

xi<a/xi:= 0.7 x

Figure III.7 Exemple de l’affectation lors du franchissement d’une transition.

Ti

Chapitre III Structure générique des SDH et Automate Hybride

44

Une affectation est donnée sous la forme de prédicats simples de type xi:=ci|xiXci

est une constante réelle dansX. (et peut être une fonction plus complexe par exemple).

- init est une fonction qui affecte un état initial x0X au sommet initial qinQ. La condition initialeinitest un prédicat surX.

D'une manière intuitive, les sommets de l'automate hybride permettent de différencier les dynamiques continues du système. L'état d'un système hybride est caractérisé à tout instant par la paire (qi,x) représentantl'état globaldu système.

L'évolution dynamique d'un automate hybride commence à partir d'une région initiale R0. Dans chaque sommet, les valeurs des variables changent avec le passage du temps en respectant la fonction de flux continu et l'invariant. Ainsi, l'invariant limite l'espace d'évolution du vecteur d'état dans chaque sommet de l'automate.

Une transition discrèteTiE, entre les sommetsqietqjde l'automate, peut être franchie si la condition garde(Ti) est vraie. L'état résultant du franchissement de la transition est la paire (qi, x’) où x’ représente la valeur du vecteur d'état après l'initialisation par la fonctionAff(Ti).

L'exécution d'une transition ne prend pas de temps, autrement dit, les transitions sont instantanées. Par conséquent, l'écoulement du temps ne se produit que dans les sommets de l'automate.

Nous pouvons conclure qu'un automate hybride évolue par une alternance de pas continus, où les variables continues et le temps évoluent de façon continue, et de pas discrets, où plusieurs transitions discrètes et instantanées peuvent être franchies.

III. 4. Exemples illustratifs :

III. 4. 1. Le thermostat :

Reprenant l'exemple du thermostat (§II.3.1), et en complétant avec les notions de la définition III.3.2, le modèle de l’automate hybride correspondant à l’exemple du thermostat est présenté dans la figure III.8. Les deux états discrets correspondants aux états enmarcheet enarrêtdu système sont modélisés par les sommets du graphe.

La variable continuexmodélise la température et ses dynamiques, associées aux deux états discrets du système, sont données sous la forme d'équations différentielles, et on remarque ainsi l'utilisation de l'invariant pour limiter l'évolution continue du système dans ses états

x=M

marche

1( ) x f x

x M

arrêt

2( ) x f x

x m

x=m

Figure III.8 Automate hybride modélisant l’exemple du thermostat.

discrets. L'état en marche, est représenté par la condition x  M. Les conditions de franchissement, qui déterminent le passage d'un état discret vers l'autre, sont spécifiées par les gardes des transitions. L'utilisation de l'invariant dans les sommets de l'automate limite l'évolution de ses variables continues.

III. 4. 2. Le jeu de billard :

Reprenant l’exemple de la boule de billard.

Ce système est modélisé par les deux variables continues x et y qui sont la position de la boule de billard par rapport à l’axe des abscisses et des ordonnées respectivement. Et modélisé ainsi par les états discrets A,B,Cet D, selon le sens de mouvement de la boule (ce sens de mouvement est représenté par le sens des deux composantes de la vitessevxetvy).

- A: en cas oùvx0 et vy0, dans ce cas :xl yh.

- B: en cas oùvx0 et vy0, dans ce cas :x0yh.

- C: en cas oùvx0 et vy0, dans ce cas :x0y0.

- D: en cas oùvx0 et vy0, dans ce cas :xl y0.

Ces quatre états discrets nous donnent un automate hybride de quatre sommets dans chaque sommet il y a une dynamique continue représentée par deux équations différentielles :

1 2

( ) ( )

i i

x f x

y f x

 

 

(3.5)

Les contraintes sur le variables d’état continues x, y nous permet d’implanter les invariants dans chaque sommet.

Les arcs orientés (va et vient) entre les sommets modélisent la dynamique évènementielle du système avec les gardes (conditions de franchissement) sur chacun des ces arcs.

Sans oublier l’arc d’entrée sans sommet source qui représente l’état initial du système (figure III.10).

l x

x0 y0

h y

Figure III.9 Trajectoire d’une boule de billard

v

x

v

y

v

0

Chapitre III Structure générique des SDH et Automate Hybride

46

III. 5. Sémantique :

La sémantique des automates hybrides est définie en considérant qu'à chaque instant, l'état d'un automate hybride est donné par la paire (q,x) correspondant à l'association d'un état discret du système et d'une valeur du vecteur d'état. Nous présentons la sémantique d'un automate hybride A, en terme de tous les comportements qui peuvent être générés par l'évolution du système modélisé. Dans ce sens, la sémantique d'un système continu, définie par un ensemble d'équations différentielles, est donnée par l'ensemble de toutes ses solutions, notamment de toutes ses trajectoires.

Comme nous venons de le présenter, l'évolution de l'automate hybride est réalisé par :

Une évolution continue de ses variables continues par la progression du temps dans l'état discret courant, en respectant les équations de flux continuflux(qi) associées à cet état.

-Une évolution discrète par l'exécution instantanée d'une transition qui change l'état discret et la valeur du vecteur d'état continu.

L'état global du système, défini par la paire (q,x),change par l'intermédiaire des flux continus (x change en fonction de l'équation de flux continu) ou bien en conséquence au franchissement d'une transition, qui implique ainsi le changement de l'état discret du système.

Plus formellement, une trajectoire d'un automate hybride est définie par la séquence :

q0,0,x0



q1,1,x1



q2,2,x2



qi,i,xi



où iRcorrespond à la durée pendant laquelle l'automate reste dans la situation qi, sa valeur est remise à zéro à chaque commutation, et xi est la fonction vectorielle qui décrit l'évolution de l'état continu pendant cette durée.

l

Figure III.10 Modèle automate hybride du mouvement de la boule

0