(57)【要約】【課題】ＩＦ−ＴＨＥＮルールとニューラルネットワークを併用した機構により制御上の意思決定を行う制御装置を提供する。【解決手段】制御装置は、機器の状態または機器が動作する環境の状態を示す状態情報に基づいてルールベースで機器の動作の枠組みを決定し、状態情報と、その状態情報に基づく機器の動作およびその動作に対する評価に基づいて構築された学習モデルと、に基づいて、決定された動作の枠組みにおける動作の内容を定めるパラメータを算出し、その動作を実行するよう機器に指示する。【選択図】図１
2019105891.tif 000002
【特許請求の範囲】
【請求項１】
機器の状態または機器が動作する環境の状態を示す状態情報に基づいてルールベースで機器の動作の枠組みを決定する動作選択部と、
前記状態情報と、その状態情報に基づく前記機器の動作およびその動作に対する評価に基づいて構築された学習モデルと、に基づいて、決定された前記動作の枠組みにおける前記動作の内容を定めるパラメータを算出する動作パラメータ算出部と、
前記動作を実行するよう前記機器に指示する動作指示部と、
を備える制御装置。
【請求項２】
前記動作パラメータ算出部は、
前記状態情報と前記学習モデルとに基づいて、前記動作の内容を定めるパラメータを算出する算出部と、
前記算出部が算出した前記パラメータの値に基づく前記動作を評価し、その評価に基づいて前記パラメータを最適化する前記学習モデルを更新する学習部と、
を備える請求項１に記載の制御装置。
【請求項３】
前記学習モデルは、アクターのニューラルネットワークとクリティックのニューラルネットワークを備え、
前記学習部が、ＤＤＰＧ(Deep Deterministic Policy Gradient)により、前記アクターのニューラルネットワークと前記クリティックのニューラルネットワークを更新する、
請求項２に記載の制御装置。
【請求項４】
前記動作パラメータ算出部は、前記状態情報と前記学習モデルとに基づいて、前記動作の内容を定めるパラメータの補正量を算出する、
請求項１から請求項３の何れか１項に記載の制御装置。
【請求項５】
センサが計測した情報に基づいて前記状態情報を推定する状態推定部、をさらに備える、
請求項１から請求項４の何れか１項に記載の制御装置。
【請求項６】
前記動作パラメータ算出部および前記動作指示部が前記動作の枠組み別に設けられ、
前記動作選択部が選択する前記動作の枠組みに応じて、選択された前記動作の枠組みに対応する前記動作パラメータ算出部および前記動作指示部に切り替える第１の切替部、
をさらに備える請求項１から請求項５の何れか１項に記載の制御装置。
【請求項７】
前記動作パラメータ算出部および前記動作指示部が、複数の前記動作の枠組みのうち一部の前記動作の枠組み別に設けられ、
複数の前記動作の枠組みのうち残りの前記動作の枠組みについて、前記動作の枠組み別に所定の動作内容を指示する動作制御部と、
前記動作選択部が選択する前記動作の枠組みに応じて、前記動作の枠組みに対応する前記動作パラメータ算出部および前記動作指示部、または、前記動作の枠組みに対応する前記動作制御部を切り替える第２の切替部と、
をさらに備える請求項１から請求項５の何れか１項に記載の制御装置。
【請求項８】
請求項１から請求項７の何れか１項に記載の制御装置と、
前記制御装置が制御する機器と、を含む無人システム。
【請求項９】
機器の状態または機器が動作する環境の状態を示す状態情報に基づいてルールベースで機器の動作の枠組みを決定するステップと、
前記状態情報と、その状態情報に基づく前記機器の動作およびその動作に対する評価に基づいて構築された学習モデルと、に基づいて、決定された前記動作の枠組みにおける前記動作の内容を定めるパラメータを算出するステップと、
前記動作を実行するよう前記機器に指示するステップと、
を有する制御方法。
【請求項１０】
コンピュータを、
機器の状態または機器が動作する環境の状態を示す状態情報に基づいてルールベースで機器の動作の枠組みを決定する手段、
前記状態情報と、その状態情報に基づく前記機器の動作およびその動作に対する評価に基づいて構築された学習モデルと、に基づいて、決定された前記動作の枠組みにおける前記動作の内容を定めるパラメータを算出する手段、
前記動作を実行するよう前記機器に指示する手段、
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御装置、無人システム、制御方法及びプログラムに関する。
【背景技術】
【０００２】
近年、コンピュータの計算能力の向上に伴い、機械学習や深層学習といった技術の進歩が目覚ましい。従来は計測や画像認識の分野で用いられることが多いこれらの技術が、幅広い分野に用いられるようになってきている。例えば、特許文献１には、人と協働して作業を行うロボットの動作について、人の作業負担を低減し、作業効率を向上させる動作を強化学習やニューラルネットワークを用いて学習する機械学習装置について記載がある。
また、非特許文献１には、強化学習の一種であるDeep Deterministic Policy Gradientについて記載がある。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１７−０３０１３７号公報
【非特許文献】
【０００４】
【非特許文献１】T. P. Lillicrap, J. J. Hunt, A. Pritzel, N. Heess, T. Erez, Y. Tassa, and D. Silver, “Continuous Control with Deep Reinforcement Learning,” Cornell University Library, 2015.
【発明の概要】
【発明が解決しようとする課題】
【０００５】
深層学習等の手法を用いると、人が認識さえすることができない特性を学習した高精度なモデルを構築することができる反面、人は、そのモデルが様々な入力に対してどのような出力を行うのかを予測することができない。従って、深層学習等で構築されたモデルに基づいて機器の動作を決定する場合、機器が意図しない動作を行う可能性を排除することができず、制御可能性や安全性の面で課題がある。
【０００６】
そこでこの発明は、上述の課題を解決することのできる制御装置、無人システム、制御方法及びプログラムを提供することを目的としている。
【課題を解決するための手段】
【０００７】
本発明の一態様によれば、制御装置は、機器の状態または機器が動作する環境の状態を示す状態情報に基づいてルールベースで機器の動作の枠組みを決定する動作選択部と、前記状態情報と、その状態情報に基づく前記機器の動作およびその動作に対する評価に基づいて構築された学習モデルと、に基づいて、決定された前記動作の枠組みにおける前記動作の内容を定めるパラメータを算出する動作パラメータ算出部と、前記動作を実行するよう前記機器に指示する動作指示部と、を備える。
【０００８】
本発明の一態様によれば、前記動作パラメータ算出部は、前記状態情報と前記学習モデルとに基づいて、前記動作の内容を定めるパラメータを算出する算出部と、前記算出部が算出した前記パラメータの値に基づく前記動作を評価し、その評価に基づいて前記パラメータを最適化する前記学習モデルを更新する学習部と、を備える。
【０００９】
本発明の一態様によれば、前記学習モデルは、アクターのニューラルネットワークとクリティックのニューラルネットワークを備え、前記学習部が、ＤＤＰＧ(Deep Deterministic Policy Gradient)により、前記アクターのニューラルネットワークと前記クリティックのニューラルネットワークを更新する。
【００１０】
本発明の一態様によれば、前記動作パラメータ算出部は、前記状態情報と前記学習モデルとに基づいて、前記動作の内容を定めるパラメータの補正量を算出する。
【００１１】
本発明の一態様によれば、前記制御装置は、センサが計測した情報に基づいて前記状態情報を推定する状態推定部、をさらに備える。
【００１２】
本発明の一態様によれば、前記制御装置において、前記動作パラメータ算出部および前記動作指示部が前記動作の枠組み別に設けられ、前記制御装置は、前記動作選択部が選択する前記動作の枠組みに応じて、選択された前記動作の枠組みに対応する前記動作パラメータ算出部および前記動作指示部に切り替える第１の切替部、をさらに備える。
【００１３】
本発明の一態様によれば、前記制御装置において、前記動作パラメータ算出部および前記動作指示部が、複数の前記動作の枠組みのうち一部の前記動作の枠組み別に設けられ、前記制御装置は、複数の前記動作の枠組みのうち残りの前記動作の枠組みについて、前記動作の枠組み別に所定の動作内容を指示する動作制御部と、前記動作選択部が選択する前記動作の枠組みに応じて、前記動作の枠組みに対応する前記動作パラメータ算出部および前記動作指示部、または、前記動作の枠組みに対応する前記動作制御部を切り替える第２の切替部と、をさらに備える。
【００１４】
本発明の一態様によれば、無人システムは、上記の何れかに記載の制御装置と、前記制御装置が制御する機器と、を含む。
【００１５】
本発明の一態様によれば、制御方法は、機器の状態または機器が動作する環境の状態を示す状態情報に基づいてルールベースで機器の動作の枠組みを決定するステップと、前記状態情報と、その状態情報に基づく前記機器の動作およびその動作に対する評価に基づいて構築された学習モデルと、に基づいて、決定された前記動作の枠組みにおける前記動作の内容を定めるパラメータを算出するステップと、前記動作を実行するよう前記機器に指示するステップと、を有する。
【００１６】
本発明の一態様によれば、プログラムは、コンピュータを、機器の状態または機器が動作する環境の状態を示す状態情報に基づいてルールベースで機器の動作の枠組みを決定する手段、前記状態情報と、その状態情報に基づく前記機器の動作およびその動作に対する評価に基づいて構築された学習モデルと、に基づいて、決定された前記動作の枠組みにおける前記動作の内容を定めるパラメータを算出する手段、前記動作を実行するよう前記機器に指示する手段、として機能させる。
【発明の効果】
【００１７】
本発明の制御装置、無人システム、制御方法及びプログラムによれば、制御の理解容易性と性能向上を両立することができる。
【図面の簡単な説明】
【００１８】
【図１】本発明の第一実施形態による無人システムのブロック図である。
【図２】本発明の第一実施形態の無人システムによる制御を説明する第１の図である。
【図３】本発明の第一実施形態の無人システムによる制御を説明する第２の図である。
【図４】本発明の第二実施形態による無人システムのブロック図である。
【図５】本発明の第二実施形態の無人システムによる制御を説明する図である。
【図６】本発明の第三実施形態による無人システムのブロック図である。
【図７】本発明の第三実施形態の無人システムによる制御を説明する第１の図である。
【図８】本発明の第三実施形態の無人システムによる制御を説明する第２の図である。
【図９】本発明の第四実施形態の無人システムによる学習モデルの更新処理の一例を示すフローチャートである。
【図１０】本発明の第五実施形態による無人システムの一例を示す図である。
【図１１】本発明の第五実施形態による無人システムの制御方法の一例を示すフローチャートである。
【図１２】本発明の第五実施形態による行動パラメータの決定処理を説明する図である。
【図１３】本発明の第一実施形態〜第五実施形態における制御装置のハードウェア構成の一例を示す図である。
【発明を実施するための形態】
【００１９】
＜第一実施形態＞
以下、本発明の実施形態による制御装置を図１〜図３を参照して説明する。
図１は、本発明に係る第一実施形態における無人システムのブロック図である。
図１の無人システム１は、制御装置１０、機器２０、センサ３０を含む。制御装置１０は、機器２０を制御するコンピュータであって、ＣＰＵ（Central Processing Unit）やＭＰＵ（Micro Processing Unit）を備える。制御装置１０と機器２０とは別体で構成されていても良いし、一体的に構成されていても良い。制御装置１０と機器２０は、有線または無線の通信手段を介して接続されており、制御装置１０から機器２０へ制御信号を出力、送信等することによって機器２０の動作を制御する。制御装置１０は、機器２０の状態や動作環境に応じて機器２０が目標とする状態となるように制御する。一般に動作環境等に応じて機器２０を制御する場合、例えば、温度が「Ｘ１」度以上になったら制御「Ａ１」を行い、「Ｘ２」度以上になったら制御「Ａ２」を行うといったように、制御装置１０は、所定の環境情報（例えば、周囲の温度等）を所定のルールに基づいて判定し、次に行うべき制御を決定する（ＩＦ−ＴＨＥＮルールによる制御）ことが多い。本実施形態の制御装置１０は、従来のルールベースで決定された制御の枠組みの中で、さらに実環境に応じたより好ましい制御（例えば、効率が良い、損失が少ない、安全性が高い、ユーザにとって望ましい、など）を実行する機能を備える。機器２０は、例えば、自動運転車、無人航空機（ＡＡＶ：Automated Aerial Vehicle）などの無人で動作する機器である。
【００２０】
図１に示すように制御装置１０は、センサ情報取得部１１と、行動選択部１２と、パラメータ算出部１３と、行動指示部１４と、記憶部１５とを備える。
センサ情報取得部１１は、機器２０の状態や動作環境についてセンサ３０が検出した情報（環境情報）を取得する。センサ３０とは、例えば、カメラ、レーダ、レーザレーダ、３軸慣性センサ、ＧＰＳ（Global Positioning System）受信機、加速度センサ、温度センサ、気圧センサ、電流センサ、回転センサなどである。
【００２１】
行動選択部１２は、環境情報に基づいて、ＩＦ−ＴＨＥＮルール等のルールベースで機器２０が行うべき動作や行動の枠組み、種類を決定する。
【００２２】
パラメータ算出部１３は、環境情報と、環境情報に基づく機器２０の行動およびその行動の結果に対する評価を学習することによって構築された学習モデルと、に基づいて、行動選択部１２が選択した行動の枠組みにおける行動の詳細な内容を決定する。パラメータ算出部１３は、算出部１３１と、学習部１３２とを備える。算出部１３１は、環境情報に応じた適切な行動の内容を定めるパラメータ（以下、行動パラメータと記載）を学習モデルに基づいて算出する。学習部１３２は、算出部１３１が算出した行動パラメータを用いて実行された機器２０の行動およびその行動の結果に対する評価を学習して学習モデルを更新する。例えば、学習モデルには、行動パラメータを算出するためのモデル（アクターモデル）、その行動パラメータに基づく行動を実環境に対して行った結果を評価するためのモデル（クリティックモデル）が含まれており、学習部１３２は、ＤＤＰＧ(Deep Deterministic Policy Gradient)により学習モデル（アクターモデル、クリティックモデル）の更新を行う。なお、パラメータ算出部１３の動作は、学習モードと非学習モードとを切り替えることができる。これにより、例えば、学習に適さない環境では学習を停止することができる。
【００２３】
行動指示部１４は、パラメータ算出部１３（算出部１３１）が算出した行動パラメータに基づいて制御信号を生成し、その制御信号を機器２０に出力する。これにより、行動指示部１４は、行動選択部１２が選択した行動の枠組みの範囲内で、パラメータ算出部１３により最適化された行動を機器２０に実行させる。
記憶部１５は、センサ情報取得部１１が取得した環境情報や学習モデルなど種々の情報を記憶する。
【００２４】
次に図２を用いて、制御装置１０による機器２０の制御について説明を行う。
図２は、本発明の第一実施形態の無人システムによる制御を説明する第１の図である。
まず、センサ３０が、機器２０の状態や機器２０の動作環境の状態を計測し、計測した環境情報を制御装置１０へ出力する。制御装置１０では、センサ情報取得部１１が環境情報を取得し、行動選択部１２、パラメータ算出部１３、行動指示部１４に出力する。
次に行動選択部１２は、ＩＦ−ＴＨＥＮルールに基づいて、環境情報に応じた行動を選択する。行動選択部１２は、選択した行動の枠組みをパラメータ算出部１３に出力する。
【００２５】
次にパラメータ算出部１３は、選択した行動の枠組みにおける行動パラメータを環境情報と学習モデルに基づいて算出する。例えば、学習モデルは、環境情報を入力すると、実環境に応じた最適な行動を実行するための行動パラメータを出力するよう構築されている。パラメータ算出部１３（算出部１３１）は、学習モデルに環境情報を入力する。パラメータ算出部１３は、環境情報に対して学習モデルが出力した行動パラメータを行動指示部１４に出力する。
【００２６】
行動指示部１４は、パラメータ算出部１３から取得した行動パラメータとセンサ情報取得部１１から取得した環境情報とに基づいて、行動パラメータが示す行動を実行するための制御信号を生成し、機器２０へ出力する。機器２０は、制御信号に従って行動する。この行動により、実環境は変化する。すると、センサ３０は、再び実環境の状態を計測して、制御装置１０は、新たに計測された環境情報に基づいて、ルールベースによる行動の枠組みの選択、その枠組みにおける行動パラメータの算出、行動指示、機器２０による行動というプロセスを繰り返す。
【００２７】
一般的な機器２０の制御では、例えば、エキスパートシステムのようなＩＦ−ＴＨＥＮルールに基づいて行動の内容を定めるパラメータが決定されることが多い。しかし、エキスパートシステムといえども、あらゆる状況に対応し得るだけのルールを設定することは現実的ではない。そこで本実施形態では、ルールベースによって制御の枠組みを決定することを基本とし、そのルール内の可変パラメータについては、強化学習によって獲得する。これにより、実環境に応じてパラメータを可変とすることができ、より現実に適した制御を行うことができる。これにより、全てのパラメータをＩＦ−ＴＨＥＮルールで定めておく場合と比べ、機器２０の個体差や使用環境などの違いに対応し、制御の目標やユーザの好みにより即した制御を実現することができる。また、可変パラメータの学習にはディープラーニング（例えば、ニューラルネットワーク、以下ＮＮと記載する場合がある。）を用いる。例えば、システム制御の分野でも可変ゲインのような考え方は存在するが、人がパラメータテーブルを事前に用意する必要がある。しかし、ディープラーニングを用いれば、学習すべき項目を人が設計する必要が無く、対象の特性を自動的に見出し、モデルを構築することができる。これにより、人が気付くことができない特性を学習し、より良い可変パラメータを出力することができる有用な学習モデルを構築できる可能性がある。
【００２８】
また、ルールベースに基づく行動の決定は、その行動生成の根拠が、例えばＩＦ−ＴＨＥＮ形式の条件分岐で明示されているので可読性に優れ、人が理解しやすいという利点がある。その為、機器２０が起こす行動は予測し易く、人との協働など実社会へ適用するうえで安心して用いることができる。一方、ディープラーニングに基づく行動の決定は、行動生成の根拠をユーザが知ることが難しい。その為、例えば、学習モデルを構築したときと同様の環境で使用するのであれば、機器２０の制御をその学習モデルに任せてもよい。しかし、実環境では様々な予期しない現象が起こり得るため、どのような行動を起こすかが分からないまま、機器２０の制御を学習モデルに任せることはできない場合がある。しかし、本実施形態のルールベースとニューラルネットワークを併用した技術であれば、人が理解できるルールベースで行動の枠組みを決めることができるため、機器２０の行動が人の予測から大きく外れることが無く、安心して用いることができる。また、行動の内容を定める可変パラメータについては、強化学習により、実環境に応じて最適化された値を学習するので、より良い行動を引き出すことができる。
【００２９】
次にパラメータ算出部１３の一例について説明する。
図３は、本発明の第一実施形態の無人システムによる制御を説明する第２の図である。
上記のとおり、パラメータ算出部１３は、学習モデルと環境情報に基づいて行動パラメータを算出する算出部１３１と、学習モデルを更新する学習部１３２とを備える。一つの例では、Deep Deterministic Policy Gradient (ＤＤＰＧ)を適用してパラメータ算出部１３を実現することが可能である。ＤＤＰＧは、ディープラーニングを使った強化学習の手法である。ＤＤＰＧでは、行動（方策）を選択するアクターと、選択された行動やその行動によって生じた状態を評価するクリティックを用いる。アクターとクリティックはそれぞれ独立したニューラルネットワークである。上記の学習モデルは、アクターのＮＮおよびクリティックのＮＮを含む。算出部１３１は、アクターのＮＮに基づいて行動の選択、つまり行動パラメータの算出を行い、行動指示部１４が機器２０へ行動パラメータに基づく行動を指示する。学習部１３２は、その行動の結果生じた環境情報に基づいて報酬を設定し、アクターのＮＮおよびクリティックのＮＮを更新する。具体的な更新処理の例については後述する（第四実施形態）。報酬に基づいて学習モデル（アクターのＮＮおよびクリティックのＮＮ）を更新する処理が強化学習に相当し、実際に行動を生成して実環境に反映し、その結果を方策関数（アクターのＮＮ）にフィードバックすることで，徐々に良い行動を生成できるようになる。
【００３０】
本実施形態の無人システム１によれば、従来のルールベースの利点である行動生成の根拠の理解容易性と、強化学習の利点である性能向上とを両立することができる。また、従来のエキスパートシステムと異なり、制御における可変パラメータを学習により自動的に獲得することができる。
また、機器２０の運転と並行して学習モデルの更新を継続的に行うことで、機器２０の経年変化などを反映した精度の高い学習モデルを維持し続けることで、継続的に機器２０の性能を引き出すことができる。
【００３１】
＜第二実施形態＞
以下、本発明の第二実施形態による無人システムについて図４〜５を参照して説明する。第二実施形態では、第一実施形態を拡張し、計測できない情報が行動パラメータの決定に必要な場合に、その情報を推定する機能を備えた無人システム１Ａ、制御装置１０Ａを提供する。
【００３２】
図４は、本発明の第二実施形態による無人システムのブロック図である。
第二実施形態に係る構成のうち、第一実施形態に係る無人システム１に含まれる構成と同じものには同じ符号を付し、それらの説明を省略する。第二実施形態に係る無人システム１Ａは、制御装置１０Ａと、機器２０と、センサ３０とを含む。制御装置１０Ａは、第一実施形態の構成に加えて、状態推定部１６を備えている。状態推定部１６は、センサ情報取得部１１が取得した環境情報に基づいて、機器２０の状態や運転環境の状態を推定する。
【００３３】
図５は、本発明の第二実施形態の無人システムによる制御を説明する図である。
まず、センサ３０が実環境の状態を計測し、環境情報を制御装置１０Ａへ出力する。制御装置１０Ａでは、センサ情報取得部１１が環境情報を取得し、行動選択部１２、パラメータ算出部１３、行動指示部１４、状態推定部１６に出力する。
状態推定部１６は、環境情報に基づいて、制御に必要な情報（推定状態情報）を推定する。例えば、制御装置１０Ａが車両の自動運転を制御する場合、状態推定部１６は、交差点の死角など、車両が備えるセンサの計測範囲外にいる他車両の位置を推定する。このようにして推定された推定状態情報に対して報酬を与えつつ繰り返し学習すると、例えば、制御装置１０Ａの学習モデルは、死角の多い交差点に侵入した際に速度を落とすという行動の行動パラメータを獲得できる可能性がある。状態推定部１６は、推定した推定状態情報を、行動選択部１２、パラメータ算出部１３、行動指示部１４に出力する。
【００３４】
以下の処理の流れは、第一実施形態と同様である。まず、行動選択部１２は、環境情報および推定状態情報の少なくとも一つを用い、ＩＦ−ＴＨＥＮルールに基づいて行動の枠組みを選択する。次にパラメータ算出部１３は、環境情報および推定状態情報の少なくとも一つを学習モデル（アクターのＮＮ）に入力して、行動パラメータを算出する。次に行動指示部１４は、行動パラメータに基づく制御信号を生成し機器２０を制御する。また、パラメータ算出部１３は、今回の行動の結果を示す環境情報や推定状態情報を取得して、行動を評価し、学習モデルを更新する。
【００３５】
本実施形態によれば、計測できない、計測できるが誤差を含む環境の状態を推定して、制御および学習モデルの更新に利用することができる。また、例えば、状態推定部１６が将来の状態を予測することにより、例えば、先読み行動の行動パラメータを学習できる可能性がある。
【００３６】
＜第三実施形態＞
以下、本発明の第三実施形態による無人システムについて図６〜８を参照して説明する。第三実施形態では、ＩＦ−ＴＨＥＮルールで切り替え可能な複数の行動のそれぞれについて、行動パラメータを算出する方法を提供する。第一実施形態の構成では，行動が環境に反映されたその結果をフィードバックする必要がある。しかしＩＦ−ＴＨＥＮルールで行動を切替える場合、選択されなかった行動までも学習してしまうと、行動と評価が合致しない可能性がある。そこで、本実施形態では、まず、ＩＦ−ＴＨＥＮルールで行動選択を行い、その選択に応じて行動別に用意されたパラメータ算出部に切り替える。つまり、Ｎ個の行動別に独立したパラメータ算出部Ｎ個を用意しておき、選ばれた行動についてのみ学習を行うよう構成する。
【００３７】
図６は、本発明の第三実施形態による無人システムのブロック図である。
第三実施形態は、第一実施形態および第二実施形態の何れとも組み合わせることが可能であるが、ここでは第二実施形態と組み合わせた場合の構成を例に説明を行う。また、本発明の第三実施形態に係る構成のうち、第二実施形態に係る無人システム１Ａに含まれる構成と同じものには同じ符号を付し、それらの説明を省略する。第三実施形態に係る無人システム１Ｂは、制御装置１０Ｂと、機器２０と、センサ３０とを含む。制御装置１０Ｂは、第二実施形態の構成に代えて、パラメータ算出部１３Ｂ、行動指示部１４Ｂを備える。ここで、ＩＦ−ＴＨＥＮルールによって選択される行動の枠組みの種類はｎパターンあるとする。パラメータ算出部１３Ｂは、行動１のパラメータ算出部１３Ｂ１〜行動ｍのパラメータ算出部１３Ｂｍ（ｍ≦ｎ）を備える。行動１のパラメータ算出部１３Ｂ１は、行動１の算出部１３１Ｂ１、行動１の学習部１３２Ｂ１を備える。行動２のパラメータ算出部１３Ｂ２〜行動ｍのパラメータ算出部１３Ｂｍについても同様である。行動指示部１４Ｂは、行動１の行動指示部１４Ｂ１〜行動ｎの行動指示部１４Ｂｎを備える。また、制御装置１０Ｂは、切替部１７をさらに備える。
【００３８】
行動１のパラメータ算出部１３Ｂ１〜行動ｍのパラメータ算出部１３Ｂｍは、それぞれ行動の枠組み「行動１」〜「行動ｍ」のために用意されたものである。行動１のパラメータ算出部１３Ｂ１等は、第一実施形態のパラメータ算出部１３に相当する機能を有している。つまり、行動１のパラメータ算出部１３Ｂ１（行動１の算出部１３１Ｂ１）は、行動の枠組み「行動１」用の行動パラメータを算出する。また、行動１のパラメータ算出部１３Ｂ１（行動１の学習部１３２Ｂ１）は、行動の枠組み「行動１」用の学習モデル（「行動１」用のアクターのＮＮおよび「行動１」用のクリティックのＮＮ）を有し、これらのニューラルネットワークを更新する。行動２のパラメータ算出部１３Ｂ２〜行動ｍのパラメータ算出部１３Ｂｍについても同様である。
【００３９】
パラメータ算出部１３Ｂが行動１のパラメータ算出部１３Ｂ１〜行動ｍのパラメータ算出部１３Ｂｍ（ｍ≦ｎ）を有するのは、パラメータ算出部１３Ｂが全ての行動の枠組み（ｎ種類）に対して用意されていなくても良いことを意味する。つまり、行動の枠組みの中には、ルールベースで行動パラメータが決定されるものがあっても良い。
【００４０】
行動１の行動指示部１４Ｂ１〜行動ｎの行動指示部１４Ｂｎは、それぞれ行動の枠組み「行動１」〜「行動ｎ」のために用意されたものである。行動１の行動指示部１４Ｂ１等は、第一実施形態の行動指示部１４に相当する機能を有している。つまり、行動１の行動指示部１４Ｂ１は、行動の枠組み「行動１」用の行動パラメータに基づく制御信号を生成し、機器２０へ出力する。行動２の行動指示部１４Ｂ２〜行動ｎの行動指示部１４Ｂｎについても同様である。行動指示部１４Ｂは、行動１の行動指示部１４Ｂ１等を行動の枠組みのパターンの数（ｎ個）だけ有している。
【００４１】
切替部１７は、行動選択部１２が選択した行動ｉに対応する行動ｉのパラメータ算出部１３Ｂｉ、行動ｉの行動指示部１４Ｂｉを選択し、選択した行動ｉのパラメータ算出部１３Ｂｉ、行動ｉの行動指示部１４Ｂｉ等に制御を切り替える（但し、行動ｉのパラメータ算出部１３Ｂｉは存在しない場合がある）。すなわち、行動ｉが選択されたとき、行動ｉのパラメータ算出部の学習のみを行い，行動ｊ≠ｉのパラメータ算出部１３Ｂｊの学習モデルについての学習は行わない。
【００４２】
次に図７、図８を用いて、制御装置１０Ｂによる機器２０の制御について説明を行う。
図７は、全ての行動の枠組みに対してパラメータ算出部１３Ｂが設けられている場合の構成例、図８は、一部の行動の枠組みに対してのみパラメータ算出部１３Ｂが設けられている場合の構成例を示している。
【００４３】
図７は、本発明の第三実施形態の無人システムによる制御を説明する第１の図である。
まず、センサ３０が実環境の状態を計測し、環境情報を制御装置１０Ｂへ出力する。制御装置１０Ｂでは、センサ情報取得部１１が環境情報を取得し、その環境情報を行動選択部１２Ｂ、パラメータ算出部１３Ｂ、行動指示部１４Ｂに出力する。また、必要に応じて図示しない状態推定部１６が推定状態情報を推定し、その推定状態情報を行動選択部１２Ｂ、パラメータ算出部１３Ｂ、行動指示部１４Ｂに出力する。
次に行動選択部１２は、環境情報や推定状態情報とＩＦ−ＴＨＥＮルールとに基づいて、行動の枠組みを選択する。
【００４４】
行動選択部１２は、選択の結果を切替部１７（図７の「切り替えスイッチ」）へ出力する。切替部１７は、行動選択部１２の選択結果に従って、制御器（行動ｉのパラメータ算出部１３ｉ、行動ｉの行動指示部１４Ｂｉ）を切り替える。例えば、行動選択部１２が「行動１」を選択した場合、切替部１７は、制御器を行動１のパラメータ算出部１３Ｂ１へ切り替える。例えば、行動選択部１２が「行動２」を選択した場合、切替部１７は、制御器を行動２のパラメータ算出部１３Ｂ２へ切り替える。行動選択部１２が「行動ｎ」を選択した場合、切替部１７は、制御器を行動ｎのパラメータ算出部１３Ｂｎへ切り替える。
【００４５】
行動１のパラメータ算出部１３Ｂ１へ切り替えられた場合、パラメータ算出部１３Ｂ１は、「行動１」の行動パラメータを、環境情報や推定状態情報と行動１の学習モデルとに基づいて算出する。パラメータ算出部１３Ｂ１は、行動パラメータの値を行動指示部１４Ｂ１に出力する。
行動１の行動指示部１４Ｂ１は、環境情報（必要に応じて推定状態情報）と行動パラメータに基づく制御信号を生成し、機器２０へ出力する。
また、「行動１」について学習モードとなっている場合、パラメータ算出部１３Ｂ１は、今回の行動の後にセンサ情報取得部１１が取得した環境情報や、推定状態情報に基づいて今回の行動を評価し、より良い行動が可能となるように行動１の学習モデルを更新する。
【００４６】
行動選択部１２が、「行動２」、「行動ｎ」を選択した場合も同様である。例えば、行動選択部１２が「行動２」を選択した場合、行動２のパラメータ算出部１３Ｂ２が「行動２」の行動パラメータの算出や行動２の学習モデルの更新を行う。行動２の行動指示部１４Ｂ２は、行動２のパラメータ算出部１３Ｂ２が算出した行動パラメータに基づき機器２０の制御を行う。
【００４７】
図８は、本発明の第三実施形態の無人システムによる制御を説明する第２の図である。
図８に示す制御装置１０Ｂにおいても、図７で説明した処理と同様の流れで機器２０の制御を行う。しかし、図８に示す制御装置１０Ｂは、行動２のパラメータ算出部１３Ｂ２、行動ｎのパラメータ算出部１３Ｂｎを備えていない。図８の構成では、行動選択部１２が「行動２」を選択した場合、行動２の行動指示部１４Ｂ２が、所定のルールに基づいて「行動２」用の制御信号を生成し、機器２０を制御する。また、行動選択部１２が「行動ｎ」を選択した場合、行動ｎの行動指示部１４Ｂｎが、所定のルールに基づいて「行動ｎ」用の制御信号を生成し、機器２０を制御する。
【００４８】
本実施形態によれば、複数の行動のそれぞれについて、最適な行動パラメータを強化学習により獲得することができる。また、全ての行動について、行動パラメータの最適な値を学習する必要がない場合、図８のように必要な行動についてのみ行動ｉのパラメータ算出部１３Ｂｉを用意することができる。これにより、制御装置１０Ｂの処理負荷を軽減し、必要なコンピュータリソースを節約しつつ、最適な行動パラメータの獲得によって機器２０の挙動を改善することができる。
【００４９】
＜第四実施形態＞
第四実施形態では、第一実施形態〜第三実施形態における行動パラメータ算出のための学習モデルの更新処理の一例を提供する。以下、第二実施形態の構成を例として、図９を用いてパラメータ算出部１３をＤＤＰＧにより実現する方法を説明する。
図９は、本発明の第四実施形態の制御装置による学習モデルの更新処理の一例を示すフローチャートである。
まず、行動選択部１２が状態情報（環境情報、推定状態情報）に応じた行動の枠組みを選択し、算出部１３１が、その枠組みにおける行動ａ（ｋ）を状態情報と学習モデル（アクターのＮＮ）に基づいて算出する（ステップＳ１１）。具体的には、算出部１３１が以下の式（１）によりａ（ｋ）を算出する。
ａ（ｋ）＝μ（ｓ（ｋ）｜ｗ）＋ｎ（ｋ）    ・・・（１）
ここで、μは、現在時刻ｋにおける状態ベクトルｓ（ｋ）を入力とし、重みｗを持つ多層ニューラルネットワークである。活性化関数には、例えば、ＲｅＬＵを適用する。μ（ｓ（ｋ）｜ｗ）は、確定的な値であるが，右辺第二項ｎ（ｋ）(例えば、平均０、分散Σの白色ガウス雑音）の影響により、行動ａ（ｋ）は、ばらつきを持った値となる。算出部１３１は、行動ａ（ｋ）（行動パラメータ）を行動指示部１４へ出力する。
【００５０】
次にパラメータ算出部１３は、学習モードか否かの判定を行う（ステップＳ１２）。例えば、ユーザが制御装置１０Ａに学習モードか否かの設定を行う。その設定に基づいて、パラメータ算出部１３は、ステップＳ１２の判定を行う。学習モードの場合（ステップＳ１２；Ｙｅｓ）、行動指示部１４は、行動ａ（ｋ）に基づき機器２０を制御する。つまり行動ａ（ｋ）を実行し、環境に変化を起こす。次にセンサ３０が実環境を計測し、センサ情報取得部１１が環境情報を取得する。学習部１３２は、環境情報や状態推定部１６による推定状態情報に基づいて報酬ｒ（ｋ）を獲得する（ステップＳ１３）。報酬ｒ（ｋ）は、時刻ｋにおける状態ｓ（ｋ）に対して設定される値である。定性的には、望ましい状態ｓ（ｋ）に対しては、例えば正の報酬を設定し、望ましくない状態ｓ（ｋ）に対しては負の報酬を設定する。
【００５１】
次にセンサ３０が実環境を計測し、センサ情報取得部１１が次の時刻ｋ＋１の環境情報（状態ベクトルｓ（ｋ＋１））を取得する。または、状態推定部１６が時刻ｋ＋１における状態ｓ（ｋ＋１）を推定する。パラメータ算出部１３は、状態ｓ（ｋ＋１）等を、変数Ｒに保存する（ステップＳ１４）。より具体的には、学習部１３２は、状態ｓ（ｋ）と行動ａ（ｋ）と報酬ｒ（ｋ）と状態ｓ（ｋ＋１）とを組みとするデータセットを、過去の情報格納用変数Ｒに追加して、記憶部１５に記録する。
【００５２】
次に学習部１３２は、変数ＲからランダムにＰ個のデータを抽出する（ステップＳ１５）。このように抽出したＰ個のデータセット（ｓ（ｉ），ａ（ｉ），ｒ（ｉ），ｓ（ｉ＋１））、ｉ＝１，２，・・・,Ｐをミニバッチとよぶ。
【００５３】
次に学習部１３２は、以下の式（２）により価値ｙ（ｉ）を算出する（ステップＳ１６）。
ｙ（ｉ）＝ｒ（ｉ）＋γＱ´（ｓ（ｉ＋１），μ´（ｓ（ｉ＋１）｜ｗ´）｜ｗＱ´），
ｉ＝１，２，・・・，Ｐ  ・・・（２）
ここで、Ｑは状態価値関数であり、上式（２）の通り状態ｓと行動μを入力とする。ＤＤＰＧでは行動と同様に状態価値もニューラルネットワークでモデル化して、重みｗＱを更新して推定する。上式のＱ´はターゲットネットワークとよばれるニューラルネットワークであり、ｗＱ≠ｗＱ´である。同様にμ´は行動のニューラルネットワークμのターゲットネットワークであり、ｗ≠ｗ´である。なお、ＱはクリティックのＮＮ、μはアクターのＮＮである。
【００５４】
次に学習部１３２は、クリティックのＮＮを更新する（ステップＳ１７）。具体的には、学習部１３２は、以下の式（３）で表される損失関数を最小化するように状態価値関数の重みｗＱを更新する。この最小化は、勾配降下法やＡｄａｍなどの公知の方法を用いて実行することができる。
【００５５】
【数１】
2019105891.tif 000003
【００５６】
次に学習部１３２は、アクターのＮＮを更新する（ステップＳ１８）。具体的には、学習部１３２は、上述の方針で更新したＱを評価指標とし、勾配降下などの公知の方法を用いて以下の式（４）によってμの重みｗを更新する。
【００５７】
【数２】
2019105891.tif 000004
【００５８】
次に学習部１３２は、ターゲットネットワークを更新する（ステップＳ１９）。具体的には、学習部１３２は、ターゲットネットワークを以下の式（５）により更新する。
ｗ´＝τｗ＋（１−τ）ｗ´、ｗＱ´＝τｗＱ＋（１−τ）ｗＱ´・・・（５）
現在のアクターのＮＮの重みｗ、クリティックのＮＮの重みｗＱとの荷重平均により更新することで、重みの急激な変化を抑制する。これにより、アクターのＮＮの重み、クリティックのＮＮの重みが、それぞれｗ´、ｗＱ´に更新される。
【００５９】
また、ステップＳ１２で学習モードではないと判定した場合（ステップＳ１２；Ｎｏ）、行動指示部１４は、行動ａ（ｋ）に基づき機器２０を制御する。また、センサ情報取得部１１は、センサ３０が計測した環境情報や状態推定部１６による推定状態情報（時刻ｋ＋１における状態ｓ（ｋ＋１））を取得する。
次に機器２０の制御を終了するか否かを判定し（ステップＳ２１）、制御を終了する場合（ステップＳ２１；Ｙｅｓ）、本フローチャートを終了する。終了しない場合（ステップＳ２１；Ｎｏ）、ステップＳ１１からの処理を繰り返す。
【００６０】
本実施形態によれば、従来はＩＦ−ＴＨＥＮルールに基づいて決定されることが多い行動パラメータを状態に応じて最適な値とすることができる。その為、従来のルールベースよりも無人システムの性能を改善できる。また、行動パラメータを決定する学習モデルの構築に深層学習を用いることにより、学習すべきパラメータを人が設計する必要がなく自動的に獲得でき、さらに特に人が設計するのが困難な複雑なパラメータ、人が気付くことができないパラメータを獲得し、より精度の高い学習モデルを得ることができる。
【００６１】
＜第五実施形態＞
次に第一実施形態〜第四実施形態で説明した行動パラメータの算出および学習方法を、無人航空機（ＡＡＶ：Automated Aerial Vehicle）の自動運転に適用した具体例を示す。
図１０は、本発明の第五実施形態による無人システムの一例を示す図である。
ＡＡＶ２０´は、センサ３０を備えている。センサ３０は、例えば、障害物の検知に用いるカメラやレーザレーダ、計画した経路を所望の速度で移動するために必要なＧＰＳ、ジャイロセンサ、大気圧センサ、加速度センサなどである。制御装置１０Ｂではセンサ情報取得部１１が、カメラやレーザレーダが計測した環境情報を取得する。センサ情報取得部１１は、例えば、カメラが撮影した画像を解析して、画像に含まれる障害物の存在を検出する機能や、レーザを照射してから反射光を受光するまでの時間を計測する機能を有していてもよい。
【００６２】
また、例えば、状態推定部１６は、ＧＰＳによる位置情報に含まれる誤差の平滑化や、計測のインターバルにおける位置情報の推定のために、カルマンフィルタによってＡＡＶ２０´の位置情報を推定してもよい。これにより、より正確な状態を反映させた学習モデルの構築、より精度の高い学習モデルに基づく行動パラメータの算出を行うことができる。あるいは、ＧＰＳ信号が受信できない環境の場合、状態推定部１６は、レーザレーダやカメラが計測した情報を用いて、ＳＬＡＭ（Simultaneous Localization and Mapping）等の方法により自己位置を推定してもよい。これにより、制御装置１０Ｂは、ＧＰＳによる自己位置の測位ができない環境でも、ＡＡＶ２０´を制御することができる。
【００６３】
行動選択部１２は、環境情報に基づいて、「直進」、「旋回」、「ホバリング」などの行動の枠組みを選択する。例えば、レーダの検出結果が障害物の存在を示している場合、行動選択部１２は、その障害物を回避すべく「旋回」を選択する。その場合、パラメータ算出部１３Ｂは、例えば、行動パラメータ「旋回半径」を算出する。行動指示部１４Ｂは、パラメータ算出部１３が算出した旋回半径で旋回するための制御信号（例えば、旋回する側の前翼（プロペラ）の回転数をどの程度上昇させ、逆側の前翼の回転数をどの程度低下させるかなど）を生成し、ＡＡＶ２０´に出力する。
【００６４】
パラメータ算出部１３Ｂが算出する行動パラメータは、行動選択部１２が選択する行動の枠組みの中の一部に関する行動パラメータであってよい。例えば、ＡＡＶ２０´の旋回において行動パラメータ「旋回半径」についてはパラメータ算出部１３Ｂが決定するが、行動パラメータ「旋回開始タイミング」についてはルールベースで決定しても良い。また、次に例を挙げて説明するようにパラメータ算出部１３Ｂが算出するのは、行動選択部１２が選択する行動の枠組みの中の行動パラメータについての補正量であってもよい。
【００６５】
制御装置１０Ｂは、「旋回」についてのみパラメータ算出部１３Ｂを備え、「直進」、「ホバリング」などの他の行動については、行動指示部１４Ｂがルールベースで所定の動作内容を指示する。なお、制御装置１０Ｂは、ＡＡＶ２０´に内蔵されていてもよい。
【００６６】
図１１は、本発明の第五実施形態による無人システムの制御方法の一例を示すフローチャートである。
具体例として、ＡＡＶ２０´を、障害物を行動「旋回」によって回避しながら目標地点まで自動飛行させる制御を考える。なお、制御装置１０Ｂは、ＡＡＶ２０´の自動運転に必要な種々の行動を行う機能を有しているが、旋回以外の説明を省略する。
まず、制御装置１０Ｂに目標地点の位置情報を入力し、自動運転を開始する（ステップＳ３１）。すると、制御装置１０Ｂは、始点から終点までのＡＡＶ２０´の飛行経路を生成する（ステップＳ３２）。その後、制御装置１０Ｂは、ＡＡＶ２０´の飛行を開始する。センサ情報取得部１１は、例えば、ＡＡＶ２０´が備えるＧＰＳ受信機からＡＡＶ２０´の位置情報を取得する。行動選択部１２は、ＡＡＶ２０´が終点に到着したかどうかを判定する（ステップＳ３３）。終点に到着した場合（ステップＳ３３；Ｙｅｓ）、行動選択部１２は、自動運転終了を選択し、行動指示部１４Ｂが自動運転を終了する（ステップＳ３４）。
【００６７】
終点に到着していない場合（ステップＳ３３；Ｎｏ）、センサ情報取得部１１が、カメラ、レーザレーダ、ＧＰＳ、ジャイロセンサ、大気圧センサ、加速度センサなどのセンサ３０から環境情報を取得する（ステップＳ３５）。行動選択部１２は、カメラやレーザレーダが計測した環境情報や状態推定部１６による推定状態情報に基づいて、経路上に障害物が存在するかどうかを判定する（ステップＳ３６）。障害物が存在しない場合（ステップＳ３６；Ｎｏ）、行動選択部１２は、経路追従制御により、例えば、行動の枠組み「直進」を選択する。すると、行動指示部１４Ｂ（「直進」についてはパラメータ算出部１３Ｂｉが用意されていない）が、ＡＡＶ２０´をそのまま生成した経路に従って直進させる。例えば、行動指示部１４Ｂは、ＧＰＳ、ジャイロセンサ、大気圧センサ、加速度センサなどが計測した環境情報などを用いて、所定の高度、所定の姿勢、所定の飛行速度を維持しつつ、ステップＳ３２で生成した経路に追従して飛行するような制御信号を生成し、ＡＡＶ２０´を制御する（ステップＳ３８）。
【００６８】
障害物が存在する場合（ステップＳ３６；Ｙｅｓ）、行動選択部１２は、行動の枠組み「旋回」を選択する。すると、パラメータ算出部１３Ｂが回避経路を生成する（ステップＳ３７）。回避経路の生成では、旋回半径をＡＡＶ２０´と障害物との距離に応じて変化させ、距離が近ければ近いほど急旋回（旋回半径が小さい）で回避させるとする。ここで、図１１を用いて旋回半径の決定処理について説明する。
【００６９】
図１２は、本発明の第五実施形態による行動パラメータの決定処理を説明する図である。障害物との距離に対する旋回半径の初期値を、図１１の初期テーブルのグラフ「初期テーブル」に示す。ただし、この初期値は、現在の運転において必ずしも適切な値であるとは限らない。そこで、パラメータ算出部１３Ｂによって、実際に自動運転を行う中で学習を繰り返し、その結果に応じて初期テーブルの旋回半径を補正することを考える。補正後のＡＡＶ２０´と障害物の距離と旋回半径との関係を、グラフ「学習後のテーブル」に示す。このときの補正量をａ（ｋ）＝μ（ｓ（ｋ）｜ｗ）＋ｎ（ｋ）として設定し、旋回半径ｆ（ｋ）＝ｆ＿０（ｓ（ｋ））＋ａ（ｋ）として回避経路を生成して自動運転を行う。ここで、ｆ＿０（ｓ（ｋ））はグラフ「初期テーブル」である。これに対して、第四実施形態で説明した方法で、行動ａ（ｋ）（この例では旋回半径の補正量）を、例えば、障害物を回避した後になるべく早く、無理なく当初生成した経路に戻ることができたときの旋回半径に良い報酬を与える等の報酬の設定を行って、初期テーブルの補正量の学習モデルを更新する。補正後の旋回半径がグラフ「学習後のテーブル」である。パラメータ算出部１３Ｂは、このようにして学習した学習後の旋回半径を採用して、回避経路を生成する。行動指示部１４Ｂは、この回避経路に沿ってＡＡＶ２０´を飛行させる。
【００７０】
第五実施形態で例示したようにある行動パラメータ（旋回半径）について。初期テーブルを用意し、補正量を学習するように構成することで、初期値を与えない場合と比べ、短時間で学習を収束させられる可能性がある。
【００７１】
上記の図１１の説明では、「旋回」についてのみ行動パラメータを算出こととしたが、「直進」や「ホバリング」など他の全ての行動についても行動パラメータを算出する構成としてもよい（図７）。また、ＡＡＶ２０´の自動運転に第一実施形態の無人システム１や、第二実施形態の無人システム１Ａを適用することができることは勿論である。
【００７２】
図１３は、本発明の第一実施形態〜第五実施形態における制御装置のハードウェア構成の一例を示す図である。
コンピュータ９００は、ＣＰＵ（Central Processing Unit）９０１、主記憶装置９０２、補助記憶装置９０３、入出力インタフェース９０４、通信インタフェース９０５を備えるコンピュータ装置である。コンピュータ９００は、ＣＰＵ９０１に代えて、ＭＰＵ（Micro Processing Unit）やＧＰＵ（Graphics Processing Unit）などのプロセッサを備えていてもよい。上述の制御装置１０、１０Ａ、１０Ｂは、コンピュータ９００に実装される。そして、上述した各処理部の動作は、プログラムの形式で補助記憶装置９０３に記憶されている。ＣＰＵ９０１は、プログラムを補助記憶装置９０３から読み出して主記憶装置９０２に展開し、当該プログラムに従って上記処理を実行する。また、ＣＰＵ９０１は、プログラムに従って、記憶部１５に対応する記憶領域を主記憶装置９０２に確保する。また、ＣＰＵ９０１は、プログラムに従って、処理中のデータを記憶する記憶領域を補助記憶装置９０３に確保する。
【００７３】
なお、少なくとも１つの実施形態において、補助記憶装置９０３は、一時的でない有形の媒体の一例である。一時的でない有形の媒体の他の例としては、入出力インタフェース９０４を介して接続される磁気ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、半導体メモリ等が挙げられる。また、このプログラムが通信回線によってコンピュータ９００に配信される場合、配信を受けたコンピュータ９００が当該プログラムを主記憶装置９０２に展開し、上記処理を実行しても良い。また、当該プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、当該プログラムは、前述した機能を補助記憶装置９０３に既に記憶されている他のプログラムとの組み合わせで実現するもの、いわゆる差分ファイル（差分プログラム）であっても良い。
【００７４】
制御装置１０等の機能の全て又は一部は、マイコン、ＬＳＩ（Large Scale Integration）、ＡＳＩＣ（Application Specific Integrated Circuit）、ＰＬＤ（Programmable Logic Device）、ＦＰＧＡ（Field-Programmable Gate Array）等のハードウェアを用いて実現されてもよい。
【００７５】
その他、本発明の趣旨を逸脱しない範囲で、上記した実施の形態における構成要素を周知の構成要素に置き換えることは適宜可能である。また、この発明の技術範囲は上記の実施形態に限られるものではなく、本発明の趣旨を逸脱しない範囲において種々の変更を加えることが可能である。
なお、切替部１７は第１の切替部、第２の切替部の一例である。行動指示部１４Ｂｉ（１≦ｉ≦ｎ）のうち対応するパラメータ算出部１３Ｂｉが存在しないものは動作制御部の一例である。環境情報と推定状態情報は状態情報の一例である。行動選択部１２は動作選択部の一例である。パラメータ算出部１３、１３Ｂは動作パラメータ算出部の一例である。行動指示部１４、１４Ｂは動作指示部の一例である。
【００７６】
第一実施形態〜第四実施形態の制御装置の適用先は、航空機、車両、船、鉄道などの移動体に関する無人システムに限定されない。例えば、第一実施形態〜第四実施形態の制御装置は、プラント等の機器（タービン、ボイラー、圧縮機など）の制御に用いることができる。これらの機器の制御においても、制御（意思決定）の予測可能性・理解容易性と、状況への制御の適応性、最適性、性能向上を両立させることができる。
【００７７】
また、上記の制御装置１０における行動パラメータ算出の基本的な考え方は、実際の機器の制御を伴わなくとも、意思決定システムに用いることができる。例えば、意思決定システムは、意思決定に必要なパラメータを入力し、ルールベースで意思決定の枠組みを決定し、その枠組みの中の可変パラメータについては、強化学習により構築された学習モデルによって決定する。また、意思決定システムは、このようにして決定された意思決定の結果を評価し、学習モデルを更新する。例えば、意思決定システムとして、将棋を指すコンピュータ装置へ適用した場合であれば、センサ情報取得部１１に相当する機能が将棋盤の駒の配置情報を取得し、行動選択部１２に相当する機能が歩・飛車などの動かす駒の種類を決定し，行動指示部１４に相当する機能は，その駒を何マス動かすかを数式等によって具体的に決める。また、パラメータ算出部１３に相当する機能は、その数式等をより高精度に調整する。
【符号の説明】
【００７８】
１・・・無人システム
１０、１０Ａ、１０Ｂ・・・制御装置
１１・・・センサ情報取得部
１２・・・行動選択部
１３、１３Ｂ１、１３Ｂ２、１３Ｂｍ・・・パラメータ算出部
１４、１４Ｂ１、１４Ｂ２、１４Ｂｎ・・・行動指示部
１５・・・記憶部
１６・・・状態推定部
１７・・・切替部
１３１、１３１Ｂ１、１３１Ｂ２、１３１Ｂｍ・・・算出部
１３２、１３２Ｂ１、１３２Ｂ２、１３２Ｂｍ・・・学習部
２０・・・機器
３０・・・センサ
【図１】
2019105891.tif 000005
【図２】
2019105891.tif 000006
【図３】
2019105891.tif 000007
【図４】
2019105891.tif 000008
【図５】
2019105891.tif 000009
【図６】
2019105891.tif 000010
【図７】
2019105891.tif 000011
【図８】
2019105891.tif 000012
【図９】
2019105891.tif 000013
【図１０】
2019105891.tif 000014
【図１１】
2019105891.tif 000015
【図１２】
2019105891.tif 000016
【図１３】
2019105891.tif 000017