JP2019030941A - 制御装置及び学習装置 - Google Patents

制御装置及び学習装置 Download PDF

Info

Publication number
JP2019030941A
JP2019030941A JP2017153684A JP2017153684A JP2019030941A JP 2019030941 A JP2019030941 A JP 2019030941A JP 2017153684 A JP2017153684 A JP 2017153684A JP 2017153684 A JP2017153684 A JP 2017153684A JP 2019030941 A JP2019030941 A JP 2019030941A
Authority
JP
Japan
Prior art keywords
robot
state
learning
person
control 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.)
Granted
Application number
JP2017153684A
Other languages
English (en)
Other versions
JP6680730B2 (ja
Inventor
哲郎 松平
Tetsuo Matsudaira
哲郎 松平
井上 周
Shu Inoue
周 井上
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.)
Fanuc Corp
Original Assignee
Fanuc Corp
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 Fanuc Corp filed Critical Fanuc Corp
Priority to JP2017153684A priority Critical patent/JP6680730B2/ja
Priority to US16/055,650 priority patent/US10953538B2/en
Priority to DE102018006248.2A priority patent/DE102018006248A1/de
Priority to CN201810896937.XA priority patent/CN109382825B/zh
Publication of JP2019030941A publication Critical patent/JP2019030941A/ja
Application granted granted Critical
Publication of JP6680730B2 publication Critical patent/JP6680730B2/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/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
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • B25J13/085Force or torque sensors
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/06Safety devices
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1674Programme controls characterised by safety, monitoring, diagnostic
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1674Programme controls characterised by safety, monitoring, diagnostic
    • B25J9/1676Avoiding collision or forbidden zones
    • 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/40198Contact with human allowed if under pain tolerance limit

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Human Computer Interaction (AREA)
  • Manipulator (AREA)
  • Feedback Control In General (AREA)

Abstract

【課題】人が接近した場合にロボットの動作を最適化することができる制御装置及び学習装置を提供する。【解決手段】ロボットへの指令を出力する制御装置1は、ロボットへの指令を学習する機械学習装置100を備え、機械学習装置100は、ロボットの状態及び前記ロボットの周辺領域に存在する人の状態を、環境の現在状態を表す状態変数として観測する状態観測部106と、ロボットと人との干渉の状態を示す判定データを取得する判定データ取得部108と、状態変数と判定データとを用いて、ロボットの状態及びロボットの周辺領域に存在する人の状態と、ロボットへの指令とを関連付けて学習する学習部110と、を備えることを特徴とする。【選択図】図1

Description

