4. 強化学習 - モデル自由制御


このコースのすべての内容は、最終的にこの講義の内容に集中します。この講義の学習を通じて、まったく未知の環境でより適切にタスクを完了し、できるだけ多くの報酬を獲得できるようにエージェントをトレーニングする方法を学びます。 . .
前回の講義では主にモデルが不明な場合の予測方法について説明しました。いわゆる予測とは、 与えられた戦略を評価すること、つまり、与えられた戦略の下で状態 (または状態と動作のペア) の価値関数を決定することです この講義の内容は主に、 モデルの未知の条件下で価値関数を最適化する方法について です(モデル非依存制御とも呼ばれます)。

モデルの下での戦略の反復

ここに画像の説明を挿入します一般的なポリシー反復の中核は、2 つの交互のプロセス間のポリシーの最適化です。1 つのプロセスは戦略評価であり、もう 1 つは改善戦略です。
動的計画法アルゴリズムを使用して戦略を改善するには、特定の状態の後続のすべての状態と状態間の遷移確率を知る必要があることに注意してください。
π ' ( s ) = argmax ⁡ a ∈ AR sa + P ss ' a V ( s ' ) \ pi^{ \prime}(s)=\underset{a \in \mathcal{A}}{\operatorname{argmax}} \mathcal{R}_{s}^{a}+\mathcal{P}_{ ss^{ \prime}}^{a} V\left(s^{\prime}\right)円周率( s )_=a Aアールマックス_ _ _ _Rs+Pss _V( s _

  • モデルフリーのポリシー反復の場合
    、この方法はモデル不明のモンテカルロ学習に適していますか? 答えはノーで、少なくとも 2 つの問題があります1 つは、モデルが不明な場合、現在の状態のその後のすべての状態を知ることは不可能であるため、現在の状態でどのような動作がより適切であるかを判断することは不可能であるということです。この問題を解決する方法は、状態と動作のペアの下で値Q ( s , a ) Q(s,a)を使用することです。Q ( s ,a )状態値の代わり:
    この目的は、モデル全体を知らなくても戦略を改善することです。特定の状態でどのような動作が最大の値を持つかを知ることだけが必要です。具体的には、最初の Q とポリシーπ \piπから開始して、最初にこの戦略に従って各状態と動作のペアのQ (s, a) Q(s,a)Q ( s ,a )値、s は、改良された貪欲アルゴリズムによって更新された Q に基づいて決定されます。
    それでも、少なくとも 1 つ問題があり、貪欲なアルゴリズムを使用して毎回戦略を改善すると、サンプリングの経験が不十分なために次善の戦略につながる可能性が非常に高いため、時々試行する必要があります。いくつかの新しい動作、これは探索です。

Ɛ-貪欲な探索 (MC-コントロール)

Ɛ-貪欲探索の目標は、特定の状態で考えられるすべての動作が、実行のために選択される一定の非ゼロの確率を持つことを保証することです。これにより、継続的な探索が保証されます。1 − ϵ 1-\epsilon1ϵおよびϵ \epsilonの確率に基づいて現在最良と考えられる動作を選択します。すべての可能なアクション (現在最適なアクションを含む) の中からϵを選択する確率。数式は次のとおりです。
π ( a ∣ s ) = { ϵ / m + 1 − ϵ if a ∗ = argmax ⁡ a ∈ AQ ( s , a ) ϵ / m それ以外の場合 \pi(a | s)=\left \{ \begin{array}{ll} \epsilon / m+1-\epsilon & \text { if } a^{*}=\underset{a \in \mathcal{A}}{\operatorname{argmax}} Q( s, a) \\ \epsilon / m & \text { それ以外の場合 } \end{array}\right。π ( a s )={ ϵ /メートル+1ϵϵ /メートル もし _=a Aアールマックス_ _ _ _Q ( s ,_それ以外の場合 
m はアクションの総数です。

ϵ \イプシロンϵ貪欲な戦略改善定理:
任意のϵ − 貪欲な \epsilon-greedyϵグレーディ戦略π \ pi _ _ _πに関しては、対応するq π q_\piqp得られたϵ − 貪欲な \epsilon-greedyϵグレー戦略π ' ' \ pi '円周率' はπ \piにありますπに関する戦略の改善、つまり、 v π ' ( s ) ≥ v π ( s ) v_{\pi'}(s)\ge v_{\pi}(s)v円周率( s )vp( s )

証明:
https://zhuanlan.zhihu.com/p/54272316 を参照してください。
もちろん、上記の参考リンクは不完全で欠陥があると感じますので、改善します:導入ϵ − ソフト − 貪欲 \epsilon-
ここは柔らかいです。ϵ柔らかい_ _ _g re e d y概念。これは、すべての状態とアクションについて、π ( a ∣ s ) ≥ ϵ m \pi(a | s) \geq \frac{\epsilon}{m} を意味します。π ( a s )メートルϵ、ここで、ϵ > 0 \epsilon>0ϵ>0 ϵ −貪欲 \epsilon-greedyϵgr e e d y人間− ソフト − 貪欲 \epsilon-soft-greedyϵ柔らかい_ _ _g r e e d y
、 ppt の加重平均値の最大加重合計を決定します
。 q π ( s , π ' ( s ) ) = ∑ a ∈ A π ' ( a ∣ s ) q π ( s , a ) = ϵ / m ∑ a ∈ A q π ( s , a ) + ( 1 − ϵ ) max ⁡ a ∈ A q π ( s , a ) ≥ ϵ / m ∑ a ∈ A q π ( s , a ) + ( 1 − ϵ ) ∑ a ∈ A π ( a ∣ s ) − ϵ m 1 − ϵ q π ( s , a ) = ∑ a ∈ A π ( a ∣ s ) q π ( s , a ) = v π ( s ) \begin{aligned} q_{\pi}\left(s, \pi^{\prime}(s)\right) &=\sum_{a \in \ mathcal{A}} \pi^{\prime }(a | s) q_{\pi}(s, a) \\ &=\epsilon / m \sum_{a \in \mathcal{A}} q_{\ pi}(s, a)+(1- \epsilon) \max _{a \in \mathcal{A}} q_{\pi}(s, a) \\ & \geq \epsilon / m \sum_{a \in \mathcal{A}} q_{\ pi}(s, a)+(1-\epsilon) \sum_{a \in \mathcal{A}} \frac{\pi(a | s)-\frac {\epsilon}{m}}{1- \epsilon} q_{\pi}(s, a) \\ &=\sum_{a \in \mathcal{A}} \pi(a | s) q_{\ pi}(s, a)=v_{\ pi}(s) \end{整列}qp( s 円周率' (s)_=a A円周率' (as)qp( s _=ϵ /メートルa Aqp( s _+( 1) _a Aマックスqp( s _ϵ /メートルa Aqp( s _+( 1) _a A1ϵπ ( a s )メートルϵqp( s _=a Aπ ( a s ) qp( s _=vp( s )
以上の最もとらえどころのない起源は、次の方法で証明されます。ϵ − Soft \epsilon-soft
によるとϵs f t関数、 π ( a ∣ s ) ≥ ϵ m \pi(a | s) \geq \frac{\epsilon}{m}π ( a s )メートルϵ,無限にπ ( a ∣ s ) = ϵ m + Δ \pi(a | s)=\frac{\epsilon}{m}+\Deltaπ ( a s )=メートルϵ+自由関数の維持
: π ( a ∣ s ) = { 1 − ϵ − ( m − 1 ) Δ + ϵ m (貪欲なアクションの場合) ϵ m + Δ (すべての非 gre の場合) \pi ( a | s ) = \ . left\ { \begin{array} { ll } 1 - \epsilon - (m-1)\Delta + \frac { \epsilon } { m } & \text { 貪欲なアクションの場合 } \\ \frac { \epsilon } { m } + \Delta & \text { 非 - gre ごとに } \end { 配列 } \ rightπ ( a s )={ 1ϵ( m1 ) D+メートルϵメートルϵ+D 貪欲な行動のために  すべての非 グレ
ここでは次のように仮定されます。

  1. m-1 個の非貪欲アクションがあり、1 個の貪欲アクションがあり、π ( a ∣ s ) \pi(a|s)π ( a s )の合計= 1 であるため、貪欲なアクションの場合、π ( a ∣ s ) \pi(a|s)π ( a s ) :
    1 − ϵ + m / ϵ − ( m − 1 ) Δ 1-\epsilon +m/\epsilon -(m-1)\Delta1ϵ+m / ϵ( m1 ) D
  2. さらに、すべての非貪欲 Q(s,a) 値は、非貪欲における最大の Q 値qs q_sに一律に等しくなります。qs; 貪欲なアクションの Q 値はqm q_mです。qメートルmax ⁡ a ∈ A q π ( s , a ) = qm \max _ { a \in \mathcal { A } } q _ { \pi } ( s , a ) = q _ { m }
    a Aマックスqp( s _=qメートル
    つまり下の式:
    ∑ a ∈ A π ( a ∣ s ) − ϵ m 1 − ϵ q π ( s , a ) < = ( 1 − ϵ − Δ m + Δ + ϵ m ) − ϵ m 1 − ϵ qm + ( ϵ m + Δ ) − ϵ m 1 − ϵ qs ( m − 1 ) = ( 1 − ϵ − Δ m + Δ ) qm + Δ ( m − 1 ) qs 1 − ϵ = ( 1 − ϵ ) qm − Δ ( m − 1 ) qm + Δ ( m − 1 ) qs 1 − ϵ = qm + Δ ( m − 1 ) ( qs − qm ) <= qm = max ⁡ a ∈ A q π ( s , a ) \ begin {aligned} \sum _ { a \in \mathcal { A } } \frac { \pi ( a | s ) - \frac { \epsilon } { m } } { 1 - \epsilon } q _ { \pi } ( s , a ) & <= \frac { \left( 1 - \epsilon - \Delta m + \Delta + \frac { \epsilon } { m } \right) - \frac { \epsilon } { m } } { 1 - \epsilon } q _ { m } + \frac { \left( \frac { \epsilon } { m } + \Delta \right) - \frac { \epsilon } { m } } { 1 - \epsilon } { } q _ { s } ( m - 1 ) \\ & = \frac { ( 1 - \epsilon - \Delta m + \Delta ) q _ { m } + \Delta ( m - 1 ) q _ { s } } { 1 - \epsilon } \\ & = \frac { ( 1 - \epsilon ) q _ { m } - \Delta ( m - 1 ) q _ { m } + \Delta ( m - 1 ) q _ { s } } { 1 - \epsilon } \\ & = q _ { m } + \Delta ( m - 1 ) \left( q _ { s } - q _ { m } \right) \\ &<= q_m =\max _ { a \in \mathcal { A } } q _ { \pi } ( s , a ) \end{aligned}a A1ϵπ ( a s )メートルϵqp( s _< =1ϵ( 1ϵΔm_ _+D+メートルϵメートルϵqメートル+1ϵ(メートルϵ+D )メートルϵqs( m1 )=1ϵ( 1ϵΔm_ _+D ) qメートル+D ( m1 ) qs=1ϵ( 1ϵ ) qメートルD ( m1 ) qメートル+D ( m1 ) qs=qメートル+D ( m1 )( qsqメートル< =qメートル=a Aマックスqp( s _
    上記はq π ( s , π ' ( s ) ) q_{\pi}(s,{\pi'}(s)) であることを証明します。qp( s 円周率(s)) v π ( s ) v^\pi(s) vπ (s)v π ' ( s ) v^{\pi'}(s) であることは証明されません。v円周率(s) v π ( s ) v^\pi(s) vπ (s)は大きいので、もう一度公開します:
    Q π ( s , π ' ( s ) ) = E [ rt + 1 + V π ( st + 1 ) ∣ st = s , at = π ' ( st ) ] < = E [ rt + 1 + Q π ( st + 1 , π ' ( st + 1 ) ) ∣ st = s , at = π ' ( st ) ] = E [ rt + 1 + rt + 2 + V π ( st + 2 ) ∣ 。] < = E [ rt + 1 + rt + 2 + Q π ( st + 2 , π ' ( st + 2 ) ) ∣ 。]。< = V π ′ ( s ) \begin{aligned} Q^\pi(s,\pi'(s)) &= E[r_{t+1}+V^\pi(s_{t+1}) |s_t = s,a_t = \pi'(s_t)] \\ &<=E[r_{t+1}+Q^\pi(s_{t+1},\pi'(s_{t+1}) ))|s_t = s,a_t = \pi'(s_t)]\\ &= E[r_{t+1}+r_{t+2}+V^\pi(s_{t+2})|。 ...]\\ &<= E[r_{t+1}+r_{t+2}+Q^\pi(s_{t+2},\pi'(s_{t+2}))| ....]\\ &....\\ &<= V^{\pi'}(s) \end{aligned}Qπ (s,円周率' (s)_=E [ rt + 1+Vπ (st + 1) s=_ある=円周率' (s) ]< =E [ rt + 1+Qπ (st + 1円周率' (st + 1) ) s=_ある=円周率' (s) ]=E [ rt + 1+rt + 2+Vπ (st + 2) . ]< =E [ rt + 1+rt + 2+Qπ (st + 2円周率' (st + 2) ) ]< =V円周率( s )_
    それは上の式で完全に証明されます: v π ' ( s ) ≥ v π ( s ) v^{\pi'}(s)\ge v^\pi(s)v円周率( s )_vπ (s)
    上記の 2 つの問題を解決すると、最終的に、戦略の評価に Q 関数を使用し、戦略を改善するために Ɛ 貪欲探索を使用するという、モンテカルロ制御の全体像が見えてきます。この方法は、最終的には最適なポリシーに収束できます。
    ここに画像の説明を挿入します
    図の上向きまたは下向きの矢印はそれぞれ、複数のエピソードに対応します。つまり、通常、複数のエピソードを経験した後、Q 機能の更新や戦略の改善を順次実行します。実際、エピソードごとに Q 機能を更新したり、戦略を改善したりすることもできます。しかし、どの手法を使用しても、Ɛ-greed 探索計算では、常に特定の戦略に基づいて近似 Q 関数のみを取得できます。アルゴリズムは常に探索しているため、終了条件がありません。したがって、私たちは次の 2 つの側面に注意を払う必要があります: 一方で、より良い情報とステータスを失いたくない一方で、戦略が向上するにつれて、最終的には最適な戦略に到達したいと考えます。なぜなら、実際には、最適な戦略にはランダムな動作の選択が含まれるべきではないからです。この目的のために、別の理論的概念であるGLIE

GLIE(無限の探求と限界への貪欲さ)

このアルゴリズムの考え方は、限られた時間の中で無限の可能性を探求することです。具体的なパフォーマンスは次のとおりです。

  1. 経験されたすべての状態とアクションのペアは無限に探索されます。
  2. さらに、探索が無限に拡張されると、貪欲アルゴリズムの Ɛ 値は 0 になる傾向があります。たとえば、ϵ = 1 / k \epsilon = 1/kとすると、ϵ=1 / k (k は探索されたエピソードの数) の場合、貪欲なモンテカルロ コントロールは GLIE 特性を持ちます。

GLIE に基づくモンテカルロ制御プロセスは次のとおりです。
ここに画像の説明を挿入します
GLIE に関する定理: GLIE モンテカルロ制御は最適な状態挙動値関数に収束することができます。つまり、Q ( s , a ) Q(s,a)です。Q ( s ,a ) はq ∗ ( s , a ) q_{*}(s,a)に収束しますq( s _(証拠を補足するために関連する論文を見つけてください)

TDコントロール

オンポリシー TD コントロール

前の講義で述べたように、TD には MC に比べて、分散が小さい、オンラインでのリアルタイム学習、不完全なエピソード学習など、多くの利点があります。
では、制御問題に対して MC 学習の代わりに TD 学習を使用できないか、と考えるのは自然なことではないでしょうか。答えは「はい」です。これは後述する SARS です。
ここに画像の説明を挿入します

ソース

SARSA の名前は、以下の図に示されているシーケンス記述に由来しています: 状態 S と特定の行動 A に対して、状態と行動のペア (S, A) が生成され、環境と相互作用します。行動を分析すると、個人の直接の報酬 [式] とその後に入る状態 S' がわかります。その後、個人は既存の戦略に従って行動 A' を生成し、次の状態と行動のペア (S') の値 Q を取得します。 、A') を現在の状態の動作値関数 (S',A') に基づいて作成し、この Q(S',A') 値を使用して前の状態の動作の値を Q(S,A) に更新します。
アルゴリズムのフローチャートを以下に示します:
ここに画像の説明を挿入します
より直観的な説明は次のとおりです: エージェントは特定の状態 S にあり、そこではさまざまな動作を試行できます。特定の戦略に従う場合、現在の戦略に基づいて選択します。行動 A、個人は実際にこの行動を実行し、実際に環境と対話します。環境はその行動に応じて即座に報酬 R を与え、次の状態 S' に入ります。この後続の状態 S' では、現在の戦略に従います。 A'、このとき、個人はその行動を実行しませんが、現在の状態-行動値関数を通じて (S', A') 状態-行動ペアの値を取得し、これを使用します個人の状態 S と組み合わせて行動 A を取るための値。得られた即時報酬は、状態 S で行動 A をとった個人の (状態) 行動値を更新します。

SARSA 戦略の疑似コード:
ここに画像の説明を挿入します
注:
1. アルゴリズムの Q(s,a) は大きなテーブルに格納されているため、大規模な問題を解決するのには適していません;
2. 各エピソードで、現在の動作に基づいた動作 A を使用します。 Q(S,A) 状態行動ペアを更新する価値サイクルにおいて、個人は実際には S' の下で A' 行動を実行するのではなく、エピソードで実際に発生する行動です。動作 A' から次のループ実行まで。つまり、実際には、A を A' に割り当てる疑似コードの最後の行は冗長です。これは、次の状態のアクションが次のループで選択され、次のループで値関数の新しいラウンドによって取得された戦略が実行されるためです。これがオンポリシーの意味で、現在値関数で得られたポリシーを利用して、今回のサイクルのアクション、更新値関数、次のサイクルの状態を選択し、次のサイクルの選択に新たな戦略を提供します。アクション。

SARSA の収束定理について: 以下の 2 つの条件が満たされると、Sarsa アルゴリズムは最適な動作値関数に収束します。
条件 1:いつでも戦略π t ( a ∣ s ) \pi_t(a|s)円周率( a s )は GLIE 特性に準拠;
条件 2: ステップ係数α t \alpha_tある满足:
∑ t = 1 ∞ α t = ∞ ∑ t = 1 ∞ α t 2 < ∞ \begin{array} { l } \sum _ { t = 1 } ^ { \infty } \alpha _ { t } = \ infty \\ \sum _ { t = 1 } ^ { \infty } \alpha _ { t } ^ { 2 } < \infty \end{array}t = 1ある=t = 1あるt2<
しかし、授業で教えられたことや経験によれば、上記の 2 つの条件が満たされない場合でも収束する可能性があります。

n步SARSA

TD( λ \lambdan ステップの報酬についてはλ
ここに画像の説明を挿入します
) で説明しました:同様のアイデアを SARSA で使用して、n ステップの Q リターンを定義できます:
qt ( n ) = R t + 1 + γ R t + 2 + … + γ n − 1 R t + n + γ n Q ( S t + n ) q _ { t } ^ { ( n ) } = R _ { t + 1 } + \gamma R _ { t + 2 } + \ldots + \gamma ^ { n - 1 } R _ { t + n } + \gamma ^ { n } Q \left( S _ { t + n } \right)qt( n )=Rt + 1+γR _t + 2++cn 1 Rt + n+cnQ _( St + n)
ここにqt q_tq状態と動作のペア< st , at > <s_t,a_t>に対応<sある>は、特定の状態で特定のアクションを実行することの価値を表します。n=1 の場合、状態動作ペア< st , at > <s_t,a_t><sある> Q 値は 2 つの部分で表現でき、1 つは状態 st から出ることによって得られるR t + 1 R_{t+1}Rt + 1、即時の報酬は状態にのみ関連し、その状態で行われる動作とは何の関係もありません。他の部分は、新しい状態の動作ペア< st + 1 , at + 1 > <s_{t+1}です。 ,a_{t+1}><st + 1あるt + 1> Q 値: 環境は個人に新しい状態を与えるst + 1 s_{t+1}st + 1st + 1 s_{t+1}に観測st + 1状態は、+ 1 a_{t+1} での現在の戦略に基づいて取得された動作です。あるt + 1Q at ( st + 1 , at + 1 ) Q(s_{t+1},a_{t+1})Q ( st + 1あるt + 1)に続く Q 値は減衰係数を考慮します。n=2の場合n=2n=2の場合、2 ステップ前進の即時報酬を使用し、それを新しい状態の Q 値に置き換えます (n = ∞ n=\inftyn=、これは、エピソードの終了までの即時報酬を使用して Q 値が計算され、個人が終了状態に入り、終了状態の即時報酬を取得することを意味します。また、この定義式は状態と動作のペアの概念を反映していないため、前の n ステップ G ハーベストと混同され
やすいですが、実際には、Q 自体に動作、つまり、a に基づいて生成される動作が含まれています。現在の戦略における特定の状態。Q ハーベストと G ハーベストの間には一定の関係があり、ベルマン方程式と組み合わせて理解できます。

上記の定義を使用すると、n ステップ Sarsa は、次のように n ステップ Q ハーベストとして表現できます。
Q ( S t , A t ) ← Q ( S t , A t ) + α ( qt ( n ) − Q ( S t , A t ) ) Q \left( S _ { t } , A _ { t } \right) \leftarrow Q \left( S _ { t } , A _ { t } \right) + \alpha \left ( q _ { t } ^ { ( n ) } - Q \left( S _ { t } , A _ { t } \right) \right)Q( SQ( S+ある( qt( n )Q( S) )

SARSA( λ \lambdal )

このときの q リターンを定義します。
qt λ = ( 1 − λ ) ∑ n = 1 ∞ λ n − 1 qt ( n ) q _ { t } ^ { \lambda } = ( 1 - \lambda ) \sum _ { n = 1 } ^ { \infty } \lambda ^ { n - 1 } q _ { t } ^ { ( n ) }qt=( 1l )n = 1n 1 qt( n )
更新公式:
Q ( S t , A t ) ← Q ( S t , A t ) + α ( qt λ − Q ( S t , A t ) ) Q \left( S _ { t } , A _ { t } \right) \leftarrow Q \left( S _ { t } , A _ { t } \right) + \alpha \left( q _ { t } ^ { \lambda } - Q \left( S _ { t } , A _ { t } \右) \右)Q( SQ( S+ある( qtQ( S) )
将来の理解: これを使用して Q 値を更新するには、エピソード全体を走査する必要があります。以下の図に示すように:
ここに画像の説明を挿入します
逆理解の方法: TD(λ) の逆理解と同様に、Eligibility Trace の概念が導入されます。違いは、今回は E 値が状態ではなく、E 値であることです。状態。動作ペア:
E 0 ( s , a ) = 0 E t ( s , a ) = γ λ E t − 1 ( s , a ) + 1 ( S t = s , A t = a ) \begin{配列} { l } E _ { 0 } ( s , a ) = 0 \\ E _ { t } ( s , a ) = \gamma \lambda E _ { t - 1 } ( s , a ) + 1 \left ( S _ { t } = s , A _ { t } = a \right) \end{array}E0( s _=0E( s _=c l Et 1( s _+1( S=_= _
これは、結果と特定の状態-動作ペア、結果に最も近い状態-動作ペア、およびその前に頻繁に発生した状態-動作ペアが結果に最も大きな影響を与える間の因果関係を反映します。
次の式はE t E_tを導入します。ESARS の概念( λ \lambdaλ ) 後の Q 値更新の説明:
δ t = R t + 1 + γ Q ( S t + 1 , A t + 1 ) − Q ( S t , A t ) Q ( s , a ) ← Q ( s , a ) + α δ t E t ( s , a ) \begin{array} { l } \delta _ { t } = R _ { t + 1 } + \gamma Q \left( S _ { t + 1 } , A _ { t + 1 } \right) - Q \left( S _ { t } , A _ { t } \right) \\ Q ( s , a ) \leftarrow Q ( s , a ) + \alpha \delta _ { t } E _ { t } ( s , a ) \end{array}d=Rt + 1+γQ _( St + 1t + 1Q( SQ ( s ,_Q ( s ,_+ad _E( s _
E t E_tの紹介E概念、SARS( λ \lambdaλ ) を使用すると、エピソード全体を学習する必要がなく、使い終わったデータは破棄できるため、より効果的なオンライン学習が可能になります。EtE_tE通常、オンライン学習アルゴリズムでよく使用されます。
SARSA( λ \lambdaλ )アルゴリズムの疑似コードE t E_t
ここに画像の説明を挿入します
を反映します。E1 つのエピソードでのみ機能します。そしてここでは、以前に経験されたすべての (s, a) が一度に更新されますが、SARSA は現在の状態と行動のペアの値関数のみを更新します。

ポリシー外

On-Policy Learning の特徴は、現在実行されている戦略が個人の学習向上のための戦略であることです。オフポリシー学習とは、ポリシーμ ( a ∣ s ) \mu(a|s)に従うことを指します。別のポリシー π ( a ∣ s ) \pi(a|s)を評価しながらμ ( a ∣ s )π ( a s ) 、つまり、この別の戦略の下でv π ( s ) v_\pi(s) をvp(s) q π ( s , a ) q_\pi(s,a) qp( s a )どうしてそれをするの?この方法では、人間の経験や他の個人の経験から学ぶことが容易になるため、古い戦略から学ぶこともでき、2 つの戦略の長所と短所を比較することもできます。おそらく主な理由は、探索的な戦略に従い、既存の戦略を最適化することです完全なエピソードを経験したかどうかに基づいて、モンテカルロベースと TD ベースに分けることもできます。

オフポリシーの重要性は、
1. 他のエージェントを観察することで学べる、
2. 過去の経験や古い戦略を利用できる、
3. 探索的戦略を通じて最適な戦略を学ぶ、
4. 戦略に従う際にさまざまなことが学べる、ということです。プレイ中の戦略。

重要なサンプリング

オフポリシーを使用する前に、次の重要度サンプリングについて理解しておく必要があります。
EX 〜 P [ f ( X ) ] = ∑ P ( X ) f ( X ) = ∑ Q ( X ) P ( X ) Q ( X ) f ( X ) = EX 〜 Q [ P ( X ) Q ( X ) f ( X ) ] \begin{aligned} \mathbb { E } _ { ( X ) \\ & = \sum Q ( X ) \frac { P ( X ) } { Q ( X ) } f ( X ) \\ & = \mathbb { E }_ { X \sim Q } \left[ \frac { P ( X ) } { Q ( X ) } f ( X ) \右] \end{整列}EX〜P _ _[ f ( X ) ]=P ( X ) f ( X )=Q ( X )Q ( X )P ( X )f ( X )=EX〜Q _ _[Q ( X )P ( X )f ( X ) ]
つまり、異なる分布を使用して期待値を推定します。

MC 法の場合、分散が大きすぎるため、ラウンドの終わりまでサンプリングして 2 つの戦略間の違いを比較する必要があるため、通常、オフポリシー戦略は使用しません。Li Honyi による重要度サンプリングの説明に基づくと、過度の分散を持つ 2 つの分布は重要度サンプリングには適していないことがわかります。
ここに画像の説明を挿入します

TD のオフポリシー手法

オフライン ポリシー TD 学習のタスクは、TD メソッドを使用してポリシーμ ( a ∣ s ) \mu(a|s)に従うことです。別のポリシー π ( a ∣ s ) \pi(a|s)を評価しながらμ ( a ∣ s )具体的に数学的に表すと、 V ( S t )
← V ( S t ) + α ( π ( A t ∣ S t ) μ ( A t ∣ S t ) ( R t + 1 + γ V ( S t + 1 ) ) − V ( S t ) ) \begin{aligned} V \left( S _ { t } \right) & \leftarrow V \left( S _ { t } \right) + \alpha \ left( \frac { \pi \left( A _ { t } | S _ { t } \right) } { \mu \left( A _ { t } | S _ { t } \right) } \left( R _ { t + 1 } + \gamma V \left( S _ { t + 1 } \right) \right) - V \left( S _ { t } \right) \right) \end{aligned}V( S)V( S+ある(メートル( AS円周率( AS)( Rt + 1+γV _( St + 1) )V( S) )
注: ここでの V 関数は戦略π \pi用です。π的!
この式は次のように説明できます。個人は状態S t S_tにあります。S、戦略μ \muに基づいてμ はアクションA t A_t、この動作を実行した後、新しい状態S t + 1 S_{t+1}に入ります。St + 1では、現在の戦略の下で新しい状態の値に応じて元の状態の値を調整するにはどうすればよいでしょうか? オフライン戦略の方法は、状態S t S_tでS別の戦略に従ってそれぞれ比較するとπ \piπと現在採用されている戦略μ \muμ は動作A t A_t戦略π \piの場合の確率サイズπによって得られる確率値は、μ \muμによって得られる確率値はS t + 1 S_{t+1}St + 1更新する値S t S_tSの値は 2 つの戦略によって同時にサポートされており、この更新操作の方が説得力があります。また、状態S t S_tでは、Sの場合、2 つの戦略は近い確率の選択動作A t A_tを持ちます。この確率比が小さい場合、評価された戦略に従ってA t A_tが選択されることを意味します。可能性は非常に低いですが、現時点ではS t S_tを更新していますS値を検討するとき、現在の戦略に基づいて得られる状態S t + 1 S_{t+1} をあまり考慮すべきではありません。St + 1の値。同様に、確率比が 1 より大きい場合、評価された戦略を依然として信じている人が多いことを意味します。これは、戦略が評価された経験を利用して、独自の戦略を更新することになります。

Qラーニング

重要な点は、状態と動作のペアの Q 値を更新するとき、現在使用されているポリシーに従う次の状態と動作のペアの Q 値ではなく、次の状態の Q 値であるということです。採用された戦略によって生成された評価対象の行動ペア。式は次のとおりです。
Q ( S t , A t ) ← Q ( S t , A t ) + α ( R t + 1 + γ Q ( S t + 1 , A ' ) − Q ( S t , A t ) ) Q \left( S _ { t } , A _ { t } \right) \leftarrow Q \left( S _ { t } , A _ { t } \right) + \alpha \left( R _ { t + 1 } + \gamma Q \left( S _ { t + 1 } , A ^ { \prime } \right) - Q \left( S _ { t } , A _ { t } \right) \right)Q( SQ( S+ある( Rt + 1+γQ _( St + 1 _Q( S) )
ここで、アクションA t + 1 A_{t+1}t + 1戦略によりμ \muμが生み出す、ターゲットアクションA ' A''戦略π \piによりπが生成されます。Q 学習を使用する場合は、V 値ではなく Q 値が使用されるため、重要度サンプリングを使用する必要はありません。
Q 学習の主な形式は次のとおりです。個人が従う戦略は、現在の状態の行動値関数Q (s, a) Q(s,a)Q ( s ,a ) ϵ− 貪欲な \epsilon-greedyϵグレー戦略ターゲット戦略は現在の状態の動作値関数Q ( s , a ) Q(s,a)基づきますQ ( s ,a ) ϵ \epsilonを含まないϵの単純な貪欲な貪欲gr e d yポリシー (ターゲット ポリシーπ \ piπ
π ( S t + 1 ) = argmax ⁡ a ′ Q ( S t + 1 , a ′ ) \pi \left( S _ { t + 1 } \right) = \underset { a ^ { \prime } } { \operatorname { argmax } } Q \left( S _ { t + 1 } , a ^ { \prime } \right)円周率( St + 1=あるアールマックス_ _ _ _Q( St + 1ある' )
このようにして、Q 学習の TD 目標値は大幅に簡略化できます。
R t + 1 + γ Q ( S t + 1 , A ' ) = R t + 1 + γ Q ( S t + 1 , arg ⁡ max ⁡ a ′ Q ( S t + 1 , a ′ ) ) = R t + 1 + max ⁡ a ′ γ Q ( S t + 1 , a ′ ) \begin{aligned} & R _ { t + 1 } + \gamma Q \left( S _ { t + 1 } , A ^ { \prime } \right) \\ = & R _ { t + 1 } + \gamma Q \left( S _ { t + 1 } , \ underset { a ^ { \prime } } { \arg \max } Q \left( S _ { t + 1 } , a ^ { \prime } \right) \right) \\ = & R _ { t + 1 } + \max _ { a ^ { \prime } } \gamma Q \left( S _ { t + 1 } , a ^ { \prime } \right) \end{aligned}==Rt + 1+γQ _( St + 1 _Rt + 1+γQ _( St + 1あるarg _マックスQ( St + 1ある_Rt + 1+あるマックスγQ _( St + 1ある _
Q値の更新式は次の形で書くことができます。このように、 S t S_t
の状態では、S依拠ϵ − 貪欲な \epsilon-greedyϵgr e e d y はポリシーに従い、A t A_tの動作を取得します。Q の値はS t + 1 S_{t+1}に向けられます。St + 1状態の最大Q値の方向は一定の割合で更新されます。このアルゴリズムは貪欲さを貪欲にすることができますグレーディ戦略π \ pi _ _ _π は最終的に最適な戦略に収束します個人は環境と対話するときに実際にはϵ − 貪欲な \epsilon-greedyϵ十分に豊富な新しい状態を確実に経験できるようにする、高度戦略

Q 関数の更新式は次のとおりです。
Q ( S , A ) ← Q ( S , A ) + α ( R + γ max ⁡ a ' Q ( S ' , a ' ) − Q ( S , A ) ) Q ( S , A ) \leftarrow Q ( S , A ) + \alpha \left( R + \gamma \max _ { a ^ { \prime } } Q \left( S ^ { \prime } , a ^ { \素数 } \right ) - Q ( S , A ) \right)Q ( S ,Q ( S ,+ある( R+cあるマックスQ( S「、ある _Q ( S ,A ) )
Q 学習のアルゴリズム擬似コードは次のとおりです。
ここに画像の説明を挿入します
定理: Q 学習は最適状態動作値関数に収束します:Q ( s , a ) → q ∗ ( s , a ) Q(s,a)\ rightarrow q_ {*}(s,a)Q ( s ,_q( s a )

DPとTDの関係をまとめる

次の 2 つの図は、さまざまな DP アルゴリズムとさまざまな TD アルゴリズムを要約し、さまざまなアルゴリズム間の違いと関連性も示しています。一般に、TD はサンプリング + データ ブートストラップ、DP は全幅 + 実際のデータですベルマン期待方程式の観点から見ると、反復政策評価 (DP) と TD 学習は国家自体の価値に焦点を当て、Q 政策反復 (DP) と SARSA は国家行動の価値関数に焦点を当てます。 ; 状態を見てみると 行動価値関数のベルマン最適化方程式の観点から見ると、Q 値反復 (DP) と Q 学習です。
ここに画像の説明を挿入します
ここに画像の説明を挿入します

おすすめ

転載: blog.csdn.net/weixin_42988382/article/details/105596023