planification de trajectoires simon chamberland juillet 2010

61
Planification de trajectoires Simon Chamberland Juillet 2010

Upload: valery-olive

Post on 04-Apr-2015

108 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Planification de trajectoires Simon Chamberland Juillet 2010

Planification de trajectoires

Simon ChamberlandJuillet 2010

Page 2: Planification de trajectoires Simon Chamberland Juillet 2010

2

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

Page 3: Planification de trajectoires Simon Chamberland Juillet 2010

3

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

Page 4: Planification de trajectoires Simon Chamberland Juillet 2010

4

Introduction Planification – environnements discrets

Cube Rubik

Graphe de navigation

Échecs

Page 5: Planification de trajectoires Simon Chamberland Juillet 2010

5

Introduction Planification – environnements discrets

Nombre fini d’actions possibles Exploration d’un graphe d’états

État initial But à atteindre

Page 6: Planification de trajectoires Simon Chamberland Juillet 2010

6

Introduction Planification – environnements continus

http://www.youtube.com/watch?v=IZp4QlQ6Wbo

RomanTutor – bras robot canadien

Robots humanoïdes

Page 7: Planification de trajectoires Simon Chamberland Juillet 2010

7

Introduction Planification – environnements continus

Manoeuvres automatiséesde stationnement

Véhicules auto-guidés

Page 8: Planification de trajectoires Simon Chamberland Juillet 2010

8

Introduction Planification – environnements continus

FilmsJeux

Page 9: Planification de trajectoires Simon Chamberland Juillet 2010

9

Introduction Planification – environnements continus

Développement de médicamentsChaînes de montage

Page 10: Planification de trajectoires Simon Chamberland Juillet 2010

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?

Page 11: Planification de trajectoires Simon Chamberland Juillet 2010

11

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

Page 12: Planification de trajectoires Simon Chamberland Juillet 2010

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)

Page 13: Planification de trajectoires Simon Chamberland Juillet 2010

13

Problématique Planification de trajectoires

Robot Objets articulés reliés entre eux par des joints

Degrés de liberté Nombre de joints + Motions possibles

dans l’espace (translations/rotations…)

Page 14: Planification de trajectoires Simon Chamberland Juillet 2010

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

Page 15: Planification de trajectoires Simon Chamberland Juillet 2010

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)

Page 16: Planification de trajectoires Simon Chamberland Juillet 2010

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

Page 17: Planification de trajectoires Simon Chamberland Juillet 2010

17

Problématique Planification de trajectoires

Transitions entres les états Géodésique : généralisation d’une

« ligne droite »

(0,0,0o) (2,0,90o)

Page 18: Planification de trajectoires Simon Chamberland Juillet 2010

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)

Page 19: Planification de trajectoires Simon Chamberland Juillet 2010

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)

Page 20: Planification de trajectoires Simon Chamberland Juillet 2010

20

Problématique Planification de trajectoires

Planificateur de trajectoires

Entrée:Géométrie du robot et des obstaclesCinétique du robot (degrés de liberté)Configurations initiale et finale

Sortie:Une séquence continue de configurations rapprochées, sans collision, joignant la configuration initiale à la configuration finale

Page 21: Planification de trajectoires Simon Chamberland Juillet 2010

21

Problématique Planification de trajectoires

Page 22: Planification de trajectoires Simon Chamberland Juillet 2010

22

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

Page 23: Planification de trajectoires Simon Chamberland Juillet 2010

23

Solutions possibles

Problème continu(espace de configuration + contraintes)

Discrétisation(décomposition, échantillonnage)

Recherche heuristique dans un graphe(A* ou similaire)

Cadre général de résolution du problème

Page 24: Planification de trajectoires Simon Chamberland Juillet 2010

24

Solutions possibles Approches exactes

Complètes Typiquement plus lentes

Approches approximatives Échantillonnage Complétude probabiliste Plus rapides

Page 25: Planification de trajectoires Simon Chamberland Juillet 2010

25

Plan Introduction Problématique Solutions possibles

Approches exactesApproches approximatives

Contraintes différentielles Conclusion

Page 26: Planification de trajectoires Simon Chamberland Juillet 2010

26

Approches exactes Décomposition en cellules trapézoïdales

Discrétisation Conserve la connectivité de l’espace d’états

Page 27: Planification de trajectoires Simon Chamberland Juillet 2010

27

Approches exactes Décomposition en cellules trapézoïdales

Construction d’un roadmap

Page 28: Planification de trajectoires Simon Chamberland Juillet 2010

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

Page 29: Planification de trajectoires Simon Chamberland Juillet 2010

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…

Page 30: Planification de trajectoires Simon Chamberland Juillet 2010

30

Approches exactes Décomposition en cellules trapézoïdales

Construction d’un roadmap Donc, garantie de trouver une solution! (si elle existe)

Page 31: Planification de trajectoires Simon Chamberland Juillet 2010

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)

Page 32: Planification de trajectoires Simon Chamberland Juillet 2010

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

Page 33: Planification de trajectoires Simon Chamberland Juillet 2010

33

Approches exactes Maximum-clearance roadmaps

Diagrammes de Voronoï généralisés Permet de trouver un chemin maximisant la

distance avec les obstacles

Page 34: Planification de trajectoires Simon Chamberland Juillet 2010

34

Approches exactes Shortest-paths roadmaps

Plus court chemin entre deux configurations

On frôle les obstacles!

Page 35: Planification de trajectoires Simon Chamberland Juillet 2010

35

Plan Introduction Problématique Solutions possibles

Approches exactesApproches approximatives

Contraintes différentielles Conclusion

Page 36: Planification de trajectoires Simon Chamberland Juillet 2010

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

Page 37: Planification de trajectoires Simon Chamberland Juillet 2010

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

Page 38: Planification de trajectoires Simon Chamberland Juillet 2010

38

Approches approximatives Échantillonnage aléatoire

Probabilistic roadmap (PRM) Avantage: pas de pire cas Inconvénient: il faut trouver nos voisins!

Page 39: Planification de trajectoires Simon Chamberland Juillet 2010

39

Approches approximatives Échantillonnage aléatoire

Visibility roadmap On minimise le nombre d’états En laissant seulement des guards et des connectors

Page 40: Planification de trajectoires Simon Chamberland Juillet 2010

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…

Page 41: Planification de trajectoires Simon Chamberland Juillet 2010

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

Page 42: Planification de trajectoires Simon Chamberland Juillet 2010

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ï

Page 43: Planification de trajectoires Simon Chamberland Juillet 2010

43

Approches approximatives Rapidly-exploring Dense Trees (RDTs)

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

Page 44: Planification de trajectoires Simon Chamberland Juillet 2010

44

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

Page 45: Planification de trajectoires Simon Chamberland Juillet 2010

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)

Page 46: Planification de trajectoires Simon Chamberland Juillet 2010

46

Contraintes différentielles Cas typique: un véhicule

(0,0,0o)

(1,3,-90o) ?

Page 47: Planification de trajectoires Simon Chamberland Juillet 2010

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 dedirection instantanément!

Page 48: Planification de trajectoires Simon Chamberland Juillet 2010

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

Page 49: Planification de trajectoires Simon Chamberland Juillet 2010

49

Contraintes différentielles Comment obtenir le nouvel état?

On intègre les vélocités

x0 = (0,0,0o)

x1 = ?

u = (10m/s,30o)Δt = 5 sec

Page 50: Planification de trajectoires Simon Chamberland Juillet 2010

50

Contraintes différentielles Robot Azimut3

Faculté de Génie,laboratoire IntRoLab

4 roues enlignées selon le CIR (centre instantané de rotation)

Page 51: Planification de trajectoires Simon Chamberland Juillet 2010

51

Contraintes différentielles Robot Azimut3

Impossible d’effectuer unerotation complète des roues

Modification du CIR peut requérir l’immobilisation du robot

Page 52: Planification de trajectoires Simon Chamberland Juillet 2010

52

Contraintes différentielles

Robot Azimut3 Modification du CIR

peut requérir l’immobilisation du robot

Page 53: Planification de trajectoires Simon Chamberland Juillet 2010

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

Page 54: Planification de trajectoires Simon Chamberland Juillet 2010

54

Contraintes différentielles Planifier puis transformer

1) Calcul d’une trajectoire sans prendre en compte les contraintes différentielles

2) Lissage de la trajectoire qui respecte les contraintes

Page 55: Planification de trajectoires Simon Chamberland Juillet 2010

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

Page 56: Planification de trajectoires Simon Chamberland Juillet 2010

56

Contraintes différentielles Utiliser les RRTs

Page 57: Planification de trajectoires Simon Chamberland Juillet 2010

57

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

Page 58: Planification de trajectoires Simon Chamberland Juillet 2010

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

Page 59: Planification de trajectoires Simon Chamberland Juillet 2010

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.

Page 60: Planification de trajectoires Simon Chamberland Juillet 2010

Questions?

Page 61: Planification de trajectoires Simon Chamberland Juillet 2010