62
L’Intelligence Artificielle et les Jeux

Ia et jeux

Embed Size (px)

Citation preview

Page 1: Ia et jeux

L’Intelligence Artificielle

et les Jeux

Page 2: Ia et jeux
Page 3: Ia et jeux
Page 4: Ia et jeux
Page 5: Ia et jeux

--------------------------------------------------------------------------------------------------------------------Sponsors :

Page 6: Ia et jeux

Structure de la présentation

1.Jeux de réflexion1.1. Introduction1.2. Moulin, Puissance 4, Dame, Échecs, Go1.3. Backgammon, Poker1.4. Rubik’s Cube, Sokoban

2. Jeux vidéos2.1. Les algorithmes de pathfinding 2.2. Command & Conquer

Page 7: Ia et jeux

1. Jeux de réflexion

Page 8: Ia et jeux

1.1. Introduction

Divergence entre les jeux : • Nombre de joueurs

• Jeux à information parfaite / incomplète

• Jeux avec / sans facteur chance

Page 9: Ia et jeux

1.1.1. Espace d’état

x x

Page 10: Ia et jeux

1.1.2. Arbre du jeu

Page 11: Ia et jeux

3601017210Go (19x19)

123104610Echecs

31102110Dame

21101410Puissance 4

50101010Moulin

Arbre du jeuEspace d'étatJeu

1.2. Jeux à deux joueursavec connaissance parfaite

Page 12: Ia et jeux

L’algorithme minimax

Page 13: Ia et jeux

L’algorithme alpha-beta

Page 14: Ia et jeux

1.2.1. Puissance 4

Résolu en 1989 (par deux personnes différentes)

Page 15: Ia et jeux

1.2.1. Puissance 4

Résolu en 1989 (par deux personnes différentes)

Deux approches :

• Alpha-beta avec élagage et tables de transposition

Page 16: Ia et jeux

1.2.1. Puissance 4

Deux approches :

• Alpha-beta avec élagage et tables de transposition

• Utilisation de connaissances humaines

Résolu en 1989 (par deux personnes différentes)

Page 17: Ia et jeux

1.2.1. Puissance 4

Deux approches :

• Alpha-beta avec élagage et tables de transposition

• Utilisation de connaissances humaines

Le programme VICTOR implémente la seconde approche etgagne systématiquement s’il commence.

Résolu en 1989 (par deux personnes différentes)

Page 18: Ia et jeux

1.2.2. Le jeu du moulin

Résolu en 1995

Page 19: Ia et jeux

1.2.2. Le jeu du moulin

Résolu en 1995

Deux étapes :

• DB de ± 8.000.000.000 de positions

• Exploration de profondeur 18

Page 20: Ia et jeux

1.2.2. Le jeu du moulin

Résolu en 1995

Deux étapes :

• DB de ± 8.000.000.000 de positions

• Exploration de profondeur 18

Résultat :

• Nulle théorique

Page 21: Ia et jeux

1.2.3. Le jeu de dame

Premier jeu où un programme bas le champion du monde (1994)

Résolu en 2007

Page 22: Ia et jeux

1.2.3. Le jeu de dame

Premier jeu où un programme bas le champion du monde (1994)

Résolu en 2007

Deux étapes :

• DB de toutes les positions de 10 pièces ou moins

• Exploration totale sur 200 machines

Page 23: Ia et jeux

1.2.3. Le jeu de dame

Premier jeu où un programme bas le champion du monde (1994)

Résolu en 2007

Deux étapes :

• DB de toutes les positions de 10 pièces ou moins

• Exploration totale sur 200 machines

Résultat :

• Nulle théorique

Page 24: Ia et jeux

1.2.4. Le jeu d’échecs

Victoire de Deep Blue contre Kasparoven 1997

Loin d’être résolu

Page 25: Ia et jeux

1.2.4. Le jeu d’échecs

Victoire de Deep Blue contre Kasparoven 1997

Loin d’être résolu

Implémentation :

• Machine parallèle à 30 nœuds de 120MHz• 480 circuits intégrés• Écrit en C• 200 millions positions/secondes

Page 26: Ia et jeux

1.2.4. Le jeu d’échecs

Victoire de Deep Blue contre Kasparoven 1997

Loin d’être résolu

Implémentation :

• Machine parallèle à 30 nœuds de 120MHz• 480 circuits intégrés• Écrit en C• 200 millions positions/secondes

Meilleur programme actuel :

• Rybka (3250 élo)

Page 27: Ia et jeux

1.2.5. Le Go

Amateur

Les pros battent les machines mêmeavec 9 jetons de handicap

Page 28: Ia et jeux

1.2.5. Le Go

Amateur

Les pros battent les machines mêmeavec 9 jetons de handicap

Techniques actuelles :

• Évaluation par Monte-Carlo Tree Search• Exploration par UCT (variante de alpha-beta)

Page 29: Ia et jeux

1.2.5. Le Go

Amateur

Les pros battent les machines mêmeavec 9 jetons de handicap

Techniques actuelles :

• Évaluation par Monte-Carlo Tree Search• Exploration par UCT (variante de alpha-beta)

Meilleur programme actuel :

• Mogo (1ère dan amateur)

Page 30: Ia et jeux

1.3. Jeux avec facteur chance et/ou à connaissance imparfaite

