cours ia chapitre2

64
Pr. Imade BENELALLAM IA Pr. : Imade BENELALLAM e-mail : [email protected] Année : 2011/2012 Intelligence Artificielle Chapitre 2 : Résolution des Problèmes et Jeux INSEA, Département Informatique, Bureau Numéro 3

Upload: zeindine-ahmednah

Post on 02-Dec-2015

86 views

Category:

Documents


3 download

TRANSCRIPT

Pr. Imade BENELALLAM IA

Pr. : Imade BENELALLAM

e-mail : [email protected]

Année : 2011/2012

Intelligence Artificielle

Chapitre 2 : Résolution des Problèmes et Jeux

INSEA, Département Informatique, Bureau Numéro 3

Pr. Imade BENELALLAM IA

• Comment résoudre un problème ? – Recherche des solutions.

– Recenser les états d’un système donné et trouver parmi ces

états une ou plusieurs solutions.

• Comment ? – Le passage d’un état à un autre se fait par l’application d’une

action donnée.

– Développement d’un arbre de recherche + une stratégie de

recherche.

Objectifs

Pr. Imade BENELALLAM IA

• L’Humain résout un problème, la machine exécute la

solution

• Machine/Système algorithmique (non intelligent)

• Système d ’exécution de la solution,

• Machine déterministe à états finis,

• A tout moment durant l ’exécution, la prochaine instruction à

exécuter est bien déterminée

Machine déterministe

Pr. Imade BENELALLAM IA

• L’Humain définit le problème, la machine le résoud.

• Système de résolution (automatique) de Problèmes

• La Machine/Système est appelé à trouver lui-même la

solution à un problème donné: Système de résolution

(automatique) de problèmes,

• Espace de recherche (espace d ’états, de buts..)

• Stratégies de recherche; exploration de l’espace

• Prise de décision, devant différents choix

Machine Non

déterministe

Pr. Imade BENELALLAM IA

• Tout est Problème

– Résoudre des problèmes explicites (en Mathématique, en Physique, en

Mécanique, en Informatique, en Ingénierie, … dans la Vie Quotidienne, etc.)

– Démontrer la véracité d’une proposition/argument constitue un problème =>

Raisonnement

– Atteindre un Objectif/But constitue un Problème => Planification

– Prendre une décision; effectuer un choix, constitue un problème

=> Prise de Décision

– Comprendre/Interpréter une situation, un texte, un discours … constitue un

problème

=> Compréhension/Interprétation

– Communiquer constitue un problème => Communication

– Gagner dans un Jeu (situation de compétition) constitue un problème => Jeux

– Etc.

Système de Résolution

de Problème

Pr. Imade BENELALLAM IA

• =/= types de problèmes => =/= types de

systèmes de résolution de problèmes:

– Système de Résolution de Problèmes (changement

d’états)

– Système de Raisonnement

– Système de Planification

– Système de Prise de Décision

– Système de Compréhension et d’Interprétation

– Système de Communication

– Etc

Système de Résolution

de Problème

Pr. Imade BENELALLAM IA

• En étudiant les différents systèmes « cognitifs » (Raisonnement,

Planification, Compréhension, etc.), on découvre encore et encore

les mêmes concepts caractérisant le Système de Résolution de

Problèmes:

– Espace de Recherche

– Ensemble de règles de transformation/production

– Stratégie de Recherche

– Connaissance supplémentaire (Heuristique)

– Etc.

Système de Résolution

de Problème

Pr. Imade BENELALLAM IA

• Un espace de recherche

– Nature: espace d’états, de problèmes, de plans..

– Représentation: LP, Réseaux Sémantiques, …

• Un ensemble de règles de production: tq;

– Une règle est une unité du comportement; elle permet de transformer l’état de

l’espace faisant ainsi avancer la recherche.

– ex: ``la configuration de l’échiquier correspond à la situation A`` ``déplacer la

tour à la case X``

• Un mécanisme de contrôle qui choisit la règle à déclencher parmi les règles

applicables.

– Une règle est applicable si sa tête s’unifie avec l ’état courant de l ’espace.

– Plusieurs règles peuvent être applicables à un moment donné.

