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

Planification de trajectoires

Présentations similaires


Présentation au sujet: "Planification de trajectoires"— Transcription de la présentation:

1 Planification de trajectoires
Simon Chamberland Juillet 2010

2 Plan Introduction Problématique Solutions possibles
Contraintes différentielles Conclusion

3 Plan Introduction Problématique Solutions possibles
Contraintes différentielles Conclusion

4 Introduction Planification – environnements discrets Cube Rubik Échecs
Graphe de navigation

5 Introduction Planification – environnements discrets
Nombre fini d’actions possibles Exploration d’un graphe d’états État initial But à atteindre

6 Introduction Planification – environnements continus
RomanTutor – bras robot canadien Robots humanoïdes

7 Manoeuvres automatisées de stationnement
Introduction Planification – environnements continus Véhicules auto-guidés Manoeuvres automatisées de stationnement

8 Introduction Planification – environnements continus Jeux Films

9 Introduction Planification – environnements continus
Chaînes de montage Développement de médicaments

10 Introduction Planification – environnements continus
Nombre infini d’actions possibles Il serait difficile de toutes les essayer! Comment alors trouver une suite d’actions menant au but?

11 Plan Introduction Problématique Solutions possibles
Contraintes différentielles Conclusion

12 Problématique Planification de trajectoires
Facile pour un humain, complexe pour un ordinateur! Calculer une trajectoire géométrique reliant un état initial à un état final En évitant les obstacles (statiques)

13 Problématique Planification de trajectoires Robot Degrés de liberté
Objets articulés reliés entre eux par des joints Degrés de liberté Nombre de joints + Motions possibles dans l’espace (translations/rotations…)

14 Problématique Planification de trajectoires Cinématique inverse
Trouver les angles des joints, étant donné une position à atteindre Ne tient pas compte des obstacles

15 Problématique Planification de trajectoires Espace d’états
Dimension = nb degrés de liberté Translations 2D -> R² (x, y) 3D -> R³ (x, y, z)

16 Problématique Planification de trajectoires Espace d’états
Dimension = nb degrés de liberté Translations 2D -> R² (x, y) 3D -> R³ (x, y, z) Translations + rotations 2D -> SE(2) (x, y, θ) 3D -> SE(3) (x, y, z, α, β, γ) Dimensions supplémentaires si corps articulé Translations/rotations des joints

17 Problématique Planification de trajectoires
Transitions entres les états Géodésique : généralisation d’une « ligne droite » (2,0,90o) (0,0,0o)

18 Problématique Planification de trajectoires
Transitions entres les états Géodésique : généralisation d’une « ligne droite » (2,0,90o) (0,0,0o) (2, 0, 90o)

19 Problématique Planification de trajectoires
Transitions entres les états Géodésique : généralisation d’une « ligne droite » Transitions plus complexes si contraintes différentielles Traitées plus loin (2,0,90o) (0,0,0o) (2, 0, 90o)

20 Problématique Planification de trajectoires Entrée:
Géométrie du robot et des obstacles Cinétique du robot (degrés de liberté) Configurations initiale et finale Planificateur de trajectoires Sortie: Une séquence continue de configurations rapprochées, sans collision, joignant la configuration initiale à la configuration finale

21 Problématique Planification de trajectoires

22 Plan Introduction Problématique Solutions possibles
Contraintes différentielles Conclusion

23 Solutions possibles Cadre général de résolution du problème
Problème continu (espace de configuration + contraintes) Discrétisation (décomposition, échantillonnage) Recherche heuristique dans un graphe (A* ou similaire)

24 Solutions possibles Approches exactes Approches approximatives
Complètes Typiquement plus lentes Approches approximatives Échantillonnage Complétude probabiliste Plus rapides

25 Plan Introduction Problématique Solutions possibles
Approches exactes Approches approximatives Contraintes différentielles Conclusion

26 Approches exactes Décomposition en cellules trapézoïdales
Discrétisation Conserve la connectivité de l’espace d’états

27 Approches exactes Décomposition en cellules trapézoïdales
Construction d’un roadmap

28 Approches exactes Décomposition en cellules trapézoïdales
Construction d’un roadmap Condition importante: connexion triviale de n’importe quel état valide au roadmap

29 Approches exactes Décomposition en cellules trapézoïdales
Construction d’un roadmap Par extension, connexion possible de n’importe quelle paire (état initial, but) au roadmap…

30 Approches exactes Décomposition en cellules trapézoïdales
Construction d’un roadmap Donc, garantie de trouver une solution! (si elle existe)

31 Approches exactes Décomposition en cellules trapézoïdales
Rn Autres décompositions Triangulation (R²) Décomposition cylindrique algébrique (méthode générale)

32 Approches exactes Décomposition en cellules Avantages 
Trouve une solution s’il en existe une! Inconvénients  Lent si nombre élevé de dimensions Implémentation difficile Donc peu pratique pour une application réelle

33 Approches exactes Maximum-clearance roadmaps
Diagrammes de Voronoï généralisés Permet de trouver un chemin maximisant la distance avec les obstacles

34 Approches exactes Shortest-paths roadmaps
Plus court chemin entre deux configurations On frôle les obstacles!

35 Plan Introduction Problématique Solutions possibles
Approches exactes Approches approximatives Contraintes différentielles Conclusion

36 Approches approximatives
Discrétisation par échantillonnage Génération et connexion d’états jusqu’à ce qu’une solution soit trouvée! Comment générer les états? De façon déterministe Aléatoirement

37 Approches approximatives
Échantillonnage déterministe Grille/treillis/séquence de Halton, Hammersley… Avantage: on connaît nos voisins! Inconvénient: cas problématiques, par construction

38 Approches approximatives
Échantillonnage aléatoire Probabilistic roadmap (PRM) Avantage: pas de pire cas Inconvénient: il faut trouver nos voisins!

39 Approches approximatives
Échantillonnage aléatoire Visibility roadmap On minimise le nombre d’états En laissant seulement des guards et des connectors

40 Approches approximatives
Prétraitement Création du roadmap à priori Si on prévoit réaliser plusieurs requêtes sur le même environnement Exemples: jeux…

41 Approches approximatives
Rapidly-exploring Dense Trees (RDTs) Échantillonnage d’un nouvel état, puis extension du plus proche voisin jusqu’à ce nouvel état Ou jusqu’à ce que le chemin rencontre un obstacle

42 Approches approximatives
Rapidly-exploring Dense Trees (RDTs) Échantillonnage d’un nouvel état, puis extension du plus proche voisin jusqu’à ce nouvel état Ou jusqu’à ce que le chemin rencontre un obstacle Biais de Voronoï Les points les plus isolés ont plus de chance d’être étendus Proportionnellement à la taille de leur cellule de Voronoï

43 Approches approximatives
Rapidly-exploring Dense Trees (RDTs) Cas particulier: Rapidly-exploring Random Trees (RRTs) si on utilise une séquence aléatoire

44 Plan Introduction Problématique Solutions possibles
Contraintes différentielles Conclusion

45 Contraintes différentielles
Dans les exemples précédents, on assumait: Qu’il était toujours possible de relier trivialement deux états arbitraires (géodésique) Ce n’est pas toujours le cas (2,0,90o) (0,0,0o) (2, 0, 90o)

46 Contraintes différentielles
Cas typique: un véhicule (0,0,0o) (1,3,-90o) ?

47 Contraintes différentielles
Cas typique: un véhicule 3 degrés de liberté: SE(2) q = (x, y, θ) 2 dimensions « contrôlables » u = (s, φ) -> vitesse, volant On ne peut pas changer de direction instantanément!

48 Contraintes différentielles
Fonction de transition q’ = f(q, u) x’ = s * cos(θ) y’ = s * sin(θ) θ’ = (s/L) * tan(φ) Exprime les vélocités liées à chaque variable

49 Contraintes différentielles
Comment obtenir le nouvel état? On intègre les vélocités x0 = (0,0,0o) u = (10m/s,30o) Δt = 5 sec x1 = ?

50 Contraintes différentielles
Robot Azimut3 Faculté de Génie, laboratoire IntRoLab 4 roues enlignées selon le CIR (centre instantané de rotation)

51 Contraintes différentielles
Robot Azimut3 Impossible d’effectuer une rotation complète des roues Modification du CIR peut requérir l’immobilisation du robot

52 Contraintes différentielles
Robot Azimut3 Modification du CIR peut requérir l’immobilisation du robot

53 Contraintes différentielles
Planification de trajectoires On ne peut pas utiliser les approches vues jusqu’à présent… Car il n’est pas toujours possible de connecter 2 états arbitraires Deux frameworks possibles Planifier puis transformer Utiliser les RRTs

54 Contraintes différentielles
Planifier puis transformer Calcul d’une trajectoire sans prendre en compte les contraintes différentielles Lissage de la trajectoire qui respecte les contraintes

55 Contraintes différentielles
Utiliser les RRTs Étendre l’arbre de façon aléatoire Avec un certain biais vers le but (l’état final) Échantillonnage de l’espace de contrôle

56 Contraintes différentielles
Utiliser les RRTs

57 Plan Introduction Problématique Solutions possibles
Contraintes différentielles Conclusion

58 Conclusion Planification de trajectoires
Problème difficile Surtout avec contraintes différentielles Solutions existent Mais la plupart sont applicables à des problèmes particuliers Vers l’infini, et plus loin encore… Obstacles dynamiques Plusieurs robots Contraintes temporelles

59 Références S. M. LaValle, Planning Algorithms. Cambridge University Press, 2006. A. Yershova, L. Jaillet, T. Simeon, and S. LaValle, Dynamic-domain RRTs: Efficient exploration by controlling the sampling domain, in Proc. of the IEEE International Conference on Robotics and Automation, 2005. Chamberland, S., Beaudry, É., Clavien, L., Kabanza, F., Michaud, F. and Lauria, M. Motion Planning for an Omnidirectional Robot With Steering Constraints. Proc. of IEEE/RSJ Int'l Conference on Intelligent Robots and Systems (IROS), 2010.

60 Questions?

61


Télécharger ppt "Planification de trajectoires"

Présentations similaires


Annonces Google