(57)【要約】【課題】学習済モデルの予測に基づくロボットの動作についてユーザの納得感が得られ易いロボット制御装置を提供する。【解決手段】ロボット制御装置は、作業データを学習して構築された学習済モデルと、学習済モデルからのデータに基づきロボットの制御データを得る制御データ取得部と、作業データを学習して複数の単純な動作毎に構築されたベース学習済モデルと、動作ラベルをベース学習済モデルに対応付けて記憶する動作ラベル記憶部と、学習済モデルとそれぞれのベース学習済モデルとの間の類似度を取得して、学習済モデルを複数のベース学習済モデルで表現する場合の組合せ情報を取得するベース学習済モデル組合せ情報取得部と、学習済モデルを表現するベース学習済モデルのそれぞれに対応する動作ラベルを出力する情報出力部と、を備える。【選択図】図１
2020104215.tif 000002
【特許請求の範囲】
【請求項１】
人間がロボットを操作して一連の作業を行わせる場合の、当該ロボット及びその周辺の状態を入力データとし、それに応じた人間の操作又は当該操作による当該ロボットの動作を出力データとする作業データを学習することにより構築された学習済モデルと、
ロボット及びその周辺の状態に関する入力データが前記学習済モデルに入力された場合に、それに応じて推定される人間の操作又はロボットの動作に関する出力データを前記学習済モデルから得ることにより、前記作業を行わせるためのロボットの制御データを得る制御データ取得部と、
人間がロボットを操作して前記一連の作業よりも単純な動作を行わせる場合の、当該ロボット及びその周辺の状態を入力データとし、それに応じた人間の操作又は当該操作による当該ロボットの動作を出力データとする作業データを学習することにより、複数の前記動作毎に構築されたベース学習済モデルと、
前記動作の内容を表現する情報を含む動作ラベルを、前記ベース学習済モデルに対応付けて記憶する動作ラベル記憶部と、
前記学習済モデルとそれぞれの前記ベース学習済モデルとの間の類似度を取得することにより、前記学習済モデルを複数の前記ベース学習済モデルの組合せで表現する場合の組合せ情報を取得するベース学習済モデル組合せ情報取得部と、
前記組合せ情報に基づいて、複数の組合せによって前記学習済モデルを表現する前記ベース学習済モデルのそれぞれに対応する前記動作ラベルを出力する情報出力部と、
を備えることを特徴とするロボット制御装置。
【請求項２】
請求項１に記載のロボット制御装置であって、
前記ベース学習済モデル組合せ情報取得部は、前記学習済モデルを複数の前記ベース学習済モデルの組合せで表現する場合の、複数の前記ベース学習済モデルの時系列での関係を取得し、
前記情報出力部は、複数の前記ベース学習済モデルの時系列での関係を、前記動作ラベルを用いて出力することを特徴とするロボット制御装置。
【請求項３】
請求項１又は２に記載のロボット制御装置であって、
前記学習済モデルは、前記入力データが当該学習済モデルに入力された場合に、それに応じて出力される前記出力データが、前記一連の作業のうちどの進捗度合いに相当するかを示す進行度を出力可能であり、
前記ベース学習済モデル組合せ情報取得部は、前記進行度に基づいて、複数の前記ベース学習済モデルの時系列での関係を取得可能であることを特徴とするロボット制御装置。
【請求項４】
請求項１から３までの何れか一項に記載のロボット制御装置であって、
前記学習済モデル及び前記ベース学習済モデルは、学習対象の前記作業データを特徴に応じてクラスタリング可能であり、
前記ベース学習済モデル組合せ情報取得部は、前記学習済モデルにおけるクラスタリングの結果と、前記ベース学習済モデルにおけるクラスタリングの結果と、を比較することにより、前記学習済モデルと前記ベース学習済モデルとの間の類似性を判断することを特徴とするロボット制御装置。
【請求項５】
請求項１から４までの何れか一項に記載のロボット制御装置であって、
前記ベース学習済モデル組合せ情報取得部は、同一の前記入力データに対して前記学習済モデルと前記ベース学習済モデルが出力するデータを比較することにより、前記学習済モデルと前記ベース学習済モデルとの間の類似性を判断することを特徴とするロボット制御装置。
【請求項６】
請求項１から５までの何れか一項に記載のロボット制御装置であって、
未学習の前記作業データのうち、ロボット及びその周辺の状態のデータが前記学習済モデルに入力された場合に、当該学習済モデルが出力する前記出力データと、未学習の前記作業データに含まれる前記出力データと、を比較して一致度を取得する比較部を備え、
前記情報出力部は、前記一致度を、ロボットの動作の時系列との関係で出力することを特徴とするロボット制御装置。
【請求項７】
請求項６に記載のロボット制御装置であって、
未学習の前記作業データは、前記一連の作業のうち少なくとも一部を行わせるために前記ロボットを人間が操作することでリアルタイムに生成される作業データであることを特徴とするロボット制御装置。
【請求項８】
請求項１から７までの何れか一項に記載のロボット制御装置であって、
前記学習済モデルは、一連の前記作業のうち一部の動作の時系列的位置を指定することで、当該学習済モデルにおいて当該動作に相当する部分を削除可能であることを特徴とするロボット制御装置。
【請求項９】
請求項１から８までの何れか一項に記載のロボット制御装置であって、
前記学習済モデルは、前記一連の作業のうち一部の動作の時系列的位置を指定するとともに、当該動作を置き換える動作を学習させるための追加作業データを指定することで、当該学習済モデルにおいて当該動作に相当する部分を、当該追加作業データを学習したものに置換可能であることを特徴とするロボット制御装置。
【請求項１０】
請求項１から９までの何れか一項に記載のロボット制御装置であって、
前記学習済モデルは、前記入力データの入力に応じて前記学習済モデルが前記出力データを出力する場合の、前記推定の確からしさを取得する確信度を出力可能であり、
前記情報出力部は、前記動作ラベルとともに、前記確信度を出力することを特徴とするロボット制御装置。
【請求項１１】
請求項１から１０までの何れか一項に記載のロボット制御装置と、
前記ロボットと、
を備えることを特徴とするロボットシステム。
【請求項１２】
人間がロボットを操作して一連の作業を行わせる場合の、当該ロボット及びその周辺の状態を入力データとし、それに応じた人間の操作又は当該操作による当該ロボットの動作を出力データとする作業データを学習することにより構築されたモデルを学習済モデルと呼び、
人間がロボットを操作して前記一連の作業よりも単純な動作を行わせる場合の、当該ロボット及びその周辺の状態を入力データとし、それに応じた人間の操作又は当該操作による当該ロボットの動作を出力データとする作業データを学習することにより、複数の前記動作毎に構築されたモデルをベース学習済モデルと呼ぶときに、
ロボット及びその周辺の状態に関する入力データが前記学習済モデルに入力された場合に、それに応じて推定される人間の操作又はロボットの動作に関する出力データを前記学習済モデルから得ることにより、前記作業を行わせるためのロボットの制御データを得る制御データ取得工程と、
前記動作の内容を表現する情報を含む動作ラベルを、前記ベース学習済モデルに対応付けて記憶する動作ラベル記憶工程と、
前記学習済モデルとそれぞれの前記ベース学習済モデルとの間の類似度を取得することにより、前記学習済モデルを複数の前記ベース学習済モデルの組合せで表現する場合の組合せ情報を取得するベース学習済モデル組合せ情報取得工程と、
前記組合せ情報に基づいて、複数の組合せによって前記学習済モデルを表現する前記ベース学習済モデルのそれぞれに対応する前記動作ラベルを出力する情報出力工程と、
を含むことを特徴とするロボット制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、主として、ロボットを制御するロボット制御装置に関する。
【背景技術】
【０００２】
従来から、ロボットの作業動作に関するモデルを構築することができる機械学習装置を備えたロボット制御装置が知られている。特許文献１は、この種のロボット制御装置を開示する。
【０００３】
特許文献１は、乱雑に置かれたワークを取り出すときのロボットの最適な動作を人間の介在無しに学習できる機械学習装置を備えるロボットシステムを開示する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１７−３０１３５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記特許文献１の構成は、一連の作業を実行させるためのロボットの動作に関する学習済モデルを構築しても、学習済モデルが当該作業をどのような動作として学習したかについてユーザが確認することができなかった。このため、ロボットの自律動作のために学習済モデルの出力を用いることにユーザが納得しにくく、この点で改善の余地があった。
【０００６】
本発明は以上の事情に鑑みてされたものであり、その目的は、学習済モデルの予測に基づくロボットの動作についてユーザの納得感が得られ易いロボット制御装置等を提供することにある。
【課題を解決するための手段】
【０００７】
本発明の解決しようとする課題は以上の如くであり、次にこの課題を解決するための手段とその効果を説明する。
【０００８】
本発明の第１の観点によれば、以下の構成のロボット制御装置が提供される。即ち、ロボット制御装置は、学習済モデルと、制御データ取得部と、ベース学習済モデルと、動作ラベル記憶部と、ベース学習済モデル組合せ情報取得部と、情報出力部と、を備える。前記学習済モデルは、人間がロボットを操作して一連の作業を行わせる場合の、当該ロボット及びその周辺の状態を入力データとし、それに応じた人間の操作又は当該操作による当該ロボットの動作を出力データとする作業データを学習することにより構築される。前記制御データ取得部は、ロボット及びその周辺の状態に関する入力データが前記学習済モデルに入力された場合に、それに応じて推定される人間の操作又はロボットの動作に関する出力データを前記学習済モデルから得ることにより、前記作業を行わせるためのロボットの制御データを得る。前記ベース学習済モデルは、人間がロボットを操作して前記一連の作業よりも単純な動作を行わせる場合の、当該ロボット及びその周辺の状態を入力データとし、それに応じた人間の操作又は当該操作による当該ロボットの動作を出力データとする作業データを学習することにより、複数の前記動作毎に構築される。前記動作ラベル記憶部は、前記動作の内容を表現する情報を含む動作ラベルを、前記ベース学習済モデルに対応付けて記憶する。前記ベース学習済モデル組合せ情報取得部は、前記学習済モデルとそれぞれの前記ベース学習済モデルとの間の類似度を取得することにより、前記学習済モデルを複数の前記ベース学習済モデルの組合せで表現する場合の組合せ情報を取得する。前記情報出力部は、前記組合せ情報に基づいて、複数の組合せによって前記学習済モデルを表現する前記ベース学習済モデルのそれぞれに対応する前記動作ラベルを出力する。
【０００９】
これにより、一連の作業を学習済モデルに学習させた場合に、ユーザは、当該作業がどのような動作の組合せとして学習されていると言えるかを、出力された動作ラベルに基づいて容易に把握することができる。従って、学習済モデルの透明性が高まり、ユーザは納得感を持って学習済モデルをロボット制御に用いることができる。
【００１０】
本発明の第２の観点によれば、以下の構成のロボット制御方法が提供される。即ち、このロボット制御方法では、人間がロボットを操作して一連の作業を行わせる場合の、当該ロボット及びその周辺の状態を入力データとし、それに応じた人間の操作又は当該操作による当該ロボットの動作を出力データとする作業データを学習することにより構築されたモデルを学習済モデルと呼ぶ。また、このロボット制御方法では、人間がロボットを操作して前記一連の作業よりも単純な動作を行わせる場合の、当該ロボット及びその周辺の状態を入力データとし、それに応じた人間の操作又は当該操作による当該ロボットの動作を出力データとする作業データを学習することにより、複数の前記動作毎に構築されたモデルをベース学習済モデルと呼ぶ。このロボット制御方法は、制御データ取得工程と、動作ラベル記憶工程と、ベース学習済モデル組合せ情報取得工程と、情報出力工程と、を含む。前記制御データ取得工程では、ロボット及びその周辺の状態に関する入力データが前記学習済モデルに入力された場合に、それに応じて推定される人間の操作又はロボットの動作に関する出力データを前記学習済モデルから得ることにより、前記作業を行わせるためのロボットの制御データを得る。前記動作ラベル記憶工程では、前記動作の内容を表現する情報を含む動作ラベルを、前記ベース学習済モデルに対応付けて記憶する。前記ベース学習済モデル組合せ情報取得工程では、前記学習済モデルとそれぞれの前記ベース学習済モデルとの間の類似度を取得することにより、前記学習済モデルを複数の前記ベース学習済モデルの組合せで表現する場合の組合せ情報を取得する。前記情報出力工程では、前記組合せ情報に基づいて、複数の組合せによって前記学習済モデルを表現する前記ベース学習済モデルのそれぞれに対応する前記動作ラベルを出力する。
【発明の効果】
【００１１】
本発明によれば、学習済モデルの予測に基づくロボットの動作についてユーザの納得感が得られ易いロボット制御装置等を提供することができる。
【図面の簡単な説明】
【００１２】
【図１】本発明の一実施形態に係るロボットシステムの電気的構成を示すブロック図。
【図２】ＡＩ部の学習のために時系列の局面データが収集される様子を示す図。
【図３】学習済モデルの構築について説明する図。
【図４】学習済モデルが行う推定について説明する図。
【図５】学習済モデルとベース学習済モデルを比較する処理を示す図。
【図６】学習済モデルとベース学習済モデルを比較する他の手法を示す図。
【図７】ロボット制御装置における表示部の表示例を示す図。
【発明を実施するための形態】
【００１３】
次に、図面を参照して本発明の実施の形態を説明する。図１は、本発明の一実施形態に係るロボットシステム１の電気的構成を示すブロック図である。
【００１４】
図１に示すロボットシステム１は、ロボット１０を用いて作業を行うシステムである。ロボット１０に行わせる作業としては様々であるが、例えば、組立て、加工、塗装、洗浄等がある。
【００１５】
詳細は後述するが、ロボット１０は、データを機械学習することで構築されたモデル（学習済モデル４３）を用いて制御される。そのため、ロボットシステム１は、基本的にはユーザの補助を必要とせず、作業を自律的に行うことができる。また、ロボット１０は、自律的に作業を行うだけでなく、ユーザの操作に応じて作業を行うこともできる。以下の説明では、ロボット１０が作業を自律的に行うことを「自律運転」と呼び、ユーザの操作に応じてロボット１０が作業を行うことを「手動運転」と呼ぶことがある。
【００１６】
図１に示すように、ロボットシステム１は、ロボット１０と、ロボット制御装置１５と、を備える。ロボット１０とロボット制御装置１５は有線又は無線により互いに接続されており、信号のやり取りを行うことができる。
【００１７】
ロボット１０は、台座に取り付けられたアーム部を備える。アーム部は、複数の関節を有しており、各関節にはアクチュエータが備えられている。ロボット１０は、外部から入力された動作指令に応じてアクチュエータを動作させることでアーム部を動作させる。
【００１８】
アーム部の先端には、作業内容に応じて選択されたエンドエフェクタが取り付けられている。ロボット１０は、外部から入力された動作指令に応じてエンドエフェクタを動作させることができる。
【００１９】
ロボット１０には、ロボット１０の動作及び周囲環境等を検出するためのセンサが取り付けられている。本実施形態では、動作センサ１１と、力センサ１２と、カメラ１３と、がロボット１０に取り付けられている。
【００２０】
動作センサ１１は、ロボット１０のアーム部の関節毎に設けられており、各関節の回転角度又は角速度を検出する。力センサ１２は、ロボット１０の動作時に、ロボット１０が受けた力を検出する。力センサ１２はエンドエフェクタに掛かる力を検出する構成であってもよいし、アーム部の各関節に掛かる力を検出する構成であってもよい。また、力センサ１２は、力に代えて又は加えてモーメントを検出する構成であってもよい。カメラ１３は、作業対象であるワークの映像（ワークに対する作業の進行状況）を検出する。
【００２１】
動作センサ１１が検出するデータは、ロボット１０の動作を示す動作データである。力センサ１２及びカメラ１３が検出するデータは、ロボット１０の周囲の環境を示す周囲環境データである。動作データと周囲環境データを総合したデータを、以下の説明で状態データと呼ぶことがある。状態データは、ロボット１０及びその周辺の状態を示すものである。
【００２２】
以下の説明では、ロボット１０に設けられた動作センサ１１、力センサ１２、及びカメラ１３をまとめて「状態検出センサ１１〜１３」と称することがある。また、状態検出センサ１１〜１３が検出したデータを、特に「センサ情報」と称することがある。状態検出センサ１１〜１３は、ロボット１０に取り付ける代わりに、ロボット１０の周囲に設けてもよい。
【００２３】
ロボット制御装置１５は、ユーザインタフェース部２０と、動作切替部（制御データ取得部）３０と、ＡＩ部４０と、動作ラベル記憶部５０と、ベース学習済モデル組合せ情報取得部６０と、データ比較部（比較部）７０と、を備える。
【００２４】
具体的には、ロボット制御装置１５は、ＣＰＵ、ＲＯＭ、ＲＡＭ、及びＨＤＤを備えるコンピュータである。コンピュータは、ユーザが操作するためのマウス等の装置を備える。コンピュータはＧＰＵを備えると、後述のニューラルネットワークによる学習を短時間で行うことができ、好ましい。ＨＤＤには、ロボット制御装置１５を動作させるためのプログラムが記憶される。上記のハードウェアとソフトウェアとの協働により、ロボット制御装置１５を、ユーザインタフェース部２０、動作切替部３０、ＡＩ部４０、動作ラベル記憶部５０、ベース学習済モデル組合せ情報取得部６０、及びデータ比較部７０として機能させることができる。
【００２５】
ユーザインタフェース部２０は、ロボット制御装置１５のユーザインタフェース機能を実現するものである。ユーザインタフェース部２０は、操作部２１と、表示部（情報出力部）２２と、を備える。
【００２６】
操作部２１は、ロボット１０を手動で操作するために用いる装置である。操作部２１は、例えばレバー、ペダル等を備える構成とすることができる。
【００２７】
図示しないが、操作部２１は、公知の操作力検出センサを備える。操作力検出センサは、ユーザが操作部２１に加えた力（操作力）を検出する。
【００２８】
操作部２１が様々な方向に動かすことができるように構成されている場合、操作力は力の向き及び大きさを含む値、例えばベクトルであってもよい。また、操作力は、ユーザが加えた力（Ｎ）だけでなく、力に連動する値である加速度（即ち、ユーザが加えた力を操作部２１の質量で除算した値）の形で検出されてもよい。
【００２９】
以下の説明では、ユーザが操作部２１に加えた操作力を、特に「ユーザ操作力」と称することがある。ユーザが操作部２１を操作することで出力されたユーザ操作力は、後述するように動作切替部３０で動作指令に変換される。
【００３０】
表示部２２は、ユーザの指示に応じて、様々な情報を表示することができる。表示部２２は、例えば液晶ディスプレイとすることができる。表示部２２は、操作部２１の近傍に配置されている。操作部２１がロボット１０から離れて配置されている場合、表示部２２に、ロボット１０及びその周辺の映像を表示させても良い。
【００３１】
動作切替部３０には、ロボット１０、操作部２１、及びＡＩ部４０が接続されている。動作切替部３０には、操作部２１が出力したユーザ操作力と、ＡＩ部４０が出力した後述の推定操作力と、が入力される。
【００３２】
動作切替部３０は、ロボット１０を動作させるための動作指令を、ロボット１０及びＡＩ部４０へ出力する。動作切替部３０は、切替部３１と、変換部３２と、を備える。
【００３３】
切替部３１は、入力されたユーザ操作力及び推定操作力のうち一方を変換部３２へ出力するように構成されている。切替部３１は、ユーザ操作力及び推定操作力のうち何れを変換するかを示す選択信号に基づいて、ユーザ操作力又は推定操作力を変換部３２へ出力するように構成されている。選択信号は、ユーザがユーザインタフェース部２０を適宜操作することにより、ユーザインタフェース部２０から動作切替部３０に出力される。
【００３４】
これにより、ユーザがロボット１０を動作させる状態（手動運転）と、ロボットシステム１がロボット１０に自律的に作業を行わせる状態（自律運転）と、を切り替えることができる。手動運転の場合、ロボット１０は、操作部２１が出力したユーザ操作力に基づいて動作する。自律運転の場合、ロボット１０は、ＡＩ部４０が出力した推定操作力に基づいて動作する。
【００３５】
ユーザ操作力及び推定操作力のうち何れに基づいてロボット１０を動作させるかの選択は、操作部２１の操作を検出する上述のセンサの検出値に基づいて、ユーザが操作部２１を操作しているかに応じて自動的に行われても良い。即ち、ユーザが操作部２１を実質的に操作しているときは、切替部３１がユーザ操作力を変換部３２に出力し、そうでないときは、切替部３１は推定操作力を変換部３２に出力する。
【００３６】
変換部３２は、切替部３１から入力されたユーザ操作力又は推定操作力の何れかを、ロボット１０を動作させるための動作指令に変換して、ロボット１０及びＡＩ部４０に出力する。動作指令は、ロボット１０を制御するための制御データと言い換えることもできる。
【００３７】
ＡＩ部４０は、ロボット１０の自律動作により一連の作業を行わせるために構築された学習済モデル４３を備える。ＡＩ部４０で用いられる学習済モデル４３の形式は任意であり、例えば、ニューラルネットワークを用いたモデルを用いることができる。学習済モデル４３の構築（特に、最初の構築）は、ロボット制御装置１５において行われても良いし、他のコンピュータで行われても良い。
【００３８】
データ入力部４１は、ＡＩ部４０の入力側のインタフェースとして機能する。データ入力部４１には、状態検出センサ１１〜１３から出力されるセンサ情報が入力される。
【００３９】
推定データ出力部４２は、ＡＩ部４０の出力側のインタフェースとして機能する。推定データ出力部４２は、ＡＩ部４０が機械学習により構築したモデルに基づくデータを出力することができる。
【００４０】
本実施形態では、ＡＩ部４０は、ユーザが操作部２１によって行うロボット１０の操作を学習して、学習済モデル４３を構築する。具体的には、ＡＩ部４０には、状態検出センサ１１〜１３から入力されるセンサ情報と、操作力検出センサにより得られた操作力と、が入力される。この操作力は、上記のユーザ操作力に相当する。
【００４１】
ユーザは、例えば、部材の開口部にワークを挿入する一連の作業をロボット１０に実行させるために用いる学習済モデル４３を、ＡＩ部４０に構築させることができる。
【００４２】
具体的には、ユーザが操作部２１を操作して、例えば下記に示すようにロボット１０を動作させる。即ち、ロボット１０にワークを引き抜かせる（引抜き動作）。続いて、当該ワークを部材の上方の位置まで搬送させる（搬送動作）。次に、当該ワークを部材の開口部に挿入させる（挿入動作）。
【００４３】
ワークの挿入動作に着目して説明すると、その動作の詳細は以下のとおりである。即ち、（１）部材の上方に位置するワークを下方に移動させ（つまり、ワークを下に降ろして）、部材の面にワークを接触させる。（２）部材の面にワークを軽く押し付けつつ、部材の面に沿わせるようにして開口部の位置までワークを移動させ、開口部の内側にワークを位置させる。（３）開口部の内側にワークを位置させた状態で、ワークを下降させる。
【００４４】
以下の説明では、ロボット１０及びその周辺の状態と、それに応じてユーザが操作部２１を操作することにより得られるユーザ操作力と、を総合したものを、ロボット１０の局面と呼ぶことがある。
【００４５】
ＡＩ部４０で用いられる学習済モデル４３は、多次元空間のマップにより構成される。学習フェーズにおいて、ＡＩ部４０には、センサ情報及びユーザ操作力を総合して得られるロボット１０の局面のデータ（局面データ）が入力される。この局面データの集合が、機械学習の対象である作業データに相当する。
【００４６】
図２には、ユーザがロボット１０を操作して一連の作業を行う場合に、学習のための局面データが取得される様子が示されている。局面データは、時間的に等しい間隔又は不等間隔で、反復して取得される。各回の局面データは、状態センサの出力値と、操作力検出センサの出力値と、から構成される。状態センサの出力値は、１回の局面データの中でも、細かい時間間隔をあけて複数回取得される。一方、操作力検出センサの出力値は、１回の局面データにつき１回取得される。
【００４７】
局面データは、一連の作業を行う過程で上述のように反復して取得され、ＡＩ部４０に順次入力される。局面データは、ユーザがロボット１０を操作して一連の作業を行う過程で、様々に変化する。
【００４８】
ユーザは、操作部２１の操作を繰り返して、同一の一連の作業を反復してロボット１０に行わせることが好ましい。ＡＩ部４０は、次々に得られる局面データに相当する特徴ベクトルを、学習済モデル４３の多次元空間にプロットする。
【００４９】
学習対象の全ての局面データがＡＩ部４０に入力された後、学習済モデル４３の多次元空間にプロットされた特徴ベクトル（局面データ）を対象としてクラスタリングが行われる。クラスタリングとは、多数のデータから分布の法則を学習して、互いに特徴が似ているデータのまとまりである複数のクラスタを取得する手法である。クラスタリングの方法としては、公知の非階層クラスタリング手法を適宜用いることができる。この結果、互いに類似した局面をまとめた複数のクラスタが得られる。クラスタリングにおけるクラスタ数は、適宜定めることができる。
【００５０】
クラスタリングの結果、ＡＩ部４０が構築した学習済モデル４３は、図４に模式的に示すように、多次元空間における複数のクラスタの分布として得られる。このクラスタは、一連の動作をロボット１０が行う上で経由する特徴的な局面に対応している。
【００５１】
学習済モデル４３においては、各クラスタの時系列順が求められる。ロボット１０の一連の作業は局面データを時系列順に並べたものとして表現することができるので、この順番の情報を用いて、各クラスタの時系列順を求めることができる。
【００５２】
ＡＩ部４０は、続いて、それぞれのクラスタにおいて、当該クラスタを代表する局面データを計算により求める。以下、この代表となる局面データをノードと呼ぶことがある。ノードの求め方は様々であるが、例えば、それぞれのクラスタの重心に相当する局面データとすることができる。
【００５３】
次に、ＡＩ部４０からの推定出力について説明する。
【００５４】
推定フェーズにおいては、ある時点におけるセンサ情報が学習済モデル４３に入力される。ＡＩ部４０にセンサ情報が与えられると、学習済モデル４３は、当該センサ情報に類似する特徴を有する１又は複数のノードを求める。センサ情報には操作力検出センサの検出値が含まれていないので、センサ情報とノードの類似度を計算するとき、操作力検出センサの検出値に関する次元は無視される。類似度は、公知の計算式（例えば、ユークリッド距離）により求めることができる。
【００５５】
センサ情報に近い特徴を有するノードが求められると、学習済モデル４３は、当該ノードの局面データに含まれているユーザ操作力（言い換えれば、操作力検出センサの検出値）を求める。センサ情報に類似するノードが複数検出された場合は、複数のノードのユーザ操作力が適宜合成される。学習済モデル４３は、得られたユーザ操作力を、上述の推定操作力として出力する。この推定操作力を用いることにより、ロボット１０の自律動作を実現することができる。
【００５６】
この推定出力にあたって、ＡＩ部４０は、クラスタの時系列順の情報に基づいて、出力するユーザ操作力が、一連の作業のうちどの進捗度合いに相当するかを示す進行度を出力することができる。本実施形態では、進行度は０から１００までの範囲の値をとり、１００に近い程、一連の作業が進行していることを示す。進行度の値は、各クラスタが示す動作の順番に従って段階的かつ累積的に増加するように、予め定められる。
【００５７】
次に、ベース学習済モデル４４について詳細に説明する。
【００５８】
本実施形態のＡＩ部４０では、上述した学習済モデル４３とは異なるベース学習済モデル４４が別途に構築されている。ベース学習済モデル４４は、学習済モデル４３に含まれる代表的な基本動作（例えば、引抜き動作、搬送動作、挿入動作等）のそれぞれに対応して、複数備えられている。
【００５９】
それぞれのベース学習済モデル４４は、学習済モデル４３と全く同じ形式の多次元空間のマップとして構成されている。ベース学習済モデル４４と学習済モデル４３とは、学習するデータが異なるだけである。
【００６０】
ベース学習済モデル４４は、学習済モデル４３の場合よりも単純な動作をロボット１０に行わせるように操作部２１が操作され、これに基づいて学習が行われる。ベース学習済モデル４４は、動作毎に構築される。引抜き動作のベース学習済モデル４４は引抜き動作だけを学習し、搬送動作のベース学習済モデル４４は搬送動作だけを学習し、挿入動作のベース学習済モデル４４は挿入動作だけを学習する。
【００６１】
例えば引抜き動作のベース学習済モデル４４について考えると、学習フェーズでは、ユーザがロボット１０に引抜き動作を行わせるために操作部２１を操作し、この時に取得される局面データが、ＡＩ部４０に入力される。ＡＩ部４０は、次々に得られる局面データに相当する特徴ベクトルを、ベース学習済モデル４４の多次元空間にプロットする。その後、ベース学習済モデル４４の多次元空間にプロットされた局面データを対象として、クラスタリングが行われる。この結果、ベース学習済モデル４４は、図５の左下に模式的に示すように、多次元空間における複数のクラスタの分布として得られる。
【００６２】
各ベース学習済モデル４４の学習フェーズで操作部２１を操作する人間と、学習済モデル４３の学習フェーズで操作部２１を操作する人間とが、別であっても良い。各ベース学習済モデル４４の構築は、学習済モデル４３が構築されるコンピュータとは別のコンピュータにおいて行われても良い。
【００６３】
動作ラベル記憶部５０は、ベース学習済モデル４４が学習した動作の内容を特定する情報を、ベース学習済モデル４４に対応付けて記憶する。動作の内容を特定する情報は、典型的には、動作の名前の文字列である。例えば、引抜き動作のベース学習済モデル４４に「引抜き」という名前を付けることが考えられる。名前は、ベース学習済モデル４４が構築されるときに適宜設定される。以下、この名前を動作ラベルと呼ぶことがある。
【００６４】
ベース学習済モデル組合せ情報取得部６０は、学習済モデル４３を複数のベース学習済モデル４４の組合せで表現する場合の組合せ情報を取得する。
【００６５】
具体的に説明すると、ベース学習済モデル組合せ情報取得部６０は、先ず、複数のベース学習済モデル４４のそれぞれを学習済モデル４３と比較し、ベース学習済モデル４４が学習済モデル４３の一部と類似しているかどうかを判定する。この判定は、多次元空間におけるそれぞれのクラスタの形状／位置が類似しているか否かに基づいて行うことができる。例えば、ベース学習済モデル４４の１つのクラスタに着目し、当該クラスタの重心位置と最も近い重心位置を有する学習済モデル４３のクラスタを求め、２つのクラスタの重心間の距離を求める。ベース学習済モデル４４の全てのクラスタについて上記の処理を行い、クラスタ重心間の距離の平均値が所定値より小さければ、クラスタの分布が似ていると判断することができる。
【００６６】
ベース学習済モデル組合せ情報取得部６０は、上記の判定結果に基づいて、組合せ情報を取得する。組合せ情報は、学習済モデル４３がどのようなベース学習済モデル４４の組合せで表現することができるかについて示す情報である。
【００６７】
例えば図５の例において、学習済モデル４３の多次元空間におけるクラスタの分布の一部が、引抜き動作のベース学習済モデル４４のクラスタの分布と似ており、残りの一部が、搬送動作のベース学習済モデル４４のクラスタの分布と似ていたとする。この場合、学習済モデル４３は、引抜き動作のベース学習済モデル４４、及び、搬送動作のベース学習済モデル４４の組合せで表現できる余地があるということができる。このように、ベース学習済モデル４４との比較により、学習済モデル４３が学習した動作を分解して把握することができる。
【００６８】
学習済モデル４３及びベース学習済モデル４４のそれぞれが構築されるときの局面データは、何れも、公知の方法で正規化されている。これにより、学習済モデル４３とベース学習済モデル４４の比較を容易に行うことができる。
【００６９】
上述したとおり、学習済モデル４３においては、各クラスタの時系列順が求められている。従って、この時系列順の情報に、当該クラスタとそれぞれのベース学習済モデル４４におけるクラスタとの対応関係を当てはめることで、組合せに係るベース学習済モデル４４の時系列的な先後関係を得ることができる。これは、ロボット１０の動作の時系列順序を考慮した組合せ情報を取得できることを意味する。時系列的な先後関係は、上述の進行度を用いて表現しても良い。
【００７０】
組合せ情報を取得するためのモデルの比較は、以下のようにして行うこともできる。即ち、学習済モデル４３がロボット１０に一連の作業を行わせるときに、状態検出センサ１１〜１３を用いて、時系列でのセンサ情報を取得しておく。ベース学習済モデル組合せ情報取得部６０は、このセンサ情報を、図６に示すように、学習済モデル４３と、それぞれのベース学習済モデル４４と、に入力する。学習済モデル４３及びベース学習済モデル４４は一連の推定操作力をそれぞれ出力するが、ベース学習済モデル組合せ情報取得部６０は、この推定出力同士を比較することで、学習済モデル４３とベース学習済モデル４４とが類似している時系列的な区間があるか否かを判断する。以上により、ロボット１０の動作の時系列順序を考慮した組合せ情報が得られる。
【００７１】
なお、上述の時系列でのセンサ情報を入力した場合に、学習済モデル４３及びベース学習済モデル４４のそれぞれが推定操作力を出力するときに用いたクラスタ（以下、使用クラスタという。）を求め、この使用クラスタ同士が類似しているか否かの判断が併せて行われても良い。使用クラスタは、図４で説明した推定フェーズにおいて、入力されるセンサ情報に近いノードが属するクラスタを意味する。これにより、モデルの比較をより適切に行うことができる。
【００７２】
組合せ情報を取得した後、ロボット制御装置１５は、学習済モデル４３を表現するベース学習済モデル４４のそれぞれに対応する動作ラベルを、ユーザインタフェース部２０の表示部２２に表示することができる。
【００７３】
上述のとおり、ベース学習済モデル組合せ情報取得部６０は、ロボット１０の動作の時系列順序を考慮した組合せ情報を取得する。これを利用して、ロボット制御装置１５は図７の上側に示すように、例えばロボット１０の動作順で上から下となるように動作ラベルを並べて表示部２２に表示することができる。この表示を見ることで、ユーザは、学習済モデル４３が学習した動作がどのような組合せであるか（動作の時系列順序も含む）について、容易に理解することができる。
【００７４】
本実施形態では、図７の上側に示すように、各動作ラベルを繋ぐように下向きの矢印が表示され、作業フロー図のような表示が実現されている。これにより、ユーザは動作の順序を直感的に理解することができる。
【００７５】
なお、ベース学習済モデル４４が表現する動作が、更に細かい動作の組合せとして分解できる場合もある。この分解は、当該細かい動作を学習することにより構築された学習済モデル（サブベース学習済モデル）をデータ入力部４１が備えることで、実現することができる。例えば、「挿入」のベース学習済モデル４４が学習している動作を、上述の（１）〜（３）で説明した細かい動作に従って、「下に降ろす」という動作と、「押付け探索」という動作と、「穴内下降」という動作と、に更に分解できたとする。この場合、ロボット制御装置１５は、図７の上側等に示すように、当該動作に対応するサブベース学習済モデルの動作ラベルを表示部２２に表示することができる。これにより、ユーザは、学習済モデル４３が学習した動作を階層的に分解して把握することができる。
【００７６】
次に、確信度について説明する。確信度は、ロボット１０の動作が確からしいかどうか（言い換えれば、学習済モデル４３が推定する出力が確からしいかどうか）について評価するために用いるパラメータである。
【００７７】
ＡＩ部４０の学習済モデル４３は、ロボット１０及びその周辺の状態と、その時に行われたユーザの操作によるユーザ操作力と、の対応関係を予め学習している。言い換えれば、学習済モデル４３は、既知の多数の状態から獲得した法則に基づいて動作する。機械学習モデルが本来有する汎化能力により、未知の状況に対しても、学習済モデル４３が適切な推定操作力を出力することが期待される。しかし、人間が今までの過去の経験から予測が難しいような全く新規の状況におかれたときに、確信をもって行動しにくいのと同様に、学習済モデル４３の立場に立てば、今までに学習した既知の状態から遠い状態である程、推定結果に対する確信を持ちにくいということができる。確信度は、この意味で、推定の確からしさを示すものである。
【００７８】
本実施形態において、学習済モデル４３の推定フェーズでは、学習済モデル４３にセンサ情報が入力される。このセンサ情報が、複数のクラスタのノードのうち何れかに類似していれば、当該状態は過去に経験した状態に似ているから、推定が確からしくなると考えられる。この考え方に基づいて、確信度は、学習済モデル４３に入力されるセンサ情報に対して最も類似するノードを求め、当該ノードに対するセンサ情報の類似度を用いて計算することができる。
【００７９】
図７の下側に示すように、ロボット制御装置１５は、ロボット１０の動作と、確信度と、の関係を表示部２２に表示させることができる。図７の例では、横軸を作業順とし、縦軸を確信度の値とするグラフが表示部２２に表示されている。
【００８０】
ユーザは、作業フローでの各動作の確信度に着目して、学習が不十分である動作（言い換えれば、確信度の値が低い修正すべき動作）を容易に確認することができる。
【００８１】
ロボット制御装置１５は、確信度の値が所定値以上である動作を示す動作ラベルと、確信度の値が所定値未満である動作を示す動作ラベルと、を異なる表示態様で表示させても良い。例えば、確信度が低い動作ラベルについて、色を異ならせたり、マークを付けたりすることで、他よりも目立つように強調して表示することが考えられる。
【００８２】
図７の下側のグラフでは、「押付け探索」という動作について確信度が十分でないことが、通常とは違う色で動作ラベルを表示することによって示されている。なお、図面の都合上、色の違いはハッチングで表現されている。これにより、ユーザは、学習が不十分である動作を一層容易に確認することができる。
【００８３】
得られた確信度に対応する動作ラベルは、以下のようにして取得することができる。即ち、ロボット制御装置１５は、確信度を取得するときに学習済モデル４３に入力された時系列でのセンサ情報を、当該学習済モデル４３の動作を分解した動作に係るベース学習済モデル４４に対してもそれぞれ入力する。学習済モデル４３及びベース学習済モデル４４はそれぞれ推定操作力を出力するが、ロボット制御装置１５は、一連の推定出力が互いに類似している時系列的な区間を求める。この対応関係に基づいて、１つの動作ラベルに対応する確信度の区間（言い換えれば、動作の時系列的位置）を求めることができる。
【００８４】
本実施形態では、表示部２２に表示される動作ラベルをユーザが選択して所定の操作を行うことによって、学習済モデル４３の学習内容から、選択された動作ラベルに対応する動作を削除することができる。動作ラベルを選択することは、動作の時系列的位置を指示することと実質的に同じである。学習内容の削除は、学習済モデル４３において形成されているクラスタのうち、選択された動作ラベルに対応するベース学習済モデル４４のクラスタに相当する部分を削除することで実現することができる。
【００８５】
ユーザは、確信度の値が低い動作を削除した上で、新たな局面データ（追加作業データとしての追加局面データ）を用いて、学習が不十分である動作を修正することができる。これは、学習済モデル４３の学習内容のうち、一部の動作に相当する学習内容を置換することに相当する。このように、ユーザは、表示部２２に表示される動作ラベルに着目して、学習済モデル４３のうちで作業フローの対応位置を指定して修正作業を行うことができるので、フィルム映像の編集のような感覚で、修正作業を効率的に行うことができる。
【００８６】
なお、修正に用いる局面データは、修正する動作に関するデータを含んでいれば十分であり、一連の作業のうち一部に相当するものでも良い。従って、再学習のためのデータ収集の手間を大幅に軽減することができる。
【００８７】
このように、本実施形態のロボット制御装置１５は、学習済モデル４３の学習内容を動作ラベル単位で編集することができる。この結果、直感的で分かり易い操作が可能になっている。
【００８８】
ところで、構築された学習済モデル４３の出力を確認するために、評価用の一連の局面データがＡＩ部４０に入力されることがある。このとき、ロボット制御装置１５が表示部２２に、現在の局面データから推定される動作に対応する進行度を表示するとともに、当該動作に対応する動作ラベルを他と異なる表示態様で表示しても良い。この場合、仮に学習済モデル４３の学習が不十分であるときに、どの動作の部分で問題が生じているかをユーザは表示部２２を見て容易に把握することができる。
【００８９】
本実施形態では、ユーザは、ロボット１０をリアルタイムで操作して局面データを生成し、学習済モデル４３を構築させ、構築した学習済モデル４３に基づくロボット１０の動作の組合せを表示部２２に表示させることができる。従って、ユーザは、ロボット１０を操作した際の操作感覚が残っているうちに、学習済モデル４３が表現する動作の組合せがユーザの意図通りになっているかどうかについて確認することができる。従って、ユーザは、どのような動作が学習されたのかについて、その場で容易に把握することができる。また、ロボット１０を操作した感覚が新鮮なうちに、ユーザは当該感覚を活かして、学習済モデル４３の修正作業を必要に応じて機動的に行うことができる。
【００９０】
次に、学習済モデル４３に追加学習を行わせるときに有用なパラメータである一致度について説明する。
【００９１】
一致度は、未学習の局面データが学習済モデル４３に入力された場合に、当該学習済モデル４３が出力する出力データと、未学習の局面データに含まれる出力データと、の一致の度合いについて評価するためのパラメータである。この一致度は、ロボット制御装置１５が備えるデータ比較部７０が比較処理を行うことによって取得される。
【００９２】
ロボット制御装置１５は、一致度を、ロボット１０の動作の時系列との関係で表示部２２に表示することができる。例えば、横軸を作業順とし、縦軸を一致度の値とするグラフを、表示部２２に表示することが考えられる。ユーザは、表示される一致度を見ることで、学習済モデル４３のどの動作が未学習の局面データと一致しており、どの動作が一致していないかを、容易に理解することができる。従って、ユーザは、例えば、上述の追加局面データを学習済モデル４３に追加学習させることが適切かどうかを事前に予測することができ、便利である。
【００９３】
以上に説明したように、本実施形態のロボット制御装置１５は、学習済モデル４３と、動作切替部３０と、ベース学習済モデル４４と、動作ラベル記憶部５０と、ベース学習済モデル組合せ情報取得部６０と、表示部２２と、を備える。学習済モデル４３は、人間がロボット１０を操作して一連の作業を行わせる場合の、当該ロボット１０及びその周辺の状態を入力データとし、それに応じた人間の操作を出力データとする作業データを学習することにより構築されている。動作切替部３０は、ロボット１０及びその周辺の状態に関する入力データが学習済モデル４３に入力された場合に、それに応じて推定される人間の操作に関する出力データを学習済モデル４３から得ることにより、前記作業を行わせるためのロボット１０の制御データを得る。ベース学習済モデル４４は、人間がロボット１０を操作して前記一連の作業よりも単純な動作を行わせる場合の、当該ロボット１０及びその周辺の状態を入力データとし、それに応じた人間の操作又は当該操作による当該ロボット１０の動作を出力データとする作業データを学習することにより、複数の前記動作毎に構築されている。動作ラベル記憶部５０は、前記動作の内容を表現する情報を含む動作ラベルを、ベース学習済モデル４４に対応付けて記憶する。ベース学習済モデル組合せ情報取得部６０は、学習済モデル４３とそれぞれのベース学習済モデル４４との間の類似性に基づいて、学習済モデル４３を複数のベース学習済モデル４４の組合せで表現する場合の組合せ情報を取得する。表示部２２は、前記組合せ情報に基づいて、複数の組合せによって学習済モデル４３を表現するベース学習済モデル４４のそれぞれに対応する動作ラベルを表示する。
【００９４】
これにより、一連の作業を学習済モデル４３に学習させた場合に、ユーザは、当該作業がどのような動作の組合せとして学習されていると言えるかを、表示された動作ラベルに基づいて容易に把握することができる。従って、学習済モデル４３の透明性が高まり、ユーザは納得感を持って学習済モデル４３をロボット制御に用いることができる。
【００９５】
また、本実施形態のロボット制御装置１５において、ベース学習済モデル組合せ情報取得部６０は、学習済モデル４３を複数のベース学習済モデル４４の組合せで表現する場合の、複数のベース学習済モデル４４の時系列での関係を取得する。表示部２２は、複数のベース学習済モデル４４の時系列での関係を、前記動作ラベルを用いて表示する。
【００９６】
これにより、ユーザは、動作の時間的順序の関係を容易に理解することができる。
【００９７】
また、本実施形態のロボット制御装置１５において、学習済モデル４３は、前記入力データが当該学習済モデル４３に入力された場合に、それに応じて出力される前記出力データが、前記一連の作業のうちどの進捗度合いに相当するかを示す進行度を出力可能である。ベース学習済モデル組合せ情報取得部６０は、前記進行度に基づいて、複数のベース学習済モデル４４の時系列での関係を取得可能である。
【００９８】
これにより、動作の時間的順序を分かり易い形で取り扱うことができる。
【００９９】
また、本実施形態のロボット制御装置１５において、学習済モデル４３及びベース学習済モデル４４は、学習対象の作業データを特徴に応じてクラスタリング可能である。ベース学習済モデル組合せ情報取得部６０は、学習済モデル４３におけるクラスタリングの結果と、ベース学習済モデル４４におけるクラスタリングの結果と、を比較することにより、学習済モデル４３とそれぞれのベース学習済モデル４４との間の類似性を判断する。
【０１００】
これにより、学習済モデル４３とベース学習済モデル４４とを適切に比較することができる。
【０１０１】
また、本実施形態のロボット制御装置１５は、データ比較部７０を備える。データ比較部７０は、未学習の局面データのうち、ロボット１０及びその周辺の状態のデータが学習済モデル４３に入力された場合に、当該学習済モデル４３が出力する推定操作力と、未学習の前記局面データに含まれるユーザ操作力と、を比較して一致度を取得する。表示部２２は、前記一致度を、ロボット１０の動作の時系列との関係で表示する。
【０１０２】
これにより、ユーザは、学習済モデル４３のどの動作が未学習の局面データと一致しており、どの動作が一致していないかを、容易に理解することができる。
【０１０３】
また、本実施形態のロボット制御装置１５において、未学習の前記局面データは、前記一連の作業のうち少なくとも一部を行わせるためにロボット１０を人間が操作することでリアルタイムに生成される局面データとすることができる。
【０１０４】
この場合、学習済モデル４３の出力を、人間の操作とその場で照らし合わせて確認することができる。従って、人間が操作した感覚が残っている間に、学習済モデル４３の動作と比較することができるので、検討作業を直感的に行うことができる。
【０１０５】
また、本実施形態のロボット制御装置１５において、学習済モデル４３は、一連の前記作業のうち一部の動作の時系列的位置を指定することで、当該学習済モデル４３において当該動作に相当する部分を削除可能である。
【０１０６】
これにより、学習済モデル４３を、一連の作業の一部を構成する動作毎に柔軟に編集することができる。
【０１０７】
また、本実施形態のロボット制御装置１５において、学習済モデル４３は、前記入力データの入力に応じて学習済モデル４３が前記出力データを出力する場合の、推定の確からしさを取得する確信度を出力可能である。表示部２２は、動作ラベルとともに、前記確信度を表示する。
【０１０８】
これにより、入力データが示す状態を学習済モデルが想定しているか否かを、ユーザが容易に理解することができる。
【０１０９】
また、本実施形態では、以下の制御データ取得工程と、動作ラベル記憶工程と、ベース学習済モデル組合せ情報取得工程と、情報表示工程と、を含むロボット制御方法によって、ロボットの制御が行われている。制御データ取得工程では、ロボット１０及びその周辺の状態に関する入力データが学習済モデル４３に入力された場合に、それに応じて推定される人間の操作に関する出力データを学習済モデル４３から得ることにより、前記作業を行わせるためのロボット１０の制御データを得る。動作ラベル記憶工程では、前記動作の内容を表現する情報を含む動作ラベルを、ベース学習済モデル４４に対応付けて記憶する。ベース学習済モデル組合せ情報取得工程では、学習済モデル４３とそれぞれのベース学習済モデル４４との間の類似度を取得することにより、学習済モデル４３を複数のベース学習済モデル４４の組合せで表現する場合の組合せ情報を取得する。情報表示工程では、前記組合せ情報に基づいて、複数の組合せによって学習済モデル４３を表現するベース学習済モデル４４のそれぞれに対応する前記動作ラベルを表示する。
【０１１０】
これにより、一連の作業を学習済モデル４３に学習させた場合に、ユーザは、当該作業がどのような動作の組合せとして学習されていると言えるかを、表示された動作ラベルに基づいて容易に把握することができる。従って、学習済モデル４３の透明性が高まり、ユーザは納得感を持って学習済モデル４３をロボット制御に用いることができる。
【０１１１】
以上に本発明の好適な実施の形態を説明したが、上記の構成は例えば以下のように変更することができる。
【０１１２】
学習済モデル４３は、センサ情報と、ユーザ操作力と、の関係を学習するのに代えて、センサ情報と、ロボット１０への動作指令と、の関係を学習するように構成しても良い。
【０１１３】
動作ラベルは、作業フロー図のような図形を用いた表示に限定されず、例えば表形式で表示されても良い。また、動作ラベルの文字列を単に並べて表示しても良い。
【０１１４】
動作ラベルは、時系列の情報に従った順番で表示されることに代えて、順不同の形で表示することもできる。
【０１１５】
動作ラベルは、動作の内容を特定可能な目印であれば良い。動作ラベルは、「引抜き」等のような文字列とすることに代えて、例えばアイコン等の画像とすることもできる。
【０１１６】
ロボット制御装置１５は、情報出力部として、表示部２２に代えて又は加えて音声出力部を備えても良い。そして、ロボット制御装置１５は、音声出力に基づいて、動作ラベルを出力しても良い。例えば、ロボット制御装置１５は、音声合成機能によって動作ラベルを読み上げても良い。また、ロボット制御装置１５は、動作ラベルを読み上げる際に、確信度の値や一致度の値を読み上げても良い。
【０１１７】
学習済モデル４３の学習内容の編集は、動作ラベル毎に行うことに代えて、時系列を直接指定して編集しても良い。例えば、図７の下側に示すグラフの横軸のうち一部を指定して、その部分の動作を削除／修正することが考えられる。
【０１１８】
ロボット制御装置１５は、強化学習に基づいて、ロボット１０の動作を修正しても良い。
【０１１９】
ロボット１０及びその周辺の状態を取得するためのセンサ（状態センサ）として、動作センサ１１、力センサ１２及びカメラ１３以外のセンサが用いられても良い。
【０１２０】
操作部２１に、操作力検出センサに代えて、又はそれに加えて、操作位置検出センサを設けても良い。操作位置検出センサも操作力検出センサと同様に、人間の操作を検出するものであるということができる。
【０１２１】
操作部２１が遠隔操作に用いるマスターアームであり、かつ、ロボット１０がスレーブアームであるロボットシステム１であっても良い。この場合、ＡＩ部４０は、ユーザによるマスターアームの操作に基づいて学習した学習済モデル４３及びベース学習済モデル４４を構築することができる。
【符号の説明】
【０１２２】
１  ロボットシステム
１０  ロボット
１１  動作センサ
１２  力センサ
１３  カメラ
１５  ロボット制御装置
２２  表示部（情報出力部）
３０  動作切替部（制御データ取得部）
４３  学習済モデル
４４  ベース学習済モデル
５０  動作ラベル記憶部
６０  ベース学習済モデル組合せ情報取得部
７０  データ比較部（比較部）
【図１】
2020104215.tif 000003
【図２】
2020104215.tif 000004
【図３】
2020104215.tif 000005
【図４】
2020104215.tif 000006
【図５】
2020104215.tif 000007
【図６】
2020104215.tif 000008
【図７】
2020104215.tif 000009