You are on page 1of 17

http://www.jmct.123.

fr
Ce cours t tlcharg partir de : http://www.jmct.123.fr

- USTHB -

Sommaire
1. Une introduction l'valuation des performances 2. Les chaines de Markov 2.1. Chaine de Markov temps discret 2.2. Chaine de Markov temps continu 3. Rseaux de Petri 3.1. Rseaux de Petri stochastiques 4. Les files d'attente

1. Une introduction l'valuation des performances


L'valuation des performances s'intresse au calcul des paramtres (indices) de performance d'un systme. Ces paramtres dpendent du systme tudi (changent d'un systme l'autre). Les 5 paramtres de performance les plus importants sont (dbit, temps d'attente, le temps de rponse = tmps_attente+tmps_service, nombre moyen d'une entit donn, taux d'utilisation). On peut valuer les performances d'un systme avant sa construction, ou valuer les performances d'un systme existant pour l'amliorer s'il y a une grande diffrence au niveau des performances ; donc lvaluation des performances peut se faire deux niveaux : - En conception : Quand le systme nexiste pas. - En exploitation : Pour modifier ce systme. Lvaluation des performances ce fait en deux tapes, une tape de modlisation et une tape danalyse des performances.

En gros on choisi le modle adquat (chaines de Markov, rseau de ptri stochastique, file d'attente ...), puis on fait une analyse pour calculer les paramtres (indices) de performance, puis on analyse les rsultats, et on recommence si les rsultats obtenus ne sont toujours pas satisfaisant.

Quelques dfinitions :

ShNaYkHs

http://www.jmct.123.fr

- USTHB -

La modlisation : Une modlisation dans notre cas est une abstraction mathmatique dun systme rel, donc on reprsente un systme rel par un modle mathmatique. Il est clair que quand on a un modle dtaill, on aura des rsultats prcis, mais il y aura quand mme une difficult lanalys. Et pour un model moins dtaill on aura des rsultats pas trs exacte mais lanalyse sera plus facile. Lanalyse : On distingue deux types danalyse : Analyse qualitative qui permet la vrification dune manire prcise des proprits comportemental et structurel du systme telle que le non blocage, vivacit etc. Analyse quantitative qui sintresse au calcul des indices de performance ; pour cela on distingue deux famille de mthodes danalyse quantitative : Par simulation, Par mthodes analytique. Remarque : Rseau de ptri ==> Analyse qualitative. Chaines de Markov et Les files dattente ==> Analyse quantitative. Rseau de ptri stochastique ==> Analyse qualitative et quantitative. La simulation : La simulation consiste reproduire lvolution du model pas pas en tudiant une ralisation particulire de celui-ci ; ainsi elle conduit raliser des expriences sur le model. Les langages de simulation : on peut utiliser les langages universelle (C++, Java ) ou bien des langages spcifique (GPSS, Simula, sinscript) et pour les systmes de rseaux et tlcoms (Glomosim, NS). Les mthodes analytiques : Permettent le calcul des indices de performance de faon mathmatique en rsolvant des quations. Comparaison entre la simulation et les mthodes analytiques : Simulation Rsultats approximatif Appliqu aux systmes complexes Gourmande en temps de calcul Mthodes Analytiques Rsultats exacte si possible Pas toujours Peut couteuse en temps de calcul

Les rsultats avec les formules analytiques ne sont pas toujours existants, mais sils existent a sera exact, contrairement la simulation qui donne des rsultats approximative.

2. Les chaines de Markov


Rappelle sur les variables alatoires :
On appelle variable alatoire, une application x x: E x() E est appeler lpacte dtat de X.

ShNaYkHs

http://www.jmct.123.fr

- USTHB -

Par exemple pour la lancer dun d, on peut soit avoir le nombre 1 ou 2 ou 3 ou ou 6, donc : = {1, 2, 3, 4, 5, 6} Si par exemple on dit quun lanceur de d gagne 1 DA (+1) si il obtient un chiffre inferieur ou gal 3, et perd 1 DA (-1) sil obtient un chiffre suprieur 3 alors il y a une variable alatoire : -1 si =< 3 x() = +1 sinon Donc E = {-1, 1} La variable alatoire peut tre discrte (si E est dnombrable c..d. E est un ensemble dentiers) ou continue (si E nest pas dnombrable c..d. E est un ensemble de rels). x discrte ===> E Z x continue ===> E R (un intervalle par exemple)

Processus stochastique :
Un processus stochastique est une famille de variables alatoires dfini sur le mme espace de probabilit, prenant des valeurs dans lespace dtats E et indexe par le paramtre tT o T est lensemble des temps. x(t), tT En dautres thermes, un processus stochastique reprsente une volution dans le temps d'une variable alatoire. T et E peuvent tre discrets ou continue, on peut donc avoir 4 combinaisons : T discret et E discret ; T discret et E continue ; T continue et E continue ; T continue et E discret.

2.1. Chaine de Markov temps discret


Une chaine de Markov temps discret est tout simplement un processus espace dtats discret (E est un ensemble dentiers) et temps discret (T est un ensemble dentiers) ; avec cette dfinition : P [ xn=j / xn-1=in-1, , x0=i0 ] = P [ xn=j / xn-1=in-1 ]. O xn reprsente ltat du systme linstant n. a se lit: la probabilit de xn=j sachant que (xn-1=in-1, xn-2=in-2, , x0=i0) est exactement la mme que la probabilit de xn=j sachant que (xn-1=in-1). Cette formule veut dire que ltat actuel du systme dpend de ltat prcdent seulement ! On ne prend pas en compte lhistorique du pass. Cest ce quon appelle la proprit de perte de mmoire. Ou on peut dire que la prdiction du futur partir du prsent ne ncessite pas la connaissance du pass. Ainsi, les chaines de Markov sont des processus stochastique qui vrifient la proprit Markovienne (proprit de perte de mmoire).

ShNaYkHs

http://www.jmct.123.fr

- USTHB -

Nous nous intressons ici particulirement aux chaines de Markov homognes o les probabilits ne dpendent pas de n, ainsi : Pij = P [ xn=j / xn-1=i ] Pij est la probabilit de la transitivit de ltat i ltat j (quand on passe ou transite de ltat i ltat j). On remarque que dans la formule plus haut, i nest pas crit en fonction de n (i et non pas in-1), ce qui veux dire que mon systme passe dun tat 4 5 ou de 5 6 ou de 6 7 de la mme manire, c'est-dire qu tout moment je vais transiter de la mme manire. Il faut savoir que pour tout i : jZ Pij = 1 C'est--dire que pour tout i, la somme des Pij (jZ) est gale 1. Exemple : Si on suppose que la probabilit pour quun tudiant passe de la 1ere anne (tat 1) la 2eme anne (tat 2) est de 0,7 et que la probabilit pour quil reste en 1ere anne est de 0,3. Alors : Notre espace dtats est E = {1, 2} (il n y a que ltat 1 et ltat 2). La probabilit pour transiter de ltat 1 ltat 2 est P12 = 0,7 La probabilit pour transiter de ltat 1 ltat 1 est P11 = 0,3 Pour i=1 on a Pij = P11 + P12 = 1 On peut reprsenter a par le graphe suivant :

Ce graphe orient reprsente tout simplement une chaine de Markov temps discret. P.S. Je dis orient car la probabilit de la transition de i j nest pas forcment la mme que celle de j i. Une chaine de Markov temps discret peut tre reprsente de deux faons :

ShNaYkHs

http://www.jmct.123.fr
-

- USTHB -

Par un graphe orient : comme dans lexemple prcdent. On associe chaque tat un nud, et chaque transition de i j un arc orient pondr (cd il a un poids) par la probabilit de transition. Par une matrice des probabilits de transition : qui est une matrice carr dordre fini "n" ou infini (n=|E|, c'est--dire lordre de la matrice est le nombre dlments de lespace dtats E). Les lments de matrice correspondent aux probabilits de transition entre tats.

P11 P12 P13 P P21 P22 P23 .. La somme des lments (les probabilits) de chaque ligne est gale 1. (Pour tout i : jZ Pij = 1).

La distribution de ltat initial :


Chaque systme a un tat initial. Ltat initial dun systme est dfini par le vecteur de probabilits : (0) = [(0)0, (0)1, ] ; (0)i = P [ x0=i ] Le systme se trouve linstant initial ltat i. Exemple 1 : Soit un processeur. On a : 0 si le processeur est en bonne tat linstant n. xn = 1 si le processeur est en panne linstant n. La probabilit pour que le processeur tombe en panne, sachant quil t la veille en bonne tat, est de 50%. La probabilit de rparation du processeur est de 20%. 1) Par quoi ce systme peut tre modlis ? 2) Donnez lespace dtats E. 3) La reprsentation graphique et matricielle. 4) Donnez les distributions possibles pour ltat initial. Donc, pour la question 1, on peut utiliser le modle de chaine de Markov temps discret, car T est discret (instant n) et lensemble des tats possibles E est discret (soit 0 soit 1). E = {0, 1}. La reprsentation graphique:

La probabilit pour que le processeur tombe en panne est P01 = 0,5 et donc la probabilit pour quil reste en bonne tat est de P00 = 0,5, parce que P00+P01 = 0,5+0,5 = 1. La probabilit de rparation du processeur est de P10 = 0,2 et donc la probabilit pour quil reste en panne est de P11 = 0,8 parce que P10+P11 = 0,2+0,8 = 1. La reprsentation matricielle: 0,5 0,5 P 0,2 0,8

ShNaYkHs

http://www.jmct.123.fr
Et les distributions possibles pour ltat initial sont : (0) = [(0)0, (0)1] = [0, 1] ou [1, 0]

- USTHB -

Analyse transitoire :
Lanalyse dune chaine de Markov au rgime transitoire consiste dterminer le vecteur des probabilits dtats : (n) = { (n)i ; iE } o (n)i= P[ xn = i ]. (n)I est la probabilit pour que le systme soit ltat i linstant n. (n) = (n-1) . P = (n-2) . P2 = = (0) . Pn Suite de lexemple prcdent : Calculez le vecteur des probabilits dtats de lexemple prcdent. 1er scnario : le processeur en bon tat linstant initial n=0, donc (0)= [1, 0] : On a : (1) = (0) . P = [1, 0] 0,5 0,5 = | 0,5 0,5 | 0,2 0,8 etc, on aura donc : N (n)0 (n)1 0 1 0 1 0,5 0,5 2 0,35 0,65 3 4