– Le mécanisme de contrôle/choix correspond à la stratégie de recherche

adoptée pour explorer l ’espace.

• Etats initiaux.

• Etats finaux. Si état courant = état final Fin recherche

Composantes d ’un

SRP

Pr. Imade BENELALLAM IA

Espace des états possibles Le Tic-tac-toe est un jeu de réflexion se

pratiquant à deux joueurs au tour par tour et

dont le but est de créer le premier un

alignement.

Pr. Imade BENELALLAM IA

Modélisation

Remarque : Un état est généralement décrit par un ensemble de variables d’états. Les

valeurs attribuées à ces variables permettront alors de définir de manière univoque un état

donné. Ces variables d’écrivent généralement les attributs des différents objets (ou

situations, faits, …) de l’environnement du problème.

Pr. Imade BENELALLAM IA

Résolution

Pour atteindre l’état but, le processus de résolution doit disposer d’opérateurs

de transformation d’état (dits aussi de transition) qui permettent de passer

progressivement de l’état initial à l’état but. On peut voir ces opérateurs comme

des moyens de réduction de la différence entre l’état initial et l’état but.

Pr. Imade BENELALLAM IA

Ainsi, dans ce cas la résolution d’un problème va consister en trois étapes :

1. La représentation formelle des états du problème (l’ensemble des

variables d’états) : cette étape peut faire appel à l’un des formalismes de

représentation de connaissances ou directement à des structures de

données comme les listes et les tableaux;

2. La représentation formelle des opérateurs de transformation : les

formalismes logiques peuvent remplir ce rôle ou comme nous allons le voir,

l’utilisation des règles de production peut être un choix judicieux ;

3. Le choix de l’algorithme de recherche qui va choisir quels opérateurs il

va appliquer et sur quels états du problème en vue de trouver l’état but le

plus vite possible. Cet algorithme doit donc disposer de procédures de test

des états pour déterminer s’il a oui ou non atteint son but.

Etapes de Résolution

Pr. Imade BENELALLAM IA

• Le problème du Fermier, du Loup, de la Chèvre, du chou et de la

traversée de la rivière:

« Un fermier avec son loup, sa chèvre et son chou veulent traverser la

rivière. Il y a un canot à bord, mais seul le fermier peut ramer, et il

ne peut contenir que deux entités à la fois (y compris le rameur). Si

le loup reste seul avec la chèvre, il va la manger, si la chèvre reste

seule avec le chou, elle va manger le chou.

Que devrait être la séquence des traversées pour que les quatre soient

sur l’autre bord ».

Exemple 1

Pr. Imade BENELALLAM IA

State(Farmer, Wolf, Goat, Cabbage)chacun est soit à la position w(est) ou e(ast)

Exemple de séquence sans tenir compte des contraintes:

Pr. Imade BENELALLAM IA

Portion du graphe de

l’espace d’état

Pr. Imade BENELALLAM IA

• Le micro-monde des blocs

Un robot : R

Trois boites : B1, B2, B3

Quatre places : a, b, c, d

– Etats : l’ensemble de toutes les formules (prédicats) spécifiant la

position de chaque objet at(B1, x) ∧ at(B2, y) ∧ at(B3, z) ∧ at(R,

t) tq x, y, z, t ϵ (a, b, c, d).

– Etat initial :

• Ei (So) : at(B1, b) ∧ at(B2, c) ∧ at(B3, d) ∧ at(R, a)

– Etat final (i.e. état désiré, le But) :

• Eb (Sg) : at(B1, x) ∧ at(B2, x) ∧ at(B3, x)

Exemple 2: Micro-

monde des blocs

Pr. Imade BENELALLAM IA

– Fonction de transition : Deux actions : PUSH et GOTO

• PUSH(obj, x, y)

• Pré-conditions (ce qui doit être vrai avant l’exécution de l’action) : at(obj, x)

∧ at(R, x)

• addList (ce qui sera vrai après l’exécution de l’action) : at(R, y); at(obj, y)

• deleteList (ce qui n’est plus vrai après l’exécution de l’action) : at(R, x);

at(obj, x)

Solution : • Trouver un plan, i.e. une suite d’actions

