JP7100426B2 - ワークの取り出し動作を学習する機械学習装置、ロボットシステムおよび機械学習方法 - Google Patents

ワークの取り出し動作を学習する機械学習装置、ロボットシステムおよび機械学習方法 Download PDF

Info

Publication number
JP7100426B2
JP7100426B2 JP2017010506A JP2017010506A JP7100426B2 JP 7100426 B2 JP7100426 B2 JP 7100426B2 JP 2017010506 A JP2017010506 A JP 2017010506A JP 2017010506 A JP2017010506 A JP 2017010506A JP 7100426 B2 JP7100426 B2 JP 7100426B2
Authority
JP
Japan
Prior art keywords
unit
work
machine learning
robot
learning
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2017010506A
Other languages
English (en)
Other versions
JP2017064910A (ja
JP2017064910A5 (ja
Inventor
岳 山▲崎▼
拓未 尾山
峻 陶山
一隆 中山
英俊 組谷
浩 中川
大輔 岡野原
遼介 奥田
叡一 松元
圭悟 河合
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Preferred Networks Inc
Original Assignee
Preferred Networks Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Preferred Networks Inc filed Critical Preferred Networks Inc
Publication of JP2017064910A publication Critical patent/JP2017064910A/ja
Publication of JP2017064910A5 publication Critical patent/JP2017064910A5/ja
Application granted granted Critical
Publication of JP7100426B2 publication Critical patent/JP7100426B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • B25J9/1687Assembly, peg and hole, palletising, straight line, weaving pattern movement
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/163Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39297First learn inverse model, then fine tune with ffw error learning
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40053Pick 3-D object from pile of objects

Description

本発明は、バラ積みされた状態を含む、乱雑に置かれたワークの取り出し動作を学習する機械学習装置、ロボットシステムおよび機械学習方法に関する。
従前より、例えば、かご状の箱にバラ積みされたワークを、ロボットのハンド部により把持して運搬するロボットシステムが知られている(例えば、特許文献1、2参照)。このようなロボットシステムにおいては、例えば、かご状の箱の上方に設置された三次元計測器を用いて複数のワークの位置情報を取得し、その位置情報に基づいてワークを1つずつロボットのハンド部によって取り出している。
特許第5642738号公報 特許第5670397号公報
しかしながら、上述した従来のロボットシステムにおいては、例えば、三次元計測器により計測された複数のワークの距離画像から、取り出すワークをどのように抽出するのか、並びに、どの位置のワークを取り出すのかを事前に設定しておく必要がある。また、ワークを取り出すとき、ロボットのハンド部をどのように動作させるのかといったことも事前にプログラミングしておく必要がある。具体的に、例えば、人間がティーチングペンダントを用いて、ロボットにワークの取り出し動作を教示するといったことが必要になる。
そのため、複数のワークの距離画像から、取り出すワークを抽出する設定が適切でなかったり、ロボットの動作プログラムが適切に作成されないと、ロボットがワークを取り出して運搬する際の成功率が低下する。また、その成功率を高めるには、人間が試行錯誤を重ねてロボットの最適な動作を模索しながら、ワークの検出設定とロボットの動作プログラムとを改良していく必要がある。
そこで、本発明の目的は、上述したような実情に鑑み、バラ積みされた状態を含む、乱雑に置かれたワークを取り出すときのロボットの最適な動作を人間の介在無しに学習できる機械学習装置、ロボットシステムおよび機械学習方法を提供することにある。
本発明に係る第1実施形態の第一構成例によれば、バラ積みされた状態を含む、乱雑に置かれた複数のワークからハンド部によって前記ワークを取り出すロボットの動作を学習する機械学習装置であって、前記ワーク毎の少なくとも三次元マップを計測する三次元計測器の出力データを観測する状態量観測部と、前記ハンド部によって前記ワークを取り出す前記ロボットの取り出し動作の結果を取得する動作結果取得部と、前記状態量観測部からの出力および前記動作結果取得部からの出力を受け取って、前記ワークの前記取り出し動作を学習する学習部と、を備え、前記状態量観測部は、さらに、前記三次元計測器の出力に基づいて、前記ワーク毎の三次元位置を計算する座標計算部の出力データも観測し、前記学習部は、前記動作結果取得部の出力である前記ワークの取り出しの成否の判定結果に基づいて報酬を計算する報酬計算部と、前記ワークの前記取り出し動作の価値を定める価値関数を有し、前記報酬に応じて前記価値関数を更新する価値関数更新部と、を備える機械学習装置が提供される。本発明に係る第1実施形態の第二構成例によれば、バラ積みされた状態を含む、乱雑に置かれた複数のワークからハンド部によって前記ワークを取り出すロボットの動作を学習する機械学習装置であって、前記ワーク毎の少なくとも三次元マップを計測する三次元計測器の出力データを観測する状態量観測部と、前記ハンド部によって前記ワークを取り出す前記ロボットの取り出し動作の結果を取得する動作結果取得部と、前記状態量観測部からの出力および前記動作結果取得部からの出力を受け取って、前記ワークの前記取り出し動作を学習する学習部と、を備え、前記状態量観測部は、さらに、前記三次元計測器の出力に基づいて、前記ワーク毎の三次元位置を計算する座標計算部の出力データも観測し、前記学習部は、前記ワークの前記取り出し動作を学習する学習モデルを有し、前記動作結果取得部の出力である前記ワークの取り出しの成否の判定結果、および、前記学習モデルに基づいて誤差を計算する誤差計算部と、前記誤差に応じて前記学習モデルを更新する学習モデル更新部と、を備える機械学習装置が提供される。前記機械学習装置は、さらに、前記学習部からの出力を参照して、前記ワークの取り出し動作を前記ロボットに指令する指令データを決定する意思決定部を備えるのが好ましい。
本発明に係る第2実施形態によれば、バラ積みされた状態を含む、乱雑に置かれた複数のワークからハンド部によって前記ワークを取り出すロボットの動作を学習する機械学習装置であって、前記ワーク毎の三次元マップを計測する三次元計測器の出力データを含む前記ロボットの状態量を観測する状態量観測部と、前記ハンド部によって前記ワークを取り出す前記ロボットの取り出し動作の結果を取得する動作結果取得部と、前記状態量観測部からの出力および前記動作結果取得部からの出力を受け取り、前記三次元計測器の計測パラメータを含む操作量を、前記ロボットの前記状態量および前記取り出し動作の結果に関連付けて学習する学習部と、を備える機械学習装置が提供される。前記機械学習装置は、さらに、前記学習部が学習した前記操作量を参照して、前記三次元計測器の前記計測パラメータを決定する意思決定部を備えるのが好ましい。
前記状態量観測部は、さらに、前記三次元計測器の出力に基づいて、前記ワーク毎の三次元位置を計算する座標計算部の出力データを含む前記ロボットの状態量も観測することもできる。前記座標計算部は、さらに、前記ワーク毎の姿勢を計算し、計算された前記ワーク毎の三次元位置および姿勢のデータを出力してもよい。前記動作結果取得部は、前記三次元計測器の出力データを利用することができる。前記機械学習装置は、さらに、前記三次元計測器の出力データを、前記状態量観測部への入力前に処理する前処理部を備え、前記状態量観測部は、前処理部の出力データを前記ロボットの状態量として受け取るのが好ましい。前記前処理部は、前記三次元計測器の出力データにおける前記ワーク毎の方向および高さを一定に揃えることができる。前記動作結果取得部は、前記ワークの取り出しの成否、前記ワークの破損状態、および、取り出した前記ワークを後工程に渡すときの達成度のうちの少なくとも1つを取得することができる。
前記学習部は、前記動作結果取得部の出力に基づいて報酬を計算する報酬計算部と、前記ワークの前記取り出し動作の価値を定める価値関数を有し、前記報酬に応じて前記価値関数を更新する価値関数更新部と、を備えることができる。前記学習部は、前記ワークの前記取り出し動作を学習する学習モデルを有し、前記動作結果取得部の出力、および、前記学習モデルの出力に基づいて誤差を計算する誤差計算部と、前記誤差に応じて前記学習モデルを更新する学習モデル更新部と、を備えることもできる。前記機械学習装置は、ニューラルネットワークを有するのが好ましい。
本発明に係る第3実施形態によれば、バラ積みされた状態を含む、乱雑に置かれた複数のワークからハンド部によって前記ワークを取り出すロボットの動作を学習する機械学習装置であって、前記ワーク毎の三次元マップを計測する三次元計測器の出力データを含む前記ロボットの状態量を観測する状態量観測部と、前記ハンド部によって前記ワークを取り出す前記ロボットの取り出し動作の結果を取得する動作結果取得部と、前記状態量観測部からの出力および前記動作結果取得部からの出力を受け取り、前記ワークの前記取り出し動作を前記ロボットに指令する指令データを含む操作量を、前記ロボットの前記状態量および前記取り出し動作の結果に関連付けて学習する学習部と、を備える機械学習装置を備えたロボットシステムであって、前記ロボットと、前記三次元計測器と、前記ロボットおよび前記三次元計測器をそれぞれ制御する制御装置と、を備えるロボットシステムが提供される。
本発明に係る第4実施形態によれば、バラ積みされた状態を含む、乱雑に置かれた複数のワークからハンド部によって前記ワークを取り出すロボットの動作を学習する機械学習装置であって、前記ワーク毎の三次元マップを計測する三次元計測器の出力データを含む前記ロボットの状態量を観測する状態量観測部と、前記ハンド部によって前記ワークを取り出す前記ロボットの取り出し動作の結果を取得する動作結果取得部と、前記状態量観測部からの出力および前記動作結果取得部からの出力を受け取り、前記三次元計測器の計測パラメータを含む操作量を、前記ロボットの前記状態量および前記取り出し動作の結果に関連付けて学習する学習部と、を備える機械学習装置を備えたロボットシステムであって、前記ロボットと、前記三次元計測器と、前記ロボットおよび前記三次元計測器をそれぞれ制御する制御装置と、を備えるロボットシステムが提供される。
前記ロボットシステムは、複数の前記ロボットを備え、前記機械学習装置は、前記ロボット毎にそれぞれ設けられ、複数の前記ロボットに設けられた複数の前記機械学習装置は、通信媒体を介して相互にデータを共有または交換するのが好ましい。前記機械学習装置は、クラウドサーバ上に存在してもよい。
本発明に係る第5実施形態によれば、バラ積みされた状態を含む、乱雑に置かれた複数のワークからハンド部によって前記ワークを取り出すロボットの動作を学習する機械学習方法であって、前記ワーク毎の三次元マップを計測する三次元計測器の出力データを含む前記ロボットの状態量を観測し、前記ハンド部によって前記ワークを取り出す前記ロボットの取り出し動作の結果を取得し、前記状態量観測部からの出力および前記動作結果取得部からの出力を受け取り、前記ワークの前記取り出し動作を前記ロボットに指令する指令データを含む操作量を、前記ロボットの前記状態量および前記取り出し動作の結果に関連付けて学習する機械学習方法が提供される。
本発明に係る機械学習装置、ロボットシステムおよび機械学習方法によれば、バラ積みされた状態を含む、乱雑に置かれたワークを取り出すときのロボットの最適な動作を人間の介在無しに学習できるという効果を奏する。
図1は、本発明の一実施形態のロボットシステムの概念的な構成を示すブロック図である。 図2は、ニューロンのモデルを模式的に示す図である。 図3は、図2に示すニューロンを組み合わせて構成した三層のニューラルネットワークを模式的に示す図である。 図4は、図1に示す機械学習装置の動作の一例を示すフローチャートである。 図5は、本発明の他の実施形態のロボットシステムの概念的な構成を示すブロック図である。 図6は、図5に示すロボットシステムにおける前処理部の処理の一例を説明するための図である。 図7は、図1に示すロボットシステムの変形例を示すブロック図である。
以下、本発明に係る機械学習装置、ロボットシステムおよび機械学習方法の実施例を、添付図面を参照して詳述する。ここで、各図面において、同じ部材には同じ参照符号が付されている。また、異なる図面において同じ参照符号が付されたものは同じ機能を有する構成要素であることを意味するものとする。なお、理解を容易にするために、これらの図面は縮尺を適宜変更している。
図1は、本発明の一実施形態のロボットシステムの概念的な構成を示すブロック図である。本実施形態のロボットシステム10は、かご状の箱11にバラ積みされたワーク12を把持するハンド部13が取り付けられたロボット14と、ワーク12の表面の三次元マップを計測する三次元計測器15と、ロボット14および三次元計測器15をそれぞれ制御する制御装置16と、座標計算部19と、機械学習装置20と、を備える。
ここで、機械学習装置20は、状態量観測部21と、動作結果取得部26と、学習部22と、意思決定部25と、を備える。なお、機械学習装置20は、後に詳述するように、ワーク12の取り出し動作をロボット14に指令する指令データ、或いは、三次元計測器15の計測パラメータといった操作量を学習して出力する。
ロボット14は、例えば、6軸多関節型ロボットであり、ロボット14およびハンド部13のそれぞれの駆動軸は、制御装置16によって制御される。また、ロボット14は、所定の位置に設置された箱11からワーク12を1つずつ取り出して指定の場所、例えば、コンベヤまたは作業台(図示しない)まで順次移動させるために使用される。
ところで、バラ積みされたワーク12を箱11から取り出す際、ハンド部13またはワーク12が箱11の壁と衝突もしくは接触する場合がある。あるいは、ハンド部13またはワーク12が別のワーク12に引っかかったりする場合もある。そのような場合にロボット14に掛かる過負荷を直ちに回避できるように、ハンド部13に作用する力を検出する機能が必要となる。そのため、ロボット14のアーム部の先端とハンド部13との間には、6軸の力センサ17が設けられている。また、本実施形態のロボットシステム10は、ロボット14の各関節部の駆動軸を駆動するモータ(図示しない)の電流値をもとにハンド部13に作用する力を推定する機能も備えている。
さらに、力センサ17は、ハンド部13に作用する力を検出できるため、ハンド部13がワーク12を実際に把持しているか否かも判断することができる。つまり、ハンド部13がワーク12を把持した場合、ハンド部13にワーク12の重さが作用するため、ワーク12の取り出し動作を実施した後、力センサ17の検出値が所定の閾値を超えていれば、ハンド部13がワーク12を把持していると判断することができる。なお、ハンド部13がワーク12を把持しているか否かの判断については、例えば、三次元計測器15に使用されるカメラの撮影データや、ハンド部13に取り付けられた図示しない光電センサ等の出力により判断することもできる。また、後述の吸着式ハンドの圧力計のデータをもとに判断してもよい。
ここで、ハンド部13は、ワーク12を保持可能であれば様々な形態を有していてもよい。例えば、ハンド部13は、2本または複数の爪部を開閉することによってワーク12を把持する形態、あるいは、ワーク12に対して吸引力を発生する電磁石または負圧発生装置を備えたものであってもよい。すなわち、図1において、ハンド部13は、2本の爪部によりワークを把持するものとして描かれているが、これ限定されないのはいうまでもない。
三次元計測器15は、複数のワーク12を測定するために、支持部18によって複数のワーク12の上方の所定の位置に設けられている。三次元計測器15としては、例えば、2台のカメラ(図示しない)から撮影されたワーク12の画像データを画像処理することによって、三次元位置情報を取得する三次元視覚センサを使用することができる。具体的には、三角計測法、光切断法、Time-of-flight法、Depth from Defocus法、または、これらを併用した方法などを適用することにより、三次元マップ(バラ積みされた複数のワーク12の表面の位置)が測定される。
座標計算部19は、三次元計測器15で得られた三次元マップを入力として、バラ積みされた複数のワーク12の表面の位置を計算(測定)する。すなわち、三次元計測器15の出力を利用して、それぞれのワーク12毎の三次元位置データ(x,y,z)、あるいは、三次元位置データ(x,y,z)および姿勢データ(w,p,r)を得ることができる。ここで、状態量観測部21は、三次元計測器15からの三次元マップおよび座標計算部19からの位置データ(姿勢データ)の両方を受け取ってロボット14の状態量を観測しているが、例えば、三次元計測器15からの三次元マップだけを受け取ってロボット14の状態量を観測することもできる。また、後に図5を参照して説明するのと同様に、前処理部50を追加し、この前処理部50により、状態量観測部21への入力前に、三次元計測器15からの三次元マップを処理(前処理)して状態量観測部21に入力することも可能である。
なお、ロボット14と三次元計測器15との相関位置は、予めキャリブレーションにより決定されているものとする。また、本願発明の三次元計測器15には、三次元視覚センサに代えて、レーザ距離測定器を使用することもできる。つまり、三次元計測器15が設置された位置から各ワーク12の表面までの距離をレーザ走査によって計測することや、単眼カメラ、触覚センサなどの各種センサを用いることにより、バラ積みされた複数のワーク12の三次元位置データおよび姿勢(x,y,z,w,p,r)を取得してもよい。
すなわち、本発明においては、例えば、それぞれのワーク12のデータ(x,y,z,w,p,r)を取得できれば、どのような三次元計測法を適用した三次元計測器15でも適用することができる。また、三次元計測器15が設置される態様も特に限定されるものではなく、例えば、床や壁などに固定されていてもよいし、ロボット14のアーム部等に取り付けられていてもよい。
三次元計測器15は、制御装置16からの指令により、箱11にバラ積みされた複数のワーク12の三次元マップを取得し、座標計算部19は、その三次元マップをもとに複数のワーク12の三次元位置(姿勢)のデータを取得(計算)し、そのデータを、制御装置16と後述する機械学習装置20の状態量観測部21および動作結果取得部26とに出力するようになっている。特に、座標計算部19においては、例えば、撮影された複数のワーク12の画像データを基に、或るワーク12と別のワーク12との境界や、ワーク12と箱11との境界が推定され、ワーク12毎の三次元位置のデータが取得される。
ワーク12毎の三次元位置のデータとは、例えば、バラ積みされた複数のワーク12の表面上の複数の点の位置から各々のワーク12の存在位置や保持可能な位置を推定することによって取得されたデータを指す。勿論、ワーク12毎の三次元位置のデータには、ワーク12の姿勢のデータが含まれてもよい。
さらに、座標計算部19におけるワーク12毎の三次元位置および姿勢データの取得には、機械学習の手法を使用することも含まれる。例えば、後述する教師あり学習等の手法を用いた入力画像もしくはレーザ距離測定器などからの物体認識や角度推定などを適用することも可能である。
そして、ワーク12毎の三次元位置のデータが三次元計測器15から座標計算部19を介して制御装置16に入力されると、制御装置16は、或るワーク12を箱11から取り出すハンド部13の動作を制御する。このとき、後述する機械学習装置20により得られたハンド部13の最適な位置,姿勢および取り出し方向に対応する指令値(操作量)に基づいて、ハンド部13やロボット14の各軸のモータ(図示しない)が駆動される。
また、機械学習装置20は、三次元計測器15に使用されるカメラの撮影条件の変数(三次元計測器15の計測パラメータ:例えば、露出計を用いて撮影時に調整される露出時間、被撮影対象を照明する照明系の照度など)を学習し、制御装置16を介して、学習した計測パラメータ操作量に基づいて、三次元計測器15を制御することもできる。ここで、三次元計測器15が、計測した複数のワーク12の位置から各々のワーク12の存在位置・姿勢や保持可能な位置・姿勢を推定するのに使用する位置・姿勢推定条件の変数は、上述の三次元計測器15の出力データに含まれてもよい。
さらに、三次元計測器15からの出力データは、図5を参照して後に詳述する前処理部50等により、事前に処理し、その処理されたデータ(画像データ)を状態量観測部21に与えるようにすることも可能なのは前述した通りである。なお、動作結果取得部26は、例えば、三次元計測器15からの出力データ(座標計算部19の出力データ)から、ロボット14のハンド部13によりワーク12を取り出した結果を取得することができるが、それ以外に、例えば、取り出したワーク12を後工程に渡したときの達成度、並びに、取り出したワーク12の破損等の状態変化がないかどうかといった動作結果を、他の手段(例えば、後工程に設けられたカメラやセンサ等)を介して取得することもできるのはいうまでもない。以上において、状態量観測部21および動作結果取得部26は、機能的なブロックであり、1つのブロックにより両者の機能を達成するものとして捉えることもできるのは勿論である。
次に、図1に示される機械学習装置20について、詳述する。機械学習装置20は、装置に入力されるデータの集合から、その中にある有用な規則や知識表現、判断基準などを解析により抽出し、その判断結果を出力するとともに、知識の学習(機械学習)を行う機能を有する。機械学習の手法は様々であるが、大別すれば、例えば、「教師あり学習」、「教師なし学習」および「強化学習」に分けられる。さらに、これらの手法を実現するうえで、特徴量そのものの抽出を学習する、「深層学習(ディープラーニング:Deep Learning)」と呼ばれる手法がある。なお、これらの機械学習(機械学習装置20)は、汎用の計算機もしくはプロセッサを用いてもよいが、GPGPU(General-Purpose computing on Graphics Processing Units)や大規模PCクラスター等を適用すると、より高速に処理することが可能である。
まず、教師あり学習とは、ある入力と結果(ラベル)のデータの組を大量に機械学習装置20に与えることで、それらのデータセットにある特徴を学習し、入力から結果を推定するモデル、すなわちその関係性を帰納的に獲得するものである。この教師あり学習を本実施形態に適用する場合、例えば、センサ入力からワーク位置を推定する部分、あるいはワーク候補に対してその取得成功確率を推定する部分などに用いることができる。例えば、後述のニューラルネットワークなどのアルゴリズムを用いて実現することが可能である。
また、教師なし学習とは、入力データのみを大量に学習装置に与えることで、入力データがどのような分布をしているか学習し、対応する教師出力データを与えなくても、入力データに対して圧縮・分類・整形などを行う装置で学習する手法である。例えば、それらのデータセットにある特徴を、似た者どうしにクラスタリングすることなどができる。この結果を使って、何らかの基準を設けてそれを最適化するような出力の割り当てを行うことにより、出力の予測を実現することができる。
なお、教師なし学習と教師あり学習との中間的な問題設定として、半教師あり学習と呼ばれるものもあり、これは、例えば、一部のみ入力と出力のデータの組が存在し、それ以外は入力のみのデータである場合が対応する。本実施形態においては、実際にロボットを動かさなくても取得することができるデータ(画像データやシミュレーションのデータ等)を教師なし学習で利用することにより、学習を効率的に行うことが可能となる。
次に、強化学習について、説明する。まず、強化学習の問題設定として、次のように考える。
・ロボットは、環境の状態を観測し、行動を決定する。
・環境は、何らかの規則に従って変化し、さらに、自分の行動が、環境に変化を与えることもある。
・行動するたびに、報酬信号が帰ってくる。
・最大化したいのは、将来にわたっての(割引)報酬の合計である。
・行動が引き起こす結果を全く知らない、または、不完全にしか知らない状態から学習はスタートする。すなわち、ロボットは、実際に行動して初めて、その結果をデータとして得ることができる。つまり、試行錯誤しながら最適な行動を探索する必要がある。
・人間の動作を真似るように、事前学習(前述の教師あり学習や、逆強化学習といった手法)した状態を初期状態として、良いスタート地点から学習をスタートさせることもできる。
ここで、強化学習とは、判定や分類だけではなく、行動を学習することにより、環境に行動が与える相互作用を踏まえて適切な行動を学習、すなわち将来的に得られる報酬を最大にするための学習する方法を学ぶものである。このことは、本実施形態において、例えば、ワーク12の山を崩して将来的にワーク12を取り易くする、といった、未来に影響をおよぼすような行動を獲得できることを表している。以下に、例として、Q学習の場合で説明を続けるが、Q学習に限定されるものではない。
Q学習は、或る環境状態sの下で、行動aを選択する価値Q(s,a)を学習する方法である。つまり、或る状態sのとき、価値Q(s,a)の最も高い行動aを最適な行動として選択すればよい。しかし、最初は、状態sと行動aとの組合せについて、価値Q(s,a)の正しい値は全く分かっていない。そこで、エージェント(行動主体)は、或る状態sの下で様々な行動aを選択し、その時の行動aに対して、報酬が与えられる。それにより、エージェントは、より良い行動の選択、すなわち、正しい価値Q(s,a)を学習していく。
さらに、行動の結果、将来にわたって得られる報酬の合計を最大化したいので、最終的にQ(s,a)=E[Σ(γt)rt]となるようにすることを目指す。ここでE[]は期待値を表し、tは時刻、γは後述する割引率と呼ばれるパラメータ、rtは時刻tにおける報酬、Σは時刻tによる合計である。この式における期待値は、最適な行動に従って状態変化したときについてとるものとし、それは、分かっていないので、探索しながら学習することになる。このような価値Q(s,a)の更新式は、例えば、次の式(1)により表すことができる。
Figure 0007100426000001
上記の式(1)において、stは、時刻tにおける環境の状態を表し、atは、時刻tにおける行動を表す。行動atにより、状態はst+1に変化する。rt+1は、その状態の変化により得られる報酬を表している。また、maxの付いた項は、状態st+1の下で、その時に分かっている最もQ値の高い行動aを選択した場合のQ値にγを乗じたものになる。ここで、γは、0<γ≦1のパラメータで、割引率と呼ばれる。また、αは、学習係数で、0<α≦1の範囲とする。
上述した式(1)は、試行atの結果、帰ってきた報酬rt+1を元に、状態stにおける行動atの評価値Q(st,at)を更新する方法を表している。すなわち、状態sにおける行動aの評価値Q(st,at)よりも、報酬rt+1と行動aによる次の状態における最良の行動max aの評価値Q(st+1,max at+1)の合計の方が大きければ、Q(st,at)を大きくし、反対に小さければ、Q(st,at)を小さくすることを示している。つまり、或る状態における或る行動の価値を、結果として即時帰ってくる報酬と、その行動による次の状態における最良の行動の価値に近付けるようにしている。
ここで、Q(s,a)の計算機上での表現方法は、すべての状態行動ペア(s,a)に対して、その値をテーブルとして保持しておく方法と、Q(s,a)を近似するような関数を用意する方法がある。後者の方法では、前述の式(1)は、確率勾配降下法などの手法で近似関数のパラメータを調整していくことにより、実現することができる。なお、近似関数としては、後述のニューラルネットワークを用いることができる。
また、教師あり学習、教師なし学習の学習モデル、あるいは強化学習での価値関数の近似アルゴリズムとして、ニューラルネットワークを用いることができる。図2は、ニューロンのモデルを模式的に示す図であり、図3は、図2に示すニューロンを組み合わせて構成した三層のニューラルネットワークを模式的に示す図である。すなわち、ニューラルネットワークは、例えば、図2に示すようなニューロンのモデルを模した演算装置およびメモリ等で構成される。
図2に示されるように、ニューロンは、複数の入力x(図2では、一例として入力x1~入力x3)に対する出力(結果)yを出力するものである。各入力x(x1,x2,x3)には、この入力xに対応する重みw(w1,w2,w3)が掛けられる。これにより、ニューロンは、次の式(2)により表現される結果yを出力する。なお、入力x、結果yおよび重みwは、すべてベクトルである。また、下記の式(2)において、θは、バイアスであり、fkは、活性化関数である。
Figure 0007100426000002
図3を参照して、図2に示すニューロンを組み合わせて構成した三層のニューラルネットワークを説明する。図3に示されるように、ニューラルネットワークの左側から複数の入力x(ここでは、一例として、入力x1~入力x3)が入力され、右側から結果y(ここでは、一例として、結果y1~入力y3)が出力される。具体的に、入力x1,x2, x3は、3つのニューロンN11~N13の各々に対して、対応する重みが掛けられて入力される。これらの入力に掛けられる重みは、まとめてW1と標記されている。
ニューロンN11~N13は、それぞれ、z11~z13を出力する。図3において、これらz11~z13は、まとめて特徴ベクトルZ1と標記され、入力ベクトルの特徴量を抽出したベクトルとみなすことができる。この特徴ベクトルZ1は、重みW1と重みW2との間の特徴ベクトルである。z11~z13は、2つのニューロンN21およびN22の各々に対して、対応する重みが掛けられて入力される。これらの特徴ベクトルに掛けられる重みは、まとめてW2と標記されている。
ニューロンN21,N22は、それぞれz21,z22を出力する。図3において、これらz21,z22は、まとめて特徴ベクトルZ2と標記されている。この特徴ベクトルZ2は、重みW2と重みW3との間の特徴ベクトルである。z21,z22は、3つのニューロンN31~N33の各々に対して、対応する重みが掛けられて入力される。これらの特徴ベクトルに掛けられる重みは、まとめてW3と標記されている。
最後に、ニューロンN31~N33は、それぞれ、結果y1~結果y3を出力する。ニューラルネットワークの動作には、学習モードと価値予測モードとがある。例えば、学習モードにおいて、学習データセットを用いて重みWを学習し、そのパラメータを用いて予測モードにおいて、ロボットの行動判断を行う。なお、便宜上、予測と書いたが、検出・分類・推論など多様なタスクが可能なのはいうまでもない。
ここで、予測モードで実際にロボットを動かして得られたデータを即時学習し、次の行動に反映させる(オンライン学習)ことも、予め収集しておいたデータ群を用いてまとめた学習を行い、以降はずっとそのパラメータで検知モードを行う(バッチ学習)こともできる。あるいは、その中間的な、ある程度データが溜まるたびに学習モードを挟むということも可能である。
また、重みW1~W3は、誤差逆伝搬法(誤差逆転伝播法:バックプロパゲーション:Backpropagation)により学習可能なものである。なお、誤差の情報は、右側から入り左側に流れる。誤差逆伝搬法は、各ニューロンについて、入力xが入力されたときの出力yと真の出力y(教師)との差分を小さくするように、それぞれの重みを調整(学習)する手法である。
このようなニューラルネットワークは、三層以上に、さらに層を増やすことも可能である(深層学習と称される)。また、入力の特徴抽出を段階的に行い、結果を回帰する演算装置を、教師データのみから自動的に獲得することも可能である。
そこで、本実施形態の機械学習装置20は、上述のQ学習を実施すべく、図1に示されるように、状態量観測部21、動作結果取得部26、学習部22、および、意思決定部25を備えている。ただし、本発明に適用される機械学習方法は、Q学習に限定されないのは前述した通りである。すなわち、機械学習装置で用いることが出来る手法である「教師あり学習」、「教師なし学習」、「半教師あり学習」および「強化学習」等といった様々な手法が適用可能である。なお、これらの機械学習(機械学習装置20)は、汎用の計算機もしくはプロセッサを用いてもよいが、GPGPUや大規模PCクラスター等を適用すると、より高速に処理することが可能である。
すなわち、本実施形態によれば、バラ積みされた状態を含む、乱雑に置かれた複数のワーク12からハンド部13によってワーク12を取り出すロボット14の動作を学習する機械学習装置であって、ワーク12毎の三次元位置(x,y,z)、あるいは三次元位置と姿勢(x,y,z,w,p,r)を計測する三次元計測器15の出力データを含むロボット14の状態量を観測する状態量観測部21と、ハンド部13によってワーク12を取り出すロボット14の取り出し動作の結果を取得する動作結果取得部26と、状態量観測部21からの出力および動作結果取得部26からの出力を受け取り、ワーク12の取り出し動作をロボット14に指令する指令データを含む操作量を、ロボット14の状態量および取り出し動作の結果に関連付けて学習する学習部22と、を備える。
なお、状態量観測部21が観測する状態量は、例えば、或るワーク12を箱11から取り出すときのハンド部13の位置,姿勢および取り出し方向をそれぞれ設定する状態変数が含まれてもよい。また、学習される操作量は、例えば、ワーク12を箱11から取り出す際に制御装置16からロボット14やハンド部13の各駆動軸に与えられるトルク、速度、回転位置などの指令値が含まれてもよい。
そして、学習部22は、バラ積みされた複数のワーク12のうちの1つを取り出すとき、上記の状態変数をワーク12の取り出し動作の結果(動作結果取得部26の出力)に関連付けて学習する。つまり、制御装置16により三次元計測器15(座標計算部19)の出力データとハンド部13の指令データとをそれぞれ無作為に設定し、あるいは所定のルールに基づいて作為的に設定し、ハンド部13によるワーク12の取り出し動作を実施する。ここで、上記所定のルールとしては、例えば、バラ積みされた複数のワーク12のうち、高さ(z)方向が高いワークから順番に取り出すといったものがある。これにより、或るワークを取り出す行為に対して、三次元計測器15の出力データとハンド部13の指令データが対応する。そして、ワーク12の取り出しの成功と失敗が生じ、そのような成功と失敗が生じる都度、学習部22は、三次元計測器15の出力データとハンド部13の指令データとから構成される状態変数を評価していく。
また、学習部22は、ワーク12を取り出すときの三次元計測器15の出力データおよびハンド部13の指令データと、ワーク12の取り出し動作の結果に対する評価とを関連付けて記憶する。なお、失敗例としては、ハンド部13がワーク12を把持できていない場合、あるいは、ワーク12を把持できたとしてもワーク12が箱11の壁と衝突もしくは接触する場合、等がある。また、このようなワーク12の取り出しの成否は、力センサ17の検出値や、三次元計測器による撮影データをもとに判断される。ここで、機械学習装置20は、例えば、制御装置16から出力されるハンド部13の指令データの一部を利用して学習を行うことも可能である。
ここで、本実施形態の学習部22は、報酬計算部23および価値関数更新部24を備えることが好ましい。例えば、報酬計算部23は、上記の状態変数に起因するワーク12の取り出しの成否に基づいて報酬、例えば、スコアを計算する。ワーク12の取り出しの成功に対しては報酬が高くなるようにし、ワーク12の取り出しの失敗に対しては報酬が低くなるようにする。また、所定の時間内にワーク12の取り出しに成功した回数に基づいて報酬を計算してもよい。さらに、この報酬を計算するとき、例えば、ハンド部13による把持に成功や、ハンド部13による運搬の成功、ワーク12の置き動作に成功、などといったワーク12の取り出しの各段階に応じて報酬を計算してもよい。
そして、価値関数更新部24は、ワーク12の取り出し動作の価値を定める価値関数を有していて、上記の報酬に応じて価値関数を更新する。この価値関数の更新には、上述したような価値Q(s,a)の更新式が使用される。さらに、この更新の際、行動価値テーブルを作成することが好ましい。ここでいう行動価値テーブルとは、ワーク12を取り出した時の三次元計測器15の出力データおよびハンド部13の指令データと、その時のワーク12の取り出し結果に応じて更新された価値関数(すなわち評価値)とを互いに関連付けて記録したものをいう。
なお、この行動価値テーブルとして、前述のニューラルネットワークを用いて近似した関数を用いることも可能であり、画像データなどのように状態sの情報量が莫大であるときは特に有効である。また、上記の価値関数は1種類に限定されない。例えば、ハンド部13によるワーク12の把持の成否を評価する価値関数や、ハンド部13によりワーク12を把持して運搬するのに要した時間(サイクルタイム)を評価する価値関数が考えられる。
さらに、上記の価値関数として、ワーク取り出し時の箱11とハンド部13またはワーク12との干渉を評価する価値関数を使用してもよい。この価値関数の更新に用いる報酬を計算するため、状態量観測部21は、ハンド部13に作用する力、例えば、力センサ17により検出される値を観測することが好ましい。そして、力センサ17により検出される力の変化量が所定の閾値を超える場合、上記の干渉が発生したと推定できるため、その場合の報酬を例えばマイナスの値とし、価値関数が定める価値が低くなるようにするのが好ましい。
また、本実施形態によれば、三次元計測器15の計測パラメータを操作量として学習することも可能である。すなわち、本実施形態によれば、バラ積みされた状態を含む、乱雑に置かれた複数のワーク12からハンド部13によってワーク12を取り出すロボット14の動作を学習する機械学習装置であって、ワーク12毎の三次元位置(x,y,z)、あるいは三次元位置と姿勢(x,y,z,w,p,r)を計測する三次元計測器15の出力データを含むロボット14の状態量を観測する状態量観測部21と、ハンド部13によってワーク12を取り出すロボット14の取り出し動作の結果を取得する動作結果取得部26と、状態量観測部21からの出力および動作結果取得部26からの出力を受け取り、三次元計測器15の計測パラメータを含む操作量を、ロボット14の状態量および取り出し動作の結果に関連付けて学習する学習部22と、を備える。
さらに、本実施形態のロボットシステム10においては、ロボット14に取り付けられているハンド部13を別の形態のハンド部13に交換する自動ハンド交換装置(図示しない)が備えられていてもよい。その場合、価値関数更新部24は、形態の異なるハンド部13毎に上記の価値関数を有していて、交換後のハンド部13の価値関数を報酬に応じて更新するものであるとよい。それにより、形態の異なる複数のハンド13毎にハンド部13の最適な動作を学習できるため、価値関数のより高いハンド部13を自動ハンド交換装置に選定させることが可能となる。
続いて、意思決定部25は、例えば、上述したように作成した行動価値テーブルを参照して、最も高い評価値に対応する、三次元計測器15の出力データおよびハンド部13の指令データを選択することが好ましい。その後、意思決定部25は、選定したハンド部13や三次元計測器15の最適なデータを制御装置16に出力する。
そして、制御装置16は、学習部22が出力するハンド部13や三次元計測器15の最適なデータを用いて、三次元計測器15およびロボット14をそれぞれ制御してワーク12を取り出す。例えば、制御装置16は、学習部22により得られたハンド部13の最適な位置,姿勢および取り出し方向をそれぞれ設定する状態変数に基づいて、ハンド部13やロボット14の各駆動軸を動作させることが好ましい。
なお、上述した実施形態のロボットシステム10は、図1に示されるように1つのロボット14に対して1つの機械学習装置20を備えたものである。しかし、本発明においては、ロボット14および機械学習装置20の各々の数は1つに限定されない。例えば、ロボットシステム10は複数のロボット14を備えていて、1つ以上の機械学習装置20が各々のロボット14に対応して設けられていてもよい。そして、ロボットシステム10は、各ロボット14の機械学習装置20が取得した、三次元計測器15とハンド部13の最適な状態変数を、ネットワークなどの通信媒体によって共有または相互交換するのが好ましい。それにより、或るロボット14の稼働率が別のロボット14の稼働率より低くても、別のロボット14に備わる機械学習装置20が取得した最適な動作結果を或るロボット14の動作に利用することができる。また、複数のロボットでの学習モデルの共有、もしくは三次元計測器15の計測パラメータを含む操作量とロボット14の状態量および取り出し動作の結果を共有することにより、学習に掛かる時間を短縮することができる。
さらに、機械学習装置20はロボット14内に在ってもロボット14外に在ってもよい。あるいは、機械学習装置20は、制御装置16内に在ってもよいし、クラウドサーバ(図示しない)に存在してもよい。
また、ロボットシステム10が複数のロボット14を備える場合には、或るロボット14がハンド部13により把持したワーク12を運搬する間に、別のロボット14のハンド部にワーク12を取り出す作業を実施させることが可能である。そして、このようなワーク12を取り出すロボット14が切替る間の時間を利用して価値関数更新部24が価値関数を更新することもできる。さらに、機械学習装置20には、複数のハンドモデルの状態変数をもち、ワーク12の取り出し動作中に複数のハンドモデルでの取り出しシミュレーションを行い、その取り出しシミュレーションの結果に応じて、複数のハンドモデルの状態変数を、ワーク12の取り出し動作の結果に関連付けて学習することも可能である。
なお、上述の機械学習装置20においては、ワーク12毎の三次元マップのデータを取得した際の三次元計測器15の出力データが、三次元計測器15から状態量観測部21に送信されるようになっている。そのような送信データには、異常なデータが含まれていないとは限らないので、機械学習装置20には、異常データのフィルタリング機能、すなわち三次元計測器15からのデータを状態量観測部21に入力するか否かを選択可能な機能を持たせることができる。それにより、機械学習装置20の学習部22は、三次元計測器15およびロボット14によるハンド部13の最適な動作を効率よく学習できるようになる。
さらに、上述した機械学習装置20において、制御装置16には、学習部22からの出力データが入力されているが、その学習部22からの出力データにも、異常なデータが含まれていないとは限られないので、異常データのフィルタリング機能、すなわち、学習部22からのデータを制御装置16に出力するか否かを選択可能な機能を持たせてもよい。それにより、制御装置16は、ハンド部13の最適な動作をより安全にロボット14に実行させることが可能になる。
なお、上述の異常データは、次のような手順により検出し得る。すなわち、入力データの確率分布を推定し、確率分布を用いて新規の入力の発生確率を導き、発生確率が一定以下ならば、典型的な挙動から大きく外れる異常なデータと見なす、という手順により異常データを検出できる。
次に、本実施形態のロボットシステム10に備わる機械学習装置20の動作の一例を説明する。図4は、図1に示す機械学習装置の動作の一例を示すフローチャートである。図4に示されるように、図1に示す機械学習装置20において、学習動作(学習処理)が開始すると、三次元計測器15により三次元計測を実施して出力する(図4のステップS11)。すなわち、ステップS11において、例えば、バラ積みされた状態を含む、乱雑に置かれたワーク12毎の三次元マップ(三次元計測器15の出力データ)を取得して状態量観測部21に出力するとともに、座標計算部19によりワーク12毎の三次元マップを受け取ってワーク12毎の三次元位置(x,y,z)を計算して状態量観測部21,動作結果取得部26および制御装置16に出力する。ここで、座標計算部19は、三次元計測器15の出力からワーク12毎の姿勢(w,p,r)を計算して出力してもよい。
なお、図5を参照して説明するように、三次元計測器15の出力(三次元マップ)は、状態量観測部21へ入力される前に処理する前処理部50を介して状態量観測部21に入力されてもよい。また、図7を参照して説明するように、三次元計測器15の出力だけが状態量観測部21に入力されてもよく、さらに、三次元計測器15の出力だけが前処理部50を介して状態量観測部21に入力されてもよい。このように、ステップS11における三次元計測の実施および出力は、様々なものを含むことが可能である。
具体的に、図1の場合には、状態量観測部21は、三次元計測器15からのワーク12毎の三次元マップ、ならびに、座標計算部19からのワーク12毎の三次元位置(x,y,z)および姿勢(w,p,r)といった状態量(三次元計測器15の出力データ)を観測する。なお、動作結果取得部26は、三次元計測器15の出力データ(座標計算部19の出力データ)により、ハンド部13によってワーク12を取り出すロボット14の取り出し動作の結果を取得する。なお、動作結果取得部26は、三次元計測器の出力データ以外に、例えば、取り出したワーク12を後工程に渡したときの達成度や取り出したワーク12の破損といった取り出し動作の結果も取得することができる。
さらに、例えば、機械学習装置20により、三次元計測器15の出力データをもとに最適な動作を決定し(図4のステップS12)、また、制御装置16は、ハンド部13(ロボット14)の指令データ(操作量)を出力して、ワーク12の取り出し動作を実施する(図4のステップS13)。そして、ワークの取り出し結果は、上述した動作結果取得部26により取得される(図4のステップS14)。
次に、動作結果取得部26からの出力により、ワーク12の取り出しの成否を判定し(図4のステップS15)、ワーク12の取り出しに成功した場合は、プラスの報酬を設定し(図4のステップS16)、ワーク12の取り出しに失敗した場合は、マイナスの報酬を設定し(図4のステップS17)、そして、行動価値テーブル(価値関数)を更新する(図4のステップS18)。
ここで、ワーク12の取り出しの成否判定は、例えば、ワーク12の取り出し動作の後の三次元計測器15の出力データに基づいてことができる。また、ワーク12の取り出しの成否判定は、ワーク12の取り出しの成否を評価したものに限定されず、例えば、取り出したワーク12を後工程に渡したときの達成度、取り出したワーク12の破損等の状態変化がないかどうか、あるいは、ハンド部13によりワーク12を把持して運搬するのに要した時間(サイクルタイム)やエネルギー(電力量)などを評価したものであってもよい。
なお、ワーク12の取り出しの成否判定に基づいた報酬の値の計算は、報酬計算部23により行われ、また、行動価値テーブルの更新は、価値関数更新部24により行われる。すなわち、学習部22は、ワーク12の取り出しに成功したときは、前述した価値Q(s,a)の更新式における報酬にプラスの報酬を設定し(S16)、また、ワーク12の取り出しに失敗したときは、その更新式における報酬にマイナスの報酬を設定する(S17)。そして、学習部22は、ワーク12の取り出しの都度、前述した行動価値テーブルの更新を行う(S18)。以上のステップS11~S18を繰返すことにより、学習部22は、行動価値テーブルの更新を継続(学習)することになる。
以上において、状態量観測部21に入力されるデータは、三次元計測器15の出力データに限定されず、例えば、他のセンサの出力等のデータが含まれてもよく、さらに、制御装置16からの指令データの一部を利用することも可能である。このようにして、制御装置16は、機械学習装置20から出力された指令データ(操作量)を使って、ワーク12の取り出し動作をロボット14に実行させる。なお、機械学習装置20による学習は、ワーク12の取り出し動作に限定されるものではなく、例えば、三次元計測器15の計測パラメータであってもよいのは前述した通りである。
以上のように、本実施形態の機械学習装置20を備えたロボットシステム10によれば、バラ積みされた状態を含む、乱雑に置かれた複数のワーク12からハンド部13によってワーク12を取り出すロボット14の動作を学習することができる。これにより、ロボットシステム10は、バラ積みされたワーク12を取り出すロボット14の最適な動作の選択を人間の介在無しに学習することが可能になる。
図5は、本発明の他の実施形態のロボットシステムの概念的な構成を示すブロック図であり、教師あり学習を適用したロボットシステムを示すものである。図5と、前述した図1の比較から明らかなように、図5に示す教師あり学習を適用したロボットシステム10’は、図1に示すQ学習(強化学習)を適用したロボットシステム10に対して、さらに、結果(ラベル)付きデータ記録部40を備える。なお、図5に示すロボットシステム10’は、さらに、三次元計測器15の出力データを前処理する前処理部50を備える。なお、前処理部50は、例えば、図1に示すロボットシステム10に対しても設けることができるのはいうまでもない。
図5に示されるように、教師あり学習を適用したロボットシステム10’における機械学習装置30は、状態量観測部31と、動作結果取得部36と、学習部32と、意思決定部35と、を備える。学習部32は、誤差計算部33と、学習モデル更新部34と、を含む。なお、本実施形態のロボットシステム10’においても、機械学習装置30は、ワーク12の取り出し動作をロボット14に指令する指令データ、或いは、三次元計測器15の計測パラメータといった操作量を学習して出力する。
すなわち、図5に示す教師あり学習を適用したロボットシステム10’において、誤差計算部33および学習モデル更新部34は、それぞれ、図1に示すQ学習を適用したロボットシステム10における報酬計算部23および価値関数更新部24に対応する。なお、他の構成、例えば、三次元計測器15,制御装置16およびロボット14等の構成は、前述した図1と同様であり、その説明は省略する。
動作結果取得部36から出力される結果(ラベル)と学習部に実装されている学習モデルの出力との誤差が誤差計算部33で計算される。ここで、結果(ラベル)付きデータ記録部40は、例えば、ワーク12の形状やロボット14による処理が同一の場合にはロボット14に作業を行わせる所定日の前日までに得られた結果(ラベル)付きデータを保持し、その所定日に、結果(ラベル)付きデータ記録部40に保持された結果(ラベル)付きデータを誤差計算部33に提供することができる。あるいは、ロボットシステム10’の外部で行われたシミュレーション等により得られたデータ、または、他のロボットシステムの結果(ラベル)付きデータを、メモリカードや通信回線により、そのロボットシステム10’の誤差計算部33に提供することも可能である。さらに、結果(ラベル)付きデータ記録部40をフラッシュメモリ(Flash Memory)等の不揮発性メモリで構成し、結果(ラベル)付きデータ記録部(不揮発性メモリ)40を学習部32に内蔵し、その結果(ラベル)付きデータ記録部40に保持された結果(ラベル)付きデータを、そのまま学習部32で使用することもできる。
図6は、図5に示すロボットシステムにおける前処理部の処理の一例を説明するための図であり、図6(a)は、箱11にバラ積みされた複数のワーク12の三次元位置(姿勢)のデータ、すなわち、三次元計測器15の出力データの一例を示し、図6(b)~図6(d)は、図6(a)におけるワーク121~123に対して前処理を行った後の画像データの例を示す。
ここで、ワーク12(121~123)としては、円柱形状の金属部品を想定し、ハンド(13)としては、2本の爪部でワークを把持するのではなく、例えば、円柱形状のワーク12の長手中央部分を負圧で吸い取る吸着パッドを想定している。そのため、例えば、ワーク12の長手中央部分の位置が分かれば、その位置に対して吸着パッド(13)を移動させて吸着することにより、ワーク12を取り出すことができるようになっている。また、図6(a)~図6(d)における数値は、[mm]で表され、それぞれx方向,y方向,z方向を示す。なお、z方向は、複数のワーク12がバラ積みされた箱11を、上方に設けられた三次元計測器15(例えば、2つのカメラを有する)により撮像した画像データの高さ(深さ)方向に対応する。
図6(a)と、図6(b)~図6(d)の比較から明らかなように、図5に示すロボットシステム10’における前処理部50の処理の一例としては、三次元計測器15の出力データ(三次元画像)から、注目するワーク12(例えば、3つのワーク121~123)を、回転させると共に、中心の高さが『0』となるように処理するものである。
すなわち、三次元計測器15の出力データには、例えば、それぞれのワーク12の長手中央部分の三次元位置(x,y,z)および姿勢(w,p,r)の情報が含まれている。このとき、図6(b),図6(c)および図6(d)に示されるように、注目する3つのワーク121,122,123は、それぞれ-rだけ回転させると共に、zだけ減算して、全て同じ条件に揃えるようになっている。このような前処理を行うことにより、機械学習装置30の負荷を低減することが可能になる。
ここで、図6(a)に示す三次元画も、三次元計測器15の出力データそのものではなく、例えば、以前より実施しているワーク12の取り出し順を規定するプログラムにより得られた画像から、選択するためのしきい値を低くしたものとなっており、この処理自体も前処理部50で行うこともできる。なお、このような前処理部50による処理としては、ワーク12の形状およびハンド13の種類等を始めとしてさまざまな条件により様々に変化し得るのはいうまでもない。
このように、前処理部50により、状態量観測部31への入力前に処理を行った三次元計測器15の出力データ(ワーク12毎の三次元マップ)は、状態量観測部31に入力されることになる。再び、図5を参照して、動作結果取得部36から出力される結果(ラベル)を受け取る誤差計算部33は、例えば、学習モデルとして図3に示すニューラルネットワークの出力をyとしたとき、実際にワーク12の取り出し動作を行って成功していたときは-log(y)の誤差、失敗していたときは-log(1-y)の誤差があるとみなし、この誤差を最小化することを目標として処理を行う。なお、図3に示すニューラルネットワークの入力としては、例えば、図6(b)~図6(d)に示されるような前処理を行った後の注目するワーク121~123の画像データ、並びに、それら注目するワーク121~123毎の三次元位置および姿勢(x,y,z,w,p,r)のデータを与えることになる。
図7は、図1に示すロボットシステムの変形例を示すブロック図である。図7と、図1の比較から明らかなように、図7に示すロボットシステム10の変形例において、座標計算部19は削除され、状態量観測部21は、三次元計測器15からの三次元マップだけを受け取ってロボット14の状態量を観測するようになっている。なお、制御装置16に対して、座標計算部19に対応する構成を設けることができるのはいうまでもない。また、この図7に示す構成は、例えば、図5を参照して説明した教師あり学習を適用したロボットシステム10’に対しても適用することができる。すなわち、図5に示すロボットシステム10’において、前処理部50を削除し、状態量観測部31が三次元計測器15からの三次元マップだけを受け取ってロボット14の状態量を観測することも可能である。このように、上述した各実施例は、様々な変更および変形することが可能である。
以上、詳述したように、本実施形態によれば、バラ積みされた状態を含む、乱雑に置かれたワークを取り出すときのロボットの最適な動作を人間の介在無しに学習できる機械学習装置、ロボットシステムおよび機械学習方法を提供することが可能になる。なお、本発明における機械学習装置20,30としては、強化学習(例えば、Q学習)または教師あり学習を適用したものに限定されず、様々な機械学習のアルゴリズムを適用することが可能である。
以上、実施形態を説明したが、ここに記載したすべての例や条件は、発明および技術に適用する発明の概念の理解を助ける目的で記載されたものであり、特に記載された例や条件は発明の範囲を制限することを意図するものではない。また、明細書のそのような記載は、発明の利点および欠点を示すものでもない。発明の実施形態を詳細に記載したが、各種の変更、置き換え、変形が発明の精神および範囲を逸脱することなく行えることが理解されるべきである。
10,10’ ロボットシステム
11 箱
12 ワーク
13 ハンド部
14 ロボット
15 三次元計測器
16 制御装置
17 力センサ
18 支持部
19 座標計算部
20,30 機械学習装置
21,31 状態量観測部
22,32 学習部
23 報酬計算部
24 価値関数更新部
25,35 意思決定部
26,36 動作結果取得部
33 誤差計算部
34 学習モデル更新部
40 結果(ラベル)付きデータ記録部
50 前処理部

Claims (18)

  1. 計測器により取得された、バラ積みされた状態を含む乱雑に置かれた複数のワークの三次元マップおよび前記三次元マップを前処理した三次元マップの少なくともいずれか1つを取得する観測部と、
    ハンド部による前記ワークの取り出し動作の価値を定める価値関数に前記複数のワークに関する前記観測部で取得された前記三次元マップを入力することにより、前記ハンド部による前記ワークの取り出し動作を実行するための状態変数を取得する学習部と、
    前記取り出し動作の結果を取得する動作結果取得部と、を備え、
    前記学習部は、
    前記取り出し動作の結果に基づいて、報酬を計算する報酬計算部と、
    前記報酬に基づいて、前記価値関数を更新する価値関数更新部と、を備え、
    前記価値関数がニューラルネットワークを用いて表現されており、前記ニューラルネットワークが強化学習により学習される機械学習装置。
  2. 計測器により取得された、バラ積みされた状態を含む乱雑に置かれた複数のワークの三次元マップおよび前記三次元マップを前処理した三次元マップの少なくともいずれか1つを取得する観測部と、
    前記複数のワークに関する前記観測部で取得された前記三次元マップを学習モデルに入力することにより、ハンド部による前記ワークの取り出し動作を実行するための状態変数を取得する学習部と、
    前記取り出し動作の結果を取得する動作結果取得部と、を備え、
    前記学習部は、
    前記学習モデルの出力と前記取り出し動作の結果に基づいて、誤差を計算する誤差計算部と、
    前記誤差に基づいて、前記学習モデルを更新する学習モデル更新部と、を備え、
    前記学習モデルがニューラルネットワークである機械学習装置。
  3. 前記状態変数は、前記ハンド部の位置、姿勢および取り出し方向を設定するための値である、
    請求項1または2に記載の機械学習装置。
  4. 前記観測部が、前記ハンド部によって前記ワークを取り出す前記ロボットの取り出し動作に関する状態量を取得する、
    請求項1乃至3のいずれか1項に記載の機械学習装置。
  5. 前記観測部は、前記複数のワークの三次元マップおよび前記複数のワークの姿勢データを受け取る
    請求項1乃至4のいずれか1項に記載の機械学習装置。
  6. 前記計測器は、カメラである、
    請求項1乃至5のいずれか1項に記載の機械学習装置。
  7. 前記複数のワークの三次元マップは、前記複数のワークの表面の位置の情報である、
    請求項1乃至6のいずれか1項に記載の機械学習装置。
  8. さらに、
    前記学習部により得られた前記状態変数に基づいて、前記ワークの取り出し動作を前記ロボットに指令する指令データを決定する意思決定部を備える、
    請求項1乃至7のいずれか1項に記載の機械学習装置。
  9. さらに、
    前記学習部により得られた前記状態変数に基づいて、前記計測器の計測パラメータを決定する意思決定部を備える、
    請求項1乃至7のいずれか1項に記載の機械学習装置。
  10. 請求項8に記載の機械学習装置を備えたロボットシステムであって、
    前記計測器と、
    前記ハンド部を備えるロボットと、
    前記指令データに基づいて、前記ロボットを制御する制御装置と、
    を備えるロボットシステム。
  11. 請求項9に記載の機械学習装置を備えたロボットシステムであって、
    前記計測器と、
    前記ハンド部を備えるロボットと、
    前記計測パラメータに基づいて、前記計測器を制御する制御装置と、
    を備えるロボットシステム。
  12. 前記機械学習装置がクラウドサーバ上に存在する、
    請求項10または11に記載のロボットシステム。
  13. 前記ロボットシステムは、複数の前記ロボットを備え、
    前記機械学習装置は、前記ロボット毎にそれぞれ設けられ、
    複数の前記ロボットに設けられた複数の前記機械学習装置は、通信媒体を介して相互にデータを共有または交換する、
    請求項10または11に記載のロボットシステム。
  14. 計測器により取得された、バラ積みされた状態を含む乱雑に置かれた複数のワークの三次元マップおよび前記三次元マップを前処理した三次元マップの少なくともいずれか1つを取得するステップと、
    ハンド部による前記ワークの取り出し動作の価値を定める価値関数に前記複数のワークに関する前記ステップで取得された前記三次元マップを入力することにより、前記ハンド部による前記ワークの取り出し動作を実行するための状態変数を取得するステップと、
    前記取り出し動作の結果を取得するステップと、
    前記取り出し動作の結果に基づいて、報酬を計算するステップと、
    前記報酬に基づいて、前記価値関数を更新するステップと、を備え、
    前記価値関数がニューラルネットワークを用いて表現されており、前記ニューラルネットワークが強化学習により学習される機械学習方法。
  15. 計測器により取得された、バラ積みされた状態を含む乱雑に置かれた複数のワークの三次元マップおよび前記三次元マップを前処理した三次元マップの少なくともいずれか1つを取得するステップと、
    前記複数のワークに関する前記ステップで取得された前記三次元マップを学習モデルに入力することにより、ハンド部による前記ワークの取り出し動作を実行するための状態変数を取得するステップと、
    前記取り出し動作の結果を取得するステップと、
    前記学習モデルの出力と前記取り出し動作の結果に基づいて、誤差を計算するステップと、
    前記誤差に基づいて、前記学習モデルを更新するステップと、を備え、
    前記学習モデルがニューラルネットワークである機械学習方法。
  16. 前記状態変数は、前記ハンド部の位置、姿勢および取り出し方向を設定するための値である、
    請求項14または15に記載の機械学習方法。
  17. 前記複数のワークの三次元マップは、前記複数のワークの表面の位置の情報である、
    請求項14乃至16のいずれか1項に記載の機械学習方法。
  18. 請求項14乃至17のいずれか1項に記載の機械学習方法を用いた前記ニューラルネットワークの生成方法。
JP2017010506A 2015-07-31 2017-01-24 ワークの取り出し動作を学習する機械学習装置、ロボットシステムおよび機械学習方法 Active JP7100426B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2015152067 2015-07-31
JP2015152067 2015-07-31

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2015233857A Division JP6522488B2 (ja) 2015-07-31 2015-11-30 ワークの取り出し動作を学習する機械学習装置、ロボットシステムおよび機械学習方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2020120352A Division JP2020168719A (ja) 2015-07-31 2020-07-14 ロボットシステムおよびロボットの制御方法

Publications (3)

Publication Number Publication Date
JP2017064910A JP2017064910A (ja) 2017-04-06
JP2017064910A5 JP2017064910A5 (ja) 2019-07-04
JP7100426B2 true JP7100426B2 (ja) 2022-07-13

Family

ID=57985283

Family Applications (4)

Application Number Title Priority Date Filing Date
JP2015233857A Active JP6522488B2 (ja) 2015-07-31 2015-11-30 ワークの取り出し動作を学習する機械学習装置、ロボットシステムおよび機械学習方法
JP2017010506A Active JP7100426B2 (ja) 2015-07-31 2017-01-24 ワークの取り出し動作を学習する機械学習装置、ロボットシステムおよび機械学習方法
JP2020120352A Pending JP2020168719A (ja) 2015-07-31 2020-07-14 ロボットシステムおよびロボットの制御方法
JP2022128174A Pending JP2022145915A (ja) 2015-07-31 2022-08-10 推論方法、推論プログラム、推論装置、学習方法、学習プログラム、学習装置およびモデル生成方法

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2015233857A Active JP6522488B2 (ja) 2015-07-31 2015-11-30 ワークの取り出し動作を学習する機械学習装置、ロボットシステムおよび機械学習方法

Family Applications After (2)

Application Number Title Priority Date Filing Date
JP2020120352A Pending JP2020168719A (ja) 2015-07-31 2020-07-14 ロボットシステムおよびロボットの制御方法
JP2022128174A Pending JP2022145915A (ja) 2015-07-31 2022-08-10 推論方法、推論プログラム、推論装置、学習方法、学習プログラム、学習装置およびモデル生成方法

Country Status (3)

Country Link
JP (4) JP6522488B2 (ja)
CN (2) CN113199483A (ja)
DE (1) DE102016015873B3 (ja)

Families Citing this family (108)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6522488B2 (ja) * 2015-07-31 2019-05-29 ファナック株式会社 ワークの取り出し動作を学習する機械学習装置、ロボットシステムおよび機械学習方法
JP6771744B2 (ja) * 2017-01-25 2020-10-21 株式会社安川電機 ハンドリングシステム及びコントローラ
JP6453922B2 (ja) 2017-02-06 2019-01-16 ファナック株式会社 ワークの取り出し動作を改善するワーク取り出し装置およびワーク取り出し方法
CN110382172B (zh) * 2017-03-06 2023-01-31 株式会社富士 图像处理装置以及图像处理数据生成方法
JP6438512B2 (ja) * 2017-03-13 2018-12-12 ファナック株式会社 機械学習により補正した計測データでワークの取り出しを行うロボットシステム、計測データ処理装置および計測データ処理方法
JP6542824B2 (ja) 2017-03-13 2019-07-10 ファナック株式会社 入力画像から検出した対象物の像の尤度を計算する画像処理装置および画像処理方法
JP6869060B2 (ja) * 2017-03-15 2021-05-12 株式会社オカムラ マニピュレータの制御装置、制御方法およびプログラム、ならびに作業システム
JP6902369B2 (ja) * 2017-03-15 2021-07-14 株式会社オカムラ 提示装置、提示方法およびプログラム、ならびに作業システム
JP6983524B2 (ja) * 2017-03-24 2021-12-17 キヤノン株式会社 情報処理装置、情報処理方法およびプログラム
JP6557272B2 (ja) * 2017-03-29 2019-08-07 ファナック株式会社 状態判定装置
JP6680714B2 (ja) * 2017-03-30 2020-04-15 ファナック株式会社 ワイヤ放電加工機の制御装置及び機械学習装置
JP6490132B2 (ja) * 2017-03-31 2019-03-27 ファナック株式会社 ロボットの制御装置、機械学習装置及び機械学習方法
JP6526100B2 (ja) * 2017-04-28 2019-06-05 ファナック株式会社 物品取出システム
JP6487495B2 (ja) * 2017-05-19 2019-03-20 ファナック株式会社 ワーク取出しシステム
JP7045139B2 (ja) * 2017-06-05 2022-03-31 株式会社日立製作所 機械学習装置、機械学習方法、および機械学習プログラム
JP6542839B2 (ja) * 2017-06-07 2019-07-10 ファナック株式会社 制御装置及び機械学習装置
JP6886869B2 (ja) * 2017-06-09 2021-06-16 川崎重工業株式会社 動作予測システム及び動作予測方法
CN107336234A (zh) * 2017-06-13 2017-11-10 赛赫智能设备(上海)股份有限公司 一种反馈式自学习工业机器人及工作方法
EP3693138B1 (en) * 2017-06-19 2022-08-03 Google LLC Robotic grasping prediction using neural networks and geometry aware object representation
CN107255969B (zh) * 2017-06-28 2019-10-18 重庆柚瓣家科技有限公司 养老机器人用监管系统
CN107329445B (zh) * 2017-06-28 2020-09-08 重庆柚瓣家科技有限公司 机器人行为准则智能监管的方法
CN107252785B (zh) * 2017-06-29 2019-05-10 顺丰速运有限公司 一种应用于快递件机器人供件的快件抓取方法
JP6564426B2 (ja) * 2017-07-07 2019-08-21 ファナック株式会社 部品供給装置及び機械学習装置
JP7116901B2 (ja) * 2017-08-01 2022-08-12 オムロン株式会社 ロボット制御装置、ロボット制御方法及びロボット制御プログラム
DE102017213658A1 (de) * 2017-08-07 2019-02-07 Robert Bosch Gmbh Handhabungsanordnung mit einer Handhabungseinrichtung zur Durchführung mindestens eines Arbeitsschritts sowie Verfahren und Computerprogramm
JP6680730B2 (ja) * 2017-08-08 2020-04-15 ファナック株式会社 制御装置及び学習装置
JP6680732B2 (ja) * 2017-08-23 2020-04-15 ファナック株式会社 物品積み付け装置及び機械学習装置
JP6795472B2 (ja) * 2017-08-28 2020-12-02 ファナック株式会社 機械学習装置、機械学習システム及び機械学習方法
CN111226237A (zh) * 2017-09-01 2020-06-02 加利福尼亚大学董事会 用于稳健抓取和瞄准物体的机器人系统和方法
JP6608890B2 (ja) * 2017-09-12 2019-11-20 ファナック株式会社 機械学習装置、ロボットシステム及び機械学習方法
EP3456485B1 (de) * 2017-09-15 2021-02-17 Siemens Aktiengesellschaft Optimieren eines automatisierten vorganges zum auswählen und greifen eines objektes durch einen roboter
JP6695843B2 (ja) * 2017-09-25 2020-05-20 ファナック株式会社 装置、及びロボットシステム
JP6895563B2 (ja) * 2017-09-25 2021-06-30 ファナック株式会社 ロボットシステム、モデル生成方法、及びモデル生成プログラム
JP6579498B2 (ja) 2017-10-20 2019-09-25 株式会社安川電機 自動化装置及び位置検出装置
JP2019084601A (ja) 2017-11-02 2019-06-06 キヤノン株式会社 情報処理装置、把持システムおよび情報処理方法
JP6815309B2 (ja) * 2017-11-16 2021-01-20 株式会社東芝 作動システムおよびプログラム
JP6676030B2 (ja) * 2017-11-20 2020-04-08 株式会社安川電機 把持システム、学習装置、把持方法、及び、モデルの製造方法
JP6680750B2 (ja) * 2017-11-22 2020-04-15 ファナック株式会社 制御装置及び機械学習装置
US10828778B2 (en) * 2017-11-30 2020-11-10 Abb Schweiz Ag Method for operating a robot
CN108340367A (zh) * 2017-12-13 2018-07-31 深圳市鸿益达供应链科技有限公司 用于机械臂抓取的机器学习方法
JP7136554B2 (ja) 2017-12-18 2022-09-13 国立大学法人信州大学 把持装置、学習装置、プログラム、把持システム、及び学習方法
KR102565444B1 (ko) * 2017-12-21 2023-08-08 삼성전자주식회사 객체를 식별하기 위한 장치 및 방법
JP6587195B2 (ja) * 2018-01-16 2019-10-09 株式会社Preferred Networks 触覚情報推定装置、触覚情報推定方法、プログラム及び非一時的コンピュータ可読媒体
WO2019146007A1 (ja) * 2018-01-24 2019-08-01 三菱電機株式会社 位置制御装置及び位置制御方法
JP6892400B2 (ja) * 2018-01-30 2021-06-23 ファナック株式会社 レーザ装置の故障発生メカニズムを学習する機械学習装置
JP6703020B2 (ja) * 2018-02-09 2020-06-03 ファナック株式会社 制御装置及び機械学習装置
JP6874712B2 (ja) * 2018-02-19 2021-05-19 オムロン株式会社 シミュレーション装置、シミュレーション方法及びシミュレーションプログラム
JP7005388B2 (ja) * 2018-03-01 2022-01-21 株式会社東芝 情報処理装置及び仕分システム
JP6873941B2 (ja) 2018-03-02 2021-05-19 株式会社日立製作所 ロボット作業システム、及びロボット作業システムの制御方法
US11420325B2 (en) 2018-03-05 2022-08-23 Omron Corporation Method, apparatus and system for controlling a robot, and storage medium
JP6879238B2 (ja) 2018-03-13 2021-06-02 オムロン株式会社 ワークピッキング装置及びワークピッキング方法
JP6911798B2 (ja) 2018-03-15 2021-07-28 オムロン株式会社 ロボットの動作制御装置
JP2019162712A (ja) * 2018-03-20 2019-09-26 ファナック株式会社 制御装置、機械学習装置及びシステム
JP6687657B2 (ja) * 2018-03-20 2020-04-28 ファナック株式会社 センサ及びロボットを用いた物品取り出し装置、及び物品取り出し方法
KR102043898B1 (ko) * 2018-03-27 2019-11-12 한국철도기술연구원 물류 센터의 피킹 자동화 시스템 및 이를 이용한 피킹 자동화 방법
JP6810087B2 (ja) * 2018-03-29 2021-01-06 ファナック株式会社 機械学習装置、機械学習装置を用いたロボット制御装置及びロボットビジョンシステム、並びに機械学習方法
US11260534B2 (en) * 2018-04-04 2022-03-01 Canon Kabushiki Kaisha Information processing apparatus and information processing method
JP6829271B2 (ja) * 2018-04-05 2021-02-10 ファナック株式会社 測定動作パラメータ調整装置、機械学習装置及びシステム
US11579000B2 (en) 2018-04-05 2023-02-14 Fanuc Corporation Measurement operation parameter adjustment apparatus, machine learning device, and system
CN108527371A (zh) * 2018-04-17 2018-09-14 重庆邮电大学 一种基于bp神经网络的灵巧手规划方法
CN111757795B (zh) 2018-04-26 2024-02-06 松下控股株式会社 执行器装置、基于执行器装置的对象物取出方法以及对象物取出系统
JP7154815B2 (ja) 2018-04-27 2022-10-18 キヤノン株式会社 情報処理装置、制御方法、ロボットシステム、コンピュータプログラム、及び記憶媒体
WO2019225746A1 (ja) 2018-05-25 2019-11-28 川崎重工業株式会社 ロボットシステム及び追加学習方法
JP7039389B2 (ja) * 2018-05-25 2022-03-22 川崎重工業株式会社 ロボットシステム及びロボット制御方法
KR102094360B1 (ko) * 2018-06-11 2020-03-30 동국대학교 산학협력단 영상 기반 힘 예측 시스템 및 그 방법
US11945115B2 (en) * 2018-06-14 2024-04-02 Yamaha Hatsudoki Kabushiki Kaisha Machine learning device and robot system provided with same
CN112218748B (zh) * 2018-06-14 2023-09-05 雅马哈发动机株式会社 机器人系统
JP7102241B2 (ja) * 2018-06-14 2022-07-19 ヤマハ発動機株式会社 機械学習装置及びこれを備えたロボットシステム
JP6784722B2 (ja) * 2018-06-28 2020-11-11 ファナック株式会社 出力装置、制御装置、及び評価関数値の出力方法
JP2020001127A (ja) * 2018-06-28 2020-01-09 勇貴 高橋 ピッキングシステム,ピッキング処理装置及びプログラム
WO2020009139A1 (ja) * 2018-07-04 2020-01-09 株式会社Preferred Networks 学習方法、学習装置、学習システム及びプログラム
JP6740288B2 (ja) * 2018-07-13 2020-08-12 ファナック株式会社 物体検査装置、物体検査システム、及び検査位置を調整する方法
WO2020021643A1 (ja) * 2018-07-24 2020-01-30 株式会社Fuji エンドエフェクタの選択方法および選択システム
JP7191569B2 (ja) * 2018-07-26 2022-12-19 Ntn株式会社 把持装置
JP7121127B2 (ja) * 2018-08-03 2022-08-17 株式会社Fuji パラメータの学習方法および作業システム
JP7034035B2 (ja) * 2018-08-23 2022-03-11 株式会社日立製作所 自律学習型ロボット装置及び自律学習型ロボット装置の動作生成方法
CN109434844B (zh) * 2018-09-17 2022-06-28 鲁班嫡系机器人(深圳)有限公司 食材处理机器人控制方法、装置、系统、存储介质及设备
JP7159525B2 (ja) * 2018-11-29 2022-10-25 京セラドキュメントソリューションズ株式会社 ロボット制御装置、学習装置、及びロボット制御システム
CN109731793A (zh) * 2018-12-17 2019-05-10 上海航天电子有限公司 一种小批量片式散料器件智能分拣设备
WO2020138436A1 (ja) 2018-12-27 2020-07-02 川崎重工業株式会社 ロボット制御装置、ロボットシステム及びロボット制御方法
JP7128736B2 (ja) 2018-12-27 2022-08-31 川崎重工業株式会社 ロボット制御装置、ロボットシステム及びロボット制御方法
CN109784400A (zh) * 2019-01-12 2019-05-21 鲁班嫡系机器人(深圳)有限公司 智能体行为训练方法、装置、系统、存储介质及设备
JP7000359B2 (ja) 2019-01-16 2022-01-19 ファナック株式会社 判定装置
JP6632095B1 (ja) * 2019-01-16 2020-01-15 株式会社エクサウィザーズ 学習済モデル生成装置、ロボット制御装置、及び、プログラム
JP7252787B2 (ja) 2019-02-28 2023-04-05 川崎重工業株式会社 機械学習モデル運用管理システム及び機械学習モデル運用管理方法
JP7336856B2 (ja) * 2019-03-01 2023-09-01 株式会社Preferred Networks 情報処理装置、方法及びプログラム
WO2020194392A1 (ja) * 2019-03-22 2020-10-01 connectome.design株式会社 自律型ロボット用教師データ生成コンピュータ、方法及びプログラム
JP7302226B2 (ja) * 2019-03-27 2023-07-04 株式会社ジェイテクト 研削盤の支援装置及び支援方法
JP7349423B2 (ja) * 2019-06-19 2023-09-22 株式会社Preferred Networks 学習装置、学習方法、学習モデル、検出装置及び把持システム
JP2021013996A (ja) * 2019-07-12 2021-02-12 キヤノン株式会社 ロボットシステムの制御方法、物品の製造方法、生産システム、制御プログラム、記録媒体、およびロボットシステム
JP7415356B2 (ja) * 2019-07-29 2024-01-17 セイコーエプソン株式会社 プログラム移送システムおよびロボットシステム
CN110456644B (zh) * 2019-08-13 2022-12-06 北京地平线机器人技术研发有限公司 确定自动化设备的执行动作信息的方法、装置及电子设备
GB2600843B (en) 2019-08-28 2022-11-09 Daily Color Inc Robot control device
JP7021158B2 (ja) 2019-09-04 2022-02-16 株式会社東芝 ロボットシステムおよび駆動方法
JP7458741B2 (ja) * 2019-10-21 2024-04-01 キヤノン株式会社 ロボット制御装置及びその制御方法及びプログラム
JP6924448B2 (ja) * 2019-12-02 2021-08-25 Arithmer株式会社 ピッキングシステム、ピッキング方法、及びプログラム
US20230064484A1 (en) * 2020-01-16 2023-03-02 Omron Corporation Control apparatus, control method, and computer-readable storage medium storing a control program
JP7463777B2 (ja) 2020-03-13 2024-04-09 オムロン株式会社 制御装置、学習装置、ロボットシステム、および方法
WO2021220394A1 (ja) 2020-04-28 2021-11-04 ヤマハ発動機株式会社 機械学習方法およびロボットシステム
JP2023145809A (ja) * 2020-07-10 2023-10-12 株式会社Preferred Networks 強化学習装置、強化学習システム、物体操作装置、モデル生成方法及び強化学習プログラム
CN112476424A (zh) * 2020-11-13 2021-03-12 腾讯科技(深圳)有限公司 机器人控制方法、装置、设备及计算机存储介质
US20240001544A1 (en) 2020-12-08 2024-01-04 Sony Group Corporation Learning device, learning system, and learning method
DE102021104001B3 (de) 2021-02-19 2022-04-28 Gerhard Schubert Gesellschaft mit beschränkter Haftung Verfahren zum automatischen Ergreifen, insbesondere Umsetzen, von Gegenständen
KR102346900B1 (ko) 2021-08-05 2022-01-04 주식회사 애자일소다 픽 앤 플레이스 시스템을 위한 심층 강화학습 장치 및 방법
DE102021209646A1 (de) 2021-09-02 2023-03-02 Robert Bosch Gesellschaft mit beschränkter Haftung Robotervorrichtung, Verfahren zum computerimplementierten Trainieren eines Roboter-Steuerungsmodells und Verfahren zum Steuern einer Robotervorrichtung
WO2023042306A1 (ja) * 2021-09-15 2023-03-23 ヤマハ発動機株式会社 画像処理装置、部品把持システム、画像処理方法および部品把持方法
EP4311632A1 (de) * 2022-07-27 2024-01-31 Siemens Aktiengesellschaft Verfahren zum greifen eines objekts, computerprogramm und elektronisch lesbarer datenträger
CN115816466B (zh) * 2023-02-02 2023-06-16 中国科学技术大学 一种提升视觉观测机器人控制稳定性的方法

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001019165A (ja) 1999-07-02 2001-01-23 Murata Mach Ltd ワークピッキング装置
JP2010086405A (ja) 2008-10-01 2010-04-15 Fuji Heavy Ind Ltd 制御パラメータの適合化システム
JP2010134907A (ja) 2008-11-04 2010-06-17 Honda Motor Co Ltd 強化学習システム
JP2012208789A (ja) 2011-03-30 2012-10-25 Advanced Telecommunication Research Institute International 強化学習装置、制御装置、および強化学習方法
JP2013010155A (ja) 2011-06-28 2013-01-17 Canon Inc 対象物把持装置、対象物把持装置の制御方法、およびプログラム
JP2013052490A (ja) 2011-09-06 2013-03-21 Mitsubishi Electric Corp ワーク取り出し装置
JP2014199584A (ja) 2013-03-29 2014-10-23 キヤノン株式会社 画像処理装置および画像処理方法
JP2014206795A (ja) 2013-04-11 2014-10-30 日本電信電話株式会社 線形モデルに基づく強化学習方法とその装置とプログラム

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0588721A (ja) * 1991-09-30 1993-04-09 Fujitsu Ltd 関節型ロボツトの制御装置
JPH06106490A (ja) * 1992-09-29 1994-04-19 Fujitsu Ltd 制御装置
JPH06203166A (ja) * 1993-01-06 1994-07-22 Fujitsu Ltd 多次元位置測定,制御装置,及び、学習方法
JP3211186B2 (ja) * 1997-12-15 2001-09-25 オムロン株式会社 ロボット、ロボットシステム、ロボットの学習方法、ロボットシステムの学習方法および記録媒体
JPH11272845A (ja) * 1998-03-23 1999-10-08 Denso Corp 画像認識装置
JP3859371B2 (ja) * 1998-09-25 2006-12-20 松下電工株式会社 ピッキング装置
CN1283428C (zh) * 2000-03-31 2006-11-08 索尼公司 机器人设备、控制机器人设备动作的方法
US6925357B2 (en) * 2002-07-25 2005-08-02 Intouch Health, Inc. Medical tele-robotic system
JP3834307B2 (ja) * 2003-09-29 2006-10-18 ファナック株式会社 ロボットシステム
JP4630553B2 (ja) * 2004-01-15 2011-02-09 ソニー株式会社 動的制御装置および動的制御装置を用いた2足歩行移動体
JP2005238422A (ja) * 2004-02-27 2005-09-08 Sony Corp ロボット装置、並びにその状態遷移モデル構築方法及び行動制御方法
JP4746349B2 (ja) * 2005-05-18 2011-08-10 日本電信電話株式会社 ロボット行動選択装置及びロボット行動選択方法
JP4153528B2 (ja) * 2006-03-10 2008-09-24 ファナック株式会社 ロボットシミュレーションのための装置、プログラム、記録媒体及び方法
JP2007280054A (ja) * 2006-04-06 2007-10-25 Sony Corp 学習装置および学習方法、並びにプログラム
JP4199264B2 (ja) * 2006-05-29 2008-12-17 ファナック株式会社 ワーク取り出し装置及び方法
JP4238256B2 (ja) * 2006-06-06 2009-03-18 ファナック株式会社 ロボットシミュレーション装置
US7957583B2 (en) * 2007-08-02 2011-06-07 Roboticvisiontech Llc System and method of three-dimensional pose estimation
JP2009262279A (ja) * 2008-04-25 2009-11-12 Nec Corp ロボット、ロボットプログラム共有システム、ロボットプログラム共有方法およびプログラム
EP2249292A1 (en) * 2009-04-03 2010-11-10 Siemens Aktiengesellschaft Decision making mechanism, method, module, and robot configured to decide on at least one prospective action of the robot
CN101726251A (zh) * 2009-11-13 2010-06-09 江苏大学 基于支持向量机的苹果采摘机器人果实自动识别方法
CN101782976B (zh) * 2010-01-15 2013-04-10 南京邮电大学 一种云计算环境下机器学习自动选择方法
FI20105732A0 (fi) * 2010-06-24 2010-06-24 Zenrobotics Oy Menetelmä fyysisten kappaleiden valitsemiseksi robottijärjestelmässä
JP5743499B2 (ja) * 2010-11-10 2015-07-01 キヤノン株式会社 画像生成装置、画像生成方法、およびプログラム
JP5767464B2 (ja) * 2010-12-15 2015-08-19 キヤノン株式会社 情報処理装置、情報処理装置の制御方法、およびプログラム
JP5642738B2 (ja) * 2012-07-26 2014-12-17 ファナック株式会社 バラ積みされた物品をロボットで取出す装置及び方法
JP5670397B2 (ja) * 2012-08-29 2015-02-18 ファナック株式会社 バラ積みされた物品をロボットで取出す装置及び方法
JP2014081863A (ja) * 2012-10-18 2014-05-08 Sony Corp 情報処理装置、情報処理方法、及び、プログラム
JP5929854B2 (ja) * 2013-07-31 2016-06-08 株式会社安川電機 ロボットシステムおよび被加工物の製造方法
CN103753557B (zh) * 2014-02-14 2015-06-17 上海创绘机器人科技有限公司 移动式倒立摆系统的自平衡控制方法及自平衡车智能控制系统
CN104793620B (zh) * 2015-04-17 2019-06-18 中国矿业大学 基于视觉特征捆绑和强化学习理论的避障机器人
JP6522488B2 (ja) * 2015-07-31 2019-05-29 ファナック株式会社 ワークの取り出し動作を学習する機械学習装置、ロボットシステムおよび機械学習方法

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001019165A (ja) 1999-07-02 2001-01-23 Murata Mach Ltd ワークピッキング装置
JP2010086405A (ja) 2008-10-01 2010-04-15 Fuji Heavy Ind Ltd 制御パラメータの適合化システム
JP2010134907A (ja) 2008-11-04 2010-06-17 Honda Motor Co Ltd 強化学習システム
JP2012208789A (ja) 2011-03-30 2012-10-25 Advanced Telecommunication Research Institute International 強化学習装置、制御装置、および強化学習方法
JP2013010155A (ja) 2011-06-28 2013-01-17 Canon Inc 対象物把持装置、対象物把持装置の制御方法、およびプログラム
JP2013052490A (ja) 2011-09-06 2013-03-21 Mitsubishi Electric Corp ワーク取り出し装置
JP2014199584A (ja) 2013-03-29 2014-10-23 キヤノン株式会社 画像処理装置および画像処理方法
JP2014206795A (ja) 2013-04-11 2014-10-30 日本電信電話株式会社 線形モデルに基づく強化学習方法とその装置とプログラム

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
MNIH, Volodymyr et al.、"Human-level control through deep reinforcement learning"、Nature、英国、Springer Nature Limited、2015年2月25日、第518巻、第529-533ページ
MNIH, Volodymyr et al.、"Playing Atari with Deep Reinforcement Learning"、[online]、2013年12月19日、Cornell University、[2021年4月7日検索]、インターネット<URL:https://arxiv.org/pdf/1312.5602>
O.B.Kroemer, R.Detry, J.Piater, J.Peters,Combining active learning and reactive control for robot grasping,Robotics and Autonomous Systems,2010年6月12日,Vol.58,p.1105-1116
Sarah Yang、"New ’deep learning’ technique enables robot mastery of skills via trial and error"、[online]、2015年5月21日、University of California Berkeley、Berkeley News、[2021年4月7日検索]、インターネット<URL:https://news.berkeley.edu/2015/05/21/deep-learning-robot-masters-skills-via-trial-and-error/>
杉尾 昇、木内 陽介、白井 文夫,強化学習によるロボットハンドの把握制御,電気学会論文誌C(電子・情報・システム部門誌),日本,一般社団法人電気学会,2001年,Vol.121/No.4,第710ページ-第717ページ

Also Published As

Publication number Publication date
CN106393102B (zh) 2021-06-01
JP2020168719A (ja) 2020-10-15
JP2017064910A (ja) 2017-04-06
JP2022145915A (ja) 2022-10-04
CN113199483A (zh) 2021-08-03
CN106393102A (zh) 2017-02-15
DE102016015873B3 (de) 2020-10-29
JP2017030135A (ja) 2017-02-09
JP6522488B2 (ja) 2019-05-29

Similar Documents

Publication Publication Date Title
JP7100426B2 (ja) ワークの取り出し動作を学習する機械学習装置、ロボットシステムおよび機械学習方法
US11780095B2 (en) Machine learning device, robot system, and machine learning method for learning object picking operation
JP6810087B2 (ja) 機械学習装置、機械学習装置を用いたロボット制御装置及びロボットビジョンシステム、並びに機械学習方法
JP6514171B2 (ja) 最適な物品把持経路を学習する機械学習装置、及び機械学習方法
CN108393908B (zh) 改善工件取出动作的工件取出装置以及工件取出方法
JP6240689B2 (ja) 人の行動パターンを学習する機械学習装置、ロボット制御装置、ロボットシステム、および機械学習方法
US10486306B2 (en) Control device for controlling robot by learning action of person, robot system, and production system
US11945114B2 (en) Method and system for grasping an object
US20180079076A1 (en) Machine learning device, robot system, and machine learning method for learning operation program of robot
US20170157767A1 (en) Machine learning device, laminated core manufacturing apparatus, laminated core manufacturing system, and machine learning method for learning operation for stacking core sheets
JP2018202550A (ja) 機械学習装置、機械学習方法、および機械学習プログラム
EP3812107A1 (en) Robot control device, and method and program for controlling the same
Huang et al. Grasping novel objects with a dexterous robotic hand through neuroevolution
JP6490132B2 (ja) ロボットの制御装置、機械学習装置及び機械学習方法
US11203116B2 (en) System and method for predicting robotic tasks with deep learning
Breyer et al. Closed-loop next-best-view planning for target-driven grasping
CN114454194A (zh) 一种服务机器人、机器人手爪控制方法、系统及存储介质
Belke et al. Optimization of Industrial Robot Grasping Processes with Q-Learning
TW202226071A (zh) 機械學習裝置、及機械學習方法
CN116460839A (zh) 用于控制机器人的设备和方法
CN117377558A (zh) 自动拾取和放置系统

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170217

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20181122

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190530

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20191128

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20191217

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200213

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20200414

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200714

C60 Trial request (containing other claim documents, opposition documents)

Free format text: JAPANESE INTERMEDIATE CODE: C60

Effective date: 20200714

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20200727

C21 Notice of transfer of a case for reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C21

Effective date: 20200728

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20200911

C211 Notice of termination of reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C211

Effective date: 20200915

C22 Notice of designation (change) of administrative judge

Free format text: JAPANESE INTERMEDIATE CODE: C22

Effective date: 20201201

C22 Notice of designation (change) of administrative judge

Free format text: JAPANESE INTERMEDIATE CODE: C22

Effective date: 20210105

C22 Notice of designation (change) of administrative judge

Free format text: JAPANESE INTERMEDIATE CODE: C22

Effective date: 20210413

C13 Notice of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: C13

Effective date: 20210420

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210617

C13 Notice of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: C13

Effective date: 20220104

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220215

C23 Notice of termination of proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C23

Effective date: 20220510

C03 Trial/appeal decision taken

Free format text: JAPANESE INTERMEDIATE CODE: C03

Effective date: 20220607

C30A Notification sent

Free format text: JAPANESE INTERMEDIATE CODE: C3012

Effective date: 20220607

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220701

R150 Certificate of patent or registration of utility model

Ref document number: 7100426

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150