La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Intelligence artificielle dans les jeux RTS

Présentations similaires


Présentation au sujet: "Intelligence artificielle dans les jeux RTS"— Transcription de la présentation:

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

2 Plan Jeux RTS? IA dans les jeux RTS Techniques Défis
Compétition AIIDE 2010 Agent artificiel SPAR Techniques Planification Théorie des jeux

3 Plan Jeux RTS? IA dans les jeux RTS Techniques Défis
Compétition AIIDE 2010 Agent artificiel SPAR Techniques Planification Théorie des jeux

4 Jeux RTS? Real-Time Strategy But typique: anéantir l’adversaire!
Joueurs jouent simultanément Acquérir des ressources Construire une base Recruter des unités 4

5 Jeux RTS? StarCraft 3 Races 1998 - Blizzard Entertainment Terran
Protoss Zerg 5

6 Jeux RTS? StarCraft 6

7 Plan Jeux RTS? IA dans les jeux RTS Techniques Défis
Compétition AIIDE 2010 Agent artificiel SPAR Techniques Planification Théorie des jeux

8 IA dans les jeux RTS 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 8

9 Plan Jeux RTS? IA dans les jeux RTS Techniques Défis
Compétition AIIDE 2010 Agent artificiel SPAR Techniques Planification Théorie des jeux

10 Défis Temps réel Multitude d’unités Prendre une décision rapidement!
Beaucoup d’actions possibles… 10

11 Défis Concurrence Environnement dynamique Information incomplète
5 actions sans concurrence 25 actions avec concurrence Environnement dynamique Que fera l’adversaire? Information incomplète Brouillard de guerre 11

12 Plan Jeux RTS? IA dans les jeux RTS Techniques Défis
Compétition AIIDE 2010 Agent artificiel SPAR Techniques Planification Théorie des jeux

