|
|
||
|
|
|
Le projet « systèmes autonomes critiques » est mené
conjointement par les groupes TSF
(tolérance aux fautes et sûreté de fonctionnement informatique)
et RIA (robotique et intelligence
artificielle) du LAAS-CNRS. Résumé L’objectif du projet est l’étude et le développement d’architectures sûres de fonctionnement pour des systèmes robotiques ou similaires, comme les satellites autonomes. L'accent sera placé sur des mécanismes de tolérance aux fautes au niveau décisionnel. Ces mécanismes seront prototypés, et validés en présence de fautes. Contexte scientifique L’architecture de contrôle d’un robot est l’ensemble de ses fonctions organisées de manière à lui permettre d’accomplir des tâches dans son environnement en respectant les contraintes temps-réel. Le développement de telles architectures est au centre des problèmes de conception de systèmes robotiques complets. L’état de l’art a abouti aujourd’hui à un certain consensus sur la nécessité d’inclure dans cette architecture une composante délibérative pour les prises de décision et l’anticipation des actions à effectuer et une composante réactive pour leur mise en œuvre et la réaction aux événements en temps réel. Le groupe RIA a ainsi contribué depuis plusieurs années au développement d’une architecture qui est opérationnelle sur les robots du LAAS et dans des applications à l’extérieur. Cette architecture comprend trois niveaux dont les éléments clés sont :
Des outils de développement spécifiques ont été conçus pour chaque niveau, respectivement Propice et IxTeT, Kheops puis R2C, et GENOM. Cette structure permet d’obtenir une robustesse globale dans le fonctionnement du système. On retrouve des structures similaires dans d’autres projets (par exemple, CLARAty et Remote Agent développés par la NASA). Sous l'angle de la sûreté de fonctionnement, les roboticiens se sont principalement intéressés à la robustesse, qui vise à tenir compte d’une certaine variabilité de l’environnement. Mais aujourd'hui, les préoccupations vont bien au-delà — il s’agit de pouvoir garantir aussi une sûreté de fonctionnement dans un sens plus proche de celui des systèmes informatiques en général, aussi bien pour les composants de l’architecture que pour elle-même dans son ensemble. Ceci est important d’un point de vue de la recherche de base, mais devient vital pour certaines applications critiques, par exemple, les applications médicales dans lesquelles le robot est en étroite interaction avec l’homme, et les applications spatiales autonomes, dont la défaillance peut réduire à néant des investissements importants. Objectifs scientifiques Le but du projet est de définir une méthode de développement des systèmes autonomes destinés à des applications critiques. Par système autonome, on comprend un système (tel un robot) doté de moyens décisionnels basés sur le raisonnement logique, percevant et agissant dans son environnement. Lorsque de tels systèmes sont utilisés dans des applications critiques comme la chirurgie, l’espace, voire dans le domaine militaire, leur sûreté de fonctionnement devient une préoccupation majeure en raison des conséquences potentiellement catastrophiques de leur défaillance éventuelle. La sûreté de fonctionnement d’un système autonome peut être défavorablement affectée par au moins quatre facteurs :
Le projet est focalisé sur cette dernière source potentielle de dysfonctionnement. La méthode de développement à définir pourra faire appel aux quatre méthodes de la sûreté de fonctionnement :
mais un accent particulier sera placé sur les techniques de tolérance aux fautes pouvant être introduites au niveau de l’architecture du système autonome. Le succès de projet pourra être jugé au moyen du développement ou l’adaptation d’un prototype de système autonome dont la robustesse par rapport aux fautes de conception sera démontrée au moyen de fautes injectées artificiellement. Malgré les fautes injectées, le système autonome devra se montrer sûr dans un scénario opératoire réaliste (à définir). Approche La spécificité des systèmes autonomes qui rend particulièrement intéressant l’étude de leur sûreté de fonctionnement réside en l’utilisation du raisonnement logique à partir de faits, de règles, de procédures et d’objectifs représentés dans une base de connaissances. De tels systèmes de raisonnement peuvent être caractérisés par trois propriétés :
Or, bien que de nombreuses procédures de raisonnement (par exemple, celles fondées sur la logique des prédicats) soient justes et complètes, elles sont malheureusement non calculables (« NP-hard »), voire semi-décidables, dans le sens qu’elles ne peuvent pas démontrer si une conclusion ne peut pas être inférée à partir des connaissances contenues dans la base. Par conséquent, on doit faire souvent appel à des heuristiques ou des formulations spéciales qui permettent de rendre le raisonnement faisable. Parfois, la justesse ou la complétude des procédures est sacrifiée (la conclusion obtenue est parfois fausse, ou bien une conclusion vraie ne peut pas être démontrée) en faveur de l’efficacité dans les situations les plus probables. Par ailleurs, il faut aussi prendre en compte la possibilité que le contenu de la base de connaissances puisse être incorrect ou incomplet. Lorsque de telles procédures de raisonnement sont utilisées dans un système autonome critique, il devient dès lors indispensable de concevoir le système de façon à :
|