Des échecs au jeu de Go : quand l'intelligence artificielle dépasse l'homme

Des échecs au jeu de Go : quand l’intelligence artificielle dépasse l’homme

Skynet jouait au Go ?

Avatar de l'auteur
Sébastien Gavois

Publié dans

Sciences et espace

21/03/2016 14 minutes
39

Des échecs au jeu de Go : quand l'intelligence artificielle dépasse l'homme

Une machine a remporté la victoire contre le multi champion Lee Sedol au jeu de Go, une première pour un match de ce niveau. Il s'agit de l'intelligence artificielle AlphaGo développée par DeepMind (Google). Pourquoi a-t-il fallu attendre 2016 pour en arriver là et en quoi est-ce important ? 

L'affaire aura finalement été pliée très rapidement. Les trois premiers matchs ont en effet suffi à l'ordinateur de DeepMind (AlphaGo) pour remporter la victoire au jeu de Go face au champion Lee Sedol, qui est parmi les meilleurs joueurs professionnels au niveau mondial. Score final sans appel : quatre à un. Mais cette victoire symbolique n'est qu'une pierre de plus à l'édifice de l'intelligence artificielle. Ce n'est pas la première, et ce ne sera pas la dernière, loin de là.

Mais au fait, c'est quoi exactement l'intelligence artificielle ? 

Avant d'entrer dans le vif du sujet, il est important de définir quelques bases sur l'intelligence artificielle, un (très) vaste sujet. Commençons par préciser ce que l'on entend exactement par intelligence artificielle, ou IA. Le dictionnaire Larousse en donne la définition suivante : « Ensemble de théories et de techniques mises en œuvre en vue de réaliser des machines capables de simuler l'intelligence humaine ». Voici également une alternative présentée par Dominique Pastre, professeur de mathématiques à l'Université Paris 5 : « Faire faire par une machine des tâches que l'homme accomplit en utilisant son intelligence ».

Pour J.L Laurière (ancien professeur de Paris 6 et pionnier de la recherche en intelligence artificielle), il s'agit de l'« étude des activités intellectuelles de l'homme pour lesquelles aucune méthode n'est a priori connue ». En effet, si un programme informatique existe déjà, pas la peine d'avoir une intelligence artificielle pour effectuer cette tâche. Parmi les exemples courants, on retrouve ainsi écrire le fait de résumer un texte, les mathématiques au sens large, poser un diagnostic médical, etc. 

On peut également citer Turing et son fameux test qui consiste à déterminer si une machine intelligente peut être définie comme « consciente ». Pour passer ce test, il faut que la machine parvienne à se faire passer pour un humain lors d'une conversation via des messages textes (il serait trop facile d'identifier un ordinateur sinon). De nombreux programmes ont essayé et s'y sont cassés les dents. 

Le jeu de dames (500 milliards de milliards de possibilités) a été résolu en 2007

Avant le Go, les ordinateurs se sont attaqués à de nombreux autres types de jeux : les morpions (mis sur le devant de la scène par le film Wargames en 1983), les dames, le poker et les échecs pour ne citer que ces quatre-là. Si la résolution du morpion est triviale avec seulement 9 cases sur le plateau (362 880 possibilités), il en était autrement pour les dames.

Néanmoins, dans les années 90, un ordinateur eut pour la première fois le droit de participer au championnat du monde. Un changement dans les mœurs qui ne s'est pas fait en douceur, puisque tout le monde ne voulait pas qu'une machine participe à ce genre de compétitions.

Le programme informatique perdit son premier match en 1992, mais remporta la victoire en 1994 après que son adversaire abandonne pour des raisons de santé. Une victoire en demi-teinte pour certains. En 1996, les ordinateurs ont arrêté de participer aux compétitions, car ils étaient « beaucoup plus forts que tout être humain » selon les experts.

En 2007, une équipe de l'Université d'Alberta annonçait fièrement que « le jeu de dames est maintenant résolu ». Il faut comprendre par là que les 500 milliards de milliards (5 x 10^20, soit 5 suivi de 20 zéros) de coups possibles ont été calculés et enregistrés dans un ordinateur. Il connait donc toutes les combinaisons possibles et peut réaliser la partie « parfaite » du premier coup, jusqu'au dernier, en toute circonstance.

Notez qu'il ne s'agit ici pas d'intelligence artificielle, la machine exploite simplement une base de données dans laquelle elle pioche les bons coups à jouer, il n'y a pas besoin « d'intelligence » pour cela. Pour la petite histoire, sachez que si aucun joueur (homme ou machine) ne commet d'erreur, l'issue de la partie sera obligatoirement un match nul, et ce, quelle que soit l'ouverture lancée par celui qui commence.

Les échecs ne sont pas résolus, mais la machine domine l'homme depuis 20 ans

