Économie  > Conduite automatisée : comment s’assurer que les robots ne seront pas incontrôlables

Written by 11 h 28 min Économie, Ralentir

Conduite automatisée : comment s’assurer que les robots ne seront pas incontrôlables

Comment bien programmer les robots de notre quotidien pour qu’ils nous assistent en toute sécurité ? Des points critiques restent encore à clarifier.

Le 09/07/2022 par The Conversation
Bus automatisé
Un bus automatisé . Crédit : Herr Loeffler / Shutterstock.
Un bus automatisé . Crédit : Herr Loeffler / Shutterstock.

Les robots arrivent petit à petit dans nos vies quotidiennes, des chaînes de production en usine au serveur de café, jusqu’aux bus à conduite automatisée qui sont entrés en phase de test, notamment en région parisienne. Comment faire en sorte que leur autonomie (relative) s’exerce sans danger pour les humains ?

Alors que les dérives de nos créatures sont amplement explorées dans des œuvres de fiction, de Frankenstein de Mary Shelley à I, Robot d’Isaac Asimov (recueil de nouvelles adapté au cinéma en 2004), il faut aujourd’hui passer de ces réflexions littéraires à des règles mathématiques pour programmer des robots bien réels.

Dans les pas d’Isaac Asimov, père de la robotique

Isaac Asimov fait signe à un taxi
Isaac Asimov s’apprêtant à monter dans un transport en commun. Ed McDonald/FlickrCC BY-NC

Isaac Asimov était professeur de biochimie à la Boston University. Il fut surtout un grand auteur de science-fiction. Le premier notamment à entrevoir qu’il y aurait un jour une science dédiée aux robots. Il utilisa ainsi dès 1941, dans la nouvelle intitulée Menteur ! (relatant une histoire censée se passer de nos jours, en 2021 !), le mot robotique. À une époque où les robots n’étaient encore que pure fiction, sans savoir que ce mot n’existait pas et qu’il venait donc de l’inventer. Il développa alors une réflexion sur les principes logiques qui devraient guider leur comportement. Il peut donc à ce titre être considéré comme le premier roboticien de l’histoire.

Aujourd’hui, un robot est une réalité : une machine contrôlée par un ordinateur. C’est la réunion d’un corps mécanique et d’un cerveau électronique. Cette fusion constitue une interface entre le monde numérique des ordinateurs et notre monde physique. Ce qui définit un robot et le sépare des autres outils fabriqués par les humains est son autonomie relative et son ambition d’être. Plus qu’un outil qu’on utilise, c’est un partenaire auquel nous pouvons déléguer des tâches.

Les trois lois d’Isaac Asimov

Pour éviter que cette autonomie relative s’exerce aux dépens de ses créateurs, Isaac Asimov proposa trois lois :

Première loi : Un robot ne doit pas blesser un être humain ou, par inaction, permettre qu’un être humain soit blessé.

Deuxième loi : Un robot doit obéir aux ordres que lui donnent les êtres humains. Sauf si ces ordres sont en conflit avec la première loi.

Troisième loi : Un robot doit protéger sa propre existence tant que cette protection n’entre pas en conflit avec la première ou la deuxième loi.

Mais pour être efficace, le langage humain est nécessairement ambigu. Son sens dépend d’un contexte et d’un sens commun supposés partagés implicitement. Exprimées ainsi, ces trois lois peuvent être interprétées diversement selon les situations. Cela entraîne autant de catastrophes potentielles qu’Isaac Asimov illustra lui-même abondamment dans ses récits de science-fiction. Par exemple, dans la nouvelle intitulée “Menteur !” mentionnée précédemment, un robot décide de mentir à ses interlocuteurs humains pour ne pas les blesser émotionnellement. Et ce, sans mesurer que les conséquences de ses mensonges finiront par être bien plus graves.

Comment s’y prendre alors pour programmer le comportement d’un robot, par exemple un bus à conduite automatisée ? Il s’agit d’un véhicule de 15 tonnes, qui est en train d’être mis au point. Un bus qui peut transporter 100 passagers à 40 kilomètres par heure en pleine ville de façon automatisée. Il serait irresponsable de soumettre le fonctionnement et notamment la sécurité de ce bus à de possibles aléas d’interprétation.

Traduire des lois en algorithmes

Il revient donc aux humains programmant ce bus d’anticiper les situations auxquelles il sera confronté. De donner un sens adéquat et précis à ces lois dans ces situations. Et de les reformuler alors dans le langage le moins ambigu dont on dispose : celui des mathématiques et de l’informatique.

Par exemple, des décélérations trop fortes peuvent être extrêmement dangereuses pour les passagers assis. Ils ne sont généralement pas maintenus par des ceintures de sécurité. Et encore plus pour les passagers debout qui peuvent chuter. Notre équipe a donc postulé deux premières lois pour notre bus sans conducteur :

Première loi : Un bus ne doit jamais accélérer ou décélérer au-delà d’une limite de sécurité afin de ne pas mettre en danger ses propres passagers.

Deuxième loi : Tant qu’il est en mouvement, un bus doit maintenir une distance de sécurité vis-à-vis de son environnement extérieur afin d’éviter tout risque de collision, sauf si cela entre en conflit avec la première loi.

Toujours conserver quelques secondes de marge

Il est généralement possible d’anticiper quelques secondes à l’avance comment l’environnement d’un bus va évoluer. En exigeant que notre bus soit toujours capable de s’arrêter en cas de besoin dans la limite de ces quelques secondes, on garantit qu’il respecte ces deux lois même au-delà. Il resterait ensuite à l’arrêt – sans accélérer ni décélérer. Et comme il ne serait plus en mouvement, il ne porterait pas la responsabilité première d’une collision, si elle arrivait après coup.

Accélération, décélération, distance, mouvement sont des attributs physiques sans ambiguïté que l’on peut mesurer, calculer de façon indiscutable. Ces deux lois peuvent alors être représentées comme autant de contraintes mathématiques. Elles peuvent ensuite être prises en compte par un algorithme de satisfaction de contraintes. Ce dernier serait en charge de calculer le mouvement que notre bus doit réaliser pour les satisfaire. Dans notre cas, nous avons mis au point un algorithme d’optimisation lexicographique pour respecter la hiérarchie de priorités en cas de conflit entre ces deux lois.

Des priorités à clarifier

Un conflit entre ces deux lois peut représenter un choix à faire entre la mise en danger des passagers à l’intérieur du bus et celle de personnes dans son environnement extérieur.

Dans ce cas, l’ordre ci-dessus donne la priorité à la sécurité des passagers. Cela peut se justifier ainsi : toute décélération au-delà de la limite de sécurité mettrait immédiatement en danger l’ensemble des passagers du bus. Ceux-ci n’ont aucune échappatoire, alors qu’une personne extérieure au bus peut avoir encore une chance d’éviter la collision tant que celle-ci n’a pas eu lieu. On peut évidemment décider de hiérarchiser différemment les priorités de notre bus. C’est un débat que nous ne pouvons prétendre trancher ici.

Une fois ces impératifs de sécurité garantis, la raison d’être de ce bus est naturellement d’amener ses passagers à leur destination en temps et en heure :

Troisième loi : Un bus doit rouler à la vitesse prévue par sa fiche horaire tant que cela n’entre pas en conflit avec la première ou la deuxième loi.

On voit donc que les lois d’Asimov fournissent un point de départ intéressant pour aborder le comportement des robots. Mais elles doivent être reformulées sous une forme mathématique adaptée à chaque situation afin d’en ôter toute ambiguïté d’interprétation. C’est de cette façon que l’on peut ensuite garantir mathématiquement le comportement d’un robot.

La priorité aux transports en commun

Si la mise au point de véhicules à conduite automatisée bénéficie d’investissements colossaux depuis des années, ce progrès scientifique et technique n’aura un impact écologique positif que s’il porte sur des transports en commun. Car notre époque est avant tout celle d’une crise écologique majeure, constituant une menace existentielle pour l’humanité entière. Face à un défi de cet ordre, Isaac Asimov avait imaginé une loi « zéro » devançant les trois premières en importance :

Loi zéro : Un robot ne doit pas faire de mal à l’humanité ou, par inaction, permettre que du mal soit fait à l’humanité.

Cette loi a peut-être plus que les autres vocation à nourrir une réflexion éthique ne pouvant être réduite à une formule mathématique. C’est en ce sens que le Comité national pilote d’éthique du numérique questionne dans un avis rendu sur les enjeux d’éthique liés au “véhicule autonome” le bien-fondé même de développer de tels véhicules s’il ne s’agit pas de transports en commun : un robot ne devrait pas, par son existence même, contribuer à mettre en péril l’humanité.

Car, si les robots peuvent nous aider à répondre à nos besoins fondamentaux (nourriture, santé, vêtement, logement, déplacement) de manière plus efficace, plus économe, il faut évidemment être attentif à ce que, du point de vue écologique, ils contribuent à la solution et non au problème.

À propos de l’auteur : Pierre-Brice Wieber. Chercheur en Robotique, Inria.

Cet article est republié à partir de The Conversation sous licence Creative Commons. Lire l’article original.

A lire aussi :