• Aucun résultat trouvé

cibles par un drone h ´elicopt `ere autonome

Pendant nous travaux de th`ese, nous avons effectu´e un vol exp´erimental avec l’h´elicopt`ere autonome Yamaha Rmax de l’Onera (montr´e sur la figure 6.7). Nous pr´esenterons dans cette section les r´esultats obtenus pendant ce vol, o`u nous avons embarqu´ee notre cadre d’optimi-sation anticip´ee et ex´ecution en parall`ele. Nous allons par la suite d´ecrire la configuration de l’environnement lors de ce vol.

Figure 6.7 – Photo de l’h´elicopt`ere Yamaha Rmax de l’Onera adapt´e au vol autonome. La configuration exp´erimentale suit le sch´ema pr´esent´e sur la figure 6.8. Nous consid´erons 2 altitudes de vol (30 et 40 m`etres), 3 mod`eles de voitures et 3 zones, ce qui nous ram`ene `

a 385 ´etats. Les zones sont align´ees, et la distance entre les zones est de 70 m`etres. Le but est d’atterrir `a cˆot´e du mod`ele de voiture C, par contre le nombre et la nature de cibles effectivement dans la sc`ene est inconnu de l’h´elicopt`ere autonome au d´ebut de la mission, ceci est mod´elis´e par une croyance initiale uniforme sur les possibles ´etats initiaux, conforme :

b0= {z = 1, h = 30, IdT az1 = inconnu, IdT az2 = inconnu, IdT az3 = inconnu}.

ainsi, b0 correspond `a une distribution de probabilit´e uniforme sur les 64 ´etats initiaux possibles.

Notons que l’´etat de croyance initial uniforme mod´elise la m´econnaissance subjective de l’agent par rapport `a l’´etat cach´e du syst`eme. Cet ´etat de croyance subjectif n’est pas une approximation fr´equentielle des ´etats initiaux possibles. Ce choix r´esulte du fait que l’h´elicopt`ere autonome ne connaˆıt rien sur l’environnement initialement. Mais est-ce que l’´equiprobabilit´e est satisfaisante pour repr´esenter la m´econnaissance totale ? Nous pensons qu’on ne peut pas faire mieux avec une mod`ele POMDP.

Des voitures ont ´et´e mises en place dans le terrain. La configuration, c’est-`a-dire l’´etat cach´e du syst`eme ´etait le suivant : aucune voiture dans la zone 1, une voiture de mod`ele A dans la zone 2 et une voiture de mod`ele C dans la zone 3. Le temps de booststrap a ´et´e fix´e `a 30 secondes, la dur´ee de chaque action est repr´esent´ee par une distribution uniforme

6.4. Vol exp´erimental : mission de d´etection et de reconnaissance de cibles par un drone h´elicopt`ere autonome

sur [Tmina , Tmaxa ], avec Tmina = 8s et Tmaxa = 10s. Ces valeurs nous sont n´ecessaires pour que AMPLE puisse estimer la dur´ee d’ex´ecution des actions. La politique par d´efaut utilis´ee est le r´esultat de l’approximation QMDP [Littman et al., 1995], calcul´ee au d´ebut de la mission. L’algorithme de r´esolution de POMDP utilis´e lors de cette exp´erimentation a ´et´e l’algorithme AEMS [Ross et Chaib-Draa, 2007].

Nous avons choisi d’impl´ementer notre cadre d’optimisation en parall`ele de l’ex´ecution avec l’algorithme AEMS5 parce que nous avons pu constater lors de simulations (pr´esent´ees dans la prochaine section) qu’AEMS est particuli`erement adapt´e `a notre approche. Avec AEMS, nous pouvons arrˆeter le calcul d’une action pour un ´etat de croyance donn´e quand l’on veut, contrairement `a PBVI par exemple, qui ne peut ˆetre arrˆet´e que `a la fin d’une mise `a jour de la valeur pour l’ensemble complet B. Nous tenons, tout de mˆeme, `a attirer l’attention sur le fait que notre but n’est pas d’am´eliorer des algorithmes existants, mais de les incorporer dans un cadre plus flexible, qui traite des requˆetes de planification de mani`ere r´eactive comme toutes les autres fonctionnalit´es embarqu´ees sur l’h´elicopt`ere autonome. Ceci nous semble primordial, afin de permettre `a des techniques d’intelligence artificielle, telles que les POMDP, d’ˆetre utilis´ees dans des applications robotiques r´eelles. En effet, il existera toujours des applications suffisamment complexes qui ne pourront pas ˆetre r´esolues dans le temps imparti de la mission avec les meilleures m´ethodes existantes.

Figure 6.8 – Sch´ema repr´esentatif de l’´etat cach´e sur le terrain pour le vol exp´erimental : la croix repr´esente la position initial de l’agent h´elicopt`ere, le point rouge repr´esente la position de la cible de mod`ele A, et le point bleu, la position de la cible de mod`ele C (cible recherch´ee). Comme d´ecrit dans la section 6.1.1, lors de la g´en´eration automatique du probl`eme POMDP `a r´esoudre, la fonction de r´ecompense du mod`ele est bas´ee sur la distance entre le centre des zones. Les zones sont suppos´ees align´ees sur la piste du terrain d’essai, et la distance entre deux zones est de 70 m`etres. Le changement d’angle de vue, est fait par de pas de 10 d´egr´ees (voir angle φ dans la mod´elisation de l’action change view dans le chapitre 3).

La architecture Orocos utilis´e pour ce vol a ´et´e montr´ee dans la section 6.1.2, cette

5. AEMS a les bornes inf´erieure et sup´erieure initialis´ees respectivement par une approximation par politique myope et par une approximation de type QMDP (cf. section 2.3 du chapitre 2) dans notre impl´ementation.

5 10 15 20 25 30 35 40 45 50 55 -20 0 20 40 60 80 100 120 140 160 0 10 20 30 40 50 z x y z

Figure 6.9 – Trajectoire de l’agent h´elicopt`ere pendant le vol exp´erimental (en rouge). La croix noire repr´esente la zone 1, la croix orange la zone 2, et l’´etoile bleu la zone 3, zone dans laquelle la cible se trouve. La fine ligne en noire montre la projection au niveau du sol de la trajectoire r´ealis´ee pendant le vol : la cible correct a donc pu ˆetre trouv´e par l’h´elicopt`ere.

architecture nous permet de g´en´erer automatiquement le probl`eme POMDP `a r´esoudre, une fois que le nombre de zones et le mod`ele de cible recherch´e ont ´et´e d´efinis. Elle nous permet aussi via le superviseur de mission (AmpleExecute dans la figure 6.2) de mettre en place le cadre d’optimisation anticip´ee et d’ex´ecution en parall`ele d´evelopp´e.

6.4.1 R ´esultats

La trajectoire qui a ´et´e effectu´ee par l’h´elicopt`ere autonome est illustr´ee sur la figure 6.9. Les coordonn´ees sont exprim´ees dans le rep`ere local du terrain d’essai de l’agent h´elicopt`ere. La figure 6.10 montre la s´equence d’actions r´ealis´ee par l’agent h´elicopt`ere autonome lors du vol exp´erimental. Initialement, l’agent h´elicopt`ere est dans la zone 1 `a une altitude de vol de 30 m`etres. Dans les deux premi`eres ´etapes, l’agent observe qu’aucune cible n’est dans la zone 1, puis choisit d’aller vers la zone 2. Apr`es trois ´etapes de d´ecision, l’agent observe que la cible dans la zone 2 est celle de mod`ele A, il d´ecide donc d’aller vers la zone 3. Apr`es 2 observations suppl´ementaires, l’agent h´elicopt`ere croit (`a raison) que la cible dans la zone 3 est le mod`ele C, qui est le mod`ele recherch´e, et d´ecide donc d’atterrir, terminant, ainsi, correctement sa mission. Notons que la trajectoire de l’agent, montr´ee sur la figure 6.9, ne se termine pas `a la hauteur du sol : ceci est dˆu au fait que, pour ce vol exp´erimental, l’agent h´elicopt`ere n’a pas atterri, en r´ealit´e pour des raison de s´ecurit´e dues `a l’exp´erimentation, mais il a en fait survol´e la cible (action land). L’atterrissage automatique est en effet risqu´ee. Cet exemple impliquait peu d’´etats, mais nous attirons l’attention sur le fait que la r´eussite et l’int´erˆet d’une telle mission de robotique autonome repose avant tout sur l’ex-pressivit´e de la fonction d’observation et non n´ecessairement sur la taille du probl`eme `a r´esoudre. Dans de telles applications robotiques, la pr´ecision du mod`ele d’observation li´ee `

a l’algorithme de traitement d’image et la r´eactivit´e des requˆetes de planification sont pri-mordiales, comme montr´e dans ce chapitre. Nous pensons que notre approche supportera le passage `a l’´echelle, puisque si l’algorithme sous-jacent ne fournit pas d’action optimis´ee dans le temps, des actions seront toujours retourn´ees en temps et en heure, s’il le faut des actions par d´efaut. Donc, dans notre approche comme dans beaucoup d’approches de planification en ligne, le passage `a l’´echelle est aussi impact´e par la dur´ee des actions.

6.4. Vol exp´erimental : mission de d´etection et de reconnaissance de cibles par un drone h´elicopt`ere autonome

t = 0 :a = go to(h2)

o = d´etect´e non identifi´e.

t = 1 :a = change view o = non d´etect´e t = 2 :a = goto zone(z2) o = mod`ele A t = 3 :a = change view o = mod`ele A t = 4 :a = change view o = mod`ele A t = 5 : a = go to(z3) o = mod`ele C t = 6 :a = change view o = mod`ele C t = 7 :a = land o = non d´etect´e

Figure 6.10 – S´equence d’´etapes de d´ecision. Chaque image repr´esente l’image d’entr´ee re¸cu par l’algorithme de traitement d’image apr`es r´ealisation d’action. Les observations repr´esentent les r´eponses successives de la classification donn´ee par le traitement d’image.

r´ealistes, o`u nous avons utilis´e l’architecture fonctionnelle embarqu´ee et les algorithmes uti-lis´es `a bord de notre h´elicopt`ere autonome. Ces simulations ont ´et´e m`enes afin de : (1) compa-rer des diff´erents algorithmes sous-jacents de r´esolution de POMDP, et (2) d´emontrer l’int´erˆet de l’approche alternative que nous proposons pour l’optimisation anticip´ee et l’ex´ecution en parall`ele vis-`a-vis de l’approche classique de r´esolution en ligne.