Contribution to the formal modelling of mobile robot swarms
Contribution à la modélisation formelle d'essaims de robots mobiles
Résumé
Distributed Algorithm is among domains where informal reasoning is not an option, especially when Byzantine errors may occur. It is also characterized by a large variety of models whose subtle modulations imply radically different properties.We are interested in "robotic network": clouds of autonomous entities performing a cooperative task. The applications that these swarms of agents offer are extremely promising: exploration and search for survivors in devasted areas, patrols and drone flights in formation, etc. These few potentially critical exemples underline the high dynamicity of the model; they also indicate how failures of robots or errors in the distributed protocols that equip them can have distastrous consequences.To ensure the safety of the protocols and the security of tasks, we aim to optain, with the help of the Coq proof assistant, foraml mechanical validations of properties of certain distributed protocols. A prototype of Coq's formal model for robot network, Pactole, has recently shown the feasibility of an proof assistant verification in this framework. It captures quite naturally many variants of these networks, especially with regard to topology or the properties of demons. This model is of course in the higher order, and is based on coinductive types. It makes it possible to demonstrate in Coq both positive roperties: the embedded program makes it possible to carry out the task regardless of the initial configuration, as negative properties: there is no embedded program to complete the task.In the emerging framework of robot networks, the models are distinguished by the characteristics and capabilities of the robots, the topology of the space in which they evolve, the degree of synchronism (modelled by the properties of the activation demon), the error that can occure, etc. The prototype Pactole expresses only some of these variants. Thought in a theoretical framework (point robots, instantaneous movement, etc.), hypotheses remain out of reach, in particular realistic hypothesis such as totally asynchronous executions, or risk of collision. The absence of collision is fundamental in all applications relates to formation flights (drones) and critical safety condition as soon as one is interested in air transport. Formal validation of this property is therefore of great importance.The work consits of extending the formal model to take into account asynchronous evolutions of large robots. This modelling should allow easy formulation of protocols and the task they are supposed to perform. Particular attention will be given to ensuring the absence of collisions during potentially complex movements.
L’algorithmique distribuée fait partie des domaines où le raisonnement informel n’est pas une option, en particulier lorsque des erreurs dites byzantines peuvent survenir. Elle est également caractérisée par une grande diversité de modèles dont les modulations subtiles impliquent des propriétés radicalement différentes. Nous nous intéressons aux « réseaux de robots » : nuages d’entités autonomes devant accomplir une tâche en coopération. Les applications que laissent envisager ces essaims d’agents sont extrêmement prometteuses : exploration et recherche de survivants dans des zones dévastées, patrouilles et vols de drones en formation, etc. Ces quelques exemples potentiellement critiques soulignent la grande dynamicité du modèle; ils indiquent également à quel point des défaillances des robots ou des erreurs dans les protocoles distribués qui les équipent peuvent avoir de désastreuses conséquences.Pour garantir la sûreté des protocoles et la sécurité des tâches, nous visons à l’obtention, à l’aide de l’assistant à la preuve Coq, de validations mécaniques formelles de propriétés de certains protocoles distribués.Un prototype de modèle formel Coq pour les réseaux de robots, Pactole, a récemment montré la faisabilité d’une approche de vérification par assistant à la preuve dans ce cadre. Il capture assez naturellement de nombreuses variantes de ces réseaux, notamment en ce qui concerne la topologie ou les propriétés des démons. Ce modèle est bien sûr à l’ordre supérieur et s’appuie sur des types coinductifs. Il permet de démontrer en Coq à la fois des propriétés positives : le programme embarqué permet de réaliser la tâche quelle que soit la configuration de départ, comme des propriétés négatives : il n’existe aucun programme embarqué permettant de réaliser la tâche.Dans le cadre émergent des réseaux de robots, les modèles sont distingués par les caractéristiques et capacités des robots, la topologie de l’espace dans lequel ils évoluent, le degré de synchronisme (modélisé par les propriétés du démon d’activation), les erreurs pouvant survenir, etc. Le prototype Pactolen’exprime que certaines de ces variantes. Pensé dans un cadre théorique (robots ponctuels, déplacements instantanés, etc.), des hypothèses restent hors de sa portée, en particulier des hypothèses réalistes comme des exécutions totalement asynchrones ou des risques de collision. L’absence de collision est fondamentale dans toutes les applications liées aux évolutions en formation (drones) et unecondition de sécurité critique dès qu’on s’intéresse au transport aérien. Une validation formelle de cette propriété revêt donc une grande importance.Le travail consiste à étendre le modèle formel afin de prendre en compte des évolutions asynchrones de robots volumineux. Cette modélisation doit permettre une formulation aisée de protocoles et des tâches qu’ils sont censés réaliser. On s’intéressera en particulier à garantir l’absence de collision au cours de déplacements potentiellement complexes.
Origine | Version validée par le jury (STAR) |
---|