Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

65
Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland

Transcript of Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

Page 1: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

Intelligence artificielle dans les jeux RTS

IFT615 – Été 2011

Simon Chamberland

Page 2: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

Plan Jeux RTS? IA dans les jeux RTS

DéfisCompétition AIIDE 2010Agent artificiel SPAR

TechniquesPlanificationThéorie des jeux

Page 3: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

Plan Jeux RTS? IA dans les jeux RTS

DéfisCompétition AIIDE 2010Agent artificiel SPAR

TechniquesPlanificationThéorie des jeux

Page 4: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

4

Real-Time Strategy But typique: anéantir l’adversaire! Joueurs jouent simultanément

Acquérir des ressources Construire une base Recruter des unités

Jeux RTS?

Page 5: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

5

StarCraft 1998 - Blizzard Entertainment

Jeux RTS?

3 Races Terran Protoss Zerg

Page 6: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

6

StarCraft

Jeux RTS?

Page 7: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

Plan Jeux RTS? IA dans les jeux RTS

DéfisCompétition AIIDE 2010Agent artificiel SPAR

TechniquesPlanificationThéorie des jeux

Page 8: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

8

Moins d’efforts que sur l’aspect graphique

Performance laissant habituellement à désirer

Sauf si l’IA « triche » Informations complètes

sur la carte Rythme plus élevé

d’acquisition de ressources

IA dans les jeux RTS

Page 9: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

Plan Jeux RTS? IA dans les jeux RTS

DéfisCompétition AIIDE 2010Agent artificiel SPAR

TechniquesPlanificationThéorie des jeux

Page 10: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

10

Temps réel Prendre une décision

rapidement!

Multitude d’unités Beaucoup d’actions

possibles…

Défis

Page 11: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

11

Concurrence 5 actions sans concurrence 25 actions avec concurrence

Environnement dynamique Que fera l’adversaire?

Information incomplète Brouillard de guerre

Défis

Page 12: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

Plan Jeux RTS? IA dans les jeux RTS

DéfisCompétition AIIDE 2010Agent artificiel SPAR

TechniquesPlanificationThéorie des jeux

Page 13: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

13

StarCraft En marge d’une conférence sur les jeux

(AIIDE)

Compétition AIIDE 2010

Page 14: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

14

Première compétition l’année dernière 28 participants Revient cette année!

Compétition AIIDE 2010

Page 15: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

15

Différents tournois1. Contrôle d’unités

(micromanagement)

2. Contrôle d’unités+ terrain non trivial

3. Partie avec tech. limitée

4. Partie complète

Compétition AIIDE 2010

Muta/scourges vs muta/scourges

Page 16: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

16

Différents tournois1. Contrôle d’unités

(micromanagement)

2. Contrôle d’unités+ terrain non trivial

3. Partie avec tech. limitée

4. Partie complète

Compétition AIIDE 2010

10 dragoons vs 10 dragoons

Page 17: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

17

Différents tournois1. Contrôle d’unités

(micromanagement)

2. Contrôle d’unités+ terrain non trivial

3. Partie avec tech. limitée

4. Partie complète

Compétition AIIDE 2010

Tech ≤ dragoons, information parfaite

Page 18: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

18

Différents tournois1. Contrôle d’unités

(micromanagement)

2. Contrôle d’unités+ terrain non trivial

3. Partie avec tech. limitée

4. Partie complète

Compétition AIIDE 2010

GL HF!

Page 19: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

19

Exemple « épique » (partie complète)

Compétition AIIDE 2010

http://www.youtube.com/v/Kr_5XICVSEE

Page 20: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

20

Overmind (UC Berkeley) – gagnant

Compétition AIIDE 2010

http://www.youtube.com/v/dOIgFkyfStg

Page 21: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

21

Overmind (UC Berkeley) – gagnant Haut niveau: planificateur

Contraintes de ressources Assure une progression technologique de l’agent

Compétition AIIDE 2010

Page 22: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

22

Overmind (UC Berkeley) – gagnant Haut niveau: planificateur

Contraintes de ressources Assure une progression technologique de l’agent

Bas niveau: microcontrôleurs Trajectoires: A* avec reconnaissance de menace Champs de potentiel

Compétition AIIDE 2010

Page 23: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

23

Sherbrooke AI – Steve Tousignant, Anthony Jo Quinto et Frédéric St-Onge

2e (sur 7) dans le tournoi #1 Carte d’influence

Visibilité Densité d’unités Menaces

Compétition AIIDE 2010

Page 24: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

24

