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

Présenté à: M. Froduald Kabanza Par: Jonathan Pelletier Cody Stoutenburg Simon-Pierre Thibault.

Présentations similaires


Présentation au sujet: "Présenté à: M. Froduald Kabanza Par: Jonathan Pelletier Cody Stoutenburg Simon-Pierre Thibault."— Transcription de la présentation:

1 Présenté à: M. Froduald Kabanza Par: Jonathan Pelletier Cody Stoutenburg Simon-Pierre Thibault

2 Plan Problématique Notre solution Problèmes rencontrés Résultats Différentes techniques dIA Conclusion Questions ? 2

3 Problématique Les jeux de stratégies en temps réels (RTS) contiennent deux volets distinct : la gestion des ressources et production dunité et la stratégie militaire pour détruire lennemi. Nous avons décidé de nous concentrer sur la création dun planificateur pour optimiser la gestion des ressources. But: Générer un plan le plus temps optimal possible Problème: La concurrence massive des actions Les actions ont une durée différente Il y a différent type daction. Il y a des différences de fonctionnement entre les races la génération dun plan doit être extrêmement rapide. 3

4 Notre solution Nous avons décidé dexplorer une solution qui avait été proposée lors de lICAPS par Hei Chan, Alan Fern, Soumay Ray, Nick Wilson et Chris Ventura. La solution consiste à décomposer le problème en un problème séquentiel facilement planifiable puis de le paralléliser. 4

5 Ressource et action Pour cela nous avons besoin de définir des types de ressource et des types daction. 2 type de ressources: Renouvelable -> la ressource peut être utilisée pour plusieurs actions et ne peut pas être consommé. Non renouvelable -> la ressource peut uniquement être consommée 3 type daction: Require(les 2) -> laction nécessite que nous possédions une certaine quantité de ressource mais nous ne les utiliserons pas Borrow(renouvelable) -> laction nécessite que nous possédions une certaine quantité de ressource renouvelable qui vont être utilisées puis libérées a la fin de laction Consume(non-renouvelable) -> laction utilise la ressource 5

6 Algorithme Pour cela nous avons utilisé quelques algorithmes. Un planificateur séquentiel (MEA) Un scheduler qui transforme notre plan séquentiel en plan parallèle Une boucle principale qui optimise nos ressources renouvelable 6

7 MEA 7

8 Scheduler 8

9 Boucle principale 9

10 Tests Trois tests différents utilisés avec le même état initial 1 COMMAND CENTER (base) 5 SUPPLY (limite de population) 50 MINERALS 4 SVC(travailleurs) Comparaison des performances de chaque section du planificateur Difficile de juger de la qualité du plan 10

11 Résultats Objectif Temps moyen pour MEA (ms) (1000 tests) Temps moyen pour le réordonnanceur (ms) (1000 tests) Temps moyen pour la boucle principale (ms) (100 tests) MARINE 500 0,4322,46954,98 Chaque batiment 1 Chaque unité 10 3,7327,281 357,46 Chaque unitée 100 24,96423,1330 583,80 11

12 Résultats (suite) Comparaison entre MEA et le réordonnanceur 12

13 Résultats (suite) Comparaison entre le réordonnanceur et la boucle principale 13

14 Analyse et critique - MEA Extrêmement rapide Dépend du nombre de sous-buts. Lien direct : sous-but primitif action Sous-buts commutatifs? … pas vraiment Lordre de traitement des sous-buts devient très important 14

15 Analyse et critique - Réordonnanceur Dépend du nombre dactions dans le plan séquentiel (très rapide) Recherche très simpliste Les moments importants sont limités Le résultats dépend beaucoup trop du plan séquentiel Plus tôt possible meilleur plan 15

16 Analyse et critique – Boucle principale Dépend du nombre de ressources renouvelables Permet lajout explicite de ressources renouvelables. Très lourd en calcul, mais améliore fortement les plans produits. Etat initialObjectif Longueur du plan avec la boucle (frames) Longueur du plan sans la boucle (frames) - COMMAND CENTER 1 - SUPPLY 5 - MINERALS 50 - SVC 4 - MARINE 100 12 86044 000 - COMMAND CENTER 1 - SUPPLY 5 - MINERALS 50 - SVC 1 - COVERT_OPS 1 - NUCLEAR SILO 1 - TERRAN_BARRACKS 1 14 30014 650 - COMMAND CENTER 1 - SUPPLY 5 - MINERALS 50 - SVC 4 - MINERALS 5000 - VESPENE_GAS 5000 5 95015 900 16

17 Analyse et critique – Boucle principale (suite) Traitement des ressources en séquence alors quelle ne sont pas indépendantes Pousse la production de ressources importantes à la fin du plan. Difficile de se défendre avant la fin du plan. 17

18 Différente technique dIA Nous avions 2 autres approches possibles en vue: Algorithme séquentiel différent Mode séquentiel de TLPlan Ne dépend pas de lordre de traitement des ressources Moins performant en terme de temps de calcul Plan plus optimal -Considère les actions qui produisent plus dune ressources (rare) Autre planificateur parallèle (TLPlan ou SAPA) Calcul du plan parallèle très lourd Replanification entre chaque frame impossible -Nécessite une architecture complexe pour replanifier Calcul des ressources renouvelables à chaque état pout TLPlan Règles de contrôle difficiles à déterminer Résultats meilleurs mais programme plus complexe 18

19 Conclusion Performant en terme de temps de calcul Temps de réaction efficace pour un jeu Rapidité Plan pas optimal Plan dépend de lordre de traitement des ressources Changement dordre effet imprévisible Reste à évaluer la qualité du plan en le comparant avec un joueur réel 19

20


Télécharger ppt "Présenté à: M. Froduald Kabanza Par: Jonathan Pelletier Cody Stoutenburg Simon-Pierre Thibault."

Présentations similaires


Annonces Google