• Aucun résultat trouvé

La generation des mouvements executables

5.4 L'algorithme de plani cation locale

5.4.1 Representation de RS A

5.4.1.1 Le graphe de recherche G i

Ainsi que nous l'avons introduit precedemment, la determination de la so-lution ,i est e ectuee par la recherche dans un graphe G

i correspondant a une discretisation du sous-espace RS

A. Celui-ci est represente sous forme d'un en-semble de cellules identiques CL

L'algorithme de plani cation locale 95 des domaines de de nition des 5 parametres (x;y; ;v;!). En plus de la speci ca-tion de ses dimensions (i.e. du taux de discretisaspeci ca-tion selon les di erents axes de

RS

A), chaque celluleCLk est caracterisee par un etat reduit sck centre en CLk. Nous considererons dans la suite que si;p (etat reduit du robot en qi;p) concide avec le centre de la cellule qui le contient. Ce choix permettra pour un taux de discretisation donnex ety de determiner la repartition des di erentes positions (xck;yck) des centres des cellules deRS

A. Les termesxety seront supposes egaux dans la suite.

Pour un mouvement nal ,i sans manuvre (i.e. vitessesv(0) enqi;p et vienqi

de m^eme signe), la cellularisationCLdeRS

A ne comprendra que les etatss dont la vitesse de translationv est de m^emesigne quev(0), i.e.v2 [0;Vmax] siv(0) 0 ou v 2 [,Vmax;0] si v(0)  0. Dans le cas ou qi;p correspond initialement a un point de rebroussement et que les vitesses enqi;petqisont de signes contraires,CL

sera constituee de l'ensemble des cellules correspondant a des vitessesvcomprises entrev(0) etVmax. En n, les valeurs sur les axes deset!sont supposees varier respectivement sur les intervalles [0;2[ et [,_max;_max].

La connectivite de RS

A est capturee dans un graphe direct Gi ou chaque nud correspond a une celluleCLk. Deux cellules CLj et CLk sont adjacentes dansGi s'il existe une portion de trajectoire executable et continue ,jk ramenant le robot d'un etat reduit srj de CLj a un autre etat srk appartenant a CLk. En plus de l'information sur le cha^nage entre les nuds CLj etCLk, il sera associe a celui-ci la description complete de la trajectoire ,jk (i.e. sequence des etats completsE du robot) et l'etat des elements du terrain quand le robot a atteint

srk. Cette derniere information n'est maintenue que si le robot a prealablement franchi une region a surface deformable ou comportant des elements mobiles.

5.4.1.2 Consideration d'un espace de travail local

L'espace de travail du robot considere localement est limite a une region

Wi;local de l'environnement W contenant les deux con gurations extremites qi;p

etqi. La restriction de la recherche de ,i par rapport a un espace de travail local a pour but d'eviter de generer des mouvements solutions ,i eloignant le robot de

qi;p et qi.

Dans l'implantationactuelle de l'algorithme,cette region est consideree comme etant delimitee par un cercle centre au point milieu de (xi;p;yi;p) et (xi;yi) (coor-donnees deqi etqi;p dans le plan horizontal deF

W) et de rayon egal a la valeur:

d=2 +hxy +L+p

2x=2 +

oudcorrespond a la distance entre (xi;p;yi;p) et (xi;yi),hxy est le rayon deV(qi),

 est considere comme nul dans le cas ou q

i;p ne correspond pas a un point de manuvre. Dans le contraire, ce terme est choisi arbitrairement egal ad=2. Dans la suite, uniquement les cellulesCL

k telles que les positions centres (x c k

;y c k) sont a une distance inferieure a d=2 +h

xy +p 2 x =2 + du point milieu de W i;local seront retenues. Ainsi, W

i;local sera constitue des obstacles, de la region du terrain et de ses composants mobiles intersectant cette zone. Le calcul de distance pour la de-termination de la repartition du contact entre A et T et la veri cation de la non-collision aux obstacles seront directement e ectues par rapport aux sous-ensembles des spheres et disques descriptifs de ces di erentes entites. Nous conti-nuerons a noter dans la suite par (T) le modele physique de la region consideree du terrain et des composants mobiles a sa surface.

5.4.2 Exploration de G i

L'exploration de G

i est basee sur un algorithme de typeA

 tel qu'il a ete pre-sente dans le chapitre 3 lors de la generation des sous-buts dans l'espaceC

sear ch. Nous ne reviendrons pas dans ce chapitre sur les details de cet algorithme. A l'ins-tar du niveau geometrique, la fonction de co^ut correspond a la distance parcourue par le robot sur le terrain, et l'heuristique a la distance geodesique correspondant a la longueur du plus court chemin sans manuvre de type CSC menant le ro-bot de sa con guration courante au but intermediaireq

i. Plus precisement, nous utiliserons la m^eme approximation faite dans la section 3.5 tenir compte de la convergence vers un voisinage deq

i. Les chemins generes par ce calcul serviront en plus comme parametres de determination des accelerations nominales du robot pendant l'exploration de G

i.

L'algorithme s'arr^ete si une cellule correspondant a l'estimation de l'etat du robot en q

i est atteinte, ou qu'aucun nud ne peut pas ^etre developpe dans G i. Aussi, a chaque increment de temps t, l'algorithme veri e si A se trouve a une con guration situee au voisinage deq

i en veri ant les estimations sur les vitesses. Dans le cas ou il y a convergence vers q

i, le triplet (,i ;U i ;T , i) constitue de la trajectoire solution, de la sequence des couplesU, et la duree totale d'execution de ,i est retourne au niveau de generation des sous-buts de l'algorithme general de plani cation. Le nudN(q

i) initialement cree lors de la generation deq

i est a son tour developpe dans le graphe de rechercheGen considerant comme con guration de depart la con guration q

i;r, extremite nale de ,i. Dans le cas ou q

i ne peut pas ^etre atteinte, l'algorithme retourne la trajectoire ramenant le robot du sous-but initial q

i;p a la con guration la plus proche de q i

susceptible de pouvoir generer au moins un successeur dans le graphe des sous-but

L'algorithme de plani cation locale 97

5.4.3 Developpement des nuds de

G i

Nous decrivons dans cette section le principe du processus de developpement des nuds de G

i, ce qui correspond a la phase de passage d'une cellule de CL

a une autre. Nous supposerons tout au long de l'exploration de G

i que chaque cellule ne peut ^etre atteinte par A qu'au plus une fois. Soit CL

k la cellule cou-rante de l'algorithme de plani cation locale, et soit ,jk la portion de trajectoire precedemment calculee lors du developpement du nud correspondant a une cel-lule adjacente a CL

j et ramenant A jusqu'a celle-ci ( gure 5.3). Soit s r k l'etat extremite nale de ,jk.

Fig. 5.3 - Trajectoires locales correspondant au developpement des nuds de G i.

Le developpement du nud correspondant aCL

k est e ectue en selectionnant a partir de l'analyse de l'etat completE

r

k correspondant a s r

k un ensemble d'ac-celerations nominales (~_v ;!~_) bornees qui guideront le passage du robot de CL

k

a des cellules voisines non encore explorees. Ainsi, il y aura dans le meilleur des cas autant de cellules atteignables a partir de CL

k que d'accelerations a consi-derer quand le robot est en s

r

k. Supposons que l'origine du temps concide avec l'instant 0 quand A est en s

r

k et supposons que l'acceleration courante choisie est donnee par un vecteur (~_v

k ;!~_

k). La generation de mouvements deA pendant chaque increment du tempsts'appuie sur le schema presente dans la section 5.3, i.e. transformation de (~_v

k ;!~_

k) en un vecteur de couplesU et simulation du mou-vement de A sur le terrain. Ce processus est itere jusqu'a l'acces a un etat s

r k

situe dans une nouvelle celluleCL

l ou violation de l'une des contraintes d'execu-tion considerees. La validite des etats du robot par rapport a celles-ci est testee en considerant les parametres de l'etat complet de A obtenus apres la phase de simulation de mouvement.