JP6632095B1 - 学習済モデル生成装置、ロボット制御装置、及び、プログラム - Google Patents

学習済モデル生成装置、ロボット制御装置、及び、プログラム Download PDF

Info

Publication number
JP6632095B1
JP6632095B1 JP2019005103A JP2019005103A JP6632095B1 JP 6632095 B1 JP6632095 B1 JP 6632095B1 JP 2019005103 A JP2019005103 A JP 2019005103A JP 2019005103 A JP2019005103 A JP 2019005103A JP 6632095 B1 JP6632095 B1 JP 6632095B1
Authority
JP
Japan
Prior art keywords
robot
learned model
task
model generation
generation device
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
JP2019005103A
Other languages
English (en)
Other versions
JP2020110894A (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.)
Exa Wizards Inc
Original Assignee
Exa Wizards 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 Exa Wizards Inc filed Critical Exa Wizards Inc
Priority to JP2019005103A priority Critical patent/JP6632095B1/ja
Application granted granted Critical
Publication of JP6632095B1 publication Critical patent/JP6632095B1/ja
Publication of JP2020110894A publication Critical patent/JP2020110894A/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Manipulator (AREA)

Abstract

【課題】全ての動作環境に対応する動作を規定することなく、様々な動作環境においてロボットの適切な動作を実現する。【解決手段】 複数の動作から構成されるタスクを実行するロボットの動作に関する学習済モデルを生成する学習済モデル生成装置は、複数の動作環境のそれぞれに関するセンサデータを取得する手段を備え、センサデータから、動作環境を表す特徴量を抽出する手段を備え、抽出された特徴量と、動作と、が関連付けられた学習用データセットを記憶する手段を備え、学習用データセットを参照して、動作環境及び動作の関係が規定された学習済モデルを生成する手段を備える。【選択図】図6

Description

