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

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

▶ ローベルト ボツシユ ゲゼルシヤフト ミツト ベシユレンクテル ハフツングの特許一覧

特開2023-36559ロボット装置、ロボット制御モデルをトレーニングするコンピュータ実装された方法及びロボット装置を制御する方法
<>
  • 特開-ロボット装置、ロボット制御モデルをトレーニングするコンピュータ実装された方法及びロボット装置を制御する方法 図1
  • 特開-ロボット装置、ロボット制御モデルをトレーニングするコンピュータ実装された方法及びロボット装置を制御する方法 図2A
  • 特開-ロボット装置、ロボット制御モデルをトレーニングするコンピュータ実装された方法及びロボット装置を制御する方法 図2B
  • 特開-ロボット装置、ロボット制御モデルをトレーニングするコンピュータ実装された方法及びロボット装置を制御する方法 図3A
  • 特開-ロボット装置、ロボット制御モデルをトレーニングするコンピュータ実装された方法及びロボット装置を制御する方法 図3B
  • 特開-ロボット装置、ロボット制御モデルをトレーニングするコンピュータ実装された方法及びロボット装置を制御する方法 図3C
  • 特開-ロボット装置、ロボット制御モデルをトレーニングするコンピュータ実装された方法及びロボット装置を制御する方法 図4
  • 特開-ロボット装置、ロボット制御モデルをトレーニングするコンピュータ実装された方法及びロボット装置を制御する方法 図5
  • 特開-ロボット装置、ロボット制御モデルをトレーニングするコンピュータ実装された方法及びロボット装置を制御する方法 図6
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023036559
(43)【公開日】2023-03-14
(54)【発明の名称】ロボット装置、ロボット制御モデルをトレーニングするコンピュータ実装された方法及びロボット装置を制御する方法
(51)【国際特許分類】
   B25J 13/00 20060101AFI20230307BHJP
   G06T 7/00 20170101ALI20230307BHJP
   G06N 3/04 20230101ALI20230307BHJP
   G06N 20/00 20190101ALI20230307BHJP
   G06N 3/08 20230101ALI20230307BHJP