Machines à états finis Scripts Cartes d’influence Champs de potentiel

Compétition AIIDE 2010 AIIDE - Techniques utilisées

Page 25: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

25

Machines à états finis Scripts Cartes d’influence Champs de potentiel

Compétition AIIDE 2010 AIIDE - Techniques utilisées

Réseaux de neurones Swarm intelligence Inférence probabiliste Algorithmes

génétiques

Page 26: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

26

Machines à états finis Scripts Cartes d’influence Champs de potentiel

Compétition AIIDE 2010 AIIDE - Techniques utilisées

Réseaux de neurones Swarm intelligence Inférence probabiliste Algorithmes

génétiques

Page 27: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

Plan Jeux RTS? IA dans les jeux RTS

DéfisCompétition AIIDE 2010Agent artificiel SPAR

TechniquesPlanificationThéorie des jeux

Page 28: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

28

Objectifs Testbed pour les algorithmes de

planification/reconnaissance de plan

Participer à AIIDE 2011!

Agent artificiel SPAR

Page 29: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

29

Architecture

Agent artificiel SPAR

Page 30: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

30

Architecture

Agent artificiel SPAR

Page 31: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

31

Modules de prisede décision

Agent artificiel SPAR

Objectifs à long terme, i.e. composition de l’armée

Actions à accomplir (déplacer, attaquer, construire…)

Exécution des actions

Réactions (si → alors…)

Page 32: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

32

Agent artificiel SPAR

Inférence par cas?

Planification

Ad hoc

Machines à états finis

Modules de prisede décision

Page 33: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

33

Agent artificiel SPAR

Inférence par cas?

Planification

Ad hoc

Machines à états finis

Modules de prisede décision

Page 34: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

Plan Jeux RTS? IA dans les jeux RTS

DéfisCompétition AIIDE 2010Agent artificiel SPAR

TechniquesPlanificationThéorie des jeux

Page 35: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

35

Un seul agent Environnement potentiellement non-déterministe

Objectif: trouver des actions (un plan) permettant d’atteindre un but

Planification

Page 36: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

36

Classique On a

Un état initial Un ensemble d’actions (déplacer, attaquer…) Un but à atteindre

Planification

Page 37: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

37

Classique On a

Un état initial Un ensemble d’actions (déplacer, attaquer…) Un but à atteindre

Simuler des actionsdans le temps

Jusqu’à atteindrele but

Planification

Déplacer Défendre

Attaquer

Page 38: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

38

Classique Choisir le « meilleur plan »

Qui respecte les contraintes Qui optimise une

métrique / fonction d’utilité

A*

Planification

Page 39: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

Plan Jeux RTS? IA dans les jeux RTS

DéfisCompétition AIIDE 2010Agent artificiel SPAR

TechniquesPlanificationThéorie des jeux

Page 40: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

40

Contexte multi-agent Objectif: trouver des actions maximisant l’utilité

d’un agent Problème: l’utilité dépend des décisions des autres

agents!

Théorie des jeux

Page 41: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

41

Hypothèses principales Agent rationnel

Voulant maximiser son utilité

Agent égoïste N’est pas concerné par

l’utilité des autres

Très utilisée en économie

Théorie des jeux

Page 42: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

42

Jeux séquentiels à deux joueurs (Avec information parfaite et somme nulle) On a

Un ensemble d’actions, {Agent} et {Adversaire} Une fonction d’utilité

Théorie des jeux

Page 43: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

43

Jeux séquentiels à deux joueurs (Avec information parfaite et somme nulle) On a

Un ensemble d’actions, {Agent} et {Adversaire} Une fonction d’utilité

Trouver des actions maximisant l’utilité de l’agent

Selon un modèle de l’adversaire

Théorie des jeux

Page 44: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

44

Jeux séquentiels à deux joueurs Minimax (ou alpha-beta pruning)

On assume que l’adversaire joue optimalement Maximiser son pire gain

Théorie des jeux

Page 45: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

45

Jeux simultanés à deux joueurs L’agent et l’adversaire jouent en même

temps Ex: ciseau-roche-papier

Théorie des jeux

Page 46: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

46

Jeux simultanés à deux joueurs L’agent et l’adversaire jouent en même

temps Ex: ciseau-roche-papier

Le résultat dépend des deux actions

Théorie des jeux

Ciseaux Roche Papier

Ciseaux 0 -1 1

Roche 1 0 -1

Papier -1 1 0

Page 47: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

47

Jeux simultanés à deux joueurs (Avec information imparfaite et somme nulle) On a