本発明は、学習済モデル生成装置、ロボット制御装置、及び、プログラムに関する。
近年、様々な分野へのロボットの導入に注目が集まっている。例えば、製造向上にロボットを導入することにより、製造コストの低下や歩留まりの向上が期待されている。
ロボットの導入には、ロボットに対して適切な制御命令を与えることが重要である。
ロボットに対して制御命令を与えるための技術として、例えば、特許文献1は、ロボットに制御命令を与えるためのユーザインタフェースを開示している。
特開2016−112651号公報
ロボットを動作させるためには、ロボットにタスクを実行させるための動作を定義する必要がある。一般に、ロボットの動作は、動作環境と、当該動作環境において実行すべき動作と、の組み合わせによって規定される。ロボットを適切に動作させるためには、想定される全ての動作環境に対応する動作を規定する必要がある。
動作が規定されていない動作環境が存在すると、ロボットの動作に不具合が生じる。
しかし、特許文献1において、GUIをディスプレイに表示することは、動作環境を予め規定することに等しい。つまり、予め規定されていなかった動作環境については、GUIをディスプレイに表示することはできない。したがって、動作が規定されていない動作環境では、ロボットは適切に動作することはできない。
このように、従来、動作が規定されていない動作環境ではロボットを適切に動作させることはできない。
本発明の目的は、全ての動作環境に対応する動作を規定することなく、様々な動作環境においてロボットの適切な動作を実現することである。
本発明の一態様は、
複数の動作から構成されるタスクを実行するロボットの動作に関する学習済モデルを生成する学習済モデル生成装置であって、
ロボットの複数の動作環境のそれぞれに関するセンサデータを取得する手段を備え、
前記センサデータから、前記動作環境を表す特徴量を抽出する手段を備え、
前記抽出された特徴量と、前記動作と、が関連付けられた学習用データセットを記憶する手段を備え、
前記学習用データセットを参照して、前記動作環境及び前記動作の関係が規定された学習済モデルを生成する手段を備える、
学習済モデル生成装置である。
本発明によれば、全ての動作環境に対応する動作を規定することなく、様々な動作環境においてロボットの適切な動作を実現することができる。
本実施形態の情報処理システムの構成を示すブロック図である。 図1の学習済モデル生成装置の機能ブロック図である。 図1のロボットの機能ブロック図である。 図1の学習済モデル生成装置の機能ブロック図である。 図1の制御対象ロボットの機能ブロック図である。 本実施形態の概要の説明図である。 本実施形態のタスクデータベースのデータ構造を示す図である。 本実施形態の学習用データセットのデータ構造を示す図である。 本実施形態の学習済モデル生成処理のフローチャートである。 図9の処理において表示される画面例を示す図である。 図9の処理において生成される学習済モデルのネットワーク図である。 本実施形態のロボット制御処理のフローチャートである。 図12の処理において表示される画面例を示す図である。 変形例1の情報処理において表示される画面例を示す図である。 変形例3の子タスクデータベースのデータ構造を示す図である。 変形例3の学習済モデル生成処理のフローチャートである。 変形例3の学習済モデルのネットワーク図である。
以下、本発明の一実施形態について、図面に基づいて詳細に説明する。なお、実施形態を説明するための図面において、同一の構成要素には原則として同一の符号を付し、その繰り返しの説明は省略する。
(1)情報処理システムの構成
情報処理システムの構成を説明する。図1は、本実施形態の情報処理システムの構成を示すブロック図である。
図1に示すように、情報処理システム1は、学習済モデル生成装置10と、センサユニット20と、ロボット30と、ロボット制御装置50と、制御対象ロボット70と、を備える。
学習済モデル生成装置10は、センサユニット20と、ロボット30と、ロボット制御装置50と、に接続される。
センサユニット20は、学習済モデル生成装置10と、ロボット制御装置50と、に接続される。
ロボット30は、学習済モデル生成装置10に接続される。
制御対象ロボット70は、ロボット制御装置50に接続される。
ロボット30及び制御対象ロボット70は、自律的に動作するように構成された自立動作装置の一例である。ロボット30及び制御対象ロボット70は、例えば、以下を含む。
・ロボットアーム
・工作機械
・ロボット掃除機
・ドローン
・自立駆動型の医療機器(一例として、内視鏡)
ロボット制御装置50は、学習済モデル生成装置10と、センサユニット20と、制御対象ロボット70と、に接続される。
学習済モデル生成装置10は、ロボット30を制御するための学習済モデルを生成するように構成される。学習済モデル生成装置10は、例えば、パーソナルコンピュータ、又は、サーバコンピュータである。
センサユニット20は、ロボット30及び制御対象ロボット70の動作環境に関するセンサデータを取得するように構成される。センサデータは、例えば、以下の少なくとも1つを含む。
・ロボット30及びロボット30の周囲の静止画、並びに、制御対象ロボット70及び制御対象ロボット70の周囲の静止画
・ロボット30及びロボット30の周囲の動画、並びに、制御対象ロボット70及び制御対象ロボット70の周囲の動画
・ロボット30及びロボット30の周囲の音声、並びに、制御対象ロボット70及び制御対象ロボット70の周囲の音声
ロボット30は、ユーザ指示に応じて動作するように構成される。
ロボット制御装置50は、制御対象ロボット70を制御するように構成される。ロボット制御装置50は、例えば、パーソナルコンピュータ、又は、サーバコンピュータである。
制御対象ロボット70は、ロボット制御装置50の制御に従って動作するように構成される。
(1−1)学習済モデル生成装置の構成
学習済モデル生成装置10の構成を説明する。図2は、図1の学習済モデル生成装置の機能ブロック図である。
図2に示すように、学習済モデル生成装置10は、記憶装置11と、プロセッサ12と、入出力インタフェース13と、通信インタフェース14とを備える。
記憶装置11は、プログラム及びデータを記憶するように構成される。記憶装置11は、例えば、ROM(Read Only Memory)、RAM(Random Access Memory)、及び、ストレージ(例えば、フラッシュメモリ又はハードディスク)の組合せである。
プログラムは、例えば、以下のプログラムを含む。
・OS(Operating System)のプログラム
・情報処理を実行するアプリケーション(例えば、学習済モデル生成アプリケーション)のプログラム
データは、例えば、以下のデータを含む。
・情報処理において参照されるデータベース
・情報処理を実行することによって得られるデータ(つまり、情報処理の実行結果)
プロセッサ12は、記憶装置11に記憶されたプログラムを起動することによって、学習済モデル生成装置10の機能を実現するように構成される。プロセッサ12は、コンピュータの一例である。
入出力インタフェース13は、学習済モデル生成装置10に接続される入力デバイスからユーザの指示を取得し、かつ、学習済モデル生成装置10に接続される出力デバイスに情報を出力するように構成される。
入力デバイスは、例えば、キーボード、ポインティングデバイス、タッチパネル、又は、それらの組合せである。また、入力デバイスは、センサユニット20を含む。
出力デバイスは、例えば、ディスプレイである。
通信インタフェース14は、学習済モデル生成装置10、ロボット30及びロボット制御装置50との間の通信を制御するように構成される。
(1−2)ロボットの構成
本実施形態のロボット30の構成を説明する。図3は、図1のロボットの機能ブロック図である。
図3に示すように、ロボット30は、記憶装置31と、プロセッサ32と、通信インタフェース34と、駆動部35と、を備える。
記憶装置31は、プログラム及びデータを記憶するように構成される。記憶装置31は、例えば、ROM、RAM、及び、ストレージ(例えば、フラッシュメモリ又はハードディスク)の組合せである。
プロセッサ32は、記憶装置31に記憶されたプログラムを起動することによって、ロボット30の機能を実現するように構成される。プロセッサ32は、コンピュータの一例である。
通信インタフェース34は、ロボット30と、学習済モデル生成装置10との間の通信を制御するように構成される。
駆動部35は、例えば、関節を有するロボットアームである。駆動部35は、プロセッサ32の制御に従い、駆動するように構成される。
(1−3)ロボット制御装置の構成
ロボット制御装置50の構成を説明する。図4は、図1の学習済モデル生成装置の機能ブロック図である。
図4に示すように、ロボット制御装置50は、記憶装置51と、プロセッサ52と、入出力インタフェース53と、通信インタフェース54とを備える。
記憶装置51は、プログラム及びデータを記憶するように構成される。記憶装置51は、例えば、ROM、RAM、及び、ストレージ(例えば、フラッシュメモリ又はハードディスク)の組合せである。
プログラムは、例えば、以下のプログラムを含む。
・OS(Operating System)のプログラム
・情報処理を実行するアプリケーション(例えば、ロボット制御アプリケーション)のプログラム
データは、例えば、以下のデータを含む。
・情報処理において参照されるデータベース
・情報処理を実行することによって得られるデータ(つまり、情報処理の実行結果)
プロセッサ52は、記憶装置51に記憶されたプログラムを起動することによって、ロボット制御装置50の機能を実現するように構成される。プロセッサ52は、コンピュータの一例である。
入出力インタフェース53は、ロボット制御装置50に接続される入力デバイスからユーザの指示を取得し、かつ、ロボット制御装置50に接続される出力デバイスに情報を出力するように構成される。
入力デバイスは、例えば、キーボード、ポインティングデバイス、タッチパネル、又は、それらの組合せである。また、入力デバイスは、センサユニット20を含む。
出力デバイスは、例えば、ディスプレイである。
通信インタフェース54は、ロボット制御装置50と、学習済モデル生成装置10及び制御対象ロボット70との間の通信を制御するように構成される。
(1−4)制御対象ロボットの構成
本実施形態の制御対象ロボット70の構成を説明する。図5は、図1の制御対象ロボットの機能ブロック図である。
図5に示すように、制御対象ロボット70は、記憶装置71と、プロセッサ72と、通信インタフェース74と、駆動部75と、を備える。
記憶装置71は、プログラム及びデータを記憶するように構成される。記憶装置71は、例えば、ROM、RAM、及び、ストレージ(例えば、フラッシュメモリ又はハードディスク)の組合せである。
プロセッサ72は、記憶装置71に記憶されたプログラムを起動することによって、制御対象ロボット70の機能を実現するように構成される。プロセッサ72は、コンピュータの一例である。
通信インタフェース74は、制御対象ロボット70と、ロボット制御装置50との間の通信を制御するように構成される。
駆動部75は、例えば、関節を有するロボットアームである。駆動部75は、プロセッサ72の制御に従い、駆動するように構成される。
(2)実施形態の概要
本実施形態の概要を説明する。図6は、本実施形態の概要の説明図である。
本実施形態では、「タスク」とは、ロボット30及び制御対象ロボット70が完了すべき作業である。
「動作」とは、タスクを完了させるために必要な要素である。
「動作環境」とは、動作を実行するときの状況及び動作を実行する場所の組合せである。
つまり、ロボット30及び制御対象ロボット70が複数の動作環境のそれぞれにおいて動作を行った結果、タスクが完了する。
図6に示すように、学習済モデル生成装置10は、ユーザから、動作環境に応じたロボット30の動作の指定を受け付ける。
ロボット30は、ユーザ指示に応じて動作する。
センサユニット20は、ロボット30の複数の動作環境のそれぞれに関するセンサデータを生成する。
学習済モデル生成装置10は、センサユニット20から、センサデータを取得する。
学習済モデル生成装置10は、センサデータから、各動作環境の特徴量を抽出する。
学習済モデル生成装置10は、特徴量(つまり、動作環境)と、動作と、が関連付けられた学習用データセットを生成する。
学習済モデル生成装置10は、学習用データセットを参照して、動作環境及び動作の関係が規定された学習済モデルを生成する。
本実施形態では、制御対象ロボット70を制御するロボット制御装置50は、学習済モデル生成装置10によって生成された学習済モデルを参照して、制御対象ロボット70にコマンドを送信する。制御対象ロボット70は、ロボット制御装置50から送信されたコマンドに従って、動作環境に応じて適切な動作を実行する。これにより、全ての動作環境に対応する動作を規定することなく、制御対象ロボット70にタスクを実行させることができる。
(3)データテーブル
本実施形態のデータテーブルを説明する。
(3−1)タスクデータベース
本実施形態のタスクデータベースを説明する。図7は、本実施形態のタスクデータベースのデータ構造を示す図である。
図7のタスクデータベースには、タスクに関するタスク情報が格納される。
タスクデータベースは、「タスクID」フィールドと、「タスク名」フィールドと、複数の「動作環境」フィールド(「動作環境A」フィールド、「動作環境B」フィールド…)と、を含む。
各フィールドは、互いに関連付けられている。
「タスクID」フィールドには、タスクを識別するタスク識別情報が格納される。
「タスク名」フィールドには、タスク名に関する情報(例えば、テキスト)が格納される。
複数の「動作環境」フィールドは、タスクにおいて想定される複数の動作環境(例えば、動作環境A、動作環境B…)に対応する。各「動作環境」フィールドは、「画像」フィールドと、「コマンド」フィールドと、を含む。
「画像」フィールドには、各動作環境に対応する画像が格納される。
「コマンド」フィールドには、各動作環境において割当可能な複数のコマンドが格納される。コマンドは、例えば、以下の少なくとも1つである。
・動作を表す抽象的な命令(一例として、「パレットに収容された対象物のうち、「1」が付された対象物を掴む」という命令)
・動作を表す駆動パラメータ(例えば、ロボット30に含まれるジョイント部のジョイント角度の値)
(3−2)学習用データセット
本実施形態の学習用データセットを説明する。図8は、本実施形態の学習用データセットのデータ構造を示す図である。
図8の学習用データセットには、学習用データが格納されている。学習用データセットは、タスク識別情報に関連付けられている。
学習用データセットは、「データID」フィールドと、「時刻」フィールドと、「センサデータ」フィールドと、「特徴量」フィールドと、「コマンド」フィールドと、を含む。
各フィールドは、互いに関連付けられている。
「データID」フィールドには、学習用データを識別する学習用データ識別情報が格納される。
「時刻」フィールドには、センサユニット20によって動作が検出された時刻が格納される。
「センサデータ」フィールドには、センサユニット20によって取得されたセンサデータが格納される。センサデータは、例えば、以下の少なくとも1つである。
・静止画データ
・動画データ
・音声データ
「特徴量」フィールドには、ロボット30の動作環境に対応する特徴量が格納される。
「コマンド」フィールドには、ロボット30に対する動作命令であるコマンドが格納される。
(4)情報処理
本実施形態の情報処理を説明する。
(4−1)学習済モデル生成処理
本実施形態の学習済モデル生成処理を説明する。図9は、本実施形態の学習済モデル生成処理のフローチャートである。図10は、図9の処理において表示される画面例を示す図である。図11は、図9の処理において生成される学習済モデルのネットワーク図である。
図9に示すように、学習済モデル生成装置10は、タスクの指定の受付(S110)を実行する。
具体的には、プロセッサ12は、画面P10(図10)をディスプレイに表示する。
画面P10は、操作オブジェクトB10と、フィールドオブジェクトF10と、を含む。
フィールドオブジェクトF10は、タスク識別情報のユーザ入力を受け付けるオブジェクトである。
操作オブジェクトB10は、フィールドオブジェクトF10に対するユーザ入力を確定させるためのオブジェクトである。
ユーザがフィールドオブジェクトF10に任意のタスク識別情報を入力し、且つ、操作オブジェクトB10を操作すると、プロセッサ12は、フィールドオブジェクトF10に入力されたタスク識別情報を、学習済モデルの生成の対象となるタスクのタスク識別情報として特定する。
ステップS110の後、動作命令の受付(S111)を実行する。
具体的には、タスクデータベース(図7)を参照して、ステップS110で特定したタスク識別情報に関連付けられたレコードを特定する。
プロセッサ12は、特定したレコードの「動作A」フィールドの「画像」フィールド及び「コマンド」フィールドの組合せに基づく画面P11をディスプレイに表示する。
画面P11は、操作オブジェクトB11a〜B11cと、画像オブジェクトIMG11と、を含む。
画像オブジェクトIMG11は、「動作A」フィールドの「画像」フィールドの画像(つまり、動作環境Aに対応する画像)である。動作環境Aは、「1」〜「3」が付された対象物がパレットに収容されている環境である。
操作オブジェクトB11a〜B11cには、それぞれ、「動作A」フィールドの「コマンド」フィールドの値(つまり、動作環境Aにおいてロボット30に与えることができるコマンド)が割り当てられている。例えば、操作オブジェクトB11a〜B11cには、それぞれ、画像オブジェクトIMG11において「1」〜「3」が付された対象物を掴む動作を実行させるためのコマンドが割り当てられている。ユーザが操作オブジェクトB11a〜B11cの何れかを操作すると、ユーザによって操作されたオブジェクトに割り当てられたコマンドが特定される。
画面P12は、操作オブジェクトB12a〜B12bと、画像オブジェクトIMG12と、を含む。
画像オブジェクトIMG12は、「動作B」フィールドの「画像」フィールドの画像(つまり、動作環境Bに対応する画像)である。動作環境Bは、「1」〜「2」が付された対象物がパレットに収容されている環境である。動作環境Aでは、「3」が付された対象物がパレットに収容されているのに対して、動作環境Bでは、「3」が付された対象物がパレットに存在しない。つまり、動作環境Bのパレットにおける対象物の配置は、動作環境Aとは異なる。
操作オブジェクトB12a〜B12bには、それぞれ、「動作B」フィールドの「コマンド」フィールドの値(つまり、動作環境Bにおいてロボット30に与えることができるコマンド)が割り当てられている。例えば、操作オブジェクトB12a〜B12bには、それぞれ、画像オブジェクトIMG12において「1」〜「2」が付された対象物を掴む動作を実行させるためのコマンドが割り当てられている。ユーザが操作オブジェクトB12a〜B12bの何れかを操作すると、ユーザによって操作されたオブジェクトに割り当てられたコマンドが特定される。
なお、画面P11〜P12の遷移は順不同である。
ステップS111の後、学習済モデル生成装置10は、コマンドの決定(S112)を実行する。
具体的には、ユーザが操作オブジェクトB11aを操作すると、プロセッサ12は、操作オブジェクトB11aに割り当てられたコマンドを特定する。
プロセッサ12は、特定されたコマンドをロボット30に送信する。
ロボット30のプロセッサ32は、プロセッサ12から送信されたコマンドに対応する制御信号を生成する。
駆動部35は、プロセッサ32により生成された制御信号に従って駆動する。その結果、ロボット30は、動作環境Aにおいてユーザの制御命令に応じて動作する。
ステップS112の後、学習済モデル生成装置10は、センサデータの取得(S113)を実行する。
具体的には、センサユニット20は、ステップS112において動作したロボット30の動作環境に関するセンサデータを生成する。
プロセッサ12は、センサユニット20によって生成されたセンサデータを取得する。
ステップS113の後、学習済モデル生成装置10は、特徴量の抽出(S114)を実行する。
具体的には、プロセッサ12は、ステップS113において取得されたセンサデータの特徴量を抽出する。
例えば、センサデータが静止画又は動画である場合、プロセッサ12は、センサデータに対して画像解析アルゴリズムを適用することにより、動作環境に対応する画像特徴量を抽出する。
例えば、センサデータが音声である場合、プロセッサ12は、センサデータに対して音声解析アルゴリズムを適用することにより、動作環境に対応する音声特徴量を抽出する。
ステップS114の後、学習済モデル生成装置10は、学習用データセットの生成(S115)を実行する。
具体的には、ステップS110で特定したタスク識別情報と、新規の学習用データセット(図8)と、を関連付けて記憶装置11に記憶する。
プロセッサ12は、ステップS114で抽出された特徴量と、ステップS114が実行された時刻と、ステップS112で特定されたコマンドと、を関連付けて学習用データセットの新規レコードに格納する。
ステップS111〜S115は、所定の動作環境の全てについてステップS115が終了するまで繰り返し実行される(S116)。
所定の動作環境の全てについてステップS115が終了していない場合(S116−NO)、ステップS111が実行される。
所定の動作環境の全てについてステップS115が終了している場合(S116−YES)、ステップS117が実行される。
所定の動作環境の全てについてステップS115が終了している場合(S116−YES)、学習済モデル生成装置10は、学習済モデルの生成(S117)を実行する。
具体的には、プロセッサ12は、ステップS115で生成された学習用データセット(図8)に対して所定の学習アルゴリズムを適用することにより、学習済モデルを生成する。
学習アルゴリズムは、例えば、以下の何れかである。
・RNN(Recurrent Neural Network)
・LSTM(Long Short-Term Memory)
・CNN(Convolution Neural Network)
・SVM(Support Vector Machine)
図11は、学習済モデルの一例であるRNNのネットワークを示している。
RNNのネットワークは、入力Xと、出力Yと、隠れ要素Sと、を含む。
例えば、ステップt1における入力Xt1は、ステップS114で抽出された複数の特徴量Xt11〜Xt13である。
ステップt1における隠れ要素St1は、ステップt1における動作環境情報(つまり、特徴量)Xt11〜Xt13の関数である。
ステップt1における出力Yt1は、特徴量Xt11〜Xt13に基づいて計算される。出力Yt1は、特徴量Xt11〜Xt13によって決定される動作環境における動作の予測確率である。出力Yt1が所定値より高い、又は、最も高い動作が、当該動作環境において実行すべき動作を意味する。
ステップt2における入力Xt2は、ステップS114で抽出された複数の特徴量Xt21〜Xt23である。
ステップt2における隠れ要素St2は、ステップt2における動作環境情報(つまり、特徴量)Xt21〜Xt23の関数である。
ステップt2における出力Yt2は、特徴量Xt21〜Xt23及び隠れ要素St1の組合せに基づいて計算される。出力Yt2は、特徴量Xt21〜Xt23によって決定される動作環境における動作の予測確率である。出力Yt2が所定値より高い、又は、最も高い動作が、当該動作環境において実行すべき動作を意味する。
ステップt3における入力Xt3は、ステップS114で抽出された複数の特徴量Xt31〜Xt33である。
ステップt3における隠れ要素St3は、ステップt3における動作環境情報(つまり、特徴量)Xt31〜Xt33の関数である。
ステップt3における出力Yt3は、特徴量Xt31〜Xt33及び隠れ要素St2の組合せに基づいて計算される。出力Yt3は、特徴量Xt31〜Xt33によって決定される動作環境における動作の予測確率である。出力Yt3が所定値より高い、又は、最も高い動作が、当該動作環境において実行すべき動作を意味する。
プロセッサ32は、ステップS110で特定したタスク識別情報と、学習済モデル(図11)と、を関連付けて記憶装置11に記憶する。
(4−2)ロボット制御処理
本実施形態のロボット制御処理を説明する。図12は、本実施形態のロボット制御処理のフローチャートである。図13は、図12の処理において表示される画面例を示す図である。
図12に示すように、ロボット制御装置50は、タスクの指定の受付(S150)を実行する。
具体的には、プロセッサ12は、画面P20(図13)をディスプレイに表示する。
画面P20は、操作オブジェクトB20と、フィールドオブジェクトF20と、を含む。
フィールドオブジェクトF210は、タスク識別情報のユーザ入力を受け付けるオブジェクトである。
操作オブジェクトB20は、フィールドオブジェクトF20に対するユーザ入力を確定させるためのオブジェクトである。
ユーザがフィールドオブジェクトF20に任意のタスク識別情報を入力し、且つ、操作オブジェクトB20を操作すると、プロセッサ12は、フィールドオブジェクトF20に入力されたタスク識別情報を、実行対象となるタスクのタスク識別情報として特定する。
ステップS150の後、ロボット制御装置50は、センサデータの取得(S151)を実行する。
具体的には、センサユニット20は、制御対象ロボット70の動作環境に関するセンサデータを生成する。
プロセッサ12は、センサユニット20によって生成されたセンサデータを取得する。
ステップS151の後、ロボット制御装置50は、特徴量の抽出(S152)を実行する。
具体的には、プロセッサ12は、ステップS114(図9)と同様に、ステップS151において取得されたセンサデータの特徴量を抽出する。
ステップS152の後、ロボット制御装置50は、コマンドの生成(S153)を実行する。
具体的には、プロセッサ52は、学習済モデル生成装置10の記憶装置11にアクセスして、ステップS150で特定したタスク識別情報に関連付けられた学習済モデル(図11)を読み出す。
プロセッサ52は、読み出した学習済モデルに対して、ステップS152で抽出された特徴量を入力することにより、制御対象ロボット70の動作環境に対応するコマンドを生成する。
プロセッサ52は、生成したコマンドを制御対象ロボット70に送信する。
制御対象ロボット70のプロセッサ72は、プロセッサ52から送信されたコマンドに対応する制御信号を生成する。
駆動部75は、プロセッサ72により生成された制御信号に従って駆動する。
ステップS151〜S153は、所定の動作環境の全てについてステップS153が終了するまで繰り返し実行される(S154)。
所定の動作環境の全てについてステップS153が終了していない場合(S154−NO)、ステップS151が実行される。
所定の動作環境の全てについてステップS153が終了している場合(S154−YES)、ロボット制御処理が終了する。
本実施形態によれば、ロボット制御装置50は、学習済モデル生成装置10によって生成された学習済モデルを参照して、制御対象ロボット70を制御する。これにより、全ての動作環境に対応する動作を規定することなく、制御対象ロボット70にタスクを実行させることができる。
(5)変形例
本実施形態の変形例を説明する。
(5−1)変形例1
変形例1を説明する。変形例1は、動作環境の代替例である。図14は、変形例1の情報処理において表示される画面例を示す図である。
ステップS111(図9)において、プロセッサ12は、特定したレコードの「動作C」フィールドの「画像」フィールド及び「コマンド」フィールドの組合せに基づく画面P20(図14)をディスプレイに表示する。
画面P20は、操作オブジェクトB20a〜B20cと、画像オブジェクトIMG20と、を含む。
画像オブジェクトIMG20は、「動作C」フィールドの「画像」フィールドの画像(つまり、動作環境Cに対応する画像)である。動作環境Cは、「4」〜「6」が付された対象物がパレットに収容されている環境である。動作環境Aでは、丸型の対象物が3スロットを有するパレットに収容されているのに対して、動作環境Bでは、矩形型の対象物が6スロットを有するパレットに収容されている。つまり、動作環境Bのパレット及び対象物は、動作環境Aとは異なる。
操作オブジェクトB20a〜B20cには、それぞれ、「動作C」フィールドの「コマンド」フィールドの値(つまり、動作環境Cにおいてロボット30に与えることができるコマンド)が割り当てられている。例えば、操作オブジェクトB20a〜B20cには、それぞれ、画像オブジェクトIMG20において「4」〜「6」が付された対象物を掴む動作を実行させるためのコマンドが割り当てられている。ユーザが操作オブジェクトB20a〜B20cの何れかを操作すると、ユーザによって操作されたオブジェクトに割り当てられたコマンドが特定される。
なお、画面P11〜P20の遷移は順不同である。
(5−2)変形例2
変形例2を説明する。変形例2は、センサデータがロボット30の物理量に関するデータである例である。
変形例2のセンサユニット20は、ロボット30の物理量に関するセンサデータを取得する。
ロボット30の物理量は、例えば、以下の少なくとも1つを含む。
・ロボット30に配置された力覚センサにかかる力
・ロボット30に配置されたトルクセンサによって取得された各軸にかかるトルク
・ロボット30に配置された圧力センサの接触面にかかる圧力
・ロボット30に配置された電圧センサによって取得された電圧(具体的には、ロボット30の各軸を動かす際に生じた電圧)
・ロボット30又はロボット30の周囲に配置された温度センサによって取得された温度
変形例2のセンサデータは、本実施形態のセンサデータ(静止画、動画、及び、音声の少なくとも1つ)と代替又は組合せ可能である。
変形例2によれば、ロボット30の物理量を用いた場合であっても、全ての動作環境に対応する動作を規定することなく、ロボット30にタスクを実行させることができる。
(5−3)変形例3
変形例3を説明する。変形例3は、本実施形態のタスク(以下「親タスク」という)に関連付けられる子タスクが存在する例である。
(5−3−1)子タスクデータベース
変形例3の子タスクデータベースを説明する。図15は、変形例3の子タスクデータベースのデータ構造を示す図である。
図15の子タスクデータベースには、子タスクに関する子タスク情報が格納される。子タスクデータベースは、タスク識別情報に関連付けられている。子タスクデータベースは、学習用データセットの一例である。
子タスクデータベースは、「子タスクID」フィールドと、「時刻」フィールドと、「コマンド」フィールドと、「センサデータ」フィールドと、を含む。
各フィールドは、互いに関連付けられている。
「子タスクID」フィールドには、子タスクを識別する子タスク識別情報が格納される。
「時刻」フィールドには、センサユニット20によって動作が検出された時刻が格納される。
「コマンド」フィールドには、ロボット30に対する動作命令であるコマンド(例えば、ロボット30に配置されるn(n=1以上の整数)個の軸1〜軸nのジョイント角度の値)が格納される。
「特徴量」フィールドには、ロボット30の動作環境に対応する特徴量が格納される。
(5−3−3)情報処理
変形例3の情報処理を説明する。図16は、変形例3の学習済モデル生成処理のフローチャートである。図17は、変形例3の学習済モデルのネットワーク図である。
図16に示すように、学習済モデル生成装置10は、動作入力(S210)を実行する。
具体的には、ユーザがタスク識別情報を指定し、且つ、ロボット30aを操作すると、ロボット30aは、ユーザの操作に応じたジョイント角度での動作を実行する。
プロセッサ12は、ロボット30aから、実行された動作の制御パラメータ(例えば、ジョイント角度の値)を取得する。
ステップS210の後、学習済モデル生成装置10は、動作出力(S211)を実行する。
具体的には、プロセッサ12は、ステップS210で取得した制御パラメータをロボット30bに出力する。
ステップS211の後、学習済モデル生成装置10は、センサデータの取得(S212)を実行する。
具体的には、ロボット30bは、ステップS211で出力された制御パラメータに応じて動作する。
センサユニット20は、センサユニット20は、ステップS112において動作したロボット30の動作環境に関するセンサデータを生成する。
プロセッサ12は、センサユニット20によって生成されたセンサデータを取得する。
ステップS212の後、学習済モデル生成装置10は、特徴量の抽出(S213)を実行する。
具体的には、プロセッサ12は、ステップS113において取得されたセンサデータの特徴量を抽出する。
ステップS213の後、学習済モデル生成装置10は、学習用データセットの生成(S214)を実行する。
具体的には、プロセッサ12は、ステップS210でユーザによって指定されたタスク識別情報に関連付けられた子タスクデータベース(図15)に新規レコードを追加する。新規レコードの各フィールドには、以下の情報が格納される。
「子タスクID」フィールドには、新規の子タスク識別情報が格納される。
「時間」フィールドには、ステップS212でセンサデータが取得された時刻の値が格納される。
「コマンド」フィールドには、ステップS210で取得された制御パラメータが格納される。
「センサデータ」フィールドには、ステップS212で取得されたセンサデータが格納される。
ステップS210〜S214は、所定の動作環境の全てについてステップS214が終了するまで繰り返し実行される(S215)。
所定の動作環境の全てについてステップS214が終了していない場合(S215−NO)、ステップS210が実行される。
所定の動作環境の全てについてステップS214が終了している場合(S215−YES)、ステップS216が実行される。
学習済モデル生成装置10は、学習済モデルの生成(S216)を実行する。
具体的には、プロセッサ12は、ステップS215で生成された学習用データセット(図15)に対して所定の学習アルゴリズム(例えば、RNN又はLSTM)を適用することにより、学習済モデルを生成する。
図17は、変形例3の学習済モデルの一例であるRNNのネットワークを示している。この学習済モデルは、上位レイヤのネットワーク(図17A)と、下位レイヤのネットワーク(図17B)と、を含む。
上位レイヤのネットワーク(図17A)は、本実施形態のネットワーク(図11)と同様である。
下位レイヤのネットワーク(図17B)には、DCAE(Deep Convolutional. Autoencoder)アルゴリズムが用いられる。下位レイヤのネットワークは、複数段のオートエンコーダを含む。最上位段のオートエンコーダには、センサユニット20によって生成されたセンサデータが入力される。各段のオートエンコーダは、センサデータの次元を圧縮することにより、特徴量を抽出する。抽出された特徴量は、y(ジョイント角度)と関連付けられる。
変形例3のプロセッサ32は、ステップS210でユーザによって指定されたタスク識別情報と、学習済モデル(図17)と、を関連付けて記憶装置11に記憶する。
変形例3によれば、親タスクを構成する詳細な小タスクの単位で用意された学習用データセットから学習済モデルを生成する。これにより、小タスクの単位での学習を実現することができる。この場合、ユーザは、小タスクの単位で動作命令を与えれば良いので、ユーザの動作命令を与えることの難易度を低減することができる。
(6)本実施形態の小括
本実施形態を小括する。
本実施形態の第1態様は、
複数の動作から構成されるタスクを実行するロボット30の動作に関する学習済モデルを生成する学習済モデル生成装置10であって、
ロボット30の複数の動作環境のそれぞれに関するセンサデータを取得する手段(例えば、ステップS113の処理を実行するプロセッサ12)を備え、
センサデータから、動作環境を表す特徴量を抽出する手段(例えば、ステップS114の処理を実行するプロセッサ12)を備え、
抽出された特徴量と、動作(例えば、コマンド)と、が関連付けられた学習用データセットを記憶する手段(例えば、ステップS115の処理を実行するプロセッサ12)を備え、
学習用データセットを参照して、動作環境及び動作の関係が規定された学習済モデルを生成する手段(例えば、ステップS117の処理を実行するプロセッサ12)を備える、
学習済モデル生成装置10である。
本実施形態の第2態様は、
動作環境は、動画、静止画、及び、音声の少なくとも1つである、
学習済モデル生成装置10である。
本実施形態の第3態様は、
センサデータを取得する手段は、センサからロボット30の物理量に関するセンサデータを取得する、
学習済モデル生成装置10である。
本実施形態の第4態様は、
センサデータは、センサ部にかかる力、ロボット30の各軸にかかるトルク、センサの接触面にかかる圧力、温度、及び、ロボット30の各軸を動かす際に生じた電圧の少なくとも1つを含む、
学習済モデル生成装置10である。
本実施形態の第5態様は、
タスクを識別するタスク識別情報と、学習用データセットと、を関連付けて記憶する手段(例えば、図8の学習用データセット)を備える、
学習済モデル生成装置10である。
本実施形態の第6態様は、
タスクを識別するタスク識別情報と、学習済モデルと、を関連付けて記憶する手段(例えば、ステップS117の処理を実行するプロセッサ12)を備える、
学習済モデル生成装置10である。
本実施形態の第7態様は、
学習用データセットは、タスクを構成する複数の子タスク毎に、特徴量と、動作と、が関連付けられており、
学習済モデルを生成する手段は、タスクに対応する上位ネットワークと、子タスクに対応する下位ネットワークと、に特徴量及び動作の組合せを入力することにより、学習済モデルを生成する、
学習済モデル生成装置10である。
本実施形態の第8態様は、
生成する手段は、学習用データセットに対して、RNN(Recurrent Neural Network)、LSTM(Long Short-Term Memory)、CNN(Convolution Neural Network)、又は、SVM(Support Vector Machine)を適用することにより、学習済モデルを生成する、
学習済モデル生成装置10である。
本実施形態の第9態様は、
上記の学習済モデル生成装置10によって生成された学習済モデルにアクセス可能なロボット制御装置50であって、
制御対象となるロボット30の動作環境に関するセンサデータを取得する手段を備え、
センサデータの特徴量を抽出する手段を備え、
抽出された特徴量を学習済モデルに入力することにより、動作環境に対応するコマンドを生成する手段を備え、
コマンドを制御対象ロボット70に送信することにより、制御対象ロボット70を動作させる手段を備える、
ロボット制御装置50である。
本実施形態の第10態様は、コンピュータ(例えば、プロセッサ12又は52)を、上記の何れかに記載の各手段として機能させるためのプログラムである。
(7)その他の変形例
その他の変形例を説明する。
記憶装置11は、ネットワークを介して、学習済モデル生成装置10と接続されてもよい。
記憶装置51は、ネットワークを介して、ロボット制御装置50と接続されてもよい。
学習済モデル生成装置10とロボット制御装置50は、同一の装置であっても良い(つまり、一体的に構成されても良い)。
学習済モデル生成処理(図9)において使用されるロボット30と、ロボット制御処理(図12)において使用される制御対象ロボット70は、同一のロボットであっても良いし、異なるロボットであっても良い。
ロボット30に対するユーザの動作命令を受け付ける方法は、図10の例に限られない。例えば、ロボット30と接続されたハプティクスデバイスに対するユーザの操作を介して、ロボット30に対して動作命令を与えても良い。
図1の例では、センサユニット20は、学習済モデル生成装置10と接続される例を示したが、これに限られない。センサユニット20は、ロボット30を介して、学習済モデル生成装置10と接続されても良い。この場合、学習済モデル生成装置10は、ロボット30を介して、センサデータを取得する。
なお、センサユニット20は、ロボット30に配置されても良い。
図1の例では、センサユニット20は、ロボット制御装置50と接続される例を示したが、これに限られない。センサユニット20は、制御対象ロボット70を介して、ロボット制御装置50と接続されても良い。この場合、ロボット制御装置50は、制御対象ロボット70を介して、センサデータを取得する。
なお、センサユニット20は、制御対象ロボット70に配置されても良い。
本実施形態では、特徴量の抽出(S152)及びコマンドの生成(S153)をロボット制御装置50が実行する例を示したが、ステップS152〜S153の実行主体はこれに限られない。制御対象ロボット70がステップS152〜S153を実行しても良い。この場合、制御対象ロボット70のプロセッサ72は、ステップS114(図9)と同様に、ステップS151において取得されたセンサデータの特徴量を抽出する。プロセッサ72は、記憶装置11に記憶された学習済モデルに当該特徴量を入力することにより、制御対象ロボット70の動作環境に対応する制御信号を生成する。
以上、本発明の実施形態について詳細に説明したが、本発明の範囲は上記の実施形態に限定されない。また、上記の実施形態は、本発明の主旨を逸脱しない範囲において、種々の改良や変更が可能である。また、上記の実施形態及び変形例は、組合せ可能である。
1 :情報処理システム
10 :学習済モデル生成装置
11 :記憶装置
12 :プロセッサ
13 :入出力インタフェース
14 :通信インタフェース
20 :センサユニット
20 :センサ
30 :ロボット
31 :記憶装置
32 :プロセッサ
34 :通信インタフェース
35 :駆動部
50 :ロボット制御装置
51 :記憶装置
52 :プロセッサ
53 :入出力インタフェース
54 :通信インタフェース
70 :制御対象ロボット
71 :記憶装置
72 :プロセッサ
74 :通信インタフェース
75 :駆動部

