4

Sutton & Barto's Bookに基づいて線形勾配降下 Sarsa を実装しようとしています。下の図のアルゴリズムを参照してください。

ただし、アルゴリズムの何かを理解するのに苦労しています:

  • w と z の次元は、取られるアクションの数とは無関係ですか? 本では、それらは機能の数に等しい次元を持っているようです。これは、アクションの数に依存しないと言えます。
  • アクションごとに aw と az はありますか? また、これが事実であるべきだということを本の中で見ることはできません。
  • 上記の 2 つの箇条書きが正しければ、インデックス リスト F_a がアクションにどのように依存するかがわからないため、アクション値関数 q_a がアクションにどのように依存するかがわからない (下の黄色でマークされた行を参照)アルゴリズムで)しかし、アクション値はアクションに依存する必要があります。だから、得られないものがあります...

誰かが私のためにこれを明確にするのを手伝ってくれることを願っています:)

サルサアルゴリズム

4

1 に答える 1

4

w関数近似器の重みベクトルです。近似している関数はQ(s,a)、アクション値関数であり、状態でア​​クションを実行することの値を示します。重みを定義するのはあなた次第ですが、その通りです。重みでアクションをどのように表現するかを考える必要があります。1 つの方法として、一連の状態機能を定義し、アクションごとに 1 回インスタンス化する (複数の個別のwベクトル) ことが考えられます。便宜上、これらのベクトルを 1 つの大きなものに連結できます。wこれは、状態とアクションのペアの機能によってアクティブ化された重みベクトルのチャンクのみが更新されることがわかっているためです。ただし、アクション スペースが大きい場合、アクションごとに複数のばらばらな状態フィーチャ セットを使用すると重みが大きくなるため、複数のアクションを 1 つの重みの異なるスカラー値に圧縮する場合があります。アクション間で真の Q 値が近い場合は、同じようにパフォーマンスを発揮でき、最適化する必要がある重みが少ないため、実際にはより速く学習できます。表現は柔軟です。それはあなた次第です!

この本の第 2 版に書かれているアルゴリズムを参照することをお勧めします (ドラフトは著者のサイトから入手できます)。表記はより明確です。あなたが投稿したアルゴリズムは、実際にはラムダ戻りメソッドであり、これについては第 12 章で読むことができます (zこれは適格性トレースであり、同じ次元を持ち、wあなたが求めている質問にとって重要ではありません)。セクション 10.1 には、同じアルゴリズムから付加機能を除いたエピソード的半勾配 Sarsa が表示されます。

于 2016-11-23T03:41:52.807 に答える