Page 31: Ia et jeux

Monte-Carlo Tree Search

Page 32: Ia et jeux

1.3.1. Backgammon

Dans les années 90, les softs de Backgammon ont largement dépassé le niveau humain

Page 33: Ia et jeux

1.3.1. Backgammon

Dans les années 90, les softs de Backgammon ont largement dépassé le niveau humain

Technique utilisée :

• Réseau de neurone

Page 34: Ia et jeux

1.3.1. Backgammon

Dans les années 90, les softs de Backgammon ont largement dépassé le niveau humain

Technique utilisée :

• Réseau de neurone

Meilleur programme actuel :

• GNU Backgammon (téléchargeable gratuitement)

Page 35: Ia et jeux

1.3.2. Poker

En 2008, Polaris bat des pros en FL HU

Les programmes de NL FR sont prévisibles

Page 36: Ia et jeux

1.3.2. Poker

En 2008, Polaris bat des pros en FL HU

Les programmes de NL FR sont prévisibles

Technique utilisée :

• FL HU : Combinaison de Monte-Carlo et importance sampling• NL FR : Il existe des tas de bots implémentant des stratégies systématiques. Des programmes s’adaptant aux adversaires sont également en développement.

Page 37: Ia et jeux

1.3.2. Poker

En 2008, Polaris bat des pros en FL HU

Les programmes de NL FR sont prévisibles

Technique utilisée :

• FL HU : Combinaison de Monte-Carlo et importance sampling• NL FR : Il existe des tas de bots implémentant des stratégies systématiques. Des programmes s’adaptant aux adversaires sont également en développement.

Meilleur programme actuel :

• Son auteur ne le publie probablement pas

Page 38: Ia et jeux

1.4. Les casse-tête

9810Sokoban

1910Rubik's Cube

Espace d'étatJeu

Page 39: Ia et jeux

Exploration d’un graphe

Page 40: Ia et jeux

Élimination des cycles

Page 41: Ia et jeux

L’algorithme A*

Page 42: Ia et jeux

L’algorithme A*

Page 43: Ia et jeux

1.4.1. Le Rubik’s Cube

Les meilleurs softs jouent de manière optimale

Page 44: Ia et jeux

1.4.1. Le Rubik’s Cube

Les meilleurs softs jouent de manière optimale

Techniques actuelles :

• A* avec une bonne heuristique• Utilisation d’une base de données de pattern connus

Page 45: Ia et jeux

1.4.1. Le Rubik’s Cube

Les meilleurs softs jouent de manière optimale

Techniques actuelles :

• A* avec une bonne heuristique• Utilisation d’une base de donnée de pattern connus

Meilleur programme actuel :

• De nombreux programmes existent sur le web

Page 46: Ia et jeux

1.4.2. Sokoban

Les bons joueurs humains sont toujours beaucoup plus forts que les meilleurs programmes

Page 47: Ia et jeux

1.4.2. Sokoban

Les bons joueurs humains sont toujours beaucoup plus forts que les meilleurs programmes

Ma méthode consiste en une décomposition hiérarchique :

• un agent détermine dans quel ordre les goals seront remplis• un autre essaye de découvrir quelle pierre doit aller sur quel goal• un troisième aide le deuxième en lui fournissant des méthodes capables de déterminer si une pierre x peut atteindre un goal y• un quatrième repère le position de deadlock

Page 48: Ia et jeux

1.4.2. Sokoban

Les bons joueurs humains sont toujours beaucoup plus forts que les meilleurs programmes

Ma méthode consiste en une décomposition hiérarchique :

• un agent détermine dans quel ordre les goals seront remplis• un autre essaye de découvrir quelle pierre doit aller sur quel goal• un troisième aide le deuxième en lui fournissant des méthodes capables de déterminer si une pierre x peut atteindre un goal y• un quatrième repère le position de deadlock

Meilleur programme documenté actuel :

• MovingStone écrit par Jean-Noël Demaret et moi-même

Page 49: Ia et jeux

2. Jeux vidéos

Page 50: Ia et jeux

2.1. Pathfinding

Page 51: Ia et jeux

Exemple de problème

Y A B X

Page 52: Ia et jeux

Exemple de problème

Y X

A B

Page 53: Ia et jeux

Exemple de problème

Y X

A B

Page 54: Ia et jeux

Exemple de problème

Y X

A B

Page 55: Ia et jeux

Exemple de problème

Y X

Boom

Page 56: Ia et jeux

2.2. Command & Conquer

Page 57: Ia et jeux

2.2.1. Prédécesseur

Dune (1990) et Dune II (1992)

Page 58: Ia et jeux

2.2.2. Conflit du Tibérium

1995

Page 59: Ia et jeux

2.2.3. Alerte Rouge

1996

Page 60: Ia et jeux

2.2.4. Generals

2003

Page 61: Ia et jeux

Récapitulatif

1. Jeux de réflexion

• Résolus• Plus fort que l’homme• Toujours faible

7. Jeux vidéos

• Le pathfinding est toujours un problème• L’IA a évolué moins vite que les interfaces

graphiques

Page 62: Ia et jeux

Conclusion

• La recherche en IA doit continuer

• Si vous êtes intéressés, prenez contact avec moi [email protected]

• Des stages au Giga en recherche en bioinformatique sont également possibles