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

Présentations similaires


Présentation au sujet: "Intelligence Artificielle"— Transcription de 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


Télécharger ppt "Intelligence Artificielle"

Présentations similaires


Annonces Google