Q学習
行動を決定した場合、次にその状態と行動のQ値を更新する。例として状態 s t {\displaystyle s_{t}} のエージェントが行動 a t {\displaystyle a_{t}} を選び、報酬 r t {\displaystyle r_{t}} を得て、状態が s t + 1 {\displaystyle s_{t+1}} に遷移したとする。このとき Q ( s t , a t ) {\displaystyle Q(s_{t},a_{t})} を次の式で更新する。
Q ( s t , a t ) ← ( 1 − α ) Q ( s t , a t ) + α [ r t + γ max a Q ( s t + 1 , a ) ] {\displaystyle Q(s_{t},a_{t})\leftarrow (1-\alpha )Q(s_{t},a_{t})+\alpha \left[r_{t}+\gamma \max _{a}Q(s_{t+1},a)\right]}
ここで α {\displaystyle \alpha } は学習率といい、0より大きく1より小さくし、後述のように時間と共に減衰させても良い。 γ {\displaystyle \gamma } は割引率といい、0より大きく1より小さい定数である。上記の更新式は現在の状態から次の状態に移ったとき、そのQ値を(報酬+割引率×次の状態で最も高いQ値)に近づけることを意味している。このことにより、ある状態で高い報酬を得た場合はその状態に到達することが可能な状態にもその報酬が更新ごとに伝播することになる。これにより、最適な状態遷移の学習が行われる。