Apprentissage automatique
Le jeu de dames comme laboratoire d'intelligence. Voilà comment Arthur Samuel conçut son approche. Ce pionnier, actif des années 1940 jusqu'aux années 1960, transforma l'informatique en lui insufflant l'apprentissage de l'expérience, une capacité jusqu'alors réservée aux humains.
Le choix des dames n'était nullement fortuit. Dans le paysage de l'intelligence artificielle, les jeux avaient un rôle comparable à celui de la drosophile pour les généticiens, des organismes simples, faciles à manipuler, parfaits pour l'expérimentation. Les dames, moins complexes que les échecs, offraient un terrain idéal où Samuel put observer les mécanismes d'apprentissage sans s'embourber dans des règles trop sophistiquées.
En 1952, le premier programme vit le jour sur l'IBM 701. Trois ans plus tard, la version dotée d'apprentissage autonome captiva le public lors d'une démonstration télévisée. Sans atteindre le niveau des champions, ce programme innovait par deux méthodes : l'apprentissage par cœur (« rote learning ») et l'apprentissage par généralisation.
La première technique, l'apprentissage par cœur, ressemblait davantage à notre propre mémoire qu'on ne pourrait l'imaginer. Samuel programma son ordinateur pour qu'il se souvienne de chaque configuration rencontrée durant ses parties. Concrètement, quand l'ordinateur analysait une position, il calculait sa valeur grâce à un algorithme appelé minimisation-maximisation qui simule les meilleurs coups possibles pour chaque joueur. La machine stockait ensuite cette position avec son évaluation. Lors des parties suivantes, face à une situation déjà vue, plus besoin de longs calculs, la réponse surgissait instantanément de sa mémoire. Samuel intégra un mécanisme ingénieux qu'il nomma « dépréciation ». Pour comprendre, visualisons un arbre où chaque branche représente un coup possible. Plus on s'enfonce dans cet arbre, plus on avance dans le déroulement hypothétique de la partie. Samuel fit en sorte que les positions lointaines dans cet arbre valent légèrement moins que celles proches du moment présent, même à valeur de jeu égale. Cette subtilité encourageait le programme à privilégier les chemins courts vers la victoire. Sans cette astuce, l'ordinateur aurait pu s'enliser dans des stratégies interminables, préférant gagner en 50 coups plutôt qu'en 10, simplement parce que les deux scénarios aboutissaient mathématiquement à la victoire.
Sa seconde méthode, l'apprentissage par généralisation, préfigurait les techniques modernes d'apprentissage par différences temporelles. Samuel fit jouer son programme contre lui-même des milliers de fois. À chaque coup, par une idée brillante et intuitive, l'ordinateur modifiait subtilement sa façon d'évaluer le plateau. Si une position du jeu mène à d'autres positions avantageuses, alors cette position initiale doit être favorable. Imaginons un coup qui semble banal mais conduit systématiquement à des configurations gagnantes trois mouvements plus tard, le programme apprend graduellement à valoriser ce coup apparemment anodin. L'ordinateur n'attendait pas la fin de la partie pour ajuster ses évaluations, il apprenait en continu, après chaque mouvement. Sans qu'on lui dise explicitement « ceci est bon » ou « cela est mauvais », le programme découvrait par lui-même les stratégies efficaces. Sa boussole restait néanmoins l'avantage matériel – le nombre de pièces possédées par rapport à l'adversaire – avec une préférence marquée pour les dames, ces pièces couronnées aux capacités de déplacement supérieures. Cette approche, étonnamment moderne, constitue l'une des premières manifestations d'apprentissage autonome en informatique au XXe siècle.
Au-delà du cadre de la recherche théorique, les travaux de Samuel sur le calcul non numérique façonnèrent l'architecture des premiers ordinateurs IBM. Les instructions logiques qu'il proposa devinrent un standard industriel tant leur utilité s'imposa pour tout traitement non mathématique. Avant de bouleverser l'intelligence artificielle, il s'était distingué comme ingénieur électricien. Diplômé d'Emporia College en 1923, puis titulaire d'un master du MIT en 1926, il y enseigna brièvement avant de rejoindre les Bell Labs. Ses recherches sur les tubes électroniques, notamment sur la charge d'espace entre électrodes parallèles, marquèrent l'époque. Durant la guerre, ses travaux sur les dispositifs protégeant les récepteurs radar s'avérèrent primordiaux.
En 1946, devenu professeur à l'Université de l'Illinois, il participa à la création d'un des premiers ordinateurs électroniques. C'est là qu'il rêva d'un programme de dames capable de vaincre un champion du monde. Ce projet resta inachevé jusqu'à son arrivée chez IBM en 1949, où il travailla sur le 701, premier ordinateur à programme enregistré de la firme. Samuel améliora considérablement sa mémoire à tubes Williams, quadruplant sa capacité de stockage et stabilisant son fonctionnement. La première démonstration publique de son programme impressionna Thomas J. Watson Sr., fondateur d'IBM, au point que celui-ci prédit – correctement – une hausse de 15 points de l'action en bourse.
Samuel contribua à l'expansion internationale d'IBM, façonnant l'orientation des laboratoires européens, notamment à Vienne (informatique) et Zurich (physique). Sa discrétion explique sans doute pourquoi l'importance de ses travaux ne fut pleinement reconnue qu'après son départ d'IBM en 1966.
À Stanford, où il devint professeur de recherche, il poursuivit ses travaux sur le jeu de dames jusqu'à ce que d'autres programmes surpassent le sien dans les années 1970. Il s'intéressa à la reconnaissance vocale et dirigea de nombreux doctorants. Ses talents s'étendaient à la rédaction technique. Il excellait à comprendre des documentations confuses et à produire des manuels limpides.
Samuel continua à programmer jusqu'à un âge remarquable. Sa dernière contribution, à 85 ans, fut d'adapter des programmes d'impression multi-polices pour le département d'informatique de Stanford. Seule la maladie de Parkinson mit fin à cette activité exceptionnelle. Sa dernière connexion date du 2 février 1990, ce qui fait probablement de lui le plus âgé des programmeurs actifs de son temps.