Download Free Influence De La Prise En Compte Dun Modele De Processus En Verification Formelle Des Systemes A Evenement Discrets Book in PDF and EPUB Free Download. You can read online Influence De La Prise En Compte Dun Modele De Processus En Verification Formelle Des Systemes A Evenement Discrets and write the review.

L'objectif principal de cette thèse est d'évaluer les apports, les limites et les complémentarités de la vérification du comportement d'un contrôleur logique par model checking en prenant en compte, ou non, un modèle du processus commandé. La vérification formelle d'un ensemble représentatif de propriétés est traitée sur un système automatisé servant d'exemple support. Nous généralisons ces résultats et présentons une approche mixant la vérification formelle avec et sans modèle de processus. Cette approche est basée sur une double typologie des propriétés et des variables utilisées pour les exprimer. On distingue d'une part les propriétés de vivacité des propriétés de sûreté, et d'autre part les propriétés exprimées à partir de variables contrôlables ou non. Cette approche couplée propose un cadre de vérification plus rigoureux et plus sûr que celui de l'utilisation la plus souvent pratiquée, sans aucun modèle de processus.
This book presents endeavors to join synergies in order to create added value for society, using the latest scientific knowledge to boost technology transfer from academia to industry. It potentiates the foundations for the creation of knowledge- and entrepreneurial cooperation networks involving engineering, innovation, and entrepreneurship stakeholders. The Regional HELIX 2018 conference was organized at the University of Minho’s School of Engineering by the MEtRICs and Algoritmi Research Centers, and took place in Guimarães, Portugal, from June 27th to 29th, 2018. After a rigorous peer-review process, 160 were accepted for publication, covering a wide range of topics, including Control, Automation and Robotics; Mechatronics Design, Medical Devices and Wellbeing; Cyber-Physical Systems, IoT and Industry 4.0; Innovations in Industrial Context and Advanced Manufacturing; New Trends in Mechanical Systems Development; Advanced Materials and Innovative Applications; Waste to Energy and Sustainable Environment; Operational Research and Industrial Mathematics; Innovation and Collaborative Arrangements; Entrepreneurship and Internationalization; and Oriented Education for Innovation, Engineering and/or Entrepreneurship.
La vérification formelle des contrôleurs logiques a donné lieu à de nombreux travaux scientifiques cette dernière décennie. Elle permet de démontrer (obtention d'un niveau requis de sûreté de fonctionnement (SdF) des systèmes industriels, et tout particulièrement des systèmes critiques. Nos travaux portent sur la preuve des propriétés relatives à la qualité du service rendu par le système automatisé, que nous nommons des propriétés quantitatives. Par exemple, au lieu de vérifier que plusieurs produits ont effectivement été dosés avant d'enclencher un mélange puis une réaction chimique, il peut être important de prouver que la bonne quantité de ces produits a été dosée. Autre exemple, au lieu de prouver qu'un mobile s'arrête dans une position donnée, il peut être important de prouver que cet arrêt en position s'effectue avec une précision garantie. Ce sont de telles propriétés quantitatives que nous nous sommes attachés à être capables de prouver pour les systèmes à évènement discrets (SED), et plus exactement pour une sous classe des SED : les systèmes logiques. Dans ce mémoire nous explorons l'apport des automates hybrides pour la prise en compte simultanée du caractère discret du contrôleur et continu du processus. A cette fin, nous introduisons un formalisme d'automates hybrides à transitions typées et nous proposons une méthodologie de modélisation basée sur des automates modulaires génériques. La vérification est alors obtenue par le model checker PHAVer. Deux études de cas sont présentées en fin de mémoire.
Avec l'évolution des technologies, la complexité des systèmes informatiques ne cesse de s'accroître. Parmi ces systèmes, on retrouve les logiciels critiques qui doivent offrir une garantie de sûreté de fonctionnement qui s'avère crucial et pour lesquels un dysfonctionnement peut avoir des conséquences graves. Les méthodes formelles fournissent des outils permettant de garantir mathématiquement l'absence de certaines erreurs. Ces méthodes sont indispensables pour assurer les plus hauts niveaux de sûreté. Mais l'application de ces méthodes sur un code système bas niveau se heurte à des difficultés d'ordre pratique et théorique. Les principales difficultés concernent la prise en compte des aspects bas niveau, comme les pointeurs et les interactions avec le matériel spécifique. De plus, le fait que ces systèmes soient concurrents conduit à une augmentation exponentielle du nombre de comportements possibles, ce qui rend plus difficile leur vérification. Dans cette thèse, nous proposons une méthodologie pour la spécification et la vérification par model-checking de ce type de systèmes, en particulier, ceux implémentés en C. Cette méthodologie est basée sur la traduction de la sémantique de C en TLA+, un langage de spécification formel adapté à la modélisation de systèmes concurrents. Nous avons proposé un modèle de mémoire et d'exécution d'un programme C séquentiel en TLA+. En se basant sur ce modèle, nous avons proposé un ensemble de règles de traduction d'un code C en TLA+ que nous avons implémenté dans un outil, appelé C2TLA+. Nous avons montré comment ce modèle peut s'étendre pour modéliser les programmes C concurrents et gérer la synchronisation entre plusieurs processus ainsi que leur ordonnancement. Pour réduire la complexité du model-checking, nous avons proposé une technique permettant de réduire significativement la complexité de la vérification. Cette réduction consiste pour un code C à agglomérer une suite d'instructions lors de la génération du code TLA+, sous réserve d'un ensemble de conditions.Nous avons appliqué la méthodologie proposée dans cette thèse sur un cas d'étude réel issu de l'implémentation d'un micronoyau industriel,sur lequel nous avons vérifié un ensemble de propriétés fonctionnelles. L'application de la réduction a permis de réduire considérablement le temps de la vérification, ce qui la rend utilisable en pratique.Les résultats ont permis d'étudier le comportement du système, de vérifier certaines propriétés et de trouver des bugs indétectables par des simples tests.
Ce travail s'intéresse à la preuve de propriétés de sûreté sur les programmes. Prouver de telles propriétés revient généralement à démontrer que les configurations critiques ne sont jamais atteintes lors de l'exécution du programme. Pour ces propriétés, nous proposons une technique de vérification semi-automatique qui tente de combiner les avantages du model-checking, interprétation abstraite et preuve interactive. Comme en model-checking, cette technique permet de prouver automatiquement des propriétés de sûreté sur les systèmes finis, ainsi que sur certaines classes de systèmes infinis ayant une présentation finie. En dehors de ces classes et comme en interprétation abstraite, notre technique permet d'approcher le comportement infini d'un système par une sur-approximation sûre. Enfin, lorsque les approximations sont trop grossières, il nous est possible d'intervenir manuellement sur la définition des approximations afin de les raffiner et, si cela est possible, de mener la preuve à son terme. Cette approche est basée sur les systèmes de réécriture qui sont un des outils centraux de la déduction automatique. Nous les utilisons comme formalisme pour représenter les programmes: une configuration de programme est représentée par un terme et les transitions entre configurations par des règles de réécriture. Sur de tels modèles, prouver la sûreté d'un programme revient à faire une analyse d'atteignabilité, c.-à-d. vérifier que les termes représentant les configurations critiques sont inatteignables par réécriture des termes initiaux. L'ensemble des termes atteignables est représenté par un automate d'arbre. La construction de cet automate est effectuée en utilisant un algorithme de complétion spécifique. Pour la définition des approximations, nous avons proposé deux langages spécifiques, l'un calqué sur la structure des automates et l'autre utilisant des équations sur les termes. Ce dernier permet, en particulier, d'estimer la précision des approximations construites par rapport à la réécriture modulo équations. Cette technique a été expérimentée pour la vérification de protocoles cryptographiques ainsi que pour le protoypage rapide d'analyses statiques de programmes Java byte code.
Le cadre général dans lequel se situe cette thèse concerne l’amélioration de la vérification et la validation des modèles de simulation par l'intégration des méthodes formelles. Notre approche consiste à doter les modèles DEVS d’une approche de vérification formelle basée sur le langage Z. DEVS est un formalisme qui permet la description et l'analyse du comportement des systèmes à évènements discrets, c'est à dire, les systèmes dont le changement d'état dépend de l'occurrence d'un évènement. Un modèle DEVS est essentiellement validé par la simulation qui permet de vérifier si celui ci décrit bien le comportement du système. Cependant, la simulation ne permet pas de détecter la présence d’une éventuelle inconsistance dans le modèle (un conflit, une ambiguïté ou une incomplétude). Pour cela, nous avons intégré un langage de spécification formelle dans le formalisme DEVS connu sous le nom de Z. Cette intégration consiste à: (1) transformer un un modèle DEVS vers une spécification Z équivalente et (2) vérifier la consistance de la spécification résultante utilisant les outils développés par la communauté Z. Ainsi un modèle DEVS est soumis à une vérification formelle automatique avant son passage à la phase de simulation.
Il y a dix ans à peine, la simulation n'était utilisée qu'en dernier recours. Force est de constater qu'aujourd'hui elle a pris le pas sur les autres techniques d'évaluation de systèmes. L'étude présentée concerne la simulation à événements discrets (SED) dont les outils sont de plus en plus sophistiqués avec, notamment, l'apparition d'environnements de SED. L'objet de cette thèse est de fournir une contribution à la spécification d'un environnement de SED. Il s'agit, en premier lieu, de cerner ses orientations et de dresser la liste des exigences qu'il doit satisfaire. Un deuxième travail consiste à caractériser le profil d'une méthode de modélisation pour la SED dont l'application conduit à plusieurs abstractions du système étudié, et notamment une description de son comportement basée sur le formalisme des Statecharts. La principale contribution de cette étude est de fournir une spécification formelle d'une méthode de traduction automatique d'un modèle comportemental en un modèle exécutable. La méthode proposée généralise l'expression de la traduction d'un sous-ensemble des Statecharts en code VHDL. Elle présente des avantages certains par rapport aux outils déjà existants, comme celui d'être clairement reproductible et facilement adaptable en machine, contrairement aux traducteurs commerciaux qui ne dévoilent pas leurs solutions techniques ; en outre, c'est une méthode formelle au sens où l'on sait établir qu'un Statechart est dans l'ensemble des “traduisibles” ; à chacun d'eux, on associe un code unique, dont le calcul est explicite. D'autres avantages majeurs sont inhérents à la technique de traduction qui respecte totalement la structure originelle du modèle et permet de générer un code modulaire, générique, réutilisable et hiérarchique. De plus, la hiérarchie ainsi respectée permet de conserver tout le potentiel de parallélisation du modèle originel.
Les étapes de rédaction du cahier des charges et de spécification sont cruciales pour la sûreté de fonctionnement des systèmes automatises de production. Dans ce cadre, nous proposons une méthode permettant de couvrir les phases allant de la vérification du cahier des charges à la validation des spécifications. En particulier, l'approche que nous proposons pour la vérification et la validation formelles de spécifications de systèmes logiques à événements discrets repose sur une formalisation algébrique du cahier des charges et du grafcet de spécification. Nous utilisons un modèle algébrique base sur les corps finis (ou de Galois) d'ordre 2 et une modélisation du temps continu a dates discrètes. La combinaison de ces deux modélisations forme un modèle algébrique temporel (la théorie du signal hyperfini ou tsh) propre à représenter les systèmes logiques à événements discrets. La vérification du cahier des charges exprime en langage naturel commence par une étape d'expression du cahier des charges en logique temporelle pctl#*, suivie d'une traduction de cette formulation en équations différentielles en tsh. Elle se termine par la détection à partir de cette expression algébrique d'éventuelles incohérences ou redondances du cahier des charges. Nous proposons une méthode de vérification formelle de grafcets en 5 étapes : vérification syntaxique du grafcet, écriture du grafcet de spécification en équations différentielles en tsh, déduction de propriétés dynamiques de la structure du grafcet, simplification des équations d'évolution du grafcet de spécification à partir de ces propriétés, vérification des équations représentant le grafcet de spécification. Enfin, pour valider le grafcet, nous utilisons les représentations du cahier des charges et des évolutions du grafcet sous forme d'équations différentielles en tsh et validons les spécifications en grafcet par comparaison des équations du grafcet et de celles du cahier des charges. Nous concluons sur les applications et perspectives de la méthode.
Aujourd'hui les processus métiers ont une place centrale dans les organisations et la question de leur fiabilité a attiré de plus en plus d'attention aussi bien du côté des industriels que de la communauté scientifique. En effet, une erreur ou un dysfonctionnement dans les modèles de production peut lourdement fragiliser les entreprises. Ce risque se voit exacerbé par l'importance grandissante que prennent l'automatisation et l'informatisation des processus. Ainsi, cette thèse s'intéresse aux problématiques liées à la vérification et la validation des processus et modèles de production d'une usine manufacturière. Pour répondre à ces besoins, deux approches ont été proposées dans le cadre de cette thèse. La première vise à améliorer le modèle informationnel des processus de production au travers d'une approche basée sur l'apprentissage automatique permettant de découvrir les règles qui correspondent au bon paramétrage du modèle informationnel. Une phase d'industrialisation est réalisée au sein d'une usine de fabrication de semi-conducteurs et les résultats obtenus sont présentés. La deuxième contribution concerne l'impact des données dans la perspective fonctionnelle d'un processus métier, qui limite l'utilisation de méthodes classiques de vérification. Ainsi, nous proposons une approche qui combine la simulation à événements discrets et le model-checking. La simulation permet de tirer profit des connaissances des experts dans le but d'identifier un sous-ensemble d'états où une propriété donnée est plus susceptible d'être insatisfaite permettant au model-checking de se concentrer sur ce sous-ensemble. L'approche est testée et validée sur un modèle de réseaux sur puces.