2024_BUT2_Saphir_AlphaGo

En 1968, le film de Stanley Kubrick, Odyssée de l’espace, mettait déjà en scène une partie dans laquelle un ordinateur, Hal, battait un humain à un jeu. A la fin des années 1990, Deep Blue relance le débat sur l’intelligence artificielle, et notamment sur des notions d’éthique comme le fait que l’IA serait une machine pensante. Il perd une partie contre Kasparov, champion du monde d’échecs, en 1996. (2-4) En 1997, lors du match revanche, Deep Blue, renommé Deeper Blue bat Kasparov mais pas dans les conditions des championnats du monde (3,5) (2,5).
Plus récemment, AlphaGo, IA de DeepMind, une filiale de Google, a battu Fan Hui, champion d’Europe, puis Lee Sedol, champion du monde du jeu de Go.(4-1)
Le jeu de Go est un jeu simple: 2 joueurs s’affrontent sur un plateau. Chacun possède des pierres, noires et blanches, qu’il doit disposer à tour de rôle sur le plateau. L’objectif est de créer une zone où les pierres adverses sont “encerclées”. Celui qui possède le plus de zones et le plus de pierres encerclées gagne la partie. C’est un jeu de stratégie combinatoire abstrait. On y joue sur un goban, donc un plateau de 19 sur 19.

Slides & Videos

Members

NameContribution
Rizaoglu Fulya- État de l'art
- Description technique
- Avantages
Ouchallal Samia- Introduction
- Inconvénients et contraintes
- Évolution de l'architecture

State of the Art

Business Aspect

Au niveau commercial, plusieurs intelligences artificielles semblables à AlphaGo ont été créées au même moment, ou un peu après. On retrouve premièrement DeepStack, une intelligence artificielle basée sur le deep learning, créée en 2017. Elle est capable de jouer au poker et a été développée par l’université de l’Alberta. 

Dans le domaine du jeu vidéo, il  y a OpenAI Five, développée par OpenAI en 2018. C’est une intelligence artificielle capable de jouer au jeu multijoueur en ligne Dota 2. 

AlphaGo n’est pas disponible à l’utilisation. En effet, on ne peut pas le télécharger afin d’y jouer. AlphaGo n’est pas commercialisé. Il n’a donc pas de business model en particulier. Bien que l’IA et sa composition ne soient pas révélés au grand jour, certaines entreprises ont des accords avec DeepMind, son créateur.

Dans le même milieu, on va retrouver les programmes Zen, Crazy Stone et Darkforest sont des programmes qui se sont succédés dans le jeu de go.

ChatGPT est également un concurrent. Quant à ce dernier, il est accessible sur internet, de manière gratuite, et aussi de manière payante par le biais d’un abonnement qui offre des fonctionnalités supplémentaires, comme depuis peu, l’analyse d’images.

Technical Aspect

En ce qui concerne la partie technique, il faut savoir que la méthode utilisée est principalement du deep learning, donc de l’apprentissage profond (des réseaux de neurones profonds).

Deep Learning : Le deep learning fait partie des technologies du machine learning. Il s’agit d’un ensemble d’algorithmes capables d’imiter les actions du cerveau humain avec l’aide d’un réseau de neurones artificiels. 

On retrouve d’autres méthodes utilisées dans le domaine de l’intelligence artificielle qui rivalisent avec l’apprentissage profond. Par exemple, il y a la méthode par arbre de décision qui est représentée par un arbre dans lequel chaque nœud représente un test et chaque branche représente un résultat suite au test. Il y a aussi l’algorithme génétique, qui se base sur un mécanisme de sélection naturelle afin de trouver des solutions aux problèmes. Ce dernier ne renvoie pas de résultat fiable. 

Project Description