• Sur un état courant, plusieurs actions sont possible

• Un plan est un chemin parmi plusieurs chemins possible (y compris les chemins qui ne mènent pas à l’état final)

Exemple 2: Micro-

monde Robot

Pr. Imade BENELALLAM IA

Exemple 2: espace

d’état

Pr. Imade BENELALLAM IA

• Dans la session précédente nous avons vu qu’un grand nombre de

problèmes peuvent être représentés de manière formelle sous

forme d’espace d’états et que pour ces problèmes les algorithmes

de recherche constituent une technique générale de résolution.

• En effet, ces algorithmes permettent de guider la recherche d’une

solution en faisant des choix concernant les états à développer et en

gérant le retour sur ces choix tout en évitant l’explosion

combinatoire.

Stratégies de

recherche

Pr. Imade BENELALLAM IA

• Nous allons nous intéressé à la recherche systématique (méthodique, organisée)

Exemple:

• Combien y a-t-il de triangles de toute grandeur dans cette figure ?

• Démarche. Quatre règles seront appliquées pour rendre la recherche systématique.

1. On trouve les triangles commençant par A, puis par B, etc.

2. On ne considère pas les lettres antérieures à la première. Quand on arrive à C, par

exemple, on considère ni A ni B.

3. On identifie un triangle en plaçant les lettres par ordre alphabétique.

4. La liste des triangles est faite par ordre alphabétique.

Recherche

systématique

Pr. Imade BENELALLAM IA

• Les stratégies de recherche permettent de dire à l’algorithme quel état il doit

développer en premier

• Le but de la stratégie est donc d’organiser l’exploration de l’espace d’états d’un

problème.

Soit Struct la structure de données représentant les noeuds en attente de

développement de l’arbre de recherche à chaque étape.

Fonction Recherche ( problème, stratégie)

1. Initialiser Struct au nœud correspondant à l’état initial du problème (la racine de l’arbre)

2. Tant que il existe des nœuds dans Struct faire

3. Choisir l’un des nœuds pour développement en respectant la stratégie

4. Si le nœud choisit correspond à un état but alors sortir et retourner la solution correspondante

5. Sinon développer le nœud choisit en ajoutant ses successeurs à Struct.

6. Fin Tant que

7. Retourner Echec

Stratégies de

recherche

Pr. Imade BENELALLAM IA

Les critères de choix d’une stratégie de recherche sont essentiellement :

• La complétude : Lorsque la méthode garantit de trouver une solution si elle existe ;

• La terminaison (décidabilité) : Même si la solution n’existe pas, il s’arrête en signalant

un échec à condition que l’espace d’états soit fini.

• La complexité en temps : ce critère correspond à l’efficacité algorithmique qui dépend

du nombre d’états développés ;

• La complexité en espace : ce critère se réfère à la quantité mémoire utilisée ;

• L’optimalité (admissibilité): ce critère concerne l’optimalité de la solution trouvée par

rapport à celles qui existent- en se basant sur une fonction de coût.

Stratégies de

recherche

Pr. Imade BENELALLAM IA

La complexité (en temps ou en espace) est mesurée selon :

• b : le facteur de branchement maximal de l’arbre de recherche et qui

correspond au nombre maximal de successeurs pour un état.

• d : la profondeur à laquelle se trouve le (meilleur) nœud solution.

• m : la profondeur maximale de l’arbre de recherche correspondant à

l’espace d’états et qui peut être infinie.

Stratégies de

recherche

Pr. Imade BENELALLAM IA

Trouver un chemin, lors de l’exploration de l’espace, qui mène

de l’état initial à l’état final:

• Recherche systématique non-informée (aveugle):

– En-Profondeur et En-Largeur (couteux)

• Recherche avec Information sur le nœud

– Hill-Climbing, Beam et Best-First

• Recherche Informée sur le nœud et l’arc :

– A*

• Recherches dans les jeux :

– MINIMAX et ALPAH-BETA

Stratégies de

recherche

Pr. Imade BENELALLAM IA

Recherche en

profondeur d’abord

Pr. Imade BENELALLAM IA

E1

E2 E8 E9

E3 E7