本発明は制御装置及び学習装置に関し、特に人が接近した場合にロボットの動作を最適化することができる制御装置及び学習装置に関する。
従来の制御装置は、ロボットの作業エリアに人が立ち入ると、ロボットが人にぶつからないよう、ロボットの動作を停止するか、安全速度に移行して動作を続行する制御を行う。例えば特許文献1には、ロボットと人間が接触したことを力センサにより検出し、課題な力の発生を防止する制御を行う技術が記載されている。
特開2012−040626号公報
しかしながら、従来のような制御によれば、ロボットの作業エリアに人が立ち入った場合にロボットの生産性は低下してしまう。そのような場合においても、例えば人にぶつからないようにロボットの軌道を変更したり、人にぶつかる恐れがなければ速度を落とさないようにするなどして、安全かつ効率良くロボットが作業を続けることができれば、生産性の低下は抑制できるはずである。
本発明はこのような問題点を解決するためになされたものであって、人が接近した場合にロボットの動作を最適化することができる制御装置及び学習装置を提供することを目的とする。
本発明の一実施の形態にかかる制御装置は、ロボットへの指令を出力する制御装置であって、前記ロボットへの指令を学習する機械学習装置を備え、前記機械学習装置は、前記ロボットの状態及び前記ロボットの周辺領域に存在する人の状態を、環境の現在状態を表す状態変数として観測する状態観測部と、前記ロボットと前記人との干渉の状態を示す判定データを取得する判定データ取得部と、前記状態変数と前記判定データとを用いて、前記ロボットの状態及び前記ロボットの周辺領域に存在する人の状態と、前記ロボットへの指令とを関連付けて学習する学習部と、を備えることを特徴とする。
本発明の一実施の形態にかかる制御装置は、前記状態変数は、前記ロボットの状態を示すデータとして、前記ロボットのマニピュレータの姿勢及び移動速度を含み、前記人の状態を示すデータとして、前記人の侵入方向及び動線を含むことを特徴とする。
本発明の一実施の形態にかかる制御装置は、前記判定データは、ロボットと人との衝突の有無、ロボットと人との相対距離、衝突時の力の大きさ、スループットのうち少なくともいずれか1つを含むことを特徴とする。
本発明の一実施の形態にかかる制御装置は、前記学習部は、前記ロボットと前記人との干渉の状態に関連する報酬を求める報酬計算部と、前記報酬を用いて、前記ロボットの状態及び前記ロボットの周辺領域に存在する前記人の状態に対する前記ロボットへの指令の価値を表す関数を更新する価値関数更新部とを備えることを特徴とする。
本発明の一実施の形態にかかる制御装置は、前記学習部は、前記状態変数と前記判定データとを多層構造で演算することを特徴とする。
本発明の一実施の形態にかかる制御装置は、前記学習部による学習結果に基づいて、前記ロボットへの指令を示す指令値を出力する意思決定部を更に備えることを特徴とする。
本発明の一実施の形態にかかる制御装置は、前記学習部は、複数のロボットから得られた前記状態変数及び前記判定データを用いて、前記ロボットへの指令を学習することを特徴とする。
本発明の一実施の形態にかかる制御装置は、前記機械学習装置は、クラウドサーバに存在することを特徴とする。
本発明の一実施の形態にかかる学習装置は、ロボットへの指令を学習する学習装置であって、前記ロボットの状態及び前記ロボットの周辺領域に存在する人の状態を、環境の現在状態を表す状態変数として観測する状態観測部と、前記ロボットと前記人との干渉の状態を示す判定データを取得する判定データ取得部と、前記状態変数と前記判定データとを用いて、前記ロボットの状態及び前記ロボットの周辺領域に存在する人の状態と、前記ロボットへの指令とを関連付けて学習する学習部と、を備えることを特徴とする。
本発明によれば、人が接近した場合にロボットの動作を最適化することができる制御装置及び学習装置を提供することができる。
制御装置1の一形態を示す概略的な機能ブロック図である。 制御装置1の一形態を示す概略的な機能ブロック図である。 機械学習方法の一形態を示すフローチャートである。 機械学習方法の一形態を示すフローチャートである。 機械学習方法の一形態を示すフローチャートである。 ニューロンを説明する図である。 ニューラルネットワークを説明する図である。 制御装置2の一形態を示す概略的な機能ブロック図である。 制御装置を組み込んだシステム170の一形態を示す概略的な機能ブロック図である。 制御装置を組み込んだシステム170’の一形態を示す概略的な機能ブロック図である。
<実施の形態1>
以下、本発明の実施の形態を図面を用いて説明する。本発明の実施の形態にかかる制御装置1は、作業を行っているロボットに人が接近した場合におけるロボットへの指令を最適化することを特徴とする。ロボットへの指令には、例えば速度の選択に関するもの(速度継続、減速、停止)及び軌道の選択に関するもの(目的地までの軌道、右回り又は左回りの別)が含まれる。本実施の形態の制御装置1は、ロボットへの指令を最適化する手段として機械学習を利用する。
なお本実施の形態にかかる制御装置1は、人がぶつかったり接近したりするときに、減速したり停止したりすることが可能なロボットを制御対象とするものとする。例えば、協働ロボット(人に危害を加えないように出力を絞ったロボット)が含まれる。ロボットは移動ロボットでも良く、自ら移動は行わないマニピュレータでも良い。
図1のブロック図を用いて、制御装置1の構成について説明する。制御装置1は、機械学習装置100を含む。機械学習装置100は、ロボットの状態及びロボットの周辺領域に存在する人の状態に対する、ロボットへの指令を、いわゆる機械学習により自ら学習するためのソフトウェア(学習アルゴリズム等)及びハードウェア(プロセッサ等)を含む。この場合、制御装置1が備える機械学習装置100が学習するものは、ロボットの状態及びロボットの周辺領域に存在する人の状態と、ロボットへの指令との、相関性を表すモデル構造に相当する。
図1に機能ブロックで示すように、制御装置1が備える機械学習装置100は、ロボットの状態及びロボットの周辺領域に存在する人の状態を環境の現在状態を表す状態変数Sとして観測する状態観測部106と、ロボットと人との干渉の状態とを判定データDとして取得する判定データ取得部108と、状態変数Sと判定データDとを用いて、ロボットの状態及びロボットの周辺領域に存在する人の状態と、ロボットへの指令とを関連付けて学習する学習部110とを備える。
状態観測部106は、例えば制御装置1が備えるプロセッサの一機能として構成できる。或いは状態観測部106は、例えばプロセッサを機能させるためのソフトウェアとして構成できる。
状態変数Sのうちロボットの状態とは、動作中のロボットの状態を示すデータであって、ロボットのマニピュレータの姿勢(間接の角度の組合せ)、移動速度が含まれる。加えて、ロボットの位置、搬送ワークの位置等が含まれ得る。これらはいずれも制御装置1がロボット内部のセンサ等より直接観測可能なデータである。制御装置1は例えば制御周期毎にこれらのデータを取得し、状態観測部106に入力することができる。あるいは、所定の時間にわたって一定時間毎にこれらのデータを取得し、その時系列データのセットを状態変数Sとして入力しても良い。
状態変数Sのうちロボットの周辺領域に存在する人の状態とは、ロボットの作業領域(又はロボットの作業領域を含む任意の領域)内に存在する人の状態を示すデータであって、例えば作業領域に侵入した人の侵入方向(どこから侵入したか)、動線(どのようなルートで移動したか)が含まれる。加えて、人の位置、速度、外観(着衣の種類(作業着か背広か等)、帽子の色、装具の種類、顔、IDの記載事項等)、持ち物(工具の種類、運搬中のワークの種類等)等が含まれ得る。制御装置1は、例えば図示しないビジョンセンサを使って作業領域内を撮影し、撮影画像に基づいて人をトラッキングして侵入方向や導線を特定したり、外観、持ち物を認識したりすることができる。なお画像に基づく認識処理は公知技術であるのでここでは詳細な説明を省略する。又は制御装置1は、例えば図示しないエリアセンサや圧電マット等を使って、人の侵入方向(どこから侵入したか)、動線(どのようなルートで移動したか)、位置、速度を検出しても良い。制御装置1は例えば制御周期毎にこれらのデータを取得し、状態観測部106に入力することができる。あるいは、所定の時間にわたって一定時間毎にこれらのデータを取得し、その時系列データのセットを状態変数Sとして入力しても良い。
ここで、人の外観に関するデータを使用するのは、人の外観と、その人が特定の機械に近づく可能性との間に相関が存在する可能性があるからである。外観には、その人の役職、役割、作業内容などが反映されている場合が多い。例えばラインの担当者、管理者、部外者は外観により区別され得る。そして、人の役職とその人の動きとの間には関連があり、例えばライン担当者は特定の機械に近づく可能性が高い等の相関関係が成立することがある。
判定データ取得部108は、例えば制御装置1のプロセッサの一機能として構成できる。或いは判定データ取得部108は、例えばプロセッサを機能させるためのソフトウェアとして構成できる。
判定データDであるロボットと人との干渉の状態とは、例えばロボットと人とが衝突したか否か、衝突時の力の大きさ、ロボットと人との相対距離を示すデータである。衝突の有無及び衝突時の力の大きさは、制御装置1が力センサなどを用いて観測可能なデータである。ロボットと人との相対距離は、制御装置1が図示しないビジョンセンサを使って作業領域内を撮影し、撮影画像に基づいて特定することが可能である。なお画像自動解析による物体認識及び物体間の距離推定処理は公知技術であるのでここでは詳細な説明を省略する。制御装置1は制御周期毎にこれらのデータを取得し、判定データ取得部108に入力することができる。あるいは、所定の時間にわたって一定時間毎にこれらのデータを取得し、その時系列データのセットを判定データDとして入力しても良い。
学習部110に対して入力される状態変数Sは、学習部110による学習周期で考えた場合、判定データDが取得された1学習周期前のデータに基づくものとなる。すなわち、制御装置1が備える機械学習装置100が学習を進める間、環境においては、状態変数Sの取得、状態変数Sに基づいて調整されたロボットへの指令(軌道、速度)の出力、判定データDの取得が繰り返し実施される。
学習部110は、例えば制御装置1のプロセッサの一機能として構成できる。或いは学習部110は、例えばプロセッサを機能させるためのソフトウェアとして構成できる。学習部110は、機械学習と総称される任意の学習アルゴリズムに従い、ロボットの状態及びロボットの周辺領域に存在する人の状態に対応する、ロボットへの指令を学習する。学習部110は、状態変数Sと判定データDとを含むデータ集合に基づく学習を、制御周期毎に、又は任意の時間毎に反復実行することができる。
このような学習サイクルを繰り返すことにより、ロボットの状態及びロボットの周辺領域に存在する人の状態を示す状態変数Sと、ロボットへの指令との相関性を暗示する特徴を自動的に識別することができる。学習アルゴリズムの開始時には状態変数Sとロボットへの指令との相関性は実質的に未知であるが、学習部110は、学習を進めるに従い徐々に特徴を識別して相関性を解釈する。状態変数Sとロボットへの指令との相関性が、ある程度信頼できる水準まで解釈されると、学習部110が反復出力する学習結果は、現在状態(つまりロボットの状態及びロボットの周辺領域に存在する人の状態)に対して、ロボットへの指令をどのような値とするべきかという行動の選択(つまり意思決定)を行うために使用できるものとなる。
上記したように、制御装置1が備える機械学習装置100は、状態観測部106が観測した状態変数Sと判定データ取得部108が取得した判定データDとを用いて、学習部110が機械学習アルゴリズムに従い、ロボットへの指令を学習するものである。状態変数Sは、ロボットの状態及びロボットの周辺領域に存在する人の状態といった、外乱の影響を受け難いデータで構成され、また判定データDは、ロボットと人との干渉の状態を取得することにより一義的に求められる。したがって、制御装置1が備える機械学習装置100によれば、ロボットの状態及びロボットの周辺領域に存在する人の状態に応じたロボットへの指令を、演算や目算によらずに自動的に、しかも正確に求めることができるようになる。
そして、ロボットへの指令を、演算や目算によらずに自動的に求めることができれば、ロボットの状態及びロボットの周辺領域に存在する人の状態を把握するだけで、ロボットへの指令の適切な値を迅速に決定することができる。したがって、ロボットへの指令を効率よく決定することができる。
上記構成を有する機械学習装置100では、学習部110が実行する学習アルゴリズムは特に限定されず、機械学習として公知の学習アルゴリズムを採用できる。図2は、図1に示す制御装置1の一形態であって、学習アルゴリズムの一例として強化学習を実行する学習部110を備えた構成を示す。強化学習は、学習対象が存在する環境の現在状態(つまり入力)を観測するとともに現在状態で所定の行動(つまり出力)を実行し、その行動に対し何らかの報酬を与えるというサイクルを試行錯誤的に反復して、報酬の総計が最大化されるような方策(本願の機械学習装置ではロボットへの指令の決定)を最適解として学習する手法である。
図2に示す制御装置1が備える機械学習装置100において、学習部110は、状態変数Sに基づいてロボットへの指令が決定された場合におけるロボットと人との干渉の状態(状態変数Sが取得された次の学習周期で用いられる判定データDに相当)に関連する報酬Rを求める報酬計算部112と、報酬Rを用いて、ロボットへの指令の価値を表す関数Qを更新する価値関数更新部114とを備える。学習部110は、価値関数更新部114が関数Qの更新を繰り返すことによってロボットへの指令の最適解を学習する。
学習部110が実行する強化学習のアルゴリズムの一例を説明する。この例によるアルゴリズムは、Q学習(Q−learning)として知られるものであって、行動主体の状態sと、その状態sで行動主体が選択し得る行動aとを独立変数として、状態sで行動aを選択した場合の行動の価値を表す関数Q(s,a)を学習する手法である。状態sで価値関数Qが最も高くなる行動aを選択することが最適解となる。状態sと行動aとの相関性が未知の状態でQ学習を開始し、任意の状態sで種々の行動aを選択する試行錯誤を繰り返すことで、価値関数Qを反復して更新し、最適解に近付ける。ここで、状態sで行動aを選択した結果として環境(つまり状態s)が変化したときに、その変化に応じた報酬(つまり行動aの重み付け)rが得られるように構成し、より高い報酬rが得られる行動aを選択するように学習を誘導することで、価値関数Qを比較的短時間で最適解に近付けることができる。
価値関数Qの更新式は、一般に下記の数1式のように表すことができる。数1式において、s及びaはそれぞれ時刻tにおける状態及び行動であり、行動aにより状態はst+1に変化する。rt+1は、状態がsからst+1に変化したことで得られる報酬である。maxQの項は、時刻t+1で最大の価値Qになる(と時刻tで考えられている)行動aを行ったときのQを意味する。α及びγはそれぞれ学習係数及び割引率であり、0<α≦1、0<γ≦1で任意設定される。
Figure 2019030941
学習部110がQ学習を実行する場合、状態観測部106が観測した状態変数S及び判定データ取得部108が取得した判定データDは、更新式の状態sに該当し、現在状態(つまりロボットの状態及びロボットの周辺領域に存在する人の状態に対するロボットへの指令をどのように決定するべきかという行動は、更新式の行動aに該当し、報酬計算部112が求める報酬Rは、更新式の報酬rに該当する。よって価値関数更新部114は、現在状態に対するロボットへの指令の出力の価値を表す関数Qを、報酬Rを用いたQ学習により繰り返し更新する。
報酬計算部112が求める報酬Rは、例えば、ロボットへの指令の出力を決定した後に、決定した指令に基づくロボットの制御を行ったときに、ロボットと人とが干渉しないと判定される場合に正(プラス)の報酬Rとし、ロボットと人とが干渉した又は干渉する恐れがあったと判定される場合に負(マイナス)の報酬Rとすることができる。
例えば、ロボットと人とが衝突した場合には−10、ロボットと人とが所定の距離よりも近づいた場合には−5、ロボットと人とが所定の距離以上離れていた場合は+5などと報酬Rを設定できる。これにより、関数Qは、ロボットと人とが干渉しにくい指令ほど価値が大きいと評価するようになる。加えて、報酬計算部112は、衝突時の力の大きさが上昇するほど評価が低くなるような報酬Rを与えることとしても良い。これにより、関数Qは、衝突時の衝撃が小さい指令ほど価値が大きいと評価するようになる。加えて、報酬計算部112は、ロボットのスループットが上昇するほど大きくなるような報酬Rを与えることとしても良い。これにより、関数Qは、ロボットと人とが干渉しにくく、かつスループットの高い指令ほど価値が大きいと評価するようになる。(図4A、図4B参照)
価値関数更新部114は、状態変数Sと判定データDと報酬Rとを、関数Qで表される行動価値(例えば数値)と関連付けて整理した行動価値テーブルを持つことができる。この場合、価値関数更新部114が関数Qを更新するという行為は、価値関数更新部114が行動価値テーブルを更新するという行為と同義である。Q学習の開始時には環境の現在状態とロボットへの指令との相関性は未知であるから、行動価値テーブルにおいては、種々の状態変数Sと判定データDと報酬Rとが、無作為に定めた行動価値の値(関数Q)と関連付けた形態で用意されている。なお報酬計算部112は、判定データDが分かればこれに対応する報酬Rを直ちに算出でき、算出した値Rが行動価値テーブルに書き込まれる。
ロボットと人との干渉の状態に応じた報酬Rを用いてQ学習を進めると、より高い報酬Rが得られる行動を選択する方向へ学習が誘導され、選択した行動を現在状態で実行した結果として変化する環境の状態(つまり状態変数S及び判定データD)に応じて、現在状態で行う行動についての行動価値の値(関数Q)が書き換えられて行動価値テーブルが更新される。この更新を繰り返すことにより、行動価値テーブルに表示される行動価値の値(関数Q)は、適正な行動ほど大きな値となるように書き換えられる。このようにして、未知であった環境の現在状態(ロボットの状態及びロボットの周辺領域に存在する人の状態)とそれに対する行動(ロボットへの指令)との相関性が徐々に明らかになる。つまり行動価値テーブルの更新により、ロボットの状態及びロボットの周辺領域に存在する人の状態と、ロボットへの指令との関係が最適解に徐々に近づけられる。
図3を参照して、学習部110が実行する上記したQ学習のフロー(つまり機械学習方法の一形態)をさらに説明する。まずステップSA01で、価値関数更新部114は、その時点での行動価値テーブルを参照しながら、状態観測部106が観測した状態変数Sが示す現在状態で行う行動としてロボットへの指令を無作為(ランダム)に選択する。次に価値関数更新部114は、ステップSA02で、状態観測部106が観測している現在状態の状態変数Sを取り込み、ステップSA03で、判定データ取得部108が取得している現在状態の判定データDを取り込む。次に価値関数更新部114は、ステップSA04で、判定データDに基づき、ロボットへの指令が適当であったか否かを判断し、適当であった場合、ステップSA05で、報酬計算部112が求めた正の報酬Rを関数Qの更新式に適用し、次いでステップSA06で、現在状態における状態変数S及び判定データDと報酬Rと行動価値の値(更新後の関数Q)とを用いて行動価値テーブルを更新する。ステップSA04で、ロボットへの指令が適当でなかったと判断した場合、ステップSA07で、報酬計算部112が求めた負の報酬Rを関数Qの更新式に適用し、次いでステップSA06で、現在状態における状態変数S及び判定データDと報酬Rと行動価値の値(更新後の関数Q)とを用いて行動価値テーブルを更新する。学習部110は、ステップSA01〜SA07を繰り返すことで行動価値テーブルを反復して更新し、ロボットへの指令の最適解の学習を進行させる。なお、ステップSA04からステップSA07までの報酬Rを求める処理及び価値関数の更新処理は、判定データDに含まれるそれぞれのデータについて実行される。
強化学習を進める際に、例えばQ学習の代わりに、ニューラルネットワークを用いることもできる。図5Aは、ニューロンのモデルを模式的に示す。図5Bは、図5Aに示すニューロンを組み合わせて構成した三層のニューラルネットワークのモデルを模式的に示す。ニューラルネットワークは、例えば、ニューロンのモデルを模した演算装置や記憶装置等によって構成できる。
図5Aに示すニューロンは、複数の入力x(ここでは一例として、入力x〜入力x)に対する結果yを出力するものである。各入力x〜xには、この入力xに対応する重みw(w〜w)が掛けられる。これにより、ニューロンは、次の数2式により表現される出力yを出力する。なお、数2式において、入力x、出力y及び重みwは、すべてベクトルである。また、θはバイアスであり、fは活性化関数である。
Figure 2019030941
図5Bに示す三層のニューラルネットワークは、左側から複数の入力x(ここでは一例として、入力x1〜入力x3)が入力され、右側から結果y(ここでは一例として、結果y1〜結果y3)が出力される。図示の例では、入力x1、x2、x3のそれぞれに対応の重み(総称してw1で表す)が乗算されて、個々の入力x1、x2、x3がいずれも3つのニューロンN11、N12、N13に入力されている。
図5Bでは、ニューロンN11〜N13の各々の出力を、総称してz1で表す。z1は、入カベクトルの特徴量を抽出した特徴ベクトルと見なすことができる。図示の例では、特徴ベクトルz1のそれぞれに対応の重み(総称してw2で表す)が乗算されて、個々の特徴ベクトルz1がいずれも2つのニューロンN21、N22に入力されている。特徴ベクトルz1は、重みW1と重みW2との間の特徴を表す。
図5Bでは、ニューロンN21〜N22の各々の出力を、総称してz2で表す。z2は、特徴ベクトルz1の特徴量を抽出した特徴ベクトルと見なすことができる。図示の例では、特徴ベクトルz2のそれぞれに対応の重み(総称してw3で表す)が乗算されて、個々の特徴ベクトルz2がいずれも3つのニューロンN31、N32、N33に入力されている。特徴ベクトルz2は、重みW2と重みW3との間の特徴を表す。最後にニューロンN31〜N33は、それぞれ結果y1〜y3を出力する。
なお、三層以上の層を為すニューラルネットワークを用いた、いわゆるディープラーニングの手法を用いることも可能である。
制御装置1が備える機械学習装置100においては、状態変数Sと判定データDとを入力xとして、学習部110が上記したニューラルネットワークに従う多層構造の演算を行うことで、ロボットへの指令(結果y)を出力することができる。また、制御装置1が備える機械学習装置100においては、ニューラルネットワークを強化学習における価値関数として用い、状態変数Sと行動aとを入力xとして、学習部110が上記したニューラルネットワークに従う多層構造の演算を行うことで、当該状態における当該行動の価値(結果y)を出力することもできる。なお、ニューラルネットワークの動作モードには、学習モードと価値予測モードとがあり、例えば学習モードで学習データセットを用いて重みwを学習し、学習した重みwを用いて価値予測モードで行動の価値判断を行うことができる。なお価値予測モードでは、検出、分類、推論等を行うこともできる。
上記した制御装置1の構成は、プロセッサ101が実行する機械学習方法(或いはソフトウェア)として記述できる。この機械学習方法は、ロボットへの指令を学習する機械学習方法であって、コンピュータのCPUが、ロボットの状態及びロボットの周辺領域に存在する人の状態を、環境の現在状態を表す状態変数Sとして観測するステップと、調整されたロボットへの指令に応じて得られたロボットと人との干渉の状態を示す判定データDを取得するステップと、状態変数Sと判定データDとを用いて、ロボットの状態及びロボットの周辺領域に存在する人の状態と、ロボットへの指令とを関連付けて学習するステップとを有する。
<実施の形態2>
図6は、実施の形態2による制御装置2を示す。制御装置2は、機械学習装置120と、状態観測部106が観測する状態変数Sであるロボットの状態及びロボットの周辺領域に存在する人の状態を、状態データS0として取得する状態データ取得部3とを備える。状態データ取得部3は、制御装置2から状態データS0を取得することができる。
制御装置2が有する機械学習装置120は、ロボットへの指令を機械学習により自ら学習するためのソフトウェア(学習アルゴリズム等)及びハードウェア(プロセッサ101等)に加えて、学習結果に基づいて求めたロボットへの指令を制御装置2に出力するためのソフトウェア(演算アルゴリズム等)及びハードウェア(プロセッサ101等)を含むものである。制御装置2が含む機械学習装置120は、1つの共通のプロセッサが、学習アルゴリズム、演算アルゴリズム等の全てのソフトウェアを実行する構成を有することもできる。
意思決定部122は、例えば制御装置2が備えるプロセッサの一機能として構成できる。或いは意思決定部122は、例えばプロセッサを機能させるためのソフトウェアとして構成できる。意思決定部122は、学習部110が学習した結果に基づいて、ロボットの状態及びロボットの周辺領域に存在する人の状態に対する、ロボットへの指令を含む指令値Cを生成し、出力する。意思決定部122が指令値Cを制御装置2に対して出力した場合、これに応じて、環境の状態が変化する。
状態観測部106は、意思決定部122による環境への指令値Cを出力した後に変化した状態変数Sを次の学習周期において観測する。学習部110は、変化した状態変数Sを用いて、例えば価値関数Q(すなわち行動価値テーブル)を更新することで、ロボットへの指令を学習する。
意思決定部122は、学習結果に基づいて求めたロボットへの指令を示す指令値Cを制御装置2へと出力する。この学習周期を繰り返すことにより、機械学習装置120はロボットへの指令の学習を進め、自身が決定するロボットへの指令の信頼性を徐々に向上させる。
上記構成を有する制御装置2が備える機械学習装置120は、前述した機械学習装置100と同等の効果を奏する。特に機械学習装置120は、意思決定部122の出力によって環境の状態を変化させることができる。他方、機械学習装置100では、学習部110の学習結果を環境に反映させるための意思決定部に相当する機能を、外部装置に求めることができる。
<その他の実施の形態>
図7は、ロボット160を備えた一実施形態によるシステム170を示す。システム170は、同種の構成を有する複数のロボット160、160’と、それらロボット160、160’を互いに接続する有線/無線のネットワーク172とを備え、複数のロボット160のうち少なくとも1つが、上記した制御装置2を備えるロボット160として構成される。またシステム170は、制御装置2を備えないロボット160’を含むことができる。ロボット160、160’は、同じ目的の作業に必要とされる機構及び作業領域など周辺環境を有する。
上記構成を有するシステム170は、複数のロボット160、160’のうちで制御装置2を備えるロボット160が、学習部110の学習結果を用いて、ロボットの状態及びロボットの周辺領域に存在する人の状態に対する、ロボットへの指令を、演算や目算によらずに自動的に、しかも正確に求めることができる。また、少なくとも1つのロボット160の制御装置2が、他の複数のロボット160、160’のそれぞれについて得られた状態変数S及び判定データDに基づき、全てのロボット160、160’に共通するロボットへの指令を学習し、その学習結果を全てのロボット160、160’が共有するように構成できる。したがってシステム170によれば、より多様なデータ集合(状態変数S及び判定データDを含む)を入力として、ロボットへの指令の学習の速度や信頼性を向上させることができる。
図8は、ロボット160’を備えた他の実施形態によるシステム170’を示す。システム170’は、機械学習装置120(又は100)と、同種の構成を有する複数のロボット160’と、それらロボット160’と機械学習装置120(又は100)とを互いに接続する有線/無線のネットワーク172とを備える。
上記構成を有するシステム170’は、機械学習装置120(又は100)が、複数のロボット160’のそれぞれについて得られた状態変数S及び判定データDに基づき、全てのロボット160’に共通するロボットの状態及びロボットの周辺領域に存在する人の状態に対するロボットへの指令を学習し、その学習結果を用いて、ロボットの状態及びロボットの周辺領域に存在する人の状態に対するロボットへの指令を、演算や目算によらずに自動的に、しかも正確に求めることができる。
システム170’は、機械学習装置120(又は100)が、ネットワーク172に用意されたクラウドサーバ等に存在する構成を有することができる。この構成によれば、複数のロボット160’のそれぞれが存在する場所や時期に関わらず、必要なときに必要な数のロボット160’を機械学習装置120(又は100)に接続することができる。
システム170、170’に従事する作業者は、機械学習装置120(又は100)による学習開始後の適当な時期に、機械学習装置120(又は100)によるロボットへの指令の学習の到達度(すなわちロボットへの指令の信頼性)が要求レベルに達したか否かの判断を実行することができる。
以上、本発明の実施の形態について説明したが、本発明は上述した実施の形態の例のみに限定されることなく、適宜の変更を加えることにより様々な態様で実施することができる。
例えば、機械学習装置100,120が実行する学習アルゴリズム、機械学習装置120が実行する演算アルゴリズム、制御装置1、2が実行する制御アルゴリズム等は、上述したものに限定されず、様々なアルゴリズムを採用できる。
また、上記した実施形態では制御装置1(又は2)と機械学習装置100(又は120)が異なるCPUを有する装置として説明しているが、機械学習装置100(又は120)は制御装置1(又は2)が備えるプロセッサと、記憶装置に記憶されるシステム・プログラムにより実現するようにしても良い。
1,2 制御装置
3 状態データ取得部
100 機械学習装置
106 状態観測部
108 判定データ取得部
110 学習部
112 報酬計算部
114 価値関数更新部
120 機械学習装置
122 意思決定部
160,160’ ロボット
170,170’ システム
172 ネットワーク

Claims (9)

  1. ロボットへの指令を出力する制御装置であって、
    前記ロボットへの指令を学習する機械学習装置を備え、
    前記機械学習装置は、
    前記ロボットの状態及び前記ロボットの周辺領域に存在する人の状態を、環境の現在状態を表す状態変数として観測する状態観測部と、
    前記ロボットと前記人との干渉の状態を示す判定データを取得する判定データ取得部と、
    前記状態変数と前記判定データとを用いて、前記ロボットの状態及び前記ロボットの周辺領域に存在する人の状態と、前記ロボットへの指令とを関連付けて学習する学習部と、を備えることを特徴とする
    制御装置。
  2. 前記状態変数は、前記ロボットの状態を示すデータとして、前記ロボットのマニピュレータの姿勢及び移動速度を含み、前記人の状態を示すデータとして、前記人の侵入方向及び動線を含むことを特徴とする
    請求項1記載の制御装置。
  3. 前記判定データは、ロボットと人との衝突の有無、ロボットと人との相対距離、衝突時の力の大きさ、スループットのうち少なくともいずれか1つを含むことを特徴とする
    請求項1に記載の制御装置。
  4. 前記学習部は、
    前記ロボットと前記人との干渉の状態に関連する報酬を求める報酬計算部と、
    前記報酬を用いて、前記ロボットの状態及び前記ロボットの周辺領域に存在する前記人の状態に対する前記ロボットへの指令の価値を表す関数を更新する価値関数更新部とを備えることを特徴とする
    請求項1記載の制御装置。
  5. 前記学習部は、前記状態変数と前記判定データとを多層構造で演算することを特徴とする
    請求項1記載の制御装置。
  6. 前記学習部による学習結果に基づいて、前記ロボットへの指令を示す指令値を出力する意思決定部を更に備えることを特徴とする
    請求項1記載の制御装置。
  7. 前記学習部は、複数のロボットから得られた前記状態変数及び前記判定データを用いて、前記ロボットへの指令を学習することを特徴とする
    請求項1記載の制御装置。
  8. 前記機械学習装置は、クラウドサーバに存在することを特徴とする
    請求項1記載の制御装置。
  9. ロボットへの指令を学習する学習装置であって、
    前記ロボットの状態及び前記ロボットの周辺領域に存在する人の状態を、環境の現在状態を表す状態変数として観測する状態観測部と、
    前記ロボットと前記人との干渉の状態を示す判定データを取得する判定データ取得部と、
    前記状態変数と前記判定データとを用いて、前記ロボットの状態及び前記ロボットの周辺領域に存在する人の状態と、前記ロボットへの指令とを関連付けて学習する学習部と、を備えることを特徴とする
    学習装置。
JP2017153684A 2017-08-08 2017-08-08 制御装置及び学習装置 Active JP6680730B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2017153684A JP6680730B2 (ja) 2017-08-08 2017-08-08 制御装置及び学習装置
US16/055,650 US10953538B2 (en) 2017-08-08 2018-08-06 Control device and learning device
DE102018006248.2A DE102018006248A1 (de) 2017-08-08 2018-08-07 Steuervorrichtung und Lernvorrichtung
CN201810896937.XA CN109382825B (zh) 2017-08-08 2018-08-08 控制装置以及学习装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017153684A JP6680730B2 (ja) 2017-08-08 2017-08-08 制御装置及び学習装置

Publications (2)

Publication Number Publication Date
JP2019030941A true JP2019030941A (ja) 2019-02-28
JP6680730B2 JP6680730B2 (ja) 2020-04-15

Family

ID=65084513

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017153684A Active JP6680730B2 (ja) 2017-08-08 2017-08-08 制御装置及び学習装置

Country Status (4)

Country Link
US (1) US10953538B2 (ja)
JP (1) JP6680730B2 (ja)
CN (1) CN109382825B (ja)
DE (1) DE102018006248A1 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020213194A1 (ja) * 2019-04-15 2020-10-22 日本金銭機械株式会社 表示制御システム、および、表示制御方法
WO2021033486A1 (ja) * 2019-08-22 2021-02-25 オムロン株式会社 モデル生成装置、モデル生成方法、制御装置及び制御方法
JPWO2021033315A1 (ja) * 2019-08-22 2021-02-25
JP7098080B1 (ja) * 2021-09-08 2022-07-08 三菱電機株式会社 ロボット制御装置
JP2022537606A (ja) * 2019-08-16 2022-08-26 三菱電機株式会社 強化学習制御のための制約アダプタ

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019139510A1 (en) * 2018-01-12 2019-07-18 Telefonaktiebolaget Lm Ericsson (Publ) Methods and apparatus for roaming between wireless communications networks
DE102019001760A1 (de) * 2018-03-19 2019-09-19 Fanuc Corporation Informationsverarbeitungsgerät, maschinelle lernvorrichtungund system
EP3793786A1 (en) * 2018-06-15 2021-03-24 Google LLC Self-supervised robotic object interaction
JP7207207B2 (ja) * 2019-07-09 2023-01-18 トヨタ自動車株式会社 演算装置、機械学習方法及び制御プログラム
DE102020200165B4 (de) * 2020-01-09 2022-05-19 Robert Bosch Gesellschaft mit beschränkter Haftung Robotersteuereinrichtung und Verfahren zum Steuern eines Roboters
WO2023044676A1 (zh) * 2021-09-23 2023-03-30 西门子(中国)有限公司 一种多个机器人协同工作的控制方法、***及机器人
CN115412105B (zh) * 2022-05-06 2024-03-12 南京邮电大学 基于usrp rio的强化学习通信干扰方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05119823A (ja) * 1991-10-24 1993-05-18 Hitachi Ltd ロボツトの軌道計画方法及び制御装置
JP2003222295A (ja) * 2001-10-24 2003-08-08 Sick Ag 機械の保安関連機能を制御する方法及び装置
JP2005293154A (ja) * 2004-03-31 2005-10-20 Hiroshima Univ 障害物回避装置および移動体
JP2007316799A (ja) * 2006-05-24 2007-12-06 Tottori Univ 学習機能をもつ自律移動ロボット
JP2010120139A (ja) * 2008-11-21 2010-06-03 New Industry Research Organization 産業用ロボットの安全制御装置
JP2016159407A (ja) * 2015-03-03 2016-09-05 キヤノン株式会社 ロボット制御装置およびロボット制御方法
JP2017030135A (ja) * 2015-07-31 2017-02-09 ファナック株式会社 ワークの取り出し動作を学習する機械学習装置、ロボットシステムおよび機械学習方法

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120185115A1 (en) * 2007-10-05 2012-07-19 Jason Dean Laserbot: programmable robotic apparatus with laser
JP4938118B2 (ja) 2010-08-17 2012-05-23 ファナック株式会社 人間協調ロボットシステム
US8996167B2 (en) * 2012-06-21 2015-03-31 Rethink Robotics, Inc. User interfaces for robot training
CN102819264B (zh) 2012-07-30 2015-01-21 山东大学 移动机器人路径规划q学习初始化方法
US20150202770A1 (en) * 2014-01-17 2015-07-23 Anthony Patron Sidewalk messaging of an autonomous robot
US20150294496A1 (en) * 2014-04-14 2015-10-15 GM Global Technology Operations LLC Probabilistic person-tracking using multi-view fusion
US9251598B2 (en) * 2014-04-10 2016-02-02 GM Global Technology Operations LLC Vision-based multi-camera factory monitoring with dynamic integrity scoring
US20150339589A1 (en) * 2014-05-21 2015-11-26 Brain Corporation Apparatus and methods for training robots utilizing gaze-based saliency maps
US9840003B2 (en) * 2015-06-24 2017-12-12 Brain Corporation Apparatus and methods for safe navigation of robotic devices
JP6240689B2 (ja) 2015-07-31 2017-11-29 ファナック株式会社 人の行動パターンを学習する機械学習装置、ロボット制御装置、ロボットシステム、および機械学習方法
DE102016008987B4 (de) 2015-07-31 2021-09-16 Fanuc Corporation Maschinenlernverfahren und Maschinenlernvorrichtung zum Lernen von Fehlerbedingungen, und Fehlervorhersagevorrichtung und Fehlervorhersagesystem, das die Maschinenlernvorrichtung einschließt
JP6148316B2 (ja) 2015-07-31 2017-06-14 ファナック株式会社 故障条件を学習する機械学習方法及び機械学習装置、並びに該機械学習装置を備えた故障予知装置及び故障予知システム
JP6063016B1 (ja) 2015-09-29 2017-01-18 ファナック株式会社 電動機に対する動作指令を学習する機械学習方法および機械学習装置並びに該機械学習装置を備えた工作機械
US10265859B2 (en) * 2016-02-09 2019-04-23 Cobalt Robotics Inc. Mobile robot with removable fabric panels
JP2017177297A (ja) * 2016-03-31 2017-10-05 ソニー株式会社 制御装置及び制御方法
US9827678B1 (en) * 2016-05-16 2017-11-28 X Development Llc Kinematic design for robotic arm

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05119823A (ja) * 1991-10-24 1993-05-18 Hitachi Ltd ロボツトの軌道計画方法及び制御装置
JP2003222295A (ja) * 2001-10-24 2003-08-08 Sick Ag 機械の保安関連機能を制御する方法及び装置
JP2005293154A (ja) * 2004-03-31 2005-10-20 Hiroshima Univ 障害物回避装置および移動体
JP2007316799A (ja) * 2006-05-24 2007-12-06 Tottori Univ 学習機能をもつ自律移動ロボット
JP2010120139A (ja) * 2008-11-21 2010-06-03 New Industry Research Organization 産業用ロボットの安全制御装置
JP2016159407A (ja) * 2015-03-03 2016-09-05 キヤノン株式会社 ロボット制御装置およびロボット制御方法
JP2017030135A (ja) * 2015-07-31 2017-02-09 ファナック株式会社 ワークの取り出し動作を学習する機械学習装置、ロボットシステムおよび機械学習方法

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020172011A (ja) * 2019-04-15 2020-10-22 日本金銭機械株式会社 表示制御システム、表示制御方法、および、プログラム
WO2020213194A1 (ja) * 2019-04-15 2020-10-22 日本金銭機械株式会社 表示制御システム、および、表示制御方法
JP2022537606A (ja) * 2019-08-16 2022-08-26 三菱電機株式会社 強化学習制御のための制約アダプタ
JP7297155B2 (ja) 2019-08-16 2023-06-23 三菱電機株式会社 マシンの動作を制御するためのシステムおよびコンピュータ実施方法
JP7295421B2 (ja) 2019-08-22 2023-06-21 オムロン株式会社 制御装置及び制御方法
JP2021030360A (ja) * 2019-08-22 2021-03-01 オムロン株式会社 モデル生成装置、モデル生成方法、制御装置及び制御方法
WO2021033315A1 (ja) * 2019-08-22 2021-02-25 日本電気株式会社 ロボット制御システム、ロボット制御方法、及び、記録媒体
JPWO2021033315A1 (ja) * 2019-08-22 2021-02-25
WO2021033486A1 (ja) * 2019-08-22 2021-02-25 オムロン株式会社 モデル生成装置、モデル生成方法、制御装置及び制御方法
JP7334784B2 (ja) 2019-08-22 2023-08-29 日本電気株式会社 ロボット制御システム、ロボット制御方法、及び、プログラム
JP7098080B1 (ja) * 2021-09-08 2022-07-08 三菱電機株式会社 ロボット制御装置
WO2023037443A1 (ja) * 2021-09-08 2023-03-16 三菱電機株式会社 ロボット制御装置、学習装置および推論装置
US12017372B2 (en) 2021-09-08 2024-06-25 Mitsubishi Electric Corporation Robot control device

Also Published As

Publication number Publication date
US10953538B2 (en) 2021-03-23
CN109382825B (zh) 2021-03-02
DE102018006248A1 (de) 2019-02-14
CN109382825A (zh) 2019-02-26
US20190047143A1 (en) 2019-02-14
JP6680730B2 (ja) 2020-04-15

Similar Documents

Publication Publication Date Title
JP6680730B2 (ja) 制御装置及び学習装置
US11511420B2 (en) Machine learning device, robot system, and machine learning method for learning operation program of robot
JP6542839B2 (ja) 制御装置及び機械学習装置
CN107767760B (zh) 机械学习器、机器人***以及机械学习方法
JP6652549B2 (ja) 切粉除去装置及び情報処理装置
JP6240689B2 (ja) 人の行動パターンを学習する機械学習装置、ロボット制御装置、ロボットシステム、および機械学習方法
JP6810087B2 (ja) 機械学習装置、機械学習装置を用いたロボット制御装置及びロボットビジョンシステム、並びに機械学習方法
US10692018B2 (en) Machine learning device and machine learning method for learning optimal object grasp route
JP7100426B2 (ja) ワークの取り出し動作を学習する機械学習装置、ロボットシステムおよび機械学習方法
JP6619192B2 (ja) 移動軸異常負荷警告機能を有するワイヤ放電加工機
JP6542833B2 (ja) 制御装置及び機械学習装置
US10908572B2 (en) Programmable controller and machine learning device
JP6564426B2 (ja) 部品供給装置及び機械学習装置
JP2019185125A (ja) 制御装置及び機械学習装置
US11897066B2 (en) Simulation apparatus
JP2019020959A (ja) 制御装置及び学習装置
JP6490132B2 (ja) ロボットの制御装置、機械学習装置及び機械学習方法
JP2019136818A (ja) 制御装置及び機械学習装置
CN111984000A (zh) 用于自动影响执行器的方法和设备
JP2019184575A (ja) 測定動作パラメータ調整装置、機械学習装置及びシステム
WO2023037443A1 (ja) ロボット制御装置、学習装置および推論装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20181024

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20191024

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20191112

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200106

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200319

R150 Certificate of patent or registration of utility model

Ref document number: 6680730

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150