Claims (9)

  1. 複数の動作から構成されるタスクを実行するロボットの動作に関する学習済モデルを生成する学習済モデル生成装置であって、
    前記ロボットの複数の動作環境のそれぞれに関するセンサデータを取得する手段を備え、
    前記センサデータから、前記動作環境を表す特徴量を抽出する手段を備え、
    前記抽出された特徴量と、前記動作と、が関連付けられた学習用データセットを生成する手段を備え、
    前記学習用データセットは、前記タスクを構成する複数の子タスク毎に、前記特徴量と、前記動作と、が関連付けられており、
    前記タスクに対応する上位ネットワークと、前記子タスクに対応する下位ネットワークと、に前記特徴量及び前記動作の組合せを入力することにより、前記動作環境及び前記動作の関係が規定された学習済モデルを生成する手段を備える、
    学習済モデル生成装置。
  2. 前記動作環境を表す特徴量は、動画の画像特徴量、静止画の画像特徴量、及び、音声特徴量の少なくとも1つである、
    請求項1に記載の学習済モデル生成装置。
  3. 前記センサデータを取得する手段は、センサから前記ロボットの物理量に関するセンサデータを取得する、
    請求項1又は2に記載の学習済モデル生成装置。
  4. 前記センサデータは、前記センサかかる力、前記ロボットの各軸にかかるトルク、前記センサの接触面にかかる圧力、温度、及び、前記ロボットの各軸を動かす際に生じた電圧の少なくとも1つを含む、
    請求項3に記載の学習済モデル生成装置。
  5. 前記タスクを識別するタスク識別情報と、前記学習用データセットと、を関連付けて記憶する手段を備える、
    請求項1〜4の何れかに記載の学習済モデル生成装置。
  6. タスクを識別するタスク識別情報と、前記学習済モデルと、を関連付けて記憶する手段を備える、
    請求項1〜5の何れかに記載の学習済モデル生成装置。
  7. 前記生成する手段は、前記学習用データセットに対して、RNN(Recurrent Neural Network)、LSTM(Long Short-Term Memory)、CNN(Convolution Neural Network)、又は、SVM(Support Vector Machine)を適用することにより、前記学習済モデルを生成する、
    請求項1〜の何れかに記載の学習済モデル生成装置。
  8. 請求項1〜の何れかに記載の学習済モデル生成装置によって生成された学習済モデルにアクセス可能なロボット制御装置であって、
    制御対象となる制御対象ロボットの動作環境に関するセンサデータを取得する手段を備え、
    前記センサデータの特徴量を抽出する手段を備え、
    前記抽出された特徴量を前記学習済モデルに入力することにより、前記動作環境に対応するコマンドを生成する手段を備え、
    前記コマンドを前記制御対象ロボットに送信することにより、前記制御対象ロボットを動作させる手段を備える、
    ロボット制御装置。
  9. コンピュータを、請求項1〜の何れかに記載の各手段として機能させるためのプログラム。
