Projet : EP-ATR

previous up next contents
Précédent : Format commun DC+ et multi-formalisme Remonter : Résultats nouveaux Suivant : Synthèse d'automatismes discrets


Sous-sections


   
Vérification et validation

 



Participants : Olga Kouchnarenko, Michel Le Borgne, Hervé Marchand, Sophie Pinchinat.

Mots clés : vérification, Sigali, système dynamique polynomial, Signal, DC+, génération d'automate, bisimulation, BDD, système hybride .

Résumé :

Nous avons défini une équivalence comportementale appelée la bisimulation symbolique pour les systèmes dynamiques polynomiaux et les automates associés. Un algorithme pour le calcul de la bisimulation symbolique utilisant les techniques de vérification de l'outil Sigali a été proposé et est en cours d'implémentation. Dans le cadre général de la validation des modèles, nous avons débuté, sur une étude de cas, un travail sur la combinaison de systèmes discrets et de systèmes continus en utilisant Signal et Simulink.

   
Plate-forme de vérification basée sur les automates


Nous avons poursuivi le développement des méthodes de vérification basées sur les automates. La philosophie de l'approche est basée sur des modèles comportementaux dits intensionnels (encore appelés symboliques ou implicites), que l'on obtient très naturellement à partir des spécifications en langage Signal ou en DC+ [[26],[25],[43]]. Les algorithmes proposés seront implémentés dans l'outil de vérification Sigali. Pour cela, Sigali est en cours d'extension significative afin d'intégrer les algorithmes de calcul d'équivalence de bisimulation symbolique et de calcul de modèle implicite quotient (ce point est encore au stade de test).

En réalité, l'outil Sigali va être intégré dans une plate-forme de vérification plus vaste. Cette plate-forme a pour objectif de proposer à l'utilisateur/développeur d'applications Signal une palette d'outils de vérification dont les caractéristiques diffèrent dans la nature de l'implémentation. Elle comprendra le vérificateur Sigali, à savoir les algorithmes de géométrie algébrique sur les polynômes pour la vérification de propriétés temporelles, mais aussi les dernières extensions de techniques de vérification par fusion d'états, telles que la bisimulation. L'implémentation actuelle de ces techniques étant basée sur un package de TDD, adapté d'un package BDD existant, nous commençons à étudier la possibilité de mettre ce package en concurrence avec d'autres packages (tels que des packages BDD récemment développés, et donc sans doute plus performants), dans l'optique d'une mesure de performance et d'une amélioration de notre outil.

Simulation de systèmes hybrides


Dans le cadre de la validation des modèles, nous avons étudié la possibilité de combiner des spécifications de systèmes discrets et de systèmes continus, en vue de permettre la simulation d'un programme de contrôle dans un environnement «réaliste», c'est-à-dire décrit par des spécifications analogiques.

Nous avons débuté l'étude sur un cas d'une application EDF, qui décrit un contrôleur de pompes, garantissant un niveau minimal de remplissage d'un réservoir. Nous avions, d'une part, la description du contrôleur discret en DFL (Diagrammes Fonctionnels Logiques), et d'autre part, la description du fonctionnement du procédé (les trois pompes) par des DFA (Diagrammes Fonctionnels Analogiques). En utilisant le traducteur automatique de DFL vers le langage Signal, développé dans le projet, nous avons engendré le modèle du contrôleur. Pour la partie analogique, nous avons pu obtenir sa description en planches Simulink, fournies par EDF.

Ces deux formalismes (Signal et Simulink) ont donc fait l'objet d'un premier travail d'intégration. Le résultat de ce travail est un outil de fusion de spécifications, dont le modèle résultant est utilisable par le simulateur de la plate-forme Signal. Son implémentation a été réalisée par Thomas Kesten. Actuellement, la taille des pas de calcul dans le modèle continu est fixée statiquement, puisque imposée par l'outil de communication Real-Time-Workshop proposé dans Simulink, afin de permettre la génération du module C invoqué dans le programme Signal appelant. Cette première solution n'est que partiellement satisfaisante : en effet, le comportement des spécifications analogiques demanderait à terme de pouvoir parfois raffiner dynamiquement la taille des pas de calcul, si le comportement du modèle s'avère traverser un passage très évolutif, en ses valeurs, en ses changements de dérivées, etc. La question du raffinement dynamique des pas de calcul s'inscrit parfaitement dans la philosphie du sur-échantillonnage du langage Signal.

Ces travaux sont conduits dans le cadre du projet européen Syrf (voir section 7.5).



previous up next contents
Précédent : Format commun DC+ et multi-formalisme Remonter : Résultats nouveaux Suivant : Synthèse d'automatismes discrets