1

Q-Learningを理解しようとしている

基本的な更新式:

Q(st, at) += a[rt+1, + d.max(Q(st+1, a)) - Q(st,at)]

式とその機能は理解していますが、私の質問は次のとおりです。

エージェントはどのようにして Q(st, at) を選択することを知っていますか?

エージェントが何らかのポリシー π に従うことは理解していますが、そもそもこのポリシーをどのように作成しますか?

  • 私のエージェントはチェッカーをしているので、モデルフリーのアルゴリズムに焦点を当てています。
  • エージェントが知っているのは、現在の状態だけです。
  • アクションを実行するときにユーティリティを更新することは理解していますが、そもそもそのアクションを実行することをどのように知っているのでしょうか。

現時点で私は持っています:

  • その状態から実行できる各動きを確認します。
  • 有用性が最も高い手を選択します。
  • 行われた移動のユーティリティを更新します。

ただし、これは実際にはあまり解決しません。それでも、ローカルの最小値/最大値にとどまります。

締めくくりとして、私の主な質問は次のとおりです。

何も知らず、モデルフリーのアルゴリズムを使用しているエージェントの場合、最初のポリシーを生成して、取るべきアクションを知るにはどうすればよいでしょうか?

4

1 に答える 1

0

その更新式は、すべての状態の各アクションの期待値を段階的に計算します。貪欲なポリシーは、常に最も価値の高いアクションを選択します。これは、すでに価値を学んでいる場合に最適なポリシーです。学習中に使用される最も一般的なポリシーは ε-greedy ポリシーです。これは、確率 1-ε で最も価値の高いアクションを選択し、確率 ε でランダム アクションを選択します。

于 2016-04-23T16:05:42.013 に答える