Télécharger la présentation
1
Intelligence Artificielle
Steve Gury
2
Agenda Historique Réseau de neurones Algorithmes génétiques MinMax
Algorithme de recherche de chemin Machines à états
3
Historique Terme inventé par John McCarthy en 1956
Définition: Programmes informatiques qui résolvent des problèmes qui sont habituellement résolus par des processus mentaux de haut niveau
4
Historique Ne pas confondre avec le domaine de l’intelligence artificielle forte Le système est capable de produire un comportement intelligent, mais aussi d’éprouver une conscience de soi SkyNet
5
Historique Turing initia le concept en 1950 Test de Turing
Article « Computing Machinery and Intelligence » Test de Turing
6
Différentes Techniques et leurs applications
Méthodes complexes Réseaux de neurones Algorithmes génétiques Simplifications + heuristiques MinMax PathFinding Machine à état
7
Agenda Historique Réseau de neurones Algorithmes génétiques MinMax
Algorithme de recherche de chemin Machines à états
8
Réseau de neurones Imite le fonctionnement des neurones du cerveau
Assemble les neurones en couche Différentes fonctions de seuillage Linéaires Non linéaires
9
Réseaux de neurones Assemblage en réseaux +/- complexes Utilisations:
Apprentissage + sollicitation (prise de décision) Segmentation
10
Exemple d’application
Attaque conditionnée sur jeu de stratégie Nombre d’unités en renfort Nombre et niveau des opposants Distance à la base ... Apprentissage Une fois pour toute En cours de jeu Sollicitation en jeu
11
Agenda Historique Réseau de neurones Algorithmes génétiques MinMax
Algorithme de recherche de chemin Machines à états
12
Algorithme génétique Inspiré de l’évolution des espèces
Idée: Trouver un optimum général en modifiant une solution existante à un problème
13
Algorithme génétique Ex: Trouver l’altitude maximale de cette courbe définie par z = f(x,y) Point initial (x0,y0) aléatoire Petite variation Ajout d’erreur (évite les extremums locaux)
14
Algorithme génétique Problème du temps de convergence
Aucune garantie d’avoir un maximum
15
Exemple d’application
Simulation de systèmes vivants Gestion de l’apprentissage par renaissance Ex: Creatures 1,2 & 3 Docking Station
16
Agenda Historique Réseau de neurones Algorithmes génétiques MinMax
Algorithme de recherche de chemin Machines à états
17
MinMax Idée: Prendre une décision en supposant que l’adversaire va choisir le choix le plus optimal pour lui 5 Parler de l’élagage alpha-béta 3 5 2 12 3 10 8 5 10 11 2
18
Application du MinMax Prise de décision dans des jeux à logique simple
Jeu de carte simple Jeu de type « échec » Optimisation avec l’élagage alpha-béta de l’arbre de décision (McCarthy)
19
Agenda Historique Réseau de neurones Algorithmes génétiques MinMax
Algorithme de recherche de chemin Machines à états
20
Pathfinding: A* Algorithme de recherche de chemin entre deux noeuds d’un graphe Algorithme simple et rapide mais ne garantissant pas l’optimalité de la solution Algorithme majoritairement utilisé dans les jeux vidéo
21
Pathfinding: A* Exemple: On part du point vert pour aller au point rouge On ne peut pas marcher sur les cases bleues
22
Pathfinding: A* Pour chaque dalle on considère les cases adjacentes en éliminant les cases inaccessibles On attribue une note F à chaque case, F étant la somme du coût pour aller jusqu’à cette case (noté G) et de l’estimation du coût restant à parcourir (noté H) F = G + H
23
Pathfinding: A* Dans cet exemple, on attribue un poid différent entre un déplacement vertical/horizontal (10) et un déplacement en diagonal (14 ~sqrt(2)) Les déplacements en diagonal seront permis si et seulement si les deux cases adjacentes à la diagonale sont libres Nous utiliserons la méthode « de Manhattan » pour estimer fonction H, ie. le nombre de cases horizontales et verticales pour atteindre la destination
24
Pathfinding: A*
25
Pathfinding: A*
26
Pathfinding: A*
27
Pathfinding: A*
28
Pathfinding: A*
29
Pathfinding: A* Cet algorithme nous permet de trouver rapidement un chemin entre deux points, cependant: Le chemin n’est pas forcément optimal On peut ne jamais considérer un côté d’une solution symétrique
30
Pathfinding: Dijkstra
Algorithme ayant pour but comme A* de trouver le plus court chemin entre deux points Dijkstra garantit d’obtenir un résultat optimal Algorithme polynomial
31
Pathfinding: Dijkstra
32
Pathfinding: Dijkstra
33
Pathfinding: Dijkstra
34
Pathfinding: Dijkstra
Avantages: Garantit le résultat optimal Inconvénients: Complexité polynomiale Remarques: Equivalent à A* avec une méthode d’heuristique nulle
35
Pathfinding: Pavages Les algorithmes de pathfinding fonctionnent sur des graphes Soit on génère le pavage au préalable Soit on le calcul par rapport au décor Différents types de pavages fixes
36
Pathfinding: Pavages
37
Pathfinding: Pavages La fluidité apparente des solutions de pathfinding dépendra beaucoup du type de pavage
38
Pathfinding: Pavages Dans les jeux modernes, on utilise un « nav mesh », ou maillage de navigation à but unique de pathfinding
39
Pathfinding: Pavages La définition des nav-mesh se fait à la main
En général on ne définit que les « way point » et on calculera le nav-mesh en conséquence
40
Agenda Historique Réseau de neurones Algorithmes génétiques MinMax
Algorithme de recherche de chemin Machines à états
41
Machines à états Même dans les jeux modernes, l’intelligence artificielle se résume souvent à une suite de comportements préalablement scriptés Les agents artificiellement intelligents du jeu mutent d’un état à un autre selon certaines conditions pré-établies
42
Machines à états Ex: Scripting d’un garde dans un jeu d’action
Attaquer Patrouiller passivement Se protéger Patrouiller activement
Présentations similaires
© 2025 SlidePlayer.fr Inc.
All rights reserved.