21 Feb 2017 . Manipulation planning for documented objects
Joseph Mirabel
Manuscript under review

Chapter 5 . Results

Le grand intérêt de cette thèse est l’approche abstraite du problème qui permet de couvrir un grande variété de cas. Ceci est mis en avant dans ce chapitre au travers d’exemples variés.

Humanoid Path Planner

Les exemples ci-après utilisent la librairie open-source Humanoid Path Planner. Les algorithmes présentés dans cette thèse, ainsi que les travaux de recherche d’autres membres de l’équipe Gepetto, y ont été intégrés.

Cette librairie traite le problème de planification de mouvement. Les principales caractéristiques sont les suivantes:

Comparison with OMPL

Le tableau suivant compare HPP avec OMPL, une librairie de planification de mouvement couramment utilisée. La vidéo suivante montre les benchmarks utilisés pour la comparaison.

{% youtube 01K_nmax9E0?start=237 class=”center-block” poster=/img/thesis/posters/ompl_bench.jpg %}


scenario min time (s) avg time (s)
HPP-D HPP-C OMPL OMPL-NR HPP-D HPP-C OMPL OMPL-NR
Pipedream-Ring 0.065 0.043 0.458 0.618 1.24 2.05 3.00 4.23
Abstract 0.159 0.408 23.5 14.3 47.6 34.4 107 107
Cubicles 0.049 0.024 0.096 0.118 0.271 0.130 0.277 0.329
scenario max time (s) success rate (%)
HPP-D HPP-C OMPL OMPL-NR HPP-D HPP-C OMPL OMPL-NR
Pipedream-Ring 6.52 7.35 10.4 14.1 100 100 100 100
Abstract 258 178 297 270 94 94 96 98
Cubicles 0.902 0.946 0.665 1.06 100 100 100 100
scenario avg number of nodes time-out (s)
HPP-D HPP-C OMPL OMPL-NR
Pipedream-Ring 2283 2452 16100 22681 20
Abstract 11927 10807 177914 181427 300
Cubicles 495 302 261 307 20

Programmation de robot

Un prototype d’interface de programmation de robot a été développé. La vidéo suivante a été réalisée avec HPP en suivant la méthode détaillé ici

{% video http://projects.laas.fr/gepetto/uploads/Members/fiad-full-sequence.mp4 560px 315px center-block %}

Bras manipulateurs

Planification de réarrangement

Le robot Baxter intervertit la position de boîtes, avec un puis deux bras. Ces problèmes ne sont pas monotones, c’est-à-dire qu’il n’existe pas de solution où chaque objet est manipulé au plus une fois, les uns après les autres. Cet exemple montre la capacité du planificateur à trouver des positions de boîtes intermédiaires ainsi qu’à considérer des manipulations simultanées.

{% youtube kptp-zZw634?start=4&end=34 class=”center-block” poster=/img/thesis/posters/baxter_3box.jpg %}

Inférence

Le robot PR2 doit prendre un objet à l’intérieur d’un tiroir. La contrainte de stabilité assure que l’objet se déplace quand le tiroir est déplacé. Elle à l’avantage d’être complètement indépendante des objets considérés.

La séquence de tâche n’est pas donné. Le planificateur découvre une solution où le robot ouvre le tiroir. Cet exemple montre la capacité d’exploration du planificateur. Il est capable de considérer des objets à la même position au début et à la fin.

{% youtube iRJtmt7RzDM class=”center-block” %}

Robots humanoïdes

Mouvement de marche quasi-statique

Le problème de locomotion peut être modélisé comme un problème de manipulation, comme le montre cet exemple. La position des pieds au sol représente un feuilletage. Ce problème est donc sujet au problème de feuillates croisés. La première vidéo utilise un critère de statibilité simple reposant sur le fait que les pieds sont à hauteur constante. La second vidéo utilise le critère de stabilité détaillé plus tôt.

{% video http://homepages.laas.fr/jmirabel/raw/videos/hrp2_step_over.mp4 560px 315px %} {% video http://homepages.laas.fr/jmirabel/raw/videos/hrp2_stairs.mp4 300px 315px %}

Romeo tenant une bannière

Cet exemple illustre également un cas avec feuilletages croisés.

{% youtube kptp-zZw634?start=53 class=”center-block” poster=/img/thesis/posters/romeo_placard.jpg %}

Saisie derrière une porte

Dans cet exemple, le planificateur infère qu’il doit ouvrir la porte du placard pour attraper l’objet. L’équilibre du robot est géré en deux étapes. Tout d’abord, on calcule un chemin pour le robot glissant, comme sur la vidéo ci-dessous. Ensuite, le chemin peut être transformé en un chemin faisable dynamiquement en utilisant la méthode détaillé ici.

{% youtube kptp-zZw634?start=34&end=50 class=”center-block” poster=/img/thesis/posters/romeo_fridge.jpg %}


  1. \(SO(3)\) est représenté par des quaternions, avec les opérateurs différence et addition comme définis dans le chapitre 2. Les opérations de différence entre deux quaternions et d’addition d’une vitesse à un quaternion