TD学習

現在,強化学習として一般的に用いられている手法は,TD学習(Temporal Difference Learning)である.

TD学習とは,自分自身の評価を行い,それを更新するための手法を提案するものである.

TD学習ではTD誤差と呼ばれるものを用いて,この誤差を0に近づけていくという方法で学習を進める.
TD誤差とは,現在の状態の評価値と実際に行動してみて,その状態の評価が正しかったかどうかという誤差である.
時刻tにおける状態をst,状態の評価値をV(st)として,TD誤差は

という式で表される.この式で現れるγは割引率と呼ばれる0≦γ≦1の係数である.
このTD誤差が正の時には,見積もっていたよりも自分がいる状態はよかったということであり,負の時には見積もりよりも悪かったということになる.

TD誤差を求めて,現在の評価値を更新するが,この更新式は

という式になる.ここで現れるαは学習率と呼ばれる0≦α≦1の係数である.

例として,以下のように状態が遷移するものを用意する.


最初はそれぞれの状態が評価値を決めることができないのででふぉるとで与えられている値になっている.
最初の試行で報酬が与えられるまで遷移すると,報酬が与えられる状態へ遷移する状態(今回はs3)の評価値が上がる.

 

次の試行でその一つ前の状態の評価値が上がる.

このようにTD学習では,状態の評価値は報酬が伝搬することによって更新される.