• Aucun résultat trouvé

Contrôle supervisé de systèmes à évènements discrets temps-réel

N/A
N/A
Protected

Academic year: 2021

Partager "Contrôle supervisé de systèmes à évènements discrets temps-réel"

Copied!
260
0
0

Texte intégral

(1)

SHERBROOKE

Faculte de genie

Genie electrique et genie informatique

CONTROLE SUPERVISE DE SYSTEMES

A EVENEMENTS DISCRETS TEMPS-REEL

These de doctorat

Speciality genie electrique

Lucien OUEDRAOGO

Jury: Ahmed KHOUMSI (Directeur)

Mustapha NOURELFATH (Co-directeur)

Soumaya CHERKAOUI (Rapporteur)

Abdeslam EN-NOUAARY (Evaluateur externe)

Sherbrooke (Quebec) Canada Novembre 2008

(2)

1*1

Library and

Archives Canada

Published Heritage

Branch

395 Wellington Street Ottawa ON K1A0N4 Canada

Bibliotheque et

Archives Canada

Direction du

Patrimoine de I'edition

395, rue Wellington Ottawa ON K1A0N4 Canada

Your file Votre reference ISBN: 978-0-494-48575-0 Our file Notre reference ISBN: 978-0-494-48575-0

NOTICE:

The author has granted a

non-exclusive license allowing Library

and Archives Canada to reproduce,

publish, archive, preserve, conserve,

communicate to the public by

telecommunication or on the Internet,

loan, distribute and sell theses

worldwide, for commercial or

non-commercial purposes, in microform,

paper, electronic and/or any other

formats.

AVIS:

L'auteur a accorde une licence non exclusive

permettant a la Bibliotheque et Archives

Canada de reproduire, publier, archiver,

sauvegarder, conserver, transmettre au public

par telecommunication ou par Plntemet, prefer,

distribuer et vendre des theses partout dans

le monde, a des fins commerciales ou autres,

sur support microforme, papier, electronique

et/ou autres formats.

The author retains copyright

ownership and moral rights in

this thesis. Neither the thesis

nor substantial extracts from it

may be printed or otherwise

reproduced without the author's

permission.

L'auteur conserve la propriete du droit d'auteur

et des droits moraux qui protege cette these.

Ni la these ni des extraits substantiels de

celle-ci ne doivent etre imprimes ou autrement

reproduits sans son autorisation.

In compliance with the Canadian

Privacy Act some supporting

forms may have been removed

from this thesis.

Conformement a la loi canadienne

sur la protection de la vie privee,

quelques formulaires secondaires

ont ete enleves de cette these.

While these forms may be included

in the document page count,

their removal does not represent

any loss of content from the

thesis.

Canada

Bien que ces formulaires

aient inclus dans la pagination,

il n'y aura aucun contenu manquant.

(3)

Cette these porte sur la synthese de superviseurs pour des systemes a evenements discrets temps-reel (SEDTRs) modelises par des automates temporises (ATs). Comme l'espace d'etats d'un AT est en general infini, et que la theorie du controle supervise de RAMADGE et WONHAM, que nous avons adaptee, est operationnelle pour des automates a etats finis (AEFs), nous avons utilise l'approche consistant a transformer les ATs modelisant le procede et la specification sous la forme d'AEFs. Nous avons done tout d'abord etendu et ameliore une methode de transformation des ATs en AEFs particuliers appeles automates Set-Exp (ASEs). Cette methode de transformation, appelee SetExp, permet de reduire le probleme d'explosion des etats et est appropriee pour le contrdle supervise de SEDTRs. Nous avons ensuite ameliore et etendu une methode de controle centralise fondee sur SetExp, e'est-dire que les ATs modelisant le procede et la specification sont d'abord trans-formes en ASEs et le probleme est resolu en adaptant la theorie de RAMADGE et WONHAM aux ASEs. Pour la resolution du probleme de controle centralise, nous avons identifie les conditions d'existence de solution et avons propose une procedure algorithmique pour la synthese du superviseur le moins restrictif.

Suite a cela, nous avons developpe une methode de controle modulaire, fondee sur SetExp et la methode de controle centralise. Pour le controle modulaire egalement, nous avons identifie les conditions d'existence de solution et propose une procedure de synthese de superviseurs modulaires les moins restrictifs .

D'autre part, nous avons etendu la methode de controle centralise fondee sur SetExp au cas ou le superviseur a une observation partielle des evenements du procede. Pour cette methode de controle sous observation partielle des evenements, nous avons identifie les conditions d'existence de solution et propose une procedure pour synthetiser un supervi-seur sous observation partielle.

Enfin, nous avons realise un outil logiciel appele SEAtool, qui implemente la transfor-mation SetExp et les methodes de controle centralise et modulaire. Nous avons etudie, a l'aide de SEAtool, l'application de nos methodes de controles centralise et modulaire a des systemes concrets simples.

M O T S CLES : systemes a evenements discrets, temps-reel, rnodelisation, automates temporises, controle supervise, contrdle modulaire, controle sous observation partielle,

(4)
(5)

Je tiens particulierement a remercier les professeurs Ahmed KHOUMSI et Mustapha

NOURELFATH, respectivement mes directeur et co-directeur de these, qui ont dirige

mes travaux et m'ont soutenu financierement durant cette these. J'ai beaucoup apprecie

leur disponibilite et leurs commentaires bien avises, aussi bien sur le plan scientifique que

general, qui m'ont aide a me former et a surmonter les difficultes rencontres durant mon

parcours.

Je tiens aussi a remercier les professeurs Soumaya CHERKAOUI et Abdeslam

EN-NOUAARY qui ont bien voulu participer a revaluation de ma these. Je remercie

egalement M. Richard St-DENIS, professeur a la Faculte des Sciences de l'Universite de

Sherbrooke, qui a accepte de mettre a ma disposition les equipements de son laboratoire

de recherche sur les systemes reactifs.

Enfin, je remercie toutes les personnes qui m'ont aide et/ou soutenu tout au long de mon

parcours pour l'aboutissement de cette these : mes parents, ma tres chere epouse, mes

amis, mes collegues de bureau et tous ceux que j'en oublie.

(6)
(7)

1 Introduction 1 1.1 Controle supervise des systemes a evenements discrets 1

1.1.1 Systemes a evenements discrets (SEDs) 1 1.1.2 ContrSle supervise des SEDs non temporises 5 1.1.3 Controle supervise des SED temporises (SEDTRs) 6 1.1.4 Controle partiellement observable et modulaire des SEDs et SEDTRs 8

1.1.5 Travaux sur les applications de la theorie du controle supervise . . . 9

1.2 Problematique, motivations et objectifs de la these 12 1.2.1 Insufflsances des methodes de controle de SEDTRs 13

1.2.2 Objectifs poursuivis 15 1.3 Resultats, contributions et organisation de la these 16

1.3.1 Resultats 16 1.3.2 Contributions de la these a l'avancement des connaissances 16

1.3.3 Organisation de la these 18 2 SetExp : Transformation des automates temporises [ARTICLE] 21

2.1 Introduction 22 2.2 Timed automata and timed language 26

2.2.1 Timed automata 26 2.2.2 Timed language of TA 28 2.2.3 Transformation of timed automata into finite state automata . . . . 29

2.3 Set-Exp automata and principle of SetExp 33

2.3.1 Intuition of SetExp 34 2.3.2 Events Set and Exp 36 2.3.3 Events and transitions of SEA 37

2.3.4 Definitions related to Set-Exp-Automata 38 2.3.5 Principle of construction of SEA illustrated by an example 41

2.4 First step of SetExp 49 2.5 Second step of SetExp . . . 52

2.5.1 Construction of the SEA 52 2.5.2 Construction of States and Transitions 57

2.6 Correctness, properties and simplification of SetExp 62

2.6.1 Correctness of SetExp 62 2.6.2 Properties and complexity of SetExp 63

2.6.3 Simplification of a SEA 69

2.7 Conclusion 72 3 Contrdles centralise et modulaire de S E D T R s [ARTICLE] 75

3.1 Introduction 76 3.2 Preliminaries 80

3.2.1 Timed Automata (TA) 80

(8)

TABLE DES MATIERES VI

3.2.2 Timed language of TA 82 3.2.3 Supervisory control of TA 83 3.3 Transformation of the control problem into a non-real-time form 86

3.3.1 Prom TA to SEA 86 3.3.2 Supervisory control of SEA 90

3.4 Centralized supervisor synthesis . 97

3.4.1 Construction of the SEA Va and Ks 98

3.4.2 Supervisor synthesis procedure from SEA 103

3.5 Modular supervisor synthesis 114 3.5.1 Step 1: Construct V\ and /C*, % = l,...,n 115

3.5.2 Step 2: Computation of the supervisors 121 3.5.3 Step 3: Checking the correctness of the global supervisor 121

