0

私は、倒立振子の問題をモデル化し、強化学習アルゴリズム、特に Q-Learning で解決するサイド プロジェクトに取り組んでいます。私はすでに、グリッドの世界向けの単純な MDP ソルバーを設計しました。簡単なものです。

しかし、研究論文を何日も精査した後、これを行う方法を理解するのに苦労しています. 問題を表現するためのフレームワークを構築する方法については何も説明されていません。

問題をモデル化するとき、標準のマルコフ決定プロセスを使用できますか? それともPOMDPでなければなりませんか?

各状態で何を表すか (つまり、どの状態情報がエージェントに渡されるか)? 座標、速度、振り子の角度など?

エージェントはどのようなアクションを実行できますか? + または - x 方向の速度の連続範囲ですか?

これに関するアドバイスは大歓迎です。

4

1 に答える 1

1

Richard S. Sutton と Andrew G. Barto による "Reinforcement Learning: An Introduction" は、強化学習に関する既定の本であり、カート ポール問題についても説明しています ( http://webdocs.cs.ualberta.ca/~sutton/book /the-book.html )。Sutton は、カート ポール問題の C コードも提供しています: http://webdocs.cs.ualberta.ca/~sutton/book/code/pole.c もちろん、この問題の多くの実装がオンラインにあります: https://github .com/stober/cartpole

必要なハードに応じて、問題に対する複数の解決策があります。

  • MDP または POMDP としてモデル化できます。
  • 状態は、位置、速度、角度、角速度、またはこれらのサブセットで構成できます。
  • 状態空間を離散化でき、関数近似を使用できます。
  • アクションは、単純に最小および最大加速度 (離散)、またはその中間 (離散または連続) にすることができます。

簡単に始めて、より難しい問題に取り組みましょう。

于 2013-12-17T09:58:48.947 に答える