Pourquoi il n'y a pas de probabilité de transition dans Q-Learning (apprentissage par renforcement)?

8

Dans l'apprentissage par renforcement, notre objectif est d'optimiser la fonction état-valeur ou l'action-valeur, qui sont définies comme suit:

Vsπ=p(s|s,π(s))[r(s|s,π(s))+γVπ(s)]=Eπ[r(s|s,a)+γVπ(s)|s0=s]

Qπ(s,a)=p(s|s,s)[r(s|s,a)+γVπ(s)]=Eπ[r(s|s,a)+γVπ(s)|s0=s,a0=a]

Cependant, lorsque nous utilisons la méthode Q-learning pour obtenir la stratégie optimale, la méthode de mise à jour est la suivante:

Q(S,A) Q(S,A)+α[R+γmaxa(Q(s,a))Q(S,A)]

Ma question est:

pourquoi en Q-learning il n'y a pas de probabilité de transition p(s|s,a). Est-ce que cela signifie que nous n'en avons pas besoinp lors de la modélisation de MDP?

hokies
la source

Réponses:

6

Les algorithmes qui n'apprennent pas la fonction de probabilité de transition d'état sont appelés sans modèle . L'un des principaux problèmes des algorithmes basés sur des modèles est qu'il existe souvent de nombreux états et qu'un modèle naïf est quadratique en nombre d'états. Cela impose une énorme quantité de données.

Q-learning est sans modèle. Il n'apprend pas de fonction de probabilité de transition d'état.

Neil G
la source
1
Cependant, dans MDP, il y a toujours une probabilité. S'il n'y a pas de probabilité de transition, cela signifie-t-il que cela est contradictoire avec l'hypothèse de base de l'apprentissage par renforcement, car RL suppose que le processus est Markov.
hokies
3
@FzLbMj Bien sûr, les probabilités de transition existent quelque part. Le fait est - comme je l'ai dit - qu'ils ne sont pas appris .
Neil G
1
@nbro Model-based signifie apprendre la dynamique de l'environnement. Voici un modèle qui fait cela: Kuvayev, D. et Richard S. Sutton. Apprentissage par renforcement basé sur un modèle. Technologie. rept. université du massachusetts, Dept of computer science, 1997. Pour référence, vous pouvez utiliser google scholar lorsque vous ne savez pas quelque chose.
Neil G
1
Je viens de vous envoyer un article que vous pouvez lire qui a un algorithme qui apprend les probabilités de transition. Voir section 5.
Neil G
2
@nbro Nous avons évidemment un désaccord sur les définitions, donc si vous voulez être convaincant, veuillez étayer votre affirmation avec une référence.
Neil G
2

Pour plus de clarté, je pense que vous devriez remplacer maxa(Q,a) avec muneXune(Q(S,une))comme il n'y a qu'une seule fonction action-valeur, nous évaluons simplement Q sur les actions dans l'état suivant. Cette notation indique également oùp(s|s,une) mensonges.

Intuitivement, p(s|s,une)est une propriété de l'environnement. Nous ne contrôlons pas comment cela fonctionne, mais simplement en échantillonnons. Avant d'appeler cette mise à jour, nous devons d'abord effectuer une action A dans l'état S. Le processus de cette opération nous donne une récompense et nous envoie à l'état suivant. Cet état suivant dans lequel vous atterrissez est tiré dep(s|s,une)par sa définition. Donc, dans la mise à jour de Q-learning, nous supposons essentiellementp(s|s,une) est 1 parce que c'est là que nous nous sommes retrouvés.

C'est correct car c'est une méthode itérative où nous estimons la fonction optimale de la valeur d'action sans connaître la dynamique complète de l'environnement et plus précisément la valeur de p(s|s,une). S'il vous arrive d'avoir un modèle de l'environnement qui vous donne ces informations, vous pouvez modifier la mise à jour pour l'inclure en changeant simplement le retour àγp(S|S,UNE)muneXune(Q(S,une)).

Alex
la source
Merci beaucoup pour votre réponse. Ainsi, lorsque nous utilisons Q-learning, nous supposons simplement que toutes les actions ont une probabilité égale. BTW, avez-vous une idée de la méthode ( SARSAou Q-learning) à utiliser pour faire face à différentes situations? Merci.
hokies
Nous ne supposons pas que toutes les actions ont une probabilité égale. Nous supposons que la fonction de transition est déterministe pour notre calcul. Ce qui signifie que si vous effectuez la même action à partir du même état, vous arriverez dans le même état suivant. Pour Sarsa vs Q-learning, regardez ici: stackoverflow.com/questions/6848828/…
Alex
0

En plus de ce qui précède, Q-Learning est un algorithme sans modèle , ce qui signifie que notre agent connaît simplement les états que lui donne l'environnement. En d'autres termes, si un agent sélectionne et exécute une action, l'état suivant est déterminé uniquement par l'environnement et donné à l'agent. Pour cette raison, l'agent ne pense pas aux probabilités de transition d'état.

mustafamuratcoskun
la source