Algorithme minimax

Pages: 14 (3322 mots) Publié le: 18 mars 2013
Algorithme MiniMax
1- Introduction:
Ce document fait une présentation synthétique d’un algorithme standard, le MinMax ou encore MiniMax, et de son amélioration principale l’élagage AlphaBeta, permettant la sélection d’un coup dans les jeux dits < jeux à deux joueurs à somme nulle et information complète >, famille dans laquelle se trouvent la plupart des jeux de réflexion (Othello,évidemment, mais aussi échecs, morpion, puissance 4, Go, etc) :
somme nulle : les gains d’un joueur sont exactement l’opposé des gains de l’autre joueur (ces
gains peuvent donc être négatifs) ;
information complète : lors de sa prise de décision (i.e. du choix d’un coup à jouer dans le cas qui nous intéresse), chaque joueur connaît précisément
– ses possibilités d’action ;
– les possibilitésd’action de son opposant (c’est-à-dire les répliques possibles de l’adversaire
dans le cas d’Othello) ;
– les gains résultants de ces actions.
MinMax est un algorithme, et plus généralement une stratégie, qui provient du domaine de la
< Théorie des jeux > et a été identifié par Von Neumann il y a plus de 60 ans. So amélioration
la plus connue est l’algorithme < MinMax avec élagage AlphaBeta> qui est encor aujourd’hui à la base, dans des versions quelque peu améliorées, des programmes de jeu les plus évolués (Logistello pour Othello, DeeperBlue, DeepFritz pour les échecs, etc.).
Ce document se décompose de la manière suivante. Dans la section 2 on présente une version
idéale de l’algorithme MinMax et on introduit la notion de recherche à profondeur donnée
et la nécessité d’avoirune fonction d’évaluation. La section 3 fournit le pseudo-code de Min-
Max et discute quelques-unes de ses limites. Le principe de l’élagage AlphaBeta, qui améliore
notablement l’algorithme MinMax, est décrit dans la section 4.
Les algorithmes présentés dans les différentes tables proviennent du site de la Fédération Francçaise d’Othello et sont visibles, dans leur contexte original, à l’urlsuivante :

http://www.ffothello.org/info/algos.php

2- MinMax et fonction d’évaluation:
2.1 Le MinMax idéal : recherche exhaustive:
Rappelons tout d’abord que l’objectif des méthodes de recherche présentées dans ce document est de choisir un coup à jouer dans un jeu de réflexion. Ces méthodes seront donc utilisées pour que l’ordinateur puisseeffectivement jouer à Othello.
Avant de considérer précisément le cas d’un ordinateur qui joue à Othello cependant, analysons un contexte de jeu humain contre humain (toujours pour le jeu Othello). Le principe de la recherche d’un coup par MinMax est un processus de réflexion très naturel que tout un chacun a déjà mis en oeuvre. Etant donné une position, on suppose que c’est au joueur noir dejouer.
Dans la position donnée, Noir a une série de coups qu’il peut effectuer : pour chacun d’eux, il
s’interroge sur les répliques éventuelles que peut faire Blanc, qui lui-même analyse pour chacune de ses répliques celles auxquelles peut procéder Noir, qui à son tour examine à nouveau l’ensemble des coups qu’il peut effectuer suite aux répliques de Blanc, etc. Ce processus de réflexion peutcontinuer ainsi et, dans le cas où les deux joueurs ont la capacité de mener cette réflexion jusqu’à ce qu’aucun des 2 joueurs ne puisse plus jouer alors il est facile pour Noir de décider du coup qu’il doit jouer. Il lui suffit en effet de choisir le coup qui, s’il existe, quelque soit la suite de répliques de Noir et Blanc imaginées mène à une victoire.
Ce processus de réflexion est généralementassocié à un arbre de jeu tel que celui présenté sur
la figure 1. Chaque noeud y correspond à une position de jeu et les branches correspondent aux différents coups que peut faire Noir ou Blanc à partir de cette position. Les feuilles sont les noeuds terminaux, desquels ne partent aucune branche, et correspondent dans la situation où une recherche exhaustive peut ê tre conduite jusqu’à la fin de...
Lire le document complet

Veuillez vous inscrire pour avoir accès au document.

Vous pouvez également trouver ces documents utiles

  • Algorithme
  • Algorithmes
  • Algorithme
  • Algorithme
  • Algorithme
  • Algorithme
  • Algorithme
  • Algorithme

Devenez membre d'Etudier

Inscrivez-vous
c'est gratuit !