強化学習

【書籍紹介】強化学習 第3章 強化学習問題

エージェントと環境間のインタフェース

強化学習とは、相互作用から学習して目標を達成する問題の枠組みそのものです。エージェントとは、学習と意思決定を行う者。環境とは、エージェント外部の全てから構成され、エージェントが相互作用を行う対象。

エージェントと環境は相互作用を行い、エージェントは行動を選択し、環境はその行動に応答してエージェントに新しい状況を提示します。環境を完全に指定すると強化学習問題の1つの例を表す「タスク」を定義することになります。

section 3

複雑なロボットでは、個々に境界を持った多くの異なったエージェントが同時に動作しています。例えば、あるエージェントは高レベルの意思決定を行い、低レベルエージェントが直面するような状態の一部を作り出すなど。

強化学習の枠組みは、環境から目標指向的に学習する問題を抽象化したものです。以下の3つの信号がエージェントと環境の間を行き来します。

  • エージェントの選択(行動)を表すもの
  • 選択の根拠(状態)を表すもの
  • エージェントの目標(報酬)を表すもの

すごい良い例がいくつかあるので、詳細は書籍をご覧ください!

目標と報酬

強化学習において、エージェントの目的あるいは目標は、環境からエージェントに送られる特殊な信号の観点から形式化することが出来ます。目標に関する考え方を形式化するために報酬信号を用いることは、強化学習の最も大きな特徴の1つです。報酬信号は、エージェントにどのように目標を達成してほしいかでなく、何を達成してほしいかを伝える方法です。

強化学習の扱い始めの段階では、報酬(学習の目標を定義するもの)がエージェント内ではなくて、環境内で計算されることに驚くことがあります。我々の目的のためには、学習エージェントの境界を物理的な体の限界ではなく、制御の限界に置いて方が好都合。

収益

エージェントの目標は期待収益の最大化。

$$ R_t= r_{t + 1} + r_{t+2} + r_{t+3} + ・・・ + r_T $$

エージェントと環境の相互作用の部分系列をエピソード(もしくはtraials)と呼びます。各エピソードは終端状態という特殊な状態で終わります。

上記の式の収益情報は連続タスクにおいては問題があります。時間ステップが T = ∞ で、最大化しようとする収益は容易に無限となりえます。そこで、割引の概念を必要とします。

$$ R_t= r_{t + 1} + \gamma r_{t+2} + \gamma r_{t+3} + ・・・ + \sum_{k=0}^∞ \gamma r_{t+k+1} $$

$$ \gammaは割引率で、0 ≦ \gamma ≦ 1 $$

エピソード的タスクと連続タスクの統一的記述

エピソード的タスク:エージェントと環境の相互作用が分離したエピソード群(エピソード的タスク群)に必然的に分解されるもの
連続タスク:そのようにならないもの

この両方の場合を正確に同時に説明できるような記法を確立しておくことが重要。そのために以下の2点を取り決めます。

  • 記法を乱し、エピソード番号の明確な参照を行わない。
  • エピソードの終了が特殊な九州状態に入ることと考える。

end_of_an_episode

$$ R_t = \sum_{k=0}^T \gamma^k t_{t+k+1} $$

マルコフ性

エージェントは環境からの信号の関数として意思決定を行い、この信号は環境の状態と呼ばれます。状態信号には何が必要なのか、それを得るためにどのような情報を期待すべきか、すべきでないかは、マルコフ性と呼ばれる環境の性質で定義します。

この本では、状態という言葉は、どのようなものであれ、エージェントが利用可能な情報を意味します。状態表現はもともとの近くを高度に処理したものであるか、あるいは、近くの系列から時間の経過とともに組み立てられた複雑な構造です。

アプリケーションでは、エージェントが状態表現からそれ以上の情報を得ることを期待すべきです。他方で、エージェントが状態信号から環境に関するあらゆること、あるいは意思決定に有用そうなあらゆることを知ることは期待すべきではありません。全ての関連情報をうまく保持することの出来る状態信号はマルコフ的である、あるいはマルコフ性を持つと言われます(以下に形式的に定義する)

$$ P_r {S_{t+1} = S’, r_{t+1} = r|S_t, a_t, r_t, S_{t-1}, a_{t-1}, ・・・, r_1, s_0, a_0} $$

sは状態、rは報酬、aは行動です。つまりは、時刻tで取られた行動に対して、環境が時刻t+1においてどのように応答するか、この応答はその時点より前に起こったあらゆることに依存します。状態信号がマルコフ性を持つなら、t+1における環境の応答はtにおける状態と行動表現のみに依存することになり以下のようになります。

