(57)【要約】【課題】状態や状態遷移規則が不明な環境であっても、行動を選択するための状態や状態遷移規則を獲得することができるようにする。【解決手段】状態獲得部２１０が、選択された行動を行ったときの行動後の環境の状態を獲得し、報酬計算部２２０が、獲得した状態と選択された行動とに基づいて、状態において行動を行った際の報酬を計算し、パラメタ更新部２４０が、選択された行動と報酬とに基づいて、状態を入力とし、行動を選択するためのモデルのパラメタを更新し、行動選択部２７０が、行動後の状態を入力とし、モデルを用いて、行動を選択し、反復終了条件を満たすまで、獲得、計算、更新、及び選択を繰り返し、状態獲得部２１０は、獲得した状態が、既に獲得した状態の集合と比較して、新しい状態であれば、獲得した状態を、状態の集合に追加し、状態の集合に基づいて、状態遷移規則を獲得する。【選択図】図２
2019079227.tif 000002
【特許請求の範囲】
【請求項１】
選択された行動を行ったときの行動後の環境の状態を獲得する状態獲得部と、
前記獲得した前記状態と前記選択された行動とに基づいて、前記状態において前記行動を行った際の報酬を計算する報酬計算部と、
前記選択された行動と前記報酬計算部により計算された報酬とに基づいて、前記状態を入力とし、行動を選択するためのモデルのパラメタを更新するパラメタ更新部と、
前記行動後の状態を入力とし、前記モデルを用いて、行動を選択する行動選択部と、
予め定められた反復終了条件を満たすまで、前記状態獲得部による獲得、前記報酬計算部による計算、前記パラメタ更新部による更新、及び前記行動選択部による選択を繰り返させる終了判定部と、
を備え、
前記状態獲得部は、獲得した状態が、既に獲得した状態の集合と比較して、新しい状態であれば、前記獲得した状態を、前記状態の集合に追加し、前記状態の集合に基づいて、状態遷移規則を獲得する
ことを特徴とする状態遷移規則獲得装置。
【請求項２】
請求項１記載の状態遷移規則獲得装置と、
前記状態遷移規則獲得装置により得られた前記状態の集合及び状態遷移規則に基づいて、前記状態と前記行動との各ペアに対して、前記状態において行動を行った時の期待利得を学習する行動選択方策獲得部と、
前記行動選択方策獲得部における学習が収束するまで、前記状態遷移規則獲得装置による処理、及び前記行動選択方策獲得部による学習を繰り返させる収束判定部と、
を備えることを特徴とする行動選択学習装置。
【請求項３】
前記モデルは、前記行動後の状態を入力とし、行動を選択するための多層ニューラルネットワークであることを特徴とする請求項１記載の状態遷移規則獲得装置。
【請求項４】
前記報酬計算部は、前記状態において前記行動を行った際の報酬を、前記状態を訪問した回数と、前記状態において前記行動を選択した回数と、前記状態において前記行動を行った時の期待利得とに基づいて計算することを特徴とする請求項２記載の行動選択学習装置。
【請求項５】
予め学習された、環境の状態において行動を行った時の期待利得に基づいて、入力された状態に対して、前記期待利得が最大となる行動を選択する行動選択部
を備えることを特徴とする行動選択装置であって、
前記期待利得は、
選択された行動を行った時の行動後の環境の状態を獲得し、前記獲得した前記状態と前記選択された行動とに基づいて、前記状態において前記行動を行った際の報酬を計算し、前記選択された行動と計算された報酬とに基づいて、前記状態を入力とし、行動を選択するためのモデルのパラメタを更新し、前記行動後の状態を入力とし、前記モデルを用いて、行動を選択することを予め定められた反復終了条件を満たすまで繰り返すことと、
前記状態の集合及び状態遷移規則に基づいて、前記状態と前記行動との各ペアに対して、前記状態において行動を行った時の期待利得を学習することと、
を交互に繰り返すことにより予め学習される行動選択装置。
【請求項６】
状態獲得部が、選択された行動を行ったときの行動後の環境の状態を獲得するステップと、
報酬計算部が、前記獲得した前記状態と前記選択された行動とに基づいて、前記状態において前記行動を行った際の報酬を計算するステップと、
パラメタ更新部が、前記選択された行動と前記報酬計算部により計算された報酬とに基づいて、前記状態を入力とし、行動を選択するためのモデルのパラメタを更新するステップと、
行動選択部が、前記行動後の状態を入力とし、前記モデルを用いて、行動を選択するステップと、
終了判定部が、予め定められた反復終了条件を満たすまで、前記状態獲得部による獲得、前記報酬計算部による計算、前記パラメタ更新部による更新、及び前記行動選択部による選択を繰り返させるステップと、
を備え、
前記状態獲得部が獲得するステップは、獲得した状態が、既に獲得した状態の集合と比較して、新しい状態であれば、前記獲得した状態を、前記状態の集合に追加し、前記状態の集合に基づいて、状態遷移規則を獲得することを特徴とする状態遷移規則獲得方法。
【請求項７】
行動選択部が、予め学習された、環境の状態において行動を行った時の期待利得に基づいて、入力された状態に対して、前記期待利得が最大となる行動を選択するステップ
を備えることを特徴とする行動選択方法であって、
前記期待利得は、
選択された行動を行った時の行動後の環境の状態を獲得し、前記獲得した前記状態と前記選択された行動とに基づいて、前記状態において前記行動を行った際の報酬を計算し、前記選択された行動と計算された報酬とに基づいて、前記状態を入力とし、行動を選択するためのモデルのパラメタを更新し、前記行動後の状態を入力とし、前記モデルを用いて、行動を選択することを予め定められた反復終了条件を満たすまで繰り返すことと、
前記状態の集合及び状態遷移規則に基づいて、前記状態と前記行動との各ペアに対して、前記状態において行動を行った時の期待利得を学習することと、
を交互に繰り返すことにより予め学習されることを特徴とする行動選択方法。
【請求項８】
コンピュータを、請求項１若しくは請求項３記載の状態遷移規則獲得装置、請求項２若しくは請求項４記載の行動選択学習装置、又は請求項５記載の行動選択装置の各部として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、状態遷移規則獲得装置、行動選択学習装置、行動選択装置、状態遷移規則獲得方法、行動選択方法、およびプログラムに関し、特に、状態における行動を選択するための状態遷移規則獲得装置、行動選択学習装置、行動選択装置、状態遷移規則獲得方法、行動選択方法、およびプログラムに関する。
【背景技術】
【０００２】
人間の意思決定を補助する意思決定支援システムは、医学的診断、銀行での融資決定、企業での経営判断など、様々な分野で幅広い実用システムを含む。こういった意思決定支援システムの強化は、近年発展が著しい人工知能研究の重要な課題の一つと考えられる。
【０００３】
意思決定支援システムの構成に定型は存在しないが、ここでは一つの方法論として、事象を一つの状態として記述し、ある行動を取ることで現在の状態から次の状態へ遷移する状態遷移モデルを考える。そして、得られる期待利得が最も大きい最終状態へ到達できるように現在の状態における取るべき行動を提示する、という戦略を用いるシステムを仮定する。つまり、ここで取り上げる意思決定支援システムは、現時点の状態から最良の最終状態へ到達するために必要な行動を自動で選択して提示するシステムとなる。
【０００４】
一般的に、意思決定支援システムにおいては、選択できる行動の数や、取り得る状態の総数の多さに依存して問題の難易度も変わってくる。仮に、行動を選択する際に必要な情報が、現在の状態の情報として全て取得することが可能、かつ、行動に対する状態の遷移が決定的な（不確定要素はない）場合、計算時間を無限に使うことが許されるなら、現在の状態における最良の行動を、システムを用いて自動的に計算できる可能性は高い。
【０００５】
ただし、現実的には、現在の状態に対する情報が全て取得可能と言う状況はほとんど起こり得ない。また、行動に対する状態の遷移は必ずしも一意ではなく、確率的に次の状態が決定する場合がほとんどである。つまり、通常、様々な不確定要素を考慮しながら最適な行動の選択を強いられる。
【０００６】
近年の人工知能技術の高まりの中で、ポーカーといった閉じた環境の中であれば「自分の行動（手）を決定する際に相手の手配の情報は不明」かつ「自分のとった行動に対する相手の行動は不確定」という情報が不完全かつ不確定な環境でも、人間のプロを超える強さをもつエージェントを構築可能な方法論が考案されている（例えば、非特許文献１）。ここで、「閉じた環境」とは、環境下で取り得る状態の種類が時間と共に増えたり減ったりすることはなく不変であり列挙可能、ということを意味することとする。具体的な方法としては、不確定不完全情報環境下で、現在の状態から未来の状態への遷移を仮定しながら探索し、最も「失敗の少ない（後悔がない）」状態に到達する行動を取る戦略を用いている。このように閉じた環境で、かつ、比較的状態数の少ない環境では、行動を決定する際に必要な情報が不完全かつ不確定であったとしても、最良の結果、あるいは、最良に近い結果を得る行動を自動で選択することができるようになりつつある。
【先行技術文献】
【非特許文献】
【０００７】
【非特許文献１】Martin Zinkevich, Michael Johanson, Michael Bowling, and Carmelo Piccione. Regret minimization in gameswithincomplete information. In J. C. Platt, D. Koller, Y. Singer, and S. T. Roweis, editors, Advances inNeural Information Processing Systems 20, pages 1729{1736. 2008.
【発明の概要】
【発明が解決しようとする課題】
【０００８】
前述の非特許文献１では、システムは、環境（ゲームのルール）、状態、及び状態遷移規則をあらかじめ与えられて知っている、と言う仮定で構築されている。状態や状態遷移規則が分かっていれば、それを用いて勝率や利得のシミュレーションを行うことが可能であり、膨大なシミュレーション計算により、全ての状態においてどのような行動を取るべきかの指針を得ることができる。
【０００９】
しかし、実世界の問題では、状態の定義とある行動をとった際に状態がどのように遷移するか遷移規則を獲得することは困難であるし、全て書き出すのは不可能に近い。実問題では一般的に状態の遷移規則は不明であり、かつ、状態の種類数も膨大な数になるためである。つまり、状態遷移規則や状態の定義を事前にシステムに与えることができないため、閉じた環境で現在有望な方法論である非特許文献１などを実応用システムへ適用できない、といった問題がある。
【００１０】
本発明はこの課題に鑑みてなされたものであり、状態や状態遷移規則が不明な環境であっても、行動を選択するための状態や状態遷移規則を獲得することができる状態遷移規則獲得装置、行動選択学習装置、状態遷移規則獲得方法、およびプログラムを提供することを目的とする。
【００１１】
また、本発明は、状態や状態遷移規則が不明な環境であっても、適切な行動を選択することができる行動選択装置、行動選択方法、およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１２】
本発明に係る状態遷移規則獲得装置は、選択された行動を行ったときの行動後の状態を獲得する状態獲得部と、前記獲得した前記状態と前記選択された行動とに基づいて、前記状態において前記行動を行った際の報酬を計算する報酬計算部と、前記選択された行動と前記報酬計算部により計算された報酬とに基づいて、前記状態を入力とし、行動を選択するためのモデルのパラメタを更新するパラメタ更新部と、前記行動後の状態を入力とし、前記モデルを用いて、行動を選択する行動選択部と、予め定められた反復終了条件を満たすまで、前記状態獲得部による獲得、前記報酬計算部による計算、前記パラメタ更新部による更新、及び前記行動選択部による選択を繰り返させる終了判定部と、を備え、前記状態獲得部は、獲得した状態が、既に獲得した状態の集合と比較して、新しい状態であれば、前記獲得した状態を、前記状態の集合に追加し、前記状態の集合に基づいて、状態遷移規則を獲得する。
【００１３】
また、本発明に係る状態遷移規則獲得方法は、状態獲得部が、選択された行動を行ったときの行動後の環境の状態を獲得するステップと、報酬計算部が、前記獲得した前記状態と前記選択された行動とに基づいて、前記状態において前記行動を行った際の報酬を計算するステップと、パラメタ更新部が、前記選択された行動と前記報酬計算部により計算された報酬とに基づいて、前記状態を入力とし、行動を選択するためのモデルのパラメタを更新するステップと、行動選択部が、前記行動後の状態を入力とし、前記モデルを用いて、行動を選択するステップと、終了判定部が、予め定められた反復終了条件を満たすまで、前記状態獲得部による獲得、前記報酬計算部による計算、前記パラメタ更新部による更新、及び前記行動選択部による選択を繰り返させるステップと、を備え、前記状態獲得部が獲得するステップは、獲得した状態が、既に獲得した状態の集合と比較して、新しい状態であれば、前記獲得した状態を、前記状態の集合に追加し、前記状態の集合に基づいて、状態遷移規則を獲得する。
【００１４】
本発明に係る状態遷移規則獲得装置及び状態遷移規則獲得方法によれば、状態獲得部が、入力された行動を行ったときの行動後の環境の状態を獲得し、報酬計算部が、獲得した状態と選択された行動とに基づいて、状態において行動を行った際の報酬を計算し、パラメタ更新部が、選択された行動と報酬計算部により計算された報酬とに基づいて、状態を入力とし、行動を選択するためのモデルのパラメタを更新する。
【００１５】
そして、行動選択部が、行動後の状態を入力とし、モデルを用いて、行動を選択し、終了判定部が、予め定められた反復終了条件を満たすまで、状態獲得部による獲得、報酬計算部による計算、パラメタ更新部による更新、及び行動選択部による選択を繰り返させ、状態獲得部は、獲得した状態が、既に獲得した状態の集合と比較して、新しい状態であれば、獲得した状態を、状態の集合に追加し、状態の集合に基づいて、状態遷移規則を獲得する。
【００１６】
このように、予め定められた反復終了条件を満たすまで、入力された行動を行ったときの行動後の環境の状態を獲得し、獲得した状態と選択された行動とに基づいて、状態において行動を行った際の報酬を計算し、選択された行動と報酬計算部により計算された報酬とに基づいて、状態を入力とし、行動を選択するためのモデルのパラメタを更新し、行動後の状態を入力とし、モデルを用いて、行動を選択することを繰り返し、獲得した状態が、既に獲得した状態の集合と比較して、新しい状態であれば、獲得した状態を、状態の集合に追加し、状態の集合に基づいて、状態遷移規則を獲得することにより、状態や状態遷移規則が不明な環境であっても、行動を選択するための状態や状態遷移規則を獲得することができる。
【００１７】
本発明に係る行動選択学習装置は、上記の状態遷移規則獲得装置と、前記状態遷移規則獲得装置により得られた前記状態の集合及び状態遷移規則に基づいて、前記状態と前記行動との各ペアに対して、前記状態において行動を行った時の期待利得を学習する行動選択方策獲得部と、前記行動選択方策獲得部における学習が収束するまで、前記状態遷移規則獲得装置による処理、及び前記行動選択方策獲得部による学習を繰り返させる収束判定部と、を備えて構成される。
【００１８】
このように、状態遷移規則獲得装置と、行動選択方策獲得部が、状態遷移規則獲得装置により得られた状態の集合及び状態遷移規則に基づいて、状態と行動との各ペアに対して、状態において行動を行った時の期待利得を学習し、学習が収束するまで、状態遷移規則獲得装置による処理、及び行動選択方策獲得部による学習を繰り返させることにより、状態や状態遷移規則が不明な環境であっても、行動を選択するための状態や状態遷移規則を獲得することができる。
【００１９】
本発明に係る状態遷移規則獲得装置は、前記モデルは、前記行動後の状態を入力とし、行動を選択するための多層ニューラルネットワークであるとすることができる。
【００２０】
本発明に係る行動選択学習装置は、前記報酬計算部は、前記状態において前記行動を行った際の報酬を、前記状態を訪問した回数と、前記状態において前記行動を選択した回数と、前記状態において前記行動を行った時の期待利得とに基づいて計算することができる。
【００２１】
本発明に係る行動選択装置は、予め学習された、環境の状態において行動を行った時の期待利得に基づいて、入力された状態に対して、前記期待利得が最大となる行動を選択する行動選択部を備えることを特徴とする行動選択装置であって、前記期待利得は、選択された行動を行った時の行動後の環境の状態を獲得し、前記獲得した前記状態と前記選択された行動とに基づいて、前記状態において前記行動を行った際の報酬を計算し、前記選択された行動と計算された報酬とに基づいて、前記状態を入力とし、行動を選択するためのモデルのパラメタを更新し、前記行動後の状態を入力とし、前記モデルを用いて、行動を選択することを予め定められた反復終了条件を満たすまで繰り返すことと、前記状態の集合及び状態遷移規則に基づいて、前記状態と前記行動との各ペアに対して、前記状態において行動を行った時の期待利得を学習することと、を交互に繰り返すことにより予め学習される。
【００２２】
また、本発明に係る行動選択方法は、行動選択部が、予め学習された、環境の状態において行動を行った時の期待利得に基づいて、入力された状態に対して、前記期待利得が最大となる行動を選択するステップを備えることを特徴とする行動選択方法であって、前記期待利得は、選択された行動を行った時の行動後の環境の状態を獲得し、前記獲得した前記状態と前記選択された行動とに基づいて、前記状態において前記行動を行った際の報酬を計算し、前記選択された行動と計算された報酬とに基づいて、前記状態を入力とし、行動を選択するためのモデルのパラメタを更新し、前記行動後の状態を入力とし、前記モデルを用いて、行動を選択することを予め定められた反復終了条件を満たすまで繰り返すことと、前記状態の集合及び状態遷移規則に基づいて、前記状態と前記行動との各ペアに対して、前記状態において行動を行った時の期待利得を学習することと、を交互に繰り返すことにより予め学習されることを特徴とする。
【００２３】
本発明に係る行動選択装置及び行動選択方法によれば、予め学習された、環境の状態において行動を行った時の期待利得に基づいて、入力された状態に対して、期待利得が最大となる行動を選択する。
【００２４】
そして、期待利得は、選択された行動を行った時の行動後の環境の状態を獲得し、獲得した状態と選択された行動とに基づいて、状態において行動を行った際の報酬を計算し、選択された行動と計算された報酬とに基づいて、状態を入力とし、行動を選択するためのモデルのパラメタを更新し、行動後の状態を入力とし、モデルを用いて、行動を選択することを予め定められた反復終了条件を満たすまで繰り返すことと、状態の集合及び状態遷移規則に基づいて、状態と行動との各ペアに対して、状態において行動を行った時の期待利得を学習することと、を交互に繰り返すことにより予め学習される。
【００２５】
このように、選択された行動を行った時の行動後の環境の状態を獲得し、獲得した状態と選択された行動とに基づいて、状態において行動を行った際の報酬を計算し、選択された行動と計算された報酬とに基づいて、状態を入力とし、行動を選択するためのモデルのパラメタを更新し、行動後の状態を入力とし、モデルを用いて、行動を選択することを予め定められた反復終了条件を満たすまで繰り返すことと、状態の集合及び状態遷移規則に基づいて、状態と行動との各ペアに対して、状態において行動を行った時の期待利得を学習することと、を交互に繰り返すことにより予め学習された、環境の状態において行動を行った時の期待利得に基づいて、入力された状態に対して、期待利得が最大となる行動を選択することにより、状態や状態遷移規則が不明な環境であっても、適切な行動を選択することができる。
【００２６】
本発明に係るプログラムは、上記の状態遷移規則獲得装置、行動選択学習装置、又は行動選択装置の各部として機能させるためのプログラムである。
【発明の効果】
【００２７】
本発明の行動選択学習装置、行動選択学習方法、およびプログラムによれば、状態や状態遷移規則が不明な環境であっても、行動を選択するための状態や状態遷移規則を獲得することができる。
【００２８】
また、本発明の行動選択装置、行動選択方法、およびプログラムによれば、状態や状態遷移規則が不明な環境であっても、適切な行動を選択することができる。
【図面の簡単な説明】
【００２９】
【図１】本発明の実施の形態に係る行動選択学習装置の構成を示すブロック図である。
【図２】本発明の実施の形態に係る状態遷移規則獲得部の構成を示すブロック図である。
【図３】本発明の実施の形態に係る行動選択学習装置の行動選択学習処理ルーチンを示すフローチャートである。
【図４】本発明の実施の形態に係る状態と状態遷移規則の獲得処理ルーチンを示すフローチャートである。
【図５】本発明の実施の形態に係る行動選択装置の構成を示すブロック図である。
【図６】本発明の実施の形態に係る行動選択装置の行動選択処理ルーチンを示すフローチャートである。
【発明を実施するための形態】
【００３０】
以下、本発明の実施の形態について図面を用いて説明する。
【００３１】
＜本発明の実施の形態の原理＞
まず、本発明の実施形態の原理について説明する。
【００３２】
本発明の実施の形態では、実環境を仮想的に実現するシミュレータを仮定する。このシミュレータは意思決定支援システムがある行動を選択すると、その環境下でどのようなことが起こるかを提示するものである。このシミュレータは過去の事例などを元に情報を提示するものとする。また同時に、その時の状態の利得も提示するものとする。
【００３３】
まず、意思決定支援システムは、状態及び状態遷移規則を獲得する処理を行う（処理１）。ここでは、環境下で取り得る状態と状態遷移規則を獲得することを目指す。このために、シミュレーション下で、新たな状態や状態遷移を発見すべく探索を行う。この探索には、例えば強化学習の一種であるＱ学習に深層学習を適用したｄｅｅｐ  Ｑ−ｎｅｔｗｏｒｋ（ＤＱＮ）などを用いる。
【００３４】
エージェントは、環境から状態とその状態に対する利得を獲得し、より利得が得られると考えられる状態へ優先的に遷移できるような行動を学習していく。
【００３５】
次に、意思決定支援システムは、行動選択の方策を獲得する処理を行う（処理２）。ここでは、得られた状態と状態遷移規則に相当するものを利用して、各状態での行動の利得計算を行う。
【００３６】
具体的には、意思決定支援システムは、状態とその状態に対する行動のペアに対して、最終状態まで遷移した際に最も損失が大きいものが小さくなるように学習を進めていく。すなわち、最終状態まで遷移した際の損失をｘｉとすると、損失ｘｉのうち、最も大きい値（ｍａｘ（ｘｉ））が、なるべく小さい値になるように（ｍｉｎ（ｍａｘ（ｘｉ）））学習する。この学習を繰り返し行うことによって、状態とその状態に対する行動のペアの良さが次第に得られることになる。最終的に十分な回数シミュレーションを行うと、各状態で取るべき行動が得られるようになる。
【００３７】
そして、意思決定支援システムは、行動選択の方策の収束判定の処理を行う（処理３）。行動選択の方策が収束している場合は処理を終了し、そうでない場合は処理１に戻る。すなわち、処理１及び処理２を繰り返し行うことで最終的な行動選択の戦略を得る。
【００３８】
＜＜処理１．状態と状態遷移規則の獲得＞＞
状態の集合をＳとする。また、状態遷移の集合をＴ＝Ｓ×Ｓとする。基本的に、Ｓは初期状態は空集合を仮定する。ただし、繰り返し処理により本処理を行う場合は、一つ前の処理の最終状態が、本処理の初期状態となる。よって、その場合、Ｓは空集合ではなくなるが、Ｓの初期状態は本処理には影響を与えないので、どのような集合が与えられても良い。
【００３９】
次にＡを行動の集合とする。また、ａとｓをそれぞれ（時間に依存しない）行動と状態を表す記号として用いる。つまり
2019079227.tif 000003
であり、
2019079227.tif 000004
である。本発明では、多層ニューラルネットワークによる強化学習の枠組みを用いて状態と状態遷移規則の探索を行う。ここでは、多層ニューラルネットワーク全体をＭθで表し、そのパラメタをθとする。
【００４０】
時刻をｔとし、時刻ｔの状態を
2019079227.tif 000005
と表記することにする。時刻ｔの状態において取り得る行動の集合Ａ（ｓｔ）に対して、各行動
2019079227.tif 000006
を、多層ニューラルネットワークを用いて確率値によりモデル化する。また、時刻ｔの終了状態ｆｔは、０または１を返す関数で、終了状態であれば１、そうでなければ０を返す。
【００４１】
そして、以下のアルゴリズムに則って、状態及び状態遷移を獲得する。
ステップ１．(初期化)ｔ＝１、多層ニューラルネットワークＭθの構成を読み込み。
ステップ２．一時刻前の行動ａｔ−１を環境に投入、ｔ＝０の場合は「行動なし」と仮定。
ステップ３．行動に対する、状態ｓｔ、行動に対する報酬ｒ（ｓｔ−１，ａｔ−１）、及び終了状態ｆｔを環境から取得。
ステップ４．新しい状態を発見したらその状態ｓｔをＳへ追加。
ステップ５．行動ａｔ−１、行動に対する報酬ｒ（ｓｔ−１，ａｔ−１）を用いてネットワークのパラメタθを更新。
ステップ６．終了判定：ｆｔが１（終了状態）であれば、終了し、ｆｔが０（終了状態でない）なら、以下の処理を継続。
ステップ７．ステップ３．で取得した状態を入力とし、ステップ１．で構築したネットワークの定義に従ってネットワークの各要素の値を計算し、時刻ｔの行動として、行動
2019079227.tif 000007
の値がもっとも高い行動を選択。
ステップ８．ｓｔで行動ａｔを取ることに対する報酬ｒ（ｓｔ，ａｔ）を更新。例えば、後述の式（１）を用いて更新する。
ステップ９．ｔ＝ｔ＋１として、ステップ２．に戻る。
【００４２】
ある状態ｓｔで行動ａｔをとった際の報酬ｒ（ｓｔ,ａｔ）は、ａｔの結果得られる状態ｓｔ＋１が未知の状態であった場合に高い評価値を与え、既知の状態の場合は訪問回数が多ければ多いほど報酬が減衰する関数を用いる。この関数は、上記ステップ８において、報酬ｒ（ｓｔ，ａｔ）を更新する際に用いられる。
【００４３】
報酬の具体的な定義は、無限に考えられるが、例えば、ｕｐｐｅｒ  ｃｏｎｆｉｄｅｎｃｅ  ｂｏｕｎｄ（ＵＣＢ）と呼ばれる計算式に基づいて計算する場合を考える。
【００４４】
【数１】
2019079227.tif 000008
【００４５】
ここで、ｇ（ｓｔ，ａｔ)を時刻ｔの状態ｓｔにおいて選択した行動ａｔを行った際にえられる期待利得、ｎ(ｓｔ)を時刻ｔの状態ｓｔを訪問した回数、ｎ（ｓｔ，ａｔ)を時刻ｔの状態ｓｔにおいて行動ａｔを選択した回数、をそれぞれ表す。また、αは第一項と第二項の重み係数である。
【００４６】
ＵＣＢに基づく行動選択を無限回行うと、式（１）の第二項が０に漸近的に近づくので、ｒ(ｓｔ，ａｔ)の値に従った評価値となる。逆に、状態ｓｔを初めて訪問した場合、あるいは、ほとんど訪問していない場合は、ランダムに近い評価値となる。
【００４７】
また、その丁度中間に相応する場合は、ある状態ｓｔにおいてとった行動ａｔに対して過去に同じ行動をとった回数が少ない場合ほど優先的に選択するような評価値となる。
【００４８】
＜＜処理２．行動選択の方策の獲得＞＞
得られた状態の集合Ｓと状態遷移規則Ｔを用いて、従来法であるＣＦＲ（非特許文献１）などを用いて、行動選択の方策を獲得する。より具体的には、ある時刻ｔの状態ｓｔにおいて選択した行動ａｔに対する期待利得ｇ（ｓｔ，ａｔ）を計算し保持する。
【００４９】
＜＜処理３．行動選択の方策の収束判定＞＞
全てのｓｔ及びａｔのペアに対して得られた期待利得ｇ（ｓｔ，ａｔ）が、前回の処理結果との差分が十分に小さければ、学習の処理を終了する。もし、期待利得の差分が十分小さくない場合は、再度、上記処理１に戻る。
【００５０】
＜＜行動選択＞＞
最終的に、意思決定支援システムが、上記学習により得られたｇ（ｓ，ａ）に基づいて状態ｓｔに対する行動を選択する。より具体的には、ある状態ｓに対して、最良のｇ（ｓ，ａ）となる行動
2019079227.tif 000009
を提示する。
【００５１】
以下、与えられた状態に対して行動選択の戦略を自動的に獲得する行動選択学習装置について述べた後、獲得した行動選択の戦略を用いて、実際に提示する行動選択装置について述べる。
【００５２】
＜本発明の実施の形態に係る行動選択学習装置の構成＞
図１を参照して、本発明の実施の形態に係る行動選択学習装置の構成について説明する。図１は、本発明の実施の形態に係る行動選択学習装置の構成を示すブロック図である。
【００５３】
行動選択学習装置１０は、ＣＰＵと、ＲＡＭと、後述する行動選択学習処理ルーチンを実行するためのプログラムを記憶したＲＯＭとを備えたコンピュータで構成され、機能的には次に示すように構成されている。
【００５４】
図１に示すように、本実施形態に係る行動選択学習装置１０は、状態遷移規則獲得部１００と、シミュレーション部１１０と、状態記憶部１２０と、期待利得記憶部１３０と、行動選択方策獲得部１４０と、収束判定部１５０と、出力部１６０とを備えて構成される。
【００５５】
状態遷移規則獲得部１００は、入力された行動を行ったときの行動後の環境の状態を獲得し、獲得した状態が、既に獲得した状態の集合と比較して、新しい状態であれば、獲得した状態を、状態の集合に追加し、状態の集合に基づいて、状態遷移規則を獲得する。
【００５６】
具体的には、図２に示すように、状態遷移規則獲得部１００は、初期化部２００と、状態獲得部２１０と、報酬計算部２２０と、計算データ記憶部２３０と、パラメタ更新部２４０と、モデル記憶部２５０と、終了判定部２６０と、行動選択部２７０と、行動記憶部２８０とを備える。
【００５７】
初期化部２００は、状態遷移規則獲得部１００の処理が開始され、または収束判定部１５０から状態遷移規則獲得部１００の処理を行う命令を受け取ると、時刻ｔを１に初期化し、行動ａｔ−１（ａ０：行動なし）を状態獲得部２１０に入力する。
【００５８】
状態獲得部２１０は、選択された行動を行ったときの行動後の環境の状態を獲得する。
【００５９】
具体的には、状態獲得部２１０は、初期化部２００により入力され、又は行動選択部２７０により選択された行動ａｔ−１をシミュレーション部１１０に渡す。そして、シミュレーション部１１０により計算された行動ａｔ−１を行った場合における行動後の環境の状態ｓｔと終了状態ｆｔとを獲得する。
【００６０】
ここで、状態ｓは、例えば環境がトランプ等のカードゲームであれば、札を取得・捨てる等の行動後における手札の状態や場に出された札の状態等であり、ロボット等であれば、移動等の行動後におけるロボット等に搭載されたカメラに撮像される画像等である。
【００６１】
また、終了状態ｆｔは、環境がトランプ等のカードゲームであれば、ゲームの決着（勝敗）が付いているか否か、ロボット等であれば、ロボットが停止すべきか否か、目的を達成したか否か、目的達成可能性の判断ができるか否か等の、環境の終了状態である。
【００６２】
そして、状態獲得部２１０は、獲得した状態ｓｔが、既に獲得した状態の集合Ｓと比較して、新しい状態であれば、獲得した状態ｓｔを、状態記憶部１２０に記憶されている状態の集合Ｓに追加し、状態の集合Ｓに基づいて、状態遷移規則Ｔを獲得する。
【００６３】
このとき、獲得した状態が新しい状態であるか否かの判断は、状態が手札の組み合わせのような離散的である場合、一致する状態が含まれているか否かによって行う。また、状態が画像のような連続的である場合、状態間の類似度（例えば、画像の類似度）が閾値以上であれば、新しい状態であると判断する。この他にも、開いた環境では様々な状態が存在し得るため、状態同士を比較することによる様々な基準を設けることができる。
【００６４】
そして、状態獲得部２１０は、獲得した状態ｓｔを報酬計算部２２０へ渡す。
【００６５】
報酬計算部２２０は、獲得した状態ｓｔにおいて行動ａｔを行った際の報酬ｒ（ｓｔ，ａｔ）を、計算データ記憶部２３０に記憶されている時刻ｔにおける状態ｓｔを訪問した回数ｎ（ｓｔ）、及び状態ｓｔにおいて行動ａｔを選択した回数ｎ（ｓｔ，ａｔ）と、期待利得記憶部１３０に記憶されている状態ｓｔにおいて行動ａｔを行った時の期待利得ｇ（ｓｔ，ａｔ）とに基づいて計算する。
【００６６】
具体的には、報酬計算部２２０は、状態ｓｔにおいて選択し得る行動ａｔを行った時ｎ（ｓｔ）、ｎ（ｓｔ，ａｔ）、及び期待利得ｇ（ｓｔ，ａｔ）から、上記式（１）に従って、報酬ｒ（ｓｔ，ａｔ）を計算する。報酬計算部２２０は、状態ｓｔにおいて選択し得る行動ａｔ全てについて、報酬ｒ（ｓｔ，ａｔ）の計算を行う。
【００６７】
そして、報酬計算部２２０は、計算した報酬ｒ（ｓｔ，ａｔ）をパラメタ更新部２４０に渡す。
【００６８】
計算データ記憶部２３０は、時刻ｔにおけるｓｔの訪問回数ｎ（ｓｔ）、及び時刻ｔの状態ｓｔにおいて行動ａｔを選択した回数ｎ（ｓｔ，ａｔ）を記憶している。
【００６９】
パラメタ更新部２４０は、入力された行動ａｔ−１と報酬計算部２２０により計算された前回の状態ｓｔ−１において行動ａｔ−１を取ったことに対する報酬ｒ（ｓｔ−１，ａｔ−１）とに基づいて、状態ｓｔを入力とし、行動ａｔを選択するためのモデルのパラメタを更新する。本実施形態において、当該モデルは、行動後の状態を入力とし、行動を選択するための多層ニューラルネットワークＭθである。
【００７０】
具体的には、パラメタ更新部２４０は、行動ａｔ−１と、行動ａｔ−１に対する報酬ｒ（ｓｔ−１，ａｔ−１）とに基づいて、報酬が高い行動を選択するように、多層ニューラルネットワークＭθのパラメタθを更新し、更新したパラメタθをモデル記憶部２５０に記憶させる。
【００７１】
モデル記憶部２５０は、多層ニューラルネットワークＭθのパラメタθを記憶している。また、モデル記憶部２５０は、パラメタ更新部２４０から、パラメタθの更新を受け付けると、パラメタθを更新する。
【００７２】
終了判定部２６０は、予め定められた反復終了条件を満たすまで、状態獲得部２１０による獲得、報酬計算部２２０による計算、パラメタ更新部２４０による更新、及び行動選択部２７０による選択を繰り返させる。
【００７３】
具体的には、終了判定部２６０は、状態獲得部２１０が獲得した終了状態ｆｔが、終了状態を表すか否かを判定する。終了状態ｆｔが１（終了状態）であれば、行動選択方策獲得部１４０に処理を開始させる。
【００７４】
また、終了状態ｆｔが０（終了状態でない）であれば、行動選択部２７０に処理を行わせる。
【００７５】
行動選択部２７０は、行動ａｔ−１を行った後の状態ｓｔを入力とし、多層ニューラルネットワークＭθを用いて、行動ａｔを選択する。
【００７６】
具体的には、行動選択部２７０は、行動記憶部２８０に記憶されている行動の集合Ａ、及びモデル記憶部２５０に記憶されている多層ニューラルネットワークＭθにより、状態ｓｔに対して取り得る行動
2019079227.tif 000010
の、確率値を計算する。例えば、ｓｔを入力として多層ニューラルネットワークＭθの定義に従って、Ｍθの各要素の値を計算し、時刻ｔの行動として、最も確率の高い行動ａｔを選択する。
【００７７】
そして、行動選択部２７０は、計算データ記憶部２３０に記憶されている時刻ｔにおけるｓｔの訪問回数ｎ（ｓｔ）、及び時刻ｔの状態ｓｔにおいて行動ａｔを選択した回数ｎ（ｓｔ，ａｔ）に１を追加し、報酬ｒ（ｓｔ，ａｔ）を更新し、選択した行動ａｔを行動ａｔ−１として状態獲得部２１０に渡す。
【００７８】
行動記憶部２８０は、当該環境における行動ａの集合Ａが、予め記憶されている。
【００７９】
シミュレーション部１１０は、入力された行動ａを行った後の環境を計算し、行動後の環境を返す。行動後の環境には、環境の状態、環境の終了状態等が含まれる。ここで用いる環境は、状態や状態遷移規則が不明な環境（開いた環境）であるが、閉じた環境であってもよい。
【００８０】
状態記憶部１２０は、状態遷移規則獲得部１００により得られた状態ｓの集合Ｓ及び状態遷移規則Ｔを記憶している。また、状態獲得部２１０によって新しい状態と判断された状態を、状態の集合Ｓに追加する。なお、状態獲得部２１０によって状態が追加されるまでは、状態の集合Ｓは空集合であってもよい。
【００８１】
期待利得記憶部１３０は、行動選択方策獲得部１４０により学習された期待利得ｇを記憶している。
【００８２】
行動選択方策獲得部１４０は、状態遷移規則獲得部１００により得られた状態の集合Ｓ及び状態遷移規則Ｔに基づいて、状態ｓと行動ａとの各ペアに対して、状態ｓにおいて行動ａを行った時の期待利得ｇ（ｓ，ａ）を学習する。
【００８３】
具体的には、行動選択方策獲得部１４０は、状態記憶部１２０に記憶されている状態の集合Ｓと状態遷移規則Ｔを用いてシミュレーション部１１０による計算を行い、従来法であるＣＦＲ（非特許文献１）等を用いて、行動選択の方策を獲得する。より具体的には、全ての状態ｓと行動ａとのペア、すなわち、ある時刻ｔの状態ｓｔにおいて選択した行動ａｔに対して、期待利得ｇ（ｓｔ，ａｔ）を計算して、当該方策を獲得する。
【００８４】
そして、行動選択方策獲得部１４０は、獲得した期待利得ｇを期待利得記憶部１３０に記憶させる。
【００８５】
収束判定部１５０は、行動選択方策獲得部１４０における学習が収束するまで、状態遷移規則獲得部１００による処理、及び行動選択方策獲得部１４０による学習を繰り返させる。
【００８６】
具体的には、収束判定部１５０は、全てのｓｔ及びａｔのペアに対して得られた期待利得ｇ（ｓｔ，ａｔ）と、前回の処理結果である期待利得ｇ（ｓｔ−１，ａｔ−１）との差分が十分に小さければ、学習が収束したと判定し、収束判定結果を出力部１６０に渡す。
【００８７】
また、差分が十分小さくない場合は、再度、状態遷移規則獲得部１００に対して処理を行わせる。
【００８８】
出力部１６０は、収束判定部１５０から取得した収束判定結果を出力する。
【００８９】
＜本発明の実施の形態に係る行動選択学習装置の作用＞
図３は、本発明の実施の形態に係る行動選択学習装置の行動選択学習処理ルーチンを示すフローチャートである。
【００９０】
行動選択学習装置が起動すると、図３に示す行動選択学習処理ルーチンが実行される。
【００９１】
まず、ステップＳ１００において、状態遷移規則獲得部１００が、後述する状態と状態遷移規則の獲得処理ルーチンを実行することにより、状態の集合Ｓと状態遷移規則Ｔが、状態記憶部１２０に記憶される。
【００９２】
次に、ステップＳ１１０において、行動選択方策獲得部１４０が、状態遷移規則獲得部１００により得られた状態の集合Ｓ及び状態遷移規則Ｔに基づいて、状態ｓと行動ａとの各ペアに対して、状態ｓにおいて行動ａを行った時の期待利得ｇ（ｓ，ａ）を学習する。
【００９３】
ステップＳ１２０において、収束判定部１５０は、行動選択方策獲得部１４０における学習が収束したか否かを判定する。
【００９４】
学習が収束していないと判定した場合（ステップＳ１２０のＮＯ）、収束判定部１５０は、ステップＳ１００に戻り、状態遷移規則獲得部１００による処理（ステップＳ１００）、及び行動選択方策獲得部１４０による学習（ステップＳ１１０）を繰り返させる。
【００９５】
一方、学習が収束したと判定した場合（ステップＳ１２０のＹＥＳ）、ステップＳ１３０において、出力部１６０は、収束判定結果を出力する。
【００９６】
次に、図４を用いて、ステップＳ１００における状態と状態遷移規則の獲得処理ルーチンについて説明する。
【００９７】
状態遷移規則獲得部１００の処理が開始され、または収束判定部１５０から状態遷移規則獲得部１００の処理を行う命令を受け取ると、図４に示す状態と状態遷移規則の獲得処理ルーチンが実行される。
【００９８】
ステップＳ２００において、初期化部２００は、時刻ｔを１に初期化し、行動ａｔ−１（ａ０：行動なし）を状態獲得部２１０に入力する。
【００９９】
ステップＳ２１０において、状態獲得部２１０は、行動ａｔ−１をシミュレーション部１１０に渡す。
【０１００】
ステップＳ２２０において、状態獲得部２１０は、シミュレーション部１１０により計算された行動ａｔ−１を行った場合における環境の状態ｓｔと終了状態ｆｔとを獲得する。
【０１０１】
ステップＳ２３０において、状態獲得部２１０は、獲得した状態ｓｔが、既に獲得した状態の集合Ｓと比較して、新しい状態か否かを判定する。
【０１０２】
獲得した状態ｓｔが、新しい状態である場合（ステップＳ２３０のＹＥＳ）、ステップＳ２４０において、状態獲得部２１０は、獲得した状態ｓｔを、状態記憶部１２０に記憶されている状態の集合Ｓに追加し、状態の集合Ｓに基づいて、状態遷移規則Ｔを獲得する。
【０１０３】
獲得した状態ｓｔが、新しい状態でない場合（ステップＳ２３０のＮＯ）、ステップＳ２４０の処理を行わず、ステップＳ２５０に進む。
【０１０４】
ステップＳ２５０において、パラメタ更新部２４０は、報酬計算部２２０が前回計算した、前回の状態ｓｔ−１において行動ａｔ−１を行った際の報酬ｒ（ｓｔ−１，ａｔ−１）を取得する。
【０１０５】
ステップＳ２６０において、パラメタ更新部２４０は、入力された行動ａｔ−１と取得した報酬ｒ（ｓｔ−１，ａｔ−１）とに基づいて、多層ニューラルネットワークＭθのパラメタを更新する。
【０１０６】
ステップＳ２７０において、終了判定部２６０は、状態獲得部２１０が獲得した終了状態ｆｔが、終了状態を表す１であるか否かを判定する。
【０１０７】
終了状態ｆｔが１でない場合（ステップＳ２７０のＮＯ）、終了状態ｆｔは終了状態でないと判定し、ステップＳ２８０に進む。
【０１０８】
ステップＳ２８０において、行動選択部２７０は、行動ａｔ−１を行った後の状態ｓｔを入力とし、多層ニューラルネットワークＭθを用いて、行動ａｔを選択する。
【０１０９】
ステップＳ２９０において、行動選択部２７０は、計算データ記憶部２３０に記憶されている時刻ｔにおけるｓｔの訪問回数ｎ（ｓｔ）、及び時刻ｔの状態ｓｔにおいて行動ａｔを選択した回数ｎ（ｓｔ，ａｔ）に１を追加し、報酬ｒ（ｓｔ，ａｔ）を更新する。報酬ｒ（ｓｔ，ａｔ）の更新は、報酬計算部２２０が、獲得した状態ｓｔにおいて行動ａｔを行った際の報酬ｒ（ｓｔ，ａｔ）を、計算データ記憶部２３０に記憶されている時刻ｔにおける状態ｓｔを訪問した回数ｎ（ｓｔ）、及び状態ｓｔにおいて行動ａｔを選択した回数ｎ（ｓｔ，ａｔ）と、期待利得記憶部１３０に記憶されている状態ｓｔにおいて行動ａｔを行った時の期待利得ｇ（ｓｔ，ａｔ）とに基づいて計算することにより行う。
【０１１０】
ステップＳ３００において、行動選択部２７０は、選択した行動ａｔを行動ａｔ−１として状態獲得部２１０に渡し、ステップＳ２１０に戻る。
【０１１１】
一方、終了状態ｆｔが１である場合（ステップＳ２７０のＹＥＳ）、終了判定部２６０は、
【０１１２】
以上説明したように、本実施形態に係る行動選択学習装置によれば、予め定められた反復終了条件を満たすまで、入力された行動を行ったときの行動後の環境の状態を獲得し、獲得した状態と選択された行動とに基づいて、状態において行動を行った際の報酬を計算し、選択された行動と報酬計算部により計算された報酬とに基づいて、状態を入力とし、行動を選択するためのモデルのパラメタを更新し、行動後の状態を入力とし、モデルを用いて、行動を選択することを繰り返し、獲得した状態が、既に獲得した状態の集合と比較して、新しい状態であれば、獲得した状態を、状態の集合に追加し、状態の集合に基づいて、状態遷移規則を獲得することにより、状態や状態遷移規則が不明な環境であっても、行動を選択するための状態や状態遷移規則を獲得することができる。
【０１１３】
また、本実施形態に係る行動選択学習装置によれば、状態遷移規則獲得装置と、行動選択方策獲得部が、状態遷移規則獲得装置により得られた状態の集合及び状態遷移規則に基づいて、状態と行動との各ペアに対して、状態において行動を行った時の期待利得を学習し、学習が収束するまで、状態遷移規則獲得装置による処理、及び行動選択方策獲得部による学習を繰り返させることにより、状態や状態遷移規則が不明な環境であっても、行動を選択するための状態や状態遷移規則を獲得することができる。
【０１１４】
＜本発明の実施の形態に係る行動選択装置の構成＞
次に、本実施形態に係る行動選択装置について説明する。本実施形態において、行動選択装置は、選択した行動を行うように制御する対象である制御対象（例えば、ロボット）に搭載されているものとして説明する。本実施形態に係る行動選択装置は、実際に制御対象が目的地まで移動する実環境において、制御対象のセンサによって得られる状態（例えば、制御対象に搭載されたカメラによって撮像される画像）を行動選択装置に入力し、これに対して期待利得が最大となる（例えば、目的地に到達するために必要な）行動（例えば、右に曲がる、直進する等）を行うように、制御対象を制御するように構成されるものとする。
【０１１５】
図５を参照して、本実施形態に係る行動選択装置について説明する。図５は、本発明の実施の形態に係る行動選択装置の構成を示すブロック図である。
【０１１６】
行動選択装置２０は、ＣＰＵと、ＲＡＭと、後述する行動選択学習処理ルーチンを実行するためのプログラムを記憶したＲＯＭとを備えたコンピュータで構成され、機能的には次に示すように構成されている。
【０１１７】
図５に示すように、本実施形態に係る行動選択装置２０は、入力部３００と、行動選択部３１０と、期待利得記憶部３２０と、出力部３３０と、制御部３４０とを備えて構成される。
【０１１８】
入力部３００は、制御対象のセンサによって得られた状態ｓの入力を受け付ける。そして、入力部３００は、受け付けた状態ｓを、行動選択部３１０に渡す。
【０１１９】
行動選択部３１０は、予め学習された、環境の状態において行動を行った時の期待利得に基づいて、入力された状態ｓに対して、期待利得が最大となる行動ａを選択する。
【０１２０】
具体的には、行動選択部３１０は、期待利得記憶部３２０が記憶している学習済みの期待利得ｇ（ｓ，ａ）に基づいて、入力された状態ｓに対して、期待利得ｇ（ｓ，ａ）が最大となる行動ａを選択する。すなわち、ある状態ｓに対して、最良のｇ（ｓ，ａ）となる行動
2019079227.tif 000011
を選択する。そして、行動選択部３１０は、選択した行動ａを出力部３３０に渡す。
【０１２１】
期待利得記憶部３２０は、上述の行動選択学習装置１０によって学習された期待利得を記憶している。
【０１２２】
出力部３３０は、ディスプレイ、プリンタ、磁気ディスクなどで実装され、行動選択部３１０が選択した行動ａを出力する。
【０１２３】
また、出力部３３０は、行動選択部３１０が選択した行動ａを制御部３４０に出力する。
【０１２４】
制御部３４０は、出力部３３０により入力された行動を行うように制御対象の行動を制御する。例えば、右に曲がる、直進する等の行動をロボットに対して命令する。
【０１２５】
＜本発明の実施の形態に係る行動選択装置の作用＞
図６は、本発明の実施の形態に係る行動選択装置の行動選択処理ルーチンを示すフローチャートである。
【０１２６】
入力部３００に、制御対象のセンサによって得られた状態が入力されると、図６に示す行動選択処理ルーチンが実行される。
【０１２７】
まず、ステップＳ４００において、入力部３００は、制御対象のセンサによって得られた状態ｓの入力を受け付ける。
【０１２８】
次に、ステップＳ４１０において、入力された状態ｓに基づいて、終了状態であるか否かを判定する。終了状態である場合（ステップＳ４１０のＹＥＳ）には、行動選択処理ルーチンを終了する。一方、終了状態で無い場合（ステップＳ４１０のＮＯ）には、ステップＳ４２０へ進む。
【０１２９】
ステップＳ４２０において、行動選択部３１０は、期待利得記憶部３２０に記憶されている期待利得を読み込む。
【０１３０】
ステップＳ４３０において、上記ステップＳ４２０で読み込んだ期待利得に基づいて、上記ステップＳ４００で取得した状態ｓに対して、期待利得が最大となる行動ａを選択する。
【０１３１】
ステップＳ４４０において、出力部３３０は、行動選択部３１０が選択した行動ａを出力する。また、出力部３３０は、行動選択部３１０が選択した行動ａを制御部３４０に出力し、上記ステップＳ４００へ戻る。
【０１３２】
この後、制御部３４０により制御対象に対して行動の制御が行われ、制御対象のセンサによって状態が取得されることにより、行動選択処理ルーチンが繰り返される。
【０１３３】
以上説明したように、行動選択装置によれば、選択された行動を行った時の行動後の環境の状態を獲得し、獲得した状態と選択された行動とに基づいて、状態において行動を行った際の報酬を計算し、選択された行動と計算された報酬とに基づいて、状態を入力とし、行動を選択するためのモデルのパラメタを更新し、行動後の状態を入力とし、モデルを用いて、行動を選択することを予め定められた反復終了条件を満たすまで繰り返すことと、状態の集合及び状態遷移規則に基づいて、状態と行動との各ペアに対して、状態において行動を行った時の期待利得を学習することと、を交互に繰り返すことにより予め学習された、環境の状態において行動を行った時の期待利得に基づいて、入力された状態に対して、期待利得が最大となる行動を選択することにより、状態や状態遷移規則が不明な環境であっても、適切な行動を選択することができる。
【０１３４】
なお、本発明は、上述した実施の形態に限定されるものではなく、この発明の要旨を逸脱しない範囲内で様々な変形や応用が可能である。
【０１３５】
本実施形態において、行動選択装置は、制御対象のセンサによって取得された実環境の状態を入力としたが、シミュレータにより計算した環境の状態を入力としてもよい。例えば、環境がトランプ等のカードゲームであれば、シミュレータにより計算された札を取得・捨てる等の行動後における手札の状態や場に出された札の状態等を入力とするように構成してもよい。
【０１３６】
また、本願明細書中において、プログラムが予めインストールされている実施形態として説明したが、当該プログラムを、コンピュータ読み取り可能な記録媒体に格納して提供することも可能である。
【符号の説明】
【０１３７】
１０   行動選択学習装置
２０   行動選択装置
１００ 状態遷移規則獲得部
１１０ シミュレーション部
１２０ 状態記憶部
１３０ 期待利得記憶部
１４０ 行動選択方策獲得部
１５０ 収束判定部
１６０ 出力部
２００ 初期化部
２１０ 状態獲得部
２２０ 報酬計算部
２３０ 計算データ記憶部
２４０ パラメタ更新部
２５０ モデル記憶部
２６０ 終了判定部
２７０ 行動選択部
２８０ 行動記憶部
３００ 入力部
３１０ 行動選択部
３２０ 期待利得記憶部
３３０ 出力部
３４０ 制御部
【図１】
2019079227.tif 000012
【図２】
2019079227.tif 000013
【図３】
2019079227.tif 000014
【図４】
2019079227.tif 000015
【図５】
2019079227.tif 000016
【図６】
2019079227.tif 000017