1 CSI 4506: Introduction à lintelligence artificielle La recherche adversairiale.

Slides:



Advertisements
Présentations similaires
Structures de données avancées : B arbres
Advertisements

COMITE DEPARTEMENTAL CHARENTE (16) 2010 Les Bases 8 ans (1 ère partie)
S. Meshoul & M. Batouche Equipe Vision, Laboratoire LIRE
Modèle des jeux et des mécanismes
1 Modèles Economiques en Informatique Michel de Rougemont Université Paris II.
Classification et prédiction
Problème de 8 dames: Sachant que dans un jeu des échecs, une dame peut pendre toute pièce se trouvant sur la colonne ou sur la ligne ou sur les diagonales.
Cours d'algorithmique 11 / Intranet 1 9 janvier 2006 Cours dAlgorithmique N P - complétude.
GRENADE / TCA 1 Le 20 Mai Dernier match de la saison pour léquipe 1… Comme il pleut, les matches sont répartis sur deux sites, alors désolé pour.
Présenté par Thibaut Palmans La concentration La résolution de problèmes La capacité de mémorisation (+32 %) (+50 %) (+22 %) Etudes scientifiques portant.
MasterMind en spécialité i.s.n.
Génération de colonnes
Traitement Co-Séquentiel: Appariment et Fusion de Plusieurs Listes
CSI3525: Concepts des Langages de Programmation Notes # 11: Sous-Programmes ( Lire Chapitre 8 )
Au cours d’un dîner d’une œuvre de charité,
Plus courts chemins On présente dans ce chapitre un problème typique de cheminement dans les graphes : la recherche d'un plus court chemin entre deux sommets.
Systèmes d’équations du premier degré à deux variables
Les jeux (méthodes min-max et -)
Algorithmes Branch & Bound
Heuristiques A. Introduction B. Recherche d ’une branche
Jeu dOthello Projet dAlgorithmique et Programmation.
Optimisation linéaire
Biologie : jeu de cartes plastifiées « mitose-méiose » L
Groupe 1: Classes de même intervalle
Des situations familières concernant les instruments produisant du hasard Présentation.
Gestion de Fichiers Arbres B.
Les fichiers indexés (Les B-arbres)
Éric Beaudry Département d’informatique Université de Sherbrooke
IFT Complexité et NP-complétude
Gestion de Fichiers Tri Interne Efficace et Tri Externe.
CSI 4506: Introduction à l’intelligence artificielle
CSI 4506: Introduction à l’intelligence artificielle
CSI 4506: Introduction à l'intelligence artificielle La recherche aveugle.
CSI 4506: Introduction à l’intelligence artificielle
Algorithmes d ’approximation
Gestion de Fichiers GF-10: Traitement Co-Sequentiel: Appariment et Fusion de Plusieures Listes (Base sur les sections de Folk, Zoellick & Riccardi,
Les maths 8 3,3 Estimer des racines carrés. Notre but est dêtre capable destimer la racine carrée à un dixième de la réponse exacte. Notre but est dêtre.
Structures de données IFT-2000 Abder Alikacem La récursivité Semaine 5 Département dinformatique et de génie logiciel Édition Septembre 2009.
Structures de données IFT-2000 Abder Alikacem La récursivité Département d’informatique et de génie logiciel Édition Septembre 2009.
Graphes 1. Introduction 2. Définition 3. Représentation mémoire
Paradigmes des Langages de Programmation
INTRODUCTION.
Bridge Chinois Par Mathieu ROGER, Mamadou DIABY, Bilal TRAORE, Soufiane DIABI, Bilal CHAARI et Benjamin REBATET. 1.
Programmation linéaire en nombres entiers
Marquez cette valeur sur le diagramme à points de la question 6. La moyenne réelle des nombres de lettres par mots dans la population de l'ensemble des.
Algorithmes Branch & Bound
I.A. Session 2009/2010 E.P.S.I. Bordeaux – C.S.I.I – 2 ème Année – Cours n°6.
CSI 4506: Introduction à l’Intelligence Artificielle La Recherche Aveugle.
CSI 4506: Introduction à l’Intelligence Artificielle
CSI 4506: Introduction à l’Intelligence Artificielle
Exploration systématique de graphes
2008/ Plan du cours 1.Introduction –Contenu du cours 2.Logique mathématique –Calcul propositionnel –Calcul des prédicats –Logique floue et aide à.
Alignement de génomes. MUMmer (1999) Utilise l’arbre des suffixe. Basé sur le principe de « Maximum Unique Match » (MUM). Étant donné deux génomes A et.
TIPE Les dames chinoises
Fabienne BUSSAC FONCTIONS LINEAIRES – PROPORTIONNALITE
Structures de données avancées : B arbres
Structures de données avancées : Arbres B+ avec expansion partielle D. E ZEGOUR Institut National d ’Informatique.
Chapitre 4 Variables aléatoires discrètes
Le Jeu et l’intelligence artificielle
Points de victoires : faire la somme des points des unités ennemies détruites (page 86) y ajouter le nombre de points de vos unités opérationnelles et/ou.
4/25/2017 4:30 PM Arbres (2,4) CSI2510 CSI2510.
1 CSI 4506: Introduction à l’Intelligence Artificielle La Recherche Adversariale.
AIDE à la DECISION Critères IAE de Picardie - LP1.
Scénario Quatre hipsters entrent en collision un dans l'autre dans un ascenseur plein de personnes. En conséquence ils laissent tomber leurs téléphones.
C9-1 Modèles décisionnels en gestion Introduction Les modèles linéaires La résolution des modèles linéaires continus La programmation linéaire en nombres.
Algorithmes Branch & Bound Module IAD/RP/RO Master d ’informatique Paris 6 Philippe Chrétienne.
Les dossiers patients d’un hôpital contiennent les attributs suivants : – nom – code postal – pression systolique en mm de mercure. – s’il est porteur.
1 UE Intro. Optimisation L3 INFO UPSud II. Programmation linéaire en variables entières (ou mixtes)
USTL - Licence Informatique Les jeux à 2 joueurs 1 Conception Orientée Objet Les jeux à 2 joueurs Conception Orientée Objet Jean-Christophe Routier Licence.
Université Lille 1 - Licence Informatique Les jeux à 2 joueurs 1 Conception Orientée Objet Les jeux à 2 joueurs Conception Orientée Objet Jean-Christophe.
Transcription de la présentation:

1 CSI 4506: Introduction à lintelligence artificielle La recherche adversairiale

2 Plan du Cours Description Terminologie Stratégie naïve de jeux Désavantagés de la Stratégie Naïve Recherche minimax Désavantages de la recherche minimax Recherche

3 Recherche Adversairiale: Description (1) La recherche adversairiale correspond aux techniques de recherche pour les jeux a deux personnes tels que les échecs, les dames, Tic-Tac-Toe, etc… Dans ces jeux: – Les deux joueurs alternent leur tour – Les deux joueurs ont toutes les informations possibles sur la partie. (différent du Bridge, par exemple, ou les joueurs cachent leurs cartes) – Chaque joueur doit réfléchir de manière stratégique à la façon dont son adversaire répondra à son coup, dont lui répondra au coup de ladversaire, etc…

4 Recherche adversairiale: Description (2) La recherche adversairiale doit considérer différentes séquences de coups alternatifs potentiels des deux joueurs afin destimer les conséquences de leurs diverses options immédiates. Les joueurs peuvent alors décider, à partir de cette recherche dans lespace des séquences potentielles, quelle option à la plus grande chance de mener a une victoire.

5 Terminologie (1) Arbre de Jeu: arbre qui consiste en des noeuds qui représentent les options des joueurs dans un jeux à deux joueurs. Les noeuds de cet arbre alternent entre les options des deux joueurs. Tours/Couches: Les différents niveaux dans un arbre de jeux sappellent les tours ou les couches (ply/plies). Noeuds Finaux dans un Arbre de Jeu: Les noeuds terminaux indiquent la fin du jeux, cest a dire une configuration gagnante ou perdante (+1 ou –1) pour le joueur dont on a pris le point de vue. Sil y a match nul, la valeur est de 0.

6 Terminologie (2) Maximiser: Cest le joueur dont le but est datteindre un noeud final de valeur +1. Minimiser: Cest le joueur dont le but est datteindre un noeud final de valeur –1. Match nul: Un joueur doit préférer une victoire plutôt quun match nul, et un match nul plutôt quune défaite.

7 Exemples 1. Illustration des définitions 2. Arbre de Jeu pour Tic-Tac-Toe Ces illustration et exemples seront présentés en classe.

8 Stratégie de jeux Afin de choisir le coup suivant, un joueur doit évaluer les conséquences de chaque option dont celles correspondant à des noeuds internes de larbre de jeu – On assigne +1 à un noeud n, si n est sur une couche de maximiser et lun des enfants de n à la valeur 1 ou si n est sur une couche de minimisés et tous les enfants de n ont la valeur +1. – On assigne –1 a un noeud n, si n est sur une couche de minimiser et lun des enfants de n a la valeur –1 ou si n est sur une couche de maximiser et tous les enfants de n ont la valeur –1. (Voir Illustration et exemple en classe)

9 Problèmes associés à cette stratégie naïve Elle utilise un montant de mémoire exponentiel en terme de la profondeur de larbre!!!! Il vaut mieux utiliser lalgorithme de recherche Minimax qui réduit le montant de mémoire requis pour determiner la valeur dun noeud m particulier en performant une recherche Depth-First de larbre de jeu dont la racine est m.

10 Recherche Minimax (Voir larbre au tableau) N= a n=aN=a N= b,c,d,a n=bN=b,c,d,a N=e,b,c,d,a n=eN=e,b,c,d,a N=h,i,e,b,c,d,a n=hN=h,i,e,b,c,d,a N=h=-1,i,e,b,c,d,a n=hN=h,i,e,b,c,d,a N=i,e,b,c,d,a n=i N=i,e,b,c,d,a N=l,m,n,i,e,b,c,d,a n=l N=l,m,n,i,e,b,c,d,a N=l=-1,m,n,i,e,b,c,d,a n=lN=l,m,n,i,e,b,c,d,a N=m,n,i,e,b,c,d,a n=mN=m,n,i,e,b,c,d,a N=m=1,n,i,e,b,c,d,a n=mN=m,n,i,e,b,c,d,a N=n,i,e,b,c,d,a n=nN=n,i,e,b,c,d,a N=n=1,i,e,b,c,d,a etc...

11 Désavantage de la recherche Minimax La recherche Minimax nest pas très utile en pratique car larbre de jeu de la plupart des jeux intéressants est extrêmement grand!!! Plutôt que danalyser un jeu jusquau bout (jusqua une victoire ou un match nul), on peut vouloir chercher assez loin pour calculer une bonne estimation de la chance à une victoire à partir de différents noeuds internes.

12 La recherche dans un arbre de Jeu avec une fonction dévaluation: La recherche (1) 1. On définie une fonction dévaluation e() telle que e(n) [-1, 1] pour tous les noeuds n. e(n)= -1 victoire pour le minimiser avec 100% de certitude. e(n)=1 victoire pour le maximiser avec 100% de certitude. e(n)=0 pas davantage dun cote ou de lautre -1 < e(n) <0 victoire pour le minimiser avec différent degrés de certitude (< 100%) 0< e(n) < 1 victoire pour le maximiser avec différents degrés de certitudes (< 100%)

13 La recherche dans un arbre de jeu avec une fonction dévaluation: La recherche (2) Exemple aux échecs: e(n) = ( w(n) - b(n) ) / ( w(n) + b(n) ) avec – w(n) = somme des valeurs de toutes les pièces blanches de léchiquier – b(n) = somme des valeurs de toutes les pièces noires de léchiquier

14 La recherche dans un arbre de jeu avec une fonction dévaluation: La recherche (3) 2. Étant donné une fonction dévaluation e(), certains noeuds nont pas besoin dêtre étendus (Les deux cas seront donnés en classe)

15 La recherche La recherche Visitez larbre dans un ordre Depth-First Lorsque vous rencontrerez un nouveau noeud, n, – Si n est un noeud final, alors appliquer la fonction dévaluation e(n) – Si n nest pas un noeud terminal et na pas reçu de valeur, alors donnez lui la valeur de - si cest un noeud de couche maximiser ou de + si cest un noeud de couche minimiser. Lorsque vous donnez une valeur à un noeud en utilisant la fonction dévaluation, vous devez distribuer (back-up) cette valeur a ses ancêtres Lorsque vous visitez un noeud n, vous pouvez décider de le tailler (prune) sil ny a pas de raison de létendre.

16 Règles de distribution et de taillage (1) Règle de distribution (Back-up): Soit v la valeur courante de n Soit m, le parent de n et u la valeur courante de m. Si m est un noeud de couche maximiser, alors la valeur de m doit devenir max(u,v). Si m est un noeud de couche minimiser, alors la valeur de m doit devenir min(u,v). Si m est la racine ou si la valeur de m ne change pas, alors, il faut sarrêter. Sinon, on distribue la valeur de m a son parent (appel récursif).

17 Règles de distribution et de taillage (2) Règle de Taillage: Si n est un noeud de couche maximiser, alors, soit v, le min des valeurs des frères de n et soit u, le max des valeurs des frères des ancêtres de n qui sont des noeuds de couche minimiser (!) Si v >= u, alors vous pouvez retirer n et ses frères ainsi que nimporte lesquels des successeurs de n et de ses frères de la queue. Si m est un noeud de couche minimiser, alors vous pouvez faire la même chose en remplacent max par min, min par max et =.

18 Exemples (Deux exemples seront présentés en classe)