IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 古河電気工業株式会社の特許一覧 ▶ 国立大学法人 東京大学の特許一覧

特許7659260評価装置、システム、評価方法およびプログラム
<>
  • 特許-評価装置、システム、評価方法およびプログラム 図1
  • 特許-評価装置、システム、評価方法およびプログラム 図2
  • 特許-評価装置、システム、評価方法およびプログラム 図3
  • 特許-評価装置、システム、評価方法およびプログラム 図4
  • 特許-評価装置、システム、評価方法およびプログラム 図5
  • 特許-評価装置、システム、評価方法およびプログラム 図6
  • 特許-評価装置、システム、評価方法およびプログラム 図7
  • 特許-評価装置、システム、評価方法およびプログラム 図8
  • 特許-評価装置、システム、評価方法およびプログラム 図9
  • 特許-評価装置、システム、評価方法およびプログラム 図10
  • 特許-評価装置、システム、評価方法およびプログラム 図11
  • 特許-評価装置、システム、評価方法およびプログラム 図12
  • 特許-評価装置、システム、評価方法およびプログラム 図13
  • 特許-評価装置、システム、評価方法およびプログラム 図14
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-04-01
(45)【発行日】2025-04-09
(54)【発明の名称】評価装置、システム、評価方法およびプログラム
(51)【国際特許分類】
   G06N 20/00 20190101AFI20250402BHJP
