Système À Événements Discrets
Système À Événements Discrets
Système À Événements Discrets
Zied ACHOUR
1
I. Types de systèmes
• Systèmes continus
– variables d'état continues et temps continu
• Systèmes échantillonnés
– variables d'état continues et temps discret
• Systèmes discrets
– variables d'état discrètes et temps continu
• Systèmes à événements discrets
– variables d'état discrètes et temps discret
– Cas particulier : le domaine des variables est
{0,1}
2
II. Définitions générales
Système
Ensemble de composants en interaction accomplissant
conjointement une fonction particulière en respectant un
ensemble de contraintes
Evénement
Changement de valeur d’une variable survenant à une date
donnée. 3
II. Définitions générales
Niveau du
stock
a a d a a
t1 t2 t3 t4 t5 Temps
Exemple
le langage L1 = {aabb} n’est pas préfixe-clos
le langage L2 = {ε, a, aa, aab, aabb} est préfixe-clos.
9
III. Outils de modélisation - 2. Langages formels
e. Expressions régulières et langages réguliers
C’est une expression dont les opérandes sont des symboles de Σ, et
les opérateurs sont pris dans l’ensemble {+, ., *}.
Exemple : a + a.b*
Un langage régulier est un langage qui peut être défini par une
expression régulière.
Exemple : soit le langage L sur l’alphabet Σ = {a, b} qui comprend
toutes les chaînes telles que a et b apparaissent alternativement et
telles que a apparaît en premier.
Le langage L = {ε, a, ab, aba, abab, ababa, …}.
(a.b)* . (ε + a) Ou ε + a . (b.a)* . (ε + b)
10
III. Outils de modélisation - 3. Automate
3. Automate
Un automate est une machine à états qui permet de traduire la
relation entrées/sorties d’un SED en utilisant les bases de la
théorie des langages.
a. Définition
g a,g
q2 b
Q :
Σ :
f :
q0 :
Qm: 12
III. Outils de modélisation - 3. Automate
Equivalence d’automate
13
III. Outils de modélisation - 3. Automate
14
III. Outils de modélisation - 3. Automate
Définitions :
Le langage généré par A = (Q, Σ, f, q0, Qm) est
a a
a a a
q0 q1 q0 q1 q2
b b
b
16
III. Outils de modélisation - 3. Automate
d. Produit et composition d’automates
17
III. Outils de modélisation - 3. Automate
• Le Produit synchrone A1 A2
A1 = (Q1, Σ, f1, q01, Qm1)
A2 = (Q2, Σ, f2, q02, Qm2)
f((q1, q2), e) = (f1(q1, e), f2(q2, e)) si f1(q1, e)! et f2(q2, e)!
18
III. Outils de modélisation - 3. Automate
• La composition synchrone A1 A2
A1 = (Q1, Σ1, f1, q01, Qm1)
A2 = (Q2, Σ2, f2, q02, Qm2)
f((q1, q2), e) = (f1(q1, e), f2(q2, e)) si f1(q1, e)! et f2(q2, e)!
f((q1, q2), e) = (f1(q1, e), q2) si f1(q1, e)! et e Σ2
f((q1, q2), e) = (q1, f2(q2, e),) si e Σ1 et f2(q2, e)!
f((q1, q2), e) = non définie sinon
La notation f(q, e)! signifie que l’événement e est tirable à partir de
19
l’état q
III. Outils de modélisation - 3. Automate
20
III. Outils de modélisation - 3. Automate
Exemple 1
Soit une machine sujette à des pannes qui ne doit pas être réparée
qu'au plus une fois.
21
III. Outils de modélisation - 3. Automate
22
III. Outils de modélisation - 3. Automate
Exemple 2
Considérons un système manufacturier composé de deux
machines identiques : M1 et M2, et un stock entre ces deux
machines.
24
III. Outils de modélisation - 3. Automate
Exemple 2
Un modèle automate du système manufacturier est obtenu en
effectuant le composé synchrone des modèles M1 || M2
25
III. Outils de modélisation - 3. Automate
Modèle de la Spécification : Un stock de capacité limitée à 1, situé
entre les 2 machines. Les machines travaillent en série.
Le stock est supposé vide dans son état initial.
26
III. Outils de modélisation - 3. Automate
27
III. Outils de modélisation - 3. Automate
Exemple 3
Prenons l'exemple du chat et de la
souris pouvant se déplacer dans
un labyrinthe de 5 pièces. Le
chat peut évoluer à travers 7
portes (C1 à C7) et la souris à
travers 6 portes (M1 à M6).
29
III. Outils de modélisation - 3. Automate
Machine de Moore
• C’est un automate déterministe dans lequel une sortie peut
prendre des valeurs (associées aux états) dans un ensemble fini de
grandeurs discrètes. La sortie est émise à la fin de la séquence
d’entrée.
31
III. Outils de modélisation - 3. Automate
• Séquences d’entrée possibles :
une personne seule sort : pi pi pe pe
une personne seule entre : pe pe pi pi
remarque : à la sortie, pi pe peuvent être simultanés.
Dans tous les cas, l’ouverture doit se faire sur occurrence de pi
et la fermeture sur occurrence de pe.
Cette séquence peut se réduire à pi pe
(idem pour l’entrée : pe pi)
• Conditions de sécurité :
si une personne est entrée ( pe ), la fermeture ne devra se faire
que si : pi ./pe./pi (soit pi ./pe)
dans le cas d’une sortie, la fermeture doit se faire ssi pe./pi 32
III. Outils de modélisation - 3. Automate
33
III. Outils de modélisation - 3. Automate
Exemple : sas de sécurité d’une banque
• On considère un sas de sécurité de banque dont on veut gérer le
verrouillage et le déverrouillage des portes intérieures et
extérieures (VER INT, VER EXT, DEVER INT et DEVER EXT).
La manœuvre des portes est manuelle.
• Les clients demandent le
déverrouillage des portes par
des boutons poussoirs
(Ap int, Ap ext, …)
3
1
2
35
III. Outils de modélisation - 3. Automate
36
III. Outils de modélisation - 4. RdP
37
III. Outils de modélisation - 4. RdP
38
III. Outils de modélisation - 4. RdP
39
III. Outils de modélisation - 4. RdP
40
III. Outils de modélisation - 4. RdP
41
III. Outils de modélisation - 4. RdP
42
III. Outils de modélisation - 4. RdP
Propriétés des RdP :
• Un RdP est borné pour un marquage initial M0 si toutes ses places sont
bornées ( pour tout marquage accessible le nombre de marques de chaque
place est fini) pour M0.
• Un RdP est sauf pour un marquage initial M0 si pour tout marquage
accessible chaque place contient au plus une marque.
• Un RdP est vivant pour un marquage initial M0 si toutes ses transitions sont
vivantes (quelque soit l’évolution, il subsiste toujours une possibilité de
franchir la transition).
• Un blocage (ou état puit) est un marquage tel qu’aucune transition n ’est
validée.
• Un RdP est dit sans blocage pour un marquage initial M0 si aucun de ses
marquages accessibles n ’est un blocage.
• Un RdP est réinitialisable pour un marquage initial M0 si depuis tout
marquage accessible il existe une séquence conduisant à M0.
R1 est borné, non vivant (deux états de blocage) et non réinitialisable.
R2 est sauf, vivant et réinitialisable. 43
III. Outils de modélisation - 4. RdP
44
III. Outils de modélisation - 4. RdP
45
III. Outils de modélisation - 4. RdP
46
III. Outils de modélisation - 4. RdP
47
III. Outils de modélisation - 4. RdP
48
III. Outils de modélisation - 4. RdP
49
III. Outils de modélisation - 4. RdP
50
III. Outils de modélisation - 4. RdP
Les RdP non autonomes
51
III. Outils de modélisation - 4. RdP
52
III. Outils de modélisation - 4. RdP
Le cas du conflit de franchissement
53
III. Outils de modélisation - 4. RdP
54
III. Outils de modélisation - 4. RdP
Les RdP P-temporisés
55
III. Outils de modélisation - 4. RdP
56
III. Outils de modélisation - 4. RdP
Les RdP T-temporisés
57
III. Outils de modélisation - 4. RdP
58
III. Outils de modélisation - 4. RdP
59
III. Outils de modélisation - 4. RdP
60
III. Outils de modélisation - 4. RdP
III. Outils de modélisation - 4. RdP
III. Outils de modélisation - 4. RdP
• III. Outils de modélisation - 4. RdP
Modèles du procédé
1 f1
ff1
2 t1
ft1
Modèles du procédé
contrôlé
approches pour Procédé
la Synthèse de la événements événements
autorisés générés
commande Superviseur
64
III. Outils de modélisation - 4. RdP
Objectif de la synthèse
M0
R T3 T1
M1 M2
T4 T1 T3 T2
R est contrôlable : M3 M4 M5
T1 T2 T3
Les transitions à partir T4 T2
M6 M7
d’états admissibles vers des T2 T4
T4 T2
états non admissibles sont
M8
contrôlables.
T4 T2
65
Objectif de la synthèse
T4 est incontrôlable
R
M0 M0
T3 T1 T3 T1
M11 M2 M2
T4 T1 T3 T2 T3 T2
M33 M4 M5 M4 M5
T1 T2 T3
T4 T2
M77
M T2 T3
T4
T2
Marquages M88 R est réduit au plus grand
interdits
T4 sous-graphe contrôlable
T2
66
III. Outils de modélisation - 4. RdP
Théorie des régions :
Pour interdire une transition d’état interdite (M, t, M’), une place de contrôle Pc
doit vérifier :
M ' ( Pc ) M 0 Pc C Pc , M C ( Pc , t ) 0
M i ( Pc ) M 0 Pc C Pc , M i 0
L'équation de cycle de chaque cycle R
C ( Pc , .) 0
67
III. Outils de modélisation - 4. RdP
T1 Solution
M0(Pc)= 0, C(Pc,T1)= -1
M0 M1
R T2 C(Pc,T2)= 1, C(Pc,T3)= -1
T3 Pc
P1
C(Pc,T2) + C(Pc,T3) = 0 T1 T2 T3
M0(Pc) 0
M1(Pc) = M0(Pc) + C(Pc,T2) 0 P2
Controlled model 68
M1(Pc) = M0(Pc) + C(Pc,T1) < 0
Théorie des régions
M0 t1 M1 t2 M2 t4 M6
1 t1 2 t3
t4 t3 t2 t1
M3 M4 M5 M7
T1
P1
T2
1 P5 P2 2 P6 3 P4
T3
P3
T4
69
Théorie des régions (Badouel et Darondeau 1999)
M0 t1 M1 t2 M2 t4 M6
1 t1 2 t3
t4 t3 t2 t1
M3 M4 M5 M7