Télécharger la présentation
La présentation est en train de télécharger. S'il vous plaît, attendez
Publié parArchimbaud Jacquemin Modifié depuis plus de 9 années
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é)
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.