• Aucun résultat trouvé

Nous présentons dans cette section un aperçu sur quelques outils développés dans la littérature, permettant l’implémentation de notre algorithme de construction du diagnos-tiqueur. Ensuite, nous présentons une étude de la complexité des algorithmes employés par notre approche de diagnostic.

4.6.1 Quelques éléments sur l’implémentation de notre approche

Plusieurs outils ont été développés dans la littérature permettant la modélisation et l’analyse des automates temporisés. Nous pouvons citer l’outil de vérification des systèmes temporisés Uppaal (Larsen et al., 1997) qui correspond à l’un des outils les plus répandus dans le milieu industriel. Cet outil se base sur une représentation des zones d’horloges par une structure de données appelée DBM (signifie "Difference Bound Matrice"). Cette structure de donnée a été initialement développée pour la représentation des contraintes de différences (Cormen et al., 1990), ensuite, elle a été utilisée pour

l’analyse des automates temporisés (Alur, 1999). Les opérations nécessaires à l’analyse en avant ont été développées sur la base de DBM (Bengtsson et Yi., 2004). Afin d’avoir une représentation plus compacte des zones non-convexes, plusieurs améliorations ont été introduites sur cette structure de donnée telle que l’utilisation des CDD "Clock Difference Diagrams" (Pearson et al., 1998). Cette structure de donnée peut être envisagée pour l’implémentation de notre algorithme de synthèse du diagnostiqueur.

4.6.2 Etude de la décidabilité et de la complexité des algorithmes

utilisés

Nous nous intéressons d’abord à l’étude de la décidabilité de l’algorithme de synthèse du diagnostiqueur. Ensuite, nous estimons la complexité de cet algorithme.

Nous avons souligné que l’analyse en avant de l’espace d’état d’un automate temporisé vérifiant l’hypothèse H4 est décidable. Cette hypothèse implique l’existence d’un nombre fini d’états symboliques accessibles. En effet, l’espace d’horloges accessible par le système correspond à un hypercube de dimension K, lorsqu’il s’agit de sommets non-finaux. Par ailleurs, l’ensemble d’états symboliques accessibles, associés à des sommets finaux, est fini puisque ces états n’admettent pas des successeurs discrets. L’arrêt de notre algorithme de construction du diagnostiqueur découle de la finitude de l’ensemble d’états symboliques accessibles. Ceci est justifié par le fait qu’un sommet du diagnostiqueur est composé d’un ensemble de couples (sommet,étiquette) associé à une zone d’horloge de l’espace d’état accessible. Puisque les ensembles correspondant à ces éléments sont finis, nous pouvons conclure que l’ensemble des sommets du diagnostiqueur est aussi fini, et par conséquent, l’algorithme de construction du diagnostiqueur s’arrête au bout d’un nombre fini de calcul de successeurs.

Théoriquement, la complexité de l’algorithme de construction du diagnostiqueur est doublement exponentielle en fonction de la taille de l’automate temporisé du système et de la constante choisie K. Cette grande complexité est attendue puisque nous manipu-lons des zones d’horloges non-convexes. Cependant, cette complexité est beaucoup moins importante dans la pratique. En effet, il est reconnu que l’utilisation d’algorithmes mani-pulant les zones d’horloges est plus efficace que ceux manimani-pulant une abstraction plus fine telle que les régions (Alur, 1999). Cependant, la complexité théorique des algorithmes manipulant des régions est moins importante que ceux manipulant des zones.

La complexité de vérification de la diagnosticabilité est polynomiale en fonction du nombre des sommets du diagnostiqueur, puisqu’il s’agit d’un algorithme de détection de cycles.

4.7 Conclusion

Nous avons présenté au cours de ce chapitre le principe de notre approche de diag-nostic de SED à base d’automates temporisés.

Dans un premier volet, nous avons défini le cadre de modélisation de notre approche. Ainsi, le système à diagnostiquer est modélisé par un automate temporisé décrivant à la fois son comportement normal et ses comportements défaillants. Ce modèle doit respecter certaines spécifications et hypothèses indispensables pour la construction du diagnosti-queur. Ensuite, nous avons présenté, intuitivement puis formellement, notre approche de diagnostic qui se base sur la construction d’un diagnostiqueur. Ce diagnostiqueur est un automate temporisé déterministe qui évolue en fonction des événements observables générés par le système et estime l’état courant du système et les occurrences de dé-fauts. Un fonction de décision, analyse le sommet courant du diagnostiqueur et annonce l’occurrence d’un défaut du mode Fi lorsque ce sommet est Fi-certain.

Dans un deuxième volet, nous avons étudié la diagnosticabilité du système à diagnos-tiquer. Nous avons établi que l’utilisation d’un diagnostiqueur est soumise à la vérification de notion de diagnosticabilité par le modèle du système considéré. Ensuite, nous avons présenté une méthode systématique permettant de vérifier la diagnosticabilité d’un mo-dèle. Cette méthode repose sur la détection dans le modèle du diagnostiqueur des cycles Fi-indéterminé et des sommets finaux Fi-incertain. Un théorème liant la notion de diag-nosticabilité et la vérification de ces conditions a été formalisé. Enfin, nous avons présenté une étude préliminaire de la complexité des algorithme présenté ainsi que quelques détails liés à l’implémentation de notre approche.

Dans le chapitre suivant, nous allons proposer une approche de diagnostic pour les SDH. L’utilisation des modèles hybrides pour le diagnostic des SDH représente un grand défit à remonter vue les nombreux problèmes indécidables liées à ses modèles et leur grande complexité. Ainsi, peu de concepts, développés dans notre démarche de diagnostic à base d’automates temporisés, peuvent être appliqués dans le cas de modèles hybrides.

Diagnostic des systèmes hybrides