La perception est une des entrées fondamentales d'un système robotique : elle permet d'acquérir des signaux d'observation essentiels pour la boucle de contrôle/commande de fonctions telles que l’arrêt sur obstacle, l'évitement d'obstacle, la localisation, ou encore le suivi d'objets. Cependant, dans des situations routières ces données sont complexes et très souvent sujettes à des erreurs importantes.
Pour répondre à ce problème, l'approche multi-capteurs utilise soit plusieurs capteurs de même type (par exemple deux caméras pour la stéréovision), soit des capteurs de types différents (un ensemble caméras/capteurs laser), pour augmenter la probabilité d'obtenir une entrée correcte utilisable par le système.
Cette approche de fusion de données pose deux problèmes majeurs pour la validation. D’une part, l’environnement ouvert auquel est confronté le système implique un environnement de test quasi-illimité, donc impossible à couvrir complètement lors de la validation. D’autre part, les algorithmes utilisés et l’incertitude sur les données entraînent un comportement difficilement vérifiable par des méthodes formelles.
Une solution à ces problèmes de validation, est l’utilisation d’un moyen de sûreté de fonctionnement complémentaire à l’élimination des fautes : la tolérance aux fautes. Ainsi, plutôt que de garantir par des tests et une validation exhaustive que le système de perception ne comporte aucune faute, on implémente des mécanismes pour assurer que l’activation de fautes dans le système n’entrave pas sa sécurité.
Bien que des drônes aériens commencent à être employé dans certains contextes trés particuliers, trés peu de travaux sont effectués à notre connaissance sur leur tolérance aux fautes. De tels travaux sont cependant nécessaires pour permettre leur application dans des contextes critiques.
De fait, la redondance nécessaire pour tolérer des fautes physiques et logicielles imposent une multiplication de matériel ou d'algorithme qui sont difficiles à supporter par des systèmes volants de faible taille.
Les mécanismes de détection d'erreurs et de rétablissement de système doivent prendre en compte cette limitation pour pouvoir être appliqués sur de tels systèmes.
Les mécanismes déclaratifs, notamment d'intelligence artificielle, sont nécessaires pour le développment des systèmes autonomes car ils permettent de traiter un grand nombre de problèmes grâce à leur robustesse. Ils se distinguent ainsi des mécanismes impératifs traditionnels qui demandent à décrire exhaustivement les comportements désirés du système. Cependant, pour être utilisés dans des applications critiques (voitures et véhicules autonomes, par exemple), les mécanismes déclaratifs ont besoin de donner une confiance justifiée dans leur comportement correct, ce qui est encore actuellement impossible.
Les travaux mis en place sur cet axe de travail ont pour but de proposer des méthodes permettant d'améliorer la confiance envers les mécanismes déclaratifs, notamment les réseaux de neurones. Ces méthodes sont principalement basées sur la diversification et la vérificaiton formelle.
Les systèmes autonomes, de par leur complexité et la multitude de mécanismes impératifs et déclaratifs qui les composent, sont confrontés à des comportements émergents, c'est-à-dire des comportements qui n'étaient pas prévus par leurs concepteurs et qui apparaissent suite aux interactions entre différents sous-composants. Nous proposons une approche systémique basée sur un composant indépendant de sécurité afin de limiter les défaillances dues à ces comportements émergents ainsi qu'à d'éventuelles erreurs dans les décisions des mécanismes déclaratifs de systèmes autonomes complexes, voire de systèmes de systèmes.
Le composant indépendant de sécurité, souvent nommé Safety-Bag, vérifie en cours d'opération du système que les commandes appliquées sont conformes à différentes propriétés de sécurité. Nos travaux proposent l'utilisation de méthodes complémentaires pour définir ces propriétés et valident leur efficacité sur la plateforme VILAD du laboratoire Heudiasyc.