• Aucun résultat trouvé

La conduite des robots

N/A
N/A
Protected

Academic year: 2021

Partager "La conduite des robots"

Copied!
13
0
0

Texte intégral

(1)

HAL Id: inria-00000011

https://hal.inria.fr/inria-00000011

Submitted on 6 Jun 2005

HAL is a multi-disciplinary open access archive for the deposit and dissemination of sci- entific research documents, whether they are pub- lished or not. The documents may come from teaching and research institutions in France or abroad, or from public or private research centers.

L’archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des établissements d’enseignement et de recherche français ou étrangers, des laboratoires publics ou privés.

La conduite des robots

Alexis Scheuer

To cite this version:

Alexis Scheuer. La conduite des robots. Sciences et Info prépas, Editions POLE / Ellipses, 2000,

Transformations et fonctions, Représentation et Analyse, Hors-Série numéro 1, pp.148-161. �inria-

00000011�

(2)

Sciences & Info. prépa. Hors-Série Numéro 1 :

Transformations et fonctions, Représentation et Analyse ; pages 148-161.

Éditions POLE / Ellipses, octobre 2000.

La conduite des robots

Alexis Scheuer

Université Henri Poincaré & Loria Campus scientifique - B.P. 239 F-54506 Vandoeuvre-les-Nancy Cedex

[email protected] http://www.loria.fr/˜scheuer

Résumé

Les travaux présentés dans cet article ont pour objectif l’amélioration de la conduite de robots mobiles, que ceux-ci soient manœuvrables (c’est-à-dire capables de tourner sur place) ou que leurs déplacements soient plus contraints (comme ceux des voitures, par exemple). Pour atteindre ce but, nous avons commencé tout d’abord par une étude des travaux existant dans ce domaine.

Cette étude a permis de généraliser plusieurs approches mises en oeuvre pour des problèmes connexes, afin d’une part de définir et d’étudier un nouveau pro- blème de planification de mouvement et d’autre part de proposer une méthode pour résoudre ce problème. Enfin, les solutions obtenues par cette méthode ont été comparées aux solutions fournies par les méthodes classiques, afin d’expli- citer leur apport.

Mots clés — robotique mobile, plannification de trajectoires, système non-

holonome, optimalité.

(3)
(4)

La conduite des robots

Alexis Scheuer

Université Henri Poincaré & Loria Campus scientifique - B.P. 239 F-54506 Vandoeuvre-les-Nancy Cedex

[email protected] http://www.loria.fr/˜scheuer

Résumé

Les travaux présentés dans cet article ont pour objectif l’amélioration de la conduite de robots mo- biles, que ceux-ci soient manœuvrables (c’est-à-dire capables de tourner sur place) ou que leurs déplace- ments soient plus contraints (comme ceux des voi- tures, par exemple). Pour atteindre ce but, nous avons commencé tout d’abord par une étude des travaux existant dans ce domaine. Cette étude a permis de généraliser plusieurs approches mises en oeuvre pour des problèmes connexes, afin d’une part de définir et d’étudier un nouveau problème de planification de mouvement et d’autre part de proposer une méthode pour résoudre ce problème.

Enfin, les solutions obtenues par cette méthode ont été comparées aux solutions fournies par les mé- thodes classiques, afin d’expliciter leur apport.

1 Introduction

Dans les romans de science-fiction, l’an deux mille a souvent été dépeint peuplé d’une foule de robots, conçus pour nous soulager des tâches les plus in- grates. Dans la réalité, les seuls robots de ce genre sont ceux des chaînes de montage, qui ne savent que répéter un même geste dans un environnement réservé (c’est-à-dire dépourvu d’obstacle). Depuis un quart de siècle, les roboticiens cherchent à amé- liorer les capacités de ces robots, en les dotant de plus d’intelligence. Ces recherches ont principale- ment permis de mesurer la complexité de raisonne- ment nécessaire à la définition de robots génériques, c’est-à-dire capables de réagir à une large variété de situations. On préfère maintenant s’intéresser à des

robots spécialistes, ou du moins considérer sépa- rément chacune des capacités élémentaires néces- saires au robot.

Ainsi, de nombreux travaux se sont consacrés à la planification de mouvement, c’est-à-dire la ca- pacité de prévoir un déplacement dans un envi- ronnement encombré d’obstacles. Dans un premier temps, les robots mobiles ont été conçus de façon à être très manœuvrables : ces robots peuvent tour- ner sur place, ce qui leur permet (à condition de s’arrêter) de suivre une succession de segments de droite. Ensuite, une nouvelle génération de plani- ficateurs a fournis des chemins plus sophistiqués, contenant en plus des arcs de cercle. Ces chemins peuvent être suivis par les robots manœuvrables avec une vitesse plus importante que les précédents.

Ils peuvent aussi être suivis par des robots dont les déplacement sont plus contraints, en particulier les robots de type voiture, dont le rayon de giration est minoré (pour plus de détails, cf. § 3.2).

Le travail présenté dans cet article se situe dans

le prolongement de ces travaux : il propose une nou-

velle génération de planificateurs, basés sur des che-

mins encore améliorés. Après avoir présenté quelques

travaux portant sur ce sujet (§ 2), le nouveau pro-

blème de planification considéré est posé formel-

lement dans la section 3, puis ses propriétés sont

étudiées (par rapport à celles du problème de la

génération précédente) dans la section 4. Ensuite,

une solution permettant de résoudre ce problème

est proposée (§ 5), ainsi que les résultats obtenus

grâce à cette solution (§ 6). Enfin, cet article se ter-

mine par une synthèse des travaux présentés, suivie

par les perspectives qu’ils permettent d’envisager

(§ 7).

(5)

2 Étude de l’existant

Les chemins les plus utilisés actuellement pour des robots de type voiture sont constitués d’arcs de cercle reliés tangentiellement par des segments de droite [13, 8, 17, 26, 24]. Ces chemins sont les plus courts, qu’on se déplace uniquement en marche avant [5] ou en faisant des manœuvres (passage marche avant-marche arrière et réciproquement) [19].

Le principal inconvénient de ces chemins est qu’on ne peut pas les suivre précisément sans s’arrêter à chaque transition arc-segment (et réciproquement), du fait de la discontinuité de la courbure.

Deux solutions ont été proposées pour résoudre ce problème : effectuer un suivi « intelligent » per- mettant de ne pas s’arrêter (en s’écartant de ces chemins) ou les lisser afin d’obtenir des chemins à courbure continue. La première solution peut poser problème en présence d’obstacles : on risque alors d’effectuer des manœuvres inutiles. Quant à la se- conde solution, elle n’a pour l’instant pas été ap- pliquée avec un lissage pertinent : plusieurs types de courbes ont été proposées pour ce lissage (fonc- tions polynomiales pour les coordonnées [12, 18]

ou pour la courbure [10, 4], mais peu d’entre elles concernent les robots de types voiture [15, 25, 18].

Enfin, les travaux proposant des courbes adaptées aux modèles des robots considérés sont très rares, et portent uniquement sur des robots manœuvrables [14, 1].

Nos recherches se situent dans la lignée de ces derniers travaux : pour un nouveau type de robot manœuvrable et les robots de type voiture, nous avons proposé puis étudié une planification à cour- bure continue adaptée au modèle du robot.

3 Problème considéré

Le problème considéré dans cet article est ce- lui de la planification de mouvement : on souhaite déterminer, d’une manière automatique, comment un robot peut se déplacer d’une position à une se- conde, en évitant toute collision avec un ensemble d’obstacles (fixes ou mobiles) et en respectant des contraintes de déplacement. Dans ce cadre géné- ral, nous nous intéressons plus particulièrement aux déplacements de deux types de robots, présentés dans la section 3.1. Nous verrons comment ces ro- bots sont modélisés géométriquement et dynami-

quement (§ 3.2), le nouveau point de vue que four- nit cette modélisation (§ 3.3), comment les contraintes limitant leurs déplacements sont représentées (§ 3.4), et enfin comment s’exprime formellement le pro- blème de planification que nous devons alors ré- soudre (§ 3.5).

3.1 Plateformes expérimentales

Les deux types de robots auxquels nous nous sommes intéressés sont assez différents : le premier est un robot manœuvrable (il peut tourner sur place) alors que le second est de type voiture. Nous ver- rons cependant que leurs déplacements possèdent des points communs.

Le premier robot est un Nomad 200

TM

( c 1998 Nomadic Technologies, Inc.

1

), constitué d’une tou- relle cylindrique montée sur trois roues (cf. figure 1).

La particularité de ce robot est que ses roues pi- votent en restant parallèles à tout instant : on contrôle ce robot par le roulement et le pivotement de ses roues (commun aux trois). Il existe un autre type de robot manœuvrable, dont les deux roues princi- pales sont fixes par rapport au châssis, les autres roues étant libres. On contrôle un tel robot par le roulement (indépendant) de ces deux roues. Nous verrons (§ 4.2) l’influence de cette différence sur la nature des trajectoires optimales pour le robot.

Fig. 1 – un Nomad 200

TM

, un Cycab.

Le second type de robots que nous avons consi- déré est beaucoup plus générique : il s’agit de tous les robots mobiles dont le déplacement est simi- laire à celui d’une voiture. Un tel robot est bien sûr beaucoup plus contraint que les robots manœu- vrable : il ne peut résolument pas tourner sur place.

Nous verrons cependant que les trajectoires opti- males pour ce type de robot ont des points com-

1.http://www.robots.com

2

(6)

muns avec les trajectoires optimales pour les robots manœuvrables.

3.2 Modèles des robots

On suppose que nos robots se déplacent sur un sol plan. Pour les deux types de robots, nous al- lons considérer deux niveaux de modélisation : un aspect purement géométrique (suffisant pour la dé- tection de collision) et un dynamique (nécessaire pour le déplacement). À ces deux niveaux, on va dé- finir une configuration, c’est-à-dire un ensemble de paramètres permettant de représenter le robot. La configuration géométrique représente donc la posi- tion du robot, la configuration dynamique repré- sente sa position et sa vitesse.

Ainsi, pour le Nomad 200

TM

, un point (la pro- jection R de l’axe de la tourelle) suffit à caractériser sa position, alors qu’il faut rajouter l’orientation θ des roues et leurs vitesses respectivement de rou- lement v et de pivotement ω pour caractériser son déplacement (cf. figure 2). On a donc comme confi- gurations géométrique p

N

et dynamique q

N

:

p

N

= (x,y), q

N

= (x,y,θ,v,ω)

PSfrag replacements R

x y

θ φ

PSfrag replacements

R

x y

θ

φ

Fig. 2 – modèles des robots considérés.

Par contre, un point ne suffit pas pour carac- tériser la position d’un robot de type voiture : il faut au moins un point (par exemple le milieu R de l’axe des roues arrières) et une orientation θ (celle de l’axe principal du véhicule). Pour caractériser le déplacement de ce robot, il faut rajouter à cela la vitesse instantanée v de R et la courbure κ de la courbe qu’il suit (représentant l’orientation φ des roues avants) (cf. figure 2). On a donc :

p

V

= (x,y,θ), q

V

= (x,y,θ,v,κ)

3.3 Espace des configurations

Utilisant cette formalisation, on peut considérer l’ensemble des configurations comme un espace, ce- lui des configurations géométriques pouvant être plongé dans celui des configurations dynamiques (pour chaque type de robot). Un chemin correspond alors à une courbe dans l’espace des configurations géométriques, et une trajectoire à une courbe dans l’espace des configurations dynamiques.

On dit de plus qu’une configuration est libre lors- qu’elle correspond à une position pour laquelle le robot n’est pas en collision (ou en contact) avec un obstacle. Une trajectoire est donc sans collision si et seulement si elle correspond à une courbe dans l’espace des configurations dynamiques libres. Pla- nifier une trajectoire sans collision revient donc à déterminer une courbe dans l’espace des configura- tions dynamiques libres.

En pratique, cependant, le calcul de l’espace des configurations dynamiques libres est trop coûteux pour être effectué : les calculs de collision sont effec- tués après transposition de l’espace des configura- tions dans l’espace réel. L’espace des configurations est uniquement utilisé comme outil formel.

3.4 Trajectoires admissibles

Toute courbe de l’espace des configurations dy- namiques ne correspond pas forcément à une tra- jectoire admissible, c’est-à-dire que le robot peut suivre. Rappelons en effet que les déplacements de nos robots sont contraints. La première de ces contraintes, commune aux deux types de robot, est nommée contrainte d’orientation et s’écrit :

˙

x sin θ − y ˙ sin θ = 0

Elle signifie que les roues noires des schémas de la figure 2 doivent rouler sans glisser : leur orienta- tion θ contraint le mouvement du point R. Cette contrainte est dite non-holonome : elle limite le dé- placement du robot sans limiter les positions qu’il peut atteindre.

Plus généralement, le déplacement d’un robot, représenté par la dérivée de sa configuration dyna- mique, peut être contraint par une équation de la forme :

˙

q = f (q,u), q ∈ C, u ∈ U(q)

(7)

On distingue alors trois catégories de contraintes de déplacement :

– les contraintes holonomes, qui limitent l’espace C des configurations dynamiques q atteignables, – les contraintes non-holonomes portant sur les

paramètres de contrôle u (qui se bornent à li- miter les valeurs possibles, éventuellement en fonction de q) et

– les contraintes non-holonomes de déplacement proprement dites, qui détermine la variation de configuration en fonction de la configuration actuelle et du contrôle appliqué.

Dans notre cas, on a alors pour le Nomad 200

TM

: q

N

= (x,y,θ,v,ω), C

N

⊂ W

N

× S

1

× V

N

,

˙

q

N

= (v cos θ,v sin θ,ω,a,γ), u

N

= (a,γ) ∈ U

N

où W

N

est l’environnement dans lequel se déplace le robot, V

N

est l’intervalle des vitesses autorisées (de la forme [v

min

,v

max

]×[−ω

max

max

]) et U

N

celui des contrôles ([a

min

,a

max

] × [−γ

max

max

]).

De même, pour les robots de type voiture, on a : q

V

= (x,y,θ,v,κ), C

V

⊂ W

V

× S

1

× V

V

,

˙

q

V

= (v cos θ,v sin θ,vκ,a,σ), u

V

= (a,σ) ∈ U

V

où W

V

est l’environnement dans lequel se déplace le robot, V

V

est l’intervalle des vitesses autorisées (de la forme [v

min

,v

max

]×[−κ

max

max

]) et U

V

celui des contrôles ([a

min

,a

max

] × [−σ

max

max

]).

On remarque que les formulations sont tout à fait similaires, même si le contrôle se fait dans le premier cas sur les accélérations de roulement a et de pivotement γ, et dans le second cas sur l’accélé- ration de translation a et la variation de courbure σ.

3.5 Problème de planification

Le problème de planification que nous souhai- tons résoudre est le suivant. Étant données deux configurations dynamiques q

d

et q

f

et un ensemble d’obstacles O, on cherche une trajectoire (c’est-à- dire une courbe de l’espace C des configurations dynamiques) qui :

– relie la configuration de départ q

d

à la configu- ration finale q

f

,

– est admissible (et donc respecte les contraintes définies dans la section précédente), et – est sans collision avec les obstacles de O.

Nous allons proposer une méthode pour résoudre les deux instances de ce problème, concernant res- pectivement le Nomad 200

TM

et les robots de type voiture (§ 5). Auparavent, nous allons étudier les caractéristiques de ces deux instances, en ce qui concerne l’existence de solutions, et l’existence et la nature de solutions optimales.

4 Propriétés du problème

Nous nous intéressons donc ici à ces deux pro- priétés du problème : quand existe-t-il des solutions au problème de planification précédent (§ 4.1), et existe-t-il des solutions optimales et de quels types de courbe sont-elles constituées (§ 4.2)?

4.1 Commandabilité

Le Nomad 200

TM

pouvant tourner sur place, il est évidemment commandable, c’est-à-dire qu’il existe toujours une solution au problème de planification lorsque O est vide. Il est même commandable en temps petit, c’est-à-dire qu’il existe une solution à ce problème dès que les configurations à relier sont dans la même partie connexe de l’intérieur de l’en- semble des configurations libres [23, § 3.3]. Autre- ment dit, une solution existe dès qu’il est possible de relier les configurations par une trajectoire (pas forcément admissible mais) sans collision avec les obstacles : la prise en compte des contraintes de dé- placement n’a donc aucune incidence sur l’existence d’une solution [13].

Les mêmes propriétés ont été démontrées pour les robots de type voiture, lorsqu’on considère des trajectoires dont la courbure peut être disconti- nue. Ces trajectoires pouvant être modifiées afin de rendre continue leur courbure (en ajoutant des portions où la courbure est modifiée à l’arrêt), la commandabilité sans continuité de la courbure ga- rantit celle avec continuité de la courbure. Ce résul- tat peut aussi être obtenu directement [22, § 4.1]

[20, § II.2.1] en utilisant un théorème algébrique de commandabilité [16, th. IV.3].

4.2 Trajectoires optimales

L’existence de trajectoires optimales est un pro-

blème algébrique, et peut être démontré (entre autre)

par le théorème de Filippov [3, th. 5.1.ii]. Cette

4

(8)

existence est cependant conditionnée par une condi- tion : on doit imposer une distance minimale entre le robot et les obstacles, de manière à ce que l’es- pace des configurations libres soit un compact, et non un ouvert.

En revanche, la détermination des trajectoires optimales (en temps) est un problème trop com- plexe pour être résolu en totalité. En effet, on ne dispose que d’un théorème (algébrique, encore une fois) caractérisant des conditions que doivent né- cessairement vérifier ces trajectoires : le Principe du Maximum de Pontryagin, ou PMP [3, th. 5.1.i].

L’utilisation de ce théorème permet de déterminer les types de courbe dont les trajectoires sont com- posées, mais ne permet pas de savoir précisément quelle est la trajectoire optimale pour un problème donné.

En particulier, l’application du PMP dans les cas qui nous intéressent a permis de montrer que les trajectoires optimales correspondent à un contrôle bang-bang : les paramètres de contrôle (c’est-à-dire les accélérations ou la variation de la courbure) ont toujours des valeurs minimales, nulles ou maxi- males, la valeur nulle n’étant prise que lorsque la vitesse correspondante ou la courbure est elle-même minimale, nulle ou maximale.

Pour le Nomad 200

TM

, ce résultat généralise les résultats obtenus pour l’autre type de robot ma- nœuvrable [14], et permet d’affirmer que les tra- jectoires optimales sont constituées de segments de droite, d’arcs de cercle, de rotations sur place, de portions de clothoïde

2

et d’anti-clothoïde

3

, et de morceaux d’une courbe dont les coordonnées com- binent celles du cercle et de la clothoïde.

En ce qui concerne les robots de type voiture, les trajectoires optimales sont constituées de seg- ments de droite, d’arcs de cercle, de portions de clothoïde et de morceaux d’une spirale similaire aux clothoïdes. Ce résultat généralise celui obtenu pour un robot manœuvrable dont la dérivé de la cour- bure reste bornée [1, prop. 1]. Cependant, comme dans cet autre cas, les trajectoires optimales ne se- ront pas utilisables : elles sont constituées d’une in- finité de morceaux dès qu’elles contiennent (sans être limitées à) un segment de droite [1, prop. 2].

2. Une clothoïde est une courbe dont la courbureκvarie linéairement en fonction de son abscisse curvilignes[14].

3. Une anti-clothoïde est la courbe parcourue lorsque la vitesse de translation v varie linéairement et la vitesse de rotationωreste constante [14].

5 Solution proposée

Ayant étudié les caractéristiques du problème de planification qui nous intéresse, nous allons main- tenant en proposer une solution. Nous présenterons d’abord les trajectoires que nous avons utilisées et nous justifierons leur utilisation par rapport à celle des trajectoires optimales (§ 5.1). Nous montrerons ensuite comment de telles trajectoires sont calcu- lées localement, c’est-à-dire sans prendre en compte l’évitement d’obstacle (§ 5.2), puis comment cette planification locale est utilisée pour résoudre le pro- blème de planification (§ 5.3).

5.1 Trajectoires utilisées

Comme nous venons de le voir, les trajectoires optimales sont constituées d’une large variété de courbes de types différents. Par conséquent, le nombre de trajectoires possibles pour relier deux configura- tions données est très élevé. La possibilité de faire des manœuvres (passage de la marche avant à la marche arrière, et réciproquement) augmente en- core ce nombre. Résoudre le problème de planifi- cation risque donc d’être assez lent, ou même im- possible, les calculs étant trop complexes. Pour ré- soudre notre problème (et ce, en un temps raison- nable), nous avons préféré utiliser d’autres trajec- toires que les trajectoires optimales.

Tout d’abord, nous avons utilisé le principe de la décomposition chemin-vitesse [11] : nous choisissons un chemin le long duquel nous calculons un profil de vitesse, l’ensemble des deux définissant une trajec- toire. Ce principe (une application du classique "di- vide and conquer", « diviser pour régner ») consiste à décomposer le problème pour le simplifier.

Les chemins que nous avons choisis sont une gé- néralisation des chemins proposés d’abord par Du- bins dans le cas de la marche avant uniquement [5], puis par Reeds et Shepp lorsqu’on fait des ma- nœuvres [19]. Nous avons seulement rajouté à ces chemins des portions de clothoïde de manière à connecter les segments de droite et les arcs de cercle avec une variation continue de la courbure (cf. fi- gure 3).

Ainsi, les virages, constitués uniquement d’un arc

de cercle pour Dubins ou Reeds et Shepp, ont été

remplacés par des virages à courbure continue, ou

virages CC, formés d’une portion de clothoïde, un

arc de cercle (optionnel) et d’une portion de clo-

(9)

PSfrag replacements s κ

PSfrag replacements s

κ

Fig. 3 – profils de courbure (Dubins / CSCC).

thoïde symétrique à la première [21, § 4.2] [20,

§ VII.2.]. Nous appelons les chemins alors obte- nus des chemins sous-optimaux à courbure continue (CSCC)

4

: nous en avons montré la sous-optimalité, c’est-à-dire que la différence entre ces chemins et les chemins optimaux de mêmes extrémités peut être bornée [22, § 6.2] [20, annexe D.2].

Un chemin de ce type, ou formé d’une séquence de CSCC dans la même direction (avant ou arrière), étant obtenu, on calcule un profil de vitesse opti- mal le long de ce chemin. Ce profil commence par une partie dont l’accélération est maximale, jusqu’à atteindre la vitesse maximale ou le milieu du che- min, et finit par une partie symétrique (décéléra- tion maximale jusqu’à l’arrêt), la partie médiane (optionnelle) étant parcourue à vitesse maximale.

5.2 Planification locale

Il s’agit de calculer le plus court CSCC permet- tant de relier deux configurations données. Nous avons généralisé pour cela les méthodes utilisées pour calculer des chemins de Dubins ou de Reeds et Shepp. Le principal problème vient de la com- plexité des virages CC (à courbure continue). En ef- fet, ces méthodes utilisent le fait que, partant d’une configuration q

0

fixée (associant une position et un vecteur donnant l’orientation), un virage en arc de cercle mène forcément à une configuration q située sur un des deux cercles contenant la position de la configuration d’origine, et tangent au vecteur de cette configuration (cf. figure 4).

Dans le cas des virages CC, on a pu montrer que cette propriété se généralisait : si le virage est assez long (pour contenir un arc de cercle), sa courbure symétrique rend son tracé symétrique et, partant d’une configuration q

0

, sa configuration finale reste

4. De tels chemins sont utilisés pour le tracé des auto- routes ou des lignes de TGV.

PSfrag replacements

q

0

q

0

q q

Fig. 4 – virage en arc de cercle et virage CC.

sur un cercle, les vecteurs d’orientation des configu- rations initiale et finale faisant des angles opposés avec la tangente au cercle issue de la position de leur configuration (cf. figure 4). Dans le cas où le virage est trop court, on peut déterminer un vi- rage CC permettant de rejoindre le même cercle, les portions de clothoïde n’ayant pas alors une dé- rivée de la courbure maximale (en valeur absolue).

Le rayon des cercles et l’angle avec la tangente ne dépendent que des valeurs de κ

max

et de σ

max

, et tendent respectivement vers 1/κ

max

et 0, les valeurs correspondant aux cas de Dubins et de Reeds et Shepp, lorsque σ

max

tend vers l’infini, c’est-à-dire quand on admet des discontinuités de la courbure [21, § 4.2] [20, § VII.2].

Fig. 5 – deux exemples de CSCC.

La méthode de Dubins, concernant des déplace- ments en marche avant uniquement [21, § 4.3] [20,

§ VII.3], puis celle de Reeds et Shepp [6], a alors

été transformée en modifiant les cercles considérés

(changement du rayon et de la position) et considé-

6

(10)

rant non plus des droites tangentes au cercle mais celles les coupant en faisant un certain angle avec la tangente (cf. figure 5).

5.3 Méthode globale

Cette méthode de planification locale nous per- met donc de calculer un chemin admissible reliant deux configurations. Pour trouver un chemin ad- missible sans collision reliant ces deux configura- tions, il suffit de déterminer une séquence de confi- gurations intermédiaires permettant d’éviter les obs- tacles. Il existe pour cela plusieurs méthodes, dont certaines sont génériques (c’est-à-dire indépendantes de la planification locale).

Dans notre cas, nous avons utilisé une telle mé- thode, nommée Probabilistic Path Planning method [26] : il s’agit en fait de créer un graphe pour recou- vrir l’espace des configurations libres, les noeuds de ce graphe étant des configurations libres et ses arêtes des CSCC obtenus par la planification locale.

Le problème de planification est résolu lorsqu’on sait relier, grâce à la planification locale, les confi- gurations de départ et d’arrivée à deux noeuds de la même composante connexe du graphe : un parcours du graphe nous permet alors de relier les configu- rations de départ et d’arrivée par une succession de CSCC, dont on déduit une trajectoire.

Fig. 6 – exemples de successions de CSCC.

6 Résultats obtenus

Bien que la méthode utilisée soit la même pour les deux applications, les résultats expérimentaux ne peuvent être considérés ensemble. Nous allons donc présenter ceux-ci séparément, suivant qu’ils concernent les robots manœuvrables (§ 6.1) ou les robots de type voiture (§ 6.2).

6.1 Robots manœuvrables

Les seuls résultats que nous ayons obtenus pour le Nomad 200

TM

sont ceux concernant les caractéristi- ques du problème et montrant sa similitude avec celui concernant les robots de type voiture (cf. § 3

& 4). En effet, il n’existe pas à notre connaissance d’autres travaux étudiant la planification de tra- jectoires adaptées aux contraintes dynamiques du Nomad 200

TM

, ni de résultats auxquels nous au- rions pu comparer les notres. D’autre part, plu- sieurs problèmes techniques n’ont pas permis de mettre en pratique les résultats théoriques obte- nus : précision déplorable du contrôleur du robot (contrairement à ce que promettait le manuel de l’utilisateur), manque de temps et d’informations pour développer un autre contrôleur, défection mé- canique du robot [23], etc...

6.2 Robots de type voiture

Par contre, pour les robots de type voiture, nous avons pu comparer nos résultats avec ceux obtenus en utilisant la méthode de Dubins. La comparaison entre les résultats obtenus avec notre méthode et celle de Reeds et Shepp n’a pas encore été effectuée, mais elle a toutes les chances d’apporter les mêmes conclusions.

Les conclusions que nous présentons ici portent sur trois points : la complexité de la méthode de planification utilisée et la qualité des chemins obte- nus, représentée par leur longueur et la facilité avec laquelle ils sont suivis [22, § 6] [20, § VIII.2].

6.2.1 Complexité du calcul

La méthode de planification locale que nous avons

utilisée n’est qu’une généralisation de celles de Du-

bins et de Reeds et Shepp. Elles sont toutes d’ordre

constant, ce qui implique que les planifications glo-

(11)

bales sont de même ordre, quelle que soit la plani- fication locale qu’on utilise.

Expérimentalement, on a pu constater un rap- port compris entre 1,5 et 2 entre le temps de calcul des CSCC sans manœuvre et les chemins de Du- bins, sur un millions d’exemples tirés aléatoirement.

Nous allons voir que cette légère perte de temps est largement compensée par l’amélioration du suivi.

6.2.2 Longueur des chemins

Nous avons déjà vu que les CSCC sont sous- optimaux. Cependant, la différence de longueur entre les CSCC et les chemins optimaux n’a pu qu’être largement majorée, du fait de la complexité des cal- culs. Cette différence peut aussi être majorée par la différence de longueur entre les CSCC et les che- mins de Dubins. Cette dernière ne peut être cal- culée dans tous les cas, mais elle peut être évaluée expérimentalement pour un éventail de cas. Sur le millions d’exemples dont nous avons parlé, nous avons constaté que 82% des différences n’excèdent pas 10% de la longueur du chemin de Dubins, bien que le ratio des longueur puisse tendre vers l’infini pour certains cas pathologiques (le ratio maximum constaté sur ce millions d’exemples est 8,3). Il est important de noter que cet allongement du chemin ne fait qu’anticiper celui du chemin réellement suivi par le robot lorsqu’on ne souhaite pas s’arrêter.

6.2.3 Qualité du suivi

Les points précédents sont largement compen- sés par l’amélioration du suivi constatée entre les CSCC et les chemins de Dubins. Cette améliora- tion a été évaluée en mesurant l’écart entre le che- min planifié et celui réellement suivi, en utilisant une méthode classique de suivi [9]. Cet écart est divisé par près de 100 lorsqu’on se déplace à vi- tesse réduite (1 m.s

1

), et reste divisé par plus de 15 lorsque la vitesse s’accroît (3 m.s

1

). Nous avons même constaté, à cette dernière vitesse, des cas où le chemin de Dubins engendre une situation de blo- cage, alors que le CSCC est suivi avec une précision approchant 15 cm.

Ce planificateur a été utilisé, en collaboration avec un contrôleur [7], pour piloter un véhicule ex- périmental (cf. figure 7).

Fig. 7 – une Ligier.

7 Conclusion et perspectives

Dans cet article, nous avons montré comment il est possible d’améliorer la conduite de robots mo- biles, que ceux-ci soient très manœuvrables ou que leur déplacements soient plus limités (comme ceux d’une voiture, par exemple). Nous avons pour cela utilisé de nombreux outils mathématiques (algèbre, analyse et géométrie), dont certains spécifiques au domaine considéré (la robotique). Un nouveau pro- blème de planification de mouvement ayant été dé- fini, ces outils ont permis de caractériser ce pro- blème (par rapport aux problèmes classiques), en ce qui concerne l’existence de solutions et l’existence et la nature de solutions optimales. Ils ont aussi permis de proposer une méthode pour résoudre ce problème, de façon à obtenir une solution dont la qualité a été comparée à celle des solutions clas- siques.

Les perspectives actuelles ouvertes par ce travail sont les suivantes :

– on envisage tout d’abord de remplacer les clo- thoïdes par d’autres courbes, afin d’obtenir des trajectoires infiniment dérivables et non sim- plement C

2

; le seul problème concerne le choix de ces courbes, le principe de planification res- tant le même ;

– on peut aussi vouloir améliorer la planification locale ; pour l’instant, elle construit plusieurs chemins reliant deux configurations et choisit le plus court d’entre eux ; il est possible de construire une partition de l’espace des confi- gurations en fonction du type du chemin le plus court [2] ;

– on pourra enfin essayer de nouvelles méthodes

de planification globale, afin d’en trouver des

plus rapides ; en particulier, on pourra ne prendre

8

(12)

en compte que progressivement les contraintes de déplacement [24].

Remerciements : cet article présente une syn- thèse des recherches que j’ai effectuées au cours de ma thèse de doctorat, qui s’est déroulée dans le pro- jet Sharp, commun au laboratoire Gravir de l’Imag et à l’Inria Rhône-Alpes, ainsi que de celles de mon stage post-doctoral dans le “Vision and Control”

Strategic Research Program de l’école de Mecha- nical and Production Engineering de la Nanyang Technological University, à Singapour. Je tiens à remercier toutes les personnes qui ont rendu ces re- cherches à la fois passionnantes et agréables.

Références bibliographiques

[1] J.-D. Boissonnat, A. Cerezo, and J. Leblond. A note on shortest paths in the plane subject to a constraint on the derivative of the curvature.

Research Report 2160, Inst. Nat. de Recherche en Informatique et en Automatique, January 1994. http://www.inria.fr/RRRT/RR-2160.

html.

[2] X.-N. Bui, P. Souères, J.-D. Boissonnat, and J.-P. Laumond. Shortest path synthesis for Dubins non-holonomic robot. In Proc. of the IEEE Int. Conf. on Robotics and Automation, volume 1, pages 2–7, San Diego, CA (US), May 1994. http://dbserver.laas.fr/pls/LAAS/

publis.rech_doc?langage=fr&clef=9245.

[3] L. Cesari. Optimization–theory and applica- tions, volume 17 of Application of Mathema- tics. Springer-Verlag, 1983.

[4] H. Delingette, M. Hébert, and K. Ikeu- chi. Trajectory generation with curvature constraint based on energy minimization.

In Proc. of the IEEE-RSJ Int. Conf. on Intelligent Robots and Systems, volume 1, pages 206–211, Osaka (JP), November 1991. http://www-sop.inria.fr/epidaure/

personnel/delingette/biblio1.html#

delingette_iros.

[5] L. E. Dubins. On curves of minimal length with a constraint on average curvature, and with prescribed initial and terminal positions and tangents. American Journal of Mathema- tics, 79:497–516, 1957.

[6] Th. Fraichard, A. Scheuer, and R. Des- vigne. From Reeds and Shepp’s to continuous-curvature paths. In Proc. of the IEEE Int. Conf. on Advanced Robo- tics, pages 585–590, Tokyo (JP), Octo- ber 1999. http://www.loria.fr/~scheuer/

Publis/#fraichard_etal_icar_99.

[7] Ph. Garnier and Th. Fraichard. A fuzzy motion controller for a car-like ve- hicle. In Proc. of the IEEE-RSJ Int.

Conf. on Intelligent Robots and Systems, vo- lume 3, pages 1171–1178, Osaka (JP), Novem- ber 1996. http://emotion.inrialpes.fr/

fraichard/publications.

[8] P. E. Jacobs and J. Canny. Planning smooth paths for mobile robots. In Proc. of the IEEE Int. Conf. on Robotics and Automation, vo- lume 1, pages 2–7, Scottsdale, AZ (US), May 1989.

[9] Y. Kanayama, Y. Kimura, F. Miyazaki, and T. Noguchi. A stable tracking control method for a non-holonomic mobile robot. In Proc.

of the IEEE-RSJ Int. Conf. on Intelligent Ro- bots and Systems, volume 3, pages 1236–1241, Osaka (JP), November 1991.

[10] Y. Kanayama and N. Miyake. Trajectory ge- neration for mobile robots. In Proc. of the Int. Symp. on Robotics Research, pages 16–23, Gouvieux (FR), 1985.

[11] K. Kant and S. Zucker. Toward efficient trajectory planning: the path-velocity decom- position. Int. Journal of Robotics Research, 5(3):72–89, Fall 1986.

[12] K. Komoriya and K. Tanie. Trajectory design and control of a wheel-type mobile robot using B-spline curve. In Proc. of the IEEE-RSJ Int.

Conf. on Intelligent Robots and Systems, pages 398–405, Tsukuba (JP), September 1989.

[13] J.-P. Laumond. Feasible trajectories for mo- bile robots with kinematic and environment constraints. In Proc. of the Int. Conf. on In- telligent Autonomous Systems, pages 346–354, Amsterdam (NL), December 1986.

[14] J.-P. Laumond, P. E. Jacobs, M. Taïx, and R. M. Murray. A motion planner for non- holonomic mobile robots. IEEE Trans. Robo- tics and Automation, 10(5):577–593, October 1994. http://dbserver.laas.fr/pls/LAAS/

publis.rech_doc?langage=FR&clef=6903.

(13)

[15] R. Liscano and D. Green. Design and im- plementation of a trajectory generator for an indoor mobile robot. In Proc. of the IEEE- RSJ Int. Conf. on Intelligent Robots and Sys- tems, pages 380–385, Tsukuba (JP), Septem- ber 1989.

[16] C. Lobry. Contrôlabilité des systèmes non linéaires. In I. D. Landau, editor, Outils et modèles mathématiques pour l’automatique, l’analyse de systèmes et le traitement du si- gnal, volume 1, pages 187–214. CNRS, 1981.

[17] B. Mirtich. Using skeletons for nonholonomic motion planning. Research Report ESRC 92- 16/RAMP 92-6, Department of Electrical En- gineering and Computer Science, University of California, Berkeley, June 1992.

[18] O. Pinchard, A. Liégeois, and F. Pougnet. Ge- neralized polar polynomials for vehicle path generation with dynamic constraints. In Proc.

of the IEEE Int. Conf. on Robotics and Auto- mation, volume 1, pages 915–920, Minneapo- lis, MN (US), April 1996.

[19] J. A. Reeds and L. A. Shepp. Optimal paths for a car that goes both forwards and ba- ckwards. Pacific Journal of Mathematics, 145(2):367–393, 1990.

[20] A. Scheuer. Planification de chemins à courbure continue pour robot mobile non- holonome. Thèse de doctorat, Inst. Nat.

Polytechnique de Grenoble, Grenoble (FR), January 1998. http://www.loria.fr/

~scheuer/Publis#scheuer_these_98.

[21] A. Scheuer and Th. Fraichard. Continuous- curvature path planning for car-like vehicles.

In Proc. of the IEEE-RSJ Int. Conf. on In- telligent Robots and Systems, volume 2, pages 997–1003, Grenoble (FR), September 1997.

http://www.loria.fr/~scheuer/Research/

Publis#scheuer_fraichard_iros_97.

[22] A. Scheuer and Ch. Laugier. Planning sub- optimal and continuous-curvature paths for car-like robots. In Proc. of the IEEE-RSJ Int.

Conf. on Intelligent Robots and Systems, vo- lume 1, pages 25–31, Victoria, BC (CA), Octo- ber 1998. http://www.loria.fr/~scheuer/

Publis#scheuer_laugier_iros_98.

[23] A. Scheuer and M. Xie. Continuous-curvature trajectory planning for manoeuvrable non- holonomic robots. In Proc. of the IEEE-

RSJ Int. Conf. on Intelligent Robots and Sys- tems, volume 3, pages 1675–1680, Kyongju (KR), October 1999. http://www.loria.fr/

~scheuer/Publis/#scheuer_xie_iros_99.

[24] T. Siméon, S. Leroy, and J.-P. Laumond. Com- puting good holonomic collision-free paths to steer nonholonomic mobile robots. In Proc. of the IEEE-RSJ Int. Conf. on In- telligent Robots and Systems, volume 2, pages 1004–1009, Grenoble (FR), September 1997. http://dbserver.laas.fr/pls/LAAS/

publis.rech_doc?langage=FR&clef=19391.

[25] S. J. Singh and D. H. Shin. Position based path tracking for wheeled mobile robot. In Proc. of the IEEE-RSJ Int. Conf. on Intelli- gent Robots and Systems, pages 386–391, Tsu- kuba (JP), September 1989.

[26] P. Švestka and M. H. Overmars. Probabi- listic path planning. Technical Report UU- CS-1995-22, Utrecht University, Utrecht (NL), May 1995. http://www.cs.ruu.nl/~markov/

research.html.

10

Références

Documents relatifs

Dans les travaux consacrés à la classification multi-labels en flux présentés dans cet article, nous avons proposé un nouveau modèle pour tenter d’améliorer conjointement

Toutefois, malgré l’intérêt de ce type de recherches, le registre des comportements étudié était loin d’être hautement problématique pour les sujets. Dans cette

Figure 1.7 Photo et graphe d'agencement d'un robot parallèle à deux degrés de liberté (Mitsubishi) Les robots parallèles ont la réputation d'être précis et sont capables

Après avoir étudié et présenté un ensemble de travaux proposant des paradigmes de navigation temporelle, nous avons proposé un modèle visant à représenter deux échelles de

Des travaux de recherches récents ont proposé un cadre général de classification pro- fond e (DeepCluster) pour intégrer certaines méthodes de classification classiques,

MOD´ ELISATION D’UN ROBOT MOBILE La commande autonome d’une flotte de robots mobiles doit prendre en compte la trajectoire d´ esir´ ee, utilis´ ee comme un cadre de r´ ef´

Nous avons proposé deux prototypes pour un nouveau type de véhicule avec des propriétés améliorées, le premier prototype consiste a étudié et modélisé un drone hybride air-sol

Pour un tel scénario, le type d’interrogation auquel nous souhaiterions permettre au robot de répondre sont : qui peut faire telle ou telle action, dans quel