2

グリッドの世界(エージェントムービーの左、右、上、下)で最適なポリシー(強化学習-マルコフ決定過程)を計算する必要があるタスクがあります。

左の表には、最適値(V *)があります。右の表には、その「最適なポリシー」の公式を使用して取得する方法がわからない解決策(方向)があります。Y = 0.9(割引係数)

ここに画像の説明を入力してください

そしてここに式があります:

ここに画像の説明を入力してください

したがって、誰かがその式の使用方法を知っている場合は、解決策(これらの矢印)を取得するために、助けてください。

編集:このページには問題の説明全体があります: http : //webdocs.cs.ualberta.ca/~sutton/book/ebook/node35.html報酬:状態A(列2、行1)の後に次の報酬が続きます+10で状態A'に遷移し、状態B(列4、行1)の後に+5の報酬が続き、状態B'に遷移します。あなたは動くことができます:上、下、左、右。グリッドの外に移動したり、同じ場所に留まったりすることはできません。

4

1 に答える 1

1

数学を少しずつ分解します。

arg max(....)は、括弧内のすべてを最大化する引数aを見つけるように指示しています。変数a、s、およびs'は、それぞれアクション、現在の状態、およびそのアクションの結果として生じる状態です。したがって、arg max(...)は、その項を最大化するアクションを見つけるように指示しています。

あなたはガンマを知っています、そして誰かがその結果の状態の値であるV *(s')を計算するという大変な仕事をしました。だからあなたはそこに何を差し込むべきか知っていますよね?

では、p(s、a、s')とは何ですか?これは、sから始まり、aを実行すると、いくつかのs'で終わる確率です。これは、ある種の故障したアクチュエータを表すことを意味します-あなたは「前進してください!」と言います。そしてそれは愚かに左に行くことを決定します(または2マス前方、または静止したまま、または何でも)。この問題のために、私はそれがあなたに与えられることを期待しますが、あなたはそれを私たちと共有していません。そして、s'の合計は、sで開始し、アクションaを選択すると、結果として生じる可能性のあるすべてのs'の状態を合計する必要があることを示しています。繰り返しますが、それらが何であるかを知るには、そのp(s、a、s')関数の詳細が必要です。

そして最後に、最終的にどこに行くかに関係なく、状態sでアクションaを実行することに対する報酬であるr(s、a)があります。この問題では、燃料費を表すために、わずかにマイナスになる可能性があります。グリッドに一連の報酬とグラブアクションがある場合、それはポジティブかもしれません。あなたもそれが必要です。

じゃあ何をすればいいの?状態を選択し、そのポリシーを計算します。sごとに、(s、a1)、(s、a2)、(s、a3)などの可能性があります。最大の結果が得られるaを見つける必要があります。そしてもちろん、各ペア(s、a)について、(実際には、ほぼ確実に)合計に固執するs'の複数の値を持つことができます。

これが大変な作業のように聞こえるなら、まあ、それが私たちがコンピューターを持っている理由です。

PS-壁にぶつかった場合に何が起こるかを知るために、問題の説明を注意深く読んでください。

于 2012-01-30T22:57:51.820 に答える