• Aucun résultat trouvé

La planification de tâches de manipulation dextre est un cas particulier de plani-fication de mouvement. La planiplani-fication de mouvement peut concerner tout système mécanique, ou robot, composé d’un ou de plusieurs corps, devant trouver son chemin dans un environnement pouvant être encombré d’obstacles fixes ou mobiles. A la no-tion déjà introduite d’espace des configurano-tions CS, il est nécessaire de rappeler celle d’espace des configurations libres, appelé CSf ree. Cet espace est le sous-espace de CS formé par toutes les configurations sans collision aussi appelées configurations libres. Une configuration libre est une configuration qui n’est pas rendue invalide par la pré-sence d’un obstacle. Un obstacle peut être un objet, qui va bloquer le mouvement du système, une limitation telle qu’une butée articulaire ou, suivant le problème, la vio-lation d’une contrainte. La planification de mouvement est la recherche d’un chemin dans CSf ree reliant deux points donnés de cet espace. Ce chemin devra éventuelle-ment être soumis à certaines contraintes, telles que des contraintes sur la vitesse ou la dynamique du système. Nous reprenons la classification de LaValle [LaV06][1] pour présenter les méthodes de planification de mouvement selon trois catégories princi-pales :

– les méthodes combinatoires ou méthodes exactes – les méthodes heuristiques

– les méthodes par échantillonnage de l’espace des configurations

[1] S.M. LaValle. Planning Algorithms. Cambridge University Press, Cambridge, U.K., 2006. Consul-table en ligne : http ://planning.cs.uiuc.edu/.

1.3 La planification de mouvement 21

1.3.1 Les méthodes exactes

Ces méthodes sont complètes, c’est-à-dire qu’elles déterminent en un temps fini s’il existe une solution au problème de planification et le cas échéant trouve cette solution en un temps fini. Elles s’appuient sur une représentation de CSf ree sans faire aucune approximation. La nécessité de construire une telle représentation rend les méthodes exactes uniquement applicables à des systèmes simples. Par ailleurs, les temps de cal-cul associés à l’usage de ces méthodes croissent exponentiellement avec le nombre de degrés de liberté du système étudié. Elles sont inutilisables, en pratique, pour des systèmes à plus de quatre degrés de liberté. Elles sont par conséquent inadaptées au problème de la manipulation dextre mais ont été employées avec succès pour des pro-blèmes tels que la navigation d’un robot mobile dans le plan. On compte parmi ces techniques des méthodes comme la décomposition cellulaire ou les graphes de visibi-lité [LaV06][1].

1.3.2 Les méthodes heuristiques

Ces méthodes sont basées sur l’optimisation d’une fonctionnelle, dont le but est d’amener le robot vers sa configuration finale désirée. Le choix de la fonctionnelle dépend du système considéré. Le problème de planification se ramène à un problème d’optimisation sous contrainte. Dans le cas de la méthode des potentiels, par exemple [Kha86][2], le but est de minimiser la distance du robot à sa position finale. On simule alors l’application d’une force fictive sur le robot qui le pousse vers sa destination. Des forces répulsives sont générées pour le tenir éloigné des obstacles.

Ces méthodes présentent des problèmes de convergence quand la fonctionnelle possède des minima locaux. C’est pourquoi, elles sont plutôt utilisées comme mé-thodes locales, c’est-à-dire pour relier deux configurations proches.

1.3.3 Les méthodes par échantillonnage

Les méthodes par échantillonnage réalisent une simplification de l’espace des confi-gurations en choisissant un nombre fini de conficonfi-gurations pour le représenter. L’espace des configurations approché est alors un ensemble de points de CS. L’algorithme de planification va déterminer comment ces points peuvent être reliés par des chemins. Cela mènera à l’obtention d’un graphe dont les noeuds seront des configurations de CSf ree et les arêtes des chemins dans ce sous-espace. La façon dont on échantillonne CS influe directement sur la façon dont se développe le graphe. C’est pourquoi des critères de qualité de l’échantillonnage ont été introduits. De manière générale, si on souhaite prélever un ensemble P de N échantillons d’un espace X = [0, 1]d ⊂ Rd,

[2] O. Khatib. Real-time obstacle avoidance for manipulators and mobile robots. International Jour-nal of Robotics Research, 5(1) :90–98, 1986.

trois critères peuvent être pris en considération pour caractériser la qualité de l’échan-tillonnage P [LBL04][1]:

– l’uniformité : l’échantillonnage couvre l’espace des configurations sans lais-ser de zones non ou trop couvertes. Il optimise alors une mesure d’uniformité comme la dispersion2ou la disparité3.

– la structure en treillis : la répartition des échantillons suit une structure particu-lière qui permet de trouver facilement les voisins d’un échantillon donné. – la qualité incrémentale : la qualité de la couverture de l’échantillonnage est

indépendante du nombre d’échantillons tirés. Autrement dit, si on interrompt l’échantillonnage on aura une répartition uniforme des points pour le nombre d’échantillons tirés.

Il existe deux familles de techniques d’échantillonnage : les échantillonnages dé-terministes et les échantillonnages probabilistes. Elles offrent des performances diffé-rentes au regard des trois critères énoncés. Le lecteur trouvera en annexe de ce docu-ment plus de détails sur ces types d’échantillonnage et leurs qualités et défauts. Pour résumer, l’échantillonnage déterministe offre de meilleures performances pour les trois critères énoncés plus haut. Cependant il est souvent moins simple à mettre en oeuvre et, surtout, si les différentes techniques d’échantillonnage déterministe existantes per-mettent de calculer des suites de points uniformes dans Rd, leur application à d’autres espaces topologiques n’est pas toujours possible. En robotique, les espaces auxquels on s’intéresse sont généralement des produits cartésiens de nombreux espaces donc de la forme E = E1 × E2 × . . . × En. Même si on sait échantillonner uniformé-ment chacun des Ei à l’aide de méthodes déterministes, on ne saura pas forcément échantillonner uniformément E. L’échantillonnage aléatoire ne présente pas ce dé-faut. Si on peut générer des suites aléatoires uniformes de points x1, x2, . . . , xn dans les espaces E1, E2, . . . , En on peut alors générer une suite aléatoire uniforme dans E = E1 × E2 × . . . × En en prenant simplement les points (x1, x2, . . . , xn). C’est ce qui rend les échantillonnages aléatoires particulièrement pratiques et a assuré leur grand succès, ainsi que le fait que les fonctions de génération de nombres aléatoires soient très répandues et faciles d’utilisation. Autour du principe de l’échantillonnage

2. La dispersion δ correspond au rayon de la plus grande boule ne contenant aucun échantillon et dépend de la métrique ρ choisie, une métrique étant une fonction définissant une distance entre les éléments d’un ensemble : δ(P, ρ) = sup

q∈X

{min

p∈Pρ(q, p)}

3. Soit R une famille de sous-ensemble de X (par exemple l’ensemble des boules) et µ une me-sure (généralisation de la notion de volume à un espace métrique quelconque), la disparité est alors D(P, R) = sup R∈R |PT R| N µ(X)µ(R)

où |·| s’applique à un ensemble dénombrable et vaut son nombre d’éléments.

[1] S.M. LaValle, M.S. Branicky, and S. R. Lindemann. On the relationship between classical grid search and probabilistic roadmaps. International Journal of Robotics Research, 23(7/8) :673–692, juillet/août 2004.