(57)【要約】  モデル設定部８１は、強化学習で対象とする問題設定として、環境の状態において取るべき行動を決定する方策を、所定の状態の確率分布を表すボルツマン分布に対応付け、環境の状態およびその状態において選択される行動により得られる報酬を決定する報酬関数を、エネルギーに対応する物理量を表す物理方程式に対応付けたモデルを設定する。パラメータ推定部８２は、設定されたモデルに基づき、状態を含む学習データを用いて強化学習を行うことにより、物理方程式のパラメータを推定する。
2019225011.tif 000002
【特許請求の範囲】
【請求項１】
強化学習で対象とする問題設定として、環境の状態において取るべき行動を決定する方策を、所定の状態の確率分布を表すボルツマン分布に対応付け、環境の状態および当該状態において選択される行動により得られる報酬を決定する報酬関数を、エネルギーに対応する物理量を表す物理方程式に対応付けたモデルを設定するモデル設定部と、
設定された前記モデルに基づき、前記状態を含む学習データを用いて強化学習を行うことにより、前記物理方程式のパラメータを推定するパラメータ推定部とを備えた
ことを特徴とする学習装置。
【請求項２】
パラメータ推定部は、設定されたモデルに基づき、状態および行動を含む学習データを用いて強化学習を行うことにより、物理方程式のパラメータを推定する
請求項１記載の学習装置。
【請求項３】
モデル設定部は、行動に起因する効果と、状態に起因する効果とを分けた物理方程式を設定する
請求項１または請求項２記載の学習装置。
【請求項４】
モデル設定部は、報酬関数をハミルトニアンに対応付けたモデルを設定する
請求項１から請求項３のうちのいずれか１項に記載の学習装置。
【請求項５】
強化学習で対象とする問題設定として、環境の状態において取るべき行動を決定する方策を、所定の状態の確率分布を表すボルツマン分布に対応付け、環境の状態および当該状態において選択される行動により得られる報酬を決定する報酬関数を、エネルギーに対応する物理量を表す物理方程式に対応付けたモデルを設定するモデル設定部と、
設定された前記モデルに基づき、前記状態を含む学習データを用いて強化学習を行うことにより、前記物理方程式のパラメータを推定するパラメータ推定部と、
推定された物理方程式を用いて、入力された行動から状態を推定する状態推定部と、
前記入力された行動および推定された状態に基づいて模倣学習を行う模倣学習部とを備えた
ことを特徴とする情報処理システム。
【請求項６】
コンピュータが、強化学習で対象とする問題設定として、環境の状態において取るべき行動を決定する方策を、所定の状態の確率分布を表すボルツマン分布に対応付け、環境の状態および当該状態において選択される行動により得られる報酬を決定する報酬関数を、エネルギーに対応する物理量を表す物理方程式に対応付けたモデルを設定し、
前記コンピュータが、設定された前記モデルに基づき、前記状態を含む学習データを用いて強化学習を行うことにより、前記物理方程式のパラメータを推定する
ことを特徴とする学習方法。
【請求項７】
コンピュータが、設定されたモデルに基づき、状態および行動を含む学習データを用いて強化学習を行うことにより、物理方程式のパラメータを推定する
請求項６記載の学習方法。
【請求項８】
コンピュータが、推定された物理方程式を用いて、入力された行動から状態を推定し、
前記コンピュータが、前記入力された行動および推定された状態に基づいて模倣学習を行う
請求項６または請求項７記載の学習方法。
【請求項９】
コンピュータに、
強化学習で対象とする問題設定として、環境の状態において取るべき行動を決定する方策を、所定の状態の確率分布を表すボルツマン分布に対応付け、環境の状態および当該状態において選択される行動により得られる報酬を決定する報酬関数を、エネルギーに対応する物理量を表す物理方程式に対応付けたモデルを設定するモデル設定処理、および、
設定された前記モデルに基づき、前記状態を含む学習データを用いて強化学習を行うことにより、前記物理方程式のパラメータを推定するパラメータ推定処理
を実行させるための学習プログラム。
【請求項１０】
コンピュータに、
パラメータ推定処理で、設定されたモデルに基づき、状態および行動を含む学習データを用いて強化学習を行うことにより、物理方程式のパラメータを推定させる
請求項９記載の学習プログラム。
【請求項１１】
コンピュータに、
強化学習で対象とする問題設定として、環境の状態において取るべき行動を決定する方策を、所定の状態の確率分布を表すボルツマン分布に対応付け、環境の状態および当該状態において選択される行動により得られる報酬を決定する報酬関数を、エネルギーに対応する物理量を表す物理方程式に対応付けたモデルを設定するモデル設定処理、
設定された前記モデルに基づき、前記状態を含む学習データを用いて強化学習を行うことにより、前記物理方程式のパラメータを推定するパラメータ推定処理、
推定された物理方程式を用いて、入力された行動から状態を推定する状態推定処理、および、
前記入力された行動および推定された状態に基づいて模倣学習を行う模倣学習処理
を実行させるための学習プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、システムの仕組みを推定するモデルを学習する学習装置、情報処理システム、学習方法、および学習プログラムに関する。
【背景技術】
【０００２】
ＡＩ（Artificial intelligence ）の分野において、機械学習を行うための様々なアルゴリズムが提案されている。データ同化手法は、シミュレータを用いて現象を再現する方法であり、例えば、非線形性の高い自然現象を数値モデルによって再現する。また、他にも、大規模シミュレータのパラメータを決定したり、特徴量を抽出したりする際も、ディープラーニングなどの機械学習のアルゴリズムが用いられる。【０００３】
また、状態が変化しうる環境において行動を行うエージェントについて、環境の状態に応じた適切な行動を学習する方法として、強化学習が知られている。例えば、非特許文献１には、統計力学のドメイン知識を転用することで、強化学習を効率よく行う方法が記載されている。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】Adam Lipowski, et al., "Statistical mechanics approach to a reinforcement learning model with memory", Physica A vol. 388, pp. 1849-1856, 2009
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ＡＩの多くは、データを用意する以前に、明確なゴールや評価基準を定める必要がある。例えば、強化学習では、行動および状態に応じた報酬を定義する必要があるが、その原理的な仕組みが分かっていなければ、報酬を定義することができない。すなわち、一般的なＡＩは、データドリブンではなく、ゴール／評価方法ドリブンであるとも言える。【０００６】
具体的には、上述するような大規模シミュレータのパラメータを決定する際には、ゴールを決定する必要があり、また、データ同化手法では、そもそもシミュレータの存在を前提とする。また、ディープラーニングを用いた特徴量抽出では、どの特徴量が効くのか判断することは可能であるが、それ自体を学習する際にも、一定の評価基準が必要になる。非特許文献１に記載された方法についても同様である。【０００７】
近年、多くのデータが採取できるようになっているが、非自明なメカニズムを有するシステムのゴールや評価方法を決定することは困難である。そこで、非自明な現象を表すシステムのメカニズムであっても、データ主導でそのメカニズムを推定できることが求められている。【０００８】
そこで、本発明は、システムの仕組みが非自明であっても、取得されたデータに基づいて、その仕組みを推定するモデルを学習できる学習装置、情報処理システム、学習方法、および学習プログラムを提供すること目的とする。
【課題を解決するための手段】
【０００９】
本発明による学習装置は、強化学習で対象とする問題設定として、環境の状態において取るべき行動を決定する方策を、所定の状態の確率分布を表すボルツマン分布に対応付け、環境の状態およびその状態において選択される行動により得られる報酬を決定する報酬関数を、エネルギーに対応する物理量を表す物理方程式に対応付けたモデルを設定するモデル設定部と、設定されたモデルに基づき、状態を含む学習データを用いて強化学習を行うことにより、物理方程式のパラメータを推定するパラメータ推定部とを備えたことを特徴とする。【００１０】
本発明による情報処理システムは、強化学習で対象とする問題設定として、環境の状態において取るべき行動を決定する方策を、所定の状態の確率分布を表すボルツマン分布に対応付け、環境の状態およびその状態において選択される行動により得られる報酬を決定する報酬関数を、エネルギーに対応する物理量を表す物理方程式に対応付けたモデルを設定するモデル設定部と、設定されたモデルに基づき、状態を含む学習データを用いて強化学習を行うことにより、物理方程式のパラメータを推定するパラメータ推定部と、推定された物理方程式を用いて、入力された行動から状態を推定する状態推定部と、入力された行動および推定された状態に基づいて模倣学習を行う模倣学習部とを備えたことを特徴とする。【００１１】
本発明による学習方法は、コンピュータが、強化学習で対象とする問題設定として、環境の状態において取るべき行動を決定する方策を、所定の状態の確率分布を表すボルツマン分布に対応付け、環境の状態およびその状態において選択される行動により得られる報酬を決定する報酬関数を、エネルギーに対応する物理量を表す物理方程式に対応付けたモデルを設定し、コンピュータが、設定されたモデルに基づき、状態を含む学習データを用いて強化学習を行うことにより、物理方程式のパラメータを推定することを特徴とする。【００１２】
本発明による学習プログラムは、コンピュータに、強化学習で対象とする問題設定として、環境の状態において取るべき行動を決定する方策を、所定の状態の確率分布を表すボルツマン分布に対応付け、環境の状態およびその状態において選択される行動により得られる報酬を決定する報酬関数を、エネルギーに対応する物理量を表す物理方程式に対応付けたモデルを設定するモデル設定処理、および、設定されたモデルに基づき、状態を含む学習データを用いて強化学習を行うことにより、物理方程式のパラメータを推定するパラメータ推定処理を実行させることを特徴とする。
【発明の効果】
【００１３】
本発明によれば、システムの仕組みが非自明であっても、取得されたデータに基づいて、その仕組みを推定するモデルを学習できる。
【図面の簡単な説明】
【００１４】
【図１】本発明による学習装置を含む情報処理システムの一実施形態を示すブロック図である。
【図２】物理シミュレータを生成する処理の例を示す説明図である。
【図３】学習装置の動作例を示すフローチャートである。
【図４】情報処理システムの動作例を示すフローチャートである。
【図５】倒立振子の物理シミュレータの例を示す説明図である。
【図６】本発明による学習装置の概要を示すブロック図である。
【図７】本発明による情報処理システムの概要を示すブロック図である。
【図８】少なくとも１つの実施形態に係るコンピュータの構成を示す概略ブロック図である。
【発明を実施するための形態】
【００１５】
以下、本発明の実施形態を図面を参照して説明する。
【００１６】
図１は、本発明による学習装置を含む情報処理システムの一実施形態を示すブロック図である。本実施形態の情報処理システム１は、記憶部１０と、学習装置１００と、状態推定部２０と、模倣学習部３０とを備えている。
【００１７】
記憶部１０は、対象環境の状態を表す状態ベクトルｓ＝（ｓ１，ｓ２，…）と、その状態ベクトルで表される状態において行われた行動ａとを対応付けたデータ（以下、学習データと記す。）を記憶する。ここでは、一般的な強化学習で想定するように、取り得る状態が複数ある環境（以下、対象環境と記す。）、および、その環境において複数の行動を行い得る者（以下、エージェントと記す。）を想定する。なお、以下の説明では、状態ベクトルｓのことを、単に状態ｓと記すこともある。
【００１８】
エージェントの例として、例えば、自動運転車が挙げられる。この場合の対象環境は、自動運転車の状態及びその周囲の状態（例えば、周囲の地図、他車両の位置や速度、及び道路の状態）などの集合として表される。
【００１９】
エージェントが行うべき行動は、対象環境の状態に応じて異なる。上述の自動運転車の例であれば、前方に障害物があればその障害物を回避するように進行する必要がある。また、前方の路面の状態や前方の車両との車間距離などに応じ、車両の走行速度を変更する必要がある。
【００２０】
対象環境の状態に応じてエージェントが行うべき行動を出力する関数を、方策（ｐｏｌｉｃｙ）と呼ぶ。後述する模倣学習部３０は、模倣学習によって方策の生成を行う。方策が理想的なものに学習されれば、方策は、対象環境の状態に応じ、エージェントが行うべき最適な行動を出力するものになる。
【００２１】
模倣学習部３０は、状態ベクトルｓと行動ａとを対応付けたデータ（すなわち、学習データ）を利用して模倣学習を行い、方策を出力する。模倣学習によって得られる方策は、与えられた学習データを模倣するものになる。ここで、エージェントが行動を選択する規則である方策をπと表わし、この方策πのもと、状態ｓにおいて行動ａを選択する確率を、π（ｓ，ａ）と表わす。模倣学習部３０が模倣学習を行う方法は任意であり、模倣学習部３０は、一般的な方法を用いて模倣学習を行うことで方策を出力すればよい。
【００２２】
さらに、模倣学習部３０は、模倣学習を行い、報酬関数を出力する。具体的には、模倣学習部３０は、状態ベクトルｓを報酬関数ｒに入力することで得られる報酬ｒ（ｓ）を関数の入力とする方策を定める。すなわち、方策から得られる行動ａは、以下に例示する式１で定められる。
【００２３】
ａ〜π（ａ｜ｒ（ｓ））    （式１）
【００２４】
すなわち、模倣学習部３０は、方策を報酬関数の汎関数として定式化してもよい。このような定式化をした方策を用いて模倣学習を行うことにより、模倣学習部３０は、方策の学習を行いつつ、報酬関数の学習も行うことが可能になる。
【００２５】
また、ある状態ｓおよび行動ａから状態ｓ´を選択する確率は、π（ａ｜ｓ）と表わすことができる。上記に示す式１のように方策を定めた場合、報酬関数ｒ（ｓ，ａ）を用いて、以下に例示する式２の関係を定めることができる。なお、報酬関数ｒ（ｓ，ａ）を、ｒａ（ｓ）と記すこともある。
【００２６】
π（ａ｜ｓ）:=π（ａ｜ｒ（ｓ，ａ））    （式２）
【００２７】
模倣学習部３０は、以下に例示する式３のように定式化した関数を用いて報酬関数ｒ（ｓ，ａ）を学習してもよい。なお、式３において、λ´およびθ´は、データにより決定されるパラメータであり、ｇ´（θ´）は、正則化項である。
【００２８】
【数１】
2019225011.tif 000003
【００２９】
また、方策を選択する確率π（ａ｜ｓ）は、ある状態ｓにおける行動ａにより得られる報酬と関連することから、上記の報酬関数ｒａ（ｓ）を用いて、以下に例示する式４の形式で定義できる。なお、ＺＲは分配関数であり、ＺＲ＝Σａｅｘｐ（ｒａ（ｓ））である。
【００３０】
【数２】
2019225011.tif 000004
【００３１】
学習装置１００は、入力部１１０と、モデル設定部１２０と、パラメータ推定部１３０と、出力部１４０とを含む。
【００３２】
入力部１１０は、記憶部１０に記憶された学習データをパラメータ推定部１３０に入力する。
【００３３】
モデル設定部１２０は、後述するパラメータ推定部１３０によって行われる強化学習が対象とする問題をモデル化する。具体的には、後述するパラメータ推定部１３０が強化学習により関数のパラメータを推定するため、モデル設定部１２０は、推定する関数のルールを決めておく。
【００３４】
ところで、上記の式４に示すように、ある状態ｓにおいてとるべき行動ａを表す方策πは、ある環境の状態ｓと、その状態において選択される行動ａによって得られる報酬ｒを決定するための報酬関数ｒ（ｓ，ａ）と関連性を有すると言える。強化学習は、この関連性を考慮して学習を行うことで、適切な方策πを見出そうと言うものである。
【００３５】
一方、本発明者は、強化学習において状態ｓと行動ａに基づいて方策πを見出すという考え方が、ある現象に基づいて非自明なシステムの仕組みを見出すことに利用できるという着想を得た。なお、ここでのシステムとは、機械的に構成されたシステムに限定されず、自然界に存在する任意の体系も含む。
【００３６】
ある状態の確率分布を表す一具体例が、統計力学におけるボルツマン分布（ギブス分布）である。統計力学の観点でも、ある実験データに基づいて実験を行った場合、所定の仕組みに基づいて何らかのエネルギー状態が生じるため、このエネルギー状態は、強化学習における報酬に対応すると考えられる。
【００３７】
言い換えると、上記内容は、強化学習において、ある報酬が決まっていることに起因して方策が推定できるように、統計力学において、ある運動方程式が決まっていることに起因してエネルギー分布が推定できることを表しているとも言える。このように、関係性が対応付けられる一因として、両者がエントロピーという概念で繋がっていることが挙げられる。
【００３８】
一般に、エネルギー状態は、エネルギーに対応する物理量を表す物理方程式（例えば、ハミルトニアン）で表すことができる。そこで、モデル設定部１２０は、後述するパラメータ推定部１３０が強化学習の枠組みで統計力学におけるボルツマン分布を推定できるように、強化学習において推定する関数についての問題設定を与えておく。
【００３９】
具体的には、モデル設定部１２０は、強化学習で対象とする問題設定として、環境の状態ｓにおいて取るべき行動ａを決定する方策π（ａ｜ｓ）を所定の状態の確率分布を表すボルツマン分布に対応付ける。さらに、モデル設定部１２０は、強化学習で対象とする問題設定として、環境の状態ｓおよびその状態において選択される行動により得られる報酬ｒを決定する報酬関数ｒ（ｓ，ａ）をエネルギーに対応する物理量を表す物理方程式（ハミルトニアン）に対応付ける。このようにしてモデル設定部１２０は、強化学習が対象とする問題をモデル化する。
【００４０】
ここで、ハミルトニアンをＨ、一般化座標をｑ、一般化運動量をｐとしたとき、ボルツマン分布ｆ（ｑ，ｐ）は、以下に例示する式５で表すことができる。なお、式５において、βは系の温度を表すパラメータであり、ＺＳは分配関数である。
【００４１】
【数３】
2019225011.tif 000005
【００４２】
上記に示す式４と比較すると、式５におけるボルツマン分布が、式４における方策に対応し、式５におけるハミルトニアンが、式４における報酬関数に対応していると言える。すなわち、上記式４および式５の対応関係からも、統計力学におけるボルツマン分布を強化学習の枠組みでモデル化できていると言える。
【００４３】
以下、報酬関数ｒ（ｓ，ａ）に対応付ける物理方程式（ハミルトニアン、ラグランジアンなど）の具体例を説明する。物理方程式ｈ（ｓ，ａ）を基本とした状態遷移確率について、以下の式６に示す式が成り立つ。
【００４４】
ｐ（ｓ´｜ｓ，ａ）＝ｐ（ｓ´｜ｈ（ｓ，ａ））    （式６）
【００４５】
また、式６における右辺は、以下に示す式７のように定義できる。式７において、ＺＳは分配関数であり、ＺＳ＝ΣＳ´ｅｘｐ（ｈｓ´（ｓ，ａ））である。
【００４６】
【数４】
2019225011.tif 000006
【００４７】
ｈ（ｓ，ａ）に対して、時間反転、空間反転、二次形式など、物理法則を満たす条件を与えた場合、物理方程式ｈ（ｓ，ａ）を、以下に示す式８のように定義できる。なお、式８において、λおよびθは、データにより決定されるパラメータであり、ｇ（θ）は、正則化項である。
【００４８】
【数５】
2019225011.tif 000007
【００４９】
エネルギー状態は、行動を伴う必要がない場合も存在する。モデル設定部１２０は、式８に示すように、行動ａに起因する効果と、行動とは独立の状態ｓに起因する効果とを分けて運動方程式を設定することで、行動を伴わない場合の状態も表すことができる。
【００５０】
さらに、上記に示す式３と比較すると、式８における運動方程式の各項は、式３における報酬関数の各項に対応付けることができる。したがって、強化関数の枠組みで報酬関数を学習する方法を用いることで、物理方程式を推定することが可能になる。このように、モデル設定部１２０が、以上のような処理を行うことで、後述するパラメータ推定部が学習に必要なモデル（具体的には、コスト関数）を設計できる。
【００５１】
パラメータ推定部１３０は、モデル設定部１２０によって設定されたモデルに基づき、状態ｓを含む学習データを用いて強化学習を行うことにより、物理方程式のパラメータを推定する。上述するように、エネルギー状態は、行動を伴う必要がない場合も存在するため、パラメータ推定部１３０は、少なくとも状態ｓを含む学習データを用いて強化学習を行う。さらに、パラメータ推定部１３０は、状態ｓおよび行動ａを含む学習データを用いて強化学習を行うことにより、物理方程式のパラメータを推定してもよい。
【００５２】
例えば、時刻ｔで観測されたシステムの状態をｓｔ、行動をａｔとしたとき、これらのデータは、システムへの行動および作用を表す時系列の運用データセットＤｔ＝｛ｓｔ，ａｔ｝と言うことができる。また、物理方程式のパラメータを推定することで、物理現象の挙動を模擬する情報が得られることから、パラメータ推定部１３０は、物理シミュレータを生成していると言うこともできる。
【００５３】
パラメータ推定部１３０は、例えば、ニューラルネットワークを用いて物理シミュレータを生成してもよい。図２は、物理シミュレータを生成する処理の例を示す説明図である。図２に例示するパーセプトロンＰ１は、一般的な方法のように、入力層に状態ｓおよび行動ａを入力し、出力層で次の状態ｓ´を出力していることを示す。一方、図２に例示するパーセプトロンＰ２は、状態ｓおよび行動ａに応じて決定されるシミュレート結果ｈ（ｓ，ａ）を入力層に入力し、出力層で次の状態ｓ´を出力していることを示す。
【００５４】
図２に例示するパーセプトロンのような学習を行うことで、演算子も含めた定式化や、時間発展の演算子を得ることで、新しい理論提案をすることも可能になる。
【００５５】
また、パラメータ推定部１３０は、混合ガウス分布の最尤推定を行うことによりパラメータを推定してもよい。
【００５６】
また、パラメータ推定部１３０は、積モデルおよび最大エントロピー法を用いて物理シミュレータを生成してもよい。具体的には、以下に示す式９で定義される式を、式１０に示すように、物理方程式ｈの汎関数として定式化することでパラメータを推定してもよい。式１０に示す定式化を行うことで、作用に依存する（すなわち、ａ≠０）物理シミュレータを学習することが可能になる。
【００５７】
【数６】
2019225011.tif 000008
【００５８】
上述するように、モデル設定部１２０が報酬関数ｒ（ｓ，ａ）と物理方程式ｈ（ｓ，a）とを対応付けているため、パラメータ推定部１３０は、報酬関数を推定する方法を用いて物理方程式を推定した結果としてボルツマン分布を推定できる。すなわち、定式化した関数を強化学習の問題設定として与えることで、強化学習の枠組みで、運動方程式のパラメータを推定することが可能になる。
【００５９】
また、パラメータ推定部１３０が運動方程式を推定することで、推定された運動方程式から、物理現象などのルールを抽出することや、既存の運動方程式を更新することも可能になる。
【００６０】
出力部１４０は、パラメータが推定された運動方程式を状態推定部２０および模倣学習部３０に出力する。
【００６１】
状態推定部２０は、推定された運動方程式に基づいて、行動から状態を推定する。すなわち、状態推定部２０は、物理シミュレータとして動作する。
【００６２】
模倣学習部３０は、行動およびその高度に基づいて状態推定部２０が推定した状態を用いて、模倣学習を行い、報酬関数の推定処理をさらに行ってもよい。
【００６３】
学習装置１００（より具体的には、入力部１１０と、モデル設定部１２０と、パラメータ推定部１３０と、出力部１４０）と、状態推定部２０と、模倣学習部３０とは、プログラム（学習プログラム）に従って動作するコンピュータのプロセッサ（例えば、ＣＰＵ（Central Processing Unit ）、ＧＰＵ（Graphics Processing Unit）、ＦＰＧＡ（field-programmable gate array ））によって実現される。
【００６４】
例えば、プログラムは、情報処理システム１が備える記憶部（図示せず）に記憶され、プロセッサは、そのプログラムを読み込み、プログラムに従って、学習装置１００（より具体的には、入力部１１０、モデル設定部１２０、パラメータ推定部１３０および出力部１４０）、状態推定部２０および模倣学習部３０として動作してもよい。また、情報処理システム１の機能がＳａａＳ（Software as a Service ）形式で提供されてもよい。
【００６５】
学習装置１００（より具体的には、入力部１１０と、モデル設定部１２０と、パラメータ推定部１３０と、出力部１４０）と、状態推定部２０と、模倣学習部３０とは、それぞれが専用のハードウェアで実現されていてもよい。また、各装置の各構成要素の一部又は全部は、汎用または専用の回路（circuitry ）、プロセッサ等やこれらの組合せによって実現されもよい。これらは、単一のチップによって構成されてもよいし、バスを介して接続される複数のチップによって構成されてもよい。各装置の各構成要素の一部又は全部は、上述した回路等とプログラムとの組合せによって実現されてもよい。
【００６６】
また、情報処理システム１の各構成要素の一部又は全部が複数の情報処理装置や回路等により実現される場合には、複数の情報処理装置や回路等は、集中配置されてもよいし、分散配置されてもよい。例えば、情報処理装置や回路等は、クライアントサーバシステム、クラウドコンピューティングシステム等、各々が通信ネットワークを介して接続される形態として実現されてもよい。
【００６７】
また、記憶部１０は、例えば、磁気ディスク等により実現される。
【００６８】
次に、本実施形態の学習装置１００の動作を説明する。図３は、本実施形態の学習装置１００の動作例を示すフローチャートである。入力部１１０は、パラメータ推定部１３０が学習に用いる学習データを入力する（ステップＳ１１）。モデル設定部１２０は、強化学習で対象とする問題設定として、方策をボルツマン分布に対応付け、報酬関数を物理方程式に対応付けたモデルを設定する（ステップＳ１２）。なお、モデル設定部１２０は、学習データが入力される前（すわなち、ステップＳ１１の前）に、モデルの設定を行ってもよい。
【００６９】
パラメータ推定部１３０は、設定されたモデルに基づき、強化学習により物理方程式のパラメータを推定する（ステップＳ１３）。出力部１４０は、推定されたパラメータで表される運動方程式を出力する（ステップＳ１４）。
【００７０】
次に、本実施形態の情報処理システム１の動作を説明する。図４は、本実施形態の情報処理システム１の動作例を示すフローチャートである。学習装置１００は、図３に例示する処理により、学習データから運動方程式を出力する（ステップＳ２１）。状態推定部２０は、出力された運動方程式を用いて、入力された行動ａから状態ｓを推定する（ステップＳ２２）。模倣学習部３０は、入力された行動ａおよび推定された状態ｓに基づいて模倣学習を行い、方策および報酬関数を出力する（ステップＳ２３）。
【００７１】
以上のように、本実施形態では、モデル設定部１２０が、強化学習で対象とする問題設定として、方策をボルツマン分布に対応付け、報酬関数を物理方程式に対応付けたモデルを設定し、パラメータ推定部１３０が、設定されたモデルに基づいて強化学習を行うことにより、物理方程式のパラメータを推定する。よって、システムの仕組みが非自明であっても、取得されたデータに基づいて、その仕組み（具体的には、運動方程式）を推定するモデルを学習できる。
【００７２】
また、状態推定部２０が、データに基づいて推定された物理方程式を用いて、入力された行動ａから状態ｓを推定し、模倣学習部３０が、入力された行動ａおよび推定された状態ｓに基づいて模倣学習を行い、方策および報酬関数を出力する。そのため、非自明な現象を表すシステムのメカニズムであっても、データ主導でそのメカニズムを推定できる。
【００７３】
次に、倒立振子の運動方程式を推定する方法を例に、本発明の具体例を説明する。図５は、倒立振子の物理シミュレータの例を示す説明図である。図５に示す例示するシミュレータ（システム）４０は、ある時刻ｔにおける倒立振子４１の行動ａｔに対して、次の状態ｓｔ＋１を推定する。倒立振子の運動方程式４２は、図５に例示するように既知であるが、ここでは、その運動方程式４２が未知であるとする。
【００７４】
時刻ｔにおける状態ｓｔは、以下に示す式１１で表される
【００７５】
【数７】
2019225011.tif 000009
【００７６】
例えば、倒立振子の行動（動作）として、以下の式１２に例示するデータが観測されたとする。
【００７７】
【数８】
2019225011.tif 000010
【００７８】
ここで、モデル設定部１２０が、上記に示す式８の運動方程式を設定し、パラメータ推定部１３０が、観測された上記式１１に示すデータに基づいて、強化学習を行うことで、式８に示すｈ（ｓ，ａ）のパラメータを学習することができる。このように学習された運動方程式は、ある状態において好ましい動作を表すものであることから、倒立振子の運動を表す系に近いものと言える。このように学習することで、運動方程式が未知であっても、系の仕組みを推定することが可能になる。
【００７９】
なお、上述する倒立振子以外にも、例えば、調和振動子や振り子なども、動作確認できる系として有効である。
【００８０】
次に、本発明の概要を説明する。図６は、本発明による学習装置の概要を示すブロック図である。本発明による学習装置８０（例えば、学習装置１００）は、強化学習で対象とする問題設定として、環境の状態において取るべき行動を決定する方策を、所定の状態の確率分布を表すボルツマン分布に対応付け、環境の状態およびその状態において選択される行動により得られる報酬を決定する報酬関数を、エネルギーに対応する物理量を表す物理方程式に対応付けたモデルを設定するモデル設定部８１（例えば、モデル設定部１２０）と、設定されたモデルに基づき、状態（例えば、状態ベクトルｓ）を含む学習データを用いて強化学習を行うことにより、物理方程式のパラメータを推定するパラメータ推定部８２（例えば、パラメータ推定部１３０）とを備えている。
【００８１】
そのような構成により、システムの仕組みが非自明であっても、取得されたデータに基づいて、その仕組みを推定するモデルを学習できる。
【００８２】
また、パラメータ推定部８２は、設定されたモデルに基づき、状態および行動を含む学習データを用いて強化学習を行うことにより、物理方程式のパラメータを推定してもよい。そのような構成により、行動（作用）も含めた物理方程式を推定することが可能になる。
【００８３】
また、モデル設定部８１は、行動に起因する効果と、状態に起因する効果とを分けた物理方程式（例えば、上記式８に示す運動方程式）を設定してもよい。
【００８４】
具体的には、モデル設定部８１は、報酬関数をハミルトニアンに対応付けたモデルを設定してもよい。
【００８５】
図７は、本発明による情報処理システムの概要を示すブロック図である。本発明による情報処理システム９０は、モデル設定部８１（例えば、モデル設定部１２０）と、パラメータ推定部８２（例えば、パラメータ推定部１３０）と、推定された物理方程式を用いて、入力された行動から状態を推定する状態推定部９１（例えば、状態推定部２０）と、入力された行動および推定された状態に基づいて模倣学習を行う模倣学習部９２（例えば、模倣学習部３０）とを備えている。モデル設定部８１およびパラメータ推定部８２の内容は、図６に例示する学習装置８０が備える構成と同様である。
【００８６】
そのような構成によっても、システムの仕組みが非自明であっても、取得されたデータに基づいて、その仕組みを推定するモデルを学習できる。
【００８７】
図８は、少なくとも１つの実施形態に係るコンピュータの構成を示す概略ブロック図である。コンピュータ１０００は、プロセッサ１００１、主記憶装置１００２、補助記憶装置１００３、インタフェース１００４を備える。
【００８８】
上述の学習装置８０および情報処理システム９０は、コンピュータ１０００に実装される。そして、上述した各処理部の動作は、プログラム（学習プログラム）の形式で補助記憶装置１００３に記憶されている。プロセッサ１００１は、プログラムを補助記憶装置１００３から読み出して主記憶装置１００２に展開し、当該プログラムに従って上記処理を実行する。
【００８９】
なお、少なくとも１つの実施形態において、補助記憶装置１００３は、一時的でない有形の媒体の一例である。一時的でない有形の媒体の他の例としては、インタフェース１００４を介して接続される磁気ディスク、光磁気ディスク、ＣＤ−ＲＯＭ（Compact Disc Read-only memory ）、ＤＶＤ−ＲＯＭ（Read-only memory）、半導体メモリ等が挙げられる。また、このプログラムが通信回線によってコンピュータ１０００に配信される場合、配信を受けたコンピュータ１０００が当該プログラムを主記憶装置１００２に展開し、上記処理を実行しても良い。
【００９０】
また、当該プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、当該プログラムは、前述した機能を補助記憶装置１００３に既に記憶されている他のプログラムとの組み合わせで実現するもの、いわゆる差分ファイル（差分プログラム）であっても良い。
【００９１】
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
【００９２】
（付記１）強化学習で対象とする問題設定として、環境の状態において取るべき行動を決定する方策を、所定の状態の確率分布を表すボルツマン分布に対応付け、環境の状態および当該状態において選択される行動により得られる報酬を決定する報酬関数を、エネルギーに対応する物理量を表す物理方程式に対応付けたモデルを設定するモデル設定部と、設定された前記モデルに基づき、前記状態を含む学習データを用いて強化学習を行うことにより、前記物理方程式のパラメータを推定するパラメータ推定部とを備えたことを特徴とする学習装置。
【００９３】
（付記２）パラメータ推定部は、設定されたモデルに基づき、状態および行動を含む学習データを用いて強化学習を行うことにより、物理方程式のパラメータを推定する付記１記載の学習装置。
【００９４】
（付記３）モデル設定部は、行動に起因する効果と、状態に起因する効果とを分けた物理方程式を設定する付記１または付記２記載の学習装置。
【００９５】
（付記４）モデル設定部は、報酬関数をハミルトニアンに対応付けたモデルを設定する付記１から付記３のうちのいずれか１つに記載の学習装置。
【００９６】
（付記５）強化学習で対象とする問題設定として、環境の状態において取るべき行動を決定する方策を、所定の状態の確率分布を表すボルツマン分布に対応付け、環境の状態および当該状態において選択される行動により得られる報酬を決定する報酬関数を、エネルギーに対応する物理量を表す物理方程式に対応付けたモデルを設定するモデル設定部と、設定された前記モデルに基づき、前記状態を含む学習データを用いて強化学習を行うことにより、前記物理方程式のパラメータを推定するパラメータ推定部と、推定された物理方程式を用いて、入力された行動から状態を推定する状態推定部と、前記入力された行動および推定された状態に基づいて模倣学習を行う模倣学習部とを備えたことを特徴とする情報処理システム。
【００９７】
（付記６）コンピュータが、強化学習で対象とする問題設定として、環境の状態において取るべき行動を決定する方策を、所定の状態の確率分布を表すボルツマン分布に対応付け、環境の状態および当該状態において選択される行動により得られる報酬を決定する報酬関数を、エネルギーに対応する物理量を表す物理方程式に対応付けたモデルを設定し、前記コンピュータが、設定された前記モデルに基づき、前記状態を含む学習データを用いて強化学習を行うことにより、前記物理方程式のパラメータを推定することを特徴とする学習方法。
【００９８】
（付記７）コンピュータが、設定されたモデルに基づき、状態および行動を含む学習データを用いて強化学習を行うことにより、物理方程式のパラメータを推定する付記６記載の学習方法。
【００９９】
（付記８）コンピュータが、推定された物理方程式を用いて、入力された行動から状態を推定し、前記コンピュータが、前記入力された行動および推定された状態に基づいて模倣学習を行う付記６または付記７記載の学習方法。
【０１００】
（付記９）コンピュータに、強化学習で対象とする問題設定として、環境の状態において取るべき行動を決定する方策を、所定の状態の確率分布を表すボルツマン分布に対応付け、環境の状態および当該状態において選択される行動により得られる報酬を決定する報酬関数を、エネルギーに対応する物理量を表す物理方程式に対応付けたモデルを設定するモデル設定処理、および、設定された前記モデルに基づき、前記状態を含む学習データを用いて強化学習を行うことにより、前記物理方程式のパラメータを推定するパラメータ推定処理を実行させるための学習プログラム。
【０１０１】
（付記１０）コンピュータに、パラメータ推定処理で、設定されたモデルに基づき、状態および行動を含む学習データを用いて強化学習を行うことにより、物理方程式のパラメータを推定させる付記９記載の学習プログラム。
【０１０２】
（付記１１）コンピュータに、強化学習で対象とする問題設定として、環境の状態において取るべき行動を決定する方策を、所定の状態の確率分布を表すボルツマン分布に対応付け、環境の状態および当該状態において選択される行動により得られる報酬を決定する報酬関数を、エネルギーに対応する物理量を表す物理方程式に対応付けたモデルを設定するモデル設定処理、設定された前記モデルに基づき、前記状態を含む学習データを用いて強化学習を行うことにより、前記物理方程式のパラメータを推定するパラメータ推定処理、推定された物理方程式を用いて、入力された行動から状態を推定する状態推定処理、および、前記入力された行動および推定された状態に基づいて模倣学習を行う模倣学習処理を実行させるための学習プログラム。
【符号の説明】
【０１０３】
１  情報処理システム
１０  記憶部
２０  状態推定部
３０  模倣学習部
１００  学習装置
１１０  入力部
１２０  モデル設定部
１３０  パラメータ推定部
１４０  出力部
【図１】
2019225011.tif 000011
【図２】
2019225011.tif 000012
【図３】
2019225011.tif 000013
【図４】
2019225011.tif 000014
【図５】
2019225011.tif 000015
【図６】
2019225011.tif 000016
【図７】
2019225011.tif 000017
【図８】
2019225011.tif 000018
【手続補正書】
【提出日】令和2年11月5日(2020.11.5)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
強化学習で対象とする問題設定として、環境の状態において取るべき行動を決定する方策を、所定の状態の確率分布を表すボルツマン分布に対応付け、環境の状態および当該状態において選択される行動により得られる報酬を決定する報酬関数を、エネルギーに対応する物理量を表す物理方程式に対応付けたモデルを設定するモデル設定部と、
設定された前記モデルに基づき、前記状態を含む学習データを用いて強化学習を行うことにより、前記物理方程式のパラメータを推定するパラメータ推定部とを備えた
ことを特徴とする学習装置。
【請求項２】
パラメータ推定部は、設定されたモデルに基づき、状態および行動を含む学習データを用いて強化学習を行うことにより、物理方程式のパラメータを推定する
請求項１記載の学習装置。
【請求項３】
モデル設定部は、行動に起因する効果と、状態に起因する効果とを分けた物理方程式を設定する
請求項１または請求項２記載の学習装置。
【請求項４】
モデル設定部は、報酬関数をハミルトニアンに対応付けたモデルを設定する
請求項１から請求項３のうちのいずれか１項に記載の学習装置。
【請求項５】
強化学習で対象とする問題設定として、環境の状態において取るべき行動を決定する方策を、所定の状態の確率分布を表すボルツマン分布に対応付け、環境の状態および当該状態において選択される行動により得られる報酬を決定する報酬関数を、エネルギーに対応する物理量を表す物理方程式に対応付けたモデルを設定するモデル設定部と、
設定された前記モデルに基づき、前記状態を含む学習データを用いて強化学習を行うことにより、前記物理方程式のパラメータを推定するパラメータ推定部と、
推定された物理方程式を用いて、入力された行動から状態を推定する状態推定部と、
前記入力された行動および推定された状態に基づいて模倣学習を行う模倣学習部とを備えた
ことを特徴とする情報処理システム。
【請求項６】
コンピュータが、強化学習で対象とする問題設定として、環境の状態において取るべき行動を決定する方策を、所定の状態の確率分布を表すボルツマン分布に対応付け、環境の状態および当該状態において選択される行動により得られる報酬を決定する報酬関数を、エネルギーに対応する物理量を表す物理方程式に対応付けたモデルを設定し、
前記コンピュータが、設定された前記モデルに基づき、前記状態を含む学習データを用いて強化学習を行うことにより、前記物理方程式のパラメータを推定する
ことを特徴とする学習方法。
【請求項７】
コンピュータが、設定されたモデルに基づき、状態および行動を含む学習データを用いて強化学習を行うことにより、物理方程式のパラメータを推定する
請求項６記載の学習方法。
【請求項８】
コンピュータが、推定された物理方程式を用いて、入力された行動から状態を推定し、
前記コンピュータが、前記入力された行動および推定された状態に基づいて模倣学習を行う
請求項６または請求項７記載の学習方法。
【請求項９】
コンピュータに、
強化学習で対象とする問題設定として、環境の状態において取るべき行動を決定する方策を、所定の状態の確率分布を表すボルツマン分布に対応付け、環境の状態および当該状態において選択される行動により得られる報酬を決定する報酬関数を、エネルギーに対応する物理量を表す物理方程式に対応付けたモデルを設定するモデル設定処理、および、
設定された前記モデルに基づき、前記状態を含む学習データを用いて強化学習を行うことにより、前記物理方程式のパラメータを推定するパラメータ推定処理
を実行させるための学習プログラム。
【請求項１０】
コンピュータに、
強化学習で対象とする問題設定として、環境の状態において取るべき行動を決定する方策を、所定の状態の確率分布を表すボルツマン分布に対応付け、環境の状態および当該状態において選択される行動により得られる報酬を決定する報酬関数を、エネルギーに対応する物理量を表す物理方程式に対応付けたモデルを設定するモデル設定処理、
設定された前記モデルに基づき、前記状態を含む学習データを用いて強化学習を行うことにより、前記物理方程式のパラメータを推定するパラメータ推定処理、
推定された物理方程式を用いて、入力された行動から状態を推定する状態推定処理、および、
前記入力された行動および推定された状態に基づいて模倣学習を行う模倣学習処理
を実行させるための学習プログラム。
【国際調査報告】
2019225011.tif 000019
2019225011.tif 000020
2019225011.tif 000021
2019225011.tif 000022