【FI】
G06N20/00 130
【請求項の数】 10
(21)【出願番号】P 2021021317
(22)【出願日】2021-02-12
(65)【公開番号】P2022123781
(43)【公開日】2022-08-24
【審査請求日】2023-12-13
(73)【特許権者】
【識別番号】000005290
【氏名又は名称】古河電気工業株式会社
(73)【特許権者】
【識別番号】504137912
【氏名又は名称】国立大学法人 東京大学
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】鈴木 翔大
(72)【発明者】
【氏名】宮崎 浩一
(72)【発明者】
【氏名】森木 和也
(72)【発明者】
【氏名】仁保 隆嘉
(72)【発明者】
【氏名】杉田 直彦
(72)【発明者】
【氏名】長 隆之
【審査官】渡辺 順哉
(56)【参考文献】
【文献】特開2020-191022(JP,A)
【文献】山岸 拓海 ほか,サッカーエージェントによる敵の行動モデルの模倣学習,ゲームプログラミングワークショップ2019論文集,2019年11月01日,pp.94-100
【文献】HO, Jonathan ほか,Generative Adversarial Imitation Learning,arXiv[online],2016年06月10日,pp.1-14,[retrieved on 2024.10.17], Retrieved from the Internet: <URL: https://arxiv.org/abs/1606.03476>
(58)【調査した分野】(Int.Cl.,DB名)
G06N 3/00-99/00
(57)【特許請求の範囲】
【請求項1】
教師データとして、状態を表す状態ベクトルと前記状態における行動を表す行動ベクトルとを対応付けた構造を有する行動データを適用した模倣学習の出力を評価する評価装置であって、
所定の行動データと前記教師データとに基づいて、前記模倣学習の出力の評価を表す数値を評価情報として生成する評価部を備え
前記評価部は、前記所定の行動データとして、前記模倣学習の出力に含まれる推測行動データを用い、前記評価情報として、前記模倣学習の習熟度を示す評価値を生成し、
前記評価部は、前記評価値の生成において、前記教師データに含まれる状態ベクトルの要素と、前記推測行動データに含まれる推測状態ベクトルの要素との、非負実数値関数である距離関数で定義される距離に基づいて、前記評価値を生成する
評価装置。
【請求項2】
教師データとして、状態を表す状態ベクトルと前記状態における行動を表す行動ベクトルとを対応付けた構造を有する行動データを適用した模倣学習の出力を評価する評価装置であって、
所定の行動データと前記教師データとに基づいて、前記模倣学習の出力の評価を表す数値を評価情報として生成する評価部を備え、
前記評価部は、前記評価情報を生成するための評価用モデルを生成するモデル生成部を備え、
前記モデル生成部は、複数の行動データのそれぞれに含まれる状態ベクトルの要素と該要素に対応する行動ベクトルの要素との組みについて、類似性を指標としてデータ処理を行い、新たな行動データを生成し、
前記類似性は、前記複数の行動データのそれぞれに含まれる状態ベクトルの要素の間の距離を指標として、前記新たな行動データでは、前記距離に基づき要素が除去されている
価装置。
【請求項3】
前記モデル生成部は、行動データと、前記行動データに対する評価値とを数理モデルに基づいて対応させた評価用データを生成し、当該評価用データを用いて、前記評価用モデルを生成する
請求項に記載の評価装置。
【請求項4】
前記評価用モデルは、教師有り機械学習により生成される
請求項に記載の評価装置。
【請求項5】
請求項1~のいずれか一つに記載の評価装置と、
模倣学習モデルを備え、前記模倣学習の出力を生成する学習装置と、
を備えたシステム。
【請求項6】
前記学習装置は、柔軟物の巻取装置の制御装置を構成する
請求項に記載のシステム。
【請求項7】
情報処理装置が、教師データとして、状態を表す状態ベクトルと前記状態における行動を表す行動ベクトルとを対応付けた構造を有する行動データを適用した模倣学習の出力を評価する評価方法であって、
所定の行動データと前記教師データとに基づいて、前記模倣学習の出力の評価を表す数値を評価情報として生成する評価ステップを備え
前記評価ステップでは、前記所定の行動データとして、前記模倣学習の出力に含まれる推測行動データを用い、前記評価情報として、前記模倣学習の習熟度を示す評価値を生成し、
前記評価値の生成においては、前記教師データに含まれる状態ベクトルの要素と、前記推測行動データに含まれる推測状態ベクトルの要素との、非負実数値関数である距離関数で定義される距離に基づいて、前記評価値を生成する
評価方法。
【請求項8】
情報処理装置が、教師データとして、状態を表す状態ベクトルと前記状態における行動を表す行動ベクトルとを対応付けた構造を有する行動データを適用した模倣学習の出力を評価する評価方法であって、
所定の行動データと前記教師データとに基づいて、前記模倣学習の出力の評価を表す数値を評価情報として生成する評価ステップを備え、
前記評価ステップは、前記評価情報を生成するための評価用モデルを生成するモデル生成ステップを備え
前記モデル生成ステップでは、複数の行動データのそれぞれに含まれる状態ベクトルの要素と該要素に対応する行動ベクトルの要素との組みについて、類似性を指標としてデータ処理を行い、新たな行動データを生成し、
前記類似性は、前記複数の行動データのそれぞれに含まれる状態ベクトルの要素の間の距離を指標として、前記新たな行動データでは、前記距離に基づき要素が除去されている
価方法。
【請求項9】
教師データとして、状態を表す状態ベクトルと前記状態における行動を表す行動ベクトルとを対応付けた構造を有する行動データを適用した模倣学習の出力を評価するステップを実行させるプログラムであって、
前記ステップは、所定の行動データと前記教師データとに基づいて、前記模倣学習の出力の評価を表す数値を評価情報として生成する評価ステップを備え
前記評価ステップでは、前記所定の行動データとして、前記模倣学習の出力に含まれる推測行動データを用い、前記評価情報として、前記模倣学習の習熟度を示す評価値を生成し、
前記評価値の生成においては、前記教師データに含まれる状態ベクトルの要素と、前記推測行動データに含まれる推測状態ベクトルの要素との、非負実数値関数である距離関数で定義される距離に基づいて、前記評価値を生成する
プログラム。
【請求項10】
教師データとして、状態を表す状態ベクトルと前記状態における行動を表す行動ベクトルとを対応付けた構造を有する行動データを適用した模倣学習の出力を評価するステップを実行させるプログラムであって、
前記ステップは、所定の行動データと前記教師データとに基づいて、前記模倣学習の出力の評価を表す数値を評価情報として生成する評価ステップを備え、
前記評価ステップは、前記評価情報を生成するための評価用モデルを生成するモデル生成ステップを備え、
前記モデル生成ステップでは、複数の行動データのそれぞれに含まれる状態ベクトルの要素と該要素に対応する行動ベクトルの要素との組みについて、類似性を指標としてデータ処理を行い、新たな行動データを生成し、
前記類似性は、前記複数の行動データのそれぞれに含まれる状態ベクトルの要素の間の距離を指標として、前記新たな行動データでは、前記距離に基づき要素が除去されている
プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、評価装置、システム、評価方法およびプログラムに関する。
【背景技術】
【0002】
物理モデルで表現することが困難な制御を自動化する技術として、模倣学習が知られている。たとえば、特許文献1では、環境の状態を表す状態ベクトルとその状態において行う行動ベクトルとを対応づけた行動データを取得して模倣学習を行い、模倣学習の結果を用いて或る状態において行うべきと推測される行動を出力する技術が開示されている。また、特許文献2では、模倣学習などを用いた電力・通信ケーブルの自動整列巻の技術が開示されている。模倣学習では、たとえば習熟したオペレータの行動を教師データとしての行動データとし、この教師データが適正に模倣された推測データが結果として出力されることが望ましい。
【先行技術文献】
【特許文献】
【0003】
【文献】国際公開第2019/150452号
【文献】国際公開第2020/027154号
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、模倣学習の結果として出力された推測の行動データが、どの程度オペレータを模倣できているのかを定量的に確認する手法が確立していない。そのため、推測データの模倣の程度の評価は、熟練のオペレータなどのように、或る状態において行うべき行動に習熟している者が行う必要があり、評価の客観性が低いおそれがあった。また、模倣の程度の評価が未確立の状態の場合、模倣の程度が低い推測行動データが誤って制御に使用される場合があり、誤制御による安全上の問題が生じる場合もある。
【0005】
本発明は、上記に鑑みてなされたものであって、模倣学習の結果を客観的に評価できる評価装置、これを用いたシステム、評価方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【0006】
上述した課題を解決し、目的を達成するために、本発明の一態様は、教師データとして、状態を表す状態ベクトルと前記状態における行動を表す行動ベクトルとを対応付けた構造を有する行動データを適用した模倣学習の出力を評価する評価装置であって、所定の行動データと前記教師データとに基づいて、前記模倣学習の出力の評価を表す数値を評価情報として生成する評価部を備える評価装置である。
【0007】
前記評価部は、前記所定の行動データとして、前記模倣学習の出力に含まれる推測行動データを用い、前記評価情報として、前記模倣学習の習熟度を示す評価値を生成するものでもよい。
【0008】
前記評価部は、前記教師データに含まれる状態ベクトルの要素と、前記推測行動データに含まれる推測状態ベクトルの要素との距離に基づいて、前記評価値を生成するものでもよい。
【0009】
前記評価部は、前記評価情報を生成するための評価用モデルを生成するモデル生成部を備えるものでもよい。
【0010】
前記モデル生成部は、複数の行動データのそれぞれに含まれる状態ベクトルの要素と該要素に対応する行動ベクトルの要素との組みについて、類似性を指標としてデータ処理を行い、新たな行動データを生成するものでもよい。
【0011】
前記類似性は、前記複数の行動データのそれぞれに含まれる状態ベクトルの要素の間の距離を指標として、前記新たな行動データでは、前記距離に基づき要素が除去されているものでもよい。
【0012】
前記モデル生成部は、行動データと、前記行動データに対する評価値とを数理モデルに基づいて対応させた評価用データを用いて、前記評価用モデルを生成するものでもよい。
【0013】
前記評価用モデルは、教師有り機械学習により生成されるものでもよい。
【0014】
本発明の一態様は、前記評価装置と、模倣学習モデルを備え、前記模倣学習の出力を生成する学習装置と、を備えたシステムである。
【0015】
前記学習装置は、柔軟物の巻取装置の制御装置を構成するものでもよい。
【0016】
本発明の一態様は、教師データとして、状態を表す状態ベクトルと前記状態における行動を表す行動ベクトルとを対応付けた構造を有する行動データを適用した模倣学習の出力を評価する評価方法であって、所定の行動データと前記教師データとに基づいて、前記模倣学習の出力の評価を表す数値を評価情報として生成する評価ステップを備える評価方法である。
【0017】
前記評価ステップは、前記所定の行動データとして、前記模倣学習の出力に含まれる推測行動データを用い、前記評価情報として、前記模倣学習の習熟度を示す評価値を生成するものでもよい。
【0018】
前記評価ステップは、前記評価情報を生成するための評価用モデルを生成するモデル生成ステップを備えるものでもよい。
【0019】
本発明の一態様は、教師データとして、状態を表す状態ベクトルと前記状態における行動を表す行動ベクトルとを対応付けた構造を有する行動データを適用した模倣学習の出力を評価するステップを実行させるプログラムであって、前記ステップは、所定の行動データと前記教師データとに基づいて、前記模倣学習の出力の評価を表す数値を評価情報として生成するステップを備えるプログラムである。
【発明の効果】
【0020】
本発明によれば、模倣学習の結果を客観的に評価できるという効果を奏する。
【図面の簡単な説明】
【0021】
図1図1は、実施形態1に係る評価装置を備えたシステムの構成を示す図である。
図2図2は、評価装置および学習装置のそれぞれを構成することができる情報処理装置の構成の一例を示す図である。
図3図3は、行動データおよび推測行動データの一例を示す図である。
図4図4は、評価装置が実行する処理の一例を示すフロー図である。
図5図5は、図4における評価情報の生成処理の一例を示すフロー図である。
図6図6は、選択されたデータの一例を示す説明図である。
図7図7は、実施形態2に係る評価装置を備えたシステムの構成を示す図である。
図8図8は、評価装置が実行する制御の一例を示すフロー図である。
図9図9は、低習熟度データの生成の一例を示す説明図である。
図10図10は、低習熟度データの良質化の説明図である。
図11図11は、低習熟度データの良質化処理の一例を示すフロー図である。
図12図12は、評価用データの一例を示す図である。
図13図13は、実施形態3に係るシステムの構成を示す図である。
図14図14は、図13に示すシステムの動作の一例の説明図である。
【発明を実施するための形態】
【0022】
以下に、図面を参照して、本発明の実施形態について説明する。なお、以下に説明する実施形態によって本発明が限定されるものではない。さらに、図面の記載において、同一の部分には適宜同一の符号を付している。また、図面は模式的なものであり、各要素の寸法の関係、各要素の比率等は、現実と異なる場合がある。さらに、図面の相互間においても、互いの寸法の関係や比率が異なる部分が含まれている場合がある。
【0023】
(実施形態1)
図1は、実施形態1に係る評価装置を備えたシステムの構成を示す図である。実施形態1に係る評価装置10は、学習装置20とともにシステム100を構成している。学習装置20は、模倣学習を行ってその結果を出力するとともに模倣学習済モデルを生成し、評価装置10は、学習装置20の模倣学習の出力を評価する。
【0024】
[装置の構成]
図2は、評価装置10および学習装置20のそれぞれを構成することができる情報処理装置の構成の一例を示す図である。情報処理装置30は、プロセッサ31と、メモリ32と、インターフェイス33と、を備えている。
【0025】
プロセッサ31は、たとえばCPU(Central Processing Unit)、ASIC(Application Specific Integrated Circuit)、FPGA(Field-Programmable Gate Array)、DSP(Digital Signal Processor)、GPU(Graphics Processing Unit)などを含んでおり、制御のための各種演算処理を行う。メモリ32は、プロセッサ31が演算処理を行うために使用する各種プログラムやデータ等が格納されるROMなどの記憶部と、プロセッサ31が演算処理を行う際の作業スペースやプロセッサ31の演算処理の結果等を記憶する等のために使用されるRAMなどの記憶部とを備えている。メモリ32は、HDD(Hard Disk Drive)やSSD(Solid State Drive)などの補助記憶装置を備えていてもよい。
【0026】
インターフェイス33は、情報処理装置30と、入出力デバイスや通信ネットワークとを接続する。インターフェイス33は、マウスなどの入力デバイスやディスプレイなどの出力デバイスと接続するインターフェイスボード、有線または無線により情報通信を行う通信ボードなどを含んでいる。通信ネットワークはたとえばLAN(Local Area Network)である。
【0027】
図1に戻って、評価装置10は、機能部として、取得部11と、評価部12と、出力部13とを備える。学習装置20は、機能部として、取得部21と、学習部22と、出力部23とを備える。これらの機能部は、たとえば、情報処理装置30のプロセッサ31がプログラムを実行することによってハードウェアとソフトウェアとが協働して実現されてもよいし、情報処理装置30のハードウェアの機能として実現されてもよい。
【0028】
[学習装置の機能]
はじめに学習装置20の各機能部の機能について説明する。学習装置20において、取得部21は、たとえばインターフェイス33を経由して、模倣学習のために使用する行動データを取得する。
【0029】
図3(a)を参照して行動データについて説明する。行動データは、状態を表す状態ベクトルと、その状態における行動を表す行動ベクトルとを対応付けた構造を有する。図3(a)の例では、行動データAはテーブルデータ形式である。行動データAにおいて、Asc(state current)は状態ベクトルであり、状態を表すパラメータである状態要素を成分とする。Aac(action current)は行動ベクトルであり、行動を表すパラメータである行動要素を成分とする。状態ベクトルは(Asc1、Asc2、・・・)で表され、行動ベクトルは(Aac1、Aac2、・・・)で表される。そして、状態要素Asc1で表される状態における行動を表す行動要素がAac1である。
【0030】
さらに、状態要素Asc1が実行されることによって遷移した状態を表すのが状態要素Asc2である。たとえば、状態要素Asc1が制御対象の初期の位置を表し、行動要素Aac1が制御対象を移動させる距離を表す場合、後述するAsn(state next)1について、Asn1=Asc2=Asc1+Aac1が成り立つ。また、m、kを2以上の整数として、状態ベクトルおよび行動ベクトルがm次元であるとすると、m以下のkにおいて、Asn(k-1)=Asck=Asc(k-1)+Aac(k―1)が成り立つ。
【0031】
以下では、たとえばAsc(k-1)を現在状態要素と記載し、AsckをAsn(k-1)と記載し、かつ次状態要素と記載する場合がある。
【0032】
取得部21は、模倣学習で使用する行動データとしてたとえば行動データAを取得する。行動データAは、たとえば、ケーブルの整列巻装置を手動制御する場合に、熟練したオペレータが良好な整列巻きを実行したときの制御行動を示したデータである。
【0033】
学習部22は、取得部21が取得した行動データを教師データとして適用して模倣学習を行い、模倣学習済モデルを生成するとともに、当該模倣学習済モデルを適用して推測した行動データ(推測行動データ)を生成する。なお、推測行動データを生成する場合は、初期値としての状態要素はインターフェイス33を経由して外部から入力されてもよいし、メモリ32から読み出してもよい。
【0034】
出力部23は、学習部22が生成した推測行動データを出力し、たとえばインターフェイス33を経由して表示したり外部に送信したりする。
【0035】
図3(b)を参照して推測行動データについて説明する。図3(a)の例では、推測行動データBにおいて、Bscは推測された推測状態要素を成分とする推測状態ベクトルである。ただし、Bsc1だけは初期値として与えられるが、便宜上推測状態要素と定義する。なお、Bsc1としてはAsc1が与えられてもよい。Bacは推測行動ベクトルであり、推測行動を表すパラメータである推測状態要素を成分とする。そして、推測状態要素Bsc1で表される状態における、模倣学習の結果として推測される行動を表す推測行動要素がBac1である。そして、推測状態要素Bsc1が実行されることによって遷移すると推測した状態を表すのが推測状態要素Bsc2である。推測状態ベクトルは(Bsc1、Bsc2、・・・)で表され、推測行動ベクトルは(Bac1、Bac2、・・・)で表される。
【0036】
推測状態要素Bsc1と推測行動要素Bac1とは、たとえば方策関数によって対応付けられる。行動データAの場合と同様に、推測状態要素Bsc1が制御対象の初期の位置を表し、推測行動要素Bac1が制御対象を移動させる距離の推測値を表す場合、後述するBsn1について、Bsn1=Bsc2=Bsc1+Bac1が成り立つ。また、m、kを整数として、推測状態ベクトルおよび推測行動ベクトルがm次元であるとすると、m以下のkにおいて、Bsn(k-1)=Bsck=Bsc(k-1)+Bac(k―1)が成り立つ。
【0037】
以下では、たとえばBsc(k-1)を現在推測状態要素と記載し、BsckをBsn(k-1)と記載し、かつ次推測状態要素と記載する場合がある。
【0038】
[評価装置の機能]
つぎに評価装置10の各機能部の機能について説明する。評価装置10において、取得部11は、たとえばインターフェイス33を経由して、学習装置20において教師データとして使用する行動データであるたとえば行動データAを取得し、および推測行動データBを含む模倣学習の出力を取得する。推測行動データBは所定の行動データの一例である。
【0039】
評価部12は、行動データAと推測行動データBとに基づいて、学習装置20の模倣学習の出力の評価を表す数値を評価情報として生成する。
【0040】
出力部13は、評価部12が生成した評価情報を出力し、たとえばインターフェイス33を経由して表示したり外部に送信したりする。なお、評価情報はメモリ32に格納されてもよい。
【0041】
[処理フロー]
図4は、評価装置10が実行する処理の一例を示すフロー図である。はじめに、ステップS101において、取得部11は、教師データおよび模倣学習の出力を取得する。つづいて、ステップS102において、評価部12は、評価情報を生成する(評価ステップの一例)。つづいて、ステップS103において、出力部13は、評価情報を出力する。
【0042】
評価部12がステップS102において行う評価情報の生成について、具体例を挙げて説明する。一例として、評価部12は、評価情報として、模倣学習の習熟度を示す評価値を生成する。評価値は、たとえば、教師データとしての行動データAに含まれる状態ベクトルの要素と、推測行動データBに含まれる推測状態ベクトルの要素との距離に基づいて生成される。
【0043】
図5は、図4における評価情報の生成処理の一例を示すフロー図である。はじめに、ステップS201において、評価部12は、推測行動データBから一組の状態要素(Bscs、Bsns)を選択する。ここで、sは選択された要素であることを意味する。
【0044】
つづいて、ステップS202において、評価部12は、教師データの状態要素から、Bscsとユークリッド距離が小さい順に、指定数だけデータ(Ascs)を選択する。ここで、指定数は複数であれば特に限定されないが、たとえば3である。
【0045】
つづいて、ステップS203において、評価部12は、選択した全データ(Ascs)について、AsnsとBsnsとのユークリッド距離を計算する。
【0046】
つづいて、ステップS204において、評価部12は、選択した全ての(Bscs、Bsns)について、ユークリッド距離の計算を実行したかを判定する。実行していないと判定した場合(ステップS204、No)、ステップS205において評価部12は未だ選択されていない(Bscs、Bsns)を選択し、処理はステップS202に戻る。実行したと判定した場合(ステップS204、Yes)、処理はステップS206に進む。
【0047】
つづいて、ステップS206において、評価部12は、習熟度を示す評価値を生成する。本例では、算出されたすべてのユークリッド距離の平均を評価値としての習熟度とする。ただし、評価値はこれに限らず、たとえば算出されたすべてのユークリッド距離にミニマックス法を適用し、最も遠い座標とのユークリッド距離を評価値としてもよい。その後、評価部12は処理フローを終了する。なお、習熟度は、0から1の間の値を連続的にとるように規格化してもよい。
【0048】
ここで、図6を参照して、選択したデータの処理について説明する。図6(a)は、推測行動データBから一組の状態要素(Bsc1、Bsn1)を選択し、Bsc1とユークリッド距離が小さい順に、指定数の一例である3だけデータ(Asc1、Asc2、Asc3)を選択した場合を示している。この場合、評価部12は、データ(Asn1、Asn2、Asn3)について、AsnsとBsnsとのユークリッド距離を計算する。
【0049】
図6(a)に示す例は、現在推測状態要素(Bsc1)に対してユークリッド距離が小さい現在状態要素(Asc1、Asc2、Asc3)を選択した場合、これに対応する次推測状態要素(Bsn1)に対する次状態要素(Asn1、Asn2、Asn3)のユークリッド距離も小さいので、模倣学習が上手くいき、習熟度が比較的高い模倣学習の出力としての推測データが得られたと判定することができる。
【0050】
一方。図6(b)に示す例は、現在推測状態要素(Bsc1)に対してユークリッド距離が小さい現在状態要素(Asc1、Asc2、Asc3)を選択した場合であるが、これに対応する次推測状態要素(Bsn1)に対する次状態要素(Asn1、Asn2、Asn3)のユークリッド距離は大きくなってしまっている。この場合は、習熟度が比較的低い模倣学習の出力としての推測データが得られたと判定することができる。
【0051】
以上説明したように、評価装置10は、評価部12が、行動データAと推測行動データBとに基づいて、推測行動データBの生成に用いられた学習装置20の模倣学習の出力の評価を表す評価情報を、模倣学習の習熟度を示す評価値として生成するので、模倣学習の習熟度を客観的に評価することができる。
【0052】
特に、評価部12は、行動データAに含まれる状態要素(現在状態要素および次状態要素)と、推測行動データBに含まれる推測状態要素(現在推測状態要素および次推測状態要素)とのユークリッド距離に基づいて評価値を生成するので、定量的な評価値に基づいて客観的な評価を提供することができる。
【0053】
なお、上記実施形態では、ユークリッド距離を用いて評価値を生成しているが、ユークリッド距離以外の距離、たとえば、マンハッタン距離、チェビシェフ距離、マハラノビス距離などの距離を用いて評価値を生成してもよい。すなわち、距離としては、非負実数値関数である距離関数で定義される距離を適宜選択して用いることができる。
【0054】
(実施形態2)
図7は、実施形態2に係る評価装置を備えたシステムの構成を示す図である。実施形態2に係る評価装置40は、学習装置20とともにシステム200を構成している。学習装置20は、模倣学習を行い、評価装置10は、当該模倣学習の出力を評価する。
【0055】
[装置の構成]
評価装置40および学習装置20のそれぞれは、図1のシステム100の場合と同様に、情報処理装置30によって構成することができる。
【0056】
学習装置20は、図1の学習装置20と同じなので、詳細な説明は省略する。評価装置40は、機能部として、取得部41と、評価部42と、出力部43とを備える。評価部42は、モデル生成部42aを備える。モデル生成部42aは、データ生成部42a1と、評価・処理部42a2と、学習部42a3とを備える。データ生成部42a1は、学習部42a11を備える。これらの機能部は、たとえば、情報処理装置30のプロセッサ31がプログラムを実行することによってハードウェアとソフトウェアとが協働して実現されてもよいし、情報処理装置30のハードウェアの機能として実現されてもよい。
【0057】
[評価装置の機能]
つぎに評価装置40の各機能部の機能について説明する。評価装置40において、取得部41は、評価装置10の取得部11と同様に、たとえばインターフェイス33を経由して、学習装置20において教師データとして使用する行動データであるたとえば行動データAを取得する。
【0058】
評価部42のモデル生成部42aにおいて、データ生成部42a1は、行動データAを教師データとして、模倣学習モデルを備える学習部42a11に模倣学習をさせて、推測行動データを生成する。学習部42a11が備える模倣学習モデルは、学習装置20の学習部22が備える模倣学習モデルと同じものでよいが、それに限定はされない。
【0059】
ただし、この時生成する推測行動データは、模倣の程度が低い、すなわち習熟度が低いものとする。以下、習熟度が低い推測行動データを低習熟度データCと記載する場合がある。低習熟度データCのデータ構造や生成方法は後に詳述する。
【0060】
評価・処理部42a2は、データ生成部42a1が生成した低習熟度データなどのデータ処理を行って新たな行動データを生成したり、学習部42a3が用いる評価用データを生成したりする。評価・処理部42a2は、学習部42a3が生成した評価用モデルを用いて模倣学習の出力を評価し、模倣学習の出力の評価を表す数値を評価情報として生成することもできる。新たな行動データや評価用データの生成方法、模倣学習の出力の評価方法については後に詳述する。評価・処理部42a2は、評価用データを生成する評価用データ生成部の一例である。評価・処理部42a2は、評価部の一例でもある。
【0061】
学習部42a3は、教師有り機械学習を行うための学習モデルを備えている。学習部42a3は、評価・処理部42a2が生成した評価用データを教師データとして用いて、教師有り機械学習を行って、評価用モデルを生成する。
【0062】
出力部43は、評価・処理部42a2が生成した評価情報(評価値など)を出力し、たとえばインターフェイス33を経由して表示したり外部に送信したりする。評価情報はメモリ32に格納されてもよい。
【0063】
[処理フロー]
図8は、評価装置が実行する処理の一例を示すフロー図である。この処理フローは、教師データを取得するステップS301、低習熟度データを生成するステップS302、低習熟度データを良質化するステップS303、評価用データを生成するステップS304、評価用モデルを生成するステップS305、および、評価値を生成し出力するステップS306を含む。
【0064】
以下、具体的に説明する。はじめに、ステップS301において、取得部41は、教師データを取得する。つづいて、データ生成部421は、ステップS302において、低習熟度データCを生成する。
【0065】
図9は、低習熟度データの生成の一例を示す説明図である。データ生成部42a1は、たとえば、行動データAを教師データとして、模倣学習モデルを備える学習部42a11に模倣学習をさせて、習熟度が低い推測行動データである低習熟度データCを生成する。学習部42a11が備える模倣学習モデルとしては、学習装置20の学習部22が備える模倣学習モデルと同じものでよいが、これに限られない。
【0066】
低習熟度データCは、習熟度が低いと考えられる条件、たとえば模倣学習を比較的初期の段階すなわち模倣学習があまり進んでいない段階で中止することで生成できる。この場合、たとえば行動データAを構成する状態ベクトルおよび行動ベクトルがm次元であるとすると、習熟度が低い推測行動データは、たとえばmよりも小さい整数lとして、状態ベクトルおよび行動ベクトルがl次元である行動データとして表すことができる。
【0067】
図9に例示する低習熟度データCでは、Cscは推測された推測状態要素を成分とする推測状態ベクトルである。ただし、Csc1だけは初期値として与えられるが、便宜上推測状態要素と定義する。なお、Csc1としてはAsc1が与えられてもよい。Cacは推測行動ベクトルであり、推測行動を表すパラメータである推測状態要素を成分とする。そして、推測状態要素Csc1で表される状態における、模倣学習モデルまたは初期段階の模倣学習済モデルを用いて推測される行動を表す推測行動要素がCac1である。そして、推測状態要素Csc1が実行されることによって遷移すると推測した状態を表すのが推測状態要素Csc2である。推測状態ベクトルは(Csc1、Csc2、Csc3・・・)で表され、推測行動ベクトルは(Cac1、Cac2、Cac3・・・)で表される。
【0068】
推測状態要素Csc1と推測行動要素Cac1とは、たとえば方策関数によって対応付けられる。行動データAの場合と同様に、推測状態要素Csc1が制御対象の初期の位置を表し、推測行動要素Cac1が制御対象を移動させる距離の推測値を表す場合、後述するCsn1について、Csn1=Csc2=Csc1+Cac1が成り立つ。また、l、kを整数として、推測状態ベクトルおよび推測行動ベクトルがl次元であるとすると、l以下のkにおいて、Csn(k-1)=Csck=Csc(k-1)+Cac(k―1)が成り立つ。
【0069】
以下では、たとえばCsc(k-1)を現在推測状態要素と記載し、CsckをCsn(k-1)と記載し、かつ次推測状態要素と記載する場合がある。
【0070】
図8に戻って、ステップS303において、評価・処理部42a2は、データ生成部42a1が生成した低習熟度データCを良質化し、新しい行動データとしての低習熟度データC’とする。
【0071】
低習熟度データCは、習熟度が低いと考えらえる条件で生成したデータである。しかしながら、これに含まれる状態要素と行動要素との組み合わせには、習熟度が高い行動データ、たとえば教師データに含まれる状態要素と行動要素との組み合わせと同じまたは近いものが、意図せず偶然に含まれてしまう場合がある。このような場合、低習熟度データCが、習熟度が低いデータとしては良いものとは言えない場合がある。
【0072】
図10は、低習熟度データCの良質化の説明図である。たとえば、状態ベクトルCscが制御対象の位置のX座標を表し、行動ベクトルCacが制御対象を移動させる距離を表す場合を想定する。この場合、図10(a)に示すように、低習熟度データCの次状態要素を移動後のX座標とすると、X座標は+1から+5程度の比較的広い範囲に偏りなく分布し、状態要素のデータの分布も、各X座標においてそれほど差が無い。ここで、縦軸のデータ割合とは、対象とする行動データにおける状態要素の全数に対する、X軸の値となる状態要素の数の割合である。このような分布になるのは、低習熟度データCが低習熟度のためである。
【0073】
一方、行動データAのような教師データとなりうる高習熟度の行動データでは、状態要素のデータの大部分は移動後のX座標において同じ値となり、本例では+3である。この場合、低習熟度データCにおけるX座標が+3またはその近傍になるデータは、高習熟度の行動データと同じになってしまい好ましくない。
【0074】
そこで、低習熟度データCを良質化するために、図10(b)に示すように、低習熟度データCにおけるX座標が+3またはその近傍になるデータを除外するデータ処理を行う。
【0075】
図11は、図10における低習熟度データCの良質化処理の一例を示すフロー図である。
【0076】
はじめに、ステップS401において、評価・処理部42a2は、推測行動データである低習熟度データCから一組の状態要素(Cscs、Csns)を選択する。ここで、sは選択された要素であることを意味する。
【0077】
つづいて、ステップS402において、評価・処理部42a2は、教師データの状態要素から、Cscsとユークリッド距離が小さい順に、指定数だけデータ(Ascs)を選択する。指定数は複数であれば特に限定されないが、たとえば3である。
【0078】
つづいて、ステップS403において、評価・処理部42a2は、選択した全データ(Ascs)について、AsnsとCsnsとのユークリッド距離を計算する。
【0079】
つづいて、ステップS404において、評価・処理部42a2は、選択した全ての(Cscs、Csns)について、ユークリッド距離の計算を実行したかを判定する。実行していないと判定した場合(ステップS404、No)、ステップS405において評価・処理部42a2は未だ選択されていない(Cscs、Csns)を選択し、処理はステップS402に戻る。実行したと判定した場合(ステップS404、Yes)、処理はステップS406に進む。
【0080】
つづいて、ステップS406において、評価・処理部42a2は、習熟度が高い(Cscs、Csns)を選択して除外する。本例では、算出されたユークリッド距離の平均を評価値としての習熟度とする。ただし、評価値はこれに限らず、たとえば算出されたすべてのユークリッド距離にミニマックス法を適用し、最も遠い座標とのユークリッド距離を評価値としてもよい。そして、習熟度が所定の閾値よりも高い(平均のユークリッド距離が所定の閾値よりも小さい)習熟度が高い(Cscs、Csns)を選択して除外する。このようにして習熟度が高いデータが除外された新たな低習熟度データC’が生成される。その後、評価・処理部42a2は処理フローを終了する。
【0081】
したがって、図11の良質化処理では、複数の行動データ(行動データAと低習熟度データC)のそれぞれに含まれる状態ベクトルの要素(状態要素)と該要素に対応する行動ベクトルの要素(行動要素)との組みについて、類似性を指標としてデータ処理を行い、新たな行動データ(低習熟度データC’)を生成する。図11の良質化処理では、類似性は、複数の行動データ(行動データAと低習熟度データC)のそれぞれに含まれる状態ベクトルの要素の間の距離(ユークリッド距離)を指標として、前記新たな行動データ(低習熟度データC’)では、前記距離に基づき要素(習熟度が高い要素)が除去されている。
【0082】
図8に戻って説明を続ける。ステップS304において、評価・処理部42a2は、評価用データを生成する。
【0083】
図12は、評価用データの一例を示す図である。この評価データは、複数の行動データとして、行動データAと低習熟度データC’とを用いている。そして、行動データAと低習熟度データC’とに含まれる状態要素とこれに対応する行動要素との組みについて、評価値としての習熟度を対応させている。
【0084】
具体的には、行動データAに含まれる状態要素と行動要素との組みについては、いずれも習熟度が高い。そこで、規格化された習熟度の最も高い値である「1」がラベル付けされ、対応付けられている。また、低習熟度データC’に含まれる状態要素と行動要素との組みについては、いずれも習熟度が低い。そこで、評価指標として、規格化された習熟度の最も低い値である「0」がラベル付けされ、対応付けられている。このような対応付けは、たとえば機械学習に用いられる数理モデルを用いて行ってもよい。
【0085】
なお、図12に示す評価データは、状態要素と行動要素との組みを説明変数、ラベル(習熟度)を目的変数とするデータ構造を有する。
【0086】
また、図12に示す評価用データでは、ラベルは「0」と「1」との2種類であるが、習熟度が「0」と「1」以外の値を取る他の行動データをさらに組み合わせて評価用データを生成してもよい。
【0087】
図8に戻って説明を続ける。ステップS305において、学習部42a3は、図12に示すような評価用データを教師データとして用いて、教師有り機械学習を行い、評価用モデルを生成する(モデル生成ステップの一例)。教師有り機械学習のアルゴリズムは特に限定されず、たとえばニューラルネットワーク、kNN法、線形モデル、ナイーブベイズクラス分類器、決定木、SVM(サポートベクトルマシン)などの公知の数理モデルを用いたものを利用できる。すなわち、評価用モデルは、行動データに含まれる状態ベクトルおよび行動ベクトルと、行動ベクトルに対する評価値とを数理モデルに基づいて対応させる。
【0088】
図12に示すような評価用データを教師データとして用いて教師有り機械学習を行って生成された評価用モデルは、推測行動データなどの行動データを、習熟度で評価できる。このときの習熟度は、0以上1以下の連続的な値を取りうる。
【0089】
つづいて、ステップS306において、評価・処理部42a2は、出力部43が取得した学習装置20による模倣学習の出力である推測行動データ(たとえば推測行動データB)の入力を受け付け、推測行動データBに対する評価情報である習熟度を評価値として生成する。出力部43は、評価・処理部42a2が生成した習熟度を出力し、たとえばインターフェイス33を経由して表示したり外部に送信したりする。なお、評価情報はメモリ32に格納されてもよい。
【0090】
以上説明したように、評価装置40は、評価・処理部42a2が、行動データAと低習熟度データCとに基づいて、推測行動データBの生成に用いられた学習装置20の模倣学習の出力の評価を表す評価情報を、模倣学習の習熟度を示す評価値として生成するので、模倣学習の習熟度を客観的に評価することができる。
【0091】
特に、評価部12は、良質化された低習熟度データC’を用いて評価値を生成するので、定量的な評価値に基づいて客観的な評価を提供することができる。
【0092】
なお、上記実施形態では、ユークリッド距離を用いて良質化を行っているが、ユークリッド距離以外の距離、たとえば、マンハッタン距離、チェビシェフ距離、マハラノビス距離などの距離を用いてもよい。
【0093】
(実施形態3)
図13は、実施形態3に係るシステムの構成を示す図である。このシステム1000は、巻取装置300と、巻取装置300の制御を行う制御装置400とを備える。
【0094】
巻取装置300は、柔軟物の一例である電力ケーブルCをドラムDに巻き取る装置である。ドラムDは、円柱状の胴部D1と胴部D1の両端に設けられた2つの鍔部D2を備える。電力ケーブルCは胴部D1に巻き取られる。
【0095】
巻取装置300は、回転アクチュエータによってドラムDを回転軸回りに回転させる回転機構310と、電力ケーブルCをドラムDに導くアーム320と、アーム320をドラムDの回転軸方向に沿ってガイドするガイドレール330と、回転アクチュエータによってアーム320をガイドレール330に沿って移動させる移動機構340とを備えている。図13ではドラムDの回転軸方向およびガイドレール330の延伸方向をX方向とする。
【0096】
アーム320は、ガイドレール330をX方向の正負の向きに往復移動し、かつX方向と直交するY方向およびZ方向の正負の向きにも移動することによって、胴部D1に電力ケーブルCを導く。
【0097】
制御装置400は、移動機構340の回転アクチュエータの制御によってアーム320の位置および移動量を制御する。制御装置400は、回転アクチュエータの制御を略自動制御で行うが、電力ケーブルCの巻き取り状態を好適な状態とするためにオペレータの手動による制御への介入を許容するように構成されている。
【0098】
具体的には、制御装置400は、手動操作部410と、手動制御部420と、自動制御部430と、評価部440と、報知部450とを備えている。
【0099】
手動操作部410は、たとえばボタンやレバーなどの操作子を備えており、オペレータが手動による制御への介入のための手動操作を行う部分である。
【0100】
手動制御部420と、自動制御部430と、評価部440とは、たとえば図2のような情報処理装置30を用いて構成されている。手動制御部420は手動操作部410から手動操作信号を受け付け、その操作信号に応じて移動機構340の回転アクチュエータを制御する。自動制御部430は、行動データを教師データとする模倣学習によって生成された学習済モデル431を備えており、学習済モデル431による推測結果に基づいて移動機構340の回転アクチュエータを自動制御する。なお、手動制御部420と自動制御部430とは、手動制御が自動制御にスムーズに介入できるように協調して動作している。なお、自動制御部430は学習済モデル431による推測結果を行動データとして出力する。自動制御部430は学習装置の一例である。
【0101】
評価部440は、評価装置の一例であって、自動制御部430から推測結果の行動データを受け付け、その行動データに対する習熟度を評価値として生成する。なお、この行動データは、リアルタイムに更新されたものが自動制御部430から提供されてもよいし、評価部440が更新を行ってもよい。報知部450は、たとえばディスプレイやランプやスピーカを備えており、オペレータに介入を促す報知を行う。
【0102】
評価部440は、生成した習熟度が一定時間以上所定値以下になった場合、報知部450を制御してオペレータに制御への介入を促す報知を行うことができる。その結果、オペレータは必要に応じて制御に介入できるので、電力ケーブルCの巻き取状態を好適な状態にすることができる。
【0103】
図14は、図13に示すシステム1000の動作の一例の説明図である。図14の横軸は巻取制御開始からの経過時間を示しており、縦軸は、介入動作および習熟度を示している。システム1000では、習熟度が一定時間以上所定値以下になった時間において手動による介入を促す報知を行い、介入動作A、Bが実行されると、習熟度が回復されることができる。
【0104】
なお、システム1000における状態要素および行動要素の標準化の例について説明する。アーム320はXYZ方向に移動するが、この場合に、状態要素Ascを、Asc:(x座標(0~1)、y座標(0~1)、z座標(0~1)のように、アーム320のxxyz座標で定義する。このとき、xyz座標の生データの値をアーム320の可動域が0~1の範囲となるように標準化することで、xyz座標が0~1の範囲を取るようにできる。一方、行動要素AacもAac:(x座標(0~1)、y座標(0~1)、z座標(0~1)のように定義する。このとき、xyz座標の生データの値を行動要素Aacの各座標の最大値で除算して標準化することで、xyz座標が0~1の範囲を取るようにできる。
【0105】
評価部440は、報知部450を制御して習熟度を視覚的に表示してもよいし、音声により報知してもよい。これにより、オペレータは習熟度を確認することができる。
【0106】
なお、システム1000の巻取装置300は電力ケーブルCの巻取装置であるが、システム1000の構成は、メタルケーブル、ファイバーケーブル、紐、樹脂フィルム、紙、金属箔などの他の柔軟物の巻取装置にも適用できる。
【0107】
また、上記実施形態により本発明が限定されるものではない。上述した各構成要素を適宜組み合わせて構成したものも本発明に含まれる。また、さらなる効果や変形例は、当業者によって容易に導き出すことができる。よって、本発明のより広範な態様は、上記の実施形態に限定されるものではなく、様々な変更が可能である。
【符号の説明】
【0108】
10、40 :評価装置
11、21、41 :取得部
12、42、440 :評価部
13、23、43 :出力部
20 :学習装置
22、42a11、42a3 :学習部
30 :情報処理装置
31 :プロセッサ
32 :メモリ
33 :インターフェイス
42a :モデル生成部
42a1 :データ生成部
42a2 :評価・処理部
100、200、1000 :システム
300 :巻取装置
310 :回転機構
320 :アーム
330 :ガイドレール
340 :移動機構
400 :制御装置
410 :手動操作部
420 :手動制御部
430 :自動制御部
431 :学習済モデル
450 :報知部
A :介入動作
B :介入動作
C :電力ケーブル
D :ドラム
D1 :胴部
D2 :鍔部
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14