マルコフ決定過程
MDP は不確実性を伴う意思決定のモデリングにおける数学的枠組みとして、強化学習など動的計画法が適用される幅広い最適化問題の研究に活用されている[1]。 MDP は少なくとも1950年代には知られていた[2]が、研究の中核は1960年に出版された Ronald A. Howard の "Dynamic Programming and Markov Processes" に起因する[3]。 MDP はロボット工学や自動制御、経済学、製造業を含む幅広い分野で用いられている。
概要
[編集]
マルコフ決定過程は離散時間における確率制御過程 (stochastic control process) である。 各時刻において過程 (process) はある状態 (state) を取り、意思決定者 (decision maker) はその状態において利用可能な行動 (action) を任意に選択する。 その後過程はランダムに新しい状態へと遷移し、その際に意思決定者は状態遷移に対応した報酬 (reward) を受けとる。
遷移後の状態 、および得られる報酬の値 は現在の状態 と行動 のみに依存し、 と が与えられたもとでそれより過去の状態および行動と条件付き独立となる。 言い換えると、マルコフ決定過程の状態遷移はマルコフ性を満たす。
マルコフ決定過程はマルコフ過程に(選択可能な)行動、および(行動を計画する動機を与える)報酬を追加し拡張したものであると解釈できる。逆に言えば、各ステップにとる行動がそのステップにおける状態のみ依存するとき、マルコフ決定過程は等価なマルコフ過程に置き換えることが出来る。
定義
[編集]マルコフ決定過程は四つ組 で定義される。すなわち、以下の4要素でルールが表現される:
状態空間 S
[編集]典型的には、状態空間はシステム・環境が取りうる状態の全体と解釈される[5][6]。意思決定によって状態は遷移していく[7]。状態空間は「確率過程の状態空間」に相当する。
行動空間 A
[編集] の元 は
典型的には、行動空間は取りうる行動の全体と解釈される。意思決定者は行動空間からただ1つの行動を取り、それを反映して状態が遷移する[7]。
遷移関数 T
[編集]典型的には、遷移関数はマルコフ性をもった状態遷移の表現と解釈される。例えば状態空間が有限な場合の は「状態 な意思決定者が行動 を取った場合、状態 へ遷移する確率は である」というルールと解釈される。引数の数がマルコフ性を反映していると解釈される。また の終域が の場合は決定論的な遷移をするルールだと解釈される[11]。
任意の可測集合 に対して状態遷移確率はによって記述される。
報酬関数 R
[編集]報酬関数に従う実現値 は
典型的には、報酬関数は遷移に伴う報酬の期待値と解釈される[12][14]。例えば は「状態 において意思決定者が行動 を取ると期待利得 が与えられる」というルールと解釈される。状態の遷移先が確率的に定まることを考慮して「期待」利得と理解される。報酬関数を として遷移先ごとの利得を定義する流儀もある[14]。
意思決定
[編集]マルコフ決定過程には行動空間 A の形で意思決定が組み込まれている。ある時点において意思決定者は からただ 1 つの行動 を取る。これによりどのような意思決定(の連続)がどのような状態遷移(の連続)を起こすか解析できる。
この意思決定を精緻化するうえで、しばしば方策 π が採用される。
方策 π
[編集]は であり、行動空間 が高々可算集合であれば確率質量関数 、不可算集合であれば確率密度関数である。例えば として のときの を次で定義した場合、
この は「現在の状態が なら、意思決定者は の確率で行動 を、 の確率で行動 を(確率的に)選ぶ」という意思決定を意味する(参考: ゲーム理論における混合戦略)。
の終域が の場合、意思決定者は決定論的な意思決定をする(例: には と決め打ちする)と解釈される。このタイプの方策は
利得
[編集]マルコフ決定過程には報酬関数 R の形で
利得を精緻化するうえで、複数の指標が用いられる。
総期待利得
[編集]は有限期間とする場合が多い。無限期間の場合、特殊な条件を満たさないと意味をなさなくなる。
無限期間総割引期待利得
[編集]「時刻 における、将来にわたる割引報酬の合計 」を考える。 を時刻、 を での報酬(確率変数)、 を評価区間、 を
確率変数の和である もまた確率変数になる。その実現値は MDP によって規定される状態遷移確率や方策に基づいて確率的に変動する。
平均利得
[編集]問題設定
[編集]MDP における基本的な問題設定は、現在の状態が与えられたときに最良の方策 π を求めることである。 は、目的関数 (objective function) を最大化するようなものが選ばれる。目的関数には期待利得が用いられる。
有限の時間区間における利得を評価する問題設定は有限時間区間 (finite horizon) と呼ばれる。無限の時間区間の場合は無限時間区間 (infinite horizon) と呼ばれる。
価値関数
[編集]モデルのマルコフ性により、ある時刻における目的関数の値は方策 を固定した下で状態 の関数とみなすことが出来る。 このような考えのもと、ある方策 に対して定義される を 状態価値関数 (state-value function) と呼ぶ。 状態価値関数は、現在の状態 からはじまり方策 によって行動を決定することで得られる(割引された)累積報酬の値であると解釈できる。 この状態価値関数 は、次の整合性条件を満たす。
任意の および に対し を満たす方策 を最適方策 (optimal policy) と呼ぶ。 また、最適方策のもとでの状態価値関数 は特に最適状態価値関数 (optimal state-value function)と呼ばれる。 最適状態価値関数は、次のベルマン方程式を満たす[22]。
アルゴリズム
[編集]MDP は線形計画法または動的計画法で解くことができる。ここでは後者によるアプローチを示す.
価値反復法
[編集]価値反復法 (value iteration)[2]は後ろ向き帰納法 (backward induction) とも呼ばれ、ベルマン方程式を満たす価値関数を繰り返し計算により求める。 ロイド・シャープレー が1953年に発表した確率ゲームに関する論文[23]には価値反復法の特殊な場合が含まれるが、このことが認知されたのは後になってからである[24].
ステップ における価値関数の計算結果を と表記すると、価値反復法における更新式はつぎのように記述される:
上式をすべての状態において値が収束するまで繰り返したときの値を とし、最適方策 を次式で求める。
方策反復法
[編集]方策反復法 (policy iteration)[3]では、方策固定の下で行われる価値関数の更新 (policy evaluation) と、価値関数固定のもとで行われる方策の更新 (policy improvement) を交互に行うことで最適方策を求める。
- 次の線形方程式を解き、価値関数を更新する
- 方策を次式で更新する
これらの操作を がすべての状態に対し変化しなくなるまで繰り返すことで、最適方策を得る。 方策反復法は離散値を取る方策の値が変化しなくなるという明確な終了条件を持つため有限時間でアルゴリズムが終了するという利点を持つ。
分類
[編集]有限マルコフ決定過程
[編集]状態空間 および行動空間 がともに有限集合であるような MDP は有限マルコフ決定過程 (finite Markov decision process; finite MDP) と呼ばれる。
状態空間が有限である場合においては、時刻 における状態遷移確率は遷移関数によって と記述することが出来る。
拡張と一般化
[編集]部分観測マルコフ決定過程
[編集]MDP では方策 を計算する際に現在の状態 が既知であることを仮定している。 実際には状態観測に不確実性が伴う場合などこの仮定が成り立たない場合が多く、このような場合の一般化として部分観測マルコフ決定過程 (Partially Observable Markov Decision Process; POMDP) が用いられる。
強化学習
[編集]状態遷移確率 や報酬関数 が未知の場合,環境との相互作用を通じてこれらの情報を得ながら行動を決定する必要がしばしば生じる.このような問題は強化学習の枠組みで議論される[25].
強化学習における代表的な学習アルゴリズムはQ学習と呼ばれるものである。 Q学習では、行動価値関数 (action-value function) と呼ばれる関数 に着目する。ここで は次のように定義される:
いま,最適方策のもとでの行動価値関数 は を満たす。 すなわち、 を学習することができれば(モデルのパラメータを直接求めることなく)最適方策を獲得することができる。 Q学習では、各試行における遷移前後の状態と入力、および試行で得られる即時報酬の実現値をもとに の値を逐次更新する。 実際の学習プロセスでは、すべての状態を十分サンプリングするため確率的なゆらぎを含むよう学習時の行動が選択される。
強化学習では最適化に必要なパラメータの学習を状態遷移確率・報酬関数を介することなくおこなうことが出来る(価値反復法や方策反復法ではそれらの明示的な仕様(各状態間の遷移可能性,報酬関数の関数形など)を与える必要がある)。 状態数(および行動の選択肢)が膨大な場合、強化学習はしばしばニューラルネットワークなどの関数近似と組み合わせられる。
学習オートマトン
[編集]機械学習理論における MDP のもう一つの応用は学習オートマトン (Learning Automata) と呼ばれる。 これは環境が確率的な挙動を示す場合における強化学習の一つでもある。 学習オートマトンに関する最初の詳細な論文は 1974 年に Narendra と Thathachar によりまとめられた[26](そこでは有限状態オートマトンと明示的に記載されている)。 強化学習と同様,学習オートマトンのアルゴリズムも確率や報酬が未知の場合の問題を解くことができる。 Q学習の違いは,価値関数ではく学習の結果を探すために行動の確率を直接求めることである。 学習オートマトンは収束性が解析学の要領で厳密に証明されている[27].
制約付きマルコフ決定過程
[編集]制約付きマルコフ決定過程 (Constrained Markov Decision Process; CMDP) はマルコフ決定過程の拡張である。 MDP と CMDP には3つの基本的な違いがある[28]:
- ある行動をほかのものの代わりに適用した後で(複数の)コストが発生する
- CMDP は線形計画法のみで解くことが出来る(動的計画法を用いることはできない)
- 終端時刻における方策が初期状態に依存する
CMDP の応用例は数多く存在し、最近ではロボット工学におけるモーションプランニングに用いられている[29]。
脚注
[編集]注釈
[編集]出典
[編集]- 1 2
強化学習では,環境のダイナミクスをマルコフ決定過程(Markov Decision Process:MDP)によってモデル化し,アルゴリズムを解析するのが一般的である
(木村 2016, p. 12) - 1 2 Bellman 1957.
- 1 2 Howard 1960.
- ↑
状態空間については,以下の種類に分類できる。... 有限状態空間 ... 可算無限状態空間 ... 非可算無限状態空間 ... また,決定空間についても同様の区分ができる。
(中出 2019, p. 8) - 1 2 3
各時刻 で状態(state) を観測し ... 状態空間(state space):対象としているシステムの状態の集合である。
(中出 2019, p. 8) - 1 2 3 4
環境のとりうる ... 状態集合を ... 環境中の状態
(木村 2016, p. 12) - 1 2
環境中の状態 において,エージェントが行動 を実行すると,環境は確率的に状態 へ遷移する.
(木村 2016, p. 12) - 1 2 3
エージェントがとる有限な行動集合を と表す.... エージェントが行動 を実行する
(木村 2016, p. 12) - ↑
決定空間(action space):状態 を観測したとき可能な決定の集合である。
(中出 2019, p. 8) - 1 2
各時刻 で ... 決定(action,行動と呼ぶこともある) を行う。
(中出 2019, p. 8) - ↑
マルコフ決定過程 ... 離散的な時間ステップ ごとに ... エージェントは現在の状態 を観測し、とるべき行動 を選択する ... 次の状態 となる ... 関数 ... は non-deterministic であってよいし, エージェントにとって未知でよい
p.4 より引用。櫻井, 彰人 (2015), 強化学習, 慶應義塾大学講義『情報意味論』, 慶應義塾大学 - 1 2 3
単位時間当り期待利得(expected reward):状態 を観測して決定 をとったとき,つぎの時刻までに受け取る利得の期待値である。
(中出 2019, p. 8) - ↑
環境は確率的に ... 遷移する.... このとき環境からエージェントへ報酬 が確率的に与えられる
(木村 2016, p. 12) - 1 2
報酬 ... その期待値を条件付期待値 により表す.
(木村 2016, p. 12) - 1 2 3
政策 (policy) とは,与えられた履歴に対し各決定を行う確率を定めることを示しており ... 政策は履歴から決定に関する確率空間への写像となる。... 政策
(中出 2019, p. 9) - ↑
エージェントにおける状態集合から行動集合への写像関数を政策と呼び と表す.
(木村 2016, p. 12) - ↑
有限期間総期待利得(expected total reward over a finite horizon)
(中出 2019, p. 9) - ↑
時刻 において決定はとらず,状態 に対する利得 を受け取り確率過程は停止する。
(中出 2019, p. 9) - ↑
無限期間総割引期待利得(expected discounted total reward over an infinite horizon) ... は を満たす実数であり,割引率と呼ぶ。
- 1 2
割引報酬合計による評価を利得とする場合が多い.ある時刻 の状態,あるいはそのとき実行した行動の利得 を以下で定義する. ただし, は時刻 の報酬, は割引率 である.
(木村 2016, p. 12) - ↑
(無限期間)平均利得(long-run time average reward)
(中出 2019, p. 9) - ↑ Suton 1998.
- ↑ Shapley 1953.
- ↑ Kallenberg 2002.
- ↑ Sutton & Barto 1998.
- ↑ Narendra & Thathachar 1974.
- ↑ Narendra & Thathachar 1989.
- ↑ Altman 1999.
- ↑ Feyzabadi & Carpin 2014.
参考文献
[編集]- 木村, 元 (2016), “3-3-2 強化学習”, 知識の森 (電子情報通信学会)
- 中出, 康一 (2019-04-05). マルコフ決定過程 - 理論とアルゴリズム -. 情報科学における確率モデル. 4. コロナ社. ISBN 978-4-339-02834-8
- Bellman, R. (1957). “A Markovian Decision Process”. Journal of Mathematics and Mechanics 6.
- Howard, Ronald. A. (1960). Dynamic Programming and Markov Processes. The M.I.T. Press
- Shapley, Lloyd. (1953). “Stochastic Games”. Proceedings of National Academy of Science 39: 1095–1100.
- Kallenberg, Lodewijk. (2002). “Finite state and action MDPs”. Handbook of Markov decision processes: methods and applications. Springer. ISBN 0-7923-7459-2
- Sutton, R. S.; Barto, A. G. (1998). Reinforcement Learning: An Introduction. Cambridge, MA: The MIT Press
- Narendra, K. S.; Thathachar, M. A. L. (1974). “Learning Automata - A Survey”. IEEE Transactions on Systems, Man, and Cybernetics SMC-4 (4): 323–334. doi:10.1109/TSMC.1974.5408453. ISSN 0018-9472.
- Narendra, Kumpati S.; Thathachar, Mandayam A. L. (1989). Learning automata: An introduction. Prentice Hall. ISBN 9780134855585
- Altman, Eitan (1999). Constrained Markov decision processes. 7. CRC Press
- Feyzabadi, S.; Carpin, S. (2014). “Risk-aware path planning using hierarchical constrained Markov Decision Processes”. Automation Science and Engineering (CASE). IEEE International Conference. pp. 297, 303. doi:10.1109/CoASE.2014.6899341.
- 木村, 元 (2013). “《第1回》強化学習の基礎”. 計測と制御 (計測自動制御学会) 52 (1): 72-77. NAID 10031140795.
関連項目
[編集]外部リンク
[編集]- Reinforcement Learning An Introduction by Richard S. Sutton and Andrew G. Barto
- Learning to Solve Markovian Decision Processes by Satinder P. Singh
- Optimal Adaptive Policies for Markov Decision Processes by Burnetas and Katehakis (1997)
- ソフトウェアパッケージ
- MDP Toolbox for MATLAB, GNU Octave, Scilab and R The Markov Decision Processes (MDP) Toolbox.
- MDP Toolbox for Matlab - An excellent tutorial and Matlab toolbox for working with MDPs.
- MDP Toolbox for Python A package for solving MDPs
- SPUDD A structured MDP solver for download by Jesse Hoey