$$ P_r {S_{t+1} = S’, r_{t+1} = r | S_t, a_t} $$

一つ前の式がこの式と等しい時に限り、状態信号がマルコフ性を持ち、マルコフ状態であると言えます。この場合、全体としての環境とタスクもマルコフ性を持つと言えます。もし環境がマルコフ性を持ち、現在の状態と行動が与えられるなら、その上の式(1ステップダイナミクス)から次の状態と行動を予測することが出来ます。マルコフ性が成り立つ場合の理論を完全に理解することは、より複雑で現実的な非マルコフ性の場合に拡張するための基礎になります。

マルコフ決定過程

マルコフ性を満たす強化学習タスクはマルコフ決定過程(Markov decision process)MDPと呼ばれます。状態と行動の空間が有限である時は、有限MDP。(MDPを理解すると最近の強化学習の90%を理解することになるらしい)。

sとaが与えられたとき、次の可能な各状態s’の確率は、

$$ P_{ss’}^a = P_r {S_{t+1} = s’ | s_t = s, a_t=a} $$

これは遷移確率(transition probability)と呼ばれます。同様に報酬期待値は、

$$ R_{ss’}^a = E {r_{t+1} = s’ | s_t = s, a_t = a, s_{t+1} = s’} $$

価値関数

ほとんど全ての強化学習アルゴリズムは価値関数(value function)に基づく評価を行っています。この関数は状態(あるいは状態行動対)の関数で、エージェントがある状態にいることがどれだけ良いのか(あるいは、ある状態において、ある行動を行うことがどれだけ良いのか)を評価します。

期待される収益はエージェントの行動に依存するので、価値観数は特定の方策に関して定義されます。方策πとは、各状態s∈Sと行動a∈A(s)で、状態sで行動aを撮る確率π(s, a)への写像でした。

  • 状態価値関数(state-value function)

状態sにいて方策πに従ったときの期待収益は以下の通りとなります。

$$ V^\pi (s) = E_{\pi} {R_t | s_t = s} = E_{\pi} { \sum_{k=0}^{\infty} \gamma^k r_{t+k+1} | s_t = s } $$

\begin{align}
E_{\pi} {} & :エージェントが \pi に従う時の期待値
関数V^{\pi} & :方策 \pi に対する状態価値関数
\end{align}

  • 行動価値関数(action-value function)

方策πのもとで状態sにおいて行動aをとることを価値。

$$ Q^{\pi} (s, a) = E_{\pi} {R_t | s_t = s, a_t = a } = E_{\pi} {\sum_{k=0}^{\infty} r_{t+k+1} | s_t = s, a_t = a } $$

状態価値関数と行動価値関数を見積るには、モンテカルロ法(ランダムに集められた標本値の平均化を行う)を使う。(時点tでk回目のプレイという理解)ある状態の価値と、その後に続く状態(後続状態群)の価値との関係を表す式は以下の通り。

\begin{align}
V^{\pi} (s) & = E_{\pi} {R_t | s_t = s}
& = \sum_a \pi(s,a) \sum_s’ P^a_{ss’} [ R^a_{ss’} + \gamma V^{\pi} (s’) ]
\end{align}

展開は書籍に詳しく書いてありますが、Γが割引率ということを覚えていれば大丈夫です!また、この式をBellman方程式と呼ぶようです。

最適価値関数

強化学習問題のタスクを解くことは、最終的に多くの報酬獲得を達成するような方策を見つけることを意味します。ある方策が他の方策よりも良いとき(等しい方策があってもいい)、その方策を最適方策といいます。最適方策は1つ以上存在するかもしれませんが、全ての最適方策をπ*と書きます。

最適方策群は、同じ状態価値関数(最適状態価値関数)を共有します。

$$ V^* (s) = \max_{\pi} V^{\pi} (s) $$

最適方策群は、同じ最適行動価値関数(Q*)を持ちます。

$$ Q^* (s) = \max_{\pi} Q^{\pi} (s) $$

Vを使ってQを書くと以下の通り。

$$ Q^* (s) = E{r_{t+1} + \gamma V^* (s_{t+1} | s_t = s, a_t = a}$$

最適性と近似

タスクに対して最適方策を生成するには極端な計算コストを要します。めったに遭遇しない状態群には少ない労力を割き、頻繁に遭遇する状態群に対しては良い意思決定を行うように努力するという方法で、最適方策を近似することが強化学習のオンライン性によって可能です。これが、「MDPを解く他のアプローチ」と「強化学習」とを区別する重要な性質です。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です