JP2020179438A - Computing system and machine learning method - Google Patents
Computing system and machine learning method Download PDFInfo
- Publication number
- JP2020179438A JP2020179438A JP2019082488A JP2019082488A JP2020179438A JP 2020179438 A JP2020179438 A JP 2020179438A JP 2019082488 A JP2019082488 A JP 2019082488A JP 2019082488 A JP2019082488 A JP 2019082488A JP 2020179438 A JP2020179438 A JP 2020179438A
- Authority
- JP
- Japan
- Prior art keywords
- model
- learning
- gripping
- computer
- probability
- 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.)
- Granted
Links
Images
Landscapes
- Manipulator (AREA)
Abstract
Description
本発明は、物体を把持する装置の制御モデルを生成するための機械学習の技術に関する。 The present invention relates to a machine learning technique for generating a control model of a device that grips an object.
機械学習の技術の高度化に伴って、自動車及びロボット等を制御するためのアルゴリズム(モデル)の開発が進展している。例えば、物体を把持する装置(把持装置)を制御するためのアルゴリズムを開発する技術として特許文献1に記載の技術が知られている。 With the sophistication of machine learning technology, the development of algorithms (models) for controlling automobiles, robots, etc. is progressing. For example, the technique described in Patent Document 1 is known as a technique for developing an algorithm for controlling a device for gripping an object (grasping device).
特許文献1には、「DB1の過去の取り出し成否の情報をもとに、計測特徴識別部52で、センサ2で計測したワークの一部の掴みやすさを推定し、把持動作演算部53、開閉動作演算部54において、掴みにくそうなものは優先して掴まないが、他に掴めそうなものがないときは、ハンドの開閉量・動作速度・把持力のうち少なくとも一つを調整し、より丁寧な取り出し動作をおこなう」装置が記載されている。また、特許文献1には、ニューラルネットワーク等の識別器を用いてワークのつかみやすさを推定することが記載されている。 In Patent Document 1, "The measurement feature identification unit 52 estimates the ease of grasping a part of the work measured by the sensor 2 based on the past extraction success / failure information of the DB 1, and the gripping operation calculation unit 53, The opening / closing operation calculation unit 54 preferentially does not grasp an object that is difficult to grasp, but when there is no other object that is likely to be grasped, adjust at least one of the opening / closing amount, the operating speed, and the gripping force of the hand. , Perform a more polite take-out operation ”is described. Further, Patent Document 1 describes that the ease of grasping a work is estimated by using a classifier such as a neural network.
従来技術では、既知の形状の物体に関する学習データを用いて識別器が生成される。そのため、既知の形状の物体については把持の可否を予測できるが、未知の形状の物体については把持の可否を予測できない。 In the prior art, a classifier is generated using learning data about an object of a known shape. Therefore, it is possible to predict whether or not an object having a known shape can be gripped, but it is not possible to predict whether or not an object having an unknown shape can be gripped.
識別器の精度を向上させるためには、様々な形状の物体に関する学習データを用いた学習が必要である。 In order to improve the accuracy of the classifier, it is necessary to learn using learning data on objects of various shapes.
本発明は、様々な形状の物体に関する学習データを自動的に生成し、当該学習データを用いて効率的に識別器の精度を向上させるための技術を提供する。 The present invention provides a technique for automatically generating learning data for objects having various shapes and efficiently improving the accuracy of the classifier using the learning data.
本願において開示される発明の代表的な一例を示せば以下の通りである。すなわち、把持装置が物体を把持するための制御アルゴリズムを学習する計算機システムであって、前記計算機システムは、演算装置及び前記演算装置に接続される記憶装置を有する少なくとも一つの計算機を備え、前記少なくとも一つの計算機は、前記物体の形状に関する情報を含む物体データ、当該物体を把持する位置の基準となる把持点、及び前記物体の把持の成否を示す情報を含む学習データを用いて、当該物体の把持成功確率を出力する第一モデルを生成するための第一学習処理と、基準物体の形状を変形させた物体の前記物体データを出力する第二モデルを生成するための第二学習処理と、を実行し、前記少なくとも一つの計算機は、前記第二学習処理において、前記第二モデルに基づいて、前記基準物体の形状を変形した第一物体の前記物体データを生成し、前記第一物体の把持点を決定し、前記第一物体の物体データ及び前記第一物体の把持点の複数の組を前記第一モデルに入力し、前記第一モデルより出力された前記第一物体の把持成功確率の最大値及び目標確率の差に基づいて、前記第二モデルを更新する。 A typical example of the invention disclosed in the present application is as follows. That is, it is a computer system in which a gripping device learns a control algorithm for gripping an object, and the computer system includes at least one computer having a calculation device and a storage device connected to the calculation device, and at least the above. One computer uses object data including information on the shape of the object, a gripping point as a reference of a position for gripping the object, and learning data including information indicating the success or failure of gripping the object. The first learning process for generating the first model that outputs the gripping success probability, the second learning process for generating the second model that outputs the object data of the object whose shape of the reference object is deformed, and the second learning process. Is executed, and in the second learning process, the at least one computer generates the object data of the first object in which the shape of the reference object is deformed based on the second model, and the first object of the first object. The gripping point is determined, the object data of the first object and a plurality of sets of gripping points of the first object are input to the first model, and the gripping success probability of the first object output from the first model. The second model is updated based on the difference between the maximum value and the target probability of.
本発明によれば、様々な形状の物体に関する学習データを識別器(第一モデル)の学習状態に合わせて自動的に生成し、当該学習データを用いた学習処理を実行することにより識別器の精度を効率的に向上させることができる。上記した以外の課題、構成及び効果は、以下の実施例の説明により明らかにされる。 According to the present invention, learning data related to objects having various shapes is automatically generated according to the learning state of the classifier (first model), and the learning process using the learning data is executed to obtain the classifier. The accuracy can be improved efficiently. Issues, configurations and effects other than those mentioned above will be clarified by the description of the following examples.
まず、本発明の概要について説明する。本発明では、GAN(Generative Adversarial Networks)を応用して、把持装置の制御アルゴリズム(モデル)を学習する。GANでは、画像を生成するGeneratorと、Generatorによって生成された画像であるか否かを識別するDiscriminatorとがそれぞれ学習される。 First, the outline of the present invention will be described. In the present invention, a control algorithm (model) of a gripping device is learned by applying GAN (Generative Adversarial Networks). In GAN, a Generator that generates an image and a Discriminator that identifies whether or not the image is generated by the Generator are learned.
本発明の計算機システムは、任意の把持点で任意の形状の物体を把持できる確率(把持成功確率)を算出する確率モデルと、任意の形状の物体の形状に関する情報を含む物体データを生成する物体データ生成モデルとをそれぞれ学習する。 The computer system of the present invention is an object that generates object data including information on the shape of an object of an arbitrary shape and a probability model that calculates the probability of gripping an object of an arbitrary shape at an arbitrary gripping point (grasping success probability). Learn each with a data generation model.
確率モデルの学習では、物体データ生成モデルによって生成された物体データを用いて、任意の形状の物体の把持成功確率の最大値が閾値(目標確率)より大きくなるように確率モデルが学習される。これによって、様々な形状の物体を把持するための確率モデルを効率的に学習できる。 In the learning of the probability model, the probability model is trained so that the maximum value of the gripping success probability of an object of an arbitrary shape becomes larger than the threshold value (target probability) by using the object data generated by the object data generation model. This makes it possible to efficiently learn a probabilistic model for grasping objects having various shapes.
物体データ生成モデルの学習では、目標確率及び把持成功確率の最大値の差が小さくなるように物体データ生成モデルが学習される。すなわち、確率モデルの学習の進捗状態に合わせるように物体データ生成モデルが更新される。これによって、把持成功確率が目標確率と近くなるような物体データを効率的に生成できる。したがって、より効率的な確率モデルの学習を実現できる。 In the learning of the object data generation model, the object data generation model is learned so that the difference between the maximum values of the target probability and the gripping success probability becomes small. That is, the object data generation model is updated so as to match the progress of learning of the probability model. As a result, it is possible to efficiently generate object data such that the gripping success probability is close to the target probability. Therefore, more efficient learning of the probabilistic model can be realized.
以下、本発明の実施例を、図面を用いて説明する。ただし、本発明は以下に示す実施例の記載内容に限定して解釈されるものではない。本発明の思想ないし趣旨から逸脱しない範囲で、その具体的構成を変更し得ることは当業者であれば容易に理解される。 Hereinafter, examples of the present invention will be described with reference to the drawings. However, the present invention is not construed as being limited to the contents of the examples shown below. It is easily understood by those skilled in the art that a specific configuration thereof can be changed without departing from the idea or purpose of the present invention.
以下に説明する発明の構成において、同一又は類似する構成又は機能には同一の符号を付し、重複する説明は省略する。 In the configurations of the invention described below, the same or similar configurations or functions are designated by the same reference numerals, and duplicate description will be omitted.
本明細書等における「第1」、「第2」、「第3」等の表記は、構成要素を識別するために付するものであり、必ずしも、数又は順序を限定するものではない。 The notations such as "first", "second", and "third" in the present specification and the like are attached to identify the components, and do not necessarily limit the number or order.
図面等において示す各構成の位置、大きさ、形状、及び範囲等は、発明の理解を容易にするため、実際の位置、大きさ、形状、及び範囲等を表していない場合がある。したがって、本発明では、図面等に開示された位置、大きさ、形状、及び範囲等に限定されない。 The position, size, shape, range, etc. of each configuration shown in the drawings and the like may not represent the actual position, size, shape, range, etc., in order to facilitate understanding of the invention. Therefore, the present invention is not limited to the position, size, shape, range, etc. disclosed in the drawings and the like.
図1は、実施例1の計算機システムの構成例を示す図である。図2は、実施例1の学習対象のモデルの一例を示す図である。図3は、実施例1の計算機100のハードウェア構成を示す図である。
FIG. 1 is a diagram showing a configuration example of the computer system of the first embodiment. FIG. 2 is a diagram showing an example of a model to be learned according to the first embodiment. FIG. 3 is a diagram showing a hardware configuration of the
まず、図2を用いて、実施例1の計算機システムが学習するモデルについて説明する。 First, the model learned by the computer system of the first embodiment will be described with reference to FIG.
倉庫及び工場等の作業空間において、把持装置200が物体210の把持作業を行う。把持装置200は、制御装置201及びアーム202から構成される。なお、把持装置200は、カメラ等のセンサ、並びに、タイヤ及びモータ等の移動装置を有してもよい。
The
制御装置201は、把持装置200全体を制御する。制御装置201には、図示しないコントローラ及び駆動装置等が含まれる。アーム202は、制御装置201による制御に従って物体を把持する。アーム202は、力覚センサ及び触覚センサ等を有してもよい。なお、本発明は、アーム202の形態に限定されない。物体210を把持できる形態であればどのような形態でもよい。
The
ここで、把持装置200の把持作業における処理の概要について説明する。
Here, the outline of the processing in the gripping work of the
制御装置201は、センサ等から物体210が存在する空間の画像を取得する。制御装置201は、確率モデルに基づいて、物体210の把持点220を選択する。ここで、把持点220は、例えば、アーム202が物体210を把持する位置の基準となる座標である。
The
制御装置201は、把持点220への軌道計画を生成する。ここで、軌道計画は、アーム202を把持点220まで移動させるためのアーム202及び把持装置200の移動軌道に関する情報である。
The
制御装置201は、軌道計画に基づいて、把持装置200の動作を制御するための制御情報を生成し、出力する。把持装置200は、制御情報に基づいて、アーム202が把持点220において物体210を把持するように動く。
The
実施例1の計算機システムは、把持装置200が物体を把持するための制御アルゴリズムである確率モデルを生成するための学習処理を実行する。図1の説明に戻る。
The computer system of the first embodiment executes a learning process for generating a probabilistic model, which is a control algorithm for the
計算機システムは、複数の計算機100−1、100−2から構成される。各計算機100−1、100−2は、直接又はネットワークを介して互いに接続される。 The computer system is composed of a plurality of computers 100-1 and 100-2. The computers 100-1 and 100-2 are connected to each other either directly or via a network.
計算機100−1は、任意の把持点220で任意の形状の物体210を把持できる確率(把持成功確率)を算出する確率モデルを生成するための学習処理を実行する。
The computer 100-1 executes a learning process for generating a probability model for calculating the probability that an
確率モデルは、物体210の形状に関する情報を含む物体データ及び把持点220を含む入力データから把持成功確率を算出するモデルである。なお、計算機100−1は、物体データそのものを確率モデルに入力してもよいし、VAE(Variational AutoEncoder)等を用いて抽出された物体データの特徴量を確率モデルに入力してもよい。
The probability model is a model for calculating the gripping success probability from the object data including the information about the shape of the
計算機100−2は、学習用物体データ170を生成する物体データ生成モデルを生成するための学習処理を実行する。計算機100−2には、学習用物体データ170を生成するために用いる基準物体データ101が入力される。基準物体データ101は、基準となる物体に関するデータである。基準物体データ101及び学習用物体データ170は、例えば、ポリゴンメッシュをレンダリングすることによって生成された画像データである。
The computer 100-2 executes a learning process for generating an object data generation model that generates the
物体データ生成モデルは、基準物体データ101を入力データとして受け付けて、学習用物体データ170を生成するモデルである。
The object data generation model is a model that accepts the
ここで、図3を用いて計算機100−1、100−2のハードウェア構成について説明する。図3では、計算機100−1のハードウェア構成を説明する。なお、計算機100−2のハードウェア構成は計算機100−1と同一である。 Here, the hardware configurations of the computers 100-1 and 100-2 will be described with reference to FIG. FIG. 3 describes the hardware configuration of the computer 100-1. The hardware configuration of computer 100-2 is the same as that of computer 100-1.
計算機100−1は、プロセッサ300、主記憶装置301、副記憶装置302、ネットワークインタフェース303、及びIOインタフェース304を有する。各ハードウェアは内部バスを介して互いに接続される。
The computer 100-1 has a
なお、図2に示す計算機100−1のハードウェア構成は一例であってこれに限定されない。例えば、計算機100−1は、図示しないハードウェアを有してもよいし、副記憶装置302及びIOインタフェース304等の一部のハードウェアを有していなくてもよい。
The hardware configuration of the computer 100-1 shown in FIG. 2 is an example and is not limited to this. For example, the computer 100-1 may have hardware (not shown), or may not have some hardware such as the
プロセッサ300は、主記憶装置301に格納されるプログラムを実行する。プロセッサ300がプログラムにしたがって処理を実行することによって、特定の機能を実現する機能部(モジュール)として動作する。以下の説明では、機能部を主語に処理を説明する場合、プロセッサ300が当該モジュールを実現するプログラムを実行していることを示す。
The
主記憶装置301は、DRAM(Dynamic Random Access Memory)等の記憶装置であり、プロセッサ300が実行するプログラム及びプログラムが使用する情報を格納する。また、主記憶装置301は、プログラムが使用するワークエリアとしても用いられる。計算機100−1、100−2の主記憶装置301に格納されるプログラム及び情報については後述する。
The
なお、プログラム及び情報は副記憶装置302等、主記憶装置301以外のデバイス又は装置に格納されてもよい。この場合、プロセッサ300が、デバイス又は装置からプログラム及び情報を読み出し、主記憶装置301にロードする。
The program and information may be stored in a device or device other than the
副記憶装置302は、HDD(Hard Disk Drive)及びSSD(Solid State Drive)等の記憶装置であり、データを永続的に格納する。
The
ネットワークインタフェース303は、ネットワーク310を介して端末320等の外部装置と通信するためのインタフェースである。
The
IOインタフェース304は、入力装置330及び出力装置331等に接続するためのインタフェースである。なお、入力装置330は、キーボード、マウス、及びタッチパネル等であり、出力装置331は、ディスプレイ及びプリンタ等である。
The
図1の説明に戻る。次に、計算機100−1、100−2の主記憶装置301に格納されるプログラム及び情報について説明する。
Returning to the description of FIG. Next, the programs and information stored in the
計算機100−1の主記憶装置301は、第一学習部110を実現するプログラム及び確率モデル管理情報130を格納する。
The
確率モデル管理情報130は、確率モデルを管理するための情報である。確率モデル管理情報130は、少なくとも確率モデルを定義するパラメタを含む。確率モデル管理情報130には、確率モデルの構造等に関する情報が含まれてもよい。例えば、確率モデルがニューラルネットワークである場合、確率モデル管理情報130には、階層の構造等に関する情報が含まれてよい。
The probability
第一学習部110は、確率モデルを生成するための学習処理(第一学習処理)を実行する。第一学習部110は、把持確率算出部111、パラメタ更新部112、及びシミュレーション部113を含む。
The
把持確率算出部111は、把持点及び物体データの組と、確率モデル管理情報130によって定義される確率モデルとに基づいて、把持点における物体の把持成功確率を算出する。パラメタ更新部112は、確率モデルを定義するパラメタを更新する。すなわち、パラメタ更新部112は確率モデルを更新する。
The gripping
シミュレーション部113は、学習用物体データ170を用いたシミュレーションを実行することによって学習データ150及び確率データ160を生成する。シミュレーションは、例えば、物理シミュレーションが考えられる。ここで、学習データ150は、学習用物体データ170及び把持点(座標)を含む。確率データ160は、把持点及び把持成功確率を含む。
The
計算機100−2の主記憶装置301は、第二学習部120を実現するプログラム及び物体データ生成モデル管理情報140を格納する。
The
物体データ生成モデル管理情報140は、物体データ生成モデルを管理するための情報である。物体データ生成モデル管理情報140は、少なくとも物体データ生成モデルを定義するパラメタを含む。物体データ生成モデル管理情報140には、物体データ生成モデルの構造等に関する情報が含まれてもよい。例えば、物体データ生成モデルがニューラルネットワークである場合、物体データ生成モデル管理情報140には、階層の構造等に関する情報が含まれてよい。
The object data generation
第二学習部120は、物体データ生成モデルを生成するための学習処理(第二学習処理)を実行する。第二学習部120は、物体データ生成部121、パラメタ更新部122、及び把持点データ生成部123を含む。
The
物体データ生成部121は、基準物体データ101と、物体データ生成モデル管理情報140によって定義される物体データ生成モデルとに基づいて学習用物体データ170を生成する。物体データ生成部121は、内部で、自身の生成したデータも含めた繰り返し処理により学習用物体データ170を生成してもよい。パラメタ更新部122は、物体データ生成モデルを定義するパラメタを更新する。すなわち、パラメタ更新部122は物体データ生成モデルを更新する。
The object
把持点データ生成部123は、学習用物体データ170に対応する物体の把持点を決定し、学習用物体データ170及び把持点を含む評価用入力データ180を生成する。
The gripping point
なお、計算機100−1、100−2が有する各機能部については、複数の機能部を一つの機能部にまとめてもよいし、一つの機能部を機能毎に複数の機能部に分けてもよい。また、一つの計算機上で稼働する仮想計算機を用いて各機能部を実現してもよい。 Regarding each of the functional units of the computers 100-1 and 100-2, a plurality of functional units may be combined into one functional unit, or one functional unit may be divided into a plurality of functional units for each function. Good. Further, each functional unit may be realized by using a virtual computer running on one computer.
なお、第一学習部110の一部の機能部が第二学習部120に含まれてもよいし、第二学習部120の一部の機能部が第一学習部110に含まれてもよい。例えば、第二学習部120がシミュレーション部113を含んでもよい。
A part of the functional units of the
なお、図1の実線は、第一学習処理におけるデータの入出力を示し、図1の点線は、第二学習処理におけるデータの入出力を示す。本明細書では、第一学習処理及び第二学習処理が循環するように実行されることを敵対的学習と記載する。 The solid line in FIG. 1 indicates the input / output of data in the first learning process, and the dotted line in FIG. 1 indicates the input / output of data in the second learning process. In this specification, it is described as hostile learning that the first learning process and the second learning process are executed in a circular manner.
図4は、実施例1の計算機システムによって提示される設定画面400の一例を示す図である。
FIG. 4 is a diagram showing an example of the
設定画面400は、第一学習部110及び第二学習部120が実行する学習処理に必要な設定を行うための画面であり、端末320又は出力装置331に表示される。なお、設定画面400は、第一学習部110及び第二学習部120のどちらが提示してもよい。また、第一学習部110及び第二学習部120とは異なる機能部が設定画面400を提示してもよい。
The
設定画面400は、基準物体データ欄401、確率モデル欄402、物体データ生成モデル欄403、学習回数欄404、学習回数欄405、目標確率欄406、設定ボタン410、及び開始ボタン411を含む。
The
基準物体データ欄401は、第二学習部120に入力する基準物体データ101を設定する欄である。確率モデル欄402は、確率モデルを格納する確率モデル管理情報130を設定する欄である。物体データ生成モデル欄403は、物体データ生成モデルを格納する物体データ生成モデル管理情報140を設定する欄である。
The reference
基準物体データ欄401、確率モデル欄402、及び物体データ生成モデル欄403には、例えば、ファイルパス等が設定される。
For example, a file path or the like is set in the reference
学習回数欄404は、確率モデルの更新回数の上限値(学習回数の上限値)を設定する欄である。学習回数欄405は、物体データ生成モデルの更新回数の上限値(学習回数の上限値)を設定する欄である。目標確率欄406は、目標確率を設定する欄である。
The learning
設定ボタン410は、計算機100−1、100−2に、各欄に設定された値を設定するための操作ボタンである。ユーザが設定ボタン410を操作した場合、各欄に設定された値を含む設定指示が計算機システムに送信される。
The
このとき、第一学習部110は、初期の確率モデルを確率モデル管理情報130に登録し、学習回数欄404及び目標確率欄406に設定された値をワークエリアに格納する。また、第二学習部120は、初期の物体データ生成モデルを物体データ生成モデル管理情報140に登録し、基準物体データ101及び目標確率欄406に設定された値をワークエリアに格納する。
At this time, the
開始ボタン411は、計算機システムに学習開始指示を入力するための操作ボタンである。当該学習開始指示は、計算機100−1及び計算機100−2のいずれかに送信される。
The
図5は、実施例1の第一学習部110が実行する処理の一例を説明するフローチャートである。
FIG. 5 is a flowchart illustrating an example of processing executed by the
第一学習部110は、学習開始指示を受信した場合、以下で説明する処理を開始する。学習開始指示は、入力装置330、端末320、又は第二学習部120から送信される。なお、入力装置330及び端末320は、設定画面400を介して学習開始指示を送信する。
When the
まず、第一学習部110は、学習用物体データ170を取得する(ステップS101)。
First, the
具体的には、第一学習部110は、学習用物体データ170の生成指示を第二学習部120に送信する。第二学習部120の物体データ生成部121は、基準物体データ101及び物体データ生成モデル管理情報140に基づいて学習用物体データ170を生成し、第一学習部110に学習用物体データ170を送信する。
Specifically, the
次に、第一学習部110は、取得した学習用物体データ170を用いて学習データ150及び確率データ160を生成する(ステップS102)。具体的には、以下のような処理が実行される。
Next, the
シミュレーション部113は、仮想的な空間に、学習用物体データ170に対応する物体を配置する。仮想的な空間における物体の位置及び向き等は任意に設定される。シミュレーション部113は、物体の把持点を決定し、当該把持点を基準に物体を把持できるか否かをシミュレーションする。なお、シミュレーション部113は、同一の把持点について複数回シミュレーションを実行してもよい。
The
シミュレーション部113は、学習用物体データ170及び把持点を含む学習データ150を生成し、把持確率算出部111に学習データ150を送信する。
The
シミュレーション部113は、シミュレーションの結果に基づいて、把持点毎の把持成功確率を算出する。以下の説明では、シミュレーション部113によって算出される把持成功確率を比較用確率とも記載する。
The
シミュレーション部113は、把持点及び比較用確率を含む確率データ160を生成し、パラメタ更新部112に確率データ160を送信する。以上がステップS102の処理の説明である。
The
次に、第一学習部110は、学習データ150及び確率データ160を用いて第一学習処理を実行する(ステップS103)。第一学習処理の詳細は図6を用いて後述する。
Next, the
次に、第一学習部110は、敵対的学習を終了するか否かを判定する(ステップS104)。
Next, the
例えば、第一学習部110は、第一学習処理の実行回数が閾値より大きい場合、敵対的学習を終了すると判定する。
For example, the
敵対的学習を継続すると判定された場合、第一学習部110は、第二学習部120に学習開始指示を送信し(ステップS105)、その後、処理を終了する。敵対的学習を終了すると判定された場合、第一学習部110は処理を終了する。
When it is determined that the hostile learning is to be continued, the
なお、シミュレーション部113は、物体データ、把持点、及びシミュレーションの結果の組を学習データ150として生成し、把持確率算出部111及びパラメタ更新部112に出力してもよい。
The
図6は、実施例1の第一学習部110が実行する第一学習処理の一例を説明するフローチャートである。
FIG. 6 is a flowchart illustrating an example of the first learning process executed by the
把持確率算出部111は、学習データ150を確率モデルに入力することによって、任意の把持点における物体の把持成功確率を算出する(ステップS201)。把持確率算出部111は、各把持点の把持成功確率をパラメタ更新部112に送信する。
The gripping
次に、パラメタ更新部112は、各把持点の把持成功確率及び比較用確率に基づいて確率モデルを更新する(ステップS202)。
Next, the
例えば、パラメタ更新部112は、各把持点の把持成功確率及び比較用確率の差が小さくなるように確率モデルを定義するパラメタ(確率モデル管理情報130)を更新する。
For example, the
次に、パラメタ更新部112は、確率モデルの学習を終了するか否かを判定する(ステップS203)。
Next, the
例えば、確率モデルの更新回数が学習回数欄404の値より大きい場合、パラメタ更新部112は確率モデルの学習を終了すると判定する。また、パラメタ更新部112は、テスト用入力データを把持確率算出部111に入力し、把持確率算出部111より出力された把持成功確率の最大値が目標確率より大きい場合、確率モデルの学習を終了すると判定する。
For example, when the update count of the probability model is larger than the value in the
確率モデルの学習を継続すると判定された場合、第一学習部110は、ステップS201に戻り、同様の処理を実行する。確率モデルの学習を終了すると判定された場合、第一学習部110は第一学習処理を終了する。
If it is determined that the learning of the probabilistic model is to be continued, the
図7は、実施例1の第二学習部120が実行する処理の一例を説明するフローチャートである。
FIG. 7 is a flowchart illustrating an example of processing executed by the
第二学習部120は、学習開始指示を受信した場合、以下で説明する処理を開始する。学習開始指示は、入力装置330、端末320、又は第一学習部110から送信される。
When the
まず、第二学習部120は、評価用入力データ180を生成する(ステップS301)。具体的には、以下のような処理が実行される。
First, the
物体データ生成部121は、基準物体データ101及び物体データ生成モデルに基づいて、任意の形状の物体のポリゴンメッシュを生成する。物体データ生成部121は、ポリゴンメッシュをレンダリングすることによって画像データを生成する。物体データ生成部121は、画像データを含む学習用物体データ170を生成し、把持点データ生成部123に送信する。
The object
レンダリングの手法としては例えば非特許文献1に記載の手法を用いる。なお、本発明は、レンダリングの手法に限定されない。 As a rendering method, for example, the method described in Non-Patent Document 1 is used. The present invention is not limited to the rendering method.
把持点データ生成部123は、学習用物体データ170に対応する物体の複数の把持点を決定し、学習用物体データ170及び把持点を含む評価用入力データ180を生成する。なお、学習用物体データ170及び一つの把持点の組に対して一つの評価用入力データ180が生成される。以上がステップS301の処理の説明である。
The gripping point
次に、第二学習部120は、評価用入力データ180を第一学習部110に送信し、参照用確率データ190を取得する(ステップS302)。
Next, the
第一学習部110の把持確率算出部111は、評価用入力データ180を受信した場合、各把持点における物体の把持成功確率を算出し、算出された把持成功確率を含む参照用確率データ190を第二学習部120に送信する。一つの評価用入力データ180に対して一つの参照用確率データ190が生成される。
When the gripping
次に、第二学習部120は、第二学習処理を実行する(ステップS303)。第二学習処理の詳細は図8を用いて後述する。
Next, the
次に、第二学習部120は、敵対的学習を終了するか否かを判定する(ステップS304)。
Next, the
例えば、第二学習部120は、第二学習処理の実行回数が閾値より大きい場合、敵対的学習を終了すると判定する。
For example, the
敵対的学習を終了すると判定された場合、第二学習部120は処理を終了する。
When it is determined that the hostile learning is finished, the
敵対的学習を継続すると判定された場合、第二学習部120は、第一学習部110に学習開始指示を送信する(ステップS305)。その後、第二学習部120は処理を終了する。
When it is determined that the hostile learning is continued, the
図8は、実施例1の第二学習部120が実行する第二学習処理の一例を説明するフローチャートである。
FIG. 8 is a flowchart illustrating an example of the second learning process executed by the
パラメタ更新部122は、各把持点の把持成功確率及び目標確率に基づいて物体データ生成モデルを更新する(ステップS401)。
The
具体的には、パラメタ更新部122は、把持成功確率の最大値及び目標確率の差が小さくなるように物体データ生成モデルを定義するパラメタ(物体データ生成モデル管理情報140)を更新する。例えば、ランダムに物体データ生成モデルを定義するパラメタ(物体データ生成モデル管理情報140)を更新してもよいし、ユーザが手動でパラメタを更新してもよい。なお、前述した更新方法は一例であってこれに限定されない。このように物体データ生成モデルを更新することによって、確率モデルから出力される把持成功確率の最大値が目標確率と近くなるような物体データを効率的に生成することができる。
Specifically, the
次に、パラメタ更新部122は、確率モデルの学習を終了するか否かを判定する(ステップS402)。
Next, the
例えば、物体データ生成モデルの更新回数が学習回数欄405の値より大きい場合、パラメタ更新部122は物体データ生成モデルの学習を終了すると判定する。また、パラメタ更新部122は、テスト用入力データを把持確率算出部111に入力し、把持確率算出部111より出力された把持成功確率の最大値が目標確率より大きい場合、確率モデルの学習を終了すると判定する。
For example, when the update count of the object data generation model is larger than the value in the
物体データ生成モデルの学習を継続すると判定された場合、第二学習部120は、ステップS401に戻り、同様の処理を実行する。物体データ生成モデルの学習を終了すると判定された場合、第二学習部120は第二学習処理を終了する。
When it is determined that the learning of the object data generation model is continued, the
次に、確率モデルに基づく把持装置200の制御の一例を説明する。図9は、実施例1の把持装置200の制御の一例を説明するフローチャートである。
Next, an example of control of the
制御装置201は、物体210が存在する空間(作業空間)の画像データを取得する(ステップS501)。
The
次に、制御装置201は、画像データ及び確率モデルを用いて、対象空間における把持成功確率の分布を算出する(ステップS502)。
Next, the
具体的には、制御装置201は、画像データ及び座標を確率モデルに入力し、各座標の把持成功確率を算出する。制御装置201は、公知の画像処理を用いて、画像データに含まれる物体を抽出する処理等を実行してもよい。
Specifically, the
次に、制御装置201は、作業空間における把持成功確率の分布に基づいて、物体210の把持点を決定し、決定された把持点の軌道計画を生成する(ステップS503)。
Next, the
次に、制御装置201は、軌道計画に基づいてアーム202を制御する(ステップS504)。これによって、把持装置200が物体210を把持する。
Next, the
以上で説明したように、実施例1によれば、第一学習処理において、物体データ生成モデルに基づいて生成された物体データを用いることによって様々な形状の物体を把持するための確率モデルを生成できる。また、把持成功確率の最大値及び目標確率の差に基づいて物体データ生成モデルを更新することによって、把持成功確率の最大値が目標確率と近くなるような物体データを効率的に生成できる。これによって、より効率的な確率モデルの学習を実現できる。 As described above, according to the first embodiment, in the first learning process, a stochastic model for grasping an object having various shapes is generated by using the object data generated based on the object data generation model. it can. Further, by updating the object data generation model based on the difference between the maximum value of the gripping success probability and the target probability, it is possible to efficiently generate the object data so that the maximum value of the gripping success probability is close to the target probability. As a result, more efficient learning of the probabilistic model can be realized.
実施例2では、第二学習部120が実行する処理が一部異なる。以下、実施例1との差異を中心に実施例2について説明する。
In the second embodiment, the processing executed by the
実施例2の計算機システムの構成は実施例1と同一である。計算機100のハードウェア構成は実施例1と同一である。実施例2の計算機100のソフトウェア構成は実施例1と同一である。
The configuration of the computer system of the second embodiment is the same as that of the first embodiment. The hardware configuration of the
ただし、実施例2の第二学習部120は進捗フラグを管理する。進捗フラグには、「0」、「1」、「2」のいずれかが設定される。進捗フラグの初期値は「0」に設定されているものとする。「1」は確率モデルの学習が停滞している状態を示し、「2」は確率モデルの学習が進捗している状態を示す。「0」は、前述のいずれにも該当しない状態を示す。
However, the
実施例2では、確率モデルの学習の進捗状況に応じて第二学習処理の学習を調整する。これによって、効率的な確率モデルの学習を実現できる。 In the second embodiment, the learning of the second learning process is adjusted according to the progress of the learning of the probabilistic model. As a result, efficient learning of the probabilistic model can be realized.
実施例2の第一学習部110が実行する処理は実施例1と同一である。実施例2では、第二学習部120が実行する処理が一部異なる。図10は、実施例2の第二学習部120が実行する処理の一例を説明するフローチャートである。
The process executed by the
ステップS301、ステップS302の処理は実施例1と同一である。ステップS302の処理が実行された後、第二学習部120は、確率モデルの学習が停滞しているか否かを判定する(ステップS351)。判定方法としては以下のような方法が考えられる。
The processing of steps S301 and S302 is the same as that of the first embodiment. After the process of step S302 is executed, the
(判定方法1)第二学習部120は、各把持点の把持成功確率から把持成功確率の平均値を算出し、当該平均値が閾値より小さいか否かを判定する。把持成功確率の平均値が閾値より小さい場合、第二学習部120は確率モデルの学習が停滞していると判定する。なお、平均値以外の統計値を用いてもよい。
(Determination Method 1) The
(判定方法2)第二学習部120は、把持成功確率の最大値を履歴として管理し、前回の最大値及び今回の最大値に基づいて変化率を算出する。第二学習部120は、把持成功確率の最大値及び目標確率の差が第一閾値より小さく、かつ、変化率が第二閾値より小さいか否かを判定する。前述の条件を満たす場合、第二学習部120は、確率モデルの学習が停滞していると判定する。
(Determination method 2) The
確率モデルの学習が停滞していると判定された場合、第二学習部120は、進捗フラグに「1」を設定し(ステップS352)、第二学習処理を実行する(ステップS303)。
When it is determined that the learning of the probabilistic model is stagnant, the
確率モデルの学習が停滞していないと判定された場合、第二学習部120は、第二学習処理を実行する(ステップS303)。
When it is determined that the learning of the probabilistic model is not stagnant, the
ステップS304において敵対的学習を終了しないと判定された場合、第二学習部120は、確率モデルの学習が進捗しているか否かを判定する(ステップS353)。
When it is determined in step S304 that the hostile learning is not completed, the
例えば、第二学習部120は、把持成功確率の最大値が目標確率より大きくなる回数が閾値より大きい場合、確率モデルの学習が進捗していると判定する。
For example, the
確率モデルの学習が進捗していないと判定された場合、第二学習部120は、第一学習部110に学習開始指示を送信する(ステップS305)。その後、第二学習部120は処理を終了する。
When it is determined that the learning of the probabilistic model is not progressing, the
確率モデルの学習が進捗していると判定された場合、第二学習部120は、進捗フラグに「2」を設定し(ステップS354)、第一学習部110に学習開始指示を送信する(ステップS305)。その後、第二学習部120は処理を終了する。
When it is determined that the learning of the probabilistic model is progressing, the
実施例2では第二学習処理も異なる。図11は、実施例2の第二学習部120が実行する第二学習処理の一例を説明するフローチャートである。
The second learning process is also different in the second embodiment. FIG. 11 is a flowchart illustrating an example of the second learning process executed by the
第二学習部120は、進捗フラグが「0」であるか否かを判定する(ステップS451)。
The
進捗フラグが「0」であると判定された場合、第二学習部120は、ステップS453に進む。
If it is determined that the progress flag is "0", the
進捗フラグが「0」でないと判定された場合、第二学習部120は、目標範囲を更新する(ステップS452)。
When it is determined that the progress flag is not "0", the
具体的には、第二学習部120は変数α及び変数βを変更する。変数α及び変数βは、基準物体と、更新後の物体データ生成モデルに基づいて生成された物体との間の類似度の範囲を指定するための変数である。なお、第二学習部120は、変数α及び変数βの初期値を保持しているものとする。変数α及び変数βの初期値は設定画面400を介して設定されてもよい。
Specifically, the
第二学習部120は、把持成功確率の最大値及び目標確率の差に基づいて、変数α、βを更新する。具体的には以下のように設定される。
The
進捗フラグが「1」である場合、第二学習部120は、当該差に基づいて、前回の変数α、βより大きな値を設定する。これによって、更新前の物体データ生成モデルに基づいて生成された物体より、基準物体からの変化量が小さい物体の物体データが生成されるように物体データ生成モデルを更新できる。
When the progress flag is "1", the
進捗フラグが「2」である場合、第二学習部120は、当該差に基づいて、前回の変数α、βより小さい値を設定する。これによって、更新前の物体データ生成モデルに基づいて生成された物体より、基準物体からの変化量が大きい物体の物体データが生成されるように物体データ生成モデルを更新できる。
When the progress flag is "2", the
前述のような処理を実行することによって、把持成功確率の最大値及び目標確率の差を、物体データ生成モデルの更新に伝搬させることができる。以上がステップS452の処理の説明である。 By executing the above-mentioned processing, the difference between the maximum value of the gripping success probability and the target probability can be propagated to the update of the object data generation model. The above is the description of the process of step S452.
ステップS453では、第二学習部120は、目標範囲を設定する(ステップS453)。
In step S453, the
次に、パラメタ更新部122は、物体データ生成モデルを更新する(ステップS454)。物体データ生成モデルの更新方法は実施例1と同一である。
Next, the
次に、物体データ生成部121は、更新後の物体データ生成モデルに基づいて、学習用物体データ170を生成する(ステップS455)。
Next, the object
次に、パラメタ更新部122は、基準物体と学習用物体データ170に対応する物体との間の類似度を算出する(ステップS456)。
Next, the
次に、パラメタ更新部122は、物体データ生成モデルの学習を終了するか否かを判定する(ステップS457)。具体的には、以下のような処理が実行される。
Next, the
パラメタ更新部122は、類似度が目標範囲内であるか否かを判定する。具体的には、パラメタ更新部122は、類似度が変数α以上、かつ、変数β以下であるか否かを判定する。類似度が目標範囲内である場合、パラメタ更新部122は、物体データ生成モデルの学習を終了すると判定する。
The
類似度が目標範囲外であると判定された場合、パラメタ更新部122は、物体データ生成モデルの更新回数が学習回数欄405の値より大きいか否かを判定する。
When it is determined that the similarity is out of the target range, the
物体データ生成モデルの更新回数が学習回数欄405の値より大きい場合、パラメタ更新部122は、物体データ生成モデルの学習を終了すると判定する。物体データ生成モデルの更新回数が学習回数欄405の値以下であると判定された場合、パラメタ更新部122は、物体データ生成モデルの学習を継続すると判定する。以上がステップS457の処理の説明である。
When the update count of the object data generation model is larger than the value in the
物体データ生成モデルの学習を継続すると判定された場合、第二学習部120は、ステップS454に戻り、同様の処理を実行する。
When it is determined that the learning of the object data generation model is continued, the
物体データ生成モデルの学習を終了すると判定された場合、第二学習部120は、進捗フラグに「0」を設定し(ステップS458)、その後、第二学習処理を終了する。
When it is determined that the learning of the object data generation model is finished, the
変数αの値又は変数βを小さくした場合、基準物体からの変化量が大きい物体の物体データを生成する物体データ生成モデルに更新される。変数α又は変数βを大きくした場合、基準物体からの変化量が小さい物体の物体データを生成する物体データ生成モデルに更新される。 When the value of the variable α or the variable β is reduced, the object data generation model is updated to generate the object data of the object having a large amount of change from the reference object. When the variable α or the variable β is increased, the object data generation model is updated to generate the object data of the object whose change amount from the reference object is small.
変数βを調整は、物体の多様性を調整することに対応する。変数αを調整は、変化量が非常に大きい物体の生成を抑止することに対応する。目標範囲の幅の調整は、物体データ生成モデルの変化量の調整に対応する。 Adjusting the variable β corresponds to adjusting the diversity of objects. Adjusting the variable α corresponds to suppressing the generation of an object with a very large amount of change. The adjustment of the width of the target range corresponds to the adjustment of the amount of change in the object data generation model.
複雑な形状の物体の物体データを学習データとして入力した場合、確率モデルの学習が停滞する可能性がある。そこで、実施例2の計算機システムは、確率モデルの学習が停滞している場合、簡易な形状の物体が生成されるように物体データ生成モデルを更新する。すなわち、基準物体からの形状の変化量が更新前の物体データ生成モデルから生成された物体より小さくなるように、物体データ生成モデルが更新される。簡易な形状の物体の物体データを入力することによって、確率モデルの学習の停滞を防止できる。 When the object data of an object having a complicated shape is input as the learning data, the learning of the probabilistic model may be stagnant. Therefore, the computer system of the second embodiment updates the object data generation model so that an object having a simple shape is generated when the learning of the probability model is stagnant. That is, the object data generation model is updated so that the amount of change in shape from the reference object is smaller than the object generated from the object data generation model before the update. By inputting the object data of an object having a simple shape, it is possible to prevent the learning of the probabilistic model from stagnation.
一方、確率モデルの学習が進捗している場合、第二学習部120は、より複雑な形状の物体が生成されるように物体データ生成モデルを更新する。すなわち、基準物体からの形状の変化量が更新前の物体データ生成モデルから生成された物体より大きくなるように、物体データ生成モデルが更新される。これによって、より複雑な形状の物体を把持するための確率モデルを効率的に生成することができる。
On the other hand, when the learning of the probabilistic model is progressing, the
実施例2によれば、確率モデルの学習の停滞を防止し、かつ、効率的な学習を実現できる。 According to the second embodiment, it is possible to prevent the learning of the probabilistic model from stagnation and realize efficient learning.
実施例3では、確率モデルの学習処理の停滞が検出された場合、第二学習部120の指示に基づいて、第一学習部110が確率モデルの再学習処理を実行する。以下、実施例1との差異を中心に実施例3について説明する。
In the third embodiment, when the stagnation of the learning process of the probability model is detected, the
図12は、実施例3の計算機システムの構成例を示す図である。 FIG. 12 is a diagram showing a configuration example of the computer system of the third embodiment.
実施例3の計算機システムの構成は実施例1と同一である。計算機100のハードウェア構成は実施例1と同一である。実施例3の計算機100−2のソフトウェア構成は実施例1と同一である。
The configuration of the computer system of the third embodiment is the same as that of the first embodiment. The hardware configuration of the
実施例3では、計算機100−1の主記憶装置301に履歴管理情報1200が格納される。その他の構成は実施例1と同一である。
In the third embodiment, the
履歴管理情報1200は、確率モデル管理情報130の履歴を管理するための情報である。履歴管理情報1200では、確率モデル管理情報130及び更新日時が対応づけて管理される。
The
実施例3では、第一学習部110及び第二学習部120が実行する処理が一部異なる。
In the third embodiment, the processes executed by the
図13は、実施例3の第一学習部110が実行する処理の一例を説明するフローチャートである。
FIG. 13 is a flowchart illustrating an example of processing executed by the
第一学習部110は、受信した指示が再学習開始指示であるか否かを判定する(ステップS151)。
The
受信した指示が学習開始指示であると判定された場合、第一学習部110はステップS101に進む。
If it is determined that the received instruction is a learning start instruction, the
受信した指示が再学習開始指示であると判定された場合、第一学習部110のパラメタ更新部112は、履歴管理情報1200に格納される履歴に基づいて確率モデルを更新する(ステップS152)。その後、第一学習部110はステップS101に進む。
When it is determined that the received instruction is the re-learning start instruction, the
例えば、パラメタ更新部112は、更新日時が最も新しい確率モデルの履歴を読出し、確率モデルを更新する。なお、前述の更新方法は一例であって、これに限定されない。例えば、一定期間前の確率モデルの履歴に基づいて確率モデルが更新されてもよい。
For example, the
実施例3のステップS101からステップS105までの処理は実施例1と同一である。 The processing from step S101 to step S105 of Example 3 is the same as that of Example 1.
図14は、実施例3の第二学習部120が実行する処理の一例を説明するフローチャートである。
FIG. 14 is a flowchart illustrating an example of processing executed by the
実施例1のステップS301からステップS302、ステップS303からステップS305の処理は実施例1の処理と同一である。ステップS351の処理は実施例2の処理と同一である。 The processes of steps S301 to S302 and steps S303 to S305 of the first embodiment are the same as the processes of the first embodiment. The process of step S351 is the same as the process of the second embodiment.
ステップS351において、確率モデルの学習が停滞していないと判定された場合、第二学習部120はステップS303に進む。
If it is determined in step S351 that the learning of the probability model is not stagnant, the
ステップS351において、確率モデルの学習が停滞していると判定された場合、第二学習部120は第一学習部110に再学習開始指示を出力する(ステップS361)。その後、第二学習部120は処理を終了する。
When it is determined in step S351 that the learning of the stochastic model is stagnant, the
実施例3によれば、確率モデルの学習が停滞している場合、第一学習部110は、過去の確率モデルに戻した上で学習処理を実行する。これによって、学習の停滞を回避することができる。
According to the third embodiment, when the learning of the probabilistic model is stagnant, the
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。また、例えば、上記した実施例は本発明を分かりやすく説明するために構成を詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、各実施例の構成の一部について、他の構成に追加、削除、置換することが可能である。 The present invention is not limited to the above-mentioned examples, and includes various modifications. Further, for example, the above-described embodiment describes the configuration in detail in order to explain the present invention in an easy-to-understand manner, and is not necessarily limited to the one including all the described configurations. Further, it is possible to add, delete, or replace a part of the configuration of each embodiment with other configurations.
また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、本発明は、実施例の機能を実現するソフトウェアのプログラムコードによっても実現できる。この場合、プログラムコードを記録した記憶媒体をコンピュータに提供し、そのコンピュータが備えるプロセッサが記憶媒体に格納されたプログラムコードを読み出す。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施例の機能を実現することになり、そのプログラムコード自体、及びそれを記憶した記憶媒体は本発明を構成することになる。このようなプログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、CD−ROM、DVD−ROM、ハードディスク、SSD(Solid State Drive)、光ディスク、光磁気ディスク、CD−R、磁気テープ、不揮発性のメモリカード、ROMなどが用いられる。 Further, each of the above configurations, functions, processing units, processing means and the like may be realized by hardware by designing a part or all of them by, for example, an integrated circuit. The present invention can also be realized by a program code of software that realizes the functions of the examples. In this case, a storage medium in which the program code is recorded is provided to the computer, and the processor included in the computer reads the program code stored in the storage medium. In this case, the program code itself read from the storage medium realizes the functions of the above-described embodiment, and the program code itself and the storage medium storing the program code itself constitute the present invention. Examples of the storage medium for supplying such a program code include a flexible disk, a CD-ROM, a DVD-ROM, a hard disk, an SSD (Solid State Drive), an optical disk, a magneto-optical disk, a CD-R, and a magnetic tape. Non-volatile memory cards, ROMs, etc. are used.
また、本実施例に記載の機能を実現するプログラムコードは、例えば、アセンブラ、C/C++、perl、Shell、PHP、Python、Java(登録商標)等の広範囲のプログラム又はスクリプト言語で実装できる。 In addition, the program code that realizes the functions described in this embodiment can be implemented in a wide range of programs or script languages such as assembler, C / C ++, perl, Shell, PHP, Python, and Java (registered trademark).
さらに、実施例の機能を実現するソフトウェアのプログラムコードを、ネットワークを介して配信することによって、それをコンピュータのハードディスクやメモリ等の記憶手段又はCD−RW、CD−R等の記憶媒体に格納し、コンピュータが備えるプロセッサが当該記憶手段や当該記憶媒体に格納されたプログラムコードを読み出して実行するようにしてもよい。 Further, by distributing the program code of the software that realizes the functions of the examples via the network, it is stored in a storage means such as a hard disk or memory of a computer or a storage medium such as a CD-RW or a CD-R. , The processor provided in the computer may read and execute the program code stored in the storage means or the storage medium.
上述の実施例において、制御線や情報線は、説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。全ての構成が相互に接続されていてもよい。 In the above-described embodiment, the control lines and information lines show what is considered necessary for explanation, and do not necessarily indicate all the control lines and information lines in the product. All configurations may be interconnected.
100 計算機
101 基準物体データ
110 第一学習部
111 把持確率算出部
112、122 パラメタ更新部
113 シミュレーション部
120 第二学習部
121 物体データ生成部
123 把持点データ生成部
130 確率モデル管理情報
140 物体データ生成モデル管理情報
150 学習データ
160 確率データ
170 学習用物体データ
180 評価用入力データ
190 参照用確率データ
200 把持装置
201 制御装置
202 アーム
210 物体
220 把持点
300 プロセッサ
301 主記憶装置
302 副記憶装置
303 ネットワークインタフェース
304 IOインタフェース
310 ネットワーク
320 端末
330 入力装置
331 出力装置
400 設定画面
1200 履歴管理情報
100
Claims (8)
前記計算機システムは、演算装置及び前記演算装置に接続される記憶装置を有する少なくとも一つの計算機を備え、
前記少なくとも一つの計算機は、
前記物体の形状に関する情報を含む物体データ、当該物体を把持する位置の基準となる把持点、及び前記物体の把持の成否を示す情報を含む学習データを用いて、当該物体の把持成功確率を出力する第一モデルを生成するための第一学習処理と、
基準物体の形状を変形させた物体の前記物体データを出力する第二モデルを生成するための第二学習処理と、を実行し、
前記少なくとも一つの計算機は、前記第二学習処理において、
前記第二モデルに基づいて、前記基準物体の形状を変形した第一物体の前記物体データを生成し、
前記第一物体の把持点を決定し、
前記第一物体の物体データ及び前記第一物体の把持点の複数の組を前記第一モデルに入力し、
前記第一モデルより出力された前記第一物体の把持成功確率の最大値及び目標確率の差に基づいて、前記第二モデルを更新することを特徴とする計算機システム。 A computer system in which a gripping device learns a control algorithm for gripping an object.
The computer system includes an arithmetic unit and at least one computer having a storage device connected to the arithmetic unit.
The at least one computer
Output the gripping success probability of the object by using the object data including the information about the shape of the object, the gripping point which is the reference of the gripping position of the object, and the learning data including the information indicating the success or failure of gripping the object. First learning process to generate the first model to be
The second learning process for generating the second model that outputs the object data of the object whose shape of the reference object is deformed is executed.
The at least one computer is used in the second learning process.
Based on the second model, the object data of the first object obtained by deforming the shape of the reference object is generated.
The gripping point of the first object is determined,
The object data of the first object and a plurality of sets of grip points of the first object are input to the first model.
A computer system characterized in that the second model is updated based on the difference between the maximum value of the gripping success probability of the first object and the target probability output from the first model.
前記少なくとも一つの計算機は、前記第二学習処理において、
前記第一モデルの学習が停滞している場合、前記基準物体からの形状の変化量が前記第一物体より小さい物体の前記物体データが生成されるように前記第二モデルを更新し、
前記第一モデルの学習が進捗している場合、前記基準物体からの形状の変化量が前記第一物体より大きい物体の前記物体データが生成されるように前記第二モデルを更新することを特徴とする計算機システム。 The computer system according to claim 1.
The at least one computer is used in the second learning process.
When the learning of the first model is stagnant, the second model is updated so that the object data of the object whose shape change amount from the reference object is smaller than that of the first object is generated.
When the learning of the first model is progressing, the second model is updated so that the object data of the object whose shape change from the reference object is larger than that of the first object is generated. Computer system.
前記少なくとも一つの計算機は、前記第二学習処理において、
前記第二モデルに基づいて生成された前記物体データに対応する物体の形状と前記基準物体の形状との間の類似度の目標範囲を設定し、
前記第一物体の把持成功確率の最大値及び前記目標確率の差が小さくなり、かつ、前記更新された第二モデルに基づいて生成された前記物体データに対応する第二物体の形状と前記基準物体の形状との間の類似度が前記目標範囲内になるように前記第二モデルを更新することを特徴とする計算機システム。 The computer system according to claim 2.
The at least one computer is used in the second learning process.
A target range of similarity between the shape of the object corresponding to the object data generated based on the second model and the shape of the reference object is set.
The difference between the maximum value of the gripping success probability of the first object and the target probability becomes small, and the shape and reference of the second object corresponding to the object data generated based on the updated second model. A computer system characterized in that the second model is updated so that the degree of similarity with the shape of an object is within the target range.
前記第一モデルの更新履歴を管理するための履歴管理情報を保持し、
前記少なくとも一つの計算機は、前記第二学習処理において、
前記第一モデルより出力された前記第一物体の把持成功確率の最大値が目標確率以下である場合、前記第一物体の把持成功確率の統計値及び前記第一物体の把持成功確率の最大値の変化量のいずれかを評価値として算出し、
前記評価値に基づいて、前記第一モデルの学習が停滞しているか否かを判定し、
前記第一モデルの学習が停滞していると判定された場合、前記履歴管理情報を用いて、前記第一モデルを更新することを特徴とする計算機システム。 The computer system according to claim 1.
Holds history management information for managing the update history of the first model,
The at least one computer is used in the second learning process.
When the maximum value of the gripping success probability of the first object output from the first model is equal to or less than the target probability, the statistical value of the gripping success probability of the first object and the maximum value of the gripping success probability of the first object. Calculate one of the changes in the value as an evaluation value,
Based on the evaluation value, it is determined whether or not the learning of the first model is stagnant.
A computer system characterized in that when it is determined that learning of the first model is stagnant, the first model is updated using the history management information.
前記計算機システムは、演算装置及び前記演算装置に接続される記憶装置を有する少なくとも一つの計算機から構成され、
前記機械学習方法は、
前記少なくとも一つの計算機が、前記物体の形状に関する情報を含む物体データ、当該物体を把持する位置の基準となる把持点、及び前記物体の把持の成否を示す情報を含む学習データを用いて、当該物体の把持成功確率を出力する第一モデルを生成するための第一学習処理を実行するステップと、
基準物体の前記物体データに基づいて、前記基準物体の形状を変形させた物体の前記物体データを出力する第二モデルを生成するための第二学習処理を実行するステップと、を含み、
前記第二学習処理は、
前記少なくとも一つの計算機が、前記第二モデルに基づいて、前記基準物体の形状を変形した第一物体の前記物体データを生成する第1のステップと、
前記少なくとも一つの計算機が、前記第一物体の把持点を決定する第2のステップと、
前記少なくとも一つの計算機が、前記第一物体の物体データ及び前記第一物体の把持点の複数の組を前記第一モデルに入力する第3のステップと、
前記第一モデルより出力された前記第一物体の把持成功確率の最大値及び目標確率の差に基づいて、前記第二モデルを更新する第4のステップと、を含むことを特徴とする機械学習方法。 A machine learning method performed by a computer system that learns a control algorithm for a gripping device to grip an object.
The computer system is composed of an arithmetic unit and at least one computer having a storage device connected to the arithmetic unit.
The machine learning method is
The at least one computer uses object data including information on the shape of the object, a gripping point as a reference of a position for gripping the object, and learning data including information indicating success or failure of gripping the object. The step of executing the first learning process for generating the first model that outputs the gripping success probability of the object,
A step of executing a second learning process for generating a second model for outputting the object data of an object whose shape of the reference object is deformed based on the object data of the reference object is included.
The second learning process is
A first step in which the at least one computer generates the object data of the first object obtained by deforming the shape of the reference object based on the second model.
A second step in which the at least one computer determines the gripping point of the first object,
A third step in which the at least one computer inputs the object data of the first object and a plurality of sets of grip points of the first object into the first model.
Machine learning comprising a fourth step of updating the second model based on the difference between the maximum value of the gripping success probability of the first object and the target probability output from the first model. Method.
前記第4のステップは、
前記第一モデルの学習が停滞している場合、前記少なくとも一つの計算機が、前記基準物体からの形状の変化量が前記第一物体より小さい物体の前記物体データが生成されるように前記第二モデルを更新するステップと、
前記第一モデルの学習が進捗している場合、前記少なくとも一つの計算機が、前記基準物体からの形状の変化量が前記第一物体より大きい物体の前記物体データが生成されるように前記第二モデルを更新するステップと、を含むことを特徴とする機械学習方法。 The machine learning method according to claim 5.
The fourth step is
When the learning of the first model is stagnant, the second is such that at least one computer generates the object data of an object whose shape change amount from the reference object is smaller than that of the first object. Steps to update the model and
When the learning of the first model is in progress, the second is such that at least one computer generates the object data of an object whose shape change from the reference object is larger than that of the first object. A machine learning method characterized by including steps to update the model.
前記第4のステップは、
前記少なくとも一つの計算機が、前記第二モデルに基づいて生成された前記物体データに対応する物体の形状と前記基準物体の形状との間の類似度の目標範囲を設定するステップと、
前記少なくとも一つの計算機が、前記第一物体の把持成功確率の最大値及び前記目標確率の差が小さくなり、かつ、前記更新された第二モデルに基づいて生成された前記物体データに対応する第二物体の形状と前記基準物体の形状との間の類似度が前記目標範囲内になるように前記第二モデルを更新するステップと、を含むことを特徴とする機械学習方法。 The machine learning method according to claim 6.
The fourth step is
A step in which the at least one computer sets a target range of similarity between the shape of an object corresponding to the object data generated based on the second model and the shape of the reference object.
The at least one computer makes a difference between the maximum value of the gripping success probability of the first object and the target probability small, and corresponds to the object data generated based on the updated second model. (Ii) A machine learning method comprising a step of updating the second model so that the similarity between the shape of the object and the shape of the reference object is within the target range.
前記計算機システムは、前記第一モデルの更新履歴を管理するための履歴管理情報を保持し、
前記機械学習方法は、
前記少なくとも一つの計算機が、前記第一物体の把持成功確率の統計値及び前記第一物体の把持成功確率の最大値の変化量のいずれかを評価値として算出するステップと、
前記少なくとも一つの計算機が、前記評価値に基づいて、前記第一モデルの学習が停滞しているか否かを判定するステップと、
前記第一モデルの学習が停滞していると判定された場合、前記少なくとも一つの計算機が、前記履歴管理情報を用いて、前記第一モデルを更新するステップと、を含むことを特徴とする機械学習方法。 The machine learning method according to claim 5.
The computer system holds history management information for managing the update history of the first model.
The machine learning method is
A step in which the at least one computer calculates either a statistical value of the gripping success probability of the first object or a change amount of the maximum value of the gripping success probability of the first object as an evaluation value.
A step in which the at least one computer determines whether or not the learning of the first model is stagnant based on the evaluation value.
A machine characterized in that, when it is determined that the learning of the first model is stagnant, the at least one computer includes a step of updating the first model using the history management information. Learning method.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019082488A JP7179672B2 (en) | 2019-04-24 | 2019-04-24 | Computer system and machine learning method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019082488A JP7179672B2 (en) | 2019-04-24 | 2019-04-24 | Computer system and machine learning method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2020179438A true JP2020179438A (en) | 2020-11-05 |
JP7179672B2 JP7179672B2 (en) | 2022-11-29 |
Family
ID=73023036
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019082488A Active JP7179672B2 (en) | 2019-04-24 | 2019-04-24 | Computer system and machine learning method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7179672B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11148672B1 (en) * | 2017-04-12 | 2021-10-19 | Hrl Laboratories, Llc | Method for time series structure discovery |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160101519A1 (en) * | 2013-05-21 | 2016-04-14 | The Universtiy Of Birmingham | Grasp modelling |
US9694494B1 (en) * | 2015-12-11 | 2017-07-04 | Amazon Technologies, Inc. | Feature identification and extrapolation for robotic item grasping |
JP2017185578A (en) * | 2016-04-05 | 2017-10-12 | 株式会社リコー | Object gripping device and gripping control program |
JP2018205929A (en) * | 2017-05-31 | 2018-12-27 | 株式会社Preferred Networks | Learning device, learning method, learning model, detection device and gripping system |
JP2018202550A (en) * | 2017-06-05 | 2018-12-27 | 株式会社日立製作所 | Machine learning device, machine learning method, and machine learning program |
US20190012611A1 (en) * | 2017-07-04 | 2019-01-10 | Hitachi, Ltd. | Information processing system |
JP2019032782A (en) * | 2017-08-09 | 2019-02-28 | 株式会社日立製作所 | Machine learning apparatus and method |
JP2019056966A (en) * | 2017-09-19 | 2019-04-11 | 株式会社東芝 | Information processing device, image recognition method and image recognition program |
-
2019
- 2019-04-24 JP JP2019082488A patent/JP7179672B2/en active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160101519A1 (en) * | 2013-05-21 | 2016-04-14 | The Universtiy Of Birmingham | Grasp modelling |
US9694494B1 (en) * | 2015-12-11 | 2017-07-04 | Amazon Technologies, Inc. | Feature identification and extrapolation for robotic item grasping |
JP2017185578A (en) * | 2016-04-05 | 2017-10-12 | 株式会社リコー | Object gripping device and gripping control program |
JP2018205929A (en) * | 2017-05-31 | 2018-12-27 | 株式会社Preferred Networks | Learning device, learning method, learning model, detection device and gripping system |
JP2018202550A (en) * | 2017-06-05 | 2018-12-27 | 株式会社日立製作所 | Machine learning device, machine learning method, and machine learning program |
US20190012611A1 (en) * | 2017-07-04 | 2019-01-10 | Hitachi, Ltd. | Information processing system |
JP2019016025A (en) * | 2017-07-04 | 2019-01-31 | 株式会社日立製作所 | Information processing system |
JP2019032782A (en) * | 2017-08-09 | 2019-02-28 | 株式会社日立製作所 | Machine learning apparatus and method |
JP2019056966A (en) * | 2017-09-19 | 2019-04-11 | 株式会社東芝 | Information processing device, image recognition method and image recognition program |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11148672B1 (en) * | 2017-04-12 | 2021-10-19 | Hrl Laboratories, Llc | Method for time series structure discovery |
US11801847B1 (en) * | 2017-04-12 | 2023-10-31 | Hrl Laboratories, Llc | Method for time series structure discovery |
Also Published As
Publication number | Publication date |
---|---|
JP7179672B2 (en) | 2022-11-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11568327B2 (en) | Method for generating universal learned model | |
JP2021073623A (en) | Interactive 3d experience based on data | |
JP5768834B2 (en) | Plant model management apparatus and method | |
JP2016100009A (en) | Method for controlling operation of machine and control system for iteratively controlling operation of machine | |
JP6892424B2 (en) | Hyperparameter tuning methods, devices and programs | |
CN107457780B (en) | Method and device for controlling mechanical arm movement, storage medium and terminal equipment | |
JP6718500B2 (en) | Optimization of output efficiency in production system | |
US10635078B2 (en) | Simulation system, simulation method, and simulation program | |
US20190244133A1 (en) | Learning apparatus and learning method | |
JP7058202B2 (en) | Information processing method and information processing system | |
EP3656513A1 (en) | Method and system for predicting a motion trajectory of a robot moving between a given pair of robotic locations | |
WO2022103680A1 (en) | Binocular pose prediction | |
WO2022103678A1 (en) | Disambiguation of poses | |
JP7179672B2 (en) | Computer system and machine learning method | |
JP7264845B2 (en) | Control system and control method | |
WO2021186500A1 (en) | Learning device, learning method, and recording medium | |
JP7382633B2 (en) | Learning model construction device, learning model construction method, and computer program | |
JP6947029B2 (en) | Control devices, information processing devices that use them, control methods, and computer programs | |
JP7196935B2 (en) | Arithmetic device, action determination method, and control program | |
JPWO2019142728A1 (en) | Controls, control methods and programs | |
CN114397817A (en) | Network training method, robot control method, network training device, robot control device, equipment and storage medium | |
US11940787B2 (en) | Control device, method, program, and system using machine learning technology | |
JP6659260B2 (en) | Control device and machine learning device with PLC program optimization function | |
JP2021082014A (en) | Estimation device, training device, estimation method, training method, program, and non-transitory computer readable medium | |
JP2020198135A (en) | Hyper parameter tuning method, device and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20211223 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20221026 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20221108 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20221116 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7179672 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |