Introduction
Une machine pourra-t-elle penser un jour comme l’Homme ? À en croire Kurt Gödel, la réponse est non. Mais, ses travaux fondamentaux sur l’infériorité des machines n’ont pas empêché les hommes de rêver à la création d’une vie définie par son intelligence artificielle.
L’intelligence artificielle se manifeste aujourd’hui sous une forme bien différente de celle qui était envisagée dans les années 70 et 80. Nous nous sommes grandement éloignés des premiers travaux qui se rapprochaient plus de ce que les livres de science-fiction avaient en tête. Nous avons appris nos limites. Cette petite chronologie reprend les grandes étapes qui ont permis aux chercheurs d’arriver à cette conclusion.
Pour ceux qui aimeraient une histoire de l’intelligence artificielle dans les films, nous vous invitons à lire notre reportage photo « Ces ordinateurs qui ont façonné l’imagination ».
Galatea ? (Antiquité)
Galatea est le nom d’une statue de la mythologie grecque qui reçut la vie. Nous en parlons pour montrer que le concept d’intelligence artificielle précède de loin l’arrivée de l’informatique. L’idée qu’un objet créé soit capable de produire ou obtenir une conscience similaire à celle de l’homme est présente dans la mythologie grecque, l’Égypte ancienne, le folklore juif (le Golem) et bien d’autres cultures anciennes. On raconte que l’ingénieur chinois Yan Shi a présenté au roi Zhou Mu Wang un robot ressemblant à un homme. Si cette histoire fictive qui a été écrite au troisième siècle avant Jesus Christ vous fait penser à Pinocchio, ce n’est pas un hasard.
Le concept d’intelligence artificielle est né de l’idée que la conscience de l’homme est une entité reproductible et indépendante de lui constituée de systèmes mécaniques qu’il serait possible de comprendre et exporter.
Konrad Zuse Z3 (1941)
Le Konrad Zuse Z3 est le premier ordinateur programmable au monde. Utilisant 2 000 relais et une architecture à mots de 22 bits, il fut terminé à Berlin en 1941. Le gouvernement allemand refusa de le financer et il fut détruit en 1943 lors des bombardements. La machine a ouvert la voie à l’idée qu’il était possible de programmer un ordinateur pour pouvoir un jour répliquer la conscience humaine. La machine gérait les boucles, mais pas les branchements.
Le proof-of-concept d’ordinateur à programme enregistré vient de l’Université de Manchester. Elle lança son premier programme en 1948. Le premier ordinateur à programme enregistré complet et opérationnel date de 1949.
Réseau neuronal (1943)
Warren Sturgis McCulloch et Walter Pitts publient en 1943 ce qui est considéré aujourd’hui comme les fondements des réseaux neuronaux artificiels. Il s’agit d’un réseau informatique composé de « neurones » capables de reconnaître des séries et « apprendre ». Ce genre de réseau est par exemple utilisé par des systèmes de reconnaissance de caractères. Les travaux de McCulloch et Pitts ont proposé le premier modèle mathématique et algorithmique qui a servi de bases aux concepts qui ont suivi.
Les systèmes modernes de neurones se sont éloignés des systèmes biologiques afin d’offrir une approche plus pragmatique fondée sur les statistiques et le traitement du signal. C’est ce qui explique pourquoi les nouveaux réseaux sont différents de ceux qui ont marqué le monde de l’intelligence artificielle dans les années 80.
Game Theory (1944)
En 1944, Oskar Morgenstern et John von Neumann publient un ouvrage qui reprend les fondements de la théorie des jeux de von Neumann posés en 1928. Ces concepts s’avèreront être fondamentaux dans le domaine de l’intelligence artificielle. La théorie des jeux étudie les stratégies utilisées lors de la prise de décision et les mécanismes décrits ont permis la création de modèles qui se sont avérés indispensables à la création de programmes permettant de jouer aux échecs ou aux backgammons. Ce sont des jeux où il est impossible de prouver l’existence d’une stratégie optimale et la théorie des jeux permet d’utiliser un modèle pour que la machine prenne une décision et évolue au fur et à mesure des parties.
Le test de Turing (1950)
Alan Turing proposa un test permettant de déterminer si une intelligence artificielle est similaire ou impossible à distinguer d’une intelligence humaine. Le test demande à un individu de communiquer par messages textuels avec un ordinateur et un humain. S’il n’est pas capable de distinguer les deux, l’intelligence artificielle passe le test.
Le plus grand point faible de ce test est le fait qu’il repose sur l’idée qu’un homme est capable de juger et distinguer le comportement d’un autre homme de celui d’une machine. Or, le programme indien Cleverbot a montré que dans 37 % des cas, l’interlocuteur humain était jugé être une machine. Aujourd’hui, le programme ALICE est sans doute la référence dans ce domaine, mais aucun logiciel n’a pour l’instant passé le test.
Jeu de dames (1951)
Le premier logiciel fonctionnel démontrant une intelligence artificielle fut écrit en 1951 à l’Université de Manchester. Destiné à jouer aux dames, il tournait sur un Ferranti Mark 1, aussi connu sous le nom de Manchester Electronic Computer. Le programme fut conçu par Christopher Strachey. Un programme permettant de jouer aux échecs a aussi été conçu durant cette période, mais la machine était trop lente et le jeu se limitait à un échec et mat en 2 coups.
Le Mark 1 utilisait une architecture à mots de 20 bits. Chaque mot contenait une instruction. La mémoire utilisait 8 tubes contenant chacun 64 mots, soit l’équivalent d’une page. La mémoire centrale était composée d’un tambour magnétique contenant 512 pages.
Darthmouth Conference (1956)
Le terme « intelligence artificielle » est utilisé pour la première fois par John McCarthy lors de la conférence Dartmouth qu’il a organisé en 1956 et qui est considérée comme l’un des grands débuts du sujet en informatique. Il est facile de sous-estimer l’importance de McCarthy dans ce domaine. Cet homme qui a montré une aptitude exceptionnelle aux mathématiques dès son plus jeune âge est le père des métamathématiques en intelligence artificielle. Sa conférence et son influence ont été la source de nombreuses innovations dans ce domaine.
The Logic Theorist (1956)
The Logic Theorist est un des premiers programmes à tenter de représenter un problème en forme de branches pour ensuite essayer de le résoudre en sélectionnant la branche qui a le plus de chance d’être correcte. Écrit par Allen Newell, Herbet Simon et J.C Shaw, il est censé simuler les facultés humaines de résolution d’un problème.
Quelques années avant, Norbert Wiener avait publié sa théorie de la rétroaction (feedback theory) avec un programme qui ajustait automatiquement la température d’une pièce en fonction de plusieurs facteurs. C’est à ce moment que Wiener a postulé que la conscience humaine n’était que le fruit de mécanismes de retour à des facteurs extérieurs. Wiener et The Logic Theorist montrent qu’une machine est capable de faire des choix en tenant compte de plusieurs facteurs, à l’instar d’un être humain. Le problème est qu’ils oublient les facultés de spontanéité de l’homme.
Satisficing (1956)
Satisficing ou le principe du seuil de satisfaction de l’individu fut un des piliers des travaux de l’époque dans le domaine de l’intelligence artificielle. Herbet Simon a montré en mettant ce mot-valise en avant que l’homme est incapable de maximiser ou optimiser ses ressources, car il peut rarement évaluer toutes les probabilités d’une situation avec précision.
Ces travaux ont donné naissance à des stratégies de prise de décision privilégiant l’efficacité au lieu de l’optimisation. L’ordinateur ne tente donc plus forcément de trouver la solution optimale, mais cherche une solution satisfaisante, à l’instar de l’homme.
The General Problem Solver (1957)
Les créateurs du programme The Logic Theorist ont continué leurs travaux pour donner naissance au programme General Problem Solver (GPS) qui fut testé pour la première fois en 1957. Il reprend les principes du premier programme et ceux établis par la théorie de la rétroaction de Wiener. Le programme pouvait résoudre plus de problèmes de « bon sens » que The Logic Theorist.
Concrètement, il pouvait résoudre des problèmes géométriques, prouver des théorèmes et jouer aux échecs. GPS est le premier programme à séparer l’énoncé du problème qui est représenté comme une donnée entrée et la stratégie pour le résoudre qui était un moteur de résolution générique.
LISP (1958)
Conçu par John McCarthy, LISP est le deuxième langage de programme de haut niveau au monde après Fortran qui le précède d’un an. Créé comme système de notation mathématique pour ordinateur, il représente une contribution fondamentale de McCarthy dans le domaine de l’intelligence artificielle qui continue de préférer ce langage de programmation. Les dialectes utilisés aujourd’hui sont principalement Common Lisp, Scheme et Clojure.
LISP reprit les concepts de l’Information Processing Language qui fut le premier langage de programmation destinée à l’intelligence artificielle. Il était utilisé entre 1955 et 1956. Il a inspiré le traitement de listes popularisé par LISP. Steve Russell fut le premier à implémenter LISP sur un IBM 704 disposant d’un interpréteur capable d’évaluer les expressions du code.
Perceptron (1960)
Frank Rosenblatt termina le MARK 1 ou le Perceptron en 1960 à l’Université de Cornell. Il était le premier ordinateur à utiliser un réseau de neurones permettant à la machine d’apprendre en fonction de ses réussites et ses échecs. Avant la conception de la machine, les Perceptron étaient émulés sur des IBM 704. C’est pour cela que le terme perceptron désigne aussi l’algorithme au coeur du système. La machine conçue par Rosenblatt a été principalement utilisée pour la reconnaissance de caractères.
Si la machine a donné des résultats très prometteurs, elle était incapable de traiter des données non linéaire et non scalaire. Une mise à jour de la machine en 1990 a résolu ces problèmes, mais la recherche a entre temps délaissé ce domaine.
ANALOGY (1963)
ANALOGY est le premier programme informatique capable de résoudre les questions analogiques des tests déterminant le coefficient intellectuel d’une personne. Écrit par Thomas Evans pour sa dissertation de doctorat présenté à MIT, ANALOGY a aussi bien répondu qu’un individu moyen de 16 ans.
Evans a écrit ce programme pour étudier l’utilisation de représentations de haut niveau en informatique. L’idée nouvelle à l’époque dans le monde de l’intelligence artificielle affirme que l’utilisation de représentations peut aider à l’accomplissement de certaines tâches, parce qu’elles permettent de simuler un comportement humain.
Reconnaissance et adaptation (1963)
Leonard Uhr et Charles Vossler publièrent un papier décrivant une des premières machines capables d’apprendre, acquérir et modifier ses fonctionnalités. Elle est ainsi capable de dépasser les limites du Perceptron. Le programme avait la particularité de démarrer sans aucune forme de savoir préétabli et sans opérateur. Le savoir et les opérateurs étaient générés et peaufinés par le programme en fonction des succès et des erreurs. Le programme pouvait aussi créer du code en fonction des séries qu’il traitait afin de pouvoir l’analyser. Le programme utilisait un jeu de matrices et une série de représentations symboliques pour pouvoir reconnaître les caractères entrés.
Le premier système expert (1965)
Edward Feigenbaum a entrepris un projet de 10 ans tentant de déduire la structure organique de composants biologiques à l’aide d’un système expert. En intelligence artificielle, le système expert est conçu pour résoudre des problèmes complexes à l’aide de raisonnements et connaissances. Le programme est dit expert, car il utilise la même méthode qu’un expert humain au lieu de passer par les méthodes de programmation traditionnelles. On estime que les systèmes experts représentent l’une des formes d’intelligence artificielle les plus convaincantes.
Un système expert a deux faces. La première est fixe et indépendante et elle est appelée le moteur d’inférence. La seconde est variable et représente la base de connaissance. Dans les années 80, les systèmes experts ont acquis un troisième module qui apporta une interface permettant de dialoguer avec l’utilisateur.
PDP-10 (1966)
Le PDP–10 est une famille d’ordinateurs centraux qui s’est distinguée entre autres dans les laboratoires du département intelligence artificielle de MIT. La machine a initié le concept de temps partagé, c’est-à-dire le partage de plusieurs temps de processeurs. Le PDP–10 a ainsi réuni la communauté de chercheurs qui a partagé ses ressources pour faire tourner leurs programmes LISP. Il eut d’ailleurs une influence si importante sur le langage que ses instructions LDB et DPB qui étaient utilisées en assembleur sont devenues des fonctions de Common Lisp.
La machine dispose d’une architecture à mots de 36 bits et d’un jeu d’instructions légèrement étendu. Son système d’exploitation, le TOPS–10, fut utilisé pour la conception de l’ARPANET. Bill Gates et Paul Allen ont quant à eux écrit l’Altair BASIC sur un Intel 8080 émulé tournant sur un PDP–10 situé à Harvard.
SHRDLU (1968)
Conçu par Terry Winograd à MIT, SHRDLU est un des premiers programmes informatiques de compréhension de langage naturel. Le but est de pouvoir avoir une « conversation » avec sa machine. Écrit en Micro Planner et en Lisp, il tournait sur des PCP–6.
SHRDLU était avant tout un logiciel de décomposition analytique qui était capable de déchiffrer l’anglais. L’utilisateur pouvait bouger des objets dans un environnement qui était grandement simplifié pour pouvoir être contrôlé à l’aide de 50 mots seulement. SHRDLU utilisait aussi de la mémoire pour offrir du contexte. Il était ainsi possible de demander de « placer un cône vert sur un bloc rouge », puis de « retirer le cône ». Le système déduisait automatiquement que « le cône » était le cône vert mentionné précédemment. Les démonstrations étaient particulièrement impressionnantes, mais sa portée est restée limitée. En effet, en dehors du monde simpliste des blocs, ce genre de programme est beaucoup moins pertinent.
Prolog (1972)
Prolog est un langage de programmation logique qui est utilisé en intelligence artificielle et en informatique linguistique. Conçu par Alain Colmerauer à Marseille en 1970, le premier système utilisant Prolog apparut en 1972. Il est l’un des premiers langages de programmation logique et reste l’un des plus populaires aujourd’hui. En plus d’être utilisé dans le traitement du langage naturel, il est utilisé dans les systèmes experts, et les preuves de théorèmes.
Les chercheurs européens en intelligence artificielle ont souvent privilégié Prolog au lieu de LISP qui est préféré des Américains. Les débats autour des mérites des deux langages sont moins fréquents aujourd’hui.
Soar (1983)
Les principes mis en avant par le programme General Problem Solver donnèrent naissance à l’architecture Soar (State Operator and Result) destinée à un système d’intelligence artificielle. Soar est aussi appelé architecture cognitive. Les chercheurs continuent d’étudier ses principes et utilisent cette architecture pour comprendre le comportement de l’homme dans le but de le modéliser et le reproduire artificiellement.
Soar est fondé sur l’hypothèse du système des symboles physiques établis par Newell et Simon. L’idée est de représenter l’ensemble des capacités d’un être intelligent, des tâches les plus mondaines et répétitives aux problèmes ouverts les plus complexes. Pour cela, Soar crée des modèles de comportements et des formes appropriées de savoir (procédurales, déclaratives, épisodiques ou iconique). Soar va ensuite utiliser des mécanismes de l’esprit pour traiter les informations et générer un comportement similaire à celui d’un homme. Si des projets existent pour qu’une machine dispose de capacités de mémorisation épisodiques et sémantiques, on ne parvient toujours pas à créer de nouvelles représentations ou la spontanéité.
Smart Truck (1989)
Smart Truck représente un des grands échecs du département américain de la Défense et un tournant dans le monde de l’intelligence artificielle. Smart Truck est le nom donné à un projet visant à créer un véhicule militaire autonome capable de prendre la place de soldats. La machine était lente et tellement peu convaincante que le projet a été abandonné cinq ans après sa mise en route et un investissement de 500 millions de dollars.
Les scientifiques et l’armée se sont rendu compte qu’il était pour l’instant impossible de construire un robot capable de remplacer l’homme. C’est à partir de ce moment que le monde de l’intelligence artificielle a cessé de vouloir se rapprocher de la science-fiction et qu’il a simplement cherché à optimiser des logiciels en les rendant plus flexibles et plus pertinents.
DART (1991)
DART (Dynamic Analysis and Replanning Tool) est un programme démontrant une intelligence artificielle qui fut utilisé durant la guerre du Golf de 1990. L’outil sert à faciliter la prise de décision en optimisant et planifiant le transport de ressources ou en résolvant d’autres problèmes logistiques. Les États-Unis ont aussi fait appel à l’intelligence artificielle pour guider les missiles.
DART a fait économiser des millions de dollars à l’armée américaine en trouvant des solutions à des problèmes complexes qui plombaient les coûts de l’armée. Aujourd’hui, on retrouve en partie la technologie de DART dans les systèmes contrôlant les aeroports, les chemins de fer ou les emplois du temps d’employés.
Victoire de Deep Blue sur Kasparov (1997)
La victoire de Deep Blue sur Kasparov fut possible grâce à l’utilisation de modèles utilisant les principes du seuil de satisfaction de l’individu. La machine était capable de s’adapter et trouver une solution satisfaisante si rapidement que le grand maître a admis que la machine jouait comme un homme. En effet, auparavant, les grands maîtres arrivaient à battre les ordinateurs en prédisant le coup le plus rationnel. Cela permettait d’anticiper la réaction de la machine pour pouvoir la vaincre. L’implémentation du satisficing par IBM a rendu ce genre de prédiction impossible.
M. Kasparov demanda une revanche, mais IBM refusa et démonta la machine. L’un des deux racks constituant Deep Blue se trouve aujourd’hui au musée national de l’histoire américaine.
La voiture autonome de Google (2009)
Les véhicules autonomes sont l’une des grandes applications modernes de l’intelligence artificielle aujourd’hui. L’armée américaine continue d’investir dans ce type de projet et plus récemment, le secteur privé a montré des avancées intéressantes. Google s’est démarqué par ses travaux tentant d’apporter cette technologie au grand public. Google Chauffeur reste une application intéressante qui dépend de la présence de nombreux capteurs apposés sur la voiture et d’un système de radar. Néanmoins, un interrupteur permet au conducteur de prendre le contrôle de la machine à n’importe quel moment. Il reste encore beaucoup à faire avant que ce genre de technologie soit courante. C’est néanmoins un pas dans la bonne direction.
Watson gagne au Jeopardy (2011)
Destiné aux diagnostics médicaux, Watson s’est distingué en gagnant au jeu télévisé Jeopardy. La machine est capable de répondre à des questions posées dans un anglais naturel au lieu d’un code utilisant la syntaxe d’un langage de programmation.
Watson avait 4 To d’informations à sa disposition, dont le texte de Wikipedia et l’équivalent de 200 millions de pages de contenu. La machine n’était pas connectée à Internet durant la partie, mais pouvait traiter l’équivalent d’un million de livres à la seconde. Le système qui a joué au jeu télévisé regroupait 90 serveurs IBM PowerPC 750. Watson est aujourd’hui plus petit et il est utilisé pour aider les infirmières d’un centre américain traitant les patients atteint d’un cancer des poumons. 90 % d’entre elles suivent ses conseils, selon la dernière étude en date.
Siri et Google Now (2011)
Aujourd’hui l’intelligence artificielle tente d’envahir les foyers. De nombreux concepts issus de ce domaine se retrouvent dans les applications tels que Siri ou Google Now. Ces technologies se concentrent principalement sur la compréhension de langages naturels et l’utilisation des ressources du web en passant de Bing Answers, Wolfram Alpha à Yelp, Yahoo et d’autres encore. Les technologies sont encore perfectibles. Elles manquent parfois de rapidité ou de pertinences et les systèmes sont parfois trop restrictifs dans le genre de discours qu’ils acceptent. Le fait de pouvoir intégrer ce genre de technologies dans un smartphone reste néanmoins très impressionnant.
Deep Learning (2012)
Le concept était déjà en travail depuis longtemps, mais c’est entre 2012 et 2013 que le Deep Learning (ou machine learning) est devenu une réalité, notamment grâce à l’extrême puissance des dernières machines du moment. L’idée consiste à laisser un programme informatique autonome apprendre à reconnaitre des objets, des images, ou même des langages, par lui-même.
Raymond Kurzweil est l’un des scientifiques clés du secteur, notamment lorsqu’il eut accès à la puissance et aux immenses quantités de données regroupées chez Google, grâce à Larry Page. Les neurones virtuels ont alors rencontré le Big Data, de quoi faire exploser leur apprentissage. Juste avant l’arrivée de Kurzweil, le Google X Lab avait déjà scannée 16 millions de vidéos sur Youtube pour reconnaître des chats et des humains.
Cortana (2014)
Cortana est l’assistant personnel présenté par Microsoft en avril 2014, dont le nom vient de l’intelligence artificielle Cortana du jeu Halo. Cortana concurrence Siri d’Apple et Google Now, s’appuie sur les ressources de cloud computing de Microsoft, et utilise le moteur de recherche Bing. Elle est capable de reconnaître ses erreurs puis de les corriger par la suite, et tente de tenir une conversation avec son interlocuteur.
IBM SyNAPSE (2014)
En août 2014, IBM a présenté la première puce électronique « cognitive » vraiment puissante, TrueNorth. Son architecture est la même que le premier prototype de puce présenté en 2011 (avec un seul coeur), mais ce processeur est cette fois beaucoup plus puissant. Ses 5,4 milliards de transistors, gravés en 28 nm, sont organisés en s’inspirant du cerveau biologique, en neurones et en synapses. On y trouve un réseau de 4094 cœurs neuro-synaptiques, soit un million de neurones et 256 millions de synapses programmables.
En regroupant 48 de ces processeurs dit « neuromorphiques » ensembles, IBM a pu égaler la composition d’un cerveau de rongeur, avec environ 48 millions de neurones. Les puces sont, pour ne rien gâcher, très peu énergivores (seulement 70 mW par processeur).
Google AlphaGO (2016)
C’est certainement l’une des performances les plus impressionnantes de l’intelligence artificielle : battre le meilleur joueur mondial du jeu de go. Un jeu considéré comme l’un des plus complexes du monde, dans lequel les possibilités sont infinies.
L’intelligence artificielle DeepMind de Google était derrière le programme AlphaGo, qui a gagné 4 parties sur 5 face au champion humain. L’IA a même été capable de rattraper une erreur en plein jeu, pour gagner une manche très serrée. Notez, pour la petite histoire, que le joueur coréen Lee Sedol ne savait pas qu’il allait jouer contre une machine. AlphaGo avait déjà battu un autre champion du jeu de go, Fan Hui, en janvier dernier.TrueNorth
Les derniers articles