2eme scnario : le processeur en panne linstant initial n=0, donc o (0)= [0, 1] : N (n)0 (n)1 0 0 1 1 2 3 4

En va voir qu un moment donn, le systme va se stabilis (tat dquilibre), on appelle a le rgime stationnaire. Remarque : Lvolution de distribution (n) dpend de la distribution initiale.

Analyse stationnaire :
Lorsque le systme aura fonctionn suffisamment longtemps (n-->+), il atteint le rgime stationnaire (un tat dquilibre). Le rgime stationnaire nest pas atteint par tout les systmes, il y a des systmes qui natteindront jamais ltat stationnaire (et dans ce cas soit y a un problme quelque part dans le systme, soit le systme en question dpend dautre facteurs qui changent chaque fois).

Dfinition :
Une chaine de Markov temps discret est irrductible ssi de tout tat i on peut atteindre tout tat j (en un nombre fini dtapes). \-/ i,j E : il existe m>1 tq Pij(m) 0. Dans lexemple 1, il y a deux tats. De ltat 0 on peut atteindre ltat 1, et de ltat 1 on peut atteindre ltat 0. Donc la chaine de Markov temps discret de lexemple 1 est irrductible.

ShNaYkHs

http://www.jmct.123.fr
Exemple 2 :

- USTHB -

La chaine de Markov de cet exemple nest pas irrductible, car par exemple de ltat 4 on ne peut pas atteindre ltat 7. Ou alors de ltat 6 on ne peut pas atteindre ltat 1

Dfinition :
La priodicit (priode) dun tat j est : D(j) = PGCD { k>=1 / P(k)jj > 0 } C'est--dire que cest le PGCD des longueurs des circuits allant de j j. Par exemple dans lexemple prcdent (exemple 2), on a : D(4) = PGCD {2, 3} = 1 D(6) = 2 La priode dune chaine de Markov temps discret est gale au PGCD de toutes les priodes. D(CMTD) = PGCD { D(i) / iE }. On a : D(4) = 1, donc ltat 4 est apriodique. D(6) > 1, donc ltat 6 est priodique. Une chaine de Markov temps discret est priodique si sa priode est suprieure 1. D(CMTD) > 1 ==> CMTD priodique. D(CMTD) = 1 ==> CMTD apriodique. La CMTD de lexemple prcdent est apriodique car D(CMTD) = PGCD { D(i) / iE } = 1 car il y a D(4) = 1 donc le PGCD de toutes les priodes des tats est gal 1.