E4 E5 E6

Note:

Le mémoire est

gérée comme

une pile

Recherche en

profondeur d’abord

Pr. Imade BENELALLAM IA

Recherche en

profondeur d’abord

Empiler le nœud correspondant à l’état initial (racine de l’arbre) dans P

Tant que P est non vide faire

Dépiler le sommet N de P

Si N correspond à un état but alors Sortir de l’algorithme avec cette solution

Sinon

Générer la liste L des successeurs de N

Pour chaque élément S de L (de droite à gauche !) faire Empiler S (Rq : le plus à gauche sera en sommet)

Fin de Tant que

Retourner Echec

Pr. Imade BENELALLAM IA

Description :

• Il faut placer k reines dans un échiquier de dimension kxk sans

qu'aucune d'entres elles ne soit en prise par une autre. On dit que

deux reines sont en prise, si elles se trouvent sur une même ligne,

une même colonne ou une même diagonale.

• Exercice:

1. Proposer une modélisation pour le problème 4-reines.

2. Donner une solution de ce problème avec la stratégie en profondeur

d’abord

Problème de k-reines

Pr. Imade BENELALLAM IA

Problème de k-reines

la solution

Pr. Imade BENELALLAM IA

Les propriétés de la recherche en profondeur sont comme suit :

• La complétude : Incomplet si l’espace d’états est infini ou si on peut

tomber sur des nœuds correspondant au même état dans l’arbre de

recherche ce qui entraîne des boucles. Pour remédier à ce problème, il faut

ajouter des tests pour éviter qu’un nœud correspondant à un état déjà traité

par un autre nœud ne soit développé et ce, on sauvegardant dans une liste,

par exemple, les nœuds déjà traités. Sinon il est complet et même si la

solution n’existe pas il s’arrête en signalant un échec;

• La complexité en temps : Le nombre de nœuds développés est de l’ordre

de bm (1+b+b2+..+bm=O(bm)) avec b le facteur de branchement et m la

profondeur maximale de l’arbre.

• La complexité en espace : elle est linéaire de l’ordre de b*m (O(b*m)).

• L’optimalité� : Non. Il ne garantit pas de trouver le plus court chemin qui

mène à la solution (en termes de profondeur du nœud solution).

Propriétés

Pr. Imade BENELALLAM IA

Recherche en Largeur

d’abord

Pr. Imade BENELALLAM IA

E1

E2 E3 E4

E5 E6

E7 E8 E9

Note:

Le mémoire est

gérée comme

une file

Recherche en Largeur

d’abord

Pr. Imade BENELALLAM IA

Recherche en Largeur

d’abord

Insérer le nœud correspondant à l’état initial (racine de l’arbre) dans F

Tant que F est non vide faire

Extraire la tête (le nœud le plus ancien) N de F

Si N correspond à un état but alors Sortir de l’algorithme avec cette solution

Sinon Générer la liste L des successeurs de N

Pour chaque élément S de L (de gauche à droite !) faire Insérer S dans F(en fin de la file)

Fin de Tant que

Retourner Echec

Pr. Imade BENELALLAM IA

Problème de 4-reines

Pr. Imade BENELALLAM IA

A la différence de la stratégie de profondeur, la recherche en largeur

possède les propriétés suivantes :

• La complétude/ terminaison : Oui (Si le facteur de branchement b

est fini).

• La complexité en temps : Le nombre de nœuds développés est de

l’ordre de bd (O(bd)) avec b le facteur de branchement et d la

profondeur de la meilleure solution.

• La complexité en espace :à elle est exponentielle de l’ordre de bd.

(car il faut stocker dans la file tous les nœuds développés)

• L’optimalité : Oui (Si la génération de successeurs est sans coût ou

à coût uniforme) .

Propriétés

Pr. Imade BENELALLAM IA

Hill-Climbing & Beam search • Critère pour sélectionner le prochain fils à générer pour

un nœud n : h(n); fonction heuristique – Information incertaine mais plausible Heuristique

– h(n) fournit le coût pour atteindre l’état final.

– h(n) incorpore et représente une source d’information externe à

l’espace de recherche.

– Ex: h(n) = la distance qui sépare la ville n de la ville de

