• Aucun résultat trouvé

robotique combinant comportement habituel et dirigé vers un but

6.2 Illustration expérimentale .1 Expérience.1 Expérience

Notre architecture est implémentée avec ROS (Quigley et al. 2009), ce qui la rend

théoriquement directement transférable entre une simulation et un robot réel. Nous simu-lons un robot simplifié contrôlé par notre architecture afin d’évaluer son efficacité dans

une tâche jouet de poussée de blocs (figure6.4).

Le robot simulé est placé devant un tapis roulant discret sur lequel sont placés des

blocs. Ces blocs sont entraînés à une vitesse vb et à une distance dib l’un de l’autre. Dans

cette thèse, nous garderons dib constante (4 blocs), mais nous nous autoriserons à faire

changer vbs pendant l’expérience, ce qui permet de définir deux conditions :

1. Condition régulière (RC) : vb ne varie pas, l’environnement évolue de manière

pré-dictible. La méthode d’arbitrage doit préférentiellement donner la main à l’expert

habituel après qu’il ait appris, cet expert étant supposé capable de contrôler une politique performante pour un bas coût computationnel.

2. Condition changement de vitesse (SS) : vb change de valeur environ à mi-expérience

après une phase constante. La méthode d’arbitrage doit redonner la main à l’expert

dirigé vers un but, supposé plus rapide à se réadapter à de nouvelles conditions en prenant en compte le nouveau modèle du monde.

Perception et construction de l’état

Comme nous l’avons précisé plus haut, l’agent construit les états manipulés par la couche de décision à partir des perceptions à sa disposition. Dans cette expérience, l’agent dispose de deux modalités : une modalité visuelle et une modalité tactile. La première

apporte une information binaire sur la présence d’un bloc en Cc, la second sur la présence

d’un bloc en Ca. De ces modalités sont respectivement produits les signaux binaires pbs

(pour block seen) et pbt (pour block touched). Ces signaux alimentent une mémoire discrète

Figure 6.5 – Gauche : Évolution de l’environnement ; Centre : MDP théorique obtenu en suivant la politique indiquée et étant donné l’environnement décrit à gauche. Les chiffres représentent l’identifiant de l’état et sont directement la valeur décimale de la valeur binaire encodée par chaque mémoire, avec le bit de poids faible à gauche ; Droite : évolution des mémoires en fonction de la politique et de l’environnement. État (0, 1) : l’action LC faite dans l’état précédent, quand un bloc est présent en Cc permet de mettre à jour la mémoire correspondante. Cette action répétée en (0, 1) indique l’absence de bloc. L’état évolue naturellement vers (0, 2) du fait de la mise à jour temporelle de la mémoire. En (0, 2), PA permet de toucher et enlever le bloc précédemment vu, et l’état évolue vers (1, 4). Les actions suivantes ne montrent la présence d’aucun bloc et les mémoires se vident progressivement pour un retour à l’état (0, 0).

71

Figure 6.6 – Module de perception pour la tâche de poussée de blocs. La couleur des cases correspond à l’information binaire de la présence d’un bloc (noir : présence, blanc : ab-sence). pbt, pbs sont les signaux per-ceptuels instantanés, qui alimentent le premier élement de leur mémoire respective (mbt(0), mbs(0). Les mé-moires Mbt, Mbs sont concaténées pour former un vecteur de variables binaires qui définit l’état actuel ex-périmenté par l’agent.

perçue par la modalité dans le passé. La configuration des mémoires à un instant t forme

l’état st manipulé par les algorithmes d’AR (voir figure 6.6).

Ces signaux sont calculés en fonction de la présence d’un bloc à l’emplacement mesuré

par leur modalité, et en fonction de l’action faite (6.12).

pbt = Ca· PA, pbs = Cc· LC (6.12) Les mémoires ont une taille finie (fixée à 8 éléments dans l’expérience), l’information la plus ancienne étant oubliée au fur et à mesure. Ces mémoires sont mise à jour

temporel-lement : si une limite de temps est dépassée (tmax = 0.1s) dans l’expérience), les éléments

connus en mémoire sont décalés vers le passé (équation (6.13). Ce décalage se produit

également lorsqu’un signal perceptuel apporte de l’information, afin de mettre à jour le premier élement de la mémoire avec la nouvelle information perçue.

Un exemple de l’évolution des mémoires pendant la tâche est donnée dans la figure 6.5.

   mbs,btt (i) = mbs,btt−1(i− 1) ∀i ∈ |M| mbs,btt (0) = pbs,bt (6.13)

Il est à noter que du fait de l’asynchronie entre le comportement du robot et l’environnement, des erreurs perceptuelles peuvent se produire, générant des états n’ayant pas de corres-pondance dans l’environnement. Par exemple, faire LC au moment où un bloc est présent

en Cc permet de mettre à 1 le premier élément de la mémoire correspondante. Mais

si cette action est répétée avant que le bloc n’ait été déplacé dans la simulation, deux éléments consécutifs de la mémoire retiendront la présence d’un bloc. Ainsi, deux états correspondent à la même configuration de l’environnement. Ces imperfections du système de perception participent à évaluer l’intérêt du principe de combiner des comportements

dirigé vers un butethabitueldans des tâches plus proches de la robotique, où l’incertitude sensorielle est permanente.

Table 6.1 – Valeurs testées et choisies des paramètres des experts dans la première version de l’architecture.

Param Valeurs Hab GD

α 0.01, 0.05, 0.1, 0.5, 0.9 0.1 0.5

γ 0.1, 0.5, 0.98, 0.9999 0.9999 0.5

τ 0.01, 0.1, 0.5, 1.0, 5.0 0.05 0.1

Actions

Le robot dispose de 3 actions fournies par son module d’action ; ces actions permettent de modifier l’environnement mais également de mettre à jour les perceptions du robot

(voir 6.2.1). Ces actions sont les suivantes :

1. Ne rien faire (DN pour Do Nothing) : Le robot n’agit pas sur son envi-ronnement et attend la réception du prochain état. Cette action ne modifie pas l’environnement et ne met pas à jour les perceptions, mais n’a pas de coût en terme

de récompense (Rt= 0).