(57)【要約】【課題】非線型現象をシミュレートするシミュレータを模倣するよう人工知能機に学習をさせる際に、シミュレーションの回数を抑制する。【解決手段】制御装置101において、設定部102は、シミュレータ151に与えるべき実験入力を設定する。実験部103は、シミュレータ151に実験入力を与え、出力された実験出力を取得する。教師部104は、実験入力と実験出力の組を人工知能機191に与えて学習させる。探査部105は、人工知能機191に探査入力を与え、出力された探査出力を取得する。推測部106は、探査入力と探査出力に基づいて、シミュレータ151からの出力と、人工知能機191からの出力と、の差異が大きくなる可能性が大きい候補入力を推測する。繰返し部107は、終了条件が満たされるまで、推測された候補入力を新たな実験入力として設定することにより、上記の処理を繰り返す。【選択図】図1
2019219756.tif 000002
【特許請求の範囲】
【請求項１】
非線型現象の設定条件が入力として与えられると前記非線型現象の模擬実験の結果を出力するシミュレータに対して、当該シミュレータに与えるべき実験入力を設定する設定部、
前記設定された実験入力を与えることにより前記シミュレータから出力された実験出力を取得する実験部、
前記与えられた実験入力と、当該実験入力に対して前記取得された実験出力と、の組を、入力と出力の組を表す正解データとして人工知能機に与えて、前記人工知能機に学習させる教師部、
前記非線型現象の前記設定条件を表す複数の探査入力であって前記実験入力とは異なるものを含む複数の探査入力を人工知能機に各々与えることにより、前記人工知能機から各々出力された複数の探査出力を取得する探査部、
前記与えられた複数の探査入力と、当該複数の探査入力に対して各々取得された複数の探査出力と、に基づいて、前記シミュレータからの出力と、当該入力に対する前記人工知能機からの出力と、の差異が大きくなる可能性が所定基準で大きい候補入力を推測する推測部、
終了条件が満たされるまで、前記推測された候補入力を新たな実験入力として前記設定部に設定させることにより、前記実験部、前記教師部、前記探査部、前記推測部による処理を繰り返す繰返し部
を備えることを特徴とする制御装置。
【請求項２】
新たな正解データによって学習をする前の人工知能機と、新たな正解データによって学習をした後の人工知能機と、に同じ探査入力を与えることにより取得された探査出力の出力差異が、前記所定基準にて十分に大きい探査出力に対する探査入力を、前記候補入力として推測する
ことを特徴とする請求項1に記載の制御装置。
【請求項３】
前記探査出力のうち、前記所定基準にて十分に大きい探査出力に対する探査入力を、前記候補入力として推測する
ことを特徴とする請求項1に記載の制御装置。
【請求項４】
第1探査入力に対する第1探査出力と、前記第1探査入力に最も近い第2探査入力に対する第2探査出力と、の出力差異が、前記所定基準にて十分に大きければ、前記第1探査入力、もしくは、前記第2探査入力のいずれか少なくとも一方を、前記候補入力として推測する
ことを特徴とする請求項1に記載の制御装置。
【請求項５】
第1探査入力および当該第1探査入力に最も近い第2探査入力の入力差異と、
前記第1探査入力に対する第1探査出力および前記第2探査入力に対する第2探査出力の出力差異と、
について、前記入力差異に対する前記出力差異が前記所定基準にて十分に大きければ、前記第1探査入力、もしくは、前記第2探査入力のいずれか少なくとも一方を、前記候補入力として推測する
ことを特徴とする請求項1に記載の制御装置。
【請求項６】
前記設定条件にはサンプル数パラメータが含まれ、
前記シミュレータは、前記サンプル数パラメータ以外の設定条件により、前記模擬実験を、前記サンプル数の回数だけ繰り返し、
前記実験出力には、前記繰り返された模擬実験の結果を表す代表値と、当該代表値に対するサンプル値のばらつきを表すばらつきパラメータと、が含まれる
ことを特徴とする請求項1に記載の制御装置。
【請求項７】
前記人工知能機は、機械学習機、深層学習機、ニューラルネットワーク、デシジョンツリー、もしくは、ランダムフォレストを含み、
前記人工知能機と、前記シミュレータと、は、前記制御装置の外部に構成される
ことを特徴とする請求項1に記載の制御装置。
【請求項８】
前記実験部による処理と、前記探査部による処理と、は、並行して実行される
ことを特徴とする請求項7に記載の制御装置。
【請求項９】
制御装置が、
非線型現象の設定条件が入力として与えられると前記非線型現象の模擬実験の結果を出力するシミュレータに対して、当該シミュレータに与えるべき実験入力を設定し、
前記設定された実験入力を与えることにより前記シミュレータから出力された実験出力を取得し、
前記与えられた実験入力と、当該実験入力に対して前記取得された実験出力と、の組を、入力と出力の組を表す正解データとして人工知能機に与えて、前記人工知能機に学習させ、
前記非線型現象の前記設定条件を表す複数の探査入力であって前記実験入力とは異なるものを含む複数の探査入力を人工知能機に各々与えることにより、前記人工知能機から各々出力された複数の探査出力を取得し、
前記与えられた複数の探査入力と、当該複数の探査入力に対して各々取得された複数の探査出力と、に基づいて、前記シミュレータからの出力と、当該入力に対する前記人工知能機からの出力と、の差異が大きくなる可能性が所定基準で大きい候補入力を推測する
制御方法において、
終了条件が満たされるまで、前記推測された候補入力を新たな実験入力として設定することにより、前記実験出力を取得すること、前記人工知能機に学習させること、前記複数の探査出力を取得すること、前記候補入力を推測することを繰り返す
ことを特徴とする制御方法。
【請求項１０】
コンピュータを、
非線型現象の設定条件が入力として与えられると前記非線型現象の模擬実験の結果を出力するシミュレータに対して、当該シミュレータに与えるべき実験入力を設定する設定部、
前記設定された実験入力を与えることにより前記シミュレータから出力された実験出力を取得する実験部、
前記与えられた実験入力と、当該実験入力に対して前記取得された実験出力と、の組を、入力と出力の組を表す正解データとして人工知能機に与えて、前記人工知能機に学習させる教師部、
前記非線型現象の前記設定条件を表す複数の探査入力であって前記実験入力とは異なるものを含む複数の探査入力を人工知能機に各々与えることにより、前記人工知能機から各々出力された複数の探査出力を取得する探査部、
前記与えられた複数の探査入力と、当該複数の探査入力に対して各々取得された複数の探査出力と、に基づいて、前記シミュレータからの出力と、当該入力に対する前記人工知能機からの出力と、の差異が大きくなる可能性が所定基準で大きい候補入力を推測する推測部、
終了条件が満たされるまで、前記推測された候補入力を新たな実験入力として前記設定部に設定させることにより、前記実験部、前記教師部、前記探査部、前記推測部による処理を繰り返す繰返し部
として機能させることを特徴とするプログラム。
【請求項１１】
請求項10に記載のプログラムが記録された非一時的なコンピュータ読取可能な情報記録媒体。
【請求項１２】
請求項1から8のいずれか1項に記載の制御装置に制御される人工知能機であって、
前記制御装置に制御されることによって前記非線型現象を学習した
ことを特徴とする人工知能機。
【請求項１３】
請求項12に記載の人工知能機に与えた入力と、
前記人工知能機から得られた出力と、
を備えることを特徴とする人工知能生成物。
【請求項１４】
請求項12に記載の人工知能機に入力を与えるステップと、
前記人工知能機から前記入力に対する出力を取得する与えるステップと、
を備えることを特徴とする方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、非線型現象をシミュレートするシミュレータを模倣するよう人工知能機に学習をさせる際に、シミュレータによるシミュレーションの回数を抑制する制御装置、制御方法、プログラム、ならびに、情報記録媒体に関する。
【背景技術】
【０００２】
従来から、スーパーコンピュータあるいは高性能コンピュータによるシミュレータを用いて、各種の物理現象、あるいは、災害、交通、経済などの社会シミュレーションを行う技術が提案されている。
【０００３】
たとえば、特許文献1では、実社会で生じる種々の変化に対応した学習をニューラルネットワークに行わせるため、物理シミュレーションに係るパラメータの設定に関する表示を制御する制御部と、前記物理シミュレーションにおいて得られる画像情報と前記画像情報に関連付いた前記パラメータとを機械学習部に送信し、前記画像情報に基づいた判定結果を前記機械学習部から受信する通信部と、を備え、前記制御部は、前記判定結果と前記パラメータとを対応付けて表示部に表示させる情報処理装置が開示されている。
【０００４】
上記のような物理現象や社会現象においては、その現象の前提となる条件が少し変わっただけで、その現象の結果として得られるものが激変する相転移のような性質や、設定された条件が一致していても、見えない条件によって結果が異なるランダム性を持つことが多い。
【０００５】
ここで、条件として与えられる入力に対して、結果として得られる出力が比例する、もしくは、各入力に定数を乗じて総和(一次結合)をとることにより出力が得られるような、連続的な関係を線形現象と呼び、これに該当しない現象(離散的な現象を含む。)を非線形現象と呼ぶこととする。線形現象では、条件に結果が比例するため、簡易なモデル化が可能であり、線形現象で現実を近似できる場合もあるが、線形モデルでは、相転移やランダム性、離散的性質などを表現することは困難である。すなわち、現実世界において生ずる現象には、非線型であるものも多いと考えられる。
【０００６】
一般に、入力に対する出力が激変しうるような非線型現象を非線型モデルにより扱うシミュレーションでは、入力や出力の次元が巨大になるため、さまざまな入力に対する出力を網羅的に得るために必要なデータ量や計算時間は莫大なものとなる。
【０００７】
ここで、非特許文献1では、シミュレーションの条件を定める入力のうち、出力を急激に変化させることに寄与するパラメータを探索し、探索されたパラメータを含む入力によってシミュレーションを繰り返し実行するが、それ以外のパラメータを入力とするシミュレーションは省略することにより、シミュレーションの回数を抑制する技術が提案されている。
【０００８】
ここで、ランダム性を持つ非線形現象においては、得られる結果のばらつきを見積もるには、繰り返し回数(サンプル数)以外は同一の設定条件で模擬実験を繰り返す必要がある。非特許文献1に開示される技術では、各パラメータの探索にあたり、毎回シミュレータを動作させて、当該パラメータによる効果の度合を判定している。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開2017-182129号公報
【非特許文献】
【００１０】
【非特許文献１】松島裕康, 内種岳詞, 辻順平, 山下倫央, 伊藤伸泰, 野田五十樹, 実験計画法による実験数削減と有意なパラメータ探索の避難シミュレーション分析への適用, 人工知能学会論文誌, 第31巻, 第6号, SP-E, 2016年
【発明の概要】
【発明が解決しようとする課題】
【００１１】
しかしながら、シミュレータに与える入力の次元が大きい場合には、シミュレータを実際に動作させる際に、利用時間や利用費用の制約が課されることが多い。
【００１２】
また、ランダム性を持つ非線形現象においてサンプル数を大きくしてしまうと、利用時間や利用費用の制約にぶつかってしまう、という問題が生ずる。
【００１３】
そこで、シミュレータによるシミュレーションの回数を効率良く抑制しつつ、シミュレータを高い精度で模倣するように、人工知能を実現する機械(以下、適宜「人工知能機」という。)において、機械学習、強化学習、深層学習等、種々の学習を進める技術が求められている。
【００１４】
本発明は、上記の課題を解決するもので、非線型現象をシミュレートするシミュレータを模倣するよう人工知能機に学習をさせる際に、シミュレータによるシミュレーションの回数を抑制する制御装置、制御方法、プログラム、ならびに、情報記録媒体に関する。
【課題を解決するための手段】
【００１５】
本発明に係る制御装置は、
非線型現象の設定条件が入力として与えられると前記非線型現象の模擬実験の結果を出力するシミュレータに対して、当該シミュレータに与えるべき実験入力を設定し、
前記設定された実験入力を与えることにより前記シミュレータから出力された実験出力を取得し、
前記与えられた実験入力と、当該実験入力に対して前記取得された実験出力と、の組を、入力と出力の組を表す正解データとして人工知能機に与えて、前記人工知能機に学習させ、
前記非線型現象の前記設定条件を表す複数の探査入力であって前記実験入力とは異なるものを含む複数の探査入力を人工知能機に各々与えることにより、前記人工知能機から各々出力された複数の探査出力を取得し、
前記与えられた複数の探査入力と、当該複数の探査入力に対して各々取得された複数の探査出力と、に基づいて、前記シミュレータからの出力と、当該入力に対する前記人工知能機からの出力と、の差異が大きくなる可能性が所定基準で大きい候補入力を推測する。
ここで、制御装置は、
終了条件が満たされるまで、前記推測された候補入力を新たな実験入力として設定することにより、前記実験出力を取得すること、前記人工知能機に学習させること、前記複数の探査出力を取得すること、前記候補入力を推測することを繰り返す。
【発明の効果】
【００１６】
本発明によれば、非線型現象をシミュレートするシミュレータを模倣するよう人工知能機に学習をさせる際に、シミュレータによるシミュレーションの回数を抑制する制御装置、制御方法、プログラム、ならびに、情報記録媒体を提供することができる。
【図面の簡単な説明】
【００１７】
【図１】本発明の実施形態に係る制御装置、シミュレータ、人工知能機の関係を示す説明図である。
【図２】本発明の実施形態に係る制御装置の概要構成を示す説明図である。
【図３】本発明の実施形態に係る制御装置、シミュレータ、人工知能機の制御の流れを示すフローチャートである。
【発明を実施するための形態】
【００１８】
以下に、本発明の実施形態を説明する。なお、本実施形態は、説明のためのものであり、本発明の範囲を制限するものではない。したがって、当業者であれば、本実施形態の各要素もしくは全要素を、これと均等なものに置換した実施形態を採用することが可能である。また、各実施例にて説明する要素は、用途に応じて適宜省略することも可能である。このように、本発明の原理にしたがって構成された実施形態は、いずれも本発明の範囲に含まれる。
【００１９】
(構成)
図1は、本発明の実施形態に係る制御装置、シミュレータ、人工知能機の関係を示す説明図である。以下、本図を参照して説明する。
【００２０】
本実施形態に係る制御装置101は、外部のシミュレータ151および人工知能機191を制御する。
【００２１】
ここで、制御装置101は、シミュレータ151に対して、非線形現象の設定条件を表す実験入力を与え、シミュレーション結果を実験出力として得る。
【００２２】
そして、制御装置101は、実験入力と実験出力の組を正解データとして人工知能機191に与え、シミュレータ151の模倣をするように学習をさせる。
【００２３】
また、制御装置101は、学習途上の人工知能機191に対して、実験入力とは異なるものを含む探査入力を与え、人工知能機191から探査出力を得る。
【００２４】
そして、制御装置101は、得られた実験入力と実験出力、探査入力と探査出力に基づいて、シミュレータ151と人工知能機191の出力の差異が所定基準にて十分に大きいと考えられる探査入力を抽出する。
【００２５】
そして、制御装置101は、抽出された探査入力を実験入力としてシミュレータ151に与え、人工知能機191に学習させることを繰り返す。
【００２６】
このようにして人工知能機191がシミュレータ151を近似的に模倣するようになった後は、人工知能機191が単独で、非線形現象の簡易なシミュレーションを行うことができるようになる。すなわち、人工知能機191に対して試験入力を与えると、これに対する試験出力が得られる。この試験出力と、シミュレータ151に同じ試験入力を与えて得られるものと、は、近似している。したがって、運用に時間および費用が嵩むシミュレータ151を利用せずに、簡易に非線形現象の模擬実験を行うことができるようになる。
【００２７】
シミュレータ151および人工知能機191は、制御装置101の機能とは独立して用意することが可能であり、種々の公知の技術を適用することができる。以下では、制御装置101の構成について詳細に説明する。
【００２８】
(制御装置)
制御装置101は、典型的には、プログラムをコンピュータが実行することによって実現される。当該コンピュータは、各種の出力装置や入力装置に接続され、これらの機器と情報を送受する。
【００２９】
コンピュータにて実行されるプログラムは、当該コンピュータが通信可能に接続されたサーバにより配布、販売することができるほか、CD-ROM(Compact Disk Read Only Memory)やフラッシュメモリ、EEPROM(Electrically Erasable Programmable ROM)などの非一時的(non-transitory)な情報記録媒体に記録した上で、当該情報記録媒体を配布、販売等することも可能である。
【００３０】
プログラムは、コンピュータが有するハードディスク、ソリッドステートドライブ、フラッシュメモリ、EEPROM等などの非一時的な情報記録媒体にインストールされる。すると、当該コンピュータにより、本実施形態における情報処理装置が実現されることになる。一般的には、コンピュータのCPUは、コンピュータのOS(Operating System)による管理の下、情報記録媒体からRAM(Random Access Memory)へプログラムを読み出してから、当該プログラムに含まれるコードを解釈、実行する。ただし、CPUがアクセス可能なメモリ空間内に情報記録媒体をマッピングできるようなアーキテクチャでは、RAMへの明示的なプログラムのロードは不要なこともある。なお、プログラムの実行の過程で必要とされる各種情報は、RAM内に一時的(temporary)に記録しておくことができる。
【００３１】
さらに、コンピュータは、CPUのほか、各種画像処理計算を高速に行うためのGPU(Graphics Processing Unit)を備えることが望ましい。GPUならびにTensorFlow等のライブラリを使うことで、CPUの制御の下、各種の人工知能処理における学習機能や分類機能を利用することができるようになる。
【００３２】
なお、汎用のコンピュータにより本実施形態の情報処理装置を実現するのではなく、専用の電子回路を用いて本実施形態の情報処理装置を構成することも可能である。この態様では、プログラムを電子回路の配線図やタイミングチャート等を生成するための素材として利用することもできる。このような態様では、プログラムに定められる仕様を満たすような電子回路がFPGA(Field Programmable Gate Array)やASIC(Application Specific Integrated Circuit)により構成され、当該電子回路は、当該プログラムに定められた機能を果たす専用機器として機能して、本実施形態の情報処理装置を実現する。
【００３３】
シミュレータ151や、人工知能機191も、典型的には、各種コンピュータ上にてプログラムを実行することにより、もしくは、専用の電子回路により、実現される。たとえば、シミュレータ151は、スーパーコンピュータやハイパフォーマンスコンピュータなど、並列計算に特化した計算速度が高速なコンピュータにて実現することができる。一方、人工知能機191は、複数のGPUを塔載したコンピュータ等にてTensorFlow等のライブラリを利用して、多層構造のニューラルネットワークを構成することにより実現することができる。
【００３４】
典型的には、シミュレータ151と、制御装置101と、は、異なるコンピュータ上に実現される。一方、人工知能機191と、制御装置101と、は、異なるコンピュータ上に実現しても良いし、同一のコンピュータ上に実現しても良い。
【００３５】
以下では、理解を容易にするため、制御装置101は、コンピュータがプログラムを実行することによって実現される態様を想定して説明する。
【００３６】
さて、制御装置101は、設定部102、実験部103、教師部104、探査部105、推測部106、繰返し部107を備える。図2は、本発明の実施形態に係る制御装置の概要構成を示す説明図である。以下、本図を参照して説明する。
【００３７】
上記の通り、シミュレータ151は、非線形現象のシミュレーション(模擬実験)を行うもので、シミュレーションの前提条件となる設定条件が入力として与えられると、シミュレーションを実行し、実験結果を出力する。一般に、当該シミュレーションでは、時間ならびに費用が嵩むことが一般的である。
【００３８】
制御装置101において、設定部102は、シミュレータ151に入力として与えるべき実験入力を設定し、実験部103は、設定された実験入力をシミュレータ151に与えることにより、シミュレータ151から出力された実験出力を取得する。
【００３９】
人工知能機191は、非線形現象をシミュレートするシミュレータ151を模倣するものであり、典型的には、ニューラルネットワークによって機械学習や深層学習を行ったり、デシジョンツリーやランダムフォレストを採用したりして、上記の模倣を実現する。
【００４０】
制御装置101において、教師部104は、
(1) シミュレータ151に対して与えられた実験入力と、
(2) 当該実験入力に対してシミュレータ151から取得された実験出力と、
の組を、入力と出力の組を表す正解データとして人工知能機191に与えて、人工知能機191に学習させる。
【００４１】
人工知能機191における学習は、時間を要することが多いが、1回のシミュレーションに要する時間よりは短いことが一般的である。また、一旦学習が終わった後は、人工知能機191に対して入力を与えてから出力が得られるまでに要する時間は、シミュレーションや学習に要する時間に比べて、格段に短い。
【００４２】
そこで、探査部105は、非線型現象の設定条件を表す複数の探査入力であって実験入力とは異なるものを含む複数の探査入力を人工知能機191に各々与えることにより、人工知能機191から各々出力された複数の探査出力を取得する。
【００４３】
そして、推測部106は、
(1) 人工知能機151に対して与えられた複数の探査入力と、
(2) 当該複数の探査入力に対して人工知能機151から各々取得された複数の探査出力と、
に基づいて、次にシミュレータ151にてシミュレーションを行うべき設定条件を表す候補入力を推測する。
【００４４】
ここで、候補入力としては、シミュレータ151からの出力と、当該入力に対する人工知能機191からの出力と、の差異が大きくなる可能性が所定基準で大きいもの(臨界的なもの)が選ばれる。典型的には、相転移あるいはランダム性などにより、入力の微小な変化に対して出力が急激に変化すると予想されるような入力を、候補入力とする。
【００４５】
非特許文献1では、シミュレータ151に与えた入力に対して、シミュレータ151から得られた出力を検討することにより、シミュレータ151に与えるべき新たな入力を求めている。
【００４６】
一方、本実施形態では、シミュレータ151ではなく、これを模倣する人工知能機191に対して様々な探査入力を与えて探査出力を得ている。ある程度学習が進んだ人工知能機191を利用すれば、シミュレータ151を実際に動かすよりも、多数の入力に対して短時間で近似的な模擬実験を行うことができる。本実施形態では、学習途上の人工知能機191を用いた近似的な模擬実験に基づいて、相転移やランダム性などの影響が大きいと予想される候補入力を推測するのである。
【００４７】
そして、繰返し部107は、終了条件が満たされるまで、推測された候補入力を、新たな実験入力として実験部103に設定させた上で、実験部103、教師部104、探査部105、推測部106による処理を繰り返す。
【００４８】
終了条件としては、たとえば、シミュレータ151と、人工知能機191と、の差異が十分に小さくなった場合、人工知能機191の学習が十分に進んだ場合、あるいは、シミュレータ151によるシミュレーションが時間や費用の上限に到達し、これ以上繰り返せなくなった場合など、種々の条件を採用することができる。
【００４９】
(候補入力の推測)
候補入力を推測するにあたっては、非特許文献1にも開示されるように、分散分析の技術を適用することができる。
【００５０】
以下では、理解を容易にするため、シミュレータ151にM次元の入力xを与えるとN次元の出力yが得られることを、非決定的な関数fにより、
y = f(x)
と標記する。
【００５１】
また、学習が進行度kまで進んだ人工知能機191にM次元の入力xを与えるとN次元の出力yが得られることを、決定的もしくは非決定的な関数gkにより、
y = gk(x)
と標記する。
【００５２】
人工知能機191がシミュレータ151を模倣するように学習する、ということは、M次元の任意の入力x(実験入力でないものを含む)に対して、kが大きくなればなるほど、gk(x)がf(x)に近付く可能性を高くすることを意味する。
【００５３】
非特許文献1に係る技術では、人工知能機191は想定されておらず、シミュレータ151に対する実験入力e1, e2, …と、これらに対してシミュレータ151から取得された実験出力f(e1), f(e2), …と、に基づいて、分散分析により、新たにシミュレータ151に与えるべき候補入力を定めている。
【００５４】
一方、本実施形態では、シミュレータ151を模倣すべく学習中の人工知能機191を用いて入力と出力の関係を近似的に求め、これらに基づいて、新たにシミュレータ151に与えるべき候補入力を定める。
【００５５】
第1の手法では、新たな正解データによって学習をする前の人工知能機191と、新たな正解データによって学習をした後の人工知能機191と、に同じ探査入力を与えることにより取得された探査出力の出力差異が、所定基準にて十分に大きい探査出力に対する探査入力を、候補入力として推測する。
【００５６】
すなわち、学習がk段階から(k+1)段階まで進んだ時点で、複数の探査入力x1, x2, x3, … について、探査出力の差異
gk+1(x1) - gk(x1), 
gk+1(x2) - gk(x2), 
gk+1(x3) - gk(x3), … 
の分布を調べ、全体の分布から突出している差異が得られるような探査入力を候補入力とするのである。
【００５７】
たとえば、gk+1(xp)- gk(xp)が突出している場合には、xpを候補入力とすれば良い。
【００５８】
ここで、探査入力x1, x2, x3, …は、典型的には、いずれも実験入力とは異なるものとする。これは、人工知能機191の学習が進んでいるときには、同じ入力に対する実験出力と探査出力とは、ほぼ等しいはずだからである。ただし、シミュレータ191の動作が非決定的である場合や、学習の段階が低い場合等には、実験入力と同じものを含むこととしても良い。
【００５９】
また、探査入力は、は、過去にシミュレータ151に対して与えられた実験入力同士の内挿あるいは外挿により選択したり、入力の各要素をランダムに選択することができる。内挿や外挿の手法は、非特許文献1に開示されるものと同様の手法を用いることができる。
【００６０】
たとえば、シミュレータ151に対する入力がM次元である場合には、各実験入力をM次元空間内の点(実験済の点)の位置に対応付ける。さらに、シミュレータ151に対する入力の各要素が上限あるいは下限をとるように定めた点(境界の点)をすべて、もしくは、ラテン方格法により選んで、M次元空間内に配置する。
【００６１】
そして、実験済および境界の点を頂点とするが、これらの点を内部に含まないM次元三角錐により、M次元空間を分割し、得られたM次元三角錐の重心の位置を、各探査入力にすれば良い。
【００６２】
探査出力の差異は、N次元ベクトルである。一般に、N次元ベクトルのうち突出しているもの、あるいは、外れ値(outliner)に相当するものを選ぶには、多次元分布の検定に係る技術を利用することができる。本判定に係る技術は、後述する態様でも、同様に適用することができる。
【００６３】
単純には、N次元ベクトルの各要素が正規分布にしたがうと想定して、各要素の平均及び標準偏差、あるいは、スミルノフ・グラブズ検定やトンプソン検定などの計算式により、各要素を正規化した検定統計量を求める。
【００６４】
そして、検定統計量の絶対値が、「有意点」と呼ばれる閾値(たとえば2あるいは3)以上の要素を持つN次元ベクトルを、突出している(外れ値である)、と判定する。
【００６５】
また、N次元ベクトルの要素のうち、検定統計量の絶対値が最大のものを、当該N次元ベクトルの外れ度合としても良い。外れ度合の順に、上位から所定割合(たとえば1パーセント乃至5パーセント)のN次元ベクトルを、突出している(外れ値である)と判定する。
【００６６】
また、多次元分布の主成分軸を求めて、入力を各主成分軸に投射して正規化を行うことにより、各主成分軸における入力の検定統計量を求めてから、上記のように、突出している(外れ値である)か否かを判定しても良い。
【００６７】
第2の手法は、所定基準にて十分に大きい探査出力に対する探査入力を、候補入力として推測するものである。
【００６８】
具体的には、学習が最も進んだk段階の人工知能機191において、複数の探査入力x1, x2, x3, … について、探査出力
gk(x1), 
gk(x2), 
gk(x3), … 
の分布を調べ、突出している探査出力が得られるような探査入力を候補入力とする。
【００６９】
たとえば、gk(xp)が外れ値である場合には、xpを候補入力とすれば良い。
【００７０】
第3の手法は、複数の探査入力のうち、第1探査入力に対する第1探査出力と、第1探査入力に最も近い第2探査入力に対する第2探査出力と、の出力差異が、所定基準にて十分に大きければ、第1探査入力、もしくは、第2探査入力のいずれか少なくとも一方を、候補入力として推測するものである。
【００７１】
ある探査入力xiに最も近い他の探査入力xm(i)は、
m(i) = argminj (j≠i) |xi - xj|
により定めることができる。
【００７２】
本手法では、学習が最も進んだk段階の人工知能機191において、複数の探査入力x1, x2, x3, … について、探査出力の差異
gk(x1) - gk(xm(1)), 
gk(x2) - gk(xm(2)), 
gk(x3) - gk(xm(3)), … 
の分布を調べ、突出している探査出力が得られる探査入力を候補入力とすれば良い。
【００７３】
たとえば、gk(xp) - gk(xm(p))が外れ値である場合には、xpのみ、あるいは、xpとxm(p)を候補入力とすれば良い。
【００７４】
第4の手法は、複数の探査入力のうち、
第1探査入力および当該第1探査入力に最も近い第2探査入力の入力差異と、
第1探査入力に対する第1探査出力および第2探査入力に対する第2探査出力の出力差異と、
について、入力差異に対する出力差異が所定基準にて十分に大きければ、第1探査入力、もしくは、第2探査入力のいずれか少なくとも一方を候補入力として推測するものである。
【００７５】
本手法では、学習が最も進んだk段階の人工知能機191において、複数の探査入力x1, x2, x3, … について、探査入力の入力差異
x1 - xm(1), 
x2 - xm(2), 
x3 - xm(3), … 
と、探査出力の出力差異
gk(x1) - gk(xm(1)), 
gk(x2) - gk(xm(2)), 
gk(x3) - gk(xm(3)), … 
と、を求め、入力差異に対する出力差異
|gk(x1) - gk(xm(1))| / |x1 - xm(1)|, 
|gk(x2) - gk(xm(2))| / |x2 - xm(2)|, 
|gk(x3) - gk(xm(3))| / |x3 - xm(3)|, 
の分布を調べて、突出しているものから、探査入力を調べる、というものである。
【００７６】
ここで、上式では「入力差異に対する出力差異」を、「出力差異のベクトルの長さ」を「入力差異のベクトルの長さ」で除算して求めているが、「出力差異のベクトルの角度」を「入力差異のベクトルの角度」で除算して求めることとしても良い。この場合は、各探査入力は、他の探査入力を定数倍しても重ならないようにする、すなわち、各探査入力のベクトルは、互いに非平行とすることが望ましい。
【００７７】
このほか、実験入力と実験出力の組と、現段階までの人工知能機191の各段階g1(.), g2(.), …と、に基づいて、新たな候補入力を探索する戦略を、機械学習や深層学習の技術により定めることとしても良い。たとえば、GAN(Generative Adverssarial Networks)等の技術では、本物の情報を模倣する情報を生成する生成モデルと、与えられた情報が本物か生成モデルに由来するものかを識別する識別モデルと、が、敵対的に振る舞って学習を進める。
【００７８】
本実施形態においては、本物の情報としてシミュレータ151の入出力(実験入力e1, e2, …と実験出力f(e1), f(e2), …)を採用する。
【００７９】
また、模倣情報として人工知能機191の入出力(実験入力e1, e2, …を含む探査入力x1, x2, …と、探査出力gk(x1), gk(x2), …)を採用する。
【００８０】
また、両者を区別する識別モデルは、本物情報と模倣情報との差異を学習する際に、異なる度合が高いと判定された領域を出力する。そして、その領域の中から、新たな候補入力を定めることとすれば良い。
【００８１】
(制御の流れ)
【００８２】
本実施形態では、シミュレータ151による実験と、人工知能機191における学習および探査と、を、並行して実行することができる。図3は、本発明の実施形態に係る制御装置、シミュレータ、人工知能機の制御の流れを示すフローチャートである。以下、本図を参照して説明する。
【００８３】
実験部103による処理と、探査部105による処理と、は、並行して実行される。
【００８４】
本処理が開始されると、まず、制御装置101は、初期的な実験入力を設定する(ステップS201)。上記のように、シミュレーションを初めて実行する際には、実験入力をラテン方格法により間引きつつ設定するのが典型的である。
【００８５】
次に、制御装置101は、設定された実験入力をシミュレータ151に与える(ステップS202)。すると、シミュレータ151は、模擬実験を実行する(ステップS203)。
【００８６】
ステップS202の後、制御装置101は、それまでにシミュレータ151により実行された模擬実験による実験入力と実験出力を正解データとして人工知能機191に与える(ステップS204)。すると、人工知能機191は、学習を進める(ステップS205)。なお、処理を開始した直後は、正解データの数がある程度揃ってから、ステップS204を実行することとしても良い。
【００８７】
人工知能機191における学習(ステップS205)が完了(ステップS206)したら、全体の処理を終了する終了条件が満たされているか調べる(ステップS221)。
【００８８】
終了条件が満たされず(ステップS221;No)、模擬実験がまだ終わりそうになければ(ステップS207;No)、制御装置101は、探査入力を人工知能機191に与える(ステップS208)。すると、人工知能機191は、学習されたモデルに基づいて探査入力に対する探査出力を計算する(ステップS209)。制御装置101は、探査出力が得られるまで待つ(ステップS210)。
【００８９】
ステップS208乃至ステップS210の処理は、シミュレータ151における模擬実験がまだ終わりそうになければ(ステップS207;No)、繰り返し続けられ、複数の探査入力の各々に対して探査出力が得られる。
【００９０】
シミュレータ151における模擬実験がそろそろ終わりそうであれば、(ステップS207;Yes)、制御装置101は、探査入力と探査出力に基づいて、シミュレータ151と人工知能機191との差異が大きくなる可能性が高い候補入力を1つ以上推測する(ステップS211)。
【００９１】
なお、ステップS207における「模擬実験がそろそろ終了する」とは、ステップS211およびステップS212に要する計算と、シミュレータ151による模擬実験(ステップS203)と、がほぼ同時に終了するような時間的余裕を、過去の計算履歴等から予測して判定する。
【００９２】
そして、制御装置101は、推測された候補入力を新たな実験入力として設定し、(ステップS212)、シミュレータ151による模擬実験が完了してから(ステップS213)、ステップS202に戻る。
【００９３】
一方、終了条件が満たされた場合(ステップS207;Yes)、たとえば、シミュレータ151を利用できる時間、費用の上限に至った場合や、人工知能機191の学習が収束した場合は、シミュレータ151による模擬実験が完了してから(ステップS214)、それまでにシミュレータ151により実行された模擬実験による実験入力と実験出力を正解データとして人工知能機191に与え(ステップS215)、人工知能機191は、学習を進め(ステップS216)、学習が完了(ステップS217)したら、本処理を終了する。
【００９４】
これによって、非線型現象のシミュレータ151を模倣する人工知能機191が得られることになる。
【００９５】
(ばらつきパラメータ)
【００９６】
シミュレータ151が扱う非線形現象にランダム性がある場合には、非決定関数f(.)に対して同じ入力を与えた場合であっても、異なる出力が得られる。ここで、同じ設定条件における非線形現象において、結果がどのようにばらつくかを調べたい場合には、同じ入力をシミュレータ151に複数回与えて、出力のばらつきを得る必要がある。
【００９７】
このような分析の際には、同じ入力をシミュレータ151から得られたサンプルをそのまま利用するのではなく、サンプルの代表値(たとえば、平均値、中央値、最頻値等。)、および、ばらつきパラメータ(たとえば、標準偏差、分散、スチューデントのt分布における不偏分散、ポアソン分布のλパラメータ等。)を、上記実施形態における実験出力とすることになる。
【００９８】
本実施形態は、同じ入力で模擬実験を行う繰り返し回数を、サンプル数パラメータとして、上記実施形態による実験入力に含めるものとする。すると、同じ設定条件における模擬実験の繰り返し回数を自動的に調整することが可能となる。
【００９９】
(人工知能機およびその生成物)
上記のように、非線形現象の振舞いを学習した人工知能機191は、制御装置101やシミュレータ151とは独立した装置として、配布、販売等することができる。
【０１００】
人工知能機191は、どのようなニューロンや層をどのように接続・連携させるか等を表す人工知能プログラムを、コンピュータに実行させることで実現ができる。本実施形態に係る制御装置101は、シミュレータ151に基づいて、任意の人工知能プログラムによって実現された人工知能機191に非線型現象の学習をさせることができる。
【０１０１】
また、人工知能プログラムと、当該人工知能プログラムによって実現された人工知能機191が学習をすることによって得られたニューロンや層の結合パラメータと、のセット、すなわち、学習済モデルも、人工知能機191が実現されるコンピュータとは独立して、配布、販売等することができる。
【０１０２】
さらに、学習済の人工知能機191に対して与えた複数の入力の各入力と、当該各入力に対して人工知能機191から出力された出力と、の入出力の組のセットは、非線形現象の振舞いを表現するデータであり、人工知能生成物と考えることができる。このような人工知能生成物は、人工知能機191とは独立して、配布、販売等することができる。
【０１０３】
(応用例)
本実施形態は、非線型現象として、自動車交通状況を扱うことが可能である。本実施形態によれば、代表的な実験入力に基づいてスーパーコンピュータによるシミュレーションを行った後は、これをシミュレーションの結果を学習した人工知能機191によって、シミュレーションがなされていない入力に対しても妥当なシミュレーション出力を得ることができる。
【０１０４】
したがって、渋滞を抑制したり緊急時の避難経路を計画する場合に、種々の状況を細かく設定して近似実験を行い、結果を見積もることができるようになる。
【０１０５】
シミュレータ151における入力としては、交通信号の制御パターン、道路の新設、拡張、通行止め、廃止、一方通行、通行する車両や人間等の移動体の数等が考えられる。
【０１０６】
出力としては、渋滞の有無、個々の移動体の目的地への平均到達時間や平均速度、エントロピー、交通事故の発生数、騒音や汚染の程度等が考えられる。
【０１０７】
(まとめ)
上記のように、対象とする現象が複雑になり、非線型な特徴を持つ場合には、計算機シミュレーションは多くの入力パラメータを持ち、かつ複雑なふるまいをするようになる。従来の手法では、人間が多種多様なシミュレーション結果を把握し、入力パラメータと対応して理解した上で応用しているが、上記のような状況では、人間の理解力が隘路となり困難となることが多い。
【０１０８】
また個々のシミュレーションに要する計算資源も大きいことが多いため、すべての入力に対してシミュレートすることは現実的ではない。
【０１０９】
本実施形態によれば、重要な入力パラメータを取捨選択し、シミュレーション回数を抑制してシミュレーターの振舞いを把握することができる。
【０１１０】
本実施形態では、取捨選択されたパラメータにより計算機シミュレーションを実行させ、その出力を人工知能システムが学習する。学習が済んだ後は、計算機シミュレーションを実行することなく、人工知能システムによって、非線型現象を近似的に使うことができる。
【０１１１】
すなわち、本実施形態に係る制御装置は、
非線型現象の設定条件が入力として与えられると前記非線型現象の模擬実験の結果を出力するシミュレータに対して、当該シミュレータに与えるべき実験入力を設定する設定部、
前記設定された実験入力を与えることにより前記シミュレータから出力された実験出力を取得する実験部、
前記与えられた実験入力と、当該実験入力に対して前記取得された実験出力と、の組を、入力と出力の組を表す正解データとして人工知能機に与えて、前記人工知能機に学習させる教師部、
前記非線型現象の前記設定条件を表す複数の探査入力であって前記実験入力とは異なるものを含む複数の探査入力を人工知能機に各々与えることにより、前記人工知能機から各々出力された複数の探査出力を取得する探査部、
前記与えられた複数の探査入力と、当該複数の探査入力に対して各々取得された複数の探査出力と、に基づいて、前記シミュレータからの出力と、当該入力に対する前記人工知能機からの出力と、の差異が大きくなる可能性が所定基準で大きい候補入力を推測する推測部、
終了条件が満たされるまで、前記推測された候補入力を新たな実験入力として前記設定部に設定させることにより、前記実験部、前記教師部、前記探査部、前記推測部による処理を繰り返す繰返し部
を備える。
【０１１２】
また、本実施形態に係る制御装置において、
新たな正解データによって学習をする前の人工知能機と、新たな正解データによって学習をした後の人工知能機と、に同じ探査入力を与えることにより取得された探査出力の出力差異が、前記所定基準にて十分に大きい探査出力に対する探査入力を、前記候補入力として推測する
ように構成することができる。
【０１１３】
また、本実施形態に係る制御装置において、
前記探査出力のうち、前記所定基準にて十分に大きい探査出力に対する探査入力を、前記候補入力として推測する
ように構成することができる。
【０１１４】
また、本実施形態に係る制御装置において、
第1探査入力に対する第1探査出力と、前記第1探査入力に最も近い第2探査入力に対する第2探査出力と、の出力差異が、前記所定基準にて十分に大きければ、前記第1探査入力、もしくは、前記第2探査入力のいずれか少なくとも一方を、前記候補入力として推測する
ように構成することができる。
【０１１５】
また、本実施形態に係る制御装置において、
第1探査入力および当該第1探査入力に最も近い第2探査入力の入力差異と、
前記第1探査入力に対する第1探査出力および前記第2探査入力に対する第2探査出力の出力差異と、
について、前記入力差異に対する前記出力差異が前記所定基準にて十分に大きければ、前記第1探査入力、もしくは、前記第2探査入力のいずれか少なくとも一方を、前記候補入力として推測する
ように構成することができる。
【０１１６】
また、本実施形態に係る制御装置において、
前記設定条件にはサンプル数パラメータが含まれ、
前記シミュレータは、前記サンプル数パラメータ以外の設定条件により、前記模擬実験を、前記サンプル数の回数だけ繰り返し、
前記実験出力には、前記繰り返された模擬実験の結果を表す代表値と、当該代表値に対するサンプル値のばらつきを表すばらつきパラメータと、が含まれる
ように構成することができる。
【０１１７】
また、本実施形態に係る制御装置において、
前記人工知能機は、機械学習機、深層学習機、ニューラルネットワーク、デシジョンツリー、もしくは、ランダムフォレストを含み、
前記人工知能機と、前記シミュレータと、は、前記制御装置の外部に構成される
ように構成することができる。
【０１１８】
また、本実施形態に係る制御装置において、
前記実験部による処理と、前記探査部による処理と、は、並行して実行される
ように構成することができる。
【０１１９】
また、本実施形態に係る制御方法は、制御装置が、
非線型現象の設定条件が入力として与えられると前記非線型現象の模擬実験の結果を出力するシミュレータに対して、当該シミュレータに与えるべき実験入力を設定し、
前記設定された実験入力を与えることにより前記シミュレータから出力された実験出力を取得し、
前記与えられた実験入力と、当該実験入力に対して前記取得された実験出力と、の組を、入力と出力の組を表す正解データとして人工知能機に与えて、前記人工知能機に学習させ、
前記非線型現象の前記設定条件を表す複数の探査入力であって前記実験入力とは異なるものを含む複数の探査入力を人工知能機に各々与えることにより、前記人工知能機から各々出力された複数の探査出力を取得し、
前記与えられた複数の探査入力と、当該複数の探査入力に対して各々取得された複数の探査出力と、に基づいて、前記シミュレータからの出力と、当該入力に対する前記人工知能機からの出力と、の差異が大きくなる可能性が所定基準で大きい候補入力を推測する
制御方法において、
終了条件が満たされるまで、前記推測された候補入力を新たな実験入力として設定することにより、前記実験出力を取得すること、前記人工知能機に学習させること、前記複数の探査出力を取得すること、前記候補入力を推測することを繰り返す。
【０１２０】
本実施形態に係るプログラムは、コンピュータを、
非線型現象の設定条件が入力として与えられると前記非線型現象の模擬実験の結果を出力するシミュレータに対して、当該シミュレータに与えるべき実験入力を設定する設定部、
前記設定された実験入力を与えることにより前記シミュレータから出力された実験出力を取得する実験部、
前記与えられた実験入力と、当該実験入力に対して前記取得された実験出力と、の組を、入力と出力の組を表す正解データとして人工知能機に与えて、前記人工知能機に学習させる教師部、
前記非線型現象の前記設定条件を表す複数の探査入力であって前記実験入力とは異なるものを含む複数の探査入力を人工知能機に各々与えることにより、前記人工知能機から各々出力された複数の探査出力を取得する探査部、
前記与えられた複数の探査入力と、当該複数の探査入力に対して各々取得された複数の探査出力と、に基づいて、前記シミュレータからの出力と、当該入力に対する前記人工知能機からの出力と、の差異が大きくなる可能性が所定基準で大きい候補入力を推測する推測部、
終了条件が満たされるまで、前記推測された候補入力を新たな実験入力として前記設定部に設定させることにより、前記実験部、前記教師部、前記探査部、前記推測部による処理を繰り返す繰返し部
として機能させる。
【０１２１】
また、本実施形態に係るプログラムは、非一時的なコンピュータ読取可能な情報記録媒体に記録して配布、販売することができる。また、コンピュータ通信網等の一時的(transitory)な伝送媒体を介して配布、販売することができる。
【０１２２】
本実施形態に係る人工知能機は、上記の制御装置に制御され、
前記制御装置に制御されることによって前記非線型現象を学習することにより、
学習済みの人工知能機となる。
【０１２３】
本実施形態に係る人工知能生成物は、
上記の人工知能機に与えた入力と、
前記人工知能機から得られた出力と、
を備える。
【０１２４】
本実施形態に係る人工知能機の利用方法は、
人工知能機に入力を与えるステップと、
前記人工知能機から前記入力に対する出力を取得する与えるステップと、
を備える。
【０１２５】
本発明は、本発明の広義の精神と範囲を逸脱することなく、様々な実施の形態及び変形が可能とされるものである。また、上述した実施の形態は、この発明を説明するためのものであり、本発明の範囲を限定するものではない。すなわち、本発明の範囲は、実施の形態ではなく、特許請求の範囲によって示される。そして、特許請求の範囲内及びそれと同等の発明の意義の範囲内で施される様々な変形が、この発明の範囲内とみなされる。
【産業上の利用可能性】
【０１２６】
本発明によれば、非線型現象をシミュレートするシミュレータを模倣するよう人工知能機に学習をさせる際に、シミュレータによるシミュレーションの回数を抑制する制御装置、制御方法、プログラム、ならびに、情報記録媒体を提供することができる。
【符号の説明】
【０１２７】
101 制御装置
102 設定部
103 実験部
104 教師部
105 探査部
106 推測部
107 繰返し部
151 シミュレータ
191 人工知能機
【図１】
2019219756.tif 000003
【図２】
2019219756.tif 000004
【図３】
2019219756.tif 000005