destination.

• En-Profondeur + h(n) = Hill-Climbing search

• En-Largeur + h(n) = Beam search

Recherche avec

information sur le nœud

Pr. Imade BENELALLAM IA

Hill-Climbing vs

Parcours en Largeur

Pr. Imade BENELALLAM IA

• Avec Hill-Climbing et Beam, la sélection ne se fait que

sur les fils du nœud courant.

– La sélection est locale

• Best-First considère à tout moment tous les nœuds à

explorer et choisit le nœud au meilleur coût.

– La sélection est globale

– La mémoire est gérée comme une liste

La stratégie de recherche

Best-First

Pr. Imade BENELALLAM IA

Insérer le nœud correspondant à l’état initial (racine de l’arbre) dans F

Tant que F est non vide faire

Extraire la tête N de F(h(N) est la plus petite (ou plus grande)

parmi celle des autres nœuds de F)

Si N correspond à un état but alors

Sortir de l’algorithme avec cette solution

Sinon Générer la liste L des successeurs de N

Pour chaque élément S de L faire

Insérer S dans F(en fin ou en tête de la file)

Trier les éléments n de F selon un ordre croissant

(parfois décroissant) de h(n)

Fin de Tant que

Retourner Echec

La stratégie de recherche

Best-First

Pr. Imade BENELALLAM IA

Heuristique jeux de taquin :

• Une heuristique h1 qui pour chaque nœud elle associe

le nombre de pièces mal placées dans l’état

correspondant ;

• Une heuristique h2 qui calcule pour chaque nœud la

somme des déplacements minimaux pour amener une

pièce à sa place.

La stratégie de recherche

Best-First

Pr. Imade BENELALLAM IA

Jeu de taquin: Best-First

Pr. Imade BENELALLAM IA

Les propriétés de la recherche informée meilleur en premier sont les

suivantes :

• La complétude/ terminaison : Oui, si l’espace de recherche est

fini et si on procède à une vérification d’absence de boucle

• La complexité en temps : Le nombre de nœuds développés est de

l’ordre de O(bm).

• La complexité en espace : elle est de l’ordre de O(bm). Car on

garde dans la file tous les nœuds des niveaux précédents.

• L’optimalité : En général, Non, car on ne considère pas la distance

déjà parcourue pour arriver à un nœud, mais seulement ce qui reste

à parcourir pour atteindre le but.

Jeux de taquin: Best-

First

Pr. Imade BENELALLAM IA

• L’algorithme de recherche A* peut être considéré comme une

amélioration de l’algorithme de recherche meilleur en premier se basant

non seulement sur une fonction heuristique h mais aussi sur une

fonction g d’estimation du coût minimal depuis le nœud correspondant à

l’état initial jusqu’un nœud n.

• Recherche doublement informée

• Un poids est associé à chaque nœud.

• Un poids est associé à chaque arc (action).

• Chercher le meilleur chemin, qui mène de l’état initial à l’état final, en

fonction du coût associé à chaque chemin.

• Le graphe (qui représente l’espace) est construit progressivement

• On part de l’état initial et on développe progressivement les chemins

vers l’état final.

• La mémoire est une liste de chemins pondérés.

La stratégie de recherche

A*

Pr. Imade BENELALLAM IA

A

B

C

D

E

F

G

3

2

5

8

2

7

4 1

6

CheminOptimal(n,m) = min [cheminOptimal(n,mi) + p(mi,m)];

mi : prédécesseur de m, p(mi,m) : poids de l ’arc mi m.

Chemin optimal A*

Pr. Imade BENELALLAM IA

• Sur quel critère s’effectue le choix du prochain

chemin à développer ?

– Selon la fonction f : à chaque chemin est

associé son coût et le coût du dernier nœud n

atteint : f(n) = g(n) + h(n);

• g(n) donne le coût du chemin optimal, du nœud

initial au nœud n;

• h(n) estime le coût du chemin restant, de n au

nœud final.

Les étapes de base A*

Pr. Imade BENELALLAM IA

• Comment développer le chemin (s .. n) ?

– Générer les successeurs de n, déterminer leur

