2010-01-27 16 views
7

alt text http://img693.imageshack.us/img693/724/markov.pngprocessus de décision de Markov questions de

Je suis un peu confus au sujet de quelques points ici:

  1. Qu'est-ce que cela signifie de dire qu'il sera couronné de succès 70% du temps, il tente une donnée action? Cela signifie-t-il que chaque fois qu'il essaye d'effectuer une action A, il fait 70% du temps cette action A et les 30% restants font l'action qui mène au même état, ou juste que c'est comme s'il l'avait toujours fait l'action A, mais seulement 30% des fois, il ne le fait tout simplement pas? J'espère que je suis clair: (
  2. Comment est-il possible d'avoir plusieurs états consécutifs avec la même utilité? En théorie l'utilité ne devrait pas toujours diminuer, plus vous êtes loin des états avec une récompense?
  3. que les informations que j'ai donné ci-dessus, est-il possible de déduire ce qui est le facteur d'actualisation (gamma)? Si oui, comment?
  4. est-il possible de calculer la récompense pour les Etats? comment?

Répondre

4

Il existe un modèle pour traiter la plupart des problèmes MDP, mais je pense que vous avez probablement omis certaines informations de la description du problème, très probablement en rapport avec l'état que vous essayez d'atteindre, ou la façon dont l'épisode se termine (que se passe-t-il si vous courez du bord de la grille). J'ai fait de mon mieux pour répondre à vos questions, mais j'ai ajouté un guide sur le processus que j'utilise pour régler ce genre de problèmes. D'abord, l'utilité est une mesure assez abstraite de combien vous voulez être dans un état donné. Il est certainement possible d'avoir deux états avec une utilité égale, même quand on mesure l'utilité avec une heuristique simple (distance Euclidienne ou Manhattan). Dans ce cas, je suppose que la valeur d'utilité et la récompense sont interchangeables. À long terme, l'objectif de ces types de problèmes tend à être, comment maximiser votre récompense (à long terme)? Le taux d'apprentissage, gamma, contrôle l'importance que vous accordez à l'état actuel par rapport à l'endroit où vous souhaitez vous retrouver. En fait, vous pouvez considérer le gamma comme un spectre allant de à faire ce qui me plaît le plus dans cette période ' à l'autre extrême ' explorer toutes mes options, et revenir à la meilleure '. Sutton et Barto dans leur livre sur reinforcement learning ont de très bons explanations de comment cela fonctionne.


Avant de commencer, revenez à la question et assurez-vous que vous pouvez répondre avec confiance aux questions suivantes.

  1. Qu'est-ce qu'un état? Combien d'états y a-t-il?
  2. Qu'est-ce qu'une action? Combien d'actions y a-t-il?
  3. Si vous démarrez dans l'état u, et que vous appliquez une action a, quelle est la probabilité d'atteindre un nouvel état v?

Alors les réponses aux questions?

  1. Un état est un vecteur (x, y). La grille est 5 par 5, donc il y a 25 états.
  2. Il existe quatre actions possibles, {E, N, S, W}
  3. La probabilité d'atteindre un état adjacent après avoir appliqué une action appropriée est de 0,7, la probabilité de ne pas bouger (rester dans le même état est de 0,3). En supposant que (0,0) est la cellule en haut à gauche et (4,4) est la cellule en bas à droite, le tableau suivant montre un petit sous-ensemble de toutes les transitions possibles.
 
Start State Action   Final State Probability 
--------------------------------------------------- 
(0,0)   E    (0,0)   0.3 
(0,0)   E    (1,0)   0.7 
(0,0)   E    (2,0)   0 
... 
(0,0)   E    (0,1)   0 
... 
(0,0)   E    (4,4)   0 
(0,0)   N    (0,0)   0.3 
... 
(4,4)   W    (3,4)   0.7 
(4,4)   W    (4,4)   0.3 

Comment pouvons-nous vérifier que cela a un sens pour ce problème?

  1. Vérifiez que la table possède un nombre d'entrées approprié. Sur une grille 5 par 5, il y a 25 états et 4 actions, donc la table devrait avoir 100 entrées.
  2. Assurez-vous que pour une paire état/action de départ, seules deux entrées ont une probabilité de survenue non nulle.

Modifier. répondre à la demande des probabilités de transition à l'état cible. La notation ci-dessous suppose

  • v est l'état final
  • u est l'état de la source
  • a est l'action, où il ne soit pas mentionné, il est implicite que l'action appliquée est sans objet.
 
P(v=(3,3) | u =(2,3), a=E) = 0.7 
P(v=(3,3) | u =(4,3), a=W) = 0.7 
P(v=(3,3) | u =(3,2), a=N) = 0.7 
P(v=(3,3) | u =(3,4), a=S) = 0.7 
P(v=(3,3) | u =(3,3)) = 0.3 
+0

Comment définiriez-vous ensuite la fonction de transition à l'état sélectionné (en gras)? –

+1

J'ai modifié mon message original pour inclure une réponse à cette question –

+0

Ce que vous appelez le taux d'apprentissage/gamma est connu sous le nom de facteur d'actualisation/lambda. – ziggystar

1

ad.1) probablement ce n'est pas que le robot a toujours bouger - c'est-à-dire que ces 30% sont «ah, maintenant je me repose un peu» ou «il n'y avait aucun pouvoir de bouger du tout».

+0

donc ma fonction de transition est un vecteur d'une seule valeur? T (s, a, s ') = (1,0)? Contrairement à mon hypothèse initiale que c'était T (s, a, s ') = (0.7, 0.3), étant la première coordonnée quand il se déplace effectivement et la seconde quand il reste? –

+0

Pourquoi 1.0? Je préfère cette syntaxe: P (s '| s) = 0.7, P (s | s) = 0.3, où s'! = S. – greenoldman

0

J'ai formulé ce problème comme la décision-Horizon de Markov Finite processus et résolu via Policy Iteration. À droite de chaque itération, il y a une représentation en grille de couleurs des actions recommandées pour chaque état ainsi que la grille/matrice de récompense originale.

Passez en revue la politique/stratégie finale à l'étape 4. Est-ce que cela correspond à votre intuition?

enter image description here

enter image description here

enter image description here

enter image description here

enter image description here