JP2019005103A 2019-01-16 2019-01-16 学習済モデル生成装置、ロボット制御装置、及び、プログラム Active JP6632095B1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019005103A JP6632095B1 (ja) 2019-01-16 2019-01-16 学習済モデル生成装置、ロボット制御装置、及び、プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019005103A JP6632095B1 (ja) 2019-01-16 2019-01-16 学習済モデル生成装置、ロボット制御装置、及び、プログラム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2019220468A Division JP2020113262A (ja) 2019-12-05 2019-12-05 学習済モデル生成装置、ロボット制御装置、及び、プログラム

Publications (2)

Publication Number Publication Date
JP6632095B1 true JP6632095B1 (ja) 2020-01-15
JP2020110894A JP2020110894A (ja) 2020-07-27

Family

ID=69146624

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019005103A Active JP6632095B1 (ja) 2019-01-16 2019-01-16 学習済モデル生成装置、ロボット制御装置、及び、プログラム

Country Status (1)

Country Link
JP (1) JP6632095B1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022054847A1 (en) * 2020-09-08 2022-03-17 Sony Group Corporation Medical imaging apparatus, learning model generation method, and learning model generation program

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7492440B2 (ja) 2020-11-10 2024-05-29 株式会社日立製作所 ロボット制御システム、ロボット制御方法及びプログラム
KR102346900B1 (ko) * 2021-08-05 2022-01-04 주식회사 애자일소다 픽 앤 플레이스 시스템을 위한 심층 강화학습 장치 및 방법

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10124130A (ja) * 1996-10-15 1998-05-15 Ricoh Co Ltd 組立装置
US6445964B1 (en) * 1997-08-04 2002-09-03 Harris Corporation Virtual reality simulation-based training of telekinegenesis system for training sequential kinematic behavior of automated kinematic machine
JP6522488B2 (ja) * 2015-07-31 2019-05-29 ファナック株式会社 ワークの取り出し動作を学習する機械学習装置、ロボットシステムおよび機械学習方法
JP6951659B2 (ja) * 2017-05-09 2021-10-20 オムロン株式会社 タスク実行システム、タスク実行方法、並びにその学習装置及び学習方法
JP6886869B2 (ja) * 2017-06-09 2021-06-16 川崎重工業株式会社 動作予測システム及び動作予測方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022054847A1 (en) * 2020-09-08 2022-03-17 Sony Group Corporation Medical imaging apparatus, learning model generation method, and learning model generation program

