(#29) Jeu de go et intelligence artificielle — À chaud ! #2 - YouTube
Bonjour à tous
Aujourd'hui, je voulais vous faire une petite vidéo de réaction à chaud
à cet événement qui est en train de secouer le monde de l'intelligence artificielle
et le monde du jeu de go.
Je veux parler du fait qu'un algorithme, un programme informatique, qui s'appelle "alpha go",
qui a été développé par une filiale de Google,
vient de battre Lee Sedol qui est un des meilleurs joueurs de go du monde
à l'heure actuelle, si ce n'est le meilleur.
Alors, ça peut paraître un peu étonnant que tout le monde s'excite sur cette nouvelle là quand on sait que ça fait à peu près vingt ans qu'un ordinateur a battu le champion du monde d'échecs.
Quelque part, on pourrait penser que c'est pas surprenant qu'il se passe la même chose avec le Go.
Et même on pourrait être surpris que ça ait pris vingt ans pour qu'on arrive à faire avec le go ce qu'on savait déjà faire avec les échecs.
Donc aujourd'hui je voudrais vous expliquer pourquoi le jeu de go et le jeu d'échecs sont vraiment très différents.
Qu'est ce qui explique qu'on ait mis si longtemps avant d'avoir une forme d'intelligence artificielle capable
de battre le meilleur joueur de go du monde, ou l'un des meilleurs joueurs de go du monde ?
Et aussi vous expliquer pourquoi un certain nombre de personnes pensaient que ça prendrait encore plus longtemps.
Ils attendaient plutôt ça pour dans dix ou quinze ans.
Pour comprendre ça, il faut se pencher un peu sur les règles du go.
Alors moi je ne suis pas joueur mais je vais essayer de vous expliquer basiquement le fonctionnement des règles.
Donc le go c'est un jeu qui se joue à deux joueurs,
l'un prend les noirs et l'autre prend les blancs,
et ça ne se joue pas sur un damier ou un échiquier, ça se joue sur une grille.
C'est une grille qui s'appelle le goban je crois.
C'est une grille de dix-neuf par dix-neuf.
Et donc le principe du jeu c'est que chaque joueur a des pions,
(alors on appelle pas ça des pions au go, on appelle ça des pierres),
et chaque fois que c'est son tour de jouer, il prend une de ses pierres et il la pose sur une intersection de la grille sur le plateau.
La différence avec un jeu comme les échecs ou les dames,
c'est que les pierres, un fois posées, elle ne bougent pas.
Il n'y a pas de notion de déplacement, de mouvement des pierres sur le plateau, pas du tout.
En fait c'est très simple :
Chaque joueur, à son tour de jouer, prend une de ses pierres et la pose sur une des intersections de la grille.
Et donc quand on démarre le plateau est vide,
et au fur et à mesure de la partie, le plateau se rempli.
Et alors, c'est quoi le but du jeu ?
En gros c'est d'encercler des territoires.
Et notamment d'encercler des pions de l'adversaire,
si jamais vous encerclez des pions de l'adversaire, vous pouvez les capturer.
Et donc voilà, c'est comme ça qu'on marque des points.
Voilà en gros pour les règles du jeu de go.
Alors maintenant, essayons de comprendre.
Qu'est ce qu'il faudrait qu'on fasse si on voulait faire un algorithme
qui soit capable de jouer au go ?
Alors, on va se placer tout simplement dans la situation du jeu d'échecs.
Imaginez que vous êtes un programme informatique,
vous êtes en train de jouer au échecs, vous êtes au milieu d'une partie.
C'est à vous de jouer, vous devez décider quel est le prochain coup à jouer.
Il y a une méthode qui est assez simple et qu'on peut faire si on est un ordinateur,
c'est tout simplement d'essayer tous les coups possibles.
Imaginons que vous êtres dans une certaine position, vous regardez tous les coups possibles.
Et puis, pour aller plus loin on peut ne pas seulement regarder tous les coups qu'on peut jouer,
mais on peut aussi regarder toutes les réponses possibles
que l'adversaire peut faire à ces coups là.
Et puis on peu pousser plus loin,
c'est à dire qu'on peut regarder toutes les réponses qu'on peut faire à ces réponses.
Et on peut faire ça sur plusieurs niveaux et envisager toutes les situations possibles
en anticipant trois, quatre, cinq ou six coup par exemple.
On anticipe toutes les situations possibles sur un certain nombre de coups,
on regarde quelle est l'issue la plus favorable pour nous,
et puis on décide de jouer le coup correspondant. Ca c'est une méthode assez brutale.
On l'appelle recherche en arbre, pour une raison assez évidente,
on construit l'arbre de toutes les possibilités sur plusieurs coups
et on choisi le coup qui nous avantage le plus.
Ca au échecs, ça peut marcher relativement bien.
Ça demande pas mal de puissance de calcul
mais une technique comme ça peut donner d'assez bons résultats.
Au go, une méthode comme ça, ça marche pas du tout.
Il y a une raison pour ça :
quand vous jouez au go,
le nombre de possibilités de coups est bien plus important qu'aux échecs.
Aux échacs, à un moment donné de la partie,
il y a, en gros, une vingtaine ou ou trentaine de coups différents possibles.
Je crois qu'au tout début de la partie, pour l'ouverture (le premier coup), il y a vingt coups possibles.
Et puis après ça augmente un peu, mais ça tourne autour d'une trentaine de coups possibles.
Au go, quand vous commencez la partie,
la grille est vide.
Et c'est une grille de dix-neuf par dix-neuf, donc il y a trois cent soixante et une positions possibles.
Quand l'adversaire va répliquer, il a 360 positions possibles, et ainsi de suite.
Donc vous voyez que le nombre de coups possibles à un moment donné de la partie
est beaucoup plus important au go qu'aux échecs.
Et ça, ça augmente beaucoup la complexité d'une recherche en arbre
parce qu'on peut anticiper maximum quelques coups
mais ça devient très difficile d'anticiper au-delà parce qu'il faudrait une puissance de calcul vraiment démentielle.
Donc ça c'est vraiment une première différence essentielle entre le jeu de go
et le jeu d'échecs qui fait qu'une recherche en arbre brutale ne marche pas très bien.
Il y a une deuxième différence essentielle, c'est que quand vous faites une recherche en arbre
Je vous ai dit donc vous anticipez sur plusieurs coups à l'avance
Et puis vous regardez une fois joués plusieurs coups
Une fois simulés plusieurs coups, quelle est la situation la plus avantageuse.
Pour faire ça vous avez besoin d'un critère pour décider : Qu'est-ce que ça veut dire "une situation est plus avantageuse qu'une autre".
C'est-à-dire que vous avez besoin d'un critère de décision pour comparer les issues possibles et décider laquelle est la plus favorable pour vous
Faire ca au échecs, c'est pas extrêmement compliqué
Si vous savez jouer un peu aux échecs et que vous regardez un plateau avec une partie en cours de route,
Vous êtes capable de juger, à peu près, lequel des deux joueurs est le mieux barré
donc ont peut asser facilement évaluer la force d'une position aux échec