Du côté des échecs, la progression de la machine s'est faite en plusieurs étapes. La première tentative sérieuse remonte à la fin des années 80 avec Deep Thought, un ordinateur développé par IBM et dont le nom vient du livre Le Guide du voyageur galactique. Capable d'analyser plus de 720 000 coups par seconde, il est battu deux à zéro par le champion Garry Kasparov. En 1996, c'est Deep Blue qui prend la relève avec une puissance de calcul plus importante (entre 50 et 100 millions de coups par seconde). Cette nouvelle version se fait de nouveau battre par Garry Kasparov trois victoires à une.

Un an plus tard, une version encore améliorée baptisée Deeper Blue (100 à 300 millions de mouvements par seconde) remporte la victoire trois manches à deux (et un nul) contre Kasparov. Notez que durant le premier match, l'ordinateur a joué un coup très surprenant qui déstabilisa Kasparov, et qui lui permit de gagner la partie. 

En 2000, Dominique Pastre (professeur de mathématique à l'Université de Paris 5) expliquait par contre que « les performances aux échecs sont encore inférieures à celles d'un champion du monde, bien que le champion du monde ait pu être battu par un programme. Les progrès les plus récents sont dus plus à l'amélioration des ordinateurs et des techniques de programmation qu'à l'IA ».

Deeper Blue vs Kasparov : un bug pour gagner dans l'immensité des possibilités ?

Plusieurs années plus tard, un statisticien de renom (Nate Silver) publiait un ouvrage The Signal and the noise où il revenait sur le match opposant Deeper Blue à Kasparov et sur le coup surprenant de la machine. Il y explique qu'il s'agirait en fait d'un bug. Sur les centaines de millions de combinaisons calculées, la machine ne serait pas parvenue à se décider pour un déplacement plutôt qu'un autre et... aurait donc joué au hasard en sacrifiant un pion. Ce qui avait été pris pour « un signe d'intelligence supérieure » ne serait donc qu'un bug. Et si c'était un peu ça l'intelligence artificielle ? C'est un autre sujet sur lequel nous aurons l'occasion de revenir prochainement. Dans tous les cas, que le coup soit dû à un bug ou une idée de génie de la machine, l'homme a donc permis à la machine de battre l'homme... Ironie du sort quand tu nous tiens.

Contrairement au jeu de dames, le jeu d'échecs n'a pas été totalement résolu à l'heure actuelle. Selon le mathématicien Claude Shannon, il y aurait environ 10^120 parties « intéressantes » à jouer. Pour arriver à ce résultat, il prend une moyenne de 40 coups dans une partie, avec en moyenne 30 possibilités de mouvements pour chaque joueur, soit (30x30)^40 combinaisons. Mais si l'on prend l'ensemble des parties possibles en tenant compte de la règle des 50 coups, on obtient un nombre encore bien plus grand. Dans tous les cas, c'est beaucoup trop important pour être entièrement stocké dans un ordinateur.

Il existe néanmoins des tables partielles avec un nombre limité de pièces en jeu. Pour cinq pièces et moins, elle pèse un peu moins de 1 Go, tandis qu'on passe à plus de 1 To pour six pièces sur l'échiquier. Avec sept pièces, il est question de 140 To (compressés). Les calculs ont été effectués en 2012 à Moscou sur un ordinateur baptisé Lomonosov. Pour rappel, en début de partie, il y a 32 pièces sur l'échiquier, on est donc bien loin d'avoir résolu entièrement ce jeu.

Le cas du jeu de Go et son plateau à 361 cases

Après les échecs, c'est donc au tour du jeu de Go de « tomber » sous la puissance de calcul et l'intelligence artificielle de l'ordinateur. À l'instar des échecs, le nombre de coups possibles est abyssal. Techniquement, sur un Goban de 19x19 (soit 361 cases au total), il est possible de jouer 361 combinaisons, soit 1,4 x 10^768 coups (14 suivi de 767 zéros)... Excusez du peu !

C'est donc bien plus de possibilités qu'aux échecs, mais ce n'est pas la seule problématique. En effet, il est difficile pour une machine d'estimer la force d'une position à un instant T sur le plateau de jeu, c'est-à-dire de déterminer si un coup est intéressant à jouer afin de prendre un certain avantage sur l'adversaire. Aux échecs, on peut compter le nombre de pièces de chacun, les comparer, etc. Au jeu de Go, c'est bien plus compliqué. Or, pour savoir où poser sa pierre, il est important de savoir ce que cela aura comme conséquences.

Ces deux problèmes (estimer la force d'un coup et explorer l'éventail des possibilités) en font un cauchemar pour les intelligences artificielles et leur analyse traditionnelle. C'est pour ces raisons que le mathématicien Dominique Pastre expliquait il y a quelques années que « les méthodes combinatoires ne peuvent pas être utilisées pour le jeu de Go qui est devenu un domaine test pour différentes méthodes d'IA ». 

Apprentissage profond et par renforcement pour AlphaGo

Pour parvenir à se hisser au plus haut niveau mondial du Go, AlphaGo est donc passé par le deep learning, ou l'apprentissage profond, et l'apprentissage par renforcement. Une méthode automatique qui utilise des réseaux de neurones, appelés ainsi car proches de ce que l'on retrouve dans le cerveau humain.

AlphaGo s'est ainsi nourri de milliers de parties de jeu de Go des grands champions pour apprendre et mémoriser des techniques, avant de jouer des milliers (voir des millions) de parties contre différentes instances de lui-même. Tel un algorithme qui permet d'identifier des images ou de la voix, l'intelligence artificielle s'améliore un peu plus à chaque itération.

Pour de plus amples détails sur les techniques utilisées par Google, Serge Abiteboul (chercheur à l'Inria) et Tristan Cazenave (Professeur Université Paris-Dauphine) ont publié un intéressant billet sur un blog du Monde.

Un... et deux... et trois.... zéro

Au final, le résultat est là, car AlphGo remporte la victoire, quatre matchs à un face à Lee Sedol, l'un des meilleurs joueurs mondiaux avec pas moins de 18 titres internationaux. Notez que lors d'un match à huis clos en octobre 2015, la machine de DeepMind (filiale de Google) avait déjà écrasé le champion Fan Hui par cinq à zéro. Mais Lee Sedol joue dans une toute autre catégorie, bien plus élevée. Ce dernier pensait même pouvoir battre la machine cinq à zéro avant de changer de discours quelques semaines avant la compétition.

Dans tous les cas, voici le détail des différents matchs :

  • 1e partie : victoire d'AlphaGo (186 mouvements)
  • 2e partie : victoire d'AlphaGo (211 mouvements)
  • 3e partie : victoire d'AlphaGo (176 mouvements)
  • 4e partie : victoire de Lee Sedol (180 mouvements)
  • 5e partie : victoire d'AlphaGo (280 mouvements)

Lors de la première manche, Lee Sedol a tenté des mouvements audacieux qui sortent un peu des sentiers battus, c'est du moins l'avis des experts sur la question. Une technique classique contre un ordinateur et dont le but est de « déstabiliser » la machine, mais AlphaGo n'a « pas reculé dans les combats » explique Google, et a même remporté la victoire.

Durant le second match, le commentateur Yoo Changhyuk (9-dan pro, le plus haut niveau mondial pour les joueurs professionnels) explique que Lee Sedol a proposé un jeu bien différent « en toute sécurité ». Ce dernier aurait néanmoins commis quelques erreurs qui lui auraient coûté la victoire. Le second présentateur de la rencontre, Michael Redmond (9-dan pro également) se dit « impressionné » par le début de jeu de la machine. Que ce soit avec une entrée en matière classique ou atypique, AlphaGo remporte donc la victoire, ce qui ne laisse que peu d'espoir au champion coréen pour la suite des opérations ?

Selon les présentateurs, le troisième match était l'occasion pour Lee Sedol de jouer son jeu habituel, notamment avec des batailles de kos, une phase très importante du jeu, mais assez compliqué (voir ici pour les détails). Peine perdue, AlphaGo a encore réussi à se sortir de cette situation et à remporter la victoire. Trois à zéro pour la machine de Google, l'issue de la compétition est pliée : Google est vainqueur, peu importe le résultat des deux autres matchs.

Jeu de Go AlphaGoJeu de Go AlphaGoJeu de Go AlphaGo

La partie entre les deux protagonistes n'est pour autant pas terminée et le quatrième match était l'occasion pour Lee Sedol de remporter sa victoire, qui sera la seule dans cette compétition. Selon les commentateurs de la partie (deux experts 9-dan pro), le coréen a joué un coup brillant au 78e mouvement, suivi par une erreur d'AlphaGo. Plus gênant, la machine n'aurait pas remarqué son erreur tout de suite et ne s'en serait rendu compte qu'au 87e coup selon Demis Hassabis, PDG de DeepMind. Première victoire de Lee Sedol qui démontre qu'AlphaGo n'est pas (encore ?) infaillible.

Le cinquième et dernier match était très attendu par certains, non pas pour connaitre le gagnant de la compétition puisqu'AlphaGo l'a d'ores et déjà remporté, mais pour voir si Lee Sedol arriverait à mieux cerner la machine au bout de quatre affrontements. C'est comme lors de duels entre humains : ils apprennent à se connaitre et à plus ou moins anticiper les techniques de jeu de l'adversaire. Mais après une victoire au quatrième round, Lee Sedol laisse de nouveau filer la victoire sur la dernière manche. Michael Redmond explique qu'il « était difficile de dire à quel moment AlphaGo était en avance ou en retard, c'était un match serré tout du long ». Quatre à un, score final. 

Jeu de Go AlphaGoJeu de Go AlphaGo

L'enjeu de la compétition était un chèque d'un million de dollars reversé par DeepMind au gagnant. Comme la société l'avait déjà annoncée en cas de victoire, elle a décidé d'en distribuer l'intégralité à l'UNICEF, à des organismes de charité dans le domaine des sciences, à des organismes de bienfaisance ainsi qu'à des organisations du jeu de Go.

Les cinq matchs sont disponibles en intégralité sur la chaine de DeepMind, tandis que vous trouverez les résumés (90 secondes par partie) ici : 

Que faut-il retenir de la victoire d'AlphaGo ? 

La première chose importante à préciser est que la victoire de la machine sur l'homme au jeu de Go était attendue. Elle arriverait un jour, c'était une certitude. Pour autant, les spécialistes n'attendaient pas cela avant cinq ou dix ans. Les progrès ont donc été plus rapides que prévus, ce qui laisse penser qu'ils pourraient encore s'accélérer dans les années et décennies qui viennent.

Pour Google, « ce test est de bon augure concernant le potentiel de l'IA dans la résolution d'autres problèmes [...] Cela a un énorme potentiel pour l'utilisation de la technologie d'AlphaGo afin de trouver des solutions que les humains ne voient pas nécessairement dans d'autres domaines ». Lesquels ? Ce n'est pas précisé pour le moment.

Plus qu'une victoire de la machine contre l'homme, on peut aussi voir cela comme la victoire d'une équipe de scientifiques (et donc de l'homme) contre un seul humain. AlphaGo ne s'est en effet pas programmé tout seul, il a été mis sur pied par des hommes qui lui ont expliqué le fonctionnement du jeu. Il s'agit d'apprentissage supervisé, comme le rappel le français Yann LeCun, patron de l'intelligence artificielle chez Facebook.

« Nous sommes encore loin d'une machine qui peut apprendre à effectuer avec souplesse la gamme complète des tâches intellectuelles d'un être humain, ce qui est peut-être la marque de la vraie intelligence générale artificielle », ou intelligence artificielle forte, explique Google. Même son de cloche pour Yann LeCun : « Comme je le dis souvent, nous ne connaissons toujours pas les principes de l'apprentissage prédictif (aussi appelé apprentissage non supervisé). C'est ce type d'apprentissage qui permet aux humains (et aux animaux) d'acquérir du bon sens ».

Dans tous les cas, la victoire d'AlphaGo est surtout celle de Google sur le plan médiatique. La société de Moutain View s'est en effet offert une exposition très importante, surtout dans les pays d'Asie, où elle n'est pas toujours en position de force. Ceci explique peut-être pourquoi elle souhaiterait se débarrasser de Boston Dynamics, sa filiale qui met sur pied des robots parfois inquiétants, parfois humanoïdes (ou les deux) comme le dernier Atlas, malmené par ses créateurs afin de le tester.

Écrit par Sébastien Gavois

Tiens, en parlant de ça :

Sommaire de l'article

Introduction

Mais au fait, c'est quoi exactement l'intelligence artificielle ? 

Le jeu de dames (500 milliards de milliards de possibilités) a été résolu en 2007

Les échecs ne sont pas résolus, mais la machine domine l'homme depuis 20 ans

Deeper Blue vs Kasparov : un bug pour gagner dans l'immensité des possibilités ?

Le cas du jeu de Go et son plateau à 361 cases

Apprentissage profond et par renforcement pour AlphaGo

Un... et deux... et trois.... zéro

Que faut-il retenir de la victoire d'AlphaGo ? 

Le brief de ce matin n'est pas encore là

Partez acheter vos croissants
Et faites chauffer votre bouilloire,
Le brief arrive dans un instant,
Tout frais du matin, gardez espoir.

Fermer

Commentaires (39)


On a une estimation du nombre de serveurs que monopolisais alpha go ? 

(J’ai pu lire un millier, mais ca semble pas etre une source très sure)

  

(Pour relativiser Les capacités mises en jeu pour battre un seul cerveau)


J’ai lu un article selon lequel ils envisageaient de passer au défi suivant : battre les meilleurs joueurs de starcraft.

(source anglaise :

http://fortune.com/2016/03/11/go-deepmind-starcraft/   )

Vu le temps mis pour le go, j’ai des doutes pour un jeu d’une aussi grande complexité que starcraft…


ouais enfin le nombre d’actions par minute (enfin là on pourra parler par seconde avec l’ordi) va donner un avantage énorme à la machine : la micro gestion des unités va rendre la tâche aisée à la machine.


J’ai trouvé cela super intéressant, du coup je me suis mis au go. Bon faut avouer que c’est un peu simplet comme jeu. <img data-src=" />








zip a écrit :



J’ai lu un article selon lequel ils envisageaient de passer au défi suivant : battre les meilleurs joueurs de starcraft.

(source anglaise :

http://fortune.com/2016/03/11/go-deepmind-starcraft/ )

Vu le temps mis pour le go, j’ai des doutes pour un jeu d’une aussi grande complexité que starcraft…





Ça sera au contraire sûrement très simple. En faisant plus d’actions par secondes et en pouvant gérer une énorme quantité d’actions en parallèle. Car pour starcraft est autre en général c’est plus une question de cliquer le plus vite. Les stratégies restant très très limitées.



Oui enfin appeler cela de l’intelligence artificielle est un brin exagéré, même si c’est le terme officiel.



Dans le cadre d’AlphaGo, il s’agit d’utiliser un réseau de neurones pour estimer le meilleur coup donné en fonction d’une bibliothèque préétablie d’apprentissage.

Bien entendu que l’ordinateur allait finir par gagner un jour ou l’autre, comme cela sera le cas sur tous les jeux à règle bien définie et à champ restreint.



La raison: cela fait longtemps que l’ordinateur peut calculer beaucoup plus vite que l’homme en s’appuyant sur une “mémoire” qui est bien supérieure à la notre.



Mais comme cela est dit en conclusion: il s’agit surtout de la victoire de scientifiques qui ont réussi à programmer un outil avec les bons algorithmes pour battre un homme qui n’avait que son seul cerveau pour se battre.

C’est un peu comme si on s’apercevait qu’un char est plus fort qu’un fantassin armé d’un baton.



On pourra parler d’intelligence artificielle quand une machine sera capable de s’auto programmer pour assimiler, comprendre et interagir avec l’univers qui l’entoure.


Des petits graph sympa sur le temps de réflexion par tour :





ouais enfin il restait le coups de latte à la fin de le première partie, le sac à puces ne serait pas revenu faire les 4 dernières parties


Bah, justement je ne pense pas à dire vrai.



Il est difficile évidemment de faire des pronostics ;), mais une bonne partie de l'efficience à Starcraft réside en la capacité de micro-manager.       

Notamment parce que de cette capacité dépend...






1. Le rythme auquel tu construis ton économie : connaître la liste de construction optimale pour un début de partie et lancer les productions / assignation de tâche à la demi-seconde près (pas pour rien qu'au fil du temps ils ont modifié la situation de départ pour qu'on parte direct avec plus de péons, ça économise 5mn de diffusion où tout le monde fait à peu près la même chose).      






2. Ta capacité à t'informer sur ce que trafiques ton adversaire (envoi de scouts, capacités radar) : ce qui implique pour un humain de switcher sans arrêt de point de vue en jouant sur les raccourcis, entre la base, tes différents scouts et un autre point arbitraire. À chaque fois que tu changes, il faudra à minima une demi-seconde au joueur pour jauger la situation et réagir en conséquence (faire reculer le scout, lui donner l'ordre d'attaquer un bâtiment/une unité, etc). À fortiori pour les techniques de harass qui requièrent de suivre régulièrement ce qu'il se passe (again, ils ont ajouté un mode de jeu où deux joueurs gèrent le même camp, ça vient pas de nulle part).      






3. Et enfin (surtout) ta capacité à combiner focus-fire et capacités spéciales d'une flopée d'unités mélangées.       

Sachant que Starcraft ne s'emmerde pas à proposer de formations ni à doter les unités d'un minimum de réactions tactiques (Warzone 2100, sorti en 2001, le proposait <img data-src=">), être efficace en situation d'attaque requiert un mental d'acier et une connaissance parfaite de chaque raccourci clavier pour alterner move/focus fire/special ability 1/special ability 2/etc de manière pertinente.

&nbsp;

Et dans tous ces aspects la machine peut écraser sans forcer l'être humain puisque son temps de réaction est considérablement plus faible.





EDIT : Mega-grillé (consolation, mon post est plus détaillé <img data-src=" />)


Sébastien :



La société de Moutain View s’est en effet offert une exposition très importante, surtout dans les pays d’Asie…. Ceci explique peut-être pourquoi elle souhaiterait se débarrasser de Boston Dynamics



Je ne vois pas le rapport de cause à effet ? Quel est le rapport ?

La dernière phrase arrive comme un cheveu sur la soupe.


De loin le meilleur article que j’ai pu lire sur le sujet ! Merci.


Je crois que ça n’a pas été dévoilé, mais si quelqu’un connait un article sur quels critères le réseau de neurones d’évaluation des coups se base, je suis preneur.



Pour jouer au go à mon petit niveau, en dehors des formes classiques, je ne vois pas du tout comment “algorithmer” la force d’un coup.


Justement le renforcement learning signifie ici que la machine joue contre elle même pour s’améliorer, il n’y a pas de “base préétablie” de coups possible sauf pour quelques ouvertures et coups, connus aussi par l’humain en face car assez courants.



Comme expliqué dans l’article, le nombre de possibilité au Go est bien trop grand pour precalculer les coups.



La définition de l’intelligence n’est pas vraiment precise, le cerveau humain aussi fonctionne avec un gros réseau de neurones déterminé par des lois physiques, ça n’empêche pas qu’il soit “intelligent”.



Le deep learning signifie qu’on utilise des réseaux de neurones avec de nombreuses couches (l’output d’une couche est l’input de la suivante), chaque couche possédant typiquement moins de neurones que la précédente, ajoute des non-linéarités et “encode” l’input avec un peu moins de dimensions. La couche ayant le moins de neurones encode ainsi une représentation de haut niveau d’abstraction de l’input. Cet encodage est vraiment “appris” par la machine et n’est aucunement pre-determiné, il sera différent pour chaque instance du réseau (l’aléatoire rentre presque toujours en jeu dans le processus d’apprentissage).



À partir du moment où le comportement de la machine est suffisamment subtil et complexe pour être complètement imprévisible aux yeux d’un des meilleurs experts humains au point de pouvoir le battre au terme d’un tel processus d’apprentissage, je pense qu’on peut raisonnablement parler d’une forme d’intelligence.


tu ne cites pas la partie intéressante:



la filiale qui met sur pied des robots parfois inquiétants, parfois humanoïdes (ou les deux) comme le dernier Atlas, malmené par ses créateurs afin de le tester.





quant au rapport de cause à effet, Intelligence Artificielle et robots, ça ne te parle pas? ^^

On séduit plus facilement les asiatiques avec une IA qui fait du Go qu’avec des robots militaires humanoïdes, non?








FunnyD a écrit :



J’ai trouvé cela super intéressant, du coup je me suis mis au go. Bon faut avouer que c’est un peu simplet comme jeu. <img data-src=" />





Bah les règles sont simples oui… la stratégie un peu moins ;)









steinfield a écrit :



Je crois que ça n’a pas été dévoilé, mais si quelqu’un connait un article sur quels critères le réseau de neurones d’évaluation des coups se base, je suis preneur.



Pour jouer au go à mon petit niveau, en dehors des formes classiques, je ne vois pas du tout comment “algorithmer” la force d’un coup.





demande à google, mais ça m’etonnerait qu’ils te donnent leur recette



“Pour autant, les spécialistes n’attendaient pas cela avant cinq ou dix ans. Les progrès ont donc été plus rapides que prévus, ce qui laisse penser qu’ils pourraient encore s’accélérer dans les années et décennies qui viennent.”



&nbsp; je suis dubitatif sur ce point,

si je me trompe pas, ils ont utilisé un algo type monte carlo et donc, pas la puissance pure,

je pense que les spécialistes pensaient à un Super-Ordi qui calculerait TOUTES les possibilités du jeu de Go,

d’ici 5 à 10ans donc.



mais là c’était autre chose que la puissance pure.








zip a écrit :



J’ai lu un article selon lequel ils envisageaient de passer au défi suivant : battre les meilleurs joueurs de starcraft.

(source anglaise :

http://fortune.com/2016/03/11/go-deepmind-starcraft/ )

Vu le temps mis pour le go, j’ai des doutes pour un jeu d’une aussi grande complexité que starcraft…





Lu aussi que les joueurs de SC étaient la prochaines cible de GG :)

Mais du coup, ça va être un autre challenge que de gérer le brouillard de guerre.







FunnyD a écrit :



J’ai trouvé cela super intéressant, du coup je me suis mis au go. Bon faut avouer que c’est un peu simplet comme jeu. <img data-src=" />





T’es quel kyu ? <img data-src=" />







Nissash a écrit :



“Pour autant, les spécialistes n’attendaient pas cela avant cinq ou dix ans. Les progrès ont donc été plus rapides que prévus, ce qui laisse penser qu’ils pourraient encore s’accélérer dans les années et décennies qui viennent.”



  je suis dubitatif sur ce point,

si je me trompe pas, ils ont utilisé un algo type monte carlo et donc, pas la puissance pure,

je pense que les spécialistes pensaient à un Super-Ordi qui calculerait TOUTES les possibilités du jeu de Go,

d’ici 5 à 10ans donc.



mais là c’était autre chose que la puissance pure.





Le “ils” en gras c’est pour les ingés de DeepMind ? Si oui, c’est faux : alphaGo n’utilise pas Monte Carlo mais des réseaux de neurones.

Et tous les chercheurs qui se sont penché sur la question ont tout de suite compris qu’il était impossible de calculer toutes les possibilités.



Il est vrai qu’avant, les meilleurs résultats pour des IA de Go étaient obtenues par Monte Carlo (mixés avec des optimisations basées sur les joseki), justement parce que la combinatoire du jeu de Go dépasse non seulement nos calculateurs actuels, mais aussi les prochains, et même ceux hyper futuriste des films de SF. Ce petit jeu est démoniaque dans sa profondeur : ça fait plus de 3000 ans que les humains se penchent dessus pour en étudier les développements possibles et on a toujours pas fait le tour. Le brute force est simplement impossible, quels que soient les conditions, il faut obligatoirement ruser pour simuler ce qui peut s’approcher de l’intelligence si on veut un résultat potable (les anciennes IA se faisaient battre par les maitres de Go avec 9 pierres de handicap).



C’est pas Microsoft qui veut devel une IA qui joue à Minecraft ? Faudrait mettre AlphaGo sur le coup, les laisser créer leurs villes (genre Metropolis et Gotham) puis lancer les hostilités <img data-src=" />








Koxinga22 a écrit :



Le “ils” en gras c’est pour les ingés de DeepMind ? Si oui, c’est faux : alphaGo n’utilise pas Monte Carlo mais des réseaux de neurones.

Et tous les chercheurs qui se sont penché sur la question ont tout de suite compris qu’il était impossible de calculer toutes les possibilités.







Me semble avoir lu qu’ils utilisaient bien du monte carlo, mais combiné avec 2 réseaux de neurones.



L’un pour estimer la force d’un coup, et l’autre pour estimer les chemins qui valent le coup d’être explorés.





&nbsp;

&nbsp;









steinfield a écrit :



Me semble avoir lu qu’ils utilisaient bien du monte carlo, mais combiné avec 2 réseaux de neurones.



L’un pour estimer la force d’un coup, et l’autre pour estimer les chemins qui valent le coup d’être explorés.





<img data-src=" /> c’est vrai (rapide recherche) ils utilisent bien monte carlo pour parcourir les arbres. Je ne m’étais focalisé que sur les réseaux, merci de cette précision.









Koxinga22 a écrit :



T’es quel kyu ?





Il est san go kyu <img data-src=" />



<img data-src=" /> Le brouillard de guerre est une sacrée épreuve pour un algorithme.



Tous les jeux de plateau sont “symétriques” dans leur façon de donner l’information sur l’état de la partie.



Mais faire un algo qui est capable de faire un plan, de comprendre la stratégie possible d’un advaire à partir d’informations parcellaires, voir carrément l’absence d’information, puis de changer son plan, c’est vraiment pas pour tout de suite.



Mais c’est un sacré challenge !


Apparemment, tout est suffisamment décrit dans leur papier paru dans Nature pour recoder le logiciel. Les parties utilisées pour l’entraînement du réseau de neurone viennent de KGS.








linkin623 a écrit :



<img data-src=" /> Le brouillard de guerre est une sacrée épreuve pour un algorithme.



Tous les jeux de plateau sont “symétriques” dans leur façon de donner l’information sur l’état de la partie.



Mais faire un algo qui est capable de faire un plan, de comprendre la stratégie possible d’un advaire à partir d’informations parcellaires, voir carrément l’absence d’information, puis de changer son plan, c’est vraiment pas pour tout de suite.



Mais c’est un sacré challenge !





Pas sûr que ça soit SI compliqué. Il n’y a pas 6000 stratégies possibles ni unités différentes. Une fois que tu entres tous les build order et les forces/faiblesses des compo d’armée, pas de soucis niveau réactivité de l’IA qui peut estimer en instant quelles unités produire.



Le brouillard de guerre ajoute la nécessité de scout en permanence, mais là aussi gros avantage sur l’IA, tu peux gérer plusieurs scout non stop, réagir en temps réel à tout ce qui peut être vu, et on retourne au point d’avant.



Reste le placement et le timing quand tu n’arrives pas à scouter. Plus compliqué car moins de règle absolue, mais là aussi, si on part du principe que tu peux gérer 5 scout non stop sans les perdre bêtement, et que tu peux micro chaque unité pour faire la concav de tes reves…



Imaginez en combat, tu peux micro chaque attaque d’unité pour pas perdre un poil de dégats, tu peux reculer unit par unit pour les préserver, tu peux snipe l’unité qui te donne plus de proba de gagner. En fait tu peux estimer quasi en temps réelle si tu vas remporter la bataille ou non, sous seule condition de la vision.

&nbsp;

Je vois beaucoup mieux comment “algorithmer” ça que le go. Après je dis pas que c’est simple hein, mais je n’imagine pas que ça soit plus compliqué que le go.



https://deepmind.com/alpha-go.html



( combines monte carlo …. and …. )



edit: oooppsss grilled


Ca dépend de l’interface avec le jeu aussi. Si l’IA passe par un écran + “souris/clavier” (émulation ou autre) pour avoir la même contrainte qu’un utilisateur humain, c’est déjà pas aussi simple.


ha bah steinfield t’as répondu aussi.



oui, pour le reseau de neurone, je savais <img data-src=" />


ha bah steinfield t’as répondu aussi.



oui, pour le reseau de neurone, je savais <img data-src=" />


l’idée sur SC ne serait-il pas de limiter le micro-management et le temps de réponse de l’IA ?

ainsi avec ces limites, il faudrait trouver un algo complexe pour battre les Humains


Ils devraient mettre leur IA sur des jeux de bastons avec un poil de complexité (les vieux jeux SNK ou un bon vieux Super Street Fighter 2X ou 3.3). Les possibilités tactiques sont immenses et c’est en temps réel


Yep, je pense aussi que le but de l’IA sera de battre le joueur en s’adaptant à son kpm.


Aaah, je ne serais pas si catégorique.

Déjà parce que le brouillard de guerre pose un problème d’entrée de jeu : tu dois définir une stratégie en aveugle. Ca va aussi gêner dans la tactique attaque sur le flanc ? gauche ou droite ? Nul doute que les humains essaierons de trouver ce que l’algo utilise pour decider et le feinter là dessus.

Par contre, aucun doute que l’ordi gagnera en terme d’apm et de calcul des forces en présence pour ne pas livrer de batailles perdues d’avance (note, ça peut être exploité contre lui).

Je pense que tout comme le Go l’ordi ne fera qu’une bouchée des humains, si c’est pas au premier match, ce sera le suivant mais c’est inéluctable.



Non la vraie question c’est : avec quelle unité l’ordi sera le plus à l’aise ? Zerg ?








JoePike a écrit :



https://deepmind.com/alpha-go.html



( combines monte carlo …. and …. )



edit: oooppsss grilled









Nissash a écrit :



ha bah steinfield t’as répondu aussi.



oui, pour le reseau de neurone, je savais <img data-src=" />





Oui, je suis resté sente sur ce coup là <img data-src=" />









Koxinga22 a écrit :



Non la vraie question c’est : avec quelle unité l’ordi sera le plus à l’aise ? Zerg ?&nbsp;



&nbsp;

&nbsphttps://www.youtube.com/watch?v=IKVFZ28ybQs





Serge Abiteboul



De la famille de l’homme le plus classe du monde ? <img data-src=" />








V_E_B a écrit :



De la famille de l’homme le plus classe du monde ? <img data-src=" />





<img data-src=" /> je suis pas le seul à avoir lu comme ça en fait <img data-src=" />









steinfield a écrit :



Je crois que ça n’a pas été dévoilé, mais si quelqu’un connait un article sur quels critères le réseau de neurones d’évaluation des coups se base, je suis preneur.



Pour jouer au go à mon petit niveau, en dehors des formes classiques, je ne vois pas du tout comment “algorithmer” la force d’un coup.





Je suis tombé là dessus (bonne chaine YT en passant) qui donne des explications :

https://www.youtube.com/watch?v=qWcfiPi9gUU



On parle d’un réseau de neurone, donc chaque neurone à une “valeur” qui qui est propre (un nombre réel donc potentiellement infini mais bien sûr informatique oblige il y a bien une limite de digit après la virgule). Le goban représente les entrées (mettons 1 pour pierre blanche, -1 pour pierre noire et 0 pour case vide), chaque neurone fait la somme des entrées et “grosso modo” multiplie le tout par sa valeur personnelle pour pondre un résultat (une sortie qui est seuillée pour obtenir 1 ou 0). Les sorties sont envoyées à la couche suivante sur N couches. Ces couches multiples forment le deep learning (je ne connais pas le nombre de couches, si quelqu’un l’a ça m’intéresse).

Donc le but du jeu, c’est de calibrer les valeurs individuelles des neurones pour produire les sorties correctes (conformes aux coups joués par les humains et reconnus comme “bons”). Les ingés de deepmind eux-même ne connaissent pas ces valeurs. L’algo les définit tout seul en ingurgitant des parties, puis les affine en jouant contre lui-même.



Ceci n’est qu’un résumé très grossi de ce que j’ai compris. Toute correction ou complément sont bienvenus.



NB : pour répondre à ta question, il n’y a pas d’algo pour bien jouer. Juste une “structure” contenant des “chiffres magiques”. Le critère sur lequel se base l’algo, c’est tout simplement la victoire ou non avec tel ou tel ensemble de chiffres.