240 likes | 340 Views
Project Hoshimi. DAUTROY Stéphane ROGER julien BEGUE Jean-Baptiste. Plan. Les problématiques mises en jeu Description de l’algorithme de sélection du point d’injection La machine à états. Rappel. Rappel. Principe général Soigner des points malades de la carte les « points hoshimi »
E N D
Project Hoshimi DAUTROY Stéphane ROGER julienBEGUE Jean-Baptiste
Plan • Les problématiques mises en jeu • Description de l’algorithme de sélection du point d’injection • La machine à états
Rappel • Principe général • Soigner des points malades de la carte les « points hoshimi » • Utilisation des « molécules AZN » disponibles à certains points de la carte • Construction par le nanoAI de nanobots soignant les points Hoshimi et d'autres les ravitaillant en molécules AZN
Les problématiques mises en jeu • La détermination du point d’injection • C’est le point de départ sur la carte • Une bonne stratégie reste inefficace si le point d’injection est mauvais
Les problématiques mises en jeu • Utilisation d’une machine à états • La stratégie doit être la plus générique possible • Décomposition du problème en états de plus en plus précis
Détermination du point d’injection • Problématique • Solution • Exemple
Détermination du point d’injection • Problématique: maximiser le score d’une partie • Parcourir et remplir le maximum de points Hoshimi • Ce qui fait la différence entre les meilleures IA
Détermination du point d’injection • Maximiser le nombre de points Hoshimi parcourus et tenter d’en parcourir le plus possible en début de partie. • Mise en œuvre de nos connaissances relatives à la théorie des graphes et des statistiques.
Détermination du point d’injection • Méthode utilisée : • Lancement de voyageur de commerce sur chaque point Hoshimi admissible comme point de départ • Suppression des points parasites : le chemin doit être faisable dans le temps d’une partie sans la contrainte de cycle • Entre 50 et 100 chemins potentiels • Discrimination des chemins sur différents critères jusqu’a obtention du plus prometteur
Premier point AZN trop loin
Pas assez de points Hoshimi dans le chemin
Distance entre les points Hoshimi trop élevée
Distance entre les premiers points Hoshimi tropélevée Utilisation du coefficient de corrélation linéaire de la distance entre les points Hoshimi
Meilleur chemin trouvé
La machine à états • Problématique • Solution • Exemple
La machine à états • La problématique : • Gestion de plusieurs stratégies en parallèles sur plusieurs niveaux. • Global : conquérir un maximum de points Hoshimi • Gérer des comportements de groupes • Gérer des comportements relatifs aux unités elles-mêmes. • Gestion de comportements spéciaux comme la fuite.
La machine à états • L’implémentation de l’IA sous la forme d’une machine à états permet de répondre à cette problématique. • Permet une programmation générique et modulaire en rendant l’ajout et la réutilisation d’états très simples.
La machine à états • Décomposition de l’IA en machine à états Niveau Global Strategy_Manager Niveau Groupe Blockers Shooters Needles Collectors Shooter Collector CollectAZNState Niveau UNITE AttackTargetState MoveToAZNState MoveToTargetState MoveToHoshimiState RestState TransferAZNState
Machine à états d’un collecteur Aller à un point AZN Récolter des molécules AZN fuite Remplir le needle Aller à un point Hoshimi
Machine à états d’un groupe de collecteur Demander collecteurs Relâcher collecteurs
Conclusion • Code générique : utilisation des concepts objets : « design pattern », héritage, polymorphisme… • Concepts IA : machine à états, A-Star • Optimisation : Voyageur de commerce.