3.6 Outline of complexity 124 3.6.1 Centralized supervisor synthesis 124

3.6.2 Modular supervisors synthesis 126

3.7 Conclusion 128 4 ContrOle sous observation partielle de S E D T R s [ARTICLE] 129

4.1 Introduction 130 4.2 Preliminaries 131

4.2.1 Timed Automata (TA) 131 4.2.2 Timed language of TA 132 4.3 Principle of our supervisory control with partial observation method . . . . 132

4.3.1 Principle of the transformation SetExp 132 4.3.2 Principle of supervisory control of SEA 134

4.4 Supervisor synthesis procedure 134

4.4.1 Construction of the SEA Va and Ka 134

4.4.2 Characterizing events in SEA 136 4.4.3 Conditions for supervisor existence 137 4.4.4 Computation of a supervisor 140

4.5 Conclusion 143 5 Exemples d'applications avec notre logiciel SEAtool 145

5.1 Fonctionnalites du logiciel SEAtool . 145

5.2 Exemples de controle centralise 147 5.2.1 Dispositif de deux verins pneumatiques 147

5.2.2 Controle d'un robot mobile 154 5.3 Exemple de controle modulaire 158

5.4 Conclusion 162 6 Conclusion 163

6.1 Contributions 163 6.2 Perspectives 166

(9)

A.l Proofs of theorems and propositions in Chapter 2 169

A.1.1 Proof of Proposition 2.5.1 169 A.1.2 Proof of Proposition 2.5.2 170 A.1.3 Proof of Proposition 2.5.3 . 171

A.1.4 Proof of Theorem 2.5.1 171 A.1.5 Proof of Proposition 2.5.4 174 A.1.6 Proof of Proposition 2.5.5 175 A.l.7 Proof of Proposition 2.5.6 . 175 A.1.8 Proof of Theorem 2.6.1 177 A.1.9 Proof of Proposition 2.6.1 179 A.l.10 Proof of Proposition 2.6.2 180 A.l.11 Proof of Proposition 2.6.3 183 A.l.12 Proof of Proposition 2.6.4 185 A.l.13 Proof of Proposition 2.6.5 186 A.l.14 Proof of Proposition 2.6.6 187 A.2 Proofs of theorems and propositions in Chapter 3 189

A.2.1 Proof of Proposition 3.3.1 189 A.2.2 Proof of Proposition 3.3.2 . 190

A.2.3 Proof of Proposition 3.3.3 193 A.2.4 Proof of Theorem 3.4.1 193 A.2.5 Proof of Theorem 3.4.2 195 A.2.6 Proof of Theorem 3.4.3 197 A.2.7 Proof of Proposition 3.5.1 197 A.2.8 Proof of Theorem 3.5.1 199 A.2.9 Proof of Proposition 3.6.1 201 A.2.10 Proof of Proposition 3.6.2 202 A.2.11 Proof of Proposition 3.6.3 202 A.2.12 Proof of Proposition 3.6.4 204 A.2.13 Proof of Proposition 3.6.5 205 A.2.14 Proof of Proposition 3.6.6 205 A.2.15 Proof of Proposition 3.6.7 206 B SEAtool : logiciel de modSlisation et de contrdle de S E D T R s 207

B.l Fonctionnalites 207 B.2 Illustrations des Fonctionnalites 209

B.2.1 Menus 210 B.2.2 Creation d'un fichier d'automate temporise 212

B.2.3 Produit d'automates temporises 214 B.2.4 Changer la controlabilite, la forgabilite ou l'observabilite d'evenements216

B.2.5 Faire une transformation SetExp 217 B.2.6 Faire la synthese d'un superviseur centralise 219

B.2.7 Faire une synthese de superviseurs modulaires 222

B.3 Conception et programmation 225 B.3.1 Classes communes 225 B.3.2 Classes dediees a SetExp 226

(10)

TABLE DES MATIERES viii

B.3.3 Classes dediees au controle centralise 228 B.3.4 Classes dediees au controle modulaire . . . . ' . . 229

B.4 Conclusion 231 B I B L I O G R A P H I E 232

(11)

2.1 TA modeling a machine in a manufacturing system 27 2.2 Simple TA to compare SetExp and Region automata transformation . . . . 31

2.3 Timed automaton and its zone graph 32 2.4 A TA and its SEA to clarify the intuition of SetExp 35

2.5 SEA of the TA of Figure 2.1 35 2.6 Architecture of SEA model 37 2.7 SEA corresponding to the IA of Figure 2.8 45

2.8 IA corresponding to the TA of Figure 2.1 52 2.9 Part of a TA and its SEA for illustration of preemption 57

2.10 Illustration of stability of TA 65 2.11 SEA corresponding to the TA of Fig. 2.10(a), for i = 1, i.e kl < kl < Ikl. 65

2.12 Illustration of the behaviors for an unconditioned type 3 transition 71

2.13 Illustration of removing of unconditioned transitions 72

3.1 Example of TA 82 3.2 Centralized control architecture of a Plant modeled by a TA 85

3.3 SEA obtained from the TA of Figure 3.1 88

3.4 Control architecture of SEA 91 3.5 Simple example to illustrate supervisory control of SEA 95

3.6 Modular control architecture of SEA 96 3.7 Simple example to illustrate modular supervisory control of SEA 97

3.8 Steps of the centralized control method 98 3.9 TA of the Plant and the Specification for illustration 98

3.10 VK, obtained from V and K of Figures 3.9(a) and 3.9(b) 100

3.11 SEA Vs of the plant 101

3.12 SEA Ks of the specification 102

3.13 SEA for illustration of preemption of events 106 3.14 TA of the Plant and the Specifications for illustration 114

3.15 Steps of the modular control method, for n = 2 114 3.16 Substep 1.1: Product TAs of the plant and the specifications 117

3.17 Substep 1.2: Product TIAs of the plant and the specifications . . . 117 3.18 Substep 1.3: Product TIAs VKJX and VJC'2 of the after application of 0 . . 119

3.19 Substep 1.4: SEAs V\ and V\ of the plant for each specification (without

non border inadmissible states) 120

3.20 Substep 1.5: SEAs K}s and K?a of the specifications 120

3.21 SupSEA1 and SupSEA2 for specification 1 and 2 121

4.1 Example of TA 131 4.2 SEA obtained from the TA of Figure 4.1 133

4.3 TA /C of the specification 134 4.4 VIC obtained from V and /C of Figs. 4.1 and 4.3 135

(12)

LISTE DES FIGURES x

4.5 SEA V3 of the plant 136

4.6 SEA Ks of the specification 136

5.1 Menus de SEAtool 146 5.2 Dispositif de deux verbis 148 5.3 ATs des deux verins 150 5.4 Specification pour les verins 151

5.5 Superviseur pour les deux verins 151 5.6 Diagramme ladder logique du superviseur 154

5.7 Trajet d'un robot mobile avec des obstacles 155

5.8 AT d'un robot et sa specification 157 5.9 Deux processus utilisant deux ressources 159

5.10 ATs de deux processus utilisant deux ressources 159 5.11 SPECl : specification d'exclusion mutuelle 160 5.12 SPEC2 : contraintes temporelles et d'ordre sur l'acces aux ressources . . . 160

5.13 Superviseur pour la specification d'exclusion mutuelle 161 B.l Procedures de synthase de superviseur centralise 209

B.3 Menus de SEAtool . 2 0 9 B.2 Procedures de synthese de superviseur modulaires 210

B.4 Menu principal 211 B.5 Menu 1 (choix 1 dans le menu principal) 211

B.6 Menu 2 (choix 2 dans le menu principal) 212 B.7 AT pour illustrer la creation de fichier d'AT 212

B.8 Creation d'un AT 213 B.9 Fichier de l'AT de la Figure B.7 214

B.10 ATs pour illustrer le produit d'ATs 215 B . l l Illustration du produit synchronise pour des ATs de meme alphabet . . . . 215

B.13 Fichier d'un AT obtenu par le produit de deux ATs 215 B.l2 Illustration du produit synchronise pour des ATs avec des alphabets differents216

B.14 Illustration du changement des caracteristiques d'evenements 217

B.15 Illustration d'une transformation SetExp 218 B.16 AT pour illustrer SetExp avec SEATool 218

B.17 illustration d'un fichier d'ASE 218 B.18 ATs pour illustrer la synthese d'un superviseur centralise 219

B.19 Illustration de l'interface de la procedure normale de synthese d'un

super-viseur centralise 219 B.20 ASE du superviseur centralise 221

B.21 Fichier de donnees du superviseur centralise 221 B.22 Illustration de l'interface de la procedure optimisee de synthese d'un

super-viseur centralise 222 B.23 ATs pour illustrer la synthese modulaire de superviseurs 223

B.24 Illustration de l'interface de la procedure de synthese modulaire de

super-viseurs 223 B.25 ASE du superviseur pour la specification 1 225

(13)

B.26 ASE du superviseur pour la specification 2 225 B.27 Diagramme de classes pour les classes communes 226 B.28 Diagramme de classes pour les classes principales de SEAGenerator . . . . 227

B.29 Diagramme de classes pour les classes implementant les algorithmes de

controle centralise 229 B.30 Classes dediees a la synthese modulaire de superviseurs 230

(14)
(15)

Sigle AEF API AR AT SED SEDTR Sigles frangais Definition

Automate a Etats Finis

Automate Programmable Industriel Automate de Region

Automate Temporise

Systeme a Evenements Discrets

Systeme a Evenements Discrets Temps-Reel

Sigle DES FSA PLC RA RTDES TA Sigles anglais Definition

Discrete Event system Finite State Automaton

Programmable Logic Controller Region Automaton

Real-Time Discrete event Systems Timed Automaton

(16)
(17)

Introduction

Le sujet de cette these porte sur le controle supervise des systernes a evenements discrets temps-reel modelises par des automates temporises. Nous avons opte pour une these par articles. Cependant, les chapitre 1, 5 et 6 ne sont pas bases sur des articles. Dans ce pre-mier chapitre introductif, nous presentons dans un prepre-mier temps la theorie du controle supervise des systernes a evenements discrets (non temporises et temporises), theorie sur laquelle est fondee cette these. Dans un deuxieme temps, nous formulons la problematique de la these et ses objectifs. Enfin, nous presentons les resultats obtenus et nos contribu-tions.

1.1 Controle supervise des systernes a evenements

dis-crets

Dans cette section, nous ferons d'abord une presentation generate de la theorie du controle supervise des systernes a evenements discrets (SEDs). Ensuite, nous presenterons le cas particulier du controle supervise des SEDs temps-reel (SEDTRs) auquel nous nous interes-serons dans la these. Cette presentation offre un apergu des travaux realises et disponibles dans la litterature sur la theorie du controle supervise des SEDs en lien avec les travaux realises dans cette these.

1.1.1 Systernes a evenements discrets (SEDs)

On appelle systeme a evenements discrets (SED) un systeme dynamique dont le com-portement est entierement defini par un ensemble de sequences d'evenements qu'il peut executer, appele langage. En d'autres termes, un systeme dont l'execution est decrite par les occurrences instantanees, successives et a des intervalles quelconques d'evenements physiques est qualifies de SED. Un evenement se definit comme une action produite par le systeme ou par son environnement et subie par le systeme. Nous pouvons citer comme exemples de SEDs (les crochets sont utilises pour circonscrire les evenements dans une sequence, et deux evenements consecutifs sont separes par ".") :

(18)

CHAPITRE 1. Introduction 2

- un protocole de communication, avec comme exemples d'evenements : emission d'un message d'un type donne (par exemple message de demande d'etablissement de connexion), reception d'un message d'un type donne (par exemple message d'acceptation de connexion), collision de deux messages, etc; nous pouvons citer comme exemple de sequence d'evene-ments (comportement) : [emission message m\.[emission message n].[reception message n[;

- un systeme de telephonie, avec comme exemples d'evenements : decroche, raccroche, debut de sonnerie, compose un chiffre, etc; nous pouvons citer comme exemple de sequence d'evenements : [debut de sonnerie].[decroche].[raccroche];

- systeme d'exploitation, avec comme exemples d'evenements : debut de l'execution d'un programme, fin de l'execution d'un programme, demande d'acces d'un programme a une ressource, notification d'insuffisance de ressource, generation d'une exception par un programme, etc; nous pouvons citer comme exemple de sequence d'evenements : . [debut de l'execution d'un programme].[demande d'acces d'un programme a une

res-source]. [generation d'une exception par un programme].[fin de l'execution d'un pro-gramme] ;

- une ligne d'assemblage d'un systeme de production, avec comme exemples d'evene-ments : sortie d'un verin, demarrage d'un moteur, detection de la presence d'une piece par un capteur, etc; nous pouvons citer comme exemple de sequence d'evenements : [demarrage d'un moteur].[detection d'une piece].[ouverture d'un verin].

Un SED temps-reel (SEDTR) est un SED dont le fonctionnement doit respecter des contraintes temporelles explicites. Ces contraintes temporelles specifient des delais mini-mum et/ou maximini-mum a respecter entre les occurrences des evenements. Le bon fonction-nement d'un SEDTR depend done non seulement de l'ordre d'occurrence des evefonction-nements, mais egalement de quand ces occurrences se produisent. Les exemples de SEDs cites plus haut peuvent aussi etre des SEDTRs pour une application specifique ou les occurrences des evenements doivent respecter des delais. Par exemple, les systemes d'exploitation temps-reel comme Real-Time Linux (RT-Linux) ou les protocoles de communications temps-temps-reel comme RTCP (Real-Time Control Protocol) [SCHULZRINNE et coll., 2003] peuvent etre consideres comme des SEDTRs

Comme mentionne precedemment, le comportement d'un SED est decrit par les sequences d'evenements qu'il peut executer, cet ensemble definissant ses comportements possibles. L'ensemble des evenements est suppose fini et est appele alphabet du SED. Une sequence (finie ou infinie) d'evenements est aussi appelee un mot. L'ensemble des mots, y compris le

(19)

mot vide, forme le langage du SED. Quand ce langage peut etre defini par une expression reguliere, il est dit langage regulier. La theorie des langages offrent un cadre pour etudier les SEDs, mais dans le cas ou le langage est infini ou comporte des mots infinis, il est plus commode d'utiliser un formalisme fini pour les modeliser. Les automates a etats finis (AEFs) offrent cette possibilite, et tout langage regulier peut etre represents par un AEF. Nous utilisons le modele AEF dans cette these. Un AEF est un graphe de transitions permettant de modeliser un SED par des etats (etats du SED) et des transitions cor-respondant aux occurrences des evenements. Formellement, un AEF A peut etre defini comme un quintuple : A = (Q, E, 5, q°, Qm) avec :

- Q : ensemble fini d'etats;

- E : ensemble fini d'evenements (ou alphabet) de A; - q° : etat initial de A;

-.. Qm : ensemble des etats terminaux ou marques (Qm C Q);

- 5 : fonction de transition entre etats : Q x E —> Q.

La fonction de transition defini a chaque etat les evenements dont l'occurrence est possible et l'etat atteint suite a l'occurrence de chacun de ces evenements. Ainsi, a partir de l'etat initial, on peut parcourir l'AEF suivant les occurrences des evenements dans les etats. Chaque sequence finie d'evenements part done de l'etat initial et s'arrete a un etat donne. Les sequences qui terminent dans un etat marque sont dites marquees et leur ensemble forme le langage marque de l'AEF.

Pour un SEDTR, son bon fonctionnement depend non seulement de l'ordre des evene-ments mais aussi des instants ou les occurrences de ces eveneevene-ments surviennent. On peut done decrire une execution d'un SEDTR comme une sequence (finie ou infinie) d'eve-nements ou a chaque evenement est associe le temps de son occurrence qui respecte les contraintes de temps assurant le bon fonctionnement du SEDTR. Une telle sequence est appelee sequence temporisee ou mot temporise, et l'ensemble des mots temporises qu'un SEDTR a la possibilite d'executer definit son comportement, et est appele langage tem-porise. Comme pour les langages reguliers non temporises que l'on peut representer par des AEFs, les langages temporises peuvent aussi etre representees par des formalismes similaires. Nous avons opte pour le modele des automates temporises (ATs) d'ALUR et

D I L L [ALUR, 1999; A L U R et D I L L , 1994] pour la modelisation des SEDTRs. Le modele AT

a ete suffisamment etudie [ALUR et coll., 1994; A L U R et MADHUSUDAN, 2004;

BENGTS-SON et Yi, 2004; BOUYER et coll., 2004; G U P T A et coll., 1997; T R I P A K I S et coll., 2005] et applique notamment pour la verification de SEDTRs [ALUR et D I L L , 1996; H E N Z I N G E R

(20)

CHAPITRE 1. Introduction 4

m6me ete developpes [BEHRMANN et coll., 2004b; H E N Z I N G E R et coll., 1995; Y O V I N E ,

1997].

Un AT est en fait un AEF auquel on a apporte les ajouts suivants :

- On a un ensemble C d'horloges qui evoluent continuellement a la vitesse 1 par rapport au temps (c'est-a-dire leur derivee par rapport au temps est egale a 1). Les seules operations qu'on peut effectuer sur une horloge sont sa lecture et sa mise a zero.

- A toute transition, on peut associer (sans en etre oblige) : (i) une ou plusieurs horloges qui sont mises a zero a l'execution de la transition; et (ii) une ou plusieurs contraintes temporelles definies par des contraintes sur des horloges. La transition peut s'executer lorsque ses contraintes sont satisfaites.

- A tout etat, on peut associer (sans en etre oblige) une ou plusieurs contraintes tem-porelles definies par des contraintes sur des horloges. L'ensemble de ces contraintes est appele invariant. On peut rester dans l'etat tant que son invariant est satisfait.

- Apres les modifications ci-dessus, les etats sont renommes localites parce qu'un etat de SEDTR est justement defini par une localite et la valeur prise par chaque horloge. Formellement, un AT A est defini par un septuple A = (£, S, C, J , T , lo, £m) avec :

- £ un ensemble fini de localites;

~ £m Q C un ensemble de localites dites marquees; - IQ € £ la localite initiale;

- S l'ensemble des 6venements (ou alphabet) de A; - C un ensemble fini d'horloges;

- X: £ *-* 2*c une fonction qui associe a chaque localite £ £ £ un invariant qui est un ensemble de contraintes temporelles;

- T C £ x S x £ x 2*c x 2C est un ensemble de transitions, ou 2*c et 2C represented respectivement l'ensemble des sous-ensemble de contraintes temporelles exprimees avec C et l'ensemble des sous-ensembles de C.

On associe ainsi a toute transition un ensemble de contraintes temporelles et un ensemble d'horloges mises a zero. L'ensemble des transitions definit a chaque localite : (i) les eve-nements dont l'occurrence est possible quand les contraintes temporelles qui leur sont associees sont satisfaites, et (ii) les localites atteintes suite a l'occurrence de chacun de ces evenements. Ainsi, a partir de la localite initiale, on peut parcourir l'AT suivant l'oc-currence des evenements aux localites. Chaque sequence finie d'evenements part done de la localite initiale et arrive a une localite donnee. Les sequences qui terminent dans une localite marquee sont dites marquees et leur ensemble forme le langage temporise marque de l'AT.

(21)

1.1.2 Controle supervise des SEDs non temporises

La theorie du controle supervise a initialement ete introduite par RAMADGE et WON-HAM [RAMADGE et W O N H A M , 1987; W O N H A M et R A M A D G E , 1987]. Une synthese de cette theorie est presentee dans [ R A M A D G E et WONHAM, 1989], et sa presentation

de-taillee est disponible dans [CASSANDRAS et L A F O R T U N E , 1999; K U M A R et G A R G , 1995;

WONHAM, 2006]. Le principe de base du controle supervise est le suivant: on dispose d'un SED P modelise par un AEF V. V decrit le comportement libre (sans contrainte) de P, defini par le langage regulier L(V). On modelise par un AEF K. une specification S qui decrit les contraintes de fonctionnernent desirees de P. Le probleme du controle supervise consiste a synthetiser un superviseur Sup (ou contrdleur) qui, en interagissant avec P, le force a n'executer que les comportements acceptes par S. Les evenements de P sont divi-ses en deux categories : les evenements contrdlables et les evenements incontrdlables. Sup peut inhiber l'occurrence d'evenements controlables. Par contre, Sup ne peut pas inhiber un evenement incontrolable lorsque celui-ci est possible selon V. La tache de Sup est de restreindre le comportement de P par l'interdiction d'evenements controlable de maniere a ce que P respecte S tout en garantissant le respect des deux proprietes suivantes : - Sup ne doit jamais avoir a inhiber un evenement incontrolable de P. Cette propriete est

appelee contrdlabilite par RAMADGE et WONHAM. Dans ce sens, le comportement decrit par la specification fC est controlable s'il peut etre obtenu a partir du comportement de V en n'inhibant que des evenements controlables.

- Sup ne doit pas mener P dans une impasse, c'est-a-dire dans un etat ou un groupe d'etats a partir duquel V ne peut plus continuer son execution pour atteindre un etat marque. Cette propriete est appelee non blocage par RAMADGE et WONHAM.

Le probleme essentiel a resoudre dans cette approche est de s'assurer que Sup est le plus permissif possible, c'est-a-dire qu'il permet d'obtenir le comportement le moins restrictif parmi tous les comportements controlables de V qui respectent /C, dans le cas ou K, n'est pas controlable. Dans [RAMADGE et WONHAM, 1987], les auteurs prouvent l'existence et Punicite du comportement le moins restrictif et proposent un algorithme a point fixe permettant de le calculer a partir de V et /C. Le principe de l'algorithme consiste a inter-dire initialement toute transition de V qui sort de K.. Ensuite, on elimine par iterations successives tout etat ne satisfaisant pas les proprietes de controlabilite et de non blocage, jusqu'a atteindre un point fixe ou ces deux proprietes sont respectees. Si l'AEF final resul-tat du point fixe des iterations n'est pas vide, alors celui-ci modelise le comportement le plus permissif de V qui respecte /C et pouvant etre obtenu par Faction de Sup sur P (Sup

(22)

CHAPITRE 1. Introduction 6

contraint P en inhibant des evenements controlables). En resume, les etapes principales de synthese d'un superviseur sont les suivantes :

1. modeliser P par un AEF V qui decrit son comportement libre;

2. modeliser la specification (contraintes a respecter sur le fonctionnement de P) par un AEF K;

3. synthetiser l'AEF X£ decrivant le comportement le moins restrictif de V qui respecte /C a l'aide de l'algorithme a point fixe decrit ci-dessus;

4. Le superviseur Sup est alors decrit par l'AEF X£ et une fonction qui specifie les evenements inhibes a chaque etat de X£.

1.1.3 Contrdle supervise des SED temporises (SEDTRs)

Pour les SEDTRs, le temps peut etre modelise de deux fagons :

- le temps discret, pour lequel la progression du temps est discrete et mesuree par une horloge digitale qui s'incremente d'une unite a la fois [ O S T R O F F , 1990; OsTROFF et

W O N H A M , 1990];

- le temps dense, pour lequel la progression du temps est continue et mesuree par des horloges prenant des valeurs reelles positives. Ce modele sert de base a la theorie des automates temporises (AT) [ALUR et D I L L , 1994] brievement presentes dans la

sous-section 1.1.1.

La theorie du controle supervise de SEDs a ete generalisee pour le contrdle des SEDTRs. Avec le temps discret, l'incrementation de chaque unite du temps est representee par un evenement appele tick. Cette description de l'ecoulement du temps par un evenement tick permet de traiter le SEDTR comme dans le cas non temporise, moyennant des considera-tions particulieres pour l'evenernent tick. Avec la prise en compte explicite du temps, une nouvelle notion fondamentale doit etre introduite : la forgabilite d'evenement. Ainsi, l'al-phabet du SEDTR est partitionne en deux ensembles disjoints : l'ensemble des evenements forcables et l'ensemble des evenements non forcables, en plus d'etre partitionne en evene-ments controlables et incontrdlables comme dans le cas non temporise. L'occurrence d'un evenement e forgable peut etre forcee par un superviseur a tout moment ou e est possible, tandis que celle d'un evenement non forgable ne peut l'etre en aucun cas. Une particularite de tick par rapport aux autres evenements est que sa contrfilabilite n'est pas constante. En effet, l'evenernent tick peut etre traite comme un evenement controlable si et seulement s'il est en competition avec un evenement forgable. En effet, forcer un evenement e signifie

(23)

forcer e a s e produire avant le prochain tick. Ce qui est conceptuellement equivalent a in-terdire tick et autoriser e. Des approches de resolution du probleme de controle supervise pour des SEDTRs utilisant le temps discret sont presentees dans [ B R A N D I N et W O N H A M ,

1994; PARK et coll., 2004]. Le calcul du superviseur est fait a partir des automates du SEDTR et de la specification ou l'evenement tick est explicitement represente.

Les ATs d'ALUR et DlLL sont le modele essentiel d'automates utilisant le temps dense. Plusieurs methodes de controle supervise utilisant les ATs sont proposees dans la litte-rature. Les auteurs de [ASARIN et coll., 1995, 1998] proposent une approche symbolique pour la synthese de superviseurs pour des SEDTRs modelises par des ATs. Cette me-thode utilise la theorie des jeux, en considerant le procede et le superviseur comme deux joueurs d'un m6me jeu, la specification etant une strategie gagnante pour le superviseur. Dans [ M A L E R et coll., 1995] et [ G O U I N et F E R R I E R , 1999a], des approches symboliques sont egalement proposees pour la synthese de superviseurs pour des SEDs modelises par des ATs, ou le superviseur calcule est egalement modelise par un AT. Le calcul des super-viseurs est fait a l'aide d'un operateur qui explore le graphe de region de l'AT modelisant le SEDTR. D'autre part, les auteurs de [ K U M A R et SHAYMAN, 1995] presentent une me-thode de controle supervise pour des SEDTRs modelises par des ATs en utilisant la notion de composition synchroniser avec priorite. Le modele AT utilise differe legerement de ce-lui d'ALUR et DlLL, en ce sens qu'il n'utilise pas un ensemble d'horloges, mais associe a chaque evenement un timer qui indique le temps ecoule depuis sa derniSre occurrence. Le calcul du superviseur se fait par une composition des automates, en definissant les occurrences de certains evenements comme prioritaires (notamment celles de tous les eve-nements incontrolables), c'est-a-dire pouvant se faire de maniere asynchrone dans l'un ou l'autre des automates.

Outre les approches symboliques permettant de calculer un superviseur modelise par un automate de meme type que ceux du SEDTR et de sa specification, d'autres methodes adaptees de la theorie pour les SEDs non temporises consistent a transformer les ATs en AEFs. De ces methodes, nous pouvons citer celles proposees dans [GouiN et F E R R I E R ,

2000; WONG-Toi et HOFFMANN, 1991] qui sont basees sur une transformation des ATs en automates de region (AR) [ALUR et DlLL, 1994]. La procedure de synthese du supervi-seur consiste a composer (produit synchronise) les ATs du SEDTR et de la specification, ensuite a transformer l'AT produit en AR (ou une variante appelee automate de r-region dans [ G O U I N et F E R R I E R , 2000]), et a calculer le superviseur a partir de ces ARs. D'un autre cote, [NOURELFATH et K H O U M S I , 2006] presentent une methode de synthese de superviseurs fondee sur la transformation des ATs en automates a grilles [EN-NOUAARY,

(24)

CHAPITRE 1. Introduction

8

2001; EN-NOUAARY et coll., 1998; LARSEN et Yl, 1997]. La transformation en automates a grilles permet de diminuer la complexity de la synthese de contrdleurs car elle utilise une relation d'equivalence moins forte que celle utilisee dans la transformation en ARs. Cette relation est celle de la bissimulation temporelle modulo k [ E N - N O U A A R Y , 2001], k etant un nombre rationnel. Cette relation est une sorte de discretisation du temps car elle implique de traiter le temps aux instants multiples de k qui est aussi appel6 granularity d'echantillonnage. Pour la synthese du superviseur, on construit les automates a grilles du SEDTR et de la specification, ensuite on fait un produit synchronise de ces automates et on calcule le superviseur par la meme technique que celle de RAMADGE et WONHAM. Une autre methode de controle supervise basee sur une transformation similaire a celle des ARs est presentee dans [SPATHOPOULOS, 2003b], ou une notion d'urgence des evenements est utilisee.

Dans [ K H O U M S I et OUEDRAOGO, 2004], nous proposons une nouvelle methode de trans-formation d'un AT en un AEF particulier appele automate Set-Exp (ASE). La methode de transformation elle-meme est appelee SetExp, et consiste principalement a materialiser la progression du temps par des evenements suivant un ordre present. Cela est fait a l'aide de deux types d'evenements particuliers qui s'ajoutent aux evenements du SEDTR : - evenements Set qui materialised les remises a 0 d'horloges et leur programmation pour

expirer a des instants precis;

- 6venements Exp qui materialised les expirations d'horloges quand elles atteignent des valeurs programmees dans les evenements Set correspondant.

Nous verrons plus loin que cette methode de transformation presente des avantages tres interessants par rapport aux autres methodes de transformation utilisees dans le contrdle de SEDTRs [NOURELFATH et KHOUMSI, 2006; SPATHOPOULOS, 2003b; W O N G - T O I et

H O F F M A N N , 1991] mentionnees ci-dessus. La transformation SetExp a ete utilisee pour la synthese de superviseurs dans [KHOUMSI, 2005; KHOUMSI et coll., 2005] et dans [OUEDRAOGO et coll., 2008d, 2006b] dans le cadre de cette these. Nous reviendrons dans la section 1.2 plus en detail sur cette methode, base de notre sujet de these.

1.1.4 Controle partiellement observable et modulaire des SEDs et

SEDTRs

La theorie du controle supervise a ete etendue pour des SEDs partiellement observables

[ K U M A R et SHAYMAN, 1997; LIN, 1987; R A M A D G E et W O N H A M , 1989]. Un SED est dit partiellement observable si l'occurrence de certains de ses evenements ne peut etre observee par le superviseur. Le superviseur doit fonder ces decisions uniquement sur les

(25)

evenements observables. Dans ce cas, en plus des proprietes de controlabilite et de non blocage, une troisieme propriete, appelee observability doit etre respectee. Intuitivement, un comportement est observable s'il peut etre obtenu a partir du comportement du SED en prenant des decisions (d'inhiber ou d'autoriser des evenements) qui ne dependent que de ce qui a ete observe. Cette approche a ete etendue pour des SEDTRs, avec le temps discret [LIN et coll., 1995; P A R K et C H O , 2006] et avec le temps dense [ B O U Y E R et coll., 2003] ou les ATs sont transformes en ARs.

D'autre part, des methodes de controle modulaire de SEDs et de SEDTRs ont ete deve-loppees. Pour le controle modulaire, un nombre n donne de specifications pour le raeme SED sont fournies. On peut appliquer une approche centralisee (une seule specification) dans un tel cas, en construisant une seule specification a partir des automates des n spe-cifications par produit synchronise. Mais il est plus simple de synthetiser un superviseur pour chacune de ces specifications. Chaque superviseur individuel est calcule en utilisant les mernes algorithmes que dans le cas centralise. Pour le cas des SEDs non temporises, la propriete supplementaire que doivent avoir les superviseurs modulaires est la non conflic-tualite, qui specifie que Taction combinee des superviseurs modulaires ne doit pas conduire le SED dans une impasse. En effet, rneme si chaque superviseur individuel satisfait la pro-priete de non blocage, leurs actions combinees peuvent mener a un blocage. Des exemples de methodes de controle supervise modulaire pour des SEDs non temporises sont pre-sentees dans [GAUDIN et M E R C H A N D , 2007; Q U E I R O Z et C U R Y , 2000; S A B O O R I et coll., 2005; W O N G et W O N H A M , 1998; W O N H A M et R A M A D G E , 1988]. On trouve egalement

des methodes de controle modulaire pour des SEDTRs a temps discret dans [BRANDIN et WONHAM, 1993; TAKAI et coll., 2004]. Pour le controle modulaire des SEDTRs (temps discret et temps dense), en plus de la propriete de non conflictualite, une autre propriete est ce que nous appelons compatibilite, qui specifie que quand un superviseur doit user du forgage a un etat donne du SEDTR, alors les autres superviseurs ne doivent pas inhiber tous les evenements forgables pouvant se produire a cet etat.

1.1.5 Travaux sur les applications de la theorie d u c o n t r o l e

super-vise

Jusque la, nous n'avons presente que des aspects theoriques du controle supervise des SEDs et SEDTRs. C'est une theorie generale qui peut etre mise en ceuvre de differentes fagons moyennant quelques adaptations. On trouve des applications dans les systemes manufacturiers, en robotique, en telecommunications et en genie logiciel. Nous indiquons

(26)

CHAPITRE 1. Introduction 10

ici quelques uns des travaux sur des applications concretes de cette theorie respective-ment dans les domaines du logiciel, de la robotique, des systemes manufacturiers et des telecommunications.

Dans [ C H E N et WONHAM, 2002], les auteurs appliquent la methode de contrdle supervise de SEDTRs proposee dans [BRANDIN et W O N H A M , 1994] pour la resolution du probleme d'ordonnancement de l'execution d'un ensemble de taches periodiques non interruptibles avec des delais stricts de temps par un systeme a un seul processeur. La methode consiste a modeliser l'execution d'un ensemble de taches periodiques cornme un SEDTR et a cal-culer le comportement controlable desire. Pour determiner si un ensemble de taches est ordonnangable, il suffit de verifier si le comportement controlable le plus permissif est vide ou non. Une application similaire a celle de [ C H E N et W O N H A M , 2002] est presentee dans [ALTISEN et coll., 2002] pour l'ordonnancement de systemes temps reels.

L'ordon-nancement sert a resoudre des problemes de partage de ressources, d'ordre d'execution a suivre, de delais a respecter, etc. Les auteurs proposent un algorithme de synthese de controleurs qui utilise le modele AT. Cet algorithme est ensuite utilise pour la synthese de l'ordonnanceur. Dans [PHOHA et coll., 2004], les auteurs presentent une application de la theorie du controle supervise au controle de programmes (logiciels) par un systeme d'ex-ploitation. II s'agit plus specifiquement de synthetiser et d'implementer des controleurs pour restreindre Taction du systeme d'exploitation sur les programmes en introduisant des modifications mineures dans le systeme d'exploitation. D'abord, les auteurs proposent une modelisation en AEFs des interactions entre le systeme d'exploitation et le programme (ou processus). Les interactions possibles entre le systeme d'exploitation et un processus sont identifies par des evenements controlables ou incontrolables selon les cas en se basant sur leur origine (par exemple les evenements provenant d'une action de Fusager sont incon-trdlables). La sequence de ces evenements determine les differents etats du systeme tels que l'etat execution terminee, execution normale, faute detectee, etc. Deux exemples de superviseurs sont respectivement synthetises pour deux exemples de specifications (preve-nir la terminaison d'un processus a la premiere occurrence d'une exception fatale telle une division par 0 et permettre la terminaison d'un processus a la seconde occurrence d'une exception fatale, prevenir l'arret d'un processus du a un bas niveau de ressources dispo-nibles). Une architecture de l'implementation des superviseurs a ete elaboree et realisee sous Red Hat Linux 7.2.

Les interactions entre un robot mobile et son environnement immediat peuvent etre mo-delisees comme un SED. On peut done appliquer la theorie du controle supervise pour restreindre le comportement d'un robot ou d'en ensemble de robots afin qu'ils respectent

(27)

une certaine specification. Dans [ G O R D O N - S P E A R S et K I R I A K I D I S , 2004], les auteurs pre-sentent une application du controle supervise a un groupe de robots cooperant a la realisa-tion d'une tache donnee. Le controle du groupe de robots permet a ce groupe de s'adapter sans dommages et de respecter les specifications. Le comportement de chaque robot est modelise par un AEF. Le controle supervise permet de reconfigurer le fonctionnement du groupe de robots pour preserver ses proprietes de fonctionnement en cas de pannes de certains robots en cours de fonctionnement. La tache que realise chaque robot est definie par des evenements et le superviseur peut interdire l'execution de tout evenement contro-lable (certains evenements tels que la mise hors ligne d'un robot sont incontrocontro-lables) pour assurer la bonne coordination du groupe de robots.

Un bon nombre d'applications de la theorie du controle supervise pour des systemes de production ont ete developpees. Dans [ C H A R B O N I E R et coll., 1999], les auteurs presentent

une methode d'implantation de contrfileurs a l'aide d'automates programmables indus-triels. Cette methode est appropriee pour les applications dans les systeimes manufacturiers industrielles. Dans [TOLGA HASDEMIR et coll., 2004], les auteurs presentent l'implemen-tation d'un controleur synthetise selon la theorie de RAMADGE et WONHAM pour un sys-teme d'assemblage pneumatique selon l'approche modulaire. Le superviseur est implante sur un automate programmable par une representation en diagramme a relais (Ladder Logic diagram). Dans [No-URELFATH et N I E L , 2004; Q U E I R O Z et C U R Y , 2002], les auteurs appliquent la theorie du controle supervise sur un systeme manufacturier experimental commande par un automate programmable industriel. Le superviseur est synthetise par l'approche modulaire pour eviter l'explosion des etats et une architecture d'implementa-tion avec un automate programmable est proposee.

Des applications du controle supervise dans le domaine des telecommunications ont ega-lement ete etudiees. Dans [THISTLE et coll., 1997], les auteurs appliquent la theorie du controle supervise de RAMADGE et WONHAM a la modelisation, l'analyse et la synthese des services et a la detection de certaines interactions de services dans un reseau de te-lecommunications. Les services sont modelises comme des superviseurs modulaires qui controlent les interactions des usagers. La propriete de conflictualite du controle modu-laire est appliquee pour la detection des interactions de services. La resolution de ces interactions se fait en associant des priorites aux services conflictuels de sorte que le ser-vice ayant la plus haute priorite garde le controle en cas de conflit. Si les deux serser-vices en conflit ont la meme priorite, alors chacun exerce son action de controle de maniere concurrente. Dans [WONG et coll., 2000], les auteurs formalisent cette notion de priorite en introduisant une interface appropriee entre le superviseur et un procede qui gere le

(28)

CHAPITRE 1. Introduction 12

flux d'informations et (Tactions de controle. Cette interface permet de determiner quand il faut suspendre Taction d'un superviseur pour eviter un conflit et quand il faut le reac-tiver. Les conditions suffisantes de fonctionnement de cette interface sont elaborees pour assurer la resolution des conflits entre superviseurs. D'un autre cote, dans [KHOUMSI,

1997], l'auteur applique egalement la theorie du controle supervise a la detection et la resolution des interactions de services dans les systemes de telecommunications. L'auteur utilise les notions de contr6labilite et de coobservabilite pour synthetiser un ou plusieurs superviseurs qui seront ajoutes au systeme pour resoudre le probleme d'interactions de services. Les services sont modelises par des AEFs. La modelisation est faite de sorte que les interactions de services correspondent a des etats a eviter (etats qui ne satisfont pas un invariant donne). La resolution des interactions est faite en synthetisant et adjoignant a chaque composant implique dans l'interaction un superviseur qui aura pour tache de : (i) suivre 1'evolution des services implementes sur le composant en observant l'occurrence des evenements; (ii) interdire certains de ces evenements quand cela est necessaire et (iii) communiquer avec les autres superviseurs si cela est necessaire.

1.2 Problematique, motivations et objectifs de la these

Les systemes technologiques (materiel informatique, logiciel, systeme de telecommunica-tion, usine manufacturiere, etc) ont atteint de nos jours une complexite elevee et qui croit continuellement, de sorte que les anciennes techniques intuitives utilisees pour leur concep-tion, etude et realisation deviennent inadaptees. D'autre part, contrairement aux SEDs dont la dynamique est entierement evenementielle (le SED peut changer d'etat seulement suite a l'occurrence d'un evenement), la dynamique d'un SEDTR est en plus temporelle (le SEDTR peut changer d'etat suite a l'occurrence d'un evenement ou par progression du temps). Cela rend les SEDTRs encore plus complexes a analyser et concevoir. II de-vient done essentiel de developper des methodes formelles (methode rigoureuse basee sur un formalisme mathematique qui assure que le resultat obtenu est correct) d'analyse, de conception et de realisation de ces systemes. Cela favorise le developpement d'outils lo-giciels supportant ces methodes formelles pour verifier et/ou garantir automatiquement Texactitude de systemes tres complexes. La theorie du controle supervise est une methode formelle d'analyse et de conception qui repond a ce besoin. Cependant, toute methode for-melle doit elle-meme avoir une complexite (en temps d'execution et en memoire utilisee) raisonnable pour etre implementable et utilisable. Nous presentons dans la section 1.2.1 les insuffisances actuelles de la theorie du controle supervise des SEDTRs qui motivent notre sujet de these.

(29)

1.2.1 Insuffisances des methodes de c o n t r o l e de S E D T R s

Dans la section 1.1.3, nous avons presente plusieurs approches de controle supervise de SEDTRs. Nous presenterons dans cette section un apergu des limites de ces methodes de controle, ce qui nous permettra plus tard de justifier nos choix et de donner les motivations de nos objectifs de recherche pour la presente these.

Les methodes de controle utilisant le formalisme de temps discret comme [BRANDIN et

W O N H A M , 1994] sont applicables si le SEDTR fonctionne et peut etre modelise comple-tement (expressions des contraintes temporelles) avec une horloge discrete. Cela limite sa generalite, comparativement au modele a temps dense [ A L U R et D I L L , 1994] qui est

plus commode pour l'analyse de certains systemes physiques. Pour obtenir une bonne precision avec le temps discret, il faut utiliser une petite unite (ou granularity) de temps, c'est-a-dire que l'evenement tick correspond a un faible ecoulement du temps. Cela favorise l'utilisation de constantes de temps elevees dans les contraintes temporelles, et entraine par consequent une explosion de l'espace des etats en raison du grand nombre d'evene-ments tick engendres. Ce probleme d'explosion des etats limite l'applicabilite de cette approche sur des systemes reels. Neanmoins, cette approche a l'avantage de la simplicity de la modelisation et peut beneficier aussi d'une implementation plus commode dans les systemes numeriques qui utilisent generalement une horloge discrete, et qui peuvent mieux etre traites dans ce cadre car le fonctionnement du systeme (evolution, changement d'etat) est lie aux impulsions de l'horloge. Pour reduire le probleme d'explosion de l'espace d'etats pour la methode de contrdle de [BRANDIN et W O N H A M , 1994], les auteurs de [ G O H A R I

et coll., 2003] proposent une methode de reduction de la complexity du probleme de syn-thase de controleur. La transformation proposee consiste a diminuer les bornes temporelles associees aux evenements, et est applicable sous certaines conditions. II s'agit done d'une homothetie qui augmente la valeur temporelle de l'evenement tick, ce qui a pour conse-quence de diminuer la precision du modele. Plus precisement, la transformation utilisee consiste a abaisser d'un facteur k (entier strictement positif) toutes les bornes tempo-relles et arrondir les bornes tempotempo-relles non entieres obtenues a l'entier le plus proche. Dans [Ho, 2000, 2003; KHATAB et NlEL, 1999], les auteurs proposent une autre approche

de controle supervise utilisant le temps discret permettant de reduire l'explosion des etats due a l'evenement tick. Cette approche est basee sur les predicats d'etats, qui permettent de modeliser la specification comme un ensemble d'etats desires plut6t que comme un ensemble de sequences d'evenements desirees. Ce qui permet de calculer un superviseur en analysant et explorant l'espace d'etat de l'automate sans le construire avec une repre-sentation explicite de l'evenement tick. Le principal inconvenient de cette approche est

(30)

CHAPITRE 1. Introduction 14

qu'elle permet de prendre en compte uniquement des specifications sur l'ordre des evene-ments. du SEDTR et non des specifications sur des contraintes temporelles. La methode de controle proposee dans [NOURELFATH et K H O U M S I , 2006] presente a peu pres les memes

inconvenients que celle de [BRANDIN et W O N H A M , 1994].

Les methodes utilisant le modele de temps dense d'ALUR et DlLL et qui sont basees sur une transformation des ATs en ARs telles que [ G O U I N et F E R R I E R , 2000; W O N G - T O I et HOFFMANN, 1991], ou les methodes symboliques (basees sur une exploration du graphe de regions par un operateur, sans que l'AR ne soit explicitement construit) telles que [ASARIN

et coll., 1998; G O U I N et F E R R I E R , 1999a; M A L E R et coll., 1995] ont egalement pour principal inconvenient l'explosion de l'espace des etats. En effet, la transformation d'un AT en AR engendre une explosion de l'espace des etats exponentielle sur le nombre d'horloges et de constantes utilisees dans l'expression des contraintes temporelles et polynomiale sur l'amplitude des constantes. Le temps dense utilise dans ces approches peut cependant etre un atout vu sa generalite. Ces methodes sont theoriquement correctes, mais du point de vue pratique, elles peuvent presenter des difficultes d'implementation. Cela est du a la materialisation du passage du temps par un evenement r abstrait (passage d'une region a une autre avec revolution du temps) qui ne specifie pas une duree fixe mais variable en fonction de Pexecution, pour les approches utilisant une transformation explicite des ATs en ARs. Vu que la technologie exige generalement de discretiser le temps dense pour implanter une solution, il est evident que cela compliquera le traitement de l'evenement r . Pour les methodes symboliques (exploration du graphe de regions sans construire l'AR), les algorithmes de synthese de superviseurs utilises manipulent le m6me espace d'etat que celui de l'AR, ce qui les rend pratiquement aussi complexes que les methodes fondees sur une transformation explicite en ARs.

L'approche de synthese de controleur utilisant la transformation SetExp [KHOUMSI et

O U E D R A O G O , 2004], proposee dans [KHOUMSI, 2005; K H O U M S I et coll., 2005] a l'avantage

de conduire a une moindre explosion de l'espace des etats liee a la transformation de l'AT en ASE. Cela s'explique par le fait que contrairement aux autres approches basees sur une transformation des ATs en AEFs, en pratique la transformation SetExp n'engendre pas une explosion importante des etats liee aux constantes utilisees dans l'expression des contraintes de temps. Cette approche semble done etre une alternative interessante pour des systemes ou les valeurs des contraintes temporelles sont relativement grandes. De meme, l'architecture d'implantation de controleurs proposee pour cette methode peut etre mise en oeuvre facilement. Des details sur les avantages de cette approche seront donnes dans les chapitres 2 et 3.

(31)

Comme mentionne ci-dessus, l'application de la theorie du contrdle a des SEDTRs concrets est limitee a cause notamment du probleme d'explosion combinatoire de l'espace des etats. Le controle modulaire permet de limiter l'effet de ce probldme au niveau implementation par l'utilisation de superviseurs modulaires en general plus reduits qu'un superviseur cen-tralise. Ce qui permet de limiter la complexite en ressource memoire necessaire a l'imple-mentation (chaque superviseur modulaire peut etre implante sur un processeur qui lui est dedie). Le controle modulaire a egalement comme avantage la flexibilite car le systeme est plus facile a modifier, a reparer et a mettre a jour, du fait que la modification d'une specification engendre la modification du superviseur individuel qui lui correspond. En ce qui concerne les avantages et inconvenients entre les differentes approches de synthese de controleurs modulaires (temps dense et temps discret), elles sont les mfimes que leurs contreparties centralisees traitees dans les paragraphes ci-dessus.

1.2.2 Objectifs poursuivis

Nous avons souligne en introduction a la section 1.2 l'importance des rnethodes formelles, notamment pour l'analyse et la conception des SEDTRs. Nous avons egalement vu dans la section precedente que le temps dense d'ALUR et DlLL etait interessant car plus general que le temps discret, mais que les rnethodes de controle supervise utilisant ce modele soufFraient du probleme d'explosion des etats et de difficultes d'implementation. Nous avons egalement souligne que l'approche utilisant la transformation SetExp [KHOUMSI et O U E D R A O G O , 2004; O U E D R A O G O et coll., 2006a] apportait une meilleure solution a cette problematique, de meme que l'approche modulaire etait avantageuse par rapport a l'approche centralisee. Vu les avantages indeniables de l'approche SetExp, nous avons pense qu'elle offrait une base interessante qui meritait d'etre approfondie et etendue. Nous avons done pose comme base de notre sujet de these le developpement de rnethodes de controle supervise (centralise, modulaire, partiellement observable) basees sur SetExp. Cela nous a conduit a nous fixer les cinq objectifs suivants :

1. ameliorer la methode de transformation SetExp en la generalisant aux ATs avec invariants de localite et en caracterisant de fagon plus rigoureuse ses proprietes et sa complexite;

2. approfondir et ameliorer la methode de controle centralise utilisant SetExp [KHOUMSI, 2005], en l'adaptant a notre version amelioree de SetExp;

3. developper une methode de controle supervise modulaire basee sur SetExp; 4. developper une methode de controle partiellement observable basee sur SetExp;

(32)

CHAPITRE 1. Introduction 16

5. realiser un outil logiciel implantant les algorithmes de la version amelioree de SetExp et des methodes de controles centralise et modulaire.

1.3 Resultats, contributions et organisation de la these

Dans cette section, nous presentons les resultats que nous avons obtenus suivant nos objec-tifs definis dans le section 1.2.2. Nous preciserons aussi nos contributions et l'organisation du reste du document.

1.3.1 Resultats

Conformement a nos objectifs fixes dans la section 1.2.2, nous avons obtenu les resultats suivants.

- Une meilleure version de SetExp qui supporte notamment les ATs avec des invariants de localites. Cette version amelioree de SetExp a fait l'objet d'une publication dans un article de conference internationale avec comite de lecture [OUEDRAOGO et coll., 2006a], et une version amelioree, etendue et detaillee a ete soumise a un journal [OUEDRAOGO et coll., 2008b].

- Une meilleure methode de synthese de superviseur centralise et une nouvelle methode de synthase de superviseurs modulaires. Ces methodes de controle sont basees sur une transformation des ATs en ASEs. Ces resultats ont fait l'objet d'une publication dans une conference internationale avec comite de lecture [OUEDRAOGO et coll., 2006b], et une version amelioree, etendue et detaillee a ete soumise a un journal [OUEDRAOGO et coll., 2008a].

- Une methode avec une procedure formelle de synthese de superviseurs pour des SEDTRs partiellement observables. Cette methode de contrdle est basee sur une transformation des ATs en ASEs. Cette methode de controle a fait l'objet d'une publication dans une conference internationale avec comite de lecture [OUEDRAOGO et coll., 2008d].

- Un outil (logiciel) de synthese de superviseur implementant les algorithmes de la derniere version de SetExp et des methodes de synthase de superviseurs centralises et modulaires.

1.3.2 Contributions de la these a I'avancement des connaissances

Suivant les resultats presentes dans la section 1.3.1, nous pouvons dresser les contributions de cette these comme suit.

(33)

Pour la methode de transformation SetExp, nos principals contributions, par rapport a la version precedente [KHOUMSI et O U E D R A O G O , 2004], sont les suivantes :

- nous proposons un article mieux structure, mieux presente et avec plus d'explications; - une version plus generate qui supporte les ATs avec des localites marquees et des

inva-riants de localites;

- des ASEs reduits, en raison du fait que nous identifions et fusionnons des etats equiva-lents et identifions des transitions qui peuvent etre supprimees sous certaines conditions; - nous donnons les preuves de toutes les propositions et de tous les theoremes;

- nous etudions en detail la complexite de SetExp.

Cette version arnelioree de SetExp contribue a la reduction du probleme d'explosion de l'espace d'etats qui survient suite a une telle transformation. En effet, en pratique, l'espace d'etats d'un ASE ne croit pas avec l'amplitude des constantes utilisees dans l'expression des contraintes temporelles, contrairement a la transformation en ARs et au temps discret. De plus, SetExp offre une architecture d'implementation pratique simple et facilement realisable.

Pour la methode de synthese de superviseurs centralises, nos principales contributions, par rapport a [KHOUMSI, 2005; K H O U M S I et coll., 2005] sont les suivantes :

- l'utilisation de notre version arnelioree de SetExp;

- une amelioration des concepts, par exemple l'equation de definition de la controlabi-lite et l'architecture d'implementation, ainsi qu'une meilleure presentation avec plus d'explications;

- une procedure arnelioree de synthese de superviseur, notamment l'utilisation d'un ope-rateur adapte de produit synchronise et d'une notion de conformite permettant d'avoir des superviseurs plus permissifs;

- la preuve de toutes les nouvelles propositions et de tous les nouveaux theoremes; - l'etude detaillee de la complexite de la methode de synthese de superviseurs.

Ces contributions sont des ameliorations aux methodes de synthese presentees dans [KHOUMSI, 2005; KHOUMSI et coll., 2005]. Par rapport a d'autres methodes de synthese de superviseurs centralises comme par exemple [GOUIN et FERRIER, 2000; SPATHOPOULOS, 2003b; WONG-Toi et HOFFMANN, 1991], notre methode est avantageuse parce qu'elle est fondee sur une methode de transformation des ATs en AEFs engendrant moins d'explosion de l'espace des etats, et possede une architecture d'implementation concrete simple. Notre methode de synthese de superviseurs modulaires est entitlement nouvelle, du fait qu'il n'existe pas dans la litterature une autre methode de contr6le modulaire pour le temps dense. Nous avons done congu la procedure de synthese de superviseurs modulaires

(34)

CHAPITRE 1. Introduction 18

et avons prouve toutes les propositions et tous les theoremes qui valident son exactitude et ses proprietes. Cette nouvelle methode permet done d'une part de profiter des avantages de SetExp et d'autre part des avantages de l'approche modulaire et constitue done une contribution significative a l'avancement des connaissances dans ce domaine.

Pour la methode de synthese de superviseurs avec observation partielle, nous nous sommes bases sur les idees presentees dans [KHOUMSI, 2002b]. Dans [KHOUMSI, 2002b], l'auteur presente l'idee et les grandes lignes d'une methode de controle avec observation partielle basee sur l'idee de SetExp, cette derniere n'etant pas formellement presentee a cette date. Une procedure formelle avec un algorithme precis de synthese des superviseurs n'etait pas presentee dans cet article. Nous avons done repris les idees de [KHOUMSI, 2002b] et avons developpe une methode formelle de synthese de superviseurs avec observation partielle utilisant notre version amelioree de SetExp. Pour le temps dense, une methode de synthase de superviseurs centralises avec observation partielle presente dans la litterature est celle de [ B O U Y E R et coll., 2003]. Cette methode utilise la transformation des ATs en ARs et est basee sur la theorie des jeux. Notre methode de controle avec observation partielle est done avantageuse par rapport a celle de [BOUYER et coll., 2003] du fait qu'elle utilise une transformation des ATs en AEFs engendrant moins d'explosion de l'espace des etats, et possede une architecture d'implementation concrete simple.

Nous avions realise une implementation de la premiere version de SetExp dans [OUEDRAOGO, 2003]. Pour l'outil de synthese de superviseurs, nomme SEAtool, nous avons done premierement adapte l'implementation de cette version de SetExp pour prendre en compte les ameliorations de SetExp presentees ci-dessus. Ensuite, nous avons imple-ments entierement les methodes centralisee et modulaire de synthese de superviseurs. Nous avons teste SEAtool sur des exemples concrets. Cet outil peut servir a appliquer nos methodes de controle sur des SEDTRs complexes pour lesquels il n'aurait pas ete possible de synthetiser manuellement des superviseurs avec nos methodes centralisee et modulaire de synthese de superviseurs. II est a remarquer que nos contributions dans SetExp, dans les methodes centralisee et modulaire de synthese de superviseurs et dans la methode de synthese de superviseurs avec observation partielle, sont reprises respectivement dans les introductions des chapitres 2, 3 et 4.

1.3.3 Organisation de la these

Nous presentons une these par articles avec un chapitre s u p p l e m e n t a l ne constituant pas un article. Les articles inclus sont deux articles soumis a un journal international avec

(35)

comite de lecture, qui sont des versions etendues et ameliorees de deux articles publies dans des conferences internationales avec comite de lecture, et un article publie dans une conference internationale avee comite de lecture. La these est structures comme suit. - Le chapitre 2 presente la methode de transformation SetExp. Ce chapitre est un article

soumis [OUEDRAOGO et coll., 2008b], ce dernier etant une version etendue et amelioree de l'article [OUEDRAOGO et coll., 2006a] deja publie et annexe a la these.

- Le chapitre 3 presente les methodes de controle centralise et modulaire. Ce chapitre est un article soumis [OUEDRAOGO et coll., 2008a], ce dernier etant une version etendue et amelioree de l'article [OUEDRAOGO et coll., 2006b] deja publie et annexe a la these. - Le chapitre 4 presente la methode de controle avec observation partielle. Ce chapitre

est un article publie [OUEDRAOGO et coll., 2008d].

- Le chapitre 5 presente sommairement l'outil SEAtool que nous avons developpe ansi que des exemples d'applications concretes de nos methodes de controle.

- Le chapitre 6 presente la conclusion, dans laquelle nous resumons nos contributions et presentons les perspectives de cette these.

- Dans les annexes sont presenter deux chapitre : un chapitre presentant toutes les preuves (demonstrations) des theoremes et propositions enonces dans les chapitres 2 et 3 pitre A), et un chapitre constituant un guide d'utilisation de l'outil SEAtool (cha-pitre B).

(36)
(37)

SetExp : Transformation des automates

temporises [ A R T I C L E ]

Avant propos

L'integralite de ce chapitre est un article qui a ete soumis a la revue International Journal of Control. Cet article est une version amelioree et etendue de l'article intitule Methode de

Transformation d 'Automates Temporises avec Invariants de Localites publie a "6e Confe-rence Francophone de MOdelisation et SIMulation (MOSIM'06)" [OuEDRAOGO et coll., 2006a], et qui est disponible dans l'appendice. Toutes les preuves des theoremes et propo-sitions enonces dans ce chapitre, qui sont annexes a l'article soumis, sont fournis dans la section A.l du chapitre A en annexe.

AUTEURS : Lucien Ouedraogo, Ahmed Khoumsi, Mustapha Nourelfath R e s u m e

Les systemes a evenements discrets temps-reel (SEDTRs) sont des systdrnes a evenements discrets (SEDs) avec des contraintes ternporelles, et peuvent etre modelises par des au-tomates temporises (ATs). Les ATs sont commodes pour modeliser les SEDTRs, mais ne sont pas appropries pour les etudier, contrairement aux automates a etats finis (AEFs) qui sont appropries pour etudier les SEDs. Pour prendre en compte les avantages des AEFs, une approche pour etudier les SEDTRs est de transformer les ATs les modelisant en AEFs qui leurs sont equivalents, et de faire l'etude sur le modele AEF. Dans cet article, nous presentons une methode de transformation dATs en AEFs speciaux appeles automates Set-Exp (ASEs). La methode de transformation, appelee SetExp, modelise le passage du temps comme des evenements reels de deux types : les evenements Set qui correspondent aux remises a zero et a la programmation des horloges, et les evenements Exp qui corres-pondent aux expirations des horloges. SetExp lirnite le probleme d'explosion de l'espace d'etats qui survient dans des methodes de transformation similaires, notamment quand les amplitudes des constantes utilisees pour exprimer les contraintes ternporelles sont ele-vees. De plus, SetExp est appropriee, par exemple, pour le controle supervise et le test de conformite des SEDTRs.

Figure

Figure 2.6 Architecture of SEA model
Figure 2.7 SEA corresponding to the IA of Figure 2.8
Figure 2.11 SEA corresponding to the TA of Fig. 2.10(a), for i = 1, i.e k2 &lt; kl &lt; Ikl
Figure 2.13 Illustration of removing of unconditioned transitions
+7

Références

Documents relatifs

2- Un circuit en dérivation est un circuit qui comporte plusieurs boucles de courant. 3- Dans un circuit en série, si un dipôle tombe en panne les autres cessent de fonctionner. 4-

[r]

[r]

On code avec 10 chiffres (0 à 9), la place occupée par chaque chiffre dans un nombre est le rang (on commence au rang 0) Le poids est la quantité représentée par une unité d’un

Par opposition aux systèmes dynamiques dont l'évolution est continue dans le temps et peut être décrite par des équations différentielles, les Systèmes à Evénements

CPGE – PTSI Mr Pernot Modélisation des systèmes à évènements discrets: Logique combinatoire.. CPGE – PTSI Mr Pernot Modélisation des systèmes à évènements

Le BCD est très commun dans les systèmes électroniques lorsqu'une valeur numérique doit être affichée, spécialement dans les systèmes ne consistant que de

Déterminer une primitives de chacune des fonctions suivantes sur l intervalle I.. Déterminer toutes les primitives de