Histoire de l’IA

Qu’était SHRDLU, le programme qui parlait de blocs?

· Par Robert Scales · 5 min de lecture

Réponse courte

SHRDLU était un programme écrit par Terry Winograd au Laboratoire d’intelligence artificielle du MIT entre 1968 et 1970. Il tenait des conversations tapées en anglais courant au sujet d’un petit monde simulé de blocs, de pyramides et d’une boîte. Il pouvait suivre des ordres, répondre à des questions, deviner à quoi renvoyait « le » ou « la », expliquer pourquoi il avait fait quelque chose et apprendre de nouveaux mots, ce qui en faisait la démonstration la plus convaincante jamais vue d’un ordinateur qui comprend le langage.

Imaginez que vous tapez à un ordinateur « Trouve un bloc plus haut que celui que tu tiens et mets-le dans la boîte », et qu’il vérifie poliment ce que vous vouliez dire avant de faire le travail. Puis vous lui demandez pourquoi il a déplacé un certain cube, et il vous l’explique. En 1970, cet échange n’avait rien de la science-fiction. C’était SHRDLU, et pendant un temps, on a eu l’impression que les ordinateurs étaient sur le point de vraiment comprendre l’anglais.

Qui l’a créé, et où

SHRDLU a été écrit par Terry Winograd, étudiant aux cycles supérieurs au Laboratoire d’intelligence artificielle du MIT, à Cambridge, au Massachusetts, entre 1968 et 1970. Il fonctionnait sur un ordinateur DEC PDP-6. L’utilisateur tapait sur un téléimprimeur, un terminal composé d’un clavier et d’une imprimante, et le monde du programme s’affichait sur un des premiers écrans graphiques, le DEC-340. Il était écrit en MacLisp, avec un langage de planification appelé Micro Planner.

Winograd a décrit ce travail dans sa thèse de doctorat, publiée au début de 1971 comme rapport technique 235 du laboratoire d’IA du MIT, sous le titre « Procedures as a Representation for Data in a Computer Program for Understanding Natural Language ». En 1972, elle a occupé un numéro entier de la revue Cognitive Psychology et a aussi paru sous forme de livre, Understanding Natural Language.

Ce nom étrange vient de l’imprimerie. Sur les linotypes, les touches des lettres étaient disposées selon leur fréquence en anglais, des plus courantes aux moins courantes, ce qui donnait la suite ETAOIN SHRDLU. Cette suite se glissait parfois par erreur dans les journaux, et Winograd en a emprunté la seconde moitié.

Le monde des blocs

SHRDLU ne parlait pas de tout. Il parlait d’une seule petite table imaginaire qui portait des blocs de tailles et de couleurs différentes, quelques pyramides et une boîte, ainsi que d’une main robotisée simulée capable de prendre des objets et de les déposer. Comme ce monde était très limité, une cinquantaine de mots suffisaient peut-être à décrire tout ce qu’il contenait : des noms comme « bloc » et « pyramide », des verbes comme « mettre » et « prendre », des adjectifs comme « grand » et « rouge ».

Voici quelques moments du dialogue de démonstration publié par Winograd, avec ce que chacun montre :

La personne tapeSHRDLU répondCe que cela montre
« Saisis la pyramide. »« Je ne comprends pas de quelle pyramide tu parles. »Il remarque l’ambiguïté : il y a plusieurs pyramides
« Que contient la boîte? »« La pyramide bleue et le bloc bleu. »Il répond aux questions à partir de son modèle du monde
« Une pyramide peut-elle supporter une pyramide? »« Je ne sais pas. »Il distingue ce qu’il peut prouver de ce qu’il ne peut pas prouver
« Pourquoi as-tu fait cela? » (répété)« Parce que tu me l’as demandé. »Il se souvient des buts derrière ses propres actions
« Un “clocher” est une pile qui contient deux cubes verts et une pyramide. »« Je comprends. »Il apprend un nouveau mot et peut ensuite en construire un

À un autre moment, l’utilisateur demande « Pourquoi l’as-tu laissé tomber? » au sujet d’un bloc que SHRDLU n’a jamais laissé tomber, et le programme répond qu’il ne peut pas expliquer un événement qui n’a pas eu lieu.

À essayer : écrivez cinq consignes pour disposer trois pièces de monnaie sur une table, en utilisant des mots comme « la », « la plus grosse » et « celle que je viens de déplacer ». Donnez-les à un ami et notez chaque fois qu’il doit vous demander ce que vous vouliez dire. Chaque question est un problème que SHRDLU devait résoudre dans son code.

Comment il fonctionnait

L’idée clé, comme le dit le résumé du rapport, était qu’un programme ne peut traiter le langage de façon sensée que s’il comprend ce dont on parle. Au lieu de simplement repérer des mots clés, SHRDLU combinait donc plusieurs sortes de connaissances :

  • La grammaire. Il analysait la structure complète de chaque phrase : sujet, verbe, compléments, propositions imbriquées dans d’autres propositions.
  • Le sens. Il transformait la phrase en une demande précise au sujet de son monde, en reliant « celui que tu tiens » à un bloc en particulier.
  • Le raisonnement. Il se servait de Micro Planner pour trouver comment atteindre un but, par exemple dégager les autres blocs posés sur un cube avant de le déplacer.
  • La mémoire. Il gardait une trace de la conversation et de ses propres actions, ce qui lui permettait de savoir à quoi renvoyait « le » et de répondre aux questions « quand » et « pourquoi ».

Le titre de la thèse indique son idée technique centrale. Les connaissances n’étaient pas seulement stockées sous forme de faits passifs, mais aussi sous forme de procédures, de petits programmes capables de vérifier ou de provoquer quelque chose dans le monde. Quand SHRDLU n’arrivait pas à interpréter une phrase à partir du contexte et de ce qu’il savait du monde physique, il demandait des précisions à l’utilisateur, comme dans l’exemple de la pyramide.

Pourquoi c’était important

SHRDLU a été largement perçu comme un succès spectaculaire. Il montrait que la grammaire, le sens et le raisonnement pouvaient fonctionner ensemble dans un seul programme, et qu’un ordinateur pouvait tenir une conversation cohérente pourvu qu’il connaisse vraiment son sujet. Son succès a aussi nourri une vague d’optimisme sur le moment où les ordinateurs comprendraient le langage.

Il est aussi devenu l’un des premiers ancêtres de la fiction interactive, ces jeux d’aventure textuels où le joueur tape des commandes pour explorer un monde virtuel, même si SHRDLU ne racontait aucune histoire.

Pourquoi l’approche de SHRDLU n’a-t-elle pas pu s’étendre à la conversation de tous les jours?

Ce qui rendait SHRDLU impressionnant le limitait aussi. Son monde était minuscule et parfaitement connu : chaque objet, chaque couleur et chaque position y étaient enregistrés avec exactitude, et rien n’existait en dehors de la table. La vraie conversation est pleine d’ambiguïtés, d’informations manquantes et de connaissances de fond que personne n’énonce. Quand des systèmes ultérieurs ont tenté de traiter des situations plus proches de la vie ordinaire, la grammaire, les significations et les règles écrites à la main ont dû prendre une ampleur énorme, et l’optimisme s’est estompé.

Des efforts ultérieurs dans le même esprit, comme le projet Cyc, ont entrepris de donner aux programmes beaucoup plus de connaissances à partir desquelles raisonner. Les assistants vocaux de 2019 empruntent encore une autre voie : ils tirent une grande partie de leur habileté langagière de grandes quantités de données plutôt que de règles écrites à la main. Pourtant, la démonstration de SHRDLU place toujours la barre haut. Peu de systèmes, en 2019, peuvent répondre à « Pourquoi as-tu fait cela? » au sujet de leurs propres actions aussi clairement qu’un programme de 1970 pouvait le faire dans son monde de blocs.

Sources

  1. SHRDLU — Terry Winograd, Stanford University (archived August 3, 2019), 3 août 2019
  2. Procedures as a Representation for Data in a Computer Program for Understanding Natural Language — Terry Winograd, MIT AI Technical Report 235 (MIT DSpace record)
  3. SHRDLU — Wikipedia (revision of February 18, 2019), 18 février 2019

Recevez gratuitement le Guide de l’intelligence artificielle

Abonnez-vous à l’infolettre hebdomadaire et recevez le guide gratuit : ce qui a changé en IA cette semaine, une leçon, un prompt à essayer. Désabonnement en un clic.

Ce que nous faisons de votre adresse

Retour en haut

Affichage

Vos choix sont enregistrés dans ce navigateur seulement. Aucune donnée n’est transmise.

Taille du texte
100 %
Couleurs
Lecture
Autres réglages
Déclaration d’accessibilité