• Aucun résultat trouvé

4.4 Planification de trajectoire avec ordonnancement

4.4.3 Seconde ´ etape de planification

egale `a la trajectoire directe (i.e. qeib(t, τk) = qib(t, τk)) comme le montre la Fig. 4.6 avec la condition CFik = ∅.

Remarque 4.3 Notons que les trajectoires intuitives g´en´er´ees vers chaque ressource repr´esentent approximativement les intentions de l’agent en termes d’´evitement de collision global. C’est principale-ment pour cette raison que l’ordonnanceprincipale-ment est appliqu´e durant cette premi`ere ´etape. En effet, de cette mani`ere, si un agent a beaucoup de conflits de collisions `a ´eviter vers une ressource, il pourra en choisir une autre o`u il y a peu de conflits voire aucun.

Remarque 4.4 Dans la remarque pr´ec´edente, le terme approximativement est utilis´e pour justifier que les trajectoires intuitives ne permettent que d’´eviter des trajectoire partielles. En effet, pour chaque conflit, l’intervalle d’´evitement Iij assure l’´evitement autour du conflit mais l’´evitement de collision au voisinage de cet intervalle n’est pas assur´e. De plus, chaque agent i n’a aucune connaissance sur la mani`ere dont les autres agents ont ´evit´e les conflits, ce qui peut aussi engendrer des r´epercussions en termes de collisions. Par cons´equent une seconde ´etape de planification est n´ecessaire pour assurer que la trajectoire planifi´ee par chaque agent soit sans collision.

4.4.3 Seconde ´etape de planification

Suite `a la Remarque 4.4, l’´etape 2 du planificateur de trajectoire consiste `a ajuster la trajectoire intuitive afin d’assurer l’´evitement de collisions. Le probl`eme OPT2est donc r´esolu apr`es l’´etape 1. Pour cela, tous les voisins doivent se transmettre leur trajectoire intuitive `a l’instant τk d`es que l’´etape 1 s’ach`eve. Ensuite, pour chaque agent i∈ A, les trajectoires intuitives des voisins j ∈ HPi sont utilis´ees pour g´en´erer la trajectoire finale sans collision, obtenue par la r´esolution du probl`eme d’optimisation OPT2.

Pour chaque agent i, la g´en´eration de la trajectoire finale sans collision qi(t, τk) vers la ressource choisie b = crik, illustr´ee par la Fig. 4.9, se fait par la r´esolution de l’algorithme d’optimisation ci-dessous :

OPT2 : Lorsque le probl`eme OPT1 est r´esolu, pour chaque agent i∈ A, consid´erons le second probl`eme qui consiste `a planifier la trajectoire finale sans collisions qi(t, τk) `a l’instant τk. Puisque la ressource a ´et´e choisie lors de la premi`ere ´etape, l’objectif est d’arriver le plus tˆot possible en minimisant le temps de transport T Tik, qui se traduit par le crit`ere d’optimisation suivant :

min

qi(t,τk),Ti,f in

Figure 4.9 – Illustration de la trajectoire finale qi(t, τk) par rapport `a la trajectoire intuitiveqei(t, τk).

Ce probl`eme doit, similairement au pr´ec´edent, respecter les contraintes physiques (4.4.9), les conditions aux limites (4.4.5) et les contraintes manufacturi`eres (4.4.10). Cependant, au lieu d’´eviter les conflits, l’´evitement de collisions inter-robots doit ˆetre respect´e. Ainsi, la contrainte (4.4.11) est remplac´ee par les deux contraintes coupl´ees suivantes :

• D´eviation maximale permise : Chaque agent doit rester `a un voisinage ξ de sa trajectoire intuitive, se caract´erisant par :

kqi(t, τk)−qei(t, τk)k ≤ f(t), ∀t ∈ [τk, Ti,f in] (4.4.13)

o`u la fonction f (t) d´epend du voisinage ξ et est con¸cue telle que :

         f (t) = ξ ,∀t ∈ [τk, τk+ Tp] f (t) = ξ· (1 + Card(HPi)/2) ,∀t ∈hτk+ T Ti(cr ik), Ti,f ini f0(t) > 0 ,∀t ∈hτk+ Tp, τk+ T Ti(cr ik) i (4.4.14)

o`u Tp > Tc repr´esente l’horizon de faible d´eviation de la trajectoire finale planifi´ee qi(t, τk). Il permet que celle–ci soit contrainte pour ˆetre au maximum `a une distance ξ de la trajectoire intuitive qei(t, τk) sur t∈ [τk, τk+ Tp]. f0(t) repr´esente la d´eriv´ee de la fonction f par rapport au temps afin que l’in´egalit´e f0(t) > 0 permette que la fonction f (t) soit strictement croissante sur t∈ h

τk+ Tp, τk+ T Ti(cr

ik)

i

. T Ti(cr

ik)est le temps de transport li´e `a la trajectoire directe qi(cr

ik)(t, τk) qui est une borne inf´erieure du temps de transport, i.e. Ti,f in = τk+ T Ti > τk+ T Ti(cr

ik) o`u

crik est la ressource choisie lors de la premi`ere ´etape de planification. La Fig. 4.10 illustre cette fonction f (t) pour diff´erentes valeur de Card(HPi).

Figure 4.10 – Exemple de la fonction f (t) pour un nombre diff´erent d’agents ayant un plus haut niveau de priorit´e.

• ´Evitement de collisions : Chaque agent doit ´eviter ses voisins actuels j ayant un niveau de priorit´e plus haut en consid´erant `a la fois la distance de s´ecurit´e dsaf e et le voisinage ξ, i.e.

kqi(t, τk)−qej(t, τk)k > dsaf e+ ξ, ∀j ∈ HPi (4.4.15)

Le voisinage ξ est ajout´e pour garantir l’´evitement de collisions avec chaque agent j ∈ HPi en consid´erant l’´ecart entre les trajectoires intuitives et finales de ceux–ci.

Les deux contraintes coupl´ees (4.4.13) et (4.4.15) assurent que les collisions soient ´evit´ees sur l’intervalle t∈ [τk, τk+Tp]. Notons que ce type de couplage a ´et´e utilis´e pour de la planification `a horizon glissant o`u la trajectoire planifi´ee est partielle (i.e. sur l’horizon de planification) [Defoort et al., 2009a]. Cependant, la trajectoire planifi´ee lors de la seconde ´etape de notre planificateur n’est pas partielle. C’est pour cela qu’une fonction f (t) a ´et´e utilis´ee. Elle permet de relˆacher la contrainte de d´eviation (4.4.13) pour tout t > τk+ Tp, permettant de r´eduire la complexit´e de l’algorithme. En effet, il peut ˆetre difficile de maintenir une faible d´eviation sur une trajectoire compl`ete. Le choix de la fonction f (t) n’est pas unique et pourrait ˆetre modifi´e dans d’autres applications. Pour notre probl`eme, comme une coordination par leadership est appliqu´ee, il est pr´ef´erable que la fonction f (t) d´ependent du nombre d’agents `a ´eviter, repr´esent´e par Card(HPi). Cependant, bien que le relˆachement de la d´eviation pourrait engendrer des collisions lorsque t > τk+ Tp, l’´evitement de collision reste assur´e car la trajectoire sera remise `a jour lors du prochain instant de planification τk+1. Cette mise `a jour sera faite avant que l’horizon de faible d´eviation ne soit atteint car Tp> Tc= τk+1− τk. Notons que cette fonction f (t) est d´efinie par (4.4.14) uniquement si Tp < T Ti(cr

ik) afin que les diff´erents intervalles de la variable t soient compl´ementaires. Si Tp > T Ti(cr

ik), on prendra f (t) =, pour tout t∈ [τk, Ti,f in] car le couplage pourra facilement ˆetre respect´e. En effet, Tp > T Ti(cr

ik) signifie que l’agent est proche d’arriver `a la ressource. De ces propos, le choix de Tp a une grande importance sur l’efficacit´e de l’´evitement de collision.

D’une mani`ere similaire `a pr´ec´edemment, l’algorithme d’optimisation OPT2 n’est appliqu´e que s’il y a des collisions `a ´eviter. S’il n’y en a pas, la trajectoire finale sera ´egale `a la trajectoire intuitive comme le montre la Fig. 4.6 avec la condition HPi = ∅. De ce fait, l’agent ayant le plus haut niveau de priorit´e n’a pas de trajectoire `a planifier. Il n’a qu’`a utiliser la trajectoire directe donn´ee par le superviseur. Parall`element, un agent n’ayant pas de voisin n’aura qu’`a ´eviter les conflits `a l’´etape 1 en utilisant l’algorithme OPT1 et sa trajectoire finale sera l’intuitive.

Remarque 4.5 Il est essentiel de noter que les informations requises pour chaque probl`eme d’optimi-sation sont partielles, permettant de bien r´eduire la complexit´e des calculs. En effet, l’algorithme OPT1

ne n´ecessite que des trajectoires partielles donn´ees par le superviseur et l’algorithme OPT2 n’a besoin que des trajectoires des agents voisins ayant un niveau de priorit´e plus haut. Ceci est un ´el´ement tr`es important puisque les informations transmises par communication et les informations `a traiter par les agents sont r´eduites.

Remarque 4.6 Le choix des horizons Tc et Tp reste ouvert puisqu’ils sont corr´el´es. Cependant, ce choix m´erite quelques r´eflexions. L’horizon de calcul Tc doit ˆetre choisi le plus petit possible pour garantir une bonne r´eactivit´e face aux incertitudes mais doit ˆetre suffisamment grand pour assurer la r´esolution des probl`emes d’optimisation. L’horizon de faible d´eviation est n´ecessairement sup´erieure `a Tc afin d’´eviter les blocages entre les contraintes coupl´ees entre les agents. Cependant, il ne doit pas ˆetre trop grand pour pouvoir relˆacher suffisamment la contrainte de d´eviation afin de r´eduire la complexit´e de l’algorithme.