poids et calculer g, h et f pour chaque succ.

s

n g(n)

h(n) (n .. s)

a p1

h(a)

(a n .. s)

g(a) = g(n) + p1

f(a) = g(a) + h(a)

b p2 h(b)

(b n .. s) g(b) = g(n) + p2

f(b) = g(b) + h(b)

• Eliminer le chemin (s .. n).

• Ajouter tout chemin succ. optimal : (X n .. s) est optimal s’il est le seul chemin

ou si, par rapport à d ’autres (X..s), son g(X) est le plus petit. On conserve

ainsi le chemin optimal (X .. n)

Les étapes de base A*

Pr. Imade BENELALLAM IA

Les étapes de base A*

Pr. Imade BENELALLAM IA

• Exercice 1: Dans quels cas la recherche par l’algorithme �Hill Climbing�

serait-elle meilleure que la recherche �meilleure en premier�? Justifiez

votre réponse.

• Exercice 2 : Dans l’espace de recherche ci-dessous, le nombre placé à côté

de chaque arc représente le coût qui lui est associé et h la valeur donnée

par l’heuristique au nœud comme estimation de sa proximité du but.

• a-Donner f(n) pour chacun des nœuds

• b-Donner l’ordre dans lequel les nœuds seront visités par l’algorithme A*.

Pr. Imade BENELALLAM IA

• L’étude des jeux est l’un des domaines favoris et fascinants de l’IA, il

concerne l’étude rigoureuse des situations dans lesquelles plusieurs

joueurs (acteurs) sont amenés à effectuer des choix qui détermineront, du

moins en partie, la situation future.

• Dans plusieurs problèmes de jeu, les techniques de recherche vues dans la

session précédente, peuvent être exploitées par les joueurs (notamment les

machines) pour optimiser leurs coups et gagner la partie (atteindre l’état-

but).

• Toutefois, dans certains jeux (les plus intéressants) d’autres techniques

sont souvent nécessaires pour guider et restreindre les choix afin

d’échapper au piège de l’explosion combinatoire et aussi pour prendre en

compte la rivalité entre les joueurs pour les jeux avec plus d’un joueur.

Algorithmes de jeux

Pr. Imade BENELALLAM IA

• Les jeux peuvent être classés suivant différents critères :

– l’information disponible aux joueurs au moment de la prise de

décision ;

– Le nombre de joueurs ;

– le caractère isolé ou répété du jeu ;

– la possibilité ou non de coopération entre les joueurs, etc.

• Le premier critère est celui utilisé dans la classification des jeux

Classification des jeux

Pr. Imade BENELALLAM IA

• Il s’agit des jeux dans lesquels chaque joueur connait en

permanence l’état global du jeu, en termes des choix que peut

effectuer chacun des joueurs, des conséquences de ceux-ci

(prochain état du jeu, gains des différents joueurs) et des

motivations de chaque joueur (en général, chaque joueur vise à

maximiser son gain et minimiser celui de son (ses) adversaires ).

• Dans cette catégorie, on trouve des jeux comme les échecs, les

dames

Jeux à information

complète et déterministe

Pr. Imade BENELALLAM IA

• Il s’agit des jeux où les joueurs peuvent manquer de

certaines informations au moment de leur prise de

décision concernant le prochain coup à jouer.

L’information manquante est souvent due à l’introduction

du facteur du hasard dans les règles du jeu. C’est le cas

des jeux de et des jeux de cartes comme le bridge, le

poker, le black-jack, etc.

Jeux à information

incomplète

Pr. Imade BENELALLAM IA

• Entre les deux catégories ci-dessus, se trouve une

troisième catégorie : les jeux à information complète

mais non déterministe. Ce sont des jeux où les joueurs

ne connaissent pas le comportement immédiat des

autres joueurs même s’ils connaissent l’ensemble des

choix possibles (concernant les coups à jouer) et leurs

conséquences. C’est le cas des jeux dans lesquels les

coups des joueurs sont simultanés comme les jeux à

Pierre/Ciseaux/Papier,

Jeux à information

complète et non-

déterministe

Pr. Imade BENELALLAM IA

Les composants de base d'un algorithme de jeu sont généralement

comme suit :

• Un générateur de coups qui génère les coups valides, voire

plausibles, à partir de l'état courant ;

• Un test de terminaison qui vérifie si l'état courant est un gain, une

perte ou un nul ;

• Une fonction d'évaluation statique (dite aussi fonction de gain ou

d'utilité) qui évalue la pertinence d'un état donné indépendamment

des coups passés ou futurs ;

• Une stratégie de recherche heuristique qui permet de choisir entre

différents coups celui qui semble le plus prometteur.

Stratégies de recherche

Pour les Jeux

Pr. Imade BENELALLAM IA

• Dans le cadre du jeu, un nœud de l’espace de

recherche représente une configuration, suite à

un coup de l’un des joueurs.

– On attribut un score à un nœud.

– Au lieu de minimiser le coût, on maximise le score.

• Le développement de l’espace résulte d’une

alternance entre deux joueurs antagonistes.

• Alternance de niveaux MAX/Agent-A et

MIN/Agent-B … ?

Stratégies de recherche

Pour les Jeux

Pr. Imade BENELALLAM IA

• Niveau MAX : L’agent A choisira le successeur avec le plus grand score.

• Niveau MIN : Partant d ’une configuration générée suite à une action de Agent-A, Agent-B devrait choisir le successeur avec le plus petit score; minimise le score de son adversaire.

E1

E2 E5 E6

E3 E4

MAX

MIN

MAX

La stratégie de jeu

MINIMAX

Pr. Imade BENELALLAM IA

• Pour effectuer son choix, l’agent-A/MAX ne se limite pas

aux successeurs immédiats, il doit envisager plusieurs

coups à l’avance (si je fais .. mon adversaire fera et moi

…) et en fonction de cela, il décidera du successeur à

prendre.

• Le choix du successeur direct dépendra des séquences

que ce dernier pourrait engendrer.

• La longueur de la séquence; le degré de profondeur de

l’analyse est fixé au départ.

• Idem. pour l’agent-B/MIN.

• Score d’un nœud : calculer ou déterminé directement.

La stratégie de jeu

MINIMAX

Pr. Imade BENELALLAM IA

• score(a) = max(score(b), score(c), score(d));

• score(b) = min(score(e), score(f));

• MAX sait que MIN va prendre le nœud avec le plus

petit score et c’est ce score qui sera associé au père.

A

B C D

E F

MAX

MIN

MAX

G H J I K L M MIN

3 8 5 1 9

10 2

8 10

8

exploration en

Profondeur MINIMAX

Pr. Imade BENELALLAM IA

Pr. Imade BENELALLAM IA

• Supposons que deux joueurs A et B ont procédé à ce jeu, en

choisissant que A va jouer en premier et avec les symboles de type

croix (X) et que B va jouer avec ceux de type cercle (0).

• Au début de la partie, le joueur A (MAX ) a le choix entre 9 cases

vide pour placer son premier X. Ensuite, le joueur B (B) devrait

choisir entre 8 cases vides pour placer son premier O et ainsi de

suite.

• Supposons qu’on est arrivé à l’état suivant et que c’est au tour de A

de jouer :

Exemple : jeu du Tic-

Tac-Toe

Pr. Imade BENELALLAM IA

• valeurs des nœuds terminaux ?

Exemple : jeu du Tic-

Tac-Toe

Pr. Imade BENELALLAM IA

• Avec MINIMAX, exploration exhaustive de l’espace, ..

selon le niveau de profondeur requis.

a

b c d

e g

f

h j

i

k n

l m

7

9

5 4

10

2 7

3 9

1

5 2 1

A-t-on besoin d’une recherche exhaustive ?

ALPHA-BETA

Pr. Imade BENELALLAM IA

• Avec ALPHA-BETA: recherche sélective

• MAX espère que (b) > (a) … mais MIN va essayer de minimiser le (b)

• Dès que (b) < (a) arrêter la recherche du succ pour b

h e

7 f 9

g 5

4

= +

a MAX

b MIN d

k

7

7

l

3

3 c

= -

4

, 7 , 5

, 5

ALPHA-BETA

Pr. Imade BENELALLAM IA