1. 価値とは「そこから先の人生の期待値」
前回学んだ MDP では、方策 π に従って行動するとリターン G(割引つきの報酬合計)が手に入るのでした。ただし世界は確率的なので、同じ場所から出発してもリターンは毎回ばらつきます。そこで平均、つまり期待値を取ったものを状態の価値と呼びます。
Vπ(s) = Eπ[ Gt | st = s ]
状態 s から方策 π で行動し続けたとき、この先もらえる割引つき報酬の期待値。「そこから先の人生の期待値」
ゴール +10・穴 −10 のグリッドワールドで考えましょう。ゴールの隣のマスは「あと1歩で +10」なので価値が高いはず。その隣は「あと2歩」なので少し低い…。つまり価値は、ゴールから逆向きに、γ 倍ずつ減衰しながら染み出していくはずです。下のデモの「1ステップ伝播」を押して、その様子を確かめてください。
価値の染み出し — V(s) ヒートマップができるまで
暖色=価値が高い、寒色=低い。1回の「伝播」で各マスが「いちばん良い隣の価値 × γ」に更新され、ゴールの価値が1マスずつ広がります。穴(−10)の周りでは遠回りが必要なぶん、値が低めになるのも観察できます。ここでは簡単のため、報酬はゴール/穴に入った瞬間だけ(マスの移動自体は報酬 0)としています。
注意 — 「報酬」と「価値」を混同しない
報酬 r はその瞬間にもらえる点数、価値 V は「そこから先」の報酬の期待合計。ゴール以外のマスは報酬 0 でも、価値はゼロではない。ダイエット中のケーキは報酬プラスでも価値マイナス — この区別が強化学習のすべての出発点になる。
2. ベルマン方程式 — 価値をつなぐ漸化式
さきほどの「隣の価値 × γ」という更新には、ちゃんとした名前があります。価値の定義 V(s) = E[rt+1 + γrt+2 + γ2rt+3 + …] を眺めると、2歩目以降の部分は「次の状態 s′ の価値」そのものです。つまり価値は1歩ぶんの報酬と、次の状態の価値に分解できます。
Vπ(s) = Σa π(a|s) Σs′ P(s′|s,a) [ r + γ Vπ(s′) ]
ベルマン期待方程式 — 方策 π に従うときの価値。「1歩の報酬 + γ×次の価値」を方策と遷移で平均する
V*(s) = maxa Σs′ P(s′|s,a) [ r + γ V*(s′) ]
ベルマン最適方程式 — ベストの行動だけを選び続けたときの価値(最適価値関数)
1つのマスを拡大して、この式の「部品」を見てみましょう。4方向それぞれの「即時報酬 + γ × 隣の価値」を計算し、それを平均するか(期待方程式)、最大を取るか(最適方程式)で自分の価値が決まります。
ベルマン方程式の解剖 — 1マスぶんの計算を分解する
左=注目マス s と4つの隣。右=各行動の q = r + γV′ の内訳バー(濃い部分が即時報酬 r、薄い部分が γ×隣の価値)。ランダム方策では左の穴(r=−10)に足を引っ張られて価値が下がり、最適方策では最良の一手(上)だけで価値が決まります。γ を 0 に近づけると、どの行動も「即時報酬だけ」で評価されるのも見どころです。
POINT — 期待方程式と最適方程式の違いは「Σπ か max か」だけ
期待方程式は「いまの方策 π の成績表」を求める式(方策評価)。最適方程式は「ベストを尽くしたときの理論値」を求める式。上のデモが示すとおり、同じマスでも従う方策によって価値は変わる — V は必ず「どの方策のもとでの価値か」とセットで考える。
3. Q値 — 「状態」ではなく「状態と行動」の価値
V(s) は「そのマスにいること」の価値でした。実際に行動を選ぶには、もう一歩踏み込んで「そのマスでその行動をとること」の価値が知りたくなります。これが行動価値関数 Q(s,a) です。
Qπ(s, a) = Eπ[ Gt | st = s, at = a ] , V*(s) = maxa Q*(s, a)
最初の一手 a だけ固定し、あとは方策に従ったときの期待リターン。最適では「最良の一手の Q」が V に一致する
Q が分かれば方策は簡単に作れます。各マスで Q が最大の行動を選ぶだけ — これを貪欲(greedy)方策と呼びます。下のデモでは各マスを4つの三角形に割り、方向ごとの Q(s,a) を色で表示しています。
Q値マップ — 三角形の中に方策が隠れている
各マスの上下左右の三角形=その方向へ進む行動の Q(s,a)(暖色ほど高い)。穴に向かう三角形だけ真っ青なのが分かります。「貪欲方策を表示」を押すと各マスで max の方向に矢印が立ち、スタートからゴールへの最適経路が浮かび上がります。ホバーすると V(s) = maxa Q(s,a) の関係を数値で確認できます。
4. まとめ
- 状態価値 V(s):そこから先にもらえる割引つき報酬の期待値。「そこから先の人生の期待値」。
- ベルマン方程式:価値を「1歩の報酬 + γ×次の価値」に分解する漸化式。期待方程式(Σπ で平均)と最適方程式(max)の2種類。
- 行動価値 Q(s,a):最初の一手まで指定した価値。V*(s) = maxa Q*(s,a)。
- Q が分かれば、各状態で max の行動を選ぶ貪欲方策がそのまま最適方策になる。
一歩先へ — 不動点としての価値関数
viz1 で伝播を繰り返すと、やがて値が変化しなくなった。これは偶然ではない。ベルマン最適方程式の右辺を「更新操作」とみなすと、γ < 1 のときこの操作は縮小写像になっていて、どんな初期値から始めても唯一の不動点 — 真の V* — に必ず収束することが証明できる(バナッハの不動点定理)。次回の動的計画法(価値反復)は、まさにこの性質をそのままアルゴリズムにしたものだ。