Also Published As

Publication number Publication date
JP2020110894A (ja) 2020-07-27

Similar Documents

Publication Publication Date Title
JP6632095B1 (ja) 学習済モデル生成装置、ロボット制御装置、及び、プログラム
WO2017159614A1 (ja) 学習サービス提供装置
US20210205988A1 (en) Task embedding for device control
Koenig et al. Robot life-long task learning from human demonstrations: a Bayesian approach
CN106660209B (zh) 智能机器人控制系统、方法及智能机器人
JP6671694B1 (ja) 機械学習装置、機械学習システム、データ処理システム及び機械学習方法
TWI802820B (zh) 機器人控制裝置、方法和儲存媒體
CN109605370A (zh) 机器人的控制方法及装置、机器人的控制系统
CN114516060A (zh) 用于控制机器人装置的设备和方法
EP3853765A1 (en) Training a deep neural network model to generate rich object-centric embeddings of robotic vision data
JP2020113262A (ja) 学習済モデル生成装置、ロボット制御装置、及び、プログラム
JPH11250030A (ja) 進化型アルゴリズム実行システムおよびそのプログラム記録媒体
JP7452657B2 (ja) 制御装置、制御方法及びプログラム
US20220188632A1 (en) Evolutionary Imitation Learning
JP2019171498A (ja) ロボットプログラム実行装置、ロボットプログラム実行方法、プログラム
US20110307893A1 (en) Role-based automation scripts
Zhang et al. Action chaining by a developmental robot with a value system
KR102469149B1 (ko) 3차원 설계데이터 기반 실물 객체 다방향 인식시스템 및 그 방법
Naughton et al. Structured action prediction for teleoperation in open worlds
Kasper et al. Abstracting perception and manipulation in end-user robot programming using Sikuli
WO2022239310A1 (ja) 情報処理装置、および情報処理方法、並びにプログラム
WO2022270319A1 (ja) 動作データ管理システム、動作データ管理方法、及びプログラム
WO2022085339A1 (ja) 動作計画装置、動作計画方法、及び動作計画プログラム
JP7162581B2 (ja) 学習方法及び制御装置
EP4318327A1 (en) Learning type-generalized skills for symbolic planning for autonomous devices

Legal Events

Date Code Title Description
A80 Written request to apply exceptions to lack of novelty of invention

Free format text: JAPANESE INTERMEDIATE CODE: A80

Effective date: 20190214

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190523

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20190523

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20190614

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190924

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20191008

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20191018

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: 20191112

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20191206

R150 Certificate of patent or registration of utility model

Ref document number: 6632095

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250