13 Compétition AIIDE 2010 StarCraft
En marge d’une conférence sur les jeux (AIIDE) Certaines images tirées de [http://eis.ucsc.edu/sites/default/files/AIIDECompetition.pdf] 13

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

15 Compétition AIIDE 2010 Différents tournois
Contrôle d’unités (micromanagement) Contrôle d’unités + terrain non trivial Partie avec tech. limitée Partie complète Muta/scourges vs muta/scourges 15

16 Compétition AIIDE 2010 Différents tournois
Contrôle d’unités (micromanagement) Contrôle d’unités + terrain non trivial Partie avec tech. limitée Partie complète 10 dragoons vs 10 dragoons 16

17 Compétition AIIDE 2010 Différents tournois
Contrôle d’unités (micromanagement) Contrôle d’unités + terrain non trivial Partie avec tech. limitée Partie complète Tech ≤ dragoons, information parfaite 17

18 Compétition AIIDE 2010 Différents tournois
Contrôle d’unités (micromanagement) Contrôle d’unités + terrain non trivial Partie avec tech. limitée Partie complète GL HF! 18

19 Compétition AIIDE 2010 Exemple « épique » (partie complète)
19

20 Compétition AIIDE 2010 Overmind (UC Berkeley) – gagnant

21 Compétition AIIDE 2010 Overmind (UC Berkeley) – gagnant
Haut niveau: planificateur Contraintes de ressources Assure une progression technologique de l’agent Article: 21

22 Compétition AIIDE 2010 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 Article: 22

23 Compétition AIIDE 2010 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 23

24 Compétition AIIDE 2010 AIIDE - Techniques utilisées
Machines à états finis Scripts Cartes d’influence Champs de potentiel 24

25 Compétition AIIDE 2010 AIIDE - Techniques utilisées
Machines à états finis Scripts Cartes d’influence Champs de potentiel Réseaux de neurones Swarm intelligence Inférence probabiliste Algorithmes génétiques 25

26 Compétition AIIDE 2010 AIIDE - Techniques utilisées
Machines à états finis Scripts Cartes d’influence Champs de potentiel Réseaux de neurones Swarm intelligence Inférence probabiliste Algorithmes génétiques 26

27 Plan Jeux RTS? IA dans les jeux RTS Techniques Défis
Compétition AIIDE 2010 Agent artificiel SPAR Techniques Planification Théorie des jeux

28 Agent artificiel SPAR Objectifs
Testbed pour les algorithmes de planification/reconnaissance de plan Participer à AIIDE 2011! 28

29 Agent artificiel SPAR Architecture 29

30 Agent artificiel SPAR Architecture 30

31 Agent artificiel SPAR Modules de prise de décision
Objectifs à long terme, i.e. composition de l’armée Actions à accomplir (déplacer, attaquer, construire…) Exécution des actions Réactions (si → alors…) 31

32 Agent artificiel SPAR Modules de prise de décision Inférence par cas?
Planification Ad hoc Machines à états finis 32

33 Agent artificiel SPAR Modules de prise de décision Inférence par cas?
Planification Ad hoc Machines à états finis 33

34 Plan Jeux RTS? IA dans les jeux RTS Techniques Défis
Compétition AIIDE 2010 Agent artificiel SPAR Techniques Planification Théorie des jeux

35 Planification Un seul agent
Environnement potentiellement non-déterministe Objectif: trouver des actions (un plan) permettant d’atteindre un but 35

36 Planification Classique On a Un état initial
Un ensemble d’actions (déplacer, attaquer…) Un but à atteindre 36

37 Planification Classique On a Simuler des actions dans le temps
Un état initial Un ensemble d’actions (déplacer, attaquer…) Un but à atteindre Simuler des actions dans le temps Jusqu’à atteindre le but Déplacer Défendre Attaquer 37

38 Planification Classique Choisir le « meilleur plan » A*
Qui respecte les contraintes Qui optimise une métrique / fonction d’utilité A* 38

39 Plan Jeux RTS? IA dans les jeux RTS Techniques Défis
Compétition AIIDE 2010 Agent artificiel SPAR Techniques Planification Théorie des jeux

40 Théorie des jeux 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! 40

41 Théorie des jeux Hypothèses principales Très utilisée en économie
Agent rationnel Voulant maximiser son utilité Agent égoïste N’est pas concerné par l’utilité des autres Très utilisée en économie 41

42 Théorie des jeux Jeux séquentiels à deux joueurs
(Avec information parfaite et somme nulle) On a Un ensemble d’actions, {Agent} et {Adversaire} Une fonction d’utilité 42

43 Théorie des jeux 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 43

44 Théorie des jeux Jeux séquentiels à deux joueurs
Minimax (ou alpha-beta pruning) On assume que l’adversaire joue optimalement Maximiser son pire gain 44

45 Théorie des jeux Jeux simultanés à deux joueurs
L’agent et l’adversaire jouent en même temps Ex: ciseau-roche-papier 45

46 Théorie des jeux 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 Ciseaux Roche Papier -1 1 46

47 Théorie des jeux 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 47

48 Théorie des jeux A ou B? ? ? A? B? 48

49 Théorie des jeux A ou B? A’: attaquer base A B’: attaquer base B
A: défendre base A B: défendre base B Adversaire/ Agent A’ B’ A 2 -2 B -4 3 49

50 Théorie des jeux A ou B? Si on connaît a priori le modèle de probabilité de l’adversaire: Processus de décision de Markov A’: attaquer base A B’: attaquer base B A: défendre base A B: défendre base B Adversaire/ Agent A’ (60%) B’ (40%) A 2 -2 B -4 3 50

51 Théorie des jeux A ou B? Si on connaît a priori le modèle de probabilité de l’adversaire: Processus de décision de Markov Adversaire/ Agent A’ (60%) B’ (40%) A 2 -2 B -4 3 Action = A V = 0.4 51

52 Théorie des jeux A ou B? Si on n’a aucune information
A’: attaquer base A B’: attaquer base B A: défendre base A B: défendre base B Adversaire/ Agent A’ (?) B’ A 2 -2 B -4 3 Généralisation de minimax aux jeux simultanés 52

53 Théorie des jeux 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 A’: attaquer base A B’: attaquer base B A: défendre base A B: défendre base B Adversaire/ Agent A’ (?) B’ A 2 -2 B -4 3 Généralisation de minimax aux jeux simultanés 53

54 Théorie des jeux 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 Adversaire/ Agent A’ (45%) B’ (55%) A (64%) 2 -2 B (36%) -4 3 Action = (64% A, 36% B) V = -0.18 Généralisation de minimax aux jeux simultanés 54

55 Théorie des jeux Game Tree s1 A B B’ A’ A’ B’ 55

56 Théorie des jeux Game Tree s1 ? A B B’ A’ A’ B’ 2 -2 -4 3 Feuilles 56

57 Théorie des jeux Game Tree A’: attaquer base A B’: attaquer base B
A: défendre base A B: défendre base B ? Adversaire/ Agent A’ B’ A 2 -2 B -4 3 A B 2 -2 -4 3 57

58 Théorie des jeux Game Tree Action = (64% A, 36% B) V = -0.18
A’: attaquer base A B’: attaquer base B A: défendre base A B: défendre base B -0.18 Adversaire/ Agent A’ (45%) B’ (55%) A (64%) 2 -2 B (36%) -4 3 A B 2 -2 -4 3 Action = (64% A, 36% B) V = -0.18 58

59 Théorie des jeux Game Tree C D D’ C’ C’ D’ -0.18 -4 1 -1
Adversaire/ Agent C’ D’ C -0.18 -4 D 1 -1 59

60 Théorie des jeux Game Tree Action = D (domination stricte) V = -1 -1 C
-0.18 -4 1 -1 Adversaire/ Agent C’ (0%) D’ (100%) C (0%) -0.18 -4 D (100%) 1 -1 Action = D (domination stricte) V = -1 60

61 Théorie des jeux Jeux simultanés à deux joueurs
Somme générale (non-constante) Ex: dilemme des prisonniers 1/2 Se taire Dénoncer (-0.5, -0.5) (-10, 0) (0, -10) (-5, -5) 61

62 Théorie des jeux Jeux simultanés à deux joueurs
Somme générale (non-constante) Ex: dilemme des prisonniers 1/2 Se taire Dénoncer (-0.5, -0.5) (-10, 0) (0, -10) (-5, -5) Un seul équilibre (de Nash): (Dénoncer, Dénoncer)! 62

63 Reconnaissance de plan
Conclusion Intelligence artificielle dans les jeux RTS: plus compliqué que jouer aux échecs… Tirer profit de la reconnaissance de plan Reconnaissance de plan Prise de décision 63

64 Questions?

65


Télécharger ppt "Intelligence artificielle dans les jeux RTS"

Présentations similaires


Annonces Google