Un ensemble d’actions, {Agent} et {Adversaire} Une fonction d’utilité

Trouver des actions maximisant l’utilité de l’agent

Selon un modèle de l’adversaire

Théorie des jeux

Page 48: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

48

A ou B?

Théorie des jeux

A? B?

? ?

Page 49: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

49

A ou B?

Théorie des jeux

Adversaire/Agent

A’ B’

A 2 -2

B -4 3

A’: attaquer base AB’: attaquer base B

A: défendre base AB: défendre base B

Page 50: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

50

A ou B?

Si on connaît a priori le modèle de probabilité de l’adversaire:

Processus de décision de Markov

Théorie des jeux

Adversaire/Agent

A’ (60%)

B’ (40%)

A 2 -2

B -4 3

A’: attaquer base AB’: attaquer base B

A: défendre base AB: défendre base B

Page 51: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

51

A ou B?

Si on connaît a priori le modèle de probabilité de l’adversaire:

Processus de décision de Markov

Théorie des jeux

Adversaire/Agent

A’ (60%)

B’ (40%)

A 2 -2

B -4 3

Action = AV = 0.4

Page 52: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

52

A ou B?

Si on n’a aucune information

Théorie des jeux

Adversaire/Agent

A’(?)

B’(?)

A 2 -2

B -4 3

A’: attaquer base AB’: attaquer base B

A: défendre base AB: défendre base B

Page 53: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

53

A ou B?

Si on n’a aucune information Équilibre de Nash

On assume que l’adversaire joue optimalement Chaque stratégie est la meilleure face à l’autre

Théorie des jeux

Adversaire/Agent

A’(?)

B’(?)

A 2 -2

B -4 3

A’: attaquer base AB’: attaquer base B

A: défendre base AB: défendre base B

Page 54: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

54

A ou B?

Si on n’a aucune information Équilibre de Nash

On assume que l’adversaire joue optimalement Chaque stratégie est la meilleure face à l’autre

Théorie des jeux

Action = (64% A, 36% B)V = -0.18

Adversaire/Agent

A’(45%)

B’(55%)

A (64%) 2 -2

B (36%) -4 3

Page 55: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

55

Game Tree

Théorie des jeux

s1

A’ B’B’

A’

A B

Page 56: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

56

Game Tree

Théorie des jeux

2 -2 -4 3

A B

?s1

A’ B’B’

A’

Feuilles

Page 57: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

57

Game Tree

Théorie des jeux

2 -2 -4 3

A B

?

A’: attaquer base AB’: attaquer base B

A: défendre base AB: défendre base B

Adversaire/Agent

A’ B’

A 2 -2

B -4 3

Page 58: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

58

Game Tree

Théorie des jeux

2 -2 -4 3

A B

-0.18

A’: attaquer base AB’: attaquer base B

A: défendre base AB: défendre base B

Adversaire/Agent

A’(45%)

B’(55%)

A (64%) 2 -2

B (36%) -4 3

Action = (64% A, 36% B)V = -0.18

Page 59: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

59

Game Tree

Théorie des jeux

-4 1 -1-0.18 Adversaire/Agent

C’ D’

C -0.18 -4

D 1 -1

C D

C’ D’D’

C’

Page 60: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

60

Game Tree

Théorie des jeux

-0.18 -4 1 -1

-1

Adversaire/Agent

C’(0%)

D’(100%)

C (0%) -0.18 -4

D (100%) 1 -1

Action = D (domination stricte)

V = -1

C D

Page 61: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

61

Jeux simultanés à deux joueurs Somme générale (non-constante)

Ex: dilemme des prisonniers

Théorie des jeux

1/2 Se taire Dénoncer

Se taire (-0.5, -0.5) (-10, 0)

Dénoncer (0, -10) (-5, -5)

Page 62: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

62

Jeux simultanés à deux joueurs Somme générale (non-constante)

Ex: dilemme des prisonniers

Théorie des jeux

1/2 Se taire Dénoncer

Se taire (-0.5, -0.5) (-10, 0)

Dénoncer (0, -10) (-5, -5)

Un seul équilibre (de Nash): (Dénoncer, Dénoncer)!

Page 63: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

63

Intelligence artificielle dans les jeux RTS: plus compliqué que jouer aux échecs…

Tirer profit de la reconnaissance de plan

Conclusion

Reconnaissance de plan

Prise de décision

Page 64: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.

Questions?

Page 65: Intelligence artificielle dans les jeux RTS IFT615 – Été 2011 Simon Chamberland.