Recherche de chemin A*Recherche de chemin A*Par:Par:
François RoseberryFrançois Roseberry
Benoît TremblayBenoît Tremblay
PlanPlan
ProblématiqueProblématique Explication du A* de baseExplication du A* de base Différentes optimisationsDifférentes optimisations Nos choix d’optimisationsNos choix d’optimisations Présentation des prototypesPrésentation des prototypes Difficultés rencontréesDifficultés rencontrées Analyse des résultatsAnalyse des résultats Bilan des connaissances acquisesBilan des connaissances acquises ConclusionConclusion
ProblématiqueProblématique
Besoin de la recherche de cheminBesoin de la recherche de chemin Enjeux (pourquoi?)Enjeux (pourquoi?) ObjectifsObjectifs
Explication du A*Explication du A*
Ajouter le nœud de départ à la liste ouverteAjouter le nœud de départ à la liste ouverteTant que la liste ouverte n’est pas videTant que la liste ouverte n’est pas vide{{ Nœud <- Nœud ouvert avec le plus petit coût Nœud <- Nœud ouvert avec le plus petit coût Si le nœud est la destination finale Si le nœud est la destination finale Ceci est un chemin possible Ceci est un chemin possible Sinon Sinon Fermer ce nœud Fermer ce nœud Pour tous les nœuds adjacents qui ne sont Pour tous les nœuds adjacents qui ne sont pas fermé ou n’est pas un obstaclepas fermé ou n’est pas un obstacle Ajouter le nœud à la liste ouverte Ajouter le nœud à la liste ouverte} }
Explication du A*Explication du A*
Ouverture / Ouverture / fermeture des fermeture des nœudsnœuds
Calcul du coûtCalcul du coût (coût du nœud + (coût du nœud +
heuristique)heuristique)
Différentes optimisationsDifférentes optimisations
A* par points visiblesA* par points visibles A* hiérarchiqueA* hiérarchique Listes prioritairesListes prioritaires Réutilisation des nœudsRéutilisation des nœuds
Nos choix d’optimisationNos choix d’optimisation
Dérivé du A* par points visiblesDérivé du A* par points visibles Graphe pré calculéGraphe pré calculé RaisonsRaisons
Complexité moindreComplexité moindre PerformancePerformance Plus réalistePlus réaliste
Présentation des prototypesPrésentation des prototypes
Version ConsoleVersion Console Éditeur WindowsÉditeur Windows Version WindowsVersion Windows
Difficultés rencontréesDifficultés rencontrées
Librairie STLLibrairie STL Joindre le nœud le plus procheJoindre le nœud le plus proche Implémenter la boite de collisionImplémenter la boite de collision
Analyse des résultatsAnalyse des résultats
Buts atteintsButs atteints Gain de performance significatifGain de performance significatif
Pourquoi le résultat n’est pas concluantPourquoi le résultat n’est pas concluant Perte de précisionPerte de précision Pas assez approfonditPas assez approfondit Perd du temps à placer les nœudsPerd du temps à placer les nœuds
Bilan des connaissances acquisesBilan des connaissances acquises
Compréhension du A*Compréhension du A* Différentes optimisations et leurs impactsDifférentes optimisations et leurs impacts Sérialisation des donnéesSérialisation des données
ConclusionConclusion
Utiliser des librairies et du code déjà faitUtiliser des librairies et du code déjà fait A* divise pour régnerA* divise pour régner Manque de tempsManque de temps Pistes futures de solutionsPistes futures de solutions
A* hiérarchiqueA* hiérarchique D*D*
Top Related