Partie I Deux domaines 11
6.1 Une scène avec quelques objets voisins, d’autres objets peuvent être présents dans l’en-
jets (ensemble appelé configuration), et des comportements de base41 appropriés étant connus pour ces sous-tâches. En fait, comme des objets typés sont utilisés, un comportement sera défini seulement pour un tuple de types d’objets (tuple appelé type de configuration), comme discuté ultèrieurement en section 6.2.1. Dans la situation de la figure 6.1, un exemple de comportement de base utilisé est de
pous-ser une tuile dans un trou (type de configurationhtuile, troui). Le comportement élémentaire pousser (bp) apparaît dans ce cas avec les configurationshO1, O2i et hO3, O2i.
Parmi toutes les configurations possibles dans une scène (c’est-à-dire, tous les sous-ensembles pos-sibles d’objets), seule une part restreinte sera intéressante : celles liées à des sous-tâches. Dans notre exemple, seuleshO2i, hO1, O2i et hO3, O2i sont utiles (pour éviter un trou (be) ou pousser une tuile dans un trou (bp)), et pashO1, O3i par exemple.
L’objecif de la décomposition de la scène sera l’identification de paires (comportement de base, conf iguration) (désormais notées (bb, cf g), bb venant de l’anglais “basic behavior”) dans l’environ-nement accessible. L’application qui à l’observation courante associe l’ensemble des paires (bb, cf g) de la scène sera notéeBC. Ainsi, pour conclure l’analyse de la figure 6.1, avec les deux comportements de base intuitivement utilisés, l’agent déduira de la décomposition de la scène courante qu’il doit tenir compte des trois paires (bb, cf g) qui suivent :
BC(o) = {(be,hO2i), (bp,hO1, O2i), (bp,hO3, O2i)}. (6.1)
Scalabilité
Comme exprimé en introduction de cette troisième partie, on cherche à ce que l’agent soit capable de “se mettre à l’échelle”, c’est-à-dire ici qu’il puisse gérer un nombre variable d’objets (comme expliqué en section 4.3, on parlera de “scalabilité” et d’agent “scalable”). Si l’on ne tient compte que de ce processus de décomposition d’une scène, la scalabilité vient de ce qu’un comportement de base (respectivement une configuration) peut être associé à plus d’une configuration (resp. comportement de base), puisqu’un comportement de base dépend d’un type de configuration générique. C’est d’autant plus intéressant que, du fait de la localité des perceptions de l’agent, l’ensemble des configurations utiles change selon les objets perceptibles.
De nouveaux problèmes de complexité ?
Considérant la décomposition d’une scène en paires (bb, cf g), on peut aussi noter que, parmi les points délicats de la méthode que nous proposons, une explosion combinatoire est à craindre lors de la
41
recherche de configurations utiles. Effectivement, le nombre de configurations comprenant un trou et une tuile est ntrous∗ ntuiles, pour ne donner qu’un exemple d’ensemble à croissance rapide. Toutefois, en pratique le nombre d’objets accessibles restera généralement restreint, puisque seules des perceptions locales sont considérées.
6.1.2 Combinaison de comportements
La présentation de la décomposition de scène a apporté le principe d’utiliser des comportements de
base qui soient génériques (définis pour des types de configuration) et correspondent à des politiques
stochastiques. Avant de pouvoir dire plus précisément ce que devrait être un comportement de base, il faut commencer par chercher le moyen de combiner ces comportements de base en une politique finale que l’agent adoptera.
Mais on peut dores et déjà esquisser le mécanisme qui va être mis en œuvre à travers l’algorithme gé-néral 5. Comme dans de nombreux algorithmes d’apprentissage par renforcement, il s’agit d’une boucle dans laquelle est fait un passage par pas de temps (pour le système discret considéré). On peut la décrire rapidement à travers quatre grandes étapes :
– Lignes 1 et 2 : obtention des observations et récompenses immédiates.
– Lignes 4 à 8 : obtention des informations utiles sur les comportements de base en jeu. – Lignes 9 et 10 : calcul d’une politique pour la situation actuelle et exécution.
– Ligne 11 : renforcement.
Algorithme 5 Algorithme général
Entrées: Comportements de base déjà connus
1: boucle
2: o← nouvelle observation de la scène. 3: r ← récompense immédiate de l’agent.
4: Décomposition : chercher les paires (bb, cf g) connues (b, c)∈ BC(o).
5: pour tout paire (b, c) faire
6: πb(o(c))← distribution de probabilité induite par (b, c). 7: βb(o(c))← autres informations si nécessaire.
8: fin pour
9: P(o, ·) ← distribution de probabilités obtenue en combinant les distributions πb(o(c)) (en utilisant éventuellement βb(o(c))).
10: a← action choisie selon P(o, ·)
11: Adapter et modifier les paramètres de la combinaison (à travers un apprentissage par renforcement utilisant r) de manière à améliorer les performances.
12: fin boucle
6.1.3 A propos de la sélection d’action
Le problème de combinaison de comportements qui nous intéresse entre, comme on l’a vu au chapitre 5 précédent, dans le champ de la sélection d’action. Pour rappel, la direction que nous décidons de suivre
est celle d’une hiérarchie à flux libre produisant une politique stochastique, hiérarchie dans laquelle on souhaite par ailleurs laisser le système apprendre à “régler” la combinaison aussi bien que possible.
Scalabilité
Comme on l’a décrite en section 6.1, la décomposition de la scène en paires (comportement de base, conf iguration) permet qu’il y ait un nombre variable de telles paires dans le voisinage de l’agent. Néanmoins, les méthodes de recombinaison existantes (algorithmes de sélection d’action) ne sont géné-ralement pas scalables, cette capacité étant en fait un point très rarement abordé. Quand un comportement de base peut être appliqué plus d’une fois dans une situation donnée (le même exemple de deux trous à éviter est approprié), ce doit être précisé a priori dans les algorithmes que nous avons pu citer (le W -learning par exemple).
Pour sa part, notre algorithme gère cette capacité de mise à l’échelle. Dans ce but, un poids est appris pour chaque comportement de base “générique” (tel que l’“évitement de trou”). Ainsi, même si de nombreuses instances d’un comportement de base peuvent apparaître dans une situation donnée (plusieurs trous à éviter, liés à plusieurs paires (bb, cf g) où bb = be), elles seront combinées en n’utilisant qu’un poids commun.
Ayant expliqué comment décomposer une scène et étant brièvement revenus sur le problème de la sélection d’action, les points clef de l’approche que nous proposons ont été mis en avant. Ayant de surcroît fourni la forme générale de l’algorithme qui va être utilisé, nous sommes prêts à entrer plus en détails dans le formalisme et les mécanismes mis en œuvre.
6.2 Détails de la combinaison
La section 6.1 a introduit une terminologie, encore assez imprécise, concernant les comportements. Ce travail préliminaire accompli va maintenant permettre de donner des définitions formelles précisant cette terminologie. Ceci rendra alors possible la présentation de la combinaison de comportements de base ainsi que, finalement, l’étude de notre algorithme complet sous les différentes formes qu’il va prendre.
6.2.1 Définitions formelles autour des comportements
Dans la présentation du processus proposé pour décomposer une scène en paires (comportement de base, conf iguration), la notion de comportement apparaît plusieurs fois, particulièrement à travers le terme de “comportement de base”. Nous avons maintenant tous les éléments pertinents nécessaires pour donner quelques définitions dans ce domaine, définitions qui serviront ensuite dans la description d’aspects plus techniques de nos travaux.
Définition 8 (Comportement)
Un comportement b42est défini par un tuplehCT
b , Pb, Qbi, où :
1. CT
b est un type de configuration. Il permet l’appariement du comportement avec une configuration (un ensemble d’objets) si ce dernier répond aux exigences du type de confi-guration en question.
2. Pb(o, c, a) est une politique de décision stochastique apprise par renforcement. Etant
donnée une configuration c appropriée, cette politique associe à l’observation de c une distribution de probabilité sur les actions : Pb:O×Cb×A → [0, 1], où Cbest l’ensemble des configurations de typeCT
b .
42
3. Qb(o, c, a) est la table de Q-valeurs de cette politique. Elle donne l’espérance de
récom-pense décomptée43quand l’action a est choisie pour l’observation o de la configuration
c. (Nous revenons sur l’usage de cette utilité dans la prochaine définition.)
Définition 9 (Comportement de base)
Un comportement de base bb est un comportement qui a été choisi, avec d’autres, pour être recombiné en comportements complexes.
Dans le processus de recombinaison, une paire (bb, cf g) servira à donner une proposition de déci-sion. Ainsi, pour un comportement de base donné b et une configuration associée c, la décision proposée dépend des percepts des objets de c. La figure 6.2 illustre le processus d’obtention des percepts de chaque objet d’une configuration c, ce qui fournit alors son observation, et calculant finalement la politique im-médiate à suivre d’après la paire (b, c). Sur l’exemple de la poussée de la tuile O3 dans le trou O2, les deux percepts : O3près_au_sud44et O2loin_à_l’ouestseront les données amenant à suggérer les actions à accomplir.
!#" $&% "'%( *),+#-. $ )0/+ %#!#"21 3 425768 3:90; =<?>@ =BA
FIG. 6.2 – Comment une distribution de probabilité sur des actions est obtenue pour un comportement