イラストで学ぶ人工知能 第七章 強化学習編 前半

画像

強化学習

強化学習は、人なしで、ロボットが環境下で「報酬を受け取ることで」解決策を見つけていく方法。

状態価値関数

状態価値関数$V^{\pi}(s)$は、状態$s$にいる時から、方策${\pi}$に従いながら行動し続ける時、得られるであろう累積報酬の期待値を求めるものである。

この状態価値関数が高いほうが、よりよい状態と言えるので、この状態$s$を目指したいね!になる。

ここで、「方策${\pi}$」とは、ある状態$s$において、行動$a$を取るときの確率を返す。
これは、例えばマリオがブロックの下にいるときと、崖のそばにいるときでジャンプする確率が異なる、といった状態の違いに対する、行動確率を返す。

状態価値関数は、必ず${\pi}$で行動し続けることを理解しよう!(大事)

また、状態価値関数は再帰的にどんどん枝分かれしていく。
画像で分かる通り

状態$s_t$において、行動$a$種類の各確率がある。
さらに、行動$a$を選んだと言っても、一つの状態$s_{t_1}$は確定的に決まらない。
例えば、ジャンプする選択をしたとしても、うまくボタンを押せなかったり対空時間が短いなど、さまざまな状態遷移が考えられる。

よって、$P_{s, s'}^a$は状態$s$で方策${\pi}$にしたがって、行動$a$を取ったとき、状態$s'$に行く確率を表す。

これをどんどん再帰的に求めることで、状態価値関数を求めることができる。

行動価値関数

確かに状態価値関数を求めると、どの状態にいるとよいか?は求めることができる。

でも本当に求めたいのは、状態$s$に居た時、どのような行動$a$を取るとよいのか?(ただし、行動$a$を取るとしても、その遷移先の状態$s'$は確定的ではない。)

よって、行動価値関数は、
ある状態$s$で、強行的にある行動$a$を取り(絶対)
その後は方策${\pi}$で行動し続けるときに得られる報酬の期待値を返す。

最初の一回の行動は確定的な点に注意しよう。

Q値

行動価値関数$Q$の値をQ値といい、長期的な報酬で、ある行動に基づいた値である。

このQ値を最大化するように方策を選ぶのが真の目的とも言える。

最適行動価値観数は、最大の報酬を得られる方策${\pi}'$を取るときの価値関数である。