Problem Definition
C’est dans ce contexte que le jeu de go apparaît dans l’informatique, et plus particulièrement dans l’intelligence artificielle, où il représente un des problèmes les plus complexes à résoudre. En effet, au démarrage, ce sont des algorithmes comme min-max et alpha-bêta qui sont utilisés pour simuler une intelligence artificielle jouant au go. Pourtant, ils n’offrent pas de bons résultats mis à part sur des petites grilles. On sait que les programmes qui tentent de jouer au Go avec ces algorithmes sont corrects sur une petite grille, généralement de 9x9. Cependant, les grilles légales sont de 19 lignes verticales sur 19 lignes horizontales, ce qui offre 361 possibilités. A titre de comparaison, au début d’une partie d’échecs il n’y a que 20 coups possibles. En termes de calcul, il y a 130 000 possibilités pour calculer un coup contre 400 au jeu d’échecs. On voit donc bien l’enjeu que représente le jeu de Go en informatique.

Sur quelle architecture AlphaGo repose-t-elle ?
Challenges & Motivation
Real and Complete Usecases

 

 

 

Technical Description

AlphaGo est basé sur l’architecture des réseaux de neurones profonds. C’est un sous-domaine de l’apprentissage profond. On va donc se focaliser sur ce type d’architecture. On peut diviser l’intelligence artificielle AlphaGo en trois composantes principales:

Le réseau stratégique (policy network) : Ce réseau a analysé énormément de parties de Go jouées par des champions. Il joue contre des niveaux élevés et il imite leur niveau.

Le réseau de valeurs (value network): Ce réseau évalue les positions sur le plateau et calcule la probabilité de victoire dans une situation. C’est important pour prendre des décisions tout au long de la partie.

L’arbre de recherche (tree search): Ici, il s’agit d’un algorithme qui va analyser les différentes variations de la partie pour déterminer ce qui va se produire. 

Il  prend en compte les résultats donnés par le réseau stratégique et le réseau de valeurs afin d’avoir les meilleurs résultats en termes de mouvements. Plus précisément, c’est un arbre de recherche Monte Carlo (MCTS).

L’arbre de recherche Monte Carlo est une méthode utilisée surtout dans les jeux afin de choisir des solutions optimales. Pour cela, la méthode comprend 4 étapes pour son bon fonctionnement : la sélection (de la racine jusqu’aux noeuds), l’extension (noeud final ou noeud avec enfants -> solutions possibles), la simulation (jeu aléatoire jusqu’à obtenir un noeud final) et la rétropropagation (mise à jour des résultats obtenus suite à la simulation).

 

L’architecture des réseaux de neurones profonds est une architecture à plusieurs couches connectées dont le concept est simple: les neurones évoluent entre chaque couche. Chaque neurone reçoit des données d’anciennes couches et les transforment dans le but de les envoyer à la prochaine couche. Ces données sont transformées par le biais d’une fonction d’activation. 

On peut distinguer deux types de réseaux de neurones:

  • L’architecture feedforward, où les données vont dans un sens
  • L’architecture récurrente, où les données peuvent aller dans plusieurs sens

L’architecture d’AlphaGo est de type feedforward.

Parmi les 3 composantes d’AlphaGo, il y a 2 réseaux neuronaux: le réseau stratégique et le réseau de valeurs. Plus ils s’entraînent, plus ces réseaux neuronaux sont précis. Ils se mettent à jour pour prévoir les mouvements. Les parties jouées par AlphaGo sont donc de meilleures qualités. Deux méthodes d’apprentissage sont mises en œuvre ici: l’apprentissage supervisé et l’apprentissage par renforcement. Le premier s’occupe d’imiter les mouvements repérés dans les parties. Le second est chargé de s’affronter lui-même, le principe du renforcement, dans le but d’améliorer le réseau neuronal. Nous sommes dans un cercle vertueux, AlphaGo s’entraîne, améliore ses performances et devient de plus en plus fort à mesure qu’il joue.

Hardware

Materials
ImageNamePart NumberPriceCountLink
🛒
Schematic

Software

External Services