(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-01-28
(45)【発行日】2025-02-05
(54)【発明の名称】ロボットシステムの操作スキルをトレーニングするための方法及び装置
(51)【国際特許分類】
B25J 9/22 20060101AFI20250129BHJP
【FI】
B25J9/22 A
【外国語出願】
(21)【出願番号】P 2020179408
(22)【出願日】2020-10-27
【審査請求日】2023-08-03
(31)【優先権主張番号】10 2019 216 560.5
(32)【優先日】2019-10-28
(33)【優先権主張国・地域又は機関】DE
(73)【特許権者】
【識別番号】390023711
【氏名又は名称】ローベルト ボツシユ ゲゼルシヤフト ミツト ベシユレンクテル ハフツング
【氏名又は名称原語表記】ROBERT BOSCH GMBH
【住所又は居所原語表記】Stuttgart, Germany
(74)【代理人】
【識別番号】100114890
【氏名又は名称】アインゼル・フェリックス=ラインハルト
(74)【代理人】
【識別番号】100098501
【氏名又は名称】森田 拓
(74)【代理人】
【識別番号】100116403
【氏名又は名称】前川 純一
(74)【代理人】
【識別番号】100134315
【氏名又は名称】永島 秀郎
(74)【代理人】
【識別番号】100135633
【氏名又は名称】二宮 浩康
(74)【代理人】
【識別番号】100162880
【氏名又は名称】上島 類
(72)【発明者】
【氏名】マティアス ビュアガー
(72)【発明者】
【氏名】メン グオ
【審査官】國武 史帆
(56)【参考文献】
【文献】米国特許出願公開第2017/0361461(US,A1)
【文献】AjayKumar Tanwani, Sylvain Calinon,Learning Robot Manipulation Tasks With Task-Parameterized Semitied Hidden Semi-Markov Model,IEEE ROBOTICS AND AUTOMATION LETTERS,p.1-8
(58)【調査した分野】(Int.Cl.,DB名)
B25J 1/00 - 21/02
(57)【特許請求の範囲】
【請求項1】
特に物体(300)を操作するための、ロボットシステム(200)のトレーニング方法(100)であって、
前記ロボットシステム(200)は、スキルセットを実施可能であり、各スキルは、スキルモデルとして、特に、TP-GMM、タスクパラメータ化ガウス混合モデルと組み合わせられたTP-HSMM、タスクパラメータ化隠れセミマルコフモデルとして、学習される、トレーニング方法(100)において、
当該方法は、
ロボットにより学習されるべきスキルに関して、特に人間のトレーナから、物理的入力を受け取るステップ(110)であって、前記物理的入力は、前記ロボットシステム(200)上における運動感覚デモンストレーションのセットを有する、ステップ(110)と、
前記スキルモデルのためにタスクパラメータセットを決定するステップ(120)であって、前記タスクパラメータセットを決定するステップ(120)は、前記タスクパラメータセットのタスクパラメータ各々について、ある1つのタスクパラメータが、前記運動感覚デモンストレーションの一部である物体(300)に関係する付属タスクパラメータであるのか、又は、ある1つのタスクパラメータが、物理的物体には関係しない自由タスクパラメータであるのかを決定することを含む、ステップ(120)と、
前記運動感覚デモンストレーションのセットから、前記タスクパラメータセットのタスクパラメータ各々についてデータを取得するステップ(130)と、
前記タスクパラメータセットと、タスクパラメータ各々について取得された前記データとを用いて、前記スキルモデルをトレーニングするステップ(140)と、
を含む、
ロボットシステム(200)のトレーニング方法(100)。
【請求項2】
前記タスクパラメータセットを決定するステップ(120)は、以下のうちから、即ち、前記運動感覚デモンストレーションの一部である前記物体の姿勢に関連づけられたタスクパラメータ、自由タスクパラメータ、又は、前記ロボットシステムのエンドエフェクタの姿勢、特に初期姿勢に関連づけられたタスクパラメータのうちから、前記タスクパラメータを選択することを含む、
請求項1に記載の方法(100)。
【請求項3】
前記タスクパラメータを選択する
ことは、前記選択の再現エラーの検証に基づく、
請求項
2に記載の方法(100)。
【請求項4】
1つのスキルは、TP-GMM、タスクパラメータ化ガウス混合モデルと組み合わせられたTP-HSMM、タスクパラメータ化隠れセミマルコフモデルとして学習される、
請求項1乃至3のいずれか一項に記載の方法(100)。
【請求項5】
当該方法はさらに、1つのスキルの前提条件モデルを学習するステップ(150)を含み、前記前提条件モデルは、初期時点における前記ロボットシステム(200)、特に前記ロボットシステム(200)のエンドエフェクタ(220)と1つの物体(300)との間の相対的関係を参照する、
請求項1乃至4のいずれか一項に記載の方法(100)。
【請求項6】
当該方法はさらに、スキルの効果モデルを学習するステップ(160)を含み、前記効果モデルは、最終時点における前記ロボットシステム(200)、特に前記ロボットシステム(200)のエンドエフェクタ(220)と1つの物体(300)との間の相対的関係を参照する、
請求項1乃至5のいずれか一項に記載の方法(100)。
【請求項7】
ロボットシステムにより学習されるべきスキルに関して、特に人間のトレーナからの、物理的入力を介してトレーニングし得るように構成されたロボットシステム(200)であって、
前記物理的入力は、請求項1乃至6のいずれか一項に記載の方法によるロボット上における運動感覚デモンストレーションのセットを有する、
ロボットシステム(200)。
【請求項8】
前記ロボットシステム(200)は、前記ロボットシステムのエンドエフェクタにより基準軌跡を追跡するように構成されている、
請求項7に記載のロボットシステム(200)。
【請求項9】
前記ロボットシステム(200)は、着目対象物体を検出するように構成されている、
請求項7又は8に記載のロボットシステム(200)。
【請求項10】
請求項7乃至9のいずれか一項に記載のロボットシステム(200)を制御するためのコンピュータであって、
請求項1乃至6のいずれか一項に記載の方法(100)を実施するように構成されているコンピュータ。
【請求項11】
コンピュータプログラムコードを有するコンピュータプログラムであって、
前記コンピュータプログラムコードは、コンピュータにおいて実行されるときに、前記コンピュータが請求項1乃至6のいずれか一項に記載の方法(100)を実施し得るようにする、
コンピュータプログラム。
【請求項12】
請求項11に記載のコンピュータプログラムを含む機械可読記憶媒体。
【請求項13】
特に物体(300)を操作するための、ロボットシステム(200)の使用であって、
前記ロボットシステム(200)は、請求項1乃至6のいずれか一項に記載の方法(100)に従って前記ロボットシステム(200)により、及び/又は、請求項10に記載のコンピュータを用いて、及び/又は、請求項11に記載のコンピュータプログラムを用いて、学習されたスキルセットを含むスキルシーケンスを実施するために、請求項7乃至9のいずれか一項に従って、スキルセットを実施可能である、
ロボットシステム(200)の使用。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、ロボットシステムをトレーニングするための方法及び装置に関する。
【背景技術】
【0002】
ロボットシステムは、物体の操作のために使用される。
【0003】
取り上げる、差し込む、及び、落とすといったロボットの操作スキルは、固有のタスクのためにハードコーディングされていることが多い。しかしながら、その結果として、それぞれ異なる作業空間又は変動するコンディションなど、新たな状況が発生したケースにおけるフレキシビリティ及び再利用の可能性が乏しくなってしまう。
【0004】
さらに、デモンストレーションによってロボットシステムをトレーニングすることが知られているが、デモンストレーションされた軌跡を単純に記録して再演するのでは不十分であることが多い。それというのも、ロボット及び/又は物体の姿勢が変動するといった環境の変化によって、いずれの試みも失敗してしまうからである。
【発明の概要】
【発明が解決しようとする課題】
【0005】
本開示の目的は、新たなスキル及びタスクの学習を効率的かつ簡単な手法により実現することができるようにした方法及びシステムを提供することである。
【課題を解決するための手段】
【0006】
発明の開示
この課題は、独立請求項に記載の装置及び方法によって達成される。
【0007】
特に物体を操作するための、ロボットシステムのトレーニング方法であって、ロボットは、スキルセットを実施可能であり、各スキルは、スキルモデルとして、特に、TP-GMM、タスクパラメータ化ガウス混合モデル(Task Parameterized Gaussian Mixture Model)と組み合わせられたTP-HSMM、タスクパラメータ化隠れセミマルコフモデル(Task Parameterized Hidden semi-Markov Model)として学習される、方法において、
ロボットにより学習されるべきスキルに関して、特に人間のトレーナから、物理的入力を受け取るステップであって、物理的入力は、ロボットシステム上における運動感覚デモンストレーションのセットを有する、ステップと、
前記スキルモデルのためにタスクパラメータセットを決定するステップであって、タスクパラメータセットを決定する当該ステップは、タスクパラメータセットのタスクパラメータ各々について、ある1つのタスクパラメータが、運動感覚デモンストレーションの一部である物体に関係する付属タスクパラメータであるのか、又は、ある1つのタスクパラメータが、物理的物体には関係しない自由タスクパラメータであるのかを決定することを含む、ステップと、
運動感覚デモンストレーションのセットから、タスクパラメータセットのタスクパラメータ各々についてデータを取得するステップと、
タスクパラメータセットと、タスクパラメータ各々について取得されたデータとを用いて、スキルモデルをトレーニングするステップと、
を含む方法によって達成される。
【0008】
好ましくは、1つのスキルは、TP-GMM、タスクパラメータ化ガウス混合モデル、と組み合わせられたTP-HSMM、タスクパラメータ化隠れセミマルコフモデル、として学習される。
【0009】
デモンストレーションに基づく学習の基本的な着想は、GMM、ガウス混合モデルなどの、規定されたスキルモデルを、少量のデモンストレーションに適合させる、ということである。各スキルについて、トレーナ、特に人間のトレーナは、複数回の、特にM
a回の運動感覚デモンストレーションを、ロボットにおいて実施する。各デモンストレーションは、
【数1】
のデータセットについてT
m個のデータポイントを含み、ここで、
【数2】
である。好ましくは、デモンストレーションは、タスクパラメータとも称せられるP個のそれぞれ異なる座標系TPのパースペクティブに基づき記録される。タスクパラメータについてデータを取得するために、デモンストレーションが、グローバルなフレームからフレームp∈TPに変換され、
【数3】
ここで、
【数4】
は、基準フレーム、特に時点tにおけるワールドフレームに関するフレームpの並進及び回転である。
【0010】
TP-GMMは、パラメータ
【数5】
により記述され、ここで、Kは、混合モデルにおけるガウス成分の個数を表し、π
kは、各コンポーネントの事前確率であり、
【数6】
は、フレームp内のk番目の成分の平均及び共分散である。
【0011】
一旦学習されたならば、学習されたスキルについて軌跡を再現するために、実行中には、TP-GMMを使用することができる。即ち、観測されたフレームが、
【数7】
であるならば、学習されたTP-GMMは、それぞれ異なるフレームにわたりアフィン変換されたガウス成分を乗算することによって、パラメータ
【数8】
を有する1つの単一のGMMに変換され、これは以下のとおりである。
【数9】
ここで、各フレームpにおいて更新されたガウスのパラメータが、以下のように計算される。
【数10】
より詳細な点については、CALINON Sylvain著、「A tutorial on task-parameterized movement learning and retrieval」(Intelligent Service Robotics、9(1):1-29、2016年刊)を参照されたい。
【0012】
隠れセミマルコフモデル(HSMM)は、基礎を成す確率過程の経時的情報を埋め込むことによって、標準隠れマルコフモデル(HMM)を拡張する。即ち、HMMの場合には、基礎を成す隠れ過程がマルコフであるとみなされ、即ち、次の状態への遷移の確率は、現在の状態のみに依存するのに対し、HSMMの場合には、状態過程がセミマルコフであるとみなされる。このことは、次の状態への遷移が、現在の状態にも、その状態に入ってから経過した時間にも依存する、ということを意味する。
【0013】
デモンストレーションの時間と空間に関する特徴を学習するためのロボットスキルコーディングについて、タスクパラメータ化ガウス混合モデル(TP-GMM)と組み合わせて、隠れセミマルコフモデルを適用することの具体例の詳細は、例えば、以下の文献、即ち、TANWANI,Ajay Kumar,CALINON Sylvain著、「Learning Robot Manipulation Tasks with Task-Parameterized Hidden Semi-Markov Model」(IEEE Robotics and Automation Letters、第1~8頁、2016年刊)に開示されている。
【0014】
さらに詳細には、タスクパラメータ化HSMMモデルは、以下のパラメータ、即ち、
【数11】
から成る。ここで、a
khは、状態kから状態hへの遷移確率であり、
【数12】
は、状態kの期間にわたるガウス分布、即ち、所定数の連続的なステップにわたり状態kに留まる確率を表し、さらに
【数13】
は、上述のTP-GMMであり、各kについて放出確率、即ち、状態kに対応する観測の確率を表す。ただし、先行のπ
kは、HSMMの場合には、t=1のときの初期成分の確率分布のみを表す。後続の時間ステップにおける成分の確率分布は、基礎を成すセミマルコフモデルを介して決定される。ここで述べておくと、HSMMの場合、各状態は、関連づけられたTP-GMMにおけるガウス成分に対応する。
【0015】
好ましくは、セミマルコフモデルの構造は線形であり、このことは、状態のシーケンスは決定論的であり、各状態の期間のみが確率的である、ということを意味する。この線形構造を、i≠jのときδij=0及びi=jのときδij=1として、πk=δ1k及びakh=δ(k+1)hを設定することにより達成することができる。線形構造であるとみなすと、各スキルは、同一のセグメントに追従し、別個のモデルにおいてトレーニングされる。好ましくは、分枝点は不要である。
【0016】
好ましくは、前述のTP-HSMMの形式は、リーマン多様体に適合させられ、これについての詳細な理論は、ZEESTRATEN, Martijn著、「Programming by demonstration on Riemannian manifolds」(2017年博士論文、Department of Informatics, Bioengineering, Robotics, System Engineering, DIBRIS University of Genova, Department of Advanced Robotics Istituto Italiano di Tecnologia)を参照されたい。
【0017】
各スキルについて、トレーナ、特に人間のトレーナは、複数回の運動感覚デモンストレーションを、ロボットにおいて実施する。各運動感覚デモンストレーションは、ロボットシステムのエンドエフェクタの複数の状態と、運動感覚デモンストレーションの一部である物体の複数の状態とから成る状態シーケンスを有する。
【0018】
特に、スキルa∈Aの場合、ただし、Aは、操作スキルセット、関与する物体セットは、O
a∈Oによって与えられ、デモンストレーションセットは、D
a={D
1,...D
Ma}によって与えられ、ここで、各デモンストレーションは、
【数14】
によって与えられ、ここで、D
mは、多様体M
ξ内のロボットエンドエフェクタ状態ξと、多様体M
p内の物体状態{p
o,o∈O
a}各々とから成る状態sのシーケンスである。これらのスキルの組合せを介して、望ましい最終状態に到達するために、これらの物体を操作することができる。
【0019】
本開示によれば、1つのスキルによってロボットシステムは、1つの物体を操作することができる。以下においては、物体の望ましい最終状態を有するコアスキルと、デモンストレーション中に物体の最終状態を任意に選択可能である遷移スキルとを区別する。
【0020】
スキルモデルのタスクパラメータセットは、スキルのフレキシビリティ及び一般化のために不可欠である。これによって、デモンストレーションの特徴を種々のパースペクティブに基づき学習させることができる。本開示によれば、2つの異なるタイプのタスクパラメータが導入される。
【0021】
一方では、タスクパラメータは、通常はスキルに関係する物体に属し、それらの姿勢から構築される。これらは、付属タスクパラメータと称せられる。付属タスクパラメータを、物体姿勢p∈M
pから構築することができる。例えば、
【数15】
の場合、付属タスクパラメータは、b=p及びA=diag(R,I
3)によって与えられ、ここで、Rは、pにおける配向に対応する回転行列である。
【0022】
ただし、他方では、並進スキルの場合、物理的物体に関係しないさらなる関連タスクパラメータが存在する。これらは、自由タスクパラメータと称せられる。自由タスクパラメータを知覚することはできず、ユーザ又は計画アルゴリズムによって明示的に設定することが望ましい。自由タスクパラメータである1つのパラメータを決定する選択は、並進スキルの実行の成果に直接的に影響を及ぼす。
【0023】
本開示による方法によれば、有利には、ロボットシステムを新たなスキルを用いて汎用的な手法によってトレーニングすることができる。その理由は、ロボットシステムは、デモンストレーションの背後にある意図を認識してコーディングすることができるからである。
【0024】
よって、新たなスキルの成功率が改善される。
【0025】
さらに、本開示による方法によって、有利には、シミュレーションモデルを実装することなく新たなスキルを学習することができる。
【0026】
1つの実施形態によれば、タスクパラメータセットを決定するステップは、以下のうちから、即ち、前記運動感覚デモンストレーションの一部である前記物体の姿勢に関連づけられたタスクパラメータ、自由タスクパラメータ、又は、ロボットシステムのエンドエフェクタの姿勢、特に初期姿勢に関連づけられたタスクパラメータのうちから、タスクパラメータを選択することを含む。特に、スキルaについて、TPaにより表されるタスクパラメータセットを、以下のうちから、即ち、関連する物体Oaのセット、Faにより表される自由タスクパラメータのセット、及び、rにより表されるロボットアームの初期姿勢のうちから選択することができる。一般に、タスクパラメータセットを、関与する総ての物体Oaと、rにより表されるロボットアームの初期姿勢とにフレームを付与すること、及び、遷移スキルのために自由タスクパラメータFaを使用することによって、選択することができる。即ち、TPa=Oa∪Fa∪{r}である。
【0027】
有利には、適当なタスクパラメータセットを選択することによって、計算コストが上昇する可能性があり、及び/又は、再現パフォーマンスが低下する可能性がある。
【0028】
1つの実施形態によれば、タスクパラメータを選択するステップは、前記選択の再現エラーの検証に基づく。このためには、デモンストレーションとして与えられるグラウンドトゥルースを必要とする。通常、デモンストレーションセットはかなり小さく、そのため、同一のデモンストレーションセットD
aがトレーニングと検証とに使用される。これによって検証、即ち、
【数16】
が、もたらされる。ここで、ξ
tは、1つのデモンストレーションに基づくタスクパラメータTP
aのためのスキルモデルから取り出された軌跡であり、M
aは、デモンストレーションの回数であり、ここで、各デモンストレーションは、
【数17】
個の全観測のデータセットのためのT
m個のデータポイントを含む。
【0029】
1つのスキルのために関与する物体の個数が少ない場合には、タスクパラメータの総ての組合せについてモデルをトレーニングすることができ、上述の検証を用いて各選択を検証することができる。物体の個数がより多い場合には、計算時間を低減するために、トレーナは、好ましくは、タスクパラメータのいくつかの見込みがある選択を予め選択するものとするとよい。
【0030】
1つの実施形態によれば、この方法はさらに、1つのスキルの前提条件モデルを学習するステップを含み、この前提条件モデルは、初期時点におけるロボットシステム、特にロボットシステムのエンドエフェクタと物体との間の相対的関係を参照する。好ましくは、成功裏の実行を保証するために、1つのスキルが実行されたときに前提条件が満たされる。上述のように学習されたスキルモデルには、ロボットアーム、特にエンドエフェクタがどこからスタートすることになるのかについての情報は含まれているが、ロボットシステムのその他の環境、特に物体に関する情報は組み込まれていない。斯かる情報には、特定のスキルの実行がスタートしたときに、物体とロボットアーム、特にエンドエフェクタとが互いに対してどのように配置されているのかが含まれていることが望ましい。従って、1つの実施形態によれば、タスクパラメータ化ガウス、TP-Gが、各物体についてその物体の姿勢を適合させるために、デモンストレーションに基づき学習される。より具体的には、1つのスキルの前提条件モデルは、
【数18】
により定義され、ここで、
【数19】
は、初期時点1における物体pの初期姿勢のパースペクティブに基づく、時点1における物体oの初期姿勢のガウス分布である。
【0031】
有利には、前提条件モデルを、ロボットシステム上において実施される運動感覚デモンストレーションだけから学習させることができる。
【0032】
1つの実施形態によれば、この方法はさらに、スキルの効果モデルを学習するステップを含み、この効果モデルは、最終時点におけるロボットシステム、特にロボットシステムのエンドエフェクタと物体との間の相対的関係を参照する。1つのスキルの効果は、そのスキル実行後に結果として生じるシステム状態であり、これにはロボットアームの姿勢と関与する物体の姿勢の双方が含まれる。上述のように学習されたスキルモデルには、ロボットアーム、特にエンドエフェクタがどこでストップすることになるのかについての情報は含まれているが、ロボットシステムのその他の環境、特に物体に関する情報は組み込まれていない。斯かる情報には、特定のスキルの実行が終了したときに、物体とロボットアーム、特にエンドエフェクタとが互いに対してどのように配置されているのかが含まれていることが望ましい。従って、1つの実施形態によれば、タスクパラメータ化ガウス、TP-Gが、各物体についてその物体の姿勢を適合させるためにデモンストレーションに基づき学習される。より具体的には、1つのスキルの効果モデルは、
【数20】
により定義され、ここで、
【数21】
は、初期時点1における物体pの初期姿勢のパースペクティブに基づく、時点Tにおける物体oの最終姿勢のガウス分布である。
【0033】
有利には、スキルモデルを、ロボットシステム上において実施される運動感覚デモンストレーションだけから学習させることができる。
【0034】
実際には、相対条件だけでなく絶対条件も組み込むために、γ1,a及びγT,aについて、種々のタスクパラメータを選択することができる。好ましくは、スキルモデル及び/又は前提条件モデルは、物体姿勢の多様体Mp内において計算される。
【0035】
さらなる実施形態によれば、この方法は、前提条件モデルを使用してスキルの前提条件の測定を評価するステップを含む。特に、ロボットシステム、特にロボットアーム及び各物体に対する観測確率の積、又は、等価的にそれらの対数値の和を計算することができる。測定によって、現在の状況が運動感覚デモンストレーション中にデモンストレーションされた状況にどの程度類似しているのかを評価する連続値がもたらされる。この測定は、以下のような手法において、既に有用なものとなり得る。即ち、スキルaの前提条件が満たされているか否かを判定するために、測定を所定の閾値と比較することができ、又は、種々の状況及びpFにおける種々の自由タスクパラメータを比較して、いずれが前提条件をより満たしているのかを判定するために、測定を使用することができる。
【0036】
さらなる実施形態によれば、この方法はさらに、効果モデルを使用してスキルの効果を予測するステップを含む。この予測は、スキルの実行後に結果として生じるシステム状態であるスキルの効果を予測するために役立つ可能性があり、このシステム状態には、ロボットアームの姿勢と関与する物体の姿勢の双方が含まれる。
【0037】
本開示は、ロボットにより学習されるべきスキルに関して、特に人間のトレーナからの、物理的入力を介してトレーニングし得るように構成されたロボットシステムにも関し、ここで、物理的入力は、既述の実施形態のいずれかに記載の方法によるロボット上における運動感覚デモンストレーションのセットを有する。
【0038】
1つの実施形態によれば、この方法はさらに、スキルシーケンスの信頼度を最適化することを含む。信頼度の測定は、新たな状況において、及び/又は、新たな条件のもとで、スキルを成功裏に実施する可能性がどの程度であるのかを測定するために使用される。
【0039】
1つの実施形態によれば、ロボットシステムは、ロボットシステムのエンドエフェクタにより1つの基準軌跡を追跡するように構成されている。
【0040】
1つの実施形態によれば、ロボットシステムは、着目対象物体を検出するように構成されている。
【0041】
本開示は、既述の実施形態によるロボットシステムを制御するためのコンピュータにも関し、ここで、コンピュータは、既述の実施形態による方法を実施するように構成されている。
【0042】
本開示は、コンピュータプログラムコードを有するコンピュータプログラムにも関し、このコンピュータプログラムコードは、コンピュータにおいて実行されるときに、このコンピュータが既述の実施形態による方法を実施し得るようにする。
【0043】
本開示は、既述の実施形態によるコンピュータプログラムを有する機械可読記憶媒体にも関する。
【0044】
本開示は、特に物体を操作するための、ロボットシステムの使用にも関し、ロボットは、既述の実施形態のいずれかによる方法に従ってロボットシステムにより、及び/又は、既述の実施形態によるコンピュータを用いて、及び/又は、既述の実施形態によるコンピュータプログラムを用いて、学習されたスキルセットを有するスキルシーケンスを実行するために、スキルセットを実施可能である。
【0045】
上述の方法に従って、自由タスクパラメータの最適な選択を決定した後、以下のようにしてスキルシーケンスが実行される。h=0からスタートして、総ての関連する物体及びロボットアームの姿勢を含む現在のシステム状態shが、知覚及びロボット状態推定器などのような状態推定システムから取得される。次いで、スキルモデルのトレーニング中に使用されるタスクパラメータの最適な選択に従って、関連づけられたタスクパラメータがshから構築される。スキルが遷移スキルである場合には、l個の物体に関連づけられた自由タスクパラメータを、状態推定システムから取得することはできず、その代わりに上述の最適な選択に従って設定することが望ましい。従って、タスクパラメータの完全なセットが与えられているならば、GMM成分を計算することができる。上述の過程を要約すると、以下のアルゴリズム1のようになる。2乃至5行目のトレーニング過程は、スキルセットAにおけるスキルa各々についてオフラインで実施される。実行中には、初期状態s0の観測後、6乃至7行目において最適なタスクパラメータpFが計算される。次いで、9乃至14行目に記載されているように各スキルが実行され、これによって学習されたモデル及び最適化結果が使用される。
【0046】
アルゴリズム1:操作タスクのために遷移スキルを最適化する。
入力:スキルセットA、各a∈AについてデモンストレーションDa、スキルシーケンスa
1 トレーニング中は、それぞれについて各a∈Aである。
2 タスクパラメータTPaを選択する。
3 所与のTPa及びDaにおいてTP-HSMMモデルθaをトレーニングする。
4 所与のTP1,a及びDaにおいて前提条件分布θ1,aを学習する。
5 所与のTPT,a及びDaにおいてシステム状態進展θT,aを学習する。
6 実行中は、初期システム状態s0を観測する。
7 信頼度ca(s0,p*
F)を最大化するp*
Fを計算する。
8 各ah∈aについて、以下を実行する。
9 現在のシステム状態shを観測する。
10 ahが遷移スキルならば、
11 p*
Fに従ってaの自由TPを設定する。
12 θahにおける状態の最も可能性の高いシーケンスk*を計算する。
13 k*に基づき基準軌跡ξ*を生成する。
14 終了までξ*を追跡するために運動制御を行う。
【0047】
本開示は、特に物体を操作するための、ロボットシステムの使用にも関し、ロボットは、スキルセットのうち少なくとも1つの遷移スキルとスキルセットのうち少なくとも1つのコアスキルとを有する特定のシーケンスを決定するために、スキルセットを実施することができ、さらにこの特定のシーケンスに基づき基準軌跡を生成する。
【0048】
以下の説明及び図面から、さらなる有利な実施形態が得られる。
【図面の簡単な説明】
【0049】
【
図1】1つの実施形態によるロボットシステムのトレーニング方法の第1の態様を示す図である。
【
図2a】ロボットシステム及び着目対象物体の種々の状況を示す図である。
【
図2b】ロボットシステム及び着目対象物体の種々の状況を示す図である。
【
図2c】ロボットシステム及び着目対象物体の種々の状況を示す図である。
【
図2d】ロボットシステム及び着目対象物体の種々の状況を示す図である。
【
図3】トレーニング状況におけるロボットシステムを示す図である。
【発明を実施するための形態】
【0050】
図1は、第1の実施形態によるロボットシステム200のトレーニング方法100を概略的に示している。
【0051】
このロボットシステムは、例えば、
図2a乃至
図2d及び
図3に概略図として示されている。
【0052】
ロボットシステム200を、物体の操作のために使用することができる。ロボットシステム200は、スキルセットを実施するように構成されている。この実施形態によれば、ロボットシステム200は、グリッパを有しており、例えば、
図2aに示されているようなスキル「頂部を把持する」を実施するように構成されていて、このスキルによりロボットシステムのグリッパは、物体300の頂部において、この物体300を把持することができる。
【0053】
図2aに示されている状況においては、物体300が離隔しすぎていることから、学習されたスキル「頂部を把持する」は、結果として不十分な実行をもたらしている。よって、
図2b及び
図2cに示されているように、物体300を近くに引き寄せる並進スキル「並進させる」を使用することにより、スキル「頂部を把持する」を容易にする目的で、この状況を改善することができる。
図2cにおいて、スキル「頂部を把持する」を実行可能なポジションに物体300が到達している。例えば、並進スキル「並進させる」を使用して物体を配置することが望ましい状況において、並進スキルが必要とされるのか否か、及び、並進スキルをどのようにして実行すべきであるのかを、ロボットシステムが決定し得るようにする目的で、ロボットシステムをトレーニングするための方法100について、
図1を参照しながら説明する。
【0054】
1つの実施形態によれば、方法100は、以下のステップを含む。
【0055】
ロボットにより学習されるべきスキルに関して、特に人間のトレーナから、物理的入力を受け取るステップ110であって、物理的入力は、ロボットシステム上における運動感覚デモンストレーションのセットを有する、ステップ110。
【0056】
前記スキルモデルのためにタスクパラメータセットを決定するステップ120であって、タスクパラメータセットを決定する当該ステップは、前記タスクパラメータセットのタスクパラメータ各々について、ある1つのタスクパラメータが、前記運動感覚デモンストレーションの一部である物体に関係する付属タスクパラメータであるのか、又は、ある1つのタスクパラメータが、物理的物体には関係しない自由タスクパラメータであるのかを決定することを含む、ステップ120。
【0057】
運動感覚デモンストレーションのセットから、前記タスクパラメータセットのタスクパラメータ各々についてデータを取得するステップ130。
【0058】
前記タスクパラメータセットと、タスクパラメータ各々について取得された前記データとを用いて、前記スキルモデルをトレーニングするステップ140。
【0059】
この実施形態によれば、運動感覚デモンストレーションは、ロボットシステム200の運動を含み、ロボットシステム200の特にロボットアーム210、特にエンドエフェクタ220の運動を含む。
図3には、例示的なトレーニング状況が示されている。ロボットシステム200のエンドエフェクタ220が、人間のトレーナの手240により案内される運動感覚デモンストレーションによって動かされる。
【0060】
この実施形態によれば、各スキルは、スキルモデルとして学習され、ここで、スキルモデルは、好ましくは、TP-GMM、タスクパラメータ化ガウス混合モデルと組み合わせられたTP-HSMM、タスクパラメータ化隠れセミマルコフモデルとして学習される。
【0061】
デモンストレーションに基づく学習の基本的な着想は、GMM、ガウス混合モデルなどの、規定されたスキルモデルを、少量のデモンストレーションに適合させる、ということである。各スキルについて、トレーナ、特に人間のトレーナは、複数回の、特にM
a回の運動感覚デモンストレーションを、ロボットにおいて実施する。各デモンストレーションは、
【数22】
のデータセットについてT
m個のデータポイントを含み、ここで、
【数23】
である。好ましくは、デモンストレーションは、タスクパラメータとも称せられるP個のそれぞれ異なる座標系TPのパースペクティブに基づき記録される。タスクパラメータについてデータを取得するために、デモンストレーションがグローバルなフレームからフレームp∈TPに変換され、
【数24】
ここで、
【数25】
は、基準フレーム、特に時点tにおけるワールドフレーム、に関するフレームpの並進及び回転である。
【0062】
TP-GMMは、パラメータ
【数26】
により記述され、ここで、Kは、混合モデルにおけるガウス成分の個数を表し、π
kは、各コンポーネントの事前確率であり、
【数27】
は、フレームp内のk番目の成分の平均及び共分散である。
【0063】
一旦学習されたならば、学習されたスキルについて軌跡を再現するために、実行中に、TP-GMMを使用することができる。即ち、観測されたフレームが、
【数28】
であるならば、学習されたTP-GMMは、それぞれ異なるフレームにわたりアフィン変換されたガウス成分を乗算することによって、パラメータ
【数29】
を有する1つの単一のGMMに変換され、これは以下のとおりである。
【数30】
ここで、各フレームpにおいて更新されたガウスのパラメータは、以下のように計算される。
【数31】
より詳細な点については、CALINON Sylvain著、「A tutorial on task-parameterized movement learning and retrieval」(Intelligent Service Robotics, 9(1):1-29, 2016年刊)を参照されたい。
【0064】
隠れセミマルコフモデル(HSMM)は、基礎を成す確率過程の経時的情報を埋め込むことによって、標準隠れマルコフモデル(HMM)を拡張する。即ち、HMMの場合には、基礎を成す隠れ過程がマルコフであるとみなされ、即ち、次の状態への遷移の確率は、現在の状態のみに依存するのに対し、HSMMの場合には、状態過程がセミマルコフであるとみなされる。このことは、次の状態への遷移が、現在の状態にも、その状態に入ってから経過した時間にも依存する、ということを意味する。
【0065】
デモンストレーションの時間と空間に関する特徴を学習するためのロボットスキルコーディングについて、タスクパラメータ化ガウス混合モデル(TP-GMM)と組み合わせて、隠れセミマルコフモデルを適用することの具体例の詳細は、例えば、以下の文献、即ち、TANWANI,Ajay Kumar, CALINON Sylvain著、「Learning Robot Manipulation Tasks with Task-Parameterized Hidden Semi-Markov Model」(IEEE Robotics and Automation Letters、第1~8頁、2016年刊)に開示されている。
【0066】
さらに詳細には、タスクパラメータ化HSMMモデルは、以下のパラメータ、即ち、
【数32】
から成る。ここで、a
khは、状態kから状態hへの遷移確率であり、
【数33】
は、状態kの期間にわたるガウス分布、即ち、所定数の連続的なステップにわたり状態kに留まる確率を表し、さらに
【数34】
は、上述のTP-GMMであり、各kについて放出確率、即ち、状態kに対応する観測の確率を表す。ただし、先行のπ
kは、HSMMの場合にはt=1のときの初期成分の確率分布のみを表す。後続の時間ステップにおける成分の確率分布は、基礎を成すセミマルコフモデルを介して決定される。ここで述べておくと、HSMMの場合、各状態は、関連づけられたTP-GMMにおけるガウス成分に対応する。
【0067】
好ましくは、セミマルコフモデルの構造は線形であり、このことは、状態のシーケンスは決定論的であり、各状態における期間だけが確率的である、ということを意味する。この線形構造を、i≠jのときδij=0及びi=jのときδij=1として、πk=δ1k及びakh=δ(k+1)hを設定することにより達成することができる。線形構造であるとみなすと、各スキルは、同一のセグメントに追従し、別個のモデルにおいてトレーニングされる。好ましくは、分枝点は不要である。
【0068】
好ましくは、前述のTP-HSMMの形式は、リーマン多様体に適合させられ、その詳細な理論は、ZEESTRATEN,Martijn著、「Programming by demonstration on Riemannian manifolds」(2017年博士論文)を参照されたい。
【0069】
各スキルについて、トレーナ、特に人間のトレーナは、複数回の運動感覚デモンストレーションを、ロボットにおいて実施する。各運動感覚デモンストレーションは、ロボットシステムのエンドエフェクタの複数の状態と、運動感覚デモンストレーションの一部である物体の複数の状態とから成る状態シーケンスを有する。デモンストレーション中は、エンドエフェクタの状態及び物体の状態が記録される。
【0070】
特に、スキルa∈Aの場合、ただし、Aは、操作スキルセット、関与する物体セットは、O
a∈Oによって与えられ、デモンストレーションセットは、D
a={D
1,...D
Ma}によって与えられ、ここで、各デモンストレーションは、
【数35】
によって与えられ、ここで、D
mは、多様体M
ξ内のロボットエンドエフェクタ状態ξと、多様体M
p内の物体状態{p
o,o∈O
a}各々とから成る状態sのシーケンスである。これらのスキルの組合せを介して、望ましい最終状態に到達するために、これらの物体を操作することができる。
【0071】
本開示によれば、1つのスキルによって、ロボットシステムは、1つの物体を操作することができる。以下においては、物体の望ましい最終状態を有するコアスキルと、デモンストレーション中に物体の最終状態を任意に選択可能である遷移スキルとを区別する。
【0072】
スキルモデルのタスクパラメータセットは、スキルのフレキシビリティ及び一般化のために不可欠である。これによって、デモンストレーションの特徴を種々のパースペクティブに基づき学習させることができる。本開示によれば、2つの異なるタイプのタスクパラメータが導入される。
【0073】
一方では、タスクパラメータは通常はスキルに関係する物体に属し、それらの姿勢から構築される。これらは付属タスクパラメータと称せられる。付属タスクパラメータを、物体姿勢p∈M
pから構築することができる。例えば、
【数36】
の場合、付属タスクパラメータは、b=p及びA=diag(R,I
3)によって与えられ、ここで、Rは、pにおける配向に対応する回転行列である。
【0074】
ただし、他方では、並進スキルの場合、物理的物体に関係しないさらなる関連タスクパラメータが存在する。これらは、自由タスクパラメータと称せられる。自由タスクパラメータを知覚することはできず、ユーザ又は計画アルゴリズムによって明示的に設定することが望ましい。自由タスクパラメータである1つのパラメータを決定する選択は、並進スキルの実行の成果にじかに影響を及ぼす。
【0075】
1つの実施形態によれば、タスクパラメータセットを決定するステップ120は、以下のうちから、即ち、前記運動感覚デモンストレーションの一部である前記物体の姿勢に関連づけられたタスクパラメータ、自由タスクパラメータ、又は、ロボットシステムのエンドエフェクタの姿勢、特に初期姿勢に関連づけられたタスクパラメータのうちから、タスクパラメータを選択することを含む。特に、スキルaについて、TPaにより表されるタスクパラメータセットを、以下のうちから、即ち、関連する物体Oaのセット、Faにより表される自由タスクパラメータのセット、及び、rにより表されるロボットアームの初期姿勢のうちから選択することができる。一般に、タスクパラメータセットを、関与する総ての物体Oaと、rにより表されるロボットアームの初期姿勢とにフレームを付与すること、及び、遷移スキルのために自由タスクパラメータFaを使用することによって、選択することができる。即ち、TPa=Oa∪Fa∪{r}である。
【0076】
物体が関連性のないタスクパラメータを生成し、それによって計算コストが増加し及び/又は再現パフォーマンスが低下する可能性がある場合、物体フレームをタスクパラメータとして選択するべきではない。物体姿勢のような経時的に変化するタスクパラメータによって引き起こされる可能性のある1つの問題は、TP-HSMMが、タスクパラメータがロボットアーム運動にどのように影響を及ぼすかだけしかコーディングせず、ロボットアーム運動が物体姿勢にどのように作用するのかをコーディングしないことである。例えば、物体を動かすスキルを実行中に、その物体に属するフレーム内のロボットアームの軌跡は、唯一の単一の定点のみである。なぜならば、その物体は、把持されている間、ロボットアームのあらゆる運動に追従するからである。従って、ロボットアームは、再現中には、物体に追従することになり、即ち、物体が存在するところに留まる。それというのも、軌跡を生成する際に、ロボットアームは、物体フレーム内の単一の点成分を離れることなく自由に動く可能性がある、ということを認識していないからである。このケースにおいては、物体フレームをタスクパラメータとして使用しない方がよい。
【0077】
1つの実施形態によれば、タスクパラメータを選択するステップは、前記選択の再現エラーの検証に基づく。このためには、デモンストレーションとして与えられるグラウンドトゥルースを必要とする。通常、デモンストレーションセットはかなり小さく、そのため同一のデモンストレーションセットD
aがトレーニングと検証とに使用される。これによって検証、即ち、
【数37】
がもたらされる。ここで、ξ
tは、1つのデモンストレーションに基づくタスクパラメータTP
aのためのスキルモデルから取り出された軌跡であり、M
aは、デモンストレーションの回数であり、ここで、各デモンストレーションは、
【数38】
個の全観測のデータセットのためのT
m個のデータポイントを含む。
【0078】
1つのスキルのために関与する物体の個数が少ない場合には、タスクパラメータの総ての組合せについてモデルをトレーニングすることができ、上述の検証を用いて各選択を検証することができる。物体の個数がより多い場合には、計算時間を低減するために、トレーナは、好ましくは、タスクパラメータのいくつかの見込みがある選択を予め選択するものとするとよい。
【0079】
1つの実施形態によれば、この方法はさらに、1つのスキルの前提条件モデルを学習するステップ150を含み、この前提条件モデルは、初期時点におけるロボットシステム、特にロボットシステムのエンドエフェクタと物体との間の相対的関係を参照する。好ましくは、成功裏の実行を保証するために、1つのスキルが実行されたときに前提条件が満たされる。上述のように学習されたスキルモデルには、ロボットアーム、特にエンドエフェクタがどこからスタートすることになるのかについての情報は含まれているが、ロボットシステムのその他の環境、特に物体に関する情報は組み込まれていない。斯かる情報には、特定のスキルの実行がスタートしたときに、物体とロボットアーム、特にエンドエフェクタとが互いに対してどのように配置されているのかが含まれていることが望ましい。従って、1つの実施形態によれば、タスクパラメータ化ガウス、TP-Gが、各物体についてその物体の姿勢を適合させるためにデモンストレーションに基づき学習される。より具体的には、1つのスキルの前提条件モデルは、
【数39】
により定義され、ここで、
【数40】
は、初期時点1における物体pの初期姿勢のパースペクティブに基づく、時点1における物体oの初期姿勢のガウス分布である。
【0080】
有利には、前提条件モデルを、ロボットシステム上において実施される運動感覚デモンストレーションだけから学習させることができる。
【0081】
1つの実施形態によれば、この方法はさらに、スキルの効果モデルを学習するステップ160を含み、この効果モデルは、最終時点におけるロボットシステム、特にロボットシステムのエンドエフェクタと物体との間の相対的関係を参照する。上述のように学習されたスキルモデルには、ロボットアーム、特にエンドエフェクタがどこでストップすることになるのかについての情報は含まれているが、ロボットシステムのその他の環境、特に物体に関する情報は組み込まれていない。斯かる情報には、特定のスキルの実行が終了したときに、物体とロボットアーム、特にエンドエフェクタとが互いに対してどのように配置されているのかが含まれていることが望ましい。従って、1つの実施形態によれば、タスクパラメータ化ガウス、TP-Gが、各物体についてその物体の姿勢を適合させるためにデモンストレーションに基づき学習される。より具体的には、1つのスキルの効果モデルは、
【数41】
により定義され、ここで、
【数42】
は、初期時点1における物体pの初期姿勢のパースペクティブに基づく、時点Tにおける物体oの最終姿勢のガウス分布である。
【0082】
有利には、スキルモデルを、ロボットシステム上において実施される運動感覚デモンストレーションだけから学習させることができる。
【0083】
実際には、相対条件だけでなく絶対条件も組み込むために、γ1,a及びγT,aについて種々のタスクパラメータを選択することができる。好ましくは、スキルモデル及び/又は前提条件モデルは、物体姿勢の多様体Mp内において計算される。
【0084】
本開示は、ロボットシステム200により学習されるべきスキルに関して、特に人間のトレーナからの、物理的入力を介してトレーニングし得るように構成されたロボットシステム200にも関し、ここで、物理的入力は、既述の実施形態のいずれかに記載の方法100によるロボット上における運動感覚デモンストレーションのセットを有する。
【0085】
1つの実施形態によれば、ロボットシステム200は、ロボットシステムのエンドエフェクタにより1つの軌跡を追跡するように構成されている。好ましくは、デモンストレーション中に、ロボットシステムのエンドエフェクタの軌跡を、例えば、ロボットシステムの制御モジュールにより取り出すことができる。
【0086】
1つの実施形態によれば、ロボットシステム200は、着目対象物体300を検出するように構成されている。例えば、ロボットシステムは、物体300を検出するためにカメラモジュールを有する。好ましくは、デモンストレーション中に、物体に関連づけられたタスクパラメータが、ロボットシステム200のカメラモジュールにより検出される。
【0087】
本開示は、既述の実施形態によるロボットシステム200を制御するためのコンピュータにも関し、ここで、コンピュータは、既述の実施形態による方法100を実行するように構成されている。
【0088】
本開示は、コンピュータプログラムコードを有するコンピュータプログラムにも関し、このコンピュータプログラムコードは、コンピュータにおいて実行されるときに、このコンピュータが既述の実施形態による方法100を実施し得るようにする。
【0089】
本開示は、既述の実施形態によるコンピュータプログラムを有する機械可読記憶媒体にも関する。
【0090】
本開示は、特に物体300を操作するための、ロボットシステム200の使用にも関し、このロボットシステム200は、既述の実施形態のいずれかによる方法に従ってロボットシステムにより、及び/又は、既述の実施形態によるコンピュータを用いて、及び/又は、既述の実施形態によるコンピュータプログラムを用いて、学習されたスキルセットを有するスキルシーケンスを実行するために、スキルセットを実施可能である。
【0091】
上述の方法に従って、自由タスクパラメータの最適な選択を決定した後、以下のようにしてスキルシーケンスが実行される。h=0からスタートして、総ての関連する物体及びロボットアームの姿勢を含む現在のシステム状態shが、知覚及びロボット状態推定器などのような状態推定システムから取得される。次いで、スキルモデルのトレーニング中に使用されるタスクパラメータの最適な選択に従って、関連づけられたタスクパラメータがshから構築される。ある1つのスキルが遷移スキルである場合には、l個の物体に関連づけられた自由タスクパラメータを、状態推定システムから取得することはできず、その代わりに上述の最適な選択に従って設定することが望ましい。従って、タスクパラメータの完全なセットが与えられているならば、GMM成分を計算することができる。上述の過程を要約すると、以下のアルゴリズム1のようになる。2乃至5行目のトレーニング過程は、スキルセットAにおけるスキルa各々についてオフラインで実施される。実行中は、初期状態s0の観測後、6乃至7行目において、最適なタスクパラメータpFが計算される。次いで、9乃至14行目に記載されているように各スキルが実行され、これによって学習されたモデル及び最適化結果が使用される。
【0092】
アルゴリズム1:操作タスクのために遷移スキルを最適化する。
入力:スキルセットA、各a∈AについてデモンストレーションDa、スキルシーケンスa
1 トレーニング中は、それぞれについて各a∈Aである。
2 タスクパラメータTPaを選択する。
3 所与のTPa及びDaにおいてTP-HSMMモデルθaをトレーニングする。
4 所与のTP1,a及びDaにおいて前提条件分布θ1,aを学習する。
5 所与のTPT,a及びDaにおいてシステム状態進展θT,aを学習する。
6 実行中は、初期システム状態s0を観測する。
7 信頼度ca(s0,p*
F)を最大化するp*
Fを計算する。
8 各ah∈aについて、以下を実行する。
9 現在のシステム状態shを観測する。
10 ahが遷移スキルならば、
11 p*
Fに従ってaの自由TPを設定する。
12 θahにおける状態の最も可能性の高いシーケンスk*を計算する。
13 k*に基づき基準軌跡ξ*を生成する。
14 終了までξ*を追跡するために運動制御を行う。
【0093】
本開示は、特に物体を操作するための、ロボットシステム200の使用にも関し、このロボットシステム200は、スキルセットのうち少なくとも1つの遷移スキルとスキルセットのうち少なくとも1つのコアスキルとを有する特定のシーケンスを決定するために、スキルセットを実施することができ、さらにこの特定のシーケンスに基づき基準軌跡を生成する。