【FI】
B25J13/00 Z
G06T7/00 350B
G06N3/04
G06N20/00
G06N3/08
【審査請求】未請求
【請求項の数】15
【出願形態】OL
【外国語出願】
(21)【出願番号】P 2022139029
(22)【出願日】2022-09-01
(31)【優先権主張番号】10 2021 209 646.8
(32)【優先日】2021-09-02
(33)【優先権主張国・地域又は機関】DE
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.JAVA
(71)【出願人】
【識別番号】390023711
【氏名又は名称】ローベルト ボツシユ ゲゼルシヤフト ミツト ベシユレンクテル ハフツング
【氏名又は名称原語表記】ROBERT BOSCH GMBH
【住所又は居所原語表記】Stuttgart, Germany
(74)【代理人】
【識別番号】100114890
【弁理士】
【氏名又は名称】アインゼル・フェリックス=ラインハルト
(74)【代理人】
【識別番号】100098501
【弁理士】
【氏名又は名称】森田 拓
(74)【代理人】
【識別番号】100116403
【弁理士】
【氏名又は名称】前川 純一
(74)【代理人】
【識別番号】100134315
【弁理士】
【氏名又は名称】永島 秀郎
(74)【代理人】
【識別番号】100162880
【弁理士】
【氏名又は名称】上島 類
(72)【発明者】
【氏名】アン ビエン ゴ
(72)【発明者】
【氏名】アレクサンダー クス
(72)【発明者】
【氏名】ハンナ ツィーシェ
(72)【発明者】
【氏名】ミロスラフ ガブリエル
(72)【発明者】
【氏名】フィリップ クリスティアン シリンガー
(72)【発明者】
【氏名】ゾハー フェルドマン
【テーマコード(参考)】
3C707
5L096
【Fターム(参考)】
3C707KS23
3C707KS36
3C707KT03
3C707KT06
3C707KV18
3C707LS15
3C707LV02
3C707LV14
3C707LW15
5L096BA05
5L096CA02
5L096EA39
5L096FA01
5L096FA33
5L096FA67
5L096GA30
5L096HA11
5L096KA04
(57)【要約】      (修正有)
【課題】ロボット装置を制御する方法に関する。
【解決手段】第1のピックアップ予測は、画像の各画像点に対して、第1のピックアップロボットコンフィギュレーションベクトルを、割り当てられる第1の成功確率を伴って、含み、方法はさらに、第2のピックアップ予測を生成するために、画像を第2の予測モデルへ供給することを含み、第2のピックアップ予測は、画像の各画像点に対して、第2のピックアップロボットコンフィギュレーションベクトルを、割り当てられる第2の成功確率を伴って、含み、方法はさらに、第3のピックアップ予測を生成するために、第1のピックアップ予測及び第2のピックアップ予測をロボット制御モデルの混合モデルへ供給することを含む。
【選択図】図2A
【特許請求の範囲】
【請求項1】
ロボット制御モデルをトレーニングするコンピュータ実装された方法(200A,200B)であって、前記ロボット制御モデルは、1つ又は複数の対象物(114)のうちの1つの対象物をピックアップするようにロボット装置(101)を制御するように構成されており、
前記方法(200A,200B)は、
・第1のピックアップ予測(206(1))を生成するために、前記1つ又は複数の対象物(114)を示す画像(202)を、前記ロボット制御モデルの第1の予測モデル(204(1))へ供給することを含み、前記第1のピックアップ予測(206(1))は、前記画像(202)の各画像点に対して、前記ロボット装置(101)のコンフィギュレーションを記述する各第1のピックアップロボットコンフィギュレーションベクトルを、割り当てられる予測された第1の成功確率を伴って、含み、
・第2のピックアップ予測(206(2))を生成するために、前記画像(202)を前記ロボット制御モデルの第2の予測モデル(204(2))へ供給することを含み、前記第2のピックアップ予測(206(2))は、前記画像(202)の各画像点に対して、前記ロボット装置(101)のコンフィギュレーションを記述する各第2のピックアップロボットコンフィギュレーションベクトルを、割り当てられる予測された第2の成功確率を伴って、含み、
・第3のピックアップ予測(218)を生成するために、前記第1のピックアップ予測(206(1))及び前記第2のピックアップ予測(206(2))を前記ロボット制御モデルの混合モデル(212)へ供給することを含み、前記第3のピックアップ予測(218)は、前記画像(202)の各画像点に対して、
・前記第1のピックアップロボットコンフィギュレーションベクトルと前記第2のピックアップロボットコンフィギュレーションベクトルとの、第1の重み付け係数(214)によって重み付けされた組合せである第3のピックアップロボットコンフィギュレーションベクトル、及び、
・前記予測された第1の成功確率と前記予測された第2の成功確率との、第2の重み付け係数(216)によって重み付けされた組合せである、予測された第3の成功確率
を含み、
前記方法(200A,200B)はさらに、
・前記画像(202)の少なくとも1つの画像点に成功したピックアップが割り当てられている目標データ(224)に基づいて、前記少なくとも1つの画像点に対して生成された、前記予測された第3の成功確率が高くなるように、前記第1の重み付け係数(214)及び前記第2の重み付け係数(216)の適応化を行うことによって、前記ロボット制御モデルをトレーニングすることを含む、
方法(200A,200B)。
【請求項2】
前記第1の重み付け係数(214)は、すべての第1のピックアップロボットコンフィギュレーションに対する重み付け係数と、すべての第2のピックアップロボットコンフィギュレーションに対する重み付け係数とを含む、
請求項1に記載の方法(200A,200B)。
【請求項3】
前記第1の重み付け係数(214)は、各第1のピックアップロボットコンフィギュレーションベクトルに対する各重み付け係数を含み、各第2のピックアップロボットコンフィギュレーションベクトルに対する各重み付け係数を含む、
請求項1に記載の方法(200A,200B)。
【請求項4】
前記第2の重み付け係数(216)は、予測されたすべての第1の成功確率に対する重み付け係数と、予測されたすべての第2の成功確率に対する重み付け係数とを含む、
請求項1乃至3のいずれか一項に記載の方法(200A,200B)。
【請求項5】
前記第2の重み付け係数(216)は、各予測された第1の成功確率に対して各重み付け係数を含み、各予測された第2の成功確率に対して各重み付け係数を含む、
請求項1乃至3のいずれか一項に記載の方法(200A,200B)。
【請求項6】
前記ロボット制御モデルは、前記第1の重み付け係数(214)を伴う第1の畳み込みニューラルネットワークと、前記第2の重み付け係数(216)を伴う第2の畳み込みニューラルネットワークとを含み、前記第3のピックアップ予測(218)の生成は、
・前記第3のピックアップロボットコンフィギュレーションを生成するために、前記第1のピックアップロボットコンフィギュレーション及び前記第2のピックアップロボットコンフィギュレーションを前記第1の畳み込みニューラルネットワークへ供給することと、
・前記予測された第3の成功確率を生成するために、前記予測された第1の成功確率及び前記予測された第2の成功確率を前記第2の畳み込みニューラルネットワークへ供給することと、
を含む、
請求項1に記載の方法(200A,200B)。
【請求項7】
前記方法(200A,200B)はさらに、
・前記画像(202)のセグメンテーションを用いてセグメンテーション画像を生成することを含み、前記セグメンテーション画像の複数の画像点は、前記1つ又は複数の対象物(114)に割り当てられ、
・前記第1の重み付け係数(214)を生成するために、前記生成されたセグメンテーション画像を前記ロボット制御モデルの第1の重み付けモデル(244)へ供給することを含み、
・前記第2の重み付け係数(216)を生成するために、前記生成されたセグメンテーション画像を前記ロボット制御モデルの第2の重み付けモデル(246)へ供給することを含み、
・前記第1の重み付け係数(214)及び前記第2の重み付け係数(216)の適応化を用いた前記ロボット制御モデルの前記トレーニングは、前記第1の重み付けモデル(244)及び前記第2の重み付けモデル(246)の適応化を含む、
請求項1乃至5のいずれか一項に記載の方法(200A,200B)。
【請求項8】
前記方法(200A,200B)はさらに、
・前記画像(202)内に示されている各表面に対して、示されている前記表面の法線ベクトル及び関連する標準偏差を求めることを含み、
・前記第1の重み付け係数(214)を生成するために、求められた前記法線ベクトル及び関連する前記標準偏差を前記ロボット制御モデルの第3の重み付けモデル(244)へ供給することを含み、
・前記第2の重み付け係数(216)を生成するために、求められた前記法線ベクトル及び関連する前記標準偏差を前記ロボット制御モデルの第4の重み付けモデル(246)へ供給することを含み、
・前記第1の重み付け係数(214)及び前記第2の重み付け係数(216)の適応化を用いた前記ロボット制御モデルの前記トレーニングは、前記第3の重み付けモデル(244)及び前記第4の重み付けモデル(246)の適応化を含む、
請求項1乃至5のいずれか一項に記載の方法(200A,200B)。
【請求項9】
各ピックアップロボットコンフィギュレーションベクトルは、前記ロボット装置(101)のコンフィギュレーションを記述する値のタプルであり、
前記目標データ(224)における前記少なくとも1つの画像点に、目標ピックアップロボットコンフィギュレーションを記述する目標タプルの1つ又は複数の値を割り当て、
前記ロボット制御モデルが、前記少なくとも1つの画像点に対して、前記目標タプルの前記1つ又は複数の値を有する値のタプルを有する第3のピックアップロボットコンフィギュレーションベクトルを生成するように、かつ、前記第3のピックアップロボットコンフィギュレーションベクトルに割り当てられる前記予測された第3の成功確率が高くなるように、前記ロボット制御モデルをトレーニングする、
請求項1乃至8のいずれか一項に記載の方法(200A,20B)。
【請求項10】
前記目標データ(224)において、前記画像(202)の少なくとも1つの別の画像点に、失敗したピックアップを割り当て、前記第1の重み付け係数(214)及び前記第2の重み付け係数(216)の適応化を用いて、前記少なくとも1つの別の画像点に対して生成された前記予測された第3の成功確率が低減されるように前記ロボット制御モデルをトレーニングする、
請求項1乃至9のいずれか一項に記載の方法(200A,200B)。
【請求項11】
ロボット装置(101)を制御する方法(400)であって、前記方法(400)は、
・1つ又は複数の対象物(114)を示す画像(402)を検出することを含み、
・第3のピックアップ予測(418)を生成するために、前記画像(402)を、請求項1乃至10のいずれか一項に記載の方法に従ってトレーニングされたロボット制御モデルへ供給することを含み、
・予測された最高の第3の成功確率が割り当てられる前記第3のピックアップ予測(418)の前記第3のピックアップロボットコンフィギュレーションベクトルに対して、前記第3のピックアップロボットコンフィギュレーションベクトルに従って、前記1つ又は複数の対象物(114)のうちの、前記第3のピックアップロボットコンフィギュレーションベクトルの前記画像点に割り当てられている対象物をピックアップするように前記ロボット装置(101)を制御することを含む、
方法(400)。
【請求項12】
プロセッサによる実行時に、請求項1乃至11のいずれか一項に記載の方法(200A,200B,400)を前記プロセッサに実施させるための命令を含むコンピュータプログラム。
【請求項13】
プロセッサによる実行時に、請求項1乃至11のいずれか一項に記載の方法(200A,200B,400)を前記プロセッサに実施させるための命令を格納しているコンピュータ可読媒体。
【請求項14】
請求項1乃至10のいずれか一項に記載の方法(200A,200B)を実施するように構成されているコンピュータを含むトレーニング装置。
【請求項15】
ロボット装置(101)であって、前記ロボット装置(101)は、
・対象物をピックアップするように構成されている少なくとも1つのロボットアーム(120)と、
・制御装置(106)と、
を含み、前記制御装置(106)は、
・請求項1乃至10のいずれか一項に記載の方法に従ってトレーニングされた前記ロボット制御モデルを使用して、1つ又は複数の対象物(114)を示す画像(402)に対して、第3のピックアップ予測(418)を求めるように構成されており、
・予測された最高の第3の成功確率が割り当てられる第3のピックアップ予測(418)の第3のピックアップロボットコンフィギュレーションベクトルに対して、第3のピックアップロボットコンフィギュレーションベクトルに従って、前記1つ又は複数の対象物(114)のうちの、前記第3のピックアップロボットコンフィギュレーションベクトルの前記画像点に割り当てられている前記対象物をピックアップするように、前記少なくとも1つのロボットアーム(120)を制御するように構成されている、
ロボット装置(101)。
【発明の詳細な説明】
【技術分野】
【0001】
種々の実施例は、概して、ロボット装置、ロボット制御モデルをトレーニングするコンピュータ実装された方法及びロボット装置を制御する方法に関する。
【背景技術】
【0002】
ロボット装置は、たとえば、製造、生産、メンテナンス、家事、医療技術等において使用することができる。ここでは、ロボット装置は、たとえば、対象物をピックアップして、移動させることができる。ここでは、ロボット制御モデルは、ロボット装置が、複数の対象物のうちのどの対象物をピックアップすべきか、さらにはロボット装置が(たとえば1つ又は複数のロボットアームを使用して)この対象物をどのようにピックアップし、移動させるのかを求めることができる。
【0003】
これに関連して、複数の対象物を示す画像に基づいて、ピックアップされるべき対象物と、ロボット装置の関連するコンフィギュレーションとを求める種々のモデルが既知である。
【0004】
J.Mahler等著の刊行物「Dex-net 2.0:Deep learning to plan robust grasps with synthetic point clouds and analytic grasp metrics」(arXiv:1703.09312、2017年)(以下においては、参考文献[1]と記す)には、複数の対象物を示す深度画像に基づいて、複数の対象物のうちの1つの対象物を把持するためにロボットアームのグリップコンフィギュレーションを求めるモデル(Dexterity Network、Dex-Net)が記載されている。
【0005】
A.Zeng等著の刊行物「Learning Synergies between Pushing and Grasping with Self-supervised Deep Reinforcement Learning」(arXiv:1803.09956、2018年)(以下においては、参考文献[2]と記す)には、複数の対象物を示す深度画像に基づいて、ロボットアームのグリップコンフィギュレーションと、関連する各成功確率とを求めるモデルが記載されている。
【0006】
L.Berscheid等著の刊行物「Robot Learning of Shifting Objects for Grasping in Cluttered Environments」(arXiv:1907.11035、2019年)(以下においては、参考文献[3]と記す)には、複数の対象物を示す深度画像に基づいて、ロボットアームのグリップコンフィギュレーションを求めるモデルが記載されている。
【0007】
D.Morrison等著の刊行物「Learning robust,real-time,reactive robotic grasping」(The International Journal of Robotics Research、2020年)(以下においては、参考文献[4]と記す)には、複数の対象物を示す深度画像に基づいて、ロボットアームのグリップコンフィギュレーションを求めるモデルが記載されている。
【0008】
V.Satish等著の刊行物「On-policy dataset synthesis for learning robot grasping policies using fully convolutional deep networks」(IEEE Robotics and Automation Letters、2019年)(以下においては、参考文献[5]と記す)には、複数の対象物を示す深度画像に基づいて、畳み込みニューラルネットワークを用いて、ロボットアームのグリップコンフィギュレーションを求めるモデルが記載されている。
【先行技術文献】
【非特許文献】
【0009】
【非特許文献1】刊行物「Dex-net 2.0:Deep learning to plan robust grasps with synthetic point clouds and analytic grasp metrics」、J.Mahler等著(arXiv:1703.09312、2017年)
【非特許文献2】刊行物「Learning Synergies between Pushing and Grasping with Self-supervised Deep Reinforcement Learning」、A.Zeng等著(arXiv:1803.09956、2018年)
【非特許文献3】刊行物「Robot Learning of Shifting Objects for Grasping in Cluttered Environments」、L.Berscheid等著(arXiv:1907.11035、2019年)
【非特許文献4】刊行物「Learning robust,real-time,reactive robotic grasping」、D.Morrison等著(The International Journal of Robotics Research、2020年)
【非特許文献5】刊行物「On-policy dataset synthesis for learning robot grasping policies using fully convolutional deep networks」、V.Satish等著(IEEE Robotics and Automation Letters、2019年)
【発明の概要】
【発明が解決しようとする課題】
【0010】
しかし、個々のモデルの質は、種々の要因に関連している。これらの要因はたとえば、入力データとトレーニングデータとの間の類似性、種々の対象物クラスに対する、ピックアップされるべき対象物の各トレーニング方法の適性、処理された画像における入力ノイズ及び/又はアーチファクトに関する敏感性等である。各モデルは、モデルにおいて仮定される条件に対して、最良の結果を提供する。各モデルは、各ハイパーパラメータ検索及びトレーニングデータ準備に関連している。たとえば、参考文献[4]は、高い密度にラベル付けされたグランドトゥルース画像に基づいている。たとえば、参考文献[5]は、現実の物理を近似した合成データ生成に基づいている。要するに、これらのモデルは、用途に応じて、利点と欠点とを有している。ロボット動作時に記録される画像も、トレーニングデータとは異なっており、予測不能であるので、どのモデルが最良の結果を提供するのかを予測することはできない。
【課題を解決するための手段】
【0011】
本方法(第1の例及び第11の例)及び本装置(第14の例及び第15の例)によって、ロボット装置を用いた対象物の成功したピックアップを改良することができる。ここでは、ロボット装置を用いて対象物が首尾良く(たとえば、落とされずに)ピックアップされる確率が高められる。具体的には、改良されたロボット制御モデルが提供される。
【0012】
ロボット装置は、あらゆる種類のコンピュータ制御された装置、たとえばロボット(たとえば、製造ロボット、メンテナンスロボット、家事ロボット、医療ロボット等)、車両(たとえば自律車両)、家事用装置、生産機械、パーソナルアシスタント、アクセス制御システム等であるものとしてよい。
【0013】
独立請求項1の特徴を有する方法は、第1の例を構成する。具体的には、第1の例に従ってトレーニングされたロボット制御モデルは、複数の予測モデルから、最も信頼に足るロボットコンフィギュレーションを選択する。本明細書に記載されたロボット制御モデルは、重み付け係数を含み、この重み付け係数は、種々の予測モデルによって予測されたロボットコンフィギュレーションに重み付けし、このようにして各予測モデルの利点及び欠点を考慮する。
【0014】
第1の重み付け係数は、すべての第1のピックアップロボットコンフィギュレーションに対する重み付け係数と、すべての第2のピックアップロボットコンフィギュレーションに対する重み付け係数とを含み得るものである。この段落において説明した特徴は、第1の例と組み合わせられて、第2の例を構成する。画像のすべての画像点に対する重み付け係数は、第1の重み付け係数の適応化のための計算技術的なコストを低減させることができる。
【0015】
第1の重み付け係数は、各第1のピックアップロボットコンフィギュレーションベクトルに対する各重み付け係数を含み得るものであり、各第2のピックアップロボットコンフィギュレーションベクトルに対する各重み付け係数を含み得るものである。この段落において説明した特徴は、第1の例と組み合わせられて、第3の例を構成する。画像点の様態の第1の重み付け行列は、トレーニングされた混合モデルの精度及び柔軟性を高めることができる。
【0016】
第2の重み付け係数は、予測されたすべての第1の成功確率に対する重み付け係数と、予測されたすべての第2の成功確率に対する重み付け係数とを含み得るものである。この段落において説明した特徴は、第1の例から第3の例のうちの1つ又は複数の例と組み合わせられて、第4の例を構成する。画像のすべての画像点に対する重み付け係数は、第2の重み付け係数の適応化のための計算技術的なコストを低減させることができる。
【0017】
第2の重み付け係数は、各予測された第1の成功確率に対して各重み付け係数を含み得るものであり、各予測された第2の成功確率に対して各重み付け係数を含み得るものである。この段落において説明した特徴は、第1の例から第3の例のうちの1つ又は複数の例と組み合わせられて、第5の例を構成する。画像点の様態の第2の重み付け行列は、トレーニングされた混合モデルの精度及び柔軟性を高めることができる。
【0018】
ロボット制御モデルは、第1の重み付け係数を伴う第1の畳み込みニューラルネットワークと、第2の重み付け係数を伴う第2の畳み込みニューラルネットワークとを含み得るものである。第3のピックアップ予測の生成は、
第3のピックアップロボットコンフィギュレーションを生成するために、第1のピックアップロボットコンフィギュレーション及び第2のピックアップロボットコンフィギュレーションを第1の畳み込みニューラルネットワークへ供給することと、
予測された第3の成功確率を生成するために、予測された第1の成功確率及び予測された第2の成功確率を第2の畳み込みニューラルネットワークへ供給することと、
を含み得るものである。この段落において説明した特徴は、第1の例と組み合わせられて、第6の例を構成する。
【0019】
畳み込みニューラルネットワークは、上述の同一の重み付け係数及び/又は重み付け行列と比較して、より低い複雑性を有するものとしてよい。これによって、ロボット制御モデルの効率を高めることができる。さらに、畳み込みニューラルネットワークはスケーリング可能であり、それによって柔軟性が高まる。さらに、最新のグラフィックプロセッサ(GPU)アーキテクチャの並列化を利用することができる。これは、たとえば、第1の畳み込みニューラルネットワークと第2の畳み込みニューラルネットワークとを並列化することによって行われる。具体的には、このようにトレーニングの消費時間を削減し、従って、効率を高めることができる。
【0020】
この方法はさらに、
画像のセグメンテーションを用いてセグメンテーション画像を生成することを含み得るものであり、セグメンテーション画像の複数の画像点は、1つ又は複数の対象物に割り当てられ、
第1の重み付け係数(これは任意選択的に、画像の各画像点に対して各重み付け係数を含む)を生成するために、生成されたセグメンテーション画像をロボット制御モデルの第1の重み付けモデルへ供給することを含み得るものであり、
第2の重み付け係数(これは任意選択的に、画像の各画像点に対して各重み付け係数を含む)を生成するために、生成されたセグメンテーション画像をロボット制御モデルの第2の重み付けモデルへ供給することを含み得るものであり、
第1の重み付け係数及び第2の重み付け係数の適応化を用いたロボット制御モデルのトレーニングは、第1の重み付けモデル及び第2の重み付けモデルの適応化を含むものである。この段落において説明した特徴は、第1の例から第5の例のうちの1つ又は複数の例と組み合わせられて、第7の例を構成する。ここでは、第1の重み付けモデル及び第2の重み付けモデルは、セグメンテーション画像を用いて、ロボット装置のタスクとは無関係に、対象物のピックアップに関する付加的な判断基準、たとえば対象物のピックアップに適していない領域を考慮することができる。
【0021】
この方法はさらに、
画像内に示されている各表面に対して、示されている表面の法線ベクトル及び関連する標準偏差を求めることを含み得るものであり、
第1の重み付け係数(これは任意選択的に、画像の各画像点に対して各重み付け係数を含む)を生成するために、求められた法線ベクトル及び関連する標準偏差をロボット制御モデルの第3の重み付けモデルへ供給することを含み得るものであり、
第2の重み付け係数(これは任意選択的に、画像の各画像点に対して各重み付け係数を含む)を生成するために、求められた法線ベクトル及び関連する標準偏差をロボット制御モデルの第4の重み付けモデルへ供給することを含み得るものであり、
第1の重み付け係数及び第2の重み付け係数の適応化を用いたロボット制御モデルのトレーニングは、第3の重み付けモデル及び第4の重み付けモデルの適応化を含むものである。この段落において説明した特徴は、第1の例から第5の例のうちの1つ又は複数の例と組み合わせられて、第8の例を構成する。ここでは、第1の重み付けモデル及び第2の重み付けモデルは、関連する標準偏差を有する法線ベクトルを用いて、ロボット装置のタスクとは無関係に、対象物のピックアップに関する付加的な判断基準、たとえば対象物のピックアップに適していない領域を考慮することができる。
【0022】
各ピックアップロボットコンフィギュレーションベクトルは、ロボット装置のコンフィギュレーションを記述する値のタプルであるものとしてよい。目標データにおける少なくとも1つの画像点には、目標ピックアップロボットコンフィギュレーションを記述する目標タプルの1つ又は複数の値が割り当てられるものとしてよい。ロボット制御モデルが、少なくとも1つの画像点に対して、目標タプルの1つ又は複数の値を有する値のタプルを有する第3のピックアップロボットコンフィギュレーションベクトルを生成するように(及び、任意選択的に、第3のピックアップロボットコンフィギュレーションベクトルに割り当てられる予測された第3の成功確率が高くなるように)、ロボット制御モデルがトレーニングされるものとしてよい。この段落において説明した特徴は、第1の例から第8の例のうちの1つ又は複数の例と組み合わせられて、第9の例を構成する。具体的には、ロボット制御モデルは、成功したピックアップの確率に関しても、対象物が首尾良くピックアップされ得るロボット装置のコンフィギュレーションに関しても、トレーニング可能である。
【0023】
目標データにおいて、画像の少なくとも1つの別の画像点に、失敗したピックアップが割り当てられるものとしてよく、ここでは、ロボット制御モデルは、第1の重み付け係数及び第2の重み付け係数の適応化を用いて、さらに、少なくとも1つの別の画像点に対して生成された予測された第3の成功確率が低減されるようにトレーニングされる。この段落において説明した特徴は、第1の例から第9の例のうちの1つ又は複数の例と組み合わせられて、第10の例を構成する。具体的には、ロボット制御モデルは、どの画像点が対象物のピックアップに適しているのかだけを学習するのではなく、どの画像点が適しているのかも学習することができる。
【0024】
ロボット装置を制御する方法は、
1つ又は複数の対象物を示す画像を検出することを含み得るものであり、
第3のピックアップ予測を生成するために、画像を、第1の例から第10の例のうちのいずれか1つの例に従ってトレーニングされたロボット制御モデルへ供給することを含み得るものであり、
予測された最高の第3の成功確率が割り当てられる第3のピックアップ予測の第3のピックアップロボットコンフィギュレーションベクトルに対して、第3のピックアップロボットコンフィギュレーションベクトルに従って、1つ又は複数の対象物のうちの、第3のピックアップロボットコンフィギュレーションベクトルの画像点に割り当てられている対象物をピックアップするようにロボット装置を制御することを含み得るものである。この段落において説明した方法は、第11の例を構成する。
【0025】
コンピュータプログラムは、プロセッサによる実行時に、第1の例から第11の例のうちの1つ又は複数の例に従って方法をプロセッサに実施させるための命令を含み得るものである。この段落において説明した特徴を有するコンピュータプログラムは、第12の例を構成する。
【0026】
コンピュータ可読媒体(たとえば、コンピュータプログラム製品、非一時的な記憶媒体、不揮発性記憶媒体)は、プロセッサによる実行時に、第1の例から第11の例のうちの1つ又は複数の例に従って方法をプロセッサに実施させるための命令を格納することができる。この段落において説明した特徴を有するコンピュータ可読媒体は、第13の例を構成する。
【0027】
トレーニング装置は、第1の例から第10の例のうちの1つ又は複数の例に従って方法を実施するように構成されているコンピュータを含み得るものである。この段落において説明した特徴を有するトレーニング装置は、第14の例を構成する。
【0028】
ロボット装置は、
対象物をピックアップするように構成されている少なくとも1つのロボットアームと、
制御装置と、
を含み得るものであり、制御装置は、
第1の例から第10の例うちのいずれか1つの例に従ってトレーニングされたロボット制御モデルを使用して、1つ又は複数の対象物を示す画像に対して、第3のピックアップ予測を求めるように構成されており、
予測された最高の第3の成功確率が割り当てられる第3のピックアップ予測の第3のピックアップロボットコンフィギュレーションベクトルに対して、第3のピックアップロボットコンフィギュレーションベクトルに従って、1つ又は複数の対象物のうちの、第3のピックアップロボットコンフィギュレーションベクトルの画像点に割り当てられている対象物のピックアップを実行するように、少なくとも1つのロボットアームを制御するように構成されている。この段落において説明した特徴を有するロボット装置は、第15の例を構成する。具体的には、ロボット装置は、高められた確率で対象物を首尾良くピックアップすることができる。
【0029】
本発明の実施例を図面に示し、以下において、より詳細に説明する。
【図面の簡単な説明】
【0030】
図1】種々の実施形態による例示的なロボット装置アセンブリを示す図である。
図2A】種々の実施形態によるロボット制御モデルをトレーニングするためのフローチャートである。
図2B】種々の実施形態によるロボット制御モデルをトレーニングするためのフローチャートである。
図3A】例示的な画像を示す図である。
図3B】例示的に求められたピックアップロボットコンフィギュレーションマップを説明するための図である。
図3C】例示的に求められたピックアップ成功確率マップを説明するための図である。
図4】種々の実施形態によるロボット装置を制御するためのフローチャートである。
図5】種々の実施形態による、複数のロボットアームを有する例示的なロボット装置アセンブリを示す図である。
図6】種々の実施形態によるロボット制御モデルをコンピュータ実装トレーニングするためのフローチャートである。
【発明を実施するための形態】
【0031】
1つの実施形態においては、「コンピュータ」は、ハードウェア、ソフトウェア、ファームウェア又はそれらの組合せとすることができるあらゆる種類の論理実装エンティティとして理解され得る。従って、1つの実施形態においては、「コンピュータ」を、ハードワイヤード論理回路又はプログラマブル論理回路、たとえばプログラマブルプロセッサ、たとえばマイクロプロセッサ(たとえばCISC(大きい命令ストックを有するプロセッサ)又はRISC(低減された命令ストックを有するプロセッサ))とすることができる。「コンピュータ」は、1つ又は複数のプロセッサを含み得るものである。「コンピュータ」は、プロセッサによって実装又は実行されるソフトウェアであるものとしてもよく、これは、たとえば、あらゆる種類のコンピュータプログラム、たとえば、Javaのような仮想機械コードを使用するコンピュータプログラムである。以下において詳細に説明する各機能の他の態様の各実装を、選択的な実施形態との一致において、「コンピュータ」と理解することができる。
【0032】
対象物をピックアップして、移動させるようにロボット装置を制御する際に、ロボット装置のコンフィギュレーションを求めるために、ロボット制御モデルを使用することができる。この場合には、用途に応じて、種々の予測モデルが、利点及び欠点を有し得る。種々の実施例は、個々の予測モデルの利点及び欠点を考慮し、ロボット装置のコンフィギュレーションを求めることができるロボット制御モデルに関し、これによって、ロボット装置が、高められた確率で対象物を首尾良くピックアップする。具体的には、対象物をピックアップするための改良されたロボット制御モデルが提供される。
【0033】
図1は、ロボット装置アセンブリ100を示している。ロボット装置アセンブリ100は、ロボット装置101を含み得るものである。図1に示され、以下において例示的に記述されるロボット装置101は、説明のために、例示的なロボット装置を表しており、たとえば、ワークピースの移動、組み付け又は加工のためのロボットアームの形態の産業ロボットを含み得るものである。ロボット装置は、たとえば、ロボット(たとえば製造ロボット、メンテナンスロボット、家事ロボット、医療ロボット等)、車両(たとえば自律車両)、家事用装置、生産機械、パーソナルアシスタント、アクセス制御システム等であり得る、あらゆる種類のコンピュータ制御された装置であるものとしてよいことを指摘しておく。
【0034】
ロボット装置101は、ロボット肢102、103、104及び台座(又は一般的には保持部)105を含み、台座によってこれらのロボット肢102、103、104が支えられている。「ロボット肢」という用語は、ロボット装置101の可動部分を指し、その操作は、たとえばタスクを実行するために、たとえば1つ又は複数の能力を実施又は実行するために、周囲との物理的な相互作用を可能にする。
【0035】
制御のために、ロボット装置アセンブリ100は、制御プログラムに従って周囲との相互作用を実現するように構成されている制御装置106を備えている。ロボット肢102、103、104の(台座105から見て)最後の要素104は、エンドエフェクタ104とも称され、たとえば、把持工具又は吸引装置(たとえば吸込ヘッド)又はこれに類する1つ又は複数の工具を含み得るものである。
【0036】
(台座105により近い)他のロボット肢102、103は、位置決め装置を構成することができ、そのため、エンドエフェクタ104とともに、ロボットアーム120(又は関節アーム)がエンドエフェクタ104を伴ってその端部に設けられている。ロボットアーム120は、人間の腕と同様の機能を果たすことができる、(場合によっては、自身の端部に工具を有する)機械的なアームである。
【0037】
ロボット装置101は、結合要素107、108、109を含み得るものであり、これらの結合要素107、108、109は、ロボット肢102、103、104を相互に及び台座105と結合する。結合要素107、108、109は、1つ又は複数のジョイントを含み得るものであり、これらのジョイントのうちのそれぞれは、互いに相対的に、関連するロボット肢のための回転運動及び/又は並進運動(即ち、移動)を提供することができる。ロボット肢102、103、104の動作は、制御装置106によって制御される動作部材によって開始されるものとしてよい。
【0038】
「動作部材」という用語は、機構に影響を与えるように駆動されることへの応答として適しているコンポーネントと理解され得る。動作部材は、制御装置106によって出力された指示(いわゆるアクティブ化)を機械的な運動に変換することができる。動作部材、たとえば電気機械的な変換器は、電気エネルギを自身の駆動制御に対する反応として機械的なエネルギに変換するように構成されるものとしてよい。
【0039】
「制御装置」(「制御機構」とも称される)という用語は、たとえば、記憶媒体に格納されているソフトウェア、ファームウェア又はそれらの組合せを実行することができ、さらに、たとえばこの例における動作部材に指示を与えることができる回路及び/又はプロセッサを含み得るあらゆる種類の論理的な実装ユニットと理解され得る。制御装置は、たとえばプログラムコード(たとえばソフトウェア)によって、システム、この例においてはロボットの動作を制御するように構成されるものとしてよい。
【0040】
この例においては、制御装置106は、コンピュータ110及びメモリ111を含み、メモリ111は、コード及びデータを格納し、そのコード及びデータに基づいてコンピュータ110がロボット装置101を制御する。種々の実施形態によれば、制御装置106は、メモリ111に格納されているロボット制御モデル112に基づいてロボット装置101を制御する。
【0041】
種々の実施形態によれば、ロボット装置101(たとえばロボットアーム120)は、1つ又は複数の対象物114をピックアップするように構成されるものとしてよい。種々の実施形態によれば、ロボット装置101(たとえばロボットアーム120)は、ピックアップされた対象物を移動させるように構成されるものとしてよい。
【0042】
様々な実施形態によれば、ロボット装置アセンブリ100は、1つ又は複数のセンサを含み得るものである。1つ又は複数のセンサは、ロボット装置の状態を特徴付けるセンサデータを提供するように構成されるものとしてよい。たとえば、1つ又は複数のセンサは、画像化センサ、たとえばカメラ(たとえば標準的なカメラ、デジタルカメラ、赤外線カメラ、ステレオカメラ等)、レーダセンサ、LIDARセンサ、ポジションセンサ、速度センサ、超音波センサ、加速度センサ、圧力センサ等を含み得るものである。種々の実施形態によれば、画像化センサは、1つ又は複数の対象物114を示す画像を提供する(たとえば検出し、制御装置106に伝送する)ように構成されるものとしてよい。画像は、RGB画像、RGB-D画像又は深度画像(D画像とも称される)であるものとしてよい。本明細書に記載されている深度画像は、深度情報を有するあらゆる種類の画像であるものとしてよい。具体的には、深度画像は、1つ又は複数の対象物に関する3次元情報を含み得るものである。本明細書に記載されている深度画像は、たとえば、LIDARセンサ及び/又はレーダセンサによって提供される点群を含み得るものである。深度画像は、たとえば、LIDARセンサによって提供される、深度情報を有する画像であるものとしてよい。
【0043】
ロボット制御モデル112は、1つ又は複数の対象物114を示す画像に対して、1つ又は複数の対象物114のうちの1つの対象物をピックアップするための(さらに任意選択的に、移動させるための)ロボットコンフィギュレーションを求めるように構成されるものとしてよい。制御装置106は、ロボット制御モデル112を使用して、ロボット装置101を、求められたロボットコンフィギュレーションを用いて対象物のピックアップを実行するように制御するように構成されるものとしてよい。ロボット制御モデル(たとえばロボット制御モデル112)の1つのロボット制御モデルに従って、画像に基づいて制御パラメータを求めることは、図4を参照して説明される。そのようなロボット制御モデルの例示的なトレーニングを、図2A及び図2Bを参照して説明する。
【0044】
本明細書において使用される用語「対象物のピックアップ」は、ロボット装置101(たとえばロボットアーム120)の運動の結果として対象物を移動させることができるような、対象物の接触であるものとしてよい。ピックアップは、エンドエフェクタ104の種類に関連するものとしてよい。たとえば、エンドエフェクタ104は、把持工具を含み得るものであり、対象物のピックアップは、対象物の把持であるものとしてよい。たとえば、エンドエフェクタ104は、吸引装置(たとえば吸込ヘッド)を含み得るものであり、対象物のピックアップは、対象物の吸込であるものとしてよい。
【0045】
種々の実施形態によれば、ロボット装置101が動作していない間に、ロボット制御モデル112が生成(たとえば学習又はトレーニング)されるものとしてよい。種々の実施形態によれば、生成されたロボット制御モデル112は、ロボット装置101の動作中に、ロボット装置101によって実行されるべき能力を求めるために使用されるものとしてよい。種々の実施形態によれば、生成されたロボット制御モデル112は、ロボット装置101の動作中に、付加的にトレーニングされるものとしてよい。
【0046】
図2Aには、種々の実施形態によるロボット制御モデルをトレーニングするためのフローチャート200Aが示されている。説明のために、以下に、制御装置106及びロボット装置101に関する種々の態様を記載する。他のロボット装置アセンブリが使用可能であることを指摘しておく。
【0047】
種々の実施形態によれば、1つ又は複数の対象物を示す画像202が提供され得る。画像202は、たとえば、1つ又は複数のセンサ113によって提供可能であり、1つ又は複数の対象物114を示すことができる。
【0048】
コンピュータ110は、ロボット制御モデルを実現するように構成されるものとしてよい。ロボット制御モデルは、複数の予測モデル204(2≦i≦N)を含み得るものである。ここでは、「N」は、2以上のあらゆる整数であるものとしてよい。具体的には、ロボット制御モデルは、
【数1】
に従って、予測モデルgのセットGを含み得るものである。複数の予測モデル204(2≦i≦N)は、互いに異なるものとしてよい。複数の予測モデル204(2≦i≦N)の各予測モデルは、画像の入力に応答して、対象物をピックアップするためのピックアップ予測を生成するように構成されるものとしてよい。ここでは、各予測モデルに、種々異なる画像が供給されるものとしてよい。たとえば、複数の予測モデル204(2≦i≦N)のうちの多くの予測モデルが、RGB画像に対するピックアップ予測を生成するように構成されるものとしてよく、複数の予測モデル204(2≦i≦N)のうちの別の予測モデルが、深度画像(又はRGB-D画像)に対するピックアップ予測を生成するように構成されるものとしてよい。複数の予測モデル204(2≦i≦N)のうちの1つの予測モデル204(i)が、RGB画像及び深度画像の入力に応答して、ピックアップ予測を生成するように構成されるものとしてもよい。ここでは、1つ又は複数のセンサ113は、各画像を検出するように構成されるものとしてよい。
【0049】
具体的には、個々の予測モデルの結果を改良するためのアンサンブルメソッドが提供される。本明細書に記載された種々の実施形態によれば、複数の予測モデル204(2≦i≦N)によって生成されたピックアップ予測206(2≦i≦N)が、線形混合又は非線形混合によって積層されるものとしてよい。この混合を、(たとえば画像点の様態で)畳み込みニューラルネットワークを用いて行うことができる。さらに、対象物をピックアップするために適していない領域が考慮されるものとしてよい。これらの領域を、ロボット装置の各タスクに関連することなく求めることができる。
【0050】
説明のために、複数の予測モデル204(2≦i≦N)を、複数の予測モデル204(2≦i≦N)が画像I、202に対して各ピックアップ予測を生成するように構成されているものとして、以下において説明する。各予測モデル204(i)に対する画像I、202が、上述したように、種々の画像又は複数の画像でもあり得ることを理解されたい。複数の予測モデル204(2≦i≦N)のうちの1つ予測モデルは、たとえば、参考文献[1]乃至[5]のうちの1つの参考文献に記載されたモデルであるものとしてよい。
【0051】
複数の予測モデル204(2≦i≦N)の各予測モデルは、画像202の供給に応答して各ピックアップ予測206(i)を生成するように構成されるものとしてよい。各ピックアップ予測206(i)は、ピックアップロボットコンフィギュレーションマップ208(i)とピックアップ成功確率マップ210(i)とを含み得るものである。ピックアップロボットコンフィギュレーションマップ208(i)は、画像202の各画像点に対して、ロボット装置101のコンフィギュレーションを記述する各ピックアップロボットコンフィギュレーションベクトルを含み得るものである。ここでは、各画像点をピックアップ中心とみなすことができる。ピックアップ成功確率マップ210(i)は、画像202の各画像点に対して、各画像点に割り当てられるピックアップロボットコンフィギュレーションベクトルによる対象物のピックアップに対する予測された各成功確率を含み得るものである。
【0052】
種々の実施形態によれば、複数の予測モデル204(2≦i≦N)は、ピックアップロボットコンフィギュレーションベクトル、及び、割り当てられる、予測された成功確率を有する相互に異なるデータにより出力することができる。ここでは、コンピュータ110は、ピックアップロボットコンフィギュレーションマップ208(i)及びピックアップ成功確率マップ210(i)に従って、出力されるデータを構造化するように構成されるものとしてよい。
【0053】
具体的には、このようにして、画像I、202に対する各予測モデルg、204(i)は、
【数2】
に従って、ピックアップロボットコンフィギュレーションマップA、208(i)及びピックアップ成功確率マップQ、210(i)を伴うピックアップ予測を生成することができる。種々の実施形態によれば、すべての予測モデル204(2≦i≦N)のピックアップロボットコンフィギュレーションマップA、208(i)が並行して求められるものとしてよい。すべての予測モデル204(2≦i≦N)のピックアップ成功確率マップQ、210(i)が並行して求められるものとしてよい。
【0054】
本明細書において使用される確率は、割り当てられた確率値を有する。本明細書において、確率が、別の確率又は閾値と比較される(たとえばそれよりも大きい、たとえばそれよりも小さい、たとえばそれよりも高い、たとえばそれよりも低い、たとえばそれを上回る)場合には、これは、確率に割り当てられる確率値に関連する。ピックアップロボットコンフィギュレーションベクトルに割り当てられる成功確率は、このピックアップロボットコンフィギュレーションベクトルが記述するコンフィギュレーションを用いて、どのような確率で、ピックアップの実行の成功が予期されるかを示すことができる。ピックアップの実行の成功は、たとえば、エンドエフェクタが、ロボットコンフィギュレーションに割り当てられている対象物を把持することができること、持ち上げることができること、及び/又は、移動させることができることであるものとしてよい。これは、他の能力(たとえばロボットアーム120の運動能力)に同様に適用可能である。ピックアップロボットコンフィギュレーションに対する成功確率を求めることは、たとえば、ピックアップロボットコンフィギュレーションのクラス分け(たとえばクラス「成功」)であるものとしてよい。
【0055】
これに関する例示的な説明するための図を、図3A乃至図3Cに示す。例示的な画像300は、高さH及び幅Wを有し得るものであり、高さ方向h(ここでは、0≦h≦H)及び幅方向w(ここでは、0≦w≦W)における複数の画像点p(h,w)によって形成されるものとしてよい(図3Aを参照)。画像300に対する画像点p(h,w)が縮尺通りに示されていないこと又は縮尺通りに示されている必要がないことを理解されたい。画像300に対して生成されたピックアップロボットコンフィギュレーションマップAは、各画像点p(h,w)に対する各ピックアップロボットコンフィギュレーションベクトルa(h,w)を含み得るものである(図3Bを参照)。画像300に対して生成されたピックアップ成功確率マップQは、各画像点p(h,w)に対して、予測された各成功確率q(h,w)を含み得るものである(図3Cを参照)。
【0056】
本明細書において使用されるようなピックアップロボットコンフィギュレーションベクトルは、ロボット装置101のコンフィギュレーションを記述する値のタプルを含み得るものである。タプルの各値は、ロボット装置101のコンフィギュレーションのパラメータを記述するものとしてよい。ピックアップロボットコンフィギュレーションベクトルは、それに対してロボット制御モデルがトレーニングされるべき又はトレーニングされているロボット装置(たとえばロボット装置101)に関連するものとしてよい。ピックアップロボットコンフィギュレーションベクトルは、たとえば、(たとえば把持工具又は吸込ヘッドとして構成されている)エンドエフェクタ104の種類、(たとえばロボット肢102、103によって規定されている)エンドエフェクタの自由度等に関連するものとしてよい。たとえば、エンドエフェクタ104は、把持工具を含み得るものであり、ピックアップロボットコンフィギュレーションベクトルを形成するタプルの1つ又は複数の値は、グリッパの幅、ロボット装置101のヨーイング、ヨーレート、傾斜及び/又は回転を表すものとしてよい。本明細書において使用されるようなロボットコンフィギュレーションは、ロボットの姿勢(たとえばエンドエフェクタの姿勢)であるものとしてよい。ロボットコンフィギュレーションは、たとえば、エンドエフェクタの回転(たとえばエンドエフェクタの配向)を含み得るものである。ロボットコンフィギュレーションは、たとえば、エンドエフェクタの位置(たとえばエンドエフェクタの並進)を含み得るものである。エンドエフェクタの位置tは、3D位置
【数3】
であるものとしてよい。具体的には、ロボットコンフィギュレーションは、3D位置と配向(たとえば3D空間における配向)とを有するエンドエフェクタの6Dコンフィギュレーションであるものとしてよい。ピックアップロボットコンフィギュレーションは、割り当てられている対象物のピックアップのために求められるロボットコンフィギュレーションであるものとしてよい。
【0057】
種々の実施形態によれば、各ピックアップロボットコンフィギュレーションベクトルは、複数のD値を有するタプルであるものとしてよい。具体的には、ピックアップロボットコンフィギュレーションベクトルは、Dの大きさ又は次元を有し得るものである。種々の実施形態によれば、複数の予測モデル204(2≦i≦N)は、コンフィギュレーション値の異なる大きさのタプルを出力することができる。ここでは、コンピュータ110は、コンフィギュレーション値の異なる大きさのタプルを、ピックアップロボットコンフィギュレーションベクトルを形成する次元Dを有する統一したタプルに従って構造化するように構成されるものとしてよい。種々の実施形態によれば、ピックアップロボットコンフィギュレーションマップAは、H*W*Dの大きさを有し得るものである。
【0058】
本明細書において使用されるような、予測された成功確率は、たとえば「0」と「1」との間の値を有し得るものである。予測された成功確率は、たとえば、百分率の成功確率であるものとしてよく、「0」は、0%の成功確率を表すものとしてよく、「1」は、100%の成功確率を示すものとしてよい。種々の実施形態によれば、ピックアップ成功確率マップQは、H*W*1の大きさを有し得るものである。
【0059】
図2Aには、説明のために、N=2の場合の第1の予測モデル204(i=1)と、第2の予測モデル204(i=2)とが示されている。第1の予測モデル204(1)は、画像I、202の供給に応答して、第1のピックアップロボットコンフィギュレーションマップA(画像I、202の各画像点に対して、第1のピックアップロボットコンフィギュレーションベクトルを有する)と、第1のピックアップ成功確率マップQ(画像I、202の各画像点に対して、予測された第1の成功確率を有する)とを伴う第1のピックアップ予測206(1)を生成することができる。第2の予測モデル204(2)は、画像I、202の供給に応答して、第2のピックアップロボットコンフィギュレーションマップA(画像I、202の各画像点に対して、第2のピックアップロボットコンフィギュレーションベクトルを有する)と、第2のピックアップ成功確率マップQ(画像I、202の各画像点に対して、予測された第2の成功確率を有する)とを伴う第2のピックアップ予測206(2)を生成することができる。
【0060】
ロボット制御モデルは、混合モデル212を含み得るものである。混合モデル212は、複数の予測モデル204(2≦i≦N)によって生成されたすべてのピックアップ予測206(2≦i≦N)(たとえばN=2の場合には、第1のピックアップ予測206(1)及び第2のピックアップ予測206(2))の供給に応答して、第3のピックアップ予測218を生成するように構成されるものとしてよい。具体的には、混合モデル212は、複数の予測モデル204(2≦i≦N)によって生成されたピックアップ予測206(2≦i≦N)を混合することができる(英語でblending)。以下においては、説明のために線形混合(英語でlinear blending)が記載される。
【0061】
第3のピックアップ予測218は、第3のピックアップロボットコンフィギュレーションマップA、220を含み得るものであり、この第3のピックアップロボットコンフィギュレーションマップは、画像I、202の各画像点に対して、第3のピックアップロボットコンフィギュレーションベクトルを有する。第3のピックアップ予測218は、第3のピックアップ成功確率マップQ、222を含み得るものであり、この第3のピックアップ成功確率マップは、画像I、202の各画像点に対して、予測された第3の成功確率を有する。
【0062】
第3のピックアップロボットコンフィギュレーションマップA、220は、画像I、202の各画像点に対して、すべてのピックアップロボットコンフィギュレーションマップAのピックアップロボットコンフィギュレーションベクトルa(h,w,)を含み得るものであり、これは、予測された最高の成功確率q(h,w,)を伴う。第3のピックアップ成功確率マップQ、222は、画像I、202の各画像点に対して、予測された各最高の成功確率q(h,w,)を含み得るものであり。コンピュータ110は、割り当てられる、予測された最高の成功確率を伴う第3のピックアップロボットコンフィギュレーションベクトルを選択し、制御情報を生成するように構成されるものとしてよく、この制御情報によって、ロボット装置101が、第3のピックアップロボットコンフィギュレーションベクトルに従って制御される。予測された最高の成功確率を伴う予測モデル204(i)及びこれに関連する画像点の選択を、
【数4】
に従って表すことができ、ここで、h*及びw*は、選択された画像点の位置p(h*,w*)を示し、i*は、選択された予測モデル204(i*)を示す。関連するピックアップロボットコンフィギュレーションベクトルを、
【数5】
に従って求めることができる。
【0063】
複数の予測モデル204(2≦i≦N)によって生成されたピックアップロボットコンフィギュレーションマップA、208(i)とピックアップ成功確率マップQ、210(i)とを、第3のピックアップロボットコンフィギュレーションマップA、220及び第3のピックアップ成功確率マップQ、222に、関数fを用いて、以下のように表すことができる。
【数6】
【0064】
種々の実施形態によれば、混合モデル212は、第1の重み付け係数214と第2の重み付け係数216とを含み得るものである。混合モデル212は、第3のピックアップロボットコンフィギュレーションマップA、220を、第1の重み付け係数214を用いて重み付けされた、複数の予測モデル204(2≦i≦N)によって生成されたピックアップロボットコンフィギュレーションマップA、208(i)の組合せによって生成するように構成されるものとしてよい。混合モデル212は、第3のピックアップ成功確率マップQ、222を、第2の重み付け係数216によって重み付けされた、複数の予測モデル204(2≦i≦N)によって生成されたピックアップ成功確率マップQ、210(i)の組合せによって生成するように構成されるものとしてよい。
【0065】
重み付けされた組合せは、たとえば、重み付けされた総和又は重み付けされた積であるものとしてよい。説明のために、本明細書においては、例示的に、重み付けされた組合せの種々の可能性が、重み付けされた総和として記載されている。
【0066】
以下においては、例示的に、ピックアップロボットコンフィギュレーションマップA、208(i)の重み付けされた組合せ及びピックアップ成功確率マップQ、210(i)の重み付けされた組合せの種々の手法が記載される。
【0067】
第1の重み付け係数214は、各予測モデル204(i)に対する各(第1の)重み付け係数θを含み得るものである。各第1の重み付け係数θは、スカラ値であるものとしてよい。具体的には、画像I、202のすべての画像点に対する予測モデル204(i)の第1の重み付け係数θは、同一であるものとしてよい。第3のピックアップロボットコンフィギュレーションマップA、220を、たとえば第1の重み付け係数θ(ここでは、2≦i≦N)を用いて、
【数7】
に従って求めることができる。
【0068】
第2の重み付け係数216は、各予測モデル204(i)に対する各(第2の)重み付け係数wを含み得るものである。各第2の重み付け係数wは、スカラ値であるものとしてよい。具体的には、画像I、202のすべての画像点に対する予測モデル204(i)の第2の重み付け係数wは、同一であるものとしてよい。第3のピックアップ成功確率マップQ、222を、たとえば第2の重み付け係数w(ここでは、2≦i≦N)を用いて、
【数8】
に従って求めることができる。
【0069】
混合モデル212は、第1の重み付け係数214及び第2の重み付け係数216が適応化されることによってトレーニング可能である。この場合、画像I、202のすべての画像点に対して同一の第1の重み付け係数θ、及び/又は、画像I、202のすべての画像点に対して同一の第2の重み付け係数wは、混合モデル212をトレーニングするための計算技術的なコストを低減することができる。
【0070】
しかし、第1の重み付け係数214は、各予測モデル204(i)及び画像I、202の各画像点に対しても、各第1の重み付け係数を含み得るものである。それに応じて、第1の重み付け係数214は、各予測モデル204(i)に対する各第1の重み付け行列Θを含み得るものである。画像I、202の各画像点には、第1の重み付け行列Θの厳密に1つの要素が割り当てられるものとしてよい。各第1の重み付け行列Θは、ピックアップロボットコンフィギュレーションマップA、208(i)の大きさを含み得るものであり、即ち、H*W(任意選択的にH*W*D)を含み得るものである。第3のピックアップロボットコンフィギュレーションマップA、220を、たとえば、第1の重み付け行列Θ(ここでは、2≦i≦N)を用いて、
【数9】
に従って求めることができる。本明細書においては、
【数10】
は(要素ごとの)アダマール積である。
【0071】
第2の重み付け係数216は、各予測モデル204(i)及び画像I、202の各画像点に対する各第2の重み付け係数を含み得るものである。それに応じて、第2の重み付け係数216は、各予測モデル204(i)に対する各第2の重み付け行列Wを含み得るものである。画像I、202の各画像点には、第2の重み付け行列Wの厳密に1つの要素が割り当てられるものとしてよい。各第2の重み付け行列Wは、ピックアップ成功確率マップQ、210(i)の大きさ、即ち、H*Wを含み得るものである。第3のピックアップ成功確率マップQ、222を、たとえば第2の重み付け行列W(ここでは、2≦i≦N)を用いて
【数11】
に従って求めることができる。
【0072】
画像I、202のすべての画像点に対する、同一の第1の重み付け係数θ、202及び/又は同一の第2の重み付け係数wとは異なり、画像点の様態の第1の重み付け行列Θ又は第2の重み付け行列Wは、トレーニングされた混合モデル212の精度及び柔軟性を高めることができる。
【0073】
種々の実施形態によれば、混合モデル212の第1の重み付け係数214を、同一の第1の重み付け係数θで事前にトレーニングすることができ(即ち、各予測モデル204(i)の第1の重み付け行列Θの各要素は、値θを有する)、次いで、混合モデル212の第1の重み付け係数214を、画像の各画像点に対して個別にトレーニングすることができる。具体的には、これは、初めは比較的迅速なトレーニング進捗を保証することができ、同時に、トレーニングされた混合モデル221(即ち、トレーニングされた第1の重み付け係数及び第2の重み付け係数)の高い精度を保証することができる。
【0074】
図2Bは、種々の実施形態によるロボット制御モデルをトレーニングするためのフローチャート200Bを示している。
【0075】
種々の実施形態によれば、混合モデル212は、第1の重み付けモデル244を含み得るものである。第1の重み付けモデル244は、画像I、202及びすべてのピックアップロボットコンフィギュレーションマップAの供給に応答して、第1の重み付け係数214を出力するように構成されるものとしてよい。従って、第1の重み付け係数214は、画像I、202に関連するものとしてよい。
【0076】
第1の重み付け係数214は、たとえば、各予測モデル204(i)に対する各第1の重み付け係数θを含み得るものであり、第1の重み付け係数は、この場合には、画像I、202に関連するものとしてよい(即ち、θ(I))。第3のピックアップロボットコンフィギュレーションマップA、220を、
【数12】
に従って求めることができる。しかし、第1の重み付け係数214は、各予測モデル204(i)に対しても、各第1の重み付け行列Θを含み得るものである。
【0077】
種々の実施形態によれば、混合モデル212は、第2の重み付けモデル246を含み得るものである。第2の重み付けモデル246は、画像I、202及びすべてのピックアップ成功確率マップQ、210(i)の供給に応答して、第2の重み付け係数216を出力するように構成されるものとしてよい。従って、第2の重み付け係数216は、画像I、202に関連するものとしてよい。第2の重み付け係数216は、たとえば、各予測モデル204(i)に対する各第2の重み付け係数wを含み得るものであり、第2の重み付け係数は、この場合には、画像I、202に関連するものとしてよい(即ち、w(I))。第3のピックアップ成功確率マップQ、222を、
【数13】
に従って求めることができる。しかし、第2の重み付け係数216は、各予測モデル204(i)に対しても、各第2の重み付け行列Wを含み得るものである。
【0078】
第1の重み付けモデル244及び/又は第2の重み付けモデル246は、画像I、202のセグメンテーション(即ち、画像セグメンテーション)を用いて、セグメンテーション画像を生成するように構成されるものとしてよい。本明細書に記載されているように、画像I、202は、1つ又は複数の対象物114を示すことができる。セグメンテーション画像は、1つ又は複数の対象物114のセグメンテーション(たとえばクラス分け)を示すことができる。各重み付けモデルは、重み付け係数をセグメンテーション画像に基づいて生成するように構成されるものとしてよい。各重み付けモデルは、たとえば、セグメンテーション画像に基づいて、画像I、202のどの領域において、1つ又は複数の対象物214のいずれも存在していないかを求めることができる。説明のための例として、これらの領域の画像点に関連する重み付け係数をゼロにセットすることができ、その結果、この画像点に対する第3のピックアップ成功確率マップQ、222は、たとえば、ゼロに等しい、予測された成功確率q(h,w)を有する。
【0079】
第1の重み付けモデル244及び/又は第2の重み付けモデル246は、画像I、202に示されている各表面に対して、各法線ベクトル及び関連する標準偏差を求めるように構成されるものとしてよい。具体的には、法線ベクトル及び関連する標準偏差は、各表面の平坦性を表すものとしてよい。各重み付けモデルは、求められた法線ベクトル及び関連する標準偏差に基づいて重み付け係数を生成するように構成されるものとしてよい。各重み付けモデルは、たとえば、法線ベクトル及び標準偏差に基づいて、画像I、202に示されているどの面が、対象物のピックアップに適していないのかを求めることができる。たとえば、エンドエフェクタの把持装置又は吸引装置の場合には、強く湾曲している表面は、対象物におけるエンドエフェクタの必要な付着(たとえば把持又は吸込)を保証するために適していない可能性がある。説明のための例として、閾値を上回る標準偏差を有する画像の面に関連する重み付け係数をゼロにセットすることができ、その結果、この画像点に対する第3のピックアップ成功確率マップQ、222は、たとえば、ゼロに等しい、予測された成功確率q(h,w)を有する。
【0080】
具体的には、各重み付けモデルは、セグメンテーション画像、及び/又は、関連する標準偏差を有する法線ベクトルを用いて、ロボット装置101のタスクとは無関係に、対象物のピックアップに関する付加的な判断基準を考慮することができる。たとえば、対象物をピックアップするために適していない領域が考慮されるものとしてよい。
【0081】
上述の線形混合と同様に、混合モデル212は、種々の実施形態によれば、複数の予測モデル204(2≦i≦N)によって生成されたピックアップ予測206(2≦i≦N)を非線形に混合することができる(英語でnon-linear blending)。混合モデル212は、第1の重み付けモデル244と同様に、第1の非線形重み付けモデルを含み得るものであり、この第1の非線形重み付けモデルは、画像I、202及びすべてのピックアップロボットコンフィギュレーションマップA、208(i)の供給に応答して、第1の重み付け係数214を第1の非線形重み付け係数として出力する。第3のピックアップロボットコンフィギュレーションマップA、220を、
【数14】
に従って求めることができる。ここでは、gは、第1の非線形重み付けモデルであり、この第1の非線形重み付けモデルは、複数の予測モデル204(2≦i≦N)の各予測モデルiに対して各マッピング関数を含む。混合モデル212は、第2の重み付けモデル246と同様に、第2の非線形重み付けモデルを含み得るものであり、この第2の非線形重み付けモデルは、画像I、202及びすべてのピックアップ成功確率マップQ、210(i)の供給に応答して、第2の重み付け係数216を第2の非線形重み付け係数として出力する。第3のピックアップ成功確率マップQ、222を、
【数15】
に従って求めることができ、ここでは、fは、第2の非線形重み付けモデルであり、この第2の非線形重み付けモデルは、複数の予測モデル204(2≦i≦N)の各予測モデルiに対して各マッピング関数を含む。
【0082】
種々の実施形態によれば、ロボット制御モデルは、第1の畳み込みニューラルネットワーク(英語で(たとえばfully)convolutional neural network CNN)を含み得るものである。
【0083】
本明細書に記載されているような畳み込みニューラルネットワークは、任意の数の層を含み得るものであり、入力データのフォーマットによって特徴付けられるものとしてよい。さらに、畳み込みニューラルネットワークは、畳み込みニューラルネットワークの隠れ層にいてデータを重み付けする複数の重み付け係数を含み得るものである。ここでは、畳み込みニューラルネットワークを、これらの重み付け係数の適応化によってトレーニングすることができる。畳み込みニューラルネットワークは、バッチ正規化、L1正規化又はL2正規化等を使用することができる。
【0084】
第1の畳み込みニューラルネットワークは、第1の重み付け係数214を含み得るものである。第1の畳み込みニューラルネットワークは、複数の予測モデル204(2≦i≦N)によって生成されたすべてのピックアップロボットコンフィギュレーションマップA、208(i)の供給に応答して、第3のピックアップロボットコンフィギュレーションマップA、220を出力するように構成されるものとしてよい。たとえば、コンピュータ110は、複数の予測モデル204(2≦i≦N)によって生成されたピックアップロボットコンフィギュレーションマップAを、サイズH*W*N*Dのテンソルにまとめ、このテンソルを第1の畳み込みニューラルネットワークへ供給するように構成されるものとしてよい。ここでは、第1の畳み込みニューラルネットワークは、k*k*l(ここでは、H*W次元におけるk*k及びD次元におけるl)のカーネルを有する3次元畳み込みニューラルネットワークであるものとしてよい。
【0085】
種々の実施形態によれば、ロボット制御モデルは、第2の畳み込みニューラルネットワークを含み得るものである。第2の畳み込みニューラルネットワークは、第2の重み付け係数216を含み得るものである。第2の畳み込みニューラルネットワークは、複数の予測モデル204(2≦i≦N)によって生成されたすべてのピックアップ成功確率マップQ、210(i)の供給に応答して、第3のピックアップ成功確率マップQ、222を出力するように構成されるものとしてよい。たとえば、コンピュータ110は、複数の予測モデル204(2≦i≦N)によって生成されたピックアップ成功確率マップQ、210(i)を、Nチャネルにおいて、サイズH*W*Nのテンソルに積層し、このテンソルを第1の畳み込みニューラルネットワークへ供給するように構成されるものとしてよい。ここでは、第2の畳み込みニューラルネットワークは、(H*W次元における)k*kのカーネルを有する2次元畳み込みニューラルネットワークであるものとしてよい。
【0086】
畳み込みニューラルネットワークは、上述の同一の重み付け係数θ若しくはw、重み付け行列Θ若しくはW及び/又は非線形重み付けモデルf、gと比較して、より低い複雑性を有し得るものである。これによって、ロボット制御モデルの効率を高めることができる。さらに、畳み込みニューラルネットワークはスケーリング可能であり、これによって柔軟性が高まる。さらに、たとえば第1の畳み込みニューラルネットワークと第2の畳み込みニューラルネットワークとが並列化されることによって、最新のグラフィックプロセッサ(GPU)アーキテクチャの並列化を利用することができる。畳み込みニューラルネットワークは、線形混合も非線形混合も実施することができる。一例として、すべての予測モデル204(2≦i≦N)のピックアップロボットコンフィギュレーションマップA、208(i)及びピックアップ成功確率マップQ、210(i)が、他のコンピュータによって並列に求められ、コンピュータ110へ供給されるものとしてよく、コンピュータは、第1の畳み込みニューラルネットワーク及び第2の畳み込みニューラルネットワークを用いて並列に、第3のピックアップロボットコンフィギュレーションマップA、220及び第3のピックアップ成功確率マップQ、222を求める。具体的には、このようにトレーニングの消費時間が削減され、従って、効率を高めることができる。
【0087】
ピックアップロボットコンフィギュレーションマップA、208(i)とピックアップ成功確率マップQ、210(i)とを、相互に異なる種類の組合せによって相互に組み合わせることができることを理解されたい。一例として、ピックアップロボットコンフィギュレーションマップA、208(i)を、第1の重み付け行列Θを用いて組み合わせることができ、ピックアップ成功確率マップQ、210(i)を、第2の畳み込みニューラルネットワークを用いて相互に組み合わせること等ができる。一例においては、一方の畳み込みニューラルネットワークは線形混合を実施し、他方の畳み込みニューラルネットワークは非線形混合を実施することができる。種々の実施形態によれば、第1の畳み込みニューラルネットワーク及び/又は第2の畳み込みニューラルネットワークは、図2Bを参照して例示的に説明したように、画像202に対して、関連する標準偏差を有するセグメンテーション画像又は法線ベクトルを生成する部分を含み得るものである。この場合には、画像202も各畳み込みニューラルネットワークへ供給され得ることを理解されたい。
【0088】
種々の実施形態によれば、第1の重み付け係数214及び第2の重み付け係数216の適応化によって、ロボット制御モデルをトレーニングすることができる(図2Aを参照)。このために、目標データ224(トレーニングデータとも称される)を供給することができる。目標データ224は、たとえば、メモリ111内に格納されているものとしてよい。
【0089】
目標データ224において、画像I、202の少なくとも1つの画像点p(h*,w*)に、成功したピックアップが割り当てられるものとしてよい。成功したピックアップが割り当てられる少なくとも1つの画像点p(h*,w*)に対して、生成された、予測された第3の成功確率q(h*,w*)が高められるように第2の重み付け係数216が適応化され得る。
【0090】
目標データ224において、画像I、202の少なくとも1つの別の画像点p(h\h*,w\w*)に、失敗したピックアップが割り当てられるものとしてよい。失敗したピックアップが割り当てられる少なくとも1つの別の画像点p(h\h*,w\w*)に対して、生成された、予測された第3の成功確率q(h\h*,w\w*)が低減されるように第2の重み付け係数216が適応化され得る。
【0091】
目標データ224において、画像I、202の少なくとも1つの画像点p(h,w)に、目標タプルの1つ又は複数の値が割り当てられるものとしてよい。目標タプルは、目標ピックアップロボットコンフィギュレーションを表すものとしてよい。少なくとも1つの画像点p(h,w)に対して、第3のピックアップロボットコンフィギュレーションベクトルa(h,w)のコンフィギュレーションを表すタプルが、目標タプルのこの1つ又は複数の値を有するように、第3のピックアップロボットコンフィギュレーションベクトルa(h,w)が生成されるように、第1の重み付け係数214は適応化され得る。たとえば、目標タプルは、目標ピックアップロボットコンフィギュレーションベクトルであるものとしてよく、生成された第3のピックアップロボットコンフィギュレーションベクトルa(h,w)は、目標ピックアップロボットコンフィギュレーションベクトルに相当し得る。
【0092】
第1の重み付けモデル244及び/又は第2の重み付けモデル246の場合には、第1の重み付けモデル244又は第2の重み付けモデル246が適応化されることによって、混合モデル212をトレーニングすることができる。具体的には、このようして、各重み付けモデルによって生成された重み付け係数も適応化される。第1の重み付けモデル244及び/又は第2の重み付けモデル246は、機械学習に基づくモデルであるものとしてよい。
【0093】
第1の畳み込みニューラルネットワーク及び/又は第2の畳み込みニューラルネットワークの場合には、各畳み込みニューラルネットワークの重み付け係数を適応化することができる。ここでは、たとえばバックプロパゲーションのようなあらゆる種類のトレーニング原理を使用することができる。畳み込みニューラルネットワークを、たとえば教師あり学習(英語でsupervised learning)を用いてトレーニングすることができる(これに関する例示的なトレーニングは、参考文献[4]に記載されている)。畳み込みニューラルネットワークを、たとえば強化学習(英語でreinforcement learning)を用いてトレーニングすることができる(これに関する例示的なトレーニングは、参考文献[2]及び[5]に記載されている)。
【0094】
種々の実施形態によれば、上記において例示的に、(反復として)画像、I、202及び目標データ224について説明したように、ロボット制御モデルを、複数の画像及び各関連する目標データに対して反復式にトレーニングすることができる。
【0095】
複数の予測モデル204(2≦i≦N)は、事前にトレーニングされるものとしてよく、この目標データ及び/又は他の目標データに対して個別にトレーニングされるものとしてよく、又は、混合モデル212と共にトレーニングされるものとしてよい。共にトレーニングする場合、混合モデル212と複数の予測モデル204(2≦i≦N)の各予測モデル204(i)とを、トレーニングの各反復において適応させることができる。
【0096】
図4は、種々の実施形態によるロボット装置(たとえばロボット装置101)を制御するためのフローチャート400を示している。ここでは、ロボット制御モデルを使用することができる。ロボット制御モデルは、複数の予測モデル204(2≦i≦N)(たとえばN=2の場合には、第1の予測モデル204(1)及び第2の予測モデル204(2))及びトレーニングされた混合モデル412を含み得るものである。
【0097】
トレーニングされた混合モデル412は、複数の予測モデル204(2≦i≦N)から画像402に対して生成されたすべてのピックアップ予測206(2≦i≦N)の供給に応答して、第3のピックアップ予測418を生成するように構成されるものとしてよい。第3のピックアップ予測418は、第3のピックアップロボットコンフィギュレーションマップA、420と第3のピックアップ成功確率マップQ、222とを含み得るものである。
【0098】
トレーニングされた混合モデル412は、ここでは、第1の重み付け係数414と、第2の重み付け係数416とを含み得るものである。第1の重み付け係数414及び第2の重み付け係数416は、複数の画像に対してトレーニングされている第1の重み付け係数214又は第2の重み付け係数216に従って構成されるものとしてよい。たとえば、トレーニングされた混合モデル412は、複数の画像に対してトレーニングされた混合モデル212であるものとしてよい。
【0099】
コンピュータ110は、予測された最高の第3の成功確率q(h,w)が割り当てられる第3のピックアップロボットコンフィギュレーションベクトルa(h,w)を選択するように構成されるものとしてよい。コンピュータ110は、選択された第3のピックアップロボットコンフィギュレーションベクトルに従ってロボット装置101を制御するための制御データ424を生成するように構成されるものとしてよい。たとえば、制御装置106は、選択された第3のピックアップロボットコンフィギュレーションベクトルに従ってロボット装置101を制御することができる。
【0100】
任意選択的に、ロボット制御モデルを、ロボット装置101の動作中に、付加的にトレーニングすることができる。種々の実施形態によれば、制御装置106は、選択された第3のピックアップロボットコンフィギュレーションベクトルを用いて対象物のピックアップを実行するようにロボット装置101を制御することができ、対象物のピックアップが首尾良く実行されたか否かを求めることができる。強化学習によるトレーニングの例においては、制御装置106(たとえばコンピュータ110)は、報酬として、成功した又は失敗したピックアップを求めることができる。たとえば、対象物のピックアップが成功した場合、所定の最大報酬(たとえば、報酬の値は「1」に等しい)が求められるものとしてよい。たとえば、対象物のピックアップが成功しなかった場合、所定の最小報酬(たとえば、報酬の値は「0」に等しい)が求められるものとしてよい。選択された第3のピックアップロボットコンフィギュレーションベクトルが求められた画像を、報酬に関連して、付加的な目標データ(たとえばトレーニングデータ)として、第1の重み付け係数及び/又は第2の重み付け係数の適応化のために用いることができる。
【0101】
図5は、種々の実施形態による、複数のロボットアームを有する例示的なロボット装置アセンブリ500を示している。ロボット装置アセンブリ500は、例示的に2つのロボットアームを示している。ロボット装置アセンブリ500が、2つより多くのロボットアームを含み得ることを指摘しておく。
【0102】
種々の実施形態によれば、ロボット装置アセンブリ500は、ロボット装置アセンブリ100を含み得るものである。ロボット装置101のロボットアーム120は、第1のロボットアーム120であるものとしてよい。
【0103】
ロボット装置アセンブリ500はさらに、第2のロボットアーム520を含み得るものである。図5に示されかつ以下において例示的に記述するロボット装置アセンブリ500は、説明のために、第1のロボットアーム120及び第2のロボットアーム520を備えた例示的なロボット装置101を表す。ロボット装置は、対象物を操作する(たとえば移動させる、たとえば加工する、たとえば処理する、たとえば処理する等)少なくとも2つの操作装置を含む、あらゆる種類のコンピュータ制御された装置であるものとしてよいことを指摘しておく。これはたとえば、ロボット(たとえば製造ロボット、メンテナンスロボット、家事ロボット、医療ロボット等)、車両(たとえば自律車両)、家事用装置、生産機械、パーソナルアシスタント、アクセス制御システム等である。
【0104】
第2のロボットアーム520は、ロボット肢502、503、504と、ロボット肢502、503、504を支持する台座(又は一般的には保持部)505とを含み得るものである。制御装置106は、制御プログラムに従って、周囲との相互作用を実現するように構成されるものとしてよい。たとえば、制御装置106は、第1のロボットアーム120及び第2のロボットアーム520を制御するように構成されるものとしてよい。ロボット肢502、503、504の(台座505から見て)最後の要素504は、エンドエフェクタ504とも称され、たとえば、把持工具又は吸引装置(たとえば吸込ヘッド)又はこれに類するもの等である1つ又は複数の工具を含み得るものである。第2のロボットアーム520は、結合要素507、508、509を含み得るものであり、これらの結合要素は、ロボット肢502、503、504を相互に及び台座505と結合する。
【0105】
第2のロボットアーム520は、同様に、この1つ又は複数の対象物114のうちの1つの対象物をピックアップするように構成されるものとしてよい。ロボット制御モデル122は、第1のロボットアーム120に対しても、第2のロボットアーム520に対しても、トレーニングされたそれぞれ1つのロボット制御モデル412(図4及びこれに関連する説明を参照)を含み得るものである。トレーニングされた2つのロボット制御モデル412は、それぞれ1つの第3のピックアップ予測418を生成することができる。コンピュータ110は、ロボットアーム120、520及び予測された最高の第3の成功確率が割り当てられる第3のピックアップロボットコンフィギュレーションベクトルを選択するように構成されるものとしてよく、選択された第3のピックアップロボットコンフィギュレーションベクトルに従って、選択されたロボットアームを制御するために、対応する制御データ424を生成することができる。
【0106】
図6は、種々の実施形態によるロボット制御モデルをトレーニングするコンピュータ実装された方法600のフローチャートを示している。
【0107】
方法600は、第1のピックアップ予測を生成するために、1つ又は複数の対象物を示す画像を、ロボット制御モデルの第1の予測モデルへ供給することを含み得るものである(602において)。第1のピックアップ予測は、画像の各画像点に対して、ロボット装置のコンフィギュレーションを記述する各第1のピックアップロボットコンフィギュレーションベクトルを、割り当てられる予測された第1の成功確率を伴って、含み得るものである。
【0108】
方法600は、第2のピックアップ予測を生成するために、画像をロボット制御モデルの第2の予測モデルへ供給することを含み得るものである(604において)。第2のピックアップ予測は、画像の各画像点に対して、ロボット装置のコンフィギュレーションを記述する各第2のピックアップロボットコンフィギュレーションベクトルを、割り当てられる予測された第2の成功確率を伴って、含み得るものである。
【0109】
方法600は、第3のピックアップ予測を生成するために、第1のピックアップ予測及び第2のピックアップ予測をロボット制御モデルの混合モデルへ供給することを含み得るものである(606において)。第3のピックアップ予測は、画像の各画像点に対して、第1のピックアップロボットコンフィギュレーションベクトルと第2のピックアップロボットコンフィギュレーションベクトルとの、第1の重み付け係数によって重み付けされた組合せである第3のピックアップロボットコンフィギュレーションベクトルと、予測された第1の成功確率と予測された第2の成功確率との、第2の重み付け係数によって重み付けされた組合せである、予測された第3の成功確率とを含み得るものである。
【0110】
方法600は、画像の少なくとも1つの画像点に成功したピックアップが割り当てられている目標データに基づいて、ロボット制御モデルが、この少なくとも1つの画像点に対して、予測された第3の成功確率を高めるように、第1の重み付け係数及び第2の重み付け係数を適応化することによって、ロボット制御モデルをトレーニングすることを含み得るものである(608において)。
【0111】
種々の実施形態によれば、ロボット装置を制御する方法は、1つ又は複数の対象物を示す画像を検出することを含み得るものである。この方法は、さらに、第1のピックアップ予測を生成するために、画像を、ロボット制御モデルの第1の予測モデルへ供給することを含み得るものである。第1のピックアップ予測は、画像の各画像点に対して、ロボット装置のコンフィギュレーションを記述する各第1のピックアップロボットコンフィギュレーションベクトルを、割り当てられる予測された第1の成功確率を伴って、含み得るものである。この方法は、さらに、第2のピックアップ予測を生成するために、画像を、ロボット制御モデルの第2の予測モデルへ供給することを含み得るものである。第2のピックアップ予測は、画像の各画像点に対して、ロボット装置のコンフィギュレーションを記述する各第2のピックアップロボットコンフィギュレーションベクトルを、割り当てられた予測された第2の成功確率を伴って、含み得るものである。この方法は、さらに、第3のピックアップ予測を生成するために、第1のピックアップ予測及び第2のピックアップ予測を、ロボット制御モデルの混合モデルへ供給することを含み得るものである。第3のピックアップ予測は、画像の各画像点に対して、第1のピックアップロボットコンフィギュレーションベクトルと第2のピックアップロボットコンフィギュレーションベクトルとの、第1の重み付け係数によって重み付けされた組合せである第3のピックアップロボットコンフィギュレーションベクトルと、予測された第1の成功確率と予測された第2の成功確率との、第2の重み付け係数によって重み付けされた組合せである予測された第3の成功確率とを含み得るものである。この方法は、さらに、予測された最高の第3の成功確率が割り当てられる第3のピックアップ予測の第3のピックアップロボットコンフィギュレーションベクトルに対して、第3のピックアップロボットコンフィギュレーションベクトルに従って、第3のピックアップロボットコンフィギュレーションベクトルに割り当てられる画像点が示す対象物をピックアップするようにロボット装置を制御することを含み得るものである。
図1
図2A
図2B
図3A
図3B
図3C
図4
図5
図6
【外国語明細書】