マルコフ決定過程

Posted: June 29, 2022

バンディット問題では、エージェントの行動によって次に取り組む問題は変わらない。

マルコフ決定過程(MDP)は、エージェントの行動によって状況(状態(state))が変わる問題を扱う。

MDPでは、以下の3つを数式によって定式化する

状態遷移

決定論的

次の状態s’は状態sと行動aによって一意に決まることを、決定論的な状態遷移という

関数としては以下のようになる(状態遷移関数)

s=f(s,a)s' = f(s, a)

確率的

今エージェントが状態Sにいて、行動aを行い、状態S’に移動する確率は以下になる(状態遷移確率)

p(ss,a)p(s'|s, a)

上記は現在の状況sと行動aに依存してs’が決まるので、現在よりも過去の情報は必要ない

この性質をマルコフ性という

報酬関数

エージェントが状態sにいて、行動aを行い、次の状態がs’になったときの報酬を以下とする

r(s,a,s)r(s, a, s')

エージェントの方策

方策はエージェントがどのように行動を決めるかを表す

決定論的な方策

エージェントがある場所にいるときには、必ず特定の行動を行う

a=μ(s)a = μ(s)

確率論的な方策

ある状態sにいるときの行動aをとる確率

π(as)π(a|s)

MDPの目標

上記の枠組みの中で最適方策(Optimal Policy)を見つけること。最適方策とは収益を最大化する方策。

エピソードタスク

「終わりのある問題」。例えば囲碁(最終的に勝ち負け引き分けになる)。

連続タスク

「終わりのない問題」。例えば在庫管理。

収益

時刻はtで状態がStであると仮定する。エージェントが方策πによって行動Atを行い報酬Rtを得て、新しい状態St+1S_{t+1}に遷移する流れが続く場合、収益Gtは以下のように定義される

Gt=Rt+γRt+1+γRt+2+...G_t = R_t + γR_{t+1} + γR_{t+2} + ...

γγは割引率(0から1の間)と呼ばれる。割引率を導入する理由は連続タスクの場合に報酬が無限大に発散することを防ぎ、近い将来の報酬ほど重要に見せかける。

状態価値関数

エージェントは行動を確率的に消えるかもしれないし、状態が確率的に遷移するかもしれずその場合、得られる収益も確率的となる

確率的な挙動に対応するには期待値を使う。収益の期待値は以下のようになる

νπ(s)=E[GtSt=s,π]ν_π(s) = E[G_t|S_t = s, π]

または

νπ(s)=Eπ[GtSt=s]ν_π(s) = E_π[G_t|S_t = s]

上記のνπ(s)ν_π(s)を状態価値関数と呼ぶ

最適方策

すべての状態において、他のどの方策よりも状態価値関数の値が大きいとき、その方策は最適方策となる。最適方策は決定論的である。数式にすると以下のようになる。

a=μ(s)a = μ(s)

最適方策における状態価値関数は最適状態価値関数と呼ぶ