Proprit :
Une CMTD fini apriodique et irrductible, est ergodique (c'est--dire que cest un systme qui se stabilise linfini). Lexemple prcdent (exemple 2) nest pas ergodique par ce quil nest pas irrductible.

Dfinition :
Une chaine de Markov admet une distribution stationnaire ssi elle est ergodique. La distribution peut tre calcule en rsolvant le systme dquations suivant : .P = iE i = 1 Remarque : par dfinition : = limn->+ (n)

ShNaYkHs

http://www.jmct.123.fr

- USTHB -

Exercice : Vrifiez lergodicit de lexemple 1 et calculez tout les tats stationnaire, si ltat stationnaire existe calculez sa distribution.

2.2. Chaine de Markov temps continue


Une chaine de Markov temps continue est un processus stochastique espace dtats discret (E) et temps (T) continue. {x(t)}t>=0 P [ x(tn)=j / x(tn-1)=in-1, , x(t0)=i0 ] = P [ x(tn)=j / x(tn-1)=in-1 ]. Une chaine de Markov temps continue permet de modliser des temps (pas des instants). Une chaine de Markov temps continue est caractrise par les transitions dun tat un autre qui sont probabilistes, dcrit par un taux de transition. Le temps pass dans un tat i est une variable alatoire distribu exponentiellement avec le taux Ui On peut dcrire une MCTC par : 1- Un diagramme de transition : cest un graphe orient et libell, dont les sommets correspondent aux tats de la chaine, et les arcs sont tiquets par les taux de la distribution exponentiel. Remarque : dans cette reprsentation graphique dune CMTC, on ne trouve pas de boucle. On ignore les boucles quand on parle de CMTC. 2- Une matrice Q : une chaine de Markov temps continue on associe une matrice Q, appele gnrateur infinitsimal, tel que :

Chaque lment qij de la matrice reprsente le taux de transition de ltat i ltat j.

Si i j alors qij est (Uij). Si i = j alors qij est - (la somme de tout les autre lments de la ligne i").

Donc la somme des lments de chaque ligne de cette matrice doit tre gale 0. En dautre terme, on peut exprimer les lments qij de la matrice infinitsimale Q, comme suite : Uij lorsque i j qij =

- h=1,hi qih

lorsque i = j (cest--dire sur la diagonale)

Exemple : Considrons le processus stochastique modlisant ltat dune porte (ouverte ou ferm). 0 si ferm x(t) = 1 si ouvert

ShNaYkHs

http://www.jmct.123.fr

- USTHB -

Nous considrons que les priodes de temps durant lesquels la porte est ferme ou ouverte sont distribues exponentiellement avec le paramtre ou (respectivement pour ferme ou ouverte). Donc notre ensemble dtat E = {0, 1} On peut reprsenter cette CMTC par le graphe des taux de transition suivant : De 0 1 on a le taux , donc reprsente le taux douverture (car on a dit que les priodes de temps durant lesquels la porte est ferme sont distribues exponentiellement avec le paramtre ). De 1 0 on a le taux , donc reprsente le taux de fermeture (car on a dit que les priodes de temps durant lesquels la porte est ouverte sont distribues exponentiellement avec le paramtre ). Et notre matrice infinitsimale est : - Q= -

Dfinition :
La loi exponentiel permet gnralement de Modliser des temps (et pas des instants) dont la valeur nest pas constante. La loi exponentielle de paramtre est une variable alatoire continue T valeurs positives, dfinie par sa densit de probabilit, comme suite : , t >= 0 (t) = 0 , t<0 La moyenne dune loi exponentielle de paramtre est 1/. Par exemple, lutilisation dune machine peut tre dcrite par une variable alatoire distribue exponentiellement de taux (le temps dutilisation en moyenne de la machine est 1/ ). Comme pour les CMTD (Chaine de Markov Temps Discret), il existe aussi pour les CMTC un tat transitoire et un tat stationnaire. Nous nallons pas voir ltat transitoire dans la suite de ce cours. Proprit : Une CMTC fini et irrductible est ergodique (c'est--dire quelle admet une distribution stationnaire). Remarquez ici quon nas pas dit quelle est apriodique pour tre ergodique ! Prcdemment dans les CMTD on avait dit que pour quune CMTD soit ergodique il faut quelle soit fini, irrductible et apriodique. Mais ici pour les CMTC la notion de priodicit nexiste pas, donc on dit que si une CMTC fini est irrductible alors elle est ergodique. Dans une CMTC ergodique, le vecteur des probabilits stationnaire existe et est unique, on peut lobtenir en rsolvant le systme dquations suivant : Q = 0 i = 1

Lquation dtat :
ltat stationnaire, pour tout tat i, le flux sortant de i gal le flux entrant dans i.

ShNaYkHs

http://www.jmct.123.fr
Exemple : Reprenons lexemple prcdant de la porte (ouverte ou ferm). 0 si ferm x(t) = 1 si ouvert

- USTHB -

Cette CMTC est fini car la cardinalit de E est 2 (E={0, 1} fini) et elle est irrductible car de tout tat i on peut atteindre tout autre tat j (i j), cest--dire de ltat 0 on peut atteindre ltat 1, et de 1 on peut atteindre 0. Puisque cette CMTC est fini et irrductible, elle est donc ergodique (elle atteint ltat stationnaire lorsque t--> , c'est--dire pour un t trs grand). Pour trouv le vecteur de probabilits stationnaire , on rsous le systme dquation (*) suivant : Q = 0 .. (*) i = 1 Q =0 Donc : [- 0 + 1, 0 - 1] = 0 (*) 0 + 1 = 1 - 0 + 1 = 0 0 - 1 = 0 0 + 1 = 1 1 = 0 0 + 1 = 1 [0, 1] Q = 0 [- 0 + 1, 0 - 1] = 0.

0 = /+. 1 = /+. Donc le vecteur de probabilits de stationnaire est : = [0, 1] = [/+, /+] = 1/+ [u, ]. Note : Le flux sortant de ltat 1 est : 1 Le flux sortant de ltat 0 est : 0 Le flux entrant dans ltat 1 est : 0 Le flux entrant dans ltat 0 est : 1 Selon lquation dtat : ltat stationnaire, pour tout tat i, le flux sortant de i gal le flux entrant dans i. Donc : flux sortant de ltat 1 = flux entrant dans ltat 1 1 = 0 flux sortant de ltat 0 = flux entrant dans ltat 0 0 = 1 Remarque : Lorsquon a vu les chaines de Markov temps discret, on avais vu quil y a un tat transitoire et un tat stationnaire ; Cest la mme chose pour les chaines de Markov temps continu, il y a un tat transitoire du systme (quon ne verra pas dans ce cours) et ya un tat stationnaire du systme (quon vient de voir pus haut).

ShNaYkHs

10

http://www.jmct.123.fr

- USTHB -

Que a soit pour les CMTD ou pour les CMTC, ltat transitoire dpend de ltat initial, (ltat initial a un influence sur le transitoire, il faut connaitre ltat initial du systme). Mais on peut remarquer que ltat stationnaire ne dpend pas de ltat initial (on le calcule on rsolvant un systme dquations).

Quelques rgles importantes :


On va voir ici quelques rgles de calcul dindices de performance, en prenant comme exemple, lexemple prcdent (de la porte) : 1. La proportion de temps durant laquelle la porte est dans ltat i (cest une probabilit) : o La proportion de temps durant laquelle la porte est ferme (tat 0): Cest 0 quon a calcul prcdemment. o La proportion de temps durant laquelle la porte est ouverte (tat 1): Cest 1 quon a calcul prcdemment. 2. Le temps moyen entre deux instants conscutifs, o la porte est ouverte (tat 1) : Cest : ( = Et puisque flux_soratant_de_1 = flux_entrant_dans_1 donc cest : = (D quil sagi de calculer le temps moyen entre deux instants conscutifs dune chose, il faut penser faire comme a). 3. La probabilit pour que la porte soit ouverte (ou fermer) : o La probabilit douverture de la porte (probabilit de pass de ltat 0 ltat 1) est : Proba(ouvert) = o = P01 La probabilit de fermeture de la porte (probabilit de pass de ltat 1 ltat 0) est : Proba(ferm) = = P10

En effet, on peut facilement pass dun graphe qui reprsente une CMTC avec des taux de transition, un graphe qui reprsente une CMTD avec des probabilits de transition.

CMCT

CMTD incluse

3. Rseaux de Perti
Les chaines de Markov quon a vu plus prcdemment permettent de faire une analyse quantitative sur un systme. Nous allons voir maintenant un modle de plus haut niveau qui est les rseaux de Petri , a va nous permettre dans un 1er temps de faire une analyse qualitative, puis on verra les rseaux de Petri stochastique . Donc on commencera par comprendre ce que cest quun rseau de Petri, comment faire une analyse qualitative et on passera aux rseaux de Petri stochastique pour avoir un modle avec lequel on peut faire la fois une analyse qualitative et quantitative. Remarque : Il y a une possibilit (qui peut tre intressante parfois) de passer du modle de chaines de Markov au modle de rseaux de Perti .

ShNaYkHs

11

http://www.jmct.123.fr Dfinition :
Un rseau de Petri est dfini par le tuple (P, T, Pr, Post, M0). -

- USTHB -

P : cest un ensemble quon appelle "ensemble de places", qui contient des lments (pi) qui vont modliser les ressources utilis dans notre systme. T : cest un ensemble quon appelle "ensemble de transitions", qui contient des lments (ti) qui vont modliser les actions sur les ressources. Pr : Pr(p,t) est une valeur ( 0) associe larc allant de la place p la transition t. Post : Post(p,t) est une valeur ( 0) associe larc allant de la transition t la place p. (le sens inverse du Pr). M0 : Cest un vecteur qui dfini ltat initial du systme. On lappelle le marquage initial. Chaque lment de ce vecteur reprsente le nombre de jetons dans chaque place.

Exemple : Si on prend lexemple simple: P = { P1, P2, P3 }. O : P1 reprsente la ressource "fichiers", P2 reprsente la ressource "Imprimantes" et P3 reprsente "fichiers en cours dimpression". On peut reprsenter a par un petit rseau de Petri, simplifi :

A ltat initial reprsent sur ce rseau de Petri : P1 contient 5 jetons (5 fichiers), P2 contient 2 jetons (2 imprimantes), P3 ne contient aucun jeton. Pr(p1,t) = 1 car on nas pas prcis un poids (une valeur) sur larc allant de p1 t. Pr(p2, t) = 1, Pr(p3, t) = 0, Post(p1,t) = 0, Post(p2,t) = 0, Post(p3,t) = 1. M0 = [M0(p1), M0(p2), M0(p3)] = [5, 2, 0]. Remarque : En cas gnrale, Pr(p, t) reprsente le nombre de ressources de type p consommes par la transition t et Post(p, t) reprsente le nombre de ressources de type p produites suite au tir de la transition t. M(p) indique le marquage de la place p, cest--dire le nombre (entier) de jetons contenus dans p.

A partir du marquage initial, le rseau de Petri peut voluer si les conditions sont vrifies. Par exemple pour notre exemple prcdent, on suppose qu ltat initial on a le marquage M0 = [5, 2, 0], alors aprs le franchissement (tir) de la transition t on utilisera un fichier et une imprimante (car Pr(p1, t) = 1 et Pr(p2, t) = 1) et on aura un fichier au cours dimpression, donc le marquage deviendra M1 = [4, 1, 1] ; puis quand on tir la transition t une autre fois on utilisera un autre fichier avec une autre imprimante et on aura deux impressions en cour, donc M2 = [3, 0, 2] ; puis si on veux encore effectuer un tir de t on ne pourra plus le faire car on na plus de jetons dans p2 ( M2(p2) = 0 ).

ShNaYkHs

12

http://www.jmct.123.fr
M0 = [5, 2, 0]

- USTHB -

M1 = [4, 1, 1]

M2 = [3, 0, 2] Pour le marquage M2, la transition t nest pas tirable car on a M2(p2) = 0 < Pr(p2, t). En cas gnrale on dit que : pour un marquage M, une transition t est tirable ssi pour tout pP, on a M(p) Pr(p, t). La sensibilisation de la transition t pour le marquage M se note M[t> M [t> M` veux dire qu partir du marquage M on peut tirer le tir t, qui va donner le marquage M` Dans notre exemple : M1[t> M2 , M2 nest pas tirable car il existe p2 tell que M2(p2) < Pr(p2, t). M0[t> M1 , Remarque : Les mots tirable, franchissable ou sensibilis veulent dire la mme chose. Matrice des Prs : On reprsente la matrice des Prs par C- o les colonnes reprsentent les transitions et les lignes reprsentent les places, pour notre exemple on a une seule transition (t), et 3 places (p1, p2, p3), et on lit larc dans le sens de p t: t

p1
C = p2 p3
-

1
1 0

Matrice des Posts : On reprsente la matrice des Posts par C+ o les colonnes reprsentent les transitions et les lignes reprsentent les places, pour notre exemple on a une seule transition (t), et 3 places (p1, p2, p3), et on lit larc dans le sens de t p (le contraire des Prs): t 0 0 1

p1
C+ = p2 p3

P.S. C = C+ - COn a dit un peut plus haut que pour un marquage M, une transition t est tirable ssi : pour tout pP, on a M(p) Pr(p, t) t). P, On peut reprsenter cette dernire condition avec une notation matricielle comme suite : M C-(., t) o C-(., t) est un vecteur qui contient les lments de la colonne t de la matrice C-. Par exemple : M1 est tirable car [4, 1, 1] [1, 1, 0] c'est--dire M1 C-(., t). M2 nest pas tirable car [3, 0, 2] nest pas suprieur [1, 1, 0] c'est--dire M2 nest pas suprieur C(., t).

Comment effectuer un Tir dune transition :


Le tir dune transition t sur un marquage M conduit un nouveau marquage M` dfini par : p P, M`(p) = M(p) Pr(p, t) Post(p, t). Ou alors en notation matricielle : M` = M C-(.,t) C (.,t) = M C(.,t).

ShNaYkHs

13

http://www.jmct.123.fr

- USTHB -

Exemple : M1 = M0 - C-(.,t) C (.,t) = [5, 2, 0] - [1, 1, 0] + [0, 0, 1] = [4, 1, 1]. M0 donne M1 aprs le tir de t.

Graphe de marquages accessibles (GMA):


Un marquage accessible veux dire quon peut latteindre partir du marquage initial, soit directement (avec un seul tir) soit indirectement (avec plusieurs tirs). On appelle A lensemble des marquages accessibles dun rseau de Petri. Pour notre exemple : A = {M0, M1, M2}. Le graphe des marquages accessibles est donc :

Rcapitulation : On va prendre un autre petit exemple pour rcapituler : On considre un systme producteur/consommateur dans lequel le tampon contient au maximum 4 produits. Le rseau de Petri correspondant sera le suivant :

T = {t1, t2} 1 0 0 1 0 1 1 0 1 0 0 1 1 0 0 1

C- = Pr =

C+ = Post =

ShNaYkHs

14

http://www.jmct.123.fr
M0 = [1, 1, 0, 4]. C = C + - C- = 0 0 0 0 1 -1 -1 1

- USTHB -

On peut avoir les autres marquages accessibles, exemple : M0 [t1> M1 car [1, 1, 0, 4] [1, 0, 0, 1]. Donc: M1 = M0 + C(.,t1) = [1, 1, 0, 4] + [0, 0, 1, -1] = [1, 1, 1, 3]. Etc Le graphe des marquages accessibles :

Le vecteur doccurrence et lquation de changement dtat :


Soit une squence de transitions ( T*). est un vecteur appel le vecteur doccurrences, o chaque lment (t) de ce vecteur reprsente le nombre doccurrences de t dans . Par exemple, si on a un graphe contenant les transitions t1, t2 et t3 comme suite : T* = {t1, t2, t3} Si on prend la squence de transitions : = t1 t2 t1 Alors le vecteur doccurrences = [ (t1), (t2), (t3)] = [2, 1, 0] Car chaque (ti) de ce vecteur reprsente le nombre doccurrences de ti dans la squence (ici = t1 t2 t1). A partir dun tat (marquage) M, on peut tirer une squence de transitions et on trouve le marquage M` Lquation de changement dtat est alors donne comme suite : M`. M` = M + C.

ShNaYkHs

15

http://www.jmct.123.fr

- USTHB -

Nous avons dit au dbut pour les rseaux de Petri, que a va nous permettre dans un 1er temps de faire une analyse qualitative, et bien nous allons voir (ou dfinir) quelques proprits qualitatives comportementales quon peut vrifier en se basant sur le graphe des marquages accessibles. Bornitude : On dit sur une place p quelle est k-borne si : M, M(p) k Donc pour tout marquage M on cherche la plus grande valeur de M(p). Par exemple dans lexemple de la rcapitulation plus haut, pour le marquage p1 : Dans M0 on a M0(p1) = 1 Dans M1 on a M1(p1) = 1 Dans M2 on a M2(p1) = 1 Dans M3 on a M3(p1) = 1 Dans M4 on a M4(p1) = 1 La plus grande valeur entre ces valeurs est 1, donc la place p1 est 1-borne (k=1 est la borne de p1). La place p4 par exemple est 4-borne. On dit que le rseau de Petri est born sil existe une valeur k pour laquelle toute place de tout marquage a un M(p) k. Cest--dire: M, p, M(p) k. En dautres termes, la borne du rseau est la plus grande M(p) quon peut voir sur le graphe des marquages accessible ( M et p). Pour que le rseau soit borne il faut que son ensemble de marquages accessibles A soit fini (il nas pas une infinit de marquages accessibles). Si on a un A infini alors notre rseau nest pas born (il nas pas de borne vu quil est infini). Pseudo-vivacit : Le rseau de Petri est pseudo-vivant si : M, t telle-que M[t> C'est--dire que pour tout marquage il existe au moins une transition tirable partir de ce marquage. En dautres termes on peut dire que dans le GMA il y a au moins un arc (transition) sortant de chaque tat (marquage), ou alors on peut aussi dire que si tout marquage du GMA a un successeur alors ce rseau est pseudo-vivant. Donc un rseau pseudo-vivant nas pas de marquage puits (sachant quun marquage puits ou mort est un marquage sans transition tirable, un marquage partir duquel on ne peut pas tirer une transition). Donc sil y a un marquage a partir duquel on ne peut pas tirer une transition, alors notre rseau nest pas pseudo-vivant. Quasi-vivacit : Un rseau est quasi-vivant si : t, M telle-que M[t> C'est--dire pour que le rseau soit quasi-vivant, il faut que pour toute transition il existe au moins un marquage partir duquel on peut tirer cette transition. En dautres termes on peut dire que le rseau est quasi-vivant si toutes les transitions quil peut y avoir pour ce rseau apparaissent dans le graphe des marquages accessible, c'est--dire quil faut que toute transition existante reprsente un arc dans le GMA. Sil y a une transition quon ne peut tirer partir daucun marquage alors le rseau nest pas quasivivant. Ainsi la quasi-vivacit dsigne la possibilit de franchir au moins une fois chaque transition.

ShNaYkHs

16

http://www.jmct.123.fr

- USTHB -

Vivacit : On dit que le rseau de Petri est vivant sil est pseudo-vivant et quasi-vivant. Rseau sans blocage : Un rseau de Petri est dit sans blocage sil nas pas de marquage puits (mort). Etat daccueil : Un rseau de Petri admet un tat daccueil Ma si : MA, T* telle-que M[ >Ma C'est--dire quun marquage est dite marquage daccueil (Ma) si on peut lui accder partir de nimporte quel autre marquage M via une squence de transitions . Un tat daccueil est accessible quelque soit lvolution du rseau. Si le marquage initial (M0) est un marquage daccueil alors on peut dire que le systme modlis par ce rseau peut se rinitialiser tout seul (systme rinitialisable).

Conservation : Un rseau de Petri est conservatif si : MA, M0(pi) = M(pi) C'est--dire que le rseau de Petri est dit conservatif si la somme des lments du vecteur marquage initial est gale la somme des lments de tout autre marquage M. Exemple : M0 = [5, 8, 3] , M1 = [4, 6, 6] , M2 = [3, 7, 6] ,

5+8+3 = 16 4+6+6 = 16 3+7+6 = 16

==> donc le rseau de Petri est conservatif

Rseaux de Petri stochastiques


To be continued Dernire modification, le 18/12/2008

ShNaYkHs

17

You might also like