TadaoYamaokaの開発日記

個人開発しているスマホアプリや将棋AIの開発ネタを中心に書いていきます。

Agent57: Outperforming the Atari Human Benchmarkを読む その9

付録B B.外発的-内発的分解

  • 内発的に動機付けられたエージェントの場合、報酬関数rは、固有の報酬r^iと外部の報酬r^eの線形結合である。

\displaystyle
\begin{equation*}
    r = r^e + \beta r^i
\end{equation*}

  • 価値の反復スキームを使用して、最適な状態行動価値関数Q^*_rを計算できる。

\displaystyle
\forall k\geq0, \quad\left\{
    \begin{array}{ll}
        \pi_k = \mathcal{G}\left(Q_k\right), &\\
         Q_{k+1} = T_{r}^{\pi_k}Q_k,&
    \end{array}
\right.

  • ここで、Q_0は任意に初期化できる。


  • ここで、別々の内発的および外発的な状態行動価値関数を使用して、Q^*_{r}に収束する方法を示す必要がある。
  • 実際、次の離散スキームを考えてみよう。

\displaystyle
\forall k\geq0, \quad\left\{
    \begin{array}{ll}
        \tilde{\pi}_k = \mathcal{G}\left(Q^e_k + \beta Q^i_k \right), &\\
         Q^i_{k+1} = T_{r^i}^{\tilde{\pi}_k}Q^i_k,&\\
         Q^e_{k+1} = T_{r^e}^{\tilde{\pi}_k}Q^e_k,&
    \end{array}
\right.

  • ここで、関数(Q^e_0, Q^i_0)は任意に初期化できる。



私たちの目標は、外発的と内発的状態行動価値関数\tilde{Q}_{k}の線形結合を示すことである。

\displaystyle
\begin{equation*}
\forall k\geq0, \tilde{Q}_k = Q^e_k + \beta Q^i_k
\end{equation*}

  • 報酬r= r^e+\beta r^iに関して1ステップの価値反復スキームを検証し、Q^*_rに収束することを示す。
  • それを示すために、\tilde{Q}_{k+1}を書き換える。

\displaystyle
\begin{align*}
\tilde{Q}_{k+1} &= Q^e_{k+1} + \beta Q^i_{k+1},
\\
&=T_{r^e}^{\tilde{\pi}_k}Q^e_k + \beta T_{r^i}^{\tilde{\pi}_k}Q^i_k,
\\
& = r^e + \beta r^i + \gamma P^{\tilde{\pi}_k} (Q^e_k + \beta Q^i_k),
\\
& = T_{r^e + \beta r^i}^{\tilde{\pi}_k}(Q^e_k + \beta Q^i_k),
\\
& = T_r^{\tilde{\pi}_k}\tilde{Q}_{k}
\end{align*}

  • したがって、\tilde{Q}_{k}は、報酬r= r^e+\beta r^iに関して価値反復スキームを満たしていることがわかる。

\displaystyle
\forall k\geq0, \quad\left\{
    \begin{array}{ll}
        \tilde{\pi}_k = \mathcal{G}\left(\tilde{Q}_k\right), &\\
         \tilde{Q}_{k+1} = T_{r}^{\tilde{\pi}_k}\tilde{Q}_k,&
    \end{array}
\right.

  • そして収縮性質によって:

\displaystyle
\begin{equation*}
    \lim_{k\longrightarrow\infty}\tilde{Q}_k = Q^*_r
\end{equation*}

  • この結果は、Q^e_kQ^i_kを別々に計算し、それらを混合して、混合報酬r^e + \beta r^iQ_kを直接計算した場合と同じ動作を得ることができることを意味する。
  • これは、外発的コンポーネントと内発的コンポーネントを別々に計算できることを意味する。
  • アーキテクチャは、さまざまな混合\betaに対する状態行動価値を学習し、状態行動価値関数の混合の貪欲な方策に従って動作する必要がある。
  • この結果は、潜在的な将来の研究の方向性を示唆する可能性のあるBarreto et al. (2017)と関連していると考えることもできる。


  • 同じタイプの結果が、変換された状態行動価値関数にも当てはまる。
  • 実際、次の離散スキームで計算できる最適な変換された状態行動価値関数Q^*_{r, h}を考えてみよう。

\displaystyle
\forall k\geq0, \quad\left\{
    \begin{array}{ll}
        \pi_k = \mathcal{G}\left(Q_k\right), &\\
         Q_{k+1} = T_{r, h}^{\pi_k}Q_k,&
    \end{array}
\right.

  • ここで、Q_0は任意に初期化できる。


  • ここで、別々の内発的および外発的状態行動価値関数を使用して、Q^*_{r, h}を異なる方法で計算する方法を示す。
  • 実際、次の離散スキームを考えてみよう。

\displaystyle
\forall k\geq0, \quad\left\{
    \begin{array}{ll}
        \tilde{\pi}_k = \mathcal{G}\left(h\left(h^{-1}(Q^e_k) + \beta h^{-1}(Q^i_k)\right) \right), &\\
         Q^i_{k+1} = T_{r^i, h}^{\tilde{\pi}_k}Q^i_k,&\\
         Q^e_{k+1} = T_{r^e, h}^{\tilde{\pi}_k}Q^e_k,&
    \end{array}
\right.

  • ここで、関数(Q^e_0, Q^i_0)は任意に初期化できる。


  • \tilde{Q}_{k}が次のように定義されることを示したい。

\displaystyle
\begin{equation*}
\forall k\geq0,\quad  \tilde{Q}_{k} = h\left(h^{-1}(Q^e_k) + \beta h^{-1}(Q^i_k)\right)
\end{equation*}

  • 報酬r= r^e+\beta r^iに関してワンステップ変換価値反復スキームを検証し、Q^*_{r, h}に収束することを示す。
  • \tilde{Q}_{k+1}を書き直してみよう。

\displaystyle
\begin{align*}
\tilde{Q}_{k+1} &= h\left(h^{-1}(Q^e_{k+1}) + \beta h^{-1}(Q^i_{k+1})\right),
\\
&=h\left(h^{-1}(T_{r^e, h}^{\tilde{\pi}_k}Q^e_k) + \beta h^{-1}(T_{r^i, h}^{\tilde{\pi}_k}Q^i_k)\right),
\\
& = h\left(r^e + \gamma P^{\tilde{\pi}_k} h^{-1}(Q^e_k) + \beta r^i + \gamma P^{\tilde{\pi}_k} \beta h^{-1}(Q^i_k)\right),
\\
& = h\left(r^e + \beta r^i + \gamma P^{\tilde{\pi}_k}(h^{-1}(Q^e_k)+ \beta h^{-1}(Q^i_k))\right),
\\
& = h\left(r + \gamma P^{\tilde{\pi}_k} h^{-1}(\tilde{Q}_k)\right)
\\
& = T_{r, h}^{\tilde{\pi}_k}\tilde{Q}_{k}.
\end{align*}

  • したがって、\tilde{Q}_{k}は、報酬r= r^e+\beta r^iに関して、1ステップの変換価値反復スキームを満たしていることがわかる。

\displaystyle
\forall k\geq0, \quad\left\{
    \begin{array}{ll}
        \tilde{\pi}_k = \mathcal{G}\left(\tilde{Q}_k\right), &\\
         \tilde{Q}_{k+1} = T_{r, h}^{\tilde{\pi}_k}Q_k,&
    \end{array}
\right.

  • そして収縮によって、

\displaystyle
\begin{equation*}
    \lim_{k\longrightarrow\infty}\tilde{Q}_k = Q^*_{r, h}
\end{equation*}

  • 変換h恒等式である場合、内発的と外発的状態行動価値関数の間の線形混合を回復することに注意してほしい。

(続く)