La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

 8 avril 20031  Tahiti 2003 : Calcul efficace de trajectoires utilisant l'interversibilité.

Présentations similaires


Présentation au sujet: " 8 avril 20031  Tahiti 2003 : Calcul efficace de trajectoires utilisant l'interversibilité."— Transcription de la présentation:

1  8 avril 20031  Tahiti 2003 : Calcul efficace de trajectoires utilisant l'interversibilité

2  8 avril 20032  Plan ► PrésentationPrésentation ► FormalismeFormalisme ► Présentation des exemplesPrésentation des exemples ► L’interversibilitéL’interversibilité ► AlgorithmesAlgorithmes ► ExemplesExemples ► ConclusionConclusion

3  8 avril 20033  Problématique diagnostic de systèmes dynamiques  calcul des événements sur le système [Cordier::Largouët::2001] planification  calcul des actions à appliquer sur le système diagnostic  planification  calcul de trajectoires sur un modèle comportemental

4  8 avril 20034  Problème Problème de l'explosion du nombre d'états ► utilisation des outils symboliques (BDD, [Marchand::Rozé::2002] ) ► utilisation des techniques de model-checking ( [Cordier::Largouët::2001] ) ► utilisation d'heuristiques (diagnostic décentralisé [Pencolé::2001] )

5  8 avril 20035  L’interversibilité définition informelle Définition d'une propriété sur les événements Deux événements sont interversibles si on peut les échanger dans une séquence sous certaines conditions

6  8 avril 20036  Modèle modulaire Automate A = (déterministe) ► Q : ensemble des états ► E : ensemble des étiquettes de transition (événements) ► T : ensemble des transitions Une transition t : (q1,e,q2) q1 : l’état de départ e : l’événement déclencheur q2 : l’état d’arrivée

7  8 avril 20037  Produit synchronisé Automate A = produit synchronisé des automates A i = : ► Q = Q 1 ...  Q n ► E = E 1 ...  E n ► T = { ((q 1,...,q n ),e,(q 1 ',...,q n ') |  i (e  E i  (q i,e,q i ')  T i )  (e  E i  q i = q i ')}

8  8 avril 20038  Applicabilité ► Événement applicable (enabled ) : e est applicable (noté en e (q) ) en q  Q ssi (e  E)  (  q'  Q, (q,e,q')  T) ► Application : On note e(q), défini si e est applicable en q, l'état q' tel que (q,e,q')  T

9  8 avril 20039  Applicabilité (suite) Théorème 1 : Sur un automate A = produit synchronisé de A i = si q = (q 1,…,q n )  Q en e (q) =  i en e (q i ) (= en e (q 1 ) ...  en e (q n ))

10  8 avril 200310  Applicabilité (fin) ► Applicabilité d'une suite  = e 1 ; … ; e k d'événements :  est applicable en un état q si les événements successifs sont applicables : en  (q) = en e1 (q) et en  (e 1 (q)), (  = e 2 ;... ; e k ) ► Application d'une suite  = e 1 ; … ; e k d'événements : Application successive des événements :  (q) = e k (… (e 1 (q) …)

11  8 avril 200311  Trajectoire Une suite d'événements  est une trajectoire sur un automate si elle est applicable dans un des états de l'automate

12  8 avril 200312  Exemple de diagnostic Système de télécommunication ► Un ensemble de composant Comp_i ► Un centre technique TC qui reçoit les messages de panne

13  8 avril 200313  Constitués de deux parties : ► L'unité qui peut tomber en panne ► Le contrôleur qui communique avec le TC Composants unit_i controller_i

14  8 avril 200314  Centre technique Constitué de deux parties : ► Le TC en lui même reçoit les messages ► Le compteur vérifie le nombre de composants en panne TC counter

15  8 avril 200315  ► Étant donnée une série d'observations, retrouver une séquence d'événements expliquant les observations ► Exemple : â Compteur = 1 â Observations = (doAlarm_1) â Diagnostic = (fault_1 ; inc ; alarm ; do_Alarm_1 ; back_1) But du diagnostic

16  8 avril 200316  Bomb in the Toilet [McDermott::1987] (version déterministe) ► n valises armées d'une bombe ► Neutraliser une bombe se fait en jetant la bombe dans les toilettes (dunk_i) ce qui bouche les toilettes ► Si les toilettes sont bouchées, il faut tirer la chasse d'eau (flush) Système à planifier

17  8 avril 200317  Modélisation But : trouver un plan pour neutraliser les bombes et conserver les toilettes débouchées valise i toilettes

18  8 avril 200318  ► Soit L, un langage composé de séquences d'événements. ► Deux événements a et b (a  b) sont interversibles sur un langage L dans un automate A= ssi  q  Q,   L :  en a;  ;b (q)  en b;  ;a (q) â en a;  ;b (q)  a;  ;b(q) = b;  ;a(q) ► On note : a  b(L) Interversibilité

19  8 avril 200319  Théorème 2 Si deux événements a et b peuvent être intervertis sur les langages L i dans les automates Ai, alors a et b peuvent être intervertis sur le langage L dans l'automate A avec : L = L 1 ...  L n et A = synchronisation des automates A i

20  8 avril 200320  But de l'algorithme Deux séquences s1 et s2 sont inv-équivalentes si s2 peut être obtenue à partir de s1 en intervertissant des événements conformément aux propriétés d'interversibilité But : éviter de développer deux séquences inv-équivalentes

21  8 avril 200321  ► Noeud_racine = creer_noeud_racine(etatInitial) ► Noeuds_non_developpes = {Noeud_racine} ► tant que (aucune solution trouvée) et (il reste des noeuds non développés) â n'  choisir un noeud de Noeuds_non_developpes â pour tout événement b applicable en n', b != evites(n') ó n  creer_ noeud (n') ó calcul_ evites (n,n') â fin pour tout ► fin tant que Algorithme de dépliage d'automate

22  8 avril 200322  Exemple Automate très simple avec a  b({c}) Dépliage normal Algorithme 1

23  8 avril 200323  Calcul de L(a) ► Soient un nœud n et son nœud père n’ ► Soit b l’événement menant de n’ à n ► Soit L ab le langage tel que a  b(L ab ) ► L n (a) = suffixe(L n ’(a),b)  L â avec L = L ab si a a déjà été développé depuis n’ â L =  sinon

24  8 avril 200324  ► Permet de construire des langages L ab tels que a  b(L ab ) ► Les langages construits sont de la forme S* avec S  E pour qu'ils soient plus faciles à manipuler Algorithme 2

25  8 avril 200325  Exemple du diagnostic ► Beaucoup d’événements interversibles â Exemple : fault_i  fault_j(S*), avec : S = {fault_k, back_k, doAlarm_k, inc, doReset | i  j, i  k, j  k}

26  8 avril 200326  Exemple de la planification ► Interversibilité entre les événements dunk_i â Exemple : dunk_i  dunk_j(S*), avec : S = {flush, dunk_k, | i  j, i  k, j  k}

27  8 avril 200327  Conclusion et perspectives ► Conclusion : â L’interversibilité permet de réduire le nombre de transitions explorées dans certains cas â Définition de traces de séquences inv-équivalentes ► Perpectives : â Généralisation pour des automates non déterministes (applicabilité)


Télécharger ppt " 8 avril 20031  Tahiti 2003 : Calcul efficace de trajectoires utilisant l'interversibilité."

Présentations similaires


Annonces Google