Apprentissage par renforcement dans un environnement non stationnaire [fermé]

9

Q1: Existe-t-il des méthodes communes ou acceptées pour gérer un environnement non stationnaire dans l'apprentissage par renforcement en général?

Q2: Dans mon gridworld, la fonction de récompense change lorsqu'un État est visité. À chaque épisode, les récompenses reviennent à leur état initial. Tout ce que je veux que mon agent apprenne, c'est "Ne reviens pas sauf si tu en as vraiment besoin", mais cela rend l'environnement non stationnaire. Cette règle très simple peut-elle / devrait-elle être intégrée dans le modèle MDP, et comment? Q-learning est-il la meilleure solution pour résoudre ce problème? Des suggestions ou des exemples disponibles?

Q3: J'ai étudié le Q-learning avec la relecture d'expérience comme solution pour faire face aux environnements non stationnaires, car il décorrèle les mises à jour successives. S'agit-il de l'utilisation correcte de la méthode ou s'agit-il davantage de rendre l'apprentissage des données plus efficace? Et je l'ai seulement vu utilisé avec une approximation de la valeur. Je ne sais pas s'il est exagéré de l'utiliser pour un simple espace d'état discrétisé, comme gridworld, ou il y a une raison différente à cela.

N'hésitez pas à répondre ou à commenter même si vous ne pouvez pas répondre à toutes les questions.

Voltronika
la source

Réponses:

10

Q1: Existe-t-il des méthodes communes ou acceptées pour gérer un environnement non stationnaire dans l'apprentissage par renforcement en général?

α

Cependant , cela concerne la non-stationnarité à plus long terme, comme le problème de changement entre les épisodes ou sur une échelle de temps encore plus longue. Votre description ressemble davantage à celle que vous souhaitez modifier la structure des récompenses en fonction des mesures prises par l'agent, dans un court laps de temps. Cette réponse dynamique aux actions est mieux définie comme un MDP différent et plus complexe, et non comme une "non-stationnarité" dans un MDP plus simple.

Un agent ne peut pas apprendre les modifications de l'environnement qu'il n'a pas encore échantillonnées, donc la modification de la structure des récompenses n'empêchera pas l'agent de revenir aux états précédemment visités. À moins que vous n'utilisiez quelque chose comme un RNN dans l'agent, l'agent n'aura pas de "mémoire" de ce qui s'est passé avant dans l'épisode autre que ce qui est représenté dans l'état actuel (sans doute, l'utilisation d'un RNN fait la couche cachée de la partie RNN de l'État). Sur plusieurs épisodes, si vous utilisez un agent de Q-learning tabulaire, l'agent apprendra simplement que certains états ont une faible valeur, il ne pourra pas apprendre que la deuxième ou la troisième visite de l'état provoque cet effet, car il n'a pas façon de représenter ces connaissances. Il ne pourra pas s'adapter au changement assez rapidement pour apprendre en ligne et au milieu de l'épisode.

Q2: Dans mon gridworld, la fonction de récompense change lorsqu'un État est visité. Tout ce que je veux que mon agent apprenne, c'est "Ne revenez pas en arrière sauf si vous en avez vraiment besoin", mais cela rend l'environnement non stationnaire.

Si c'est tout ce que vous avez besoin que l'agent apprenne, cela peut peut-être être encouragé par une structure de récompense appropriée. Avant de pouvoir faire cela, vous devez vous comprendre ce que «vraiment besoin de» implique et à quel point cela doit être logique. Vous pouvez être d'accord, mais simplement en attribuant une pénalité pour visiter n'importe quel endroit que l'agent a déjà ou récemment visité.

Cette règle très simple peut-elle / devrait-elle être intégrée dans le modèle MDP, et comment?

Oui, vous devez ajouter les informations sur les lieux visités dans l'état. Cela rendra immédiatement votre modèle d'état plus complexe qu'un simple monde de grille, augmentant la dimensionnalité du problème, mais il est inévitable. La plupart des problèmes du monde réel dépassent très rapidement les exemples de jouets fournis pour enseigner les concepts RL.

Une alternative consiste à présenter le problème comme un processus de décision de Markov partiellement observable (POMDP) . Dans ce cas, le "vrai" état inclurait toujours toute l'histoire nécessaire pour calculer les récompenses (et comme il s'agit d'un problème de jouet sur un ordinateur, vous devrez toujours le représenter d'une manière ou d'une autre), mais l'agent peut tenter d'apprendre à partir de restrictions connaissance de l'état, tout ce que vous laissez observer. En général, c'est une approche beaucoup plus difficile que d'élargir la représentation de l'État, et je ne la recommanderais pas ici. Cependant, si vous trouvez l'idée intéressante, vous pouvez utiliser votre problème pour explorer les POMDP. Voici un article récent (de l'équipe Deep Mind de Google, 2015) qui examine deux algorithmes RL combinés avec des RNN pour résoudre les POMDP.

Q3: J'ai étudié le Q-learning avec la relecture d'expérience comme solution pour faire face aux environnements non stationnaires, car il décorrèle les mises à jour successives. S'agit-il de l'utilisation correcte de la méthode ou s'agit-il davantage de rendre plus efficace l'apprentissage des données?

La relecture d'expérience n'aidera pas dans les environnements non stationnaires. En fait, cela pourrait aggraver leurs performances. Cependant, comme déjà indiqué, votre problème ne concerne pas vraiment un environnement non stationnaire, mais la gestion d'une dynamique d'état plus complexe.

648×8264

Avec un estimateur de fonction, la relecture d'expérience est très utile, car sans elle, le processus d'apprentissage est susceptible d'être instable. La récente approche DQN pour jouer aux jeux Atari utilise la relecture d'expérience pour cette raison.

Neil Slater
la source
Si l'environnement n'est pas stationnaire, comment gérez-vous le fait que, dans l'exemple du monde de la grille, être dans l'état à l'instant t = 1 n'est pas la même chose qu'être dans cet état à t = 2? Si vous les traitez comme des états séparés, alors la dimensionnalité de votre espace d'état va sûrement exploser?
tryingtolearn
@tryingtolearn: L'intérêt d'un état de Markov est qu'il capture tous les détails importants sur la façon dont le MDP progressera à partir de ce point. Typiquement, être dans l'état à t = 1 n'est pas différent d'être dans le même état à t = 2, en termes de récompense future attendue et de transitions d'état. Si vous vous retrouvez avec des règles basées sur la valeur de t, vous mettez t dans l'état. Cela peut arriver si vous pouvez obtenir une récompense à n'importe quel pas de temps, mais le nombre de pas de temps est limité - l'épisode se termine toujours à t = 10 par exemple. Dans ce cas, connaître votre temps restant pourrait être important
Neil Slater
@NeilSlater pouvez-vous développer les idées POMDP et RNN dans votre réponse? Ils semblent intéressants. Et si possible, donnez des sources pertinentes car il est parfois difficile de naviguer dans la littérature. Je n'aime vraiment pas l'idée de conserver la séquence des états visités, bien que ce soit la seule chose à laquelle je pouvais penser jusqu'à présent, donc je cherche d'autres options. Le modèle devient ainsi trop compliqué, étant donné que je dois introduire une règle très simple. Je ne sais pas si je manque quelque chose de très évident ou si je n'utilise tout simplement pas le bon modèle et la bonne formulation.
Voltronika
@NeilSlater Cela ne peut-il pas être aidé en utilisant des choses comme les méthodes de gradient de politique? Dans la pratique, savez-vous quelle est la norme pour résoudre ce genre de problèmes?
tryingtolearn
1
@Voltronika J'ai développé la réponse en ajoutant un paragraphe sur les POMDP. Notez que le cadrage de votre problème en tant que POMDP rend beaucoup plus difficile à travailler et à résoudre que l'extension de l'état pour inclure une mémoire appropriée des emplacements visités. Je vous suggère donc de ne considérer cela que si l'étude des POMDP est un objectif.
Neil Slater
0

Q1: Q learning est un algorithme d'apprentissage par renforcement en ligne qui fonctionne bien avec l'environnement stationnaire. Il peut également être utilisé avec un modèle non stationnaire à condition que le modèle (fonction de récompense et probabilités de transition) ne change pas rapidement.

Khalid Ibrahim
la source