(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023024296
(43)【公開日】2023-02-16
(54)【発明の名称】ピックアンドプレイスシステムのための深層強化学習装置及び方法
(51)【国際特許分類】
B25J 13/00 20060101AFI20230209BHJP
G05B 19/42 20060101ALI20230209BHJP
G05B 19/4155 20060101ALI20230209BHJP
G06N 20/00 20190101ALI20230209BHJP
B25J 9/22 20060101ALN20230209BHJP
【FI】
B25J13/00 Z
G05B19/42 J
G05B19/4155 V
G06N20/00
B25J9/22 A
【審査請求】有
【請求項の数】11
【出願形態】OL
(21)【出願番号】P 2022110447
(22)【出願日】2022-07-08
(31)【優先権主張番号】10-2021-0103263
(32)【優先日】2021-08-05
(33)【優先権主張国・地域又は機関】KR
【新規性喪失の例外の表示】特許法第30条第2項適用申請有り 令和3年7月12日に学会予稿集をウェブサイトに掲載 http://www.ubiquitousrobots.org/2021/index.php httos://ras.papercept.net/conferences/conferences/UR21/program/UR21ContentListWeb_2.html
(71)【出願人】
【識別番号】520408272
【氏名又は名称】アジャイルソーダ インコーポレイテッド
(74)【代理人】
【識別番号】110001519
【氏名又は名称】弁理士法人太陽国際特許事務所
(72)【発明者】
【氏名】レ ファム トゥエン
(72)【発明者】
【氏名】李東ヒョン
【テーマコード(参考)】
3C269
3C707
【Fターム(参考)】
3C269AB21
3C269AB33
3C269BB08
3C269EF02
3C269MN42
3C269MN44
3C269SA17
3C707AS01
3C707BS10
3C707DS01
3C707JS02
3C707LS15
3C707LS20
3C707LV02
3C707LW12
3C707NS02
(57)【要約】
【課題】ピックアンドプレイスシステムのための深層強化学習装置及び方法を提供する。
【解決手段】実時間環境でロボット運営体制(ROS)を用いてピックアンドプレイス関連決定を下すために強化学習を適用できるようにシミュレーション学習フレームワークを構成し、様々なハードウェアと実時間制約を満たす安定した経路モーションを生成する。
【選択図】
図2
【特許請求の範囲】
【請求項1】
提供されたアクション(Action)に対して一つ以上のロボット(200、200a、200b)のパーキング位置と配置位置間の経路を要請し、受信したロボット(200、200a、200b)の動きによる経路に基づいてシミュレーションを行い、強化学習に用いられる状態(State)情報と報酬(Reward)情報を提供するレンダリングエンジン(110)、
前記レンダリングエンジン(110)から提供された状態情報と報酬情報を用いたエピソードに基づいて深層強化学習を行ってロボット(200、200a、200b)の動きが最適化するようにアクションを決定する強化学習エージェント(120)、及び
前記アクションに基づいてロボット(200、200a、200b)が動くように制御し、前記レンダリングエンジン(110)の要請に対応してロボット(200、200a、200b)の動きによる経路情報を前記レンダリングエンジン(110)に提供する制御エンジン(130)、を含み、
前記強化学習エージェント(120)は、ロボット(200、200a、200b)の現在状態と選択可能な物体400の情報によって、特定ロボットに任意の物体を把持するかを割り振るアクションを決定することを特徴とする、ピックアンドプレイスシステムのための深層強化学習装置。
【請求項2】
前記ロボット(200、200a、200b)の動きによる経路情報は、実際環境でロボット(200、200a、200b)が動いた経路及びあらかじめ保存されたシミュレータープログラム上でロボット(200、200a、200b)が動いた経路のいずれか一つであることを特徴とする、請求項1に記載のピックアンドプレイスシステムのための深層強化学習装置。
【請求項3】
前記レンダリングエンジン(110)は、ウェブ(Web)を通じて視覚化する応用プログラムがさらに設置されたことを特徴とする、請求項1に記載のピックアンドプレイスシステムのための深層強化学習装置。
【請求項4】
前記強化学習エージェント(120)は、報酬が遅延(Delay)することに対応して遅延報酬(Delayed Reward)処理を行うことを特徴とする、請求項1に記載のピックアンドプレイスシステムのための深層強化学習装置。
【請求項5】
前記強化学習エージェント(120)は、シミュレーション上の不確実性と動く物体400を考慮するためのLSTM(Long Short Term Memory)レイヤを備えたことを特徴とする、請求項1に記載のピックアンドプレイスシステムのための深層強化学習装置。
【請求項6】
前記強化学習エージェント(120)は、最も短いピックアンドプレイス時間周期を生成する確率値を有する個体を選択するように学習することを特徴とする、請求項1に記載のピックアンドプレイスシステムのための深層強化学習装置。
【請求項7】
a)強化学習エージェント(120)が、強化学習に用いられるアクションに対する状態情報と報酬情報をレンダリングエンジン(110)に要請して収集する段階、
b)強化学習エージェント(120)が、前記収集された状態情報と報酬情報を用いたエピソードに基づいて深層強化学習を行ってロボット(200、200a、200b)の動きが最適化するようにアクションを決定する段階、
c)前記レンダリングエンジン(110)が決定されたアクションを出力すると、制御エンジン(130)が前記アクションに基づいてロボット(200、200a、200b)が動くように制御する段階、及び
d)前記レンダリングエンジン(110)がロボット(200、200a、200b)の経路情報を受信し、動きによる経路に基づいてシミュレーションを行う段階、を含み、
前記b)段階は、ロボット(200、200a、200b)の現在状態と選択可能な物体400の情報によって、特定ロボットに任意の物体を把持するかを割り振るアクションを決定することを特徴とする、ピックアンドプレイスシステムのための深層強化学習方法。
【請求項8】
前記a)段階で収集される情報は、一つ以上のロボット(200、200a、200b)のパーキング位置と配置位置間の経路を含むロボット(200、200a、200b)の動き情報であることを特徴とする、請求項7に記載のピックアンドプレイスシステムのための深層強化学習方法。
【請求項9】
前記b)段階は、報酬が遅延(Delay)することに対応して遅延報酬(Delayed Reward)処理を行うことを特徴とする、請求項7に記載のピックアンドプレイスシステムのための深層強化学習方法。
【請求項10】
前記b)段階は、強化学習エージェント(120)が最も短いピックアンドプレイス時間周期を生成する確率値を有する個体を選択するように学習することを特徴とする、請求項7に記載のピックアンドプレイスシステムのための深層強化学習方法。
【請求項11】
前記c)段階は、制御エンジン(130)が実際環境でロボット(200、200a、200b)及びあらかじめ保存されたシミュレータープログラム上でロボット(200、200a、200b)が動くように制御し、それに対応する動き経路を抽出することを特徴とする、請求項7に記載のピックアンドプレイスシステムのための深層強化学習方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ピックアンドプレイスシステムのための深層強化学習装置及び方法に関する発明であり、より詳細には、実時間環境においてロボット運営体制(ROS)を用いてピックアンドプレイス関連決定を下すために強化学習を適用できるようにシミュレーション学習フレームワークを構成して、様々なハードウェアと実時間制約を満たす安定した経路モーションを生成する、ピックアンドプレイスシステムのための深層強化学習装置及び方法に関する。
【背景技術】
【0002】
強化学習は、環境(environment)と相互作用しつつ目標を達成するエージェントを扱う学習方法であり、ロボットや人工知能分野で多用されている。
【0003】
かかる強化学習は、学習の行動主体である強化学習エージェント(Agent)がどのような行動をすればより多い報酬(Reward)が受けられるかを見つけ出すことを目的とする。
【0004】
すなわち、決まった正解がない状態でも報酬を最大化させるために何をするかを学習することであり、入力と出力が明確な関係を持っている状況で事前にどのような行為をするかを聞いて行うのではなく、試行錯誤をたどりながら報酬を最大化させることを学習する過程を経る。
【0005】
また、エージェントは時間ステップが流れるにしたがって順次にアクションを選択し、該アクションが環境に及ぼした影響に基づいて報酬(reward)を受ける。
【0006】
図1は、従来技術に係る強化学習装置の構成を示すブロック図であり、
図1に示すように、エージェント10が強化学習モデルの学習によってアクション(Action、又は行動)Aを決定する方法を学習させ、各アクションであるAはその次の状態(state)Sに影響を及ぼし、成功した程度は、報酬(Reward)Rから測定できる。
【0007】
すなわち、報酬は、強化学習モデルを用いて学習を進行する場合に、ある状態(State)によってエージェント10が決定するアクション(行動)に対する補償点数であって、学習によるエージェント10の意思決定に対する一種のフィードバックである。
【0008】
環境20は、エージェント10が取れる行動、それに伴う報酬などの全ての規則であり、状態、アクション、報酬などはいずれも環境の構成要素であり、エージェント10以外の全ての決まったものが環境である。
【0009】
一方、強化学習によってエージェント10は未来の報酬が最大化するようにアクションを取るので、報酬をどのように策定するかが学習結果に多く影響を及ぼす。
【0010】
かかる強化学習は、人の介入無しでロボットを用いた工場自動化を自動でアップデートするための核心機能として作用する。
【0011】
一方、ピックアンドプレイスシステム(Pick and Place System、PPS)は、労力を代替するための工場製造工程で用いられてきたが、システムの正確性及び性能を高める統合システムが開発し難いという問題点があった。
【0012】
また、製造工程が頻繁に変更される過程で性能を最適化するために新しい工程に対するアップデートが行われなければならないが、このとき、考慮すべき多い媒介変数によって多数のモジュールが構成されてシステムが複雑化し、PPS設計のためのフレームワークの開発が難しいという問題点があった。
【先行技術文献】
【特許文献】
【0013】
【特許文献1】韓国登録特許第10-2211012号(発明の名称:ロボット操作のための深層強化学習)
【発明の概要】
【発明が解決しようとする課題】
【0014】
このような問題点を解決するために、本発明は、実時間環境でロボット運営体制(ROS)を用いてピックアンドプレイス関連決定を下すために強化学習を適用できるようにシミュレーション学習フレームワークを構成して、様々なハードウェアと実時間制約を満たす安定した経路モーションを生成する、ピックアンドプレイスシステムのための深層強化学習装置及び方法を提供することに目的がある。
【課題を解決するための手段】
【0015】
上記の目的を達成するために、本発明の一実施例は、ピックアンドプレイスシステムのための深層強化学習装置であって、提供されたアクション(Action)に対して一つ以上のロボットのパーキング位置と配置位置間の経路を要請し、受信したロボットの動きによる経路に基づいてシミュレーションを行い、強化学習に用いられる状態(State)情報と報酬(Reward)情報を提供するレンダリングエンジン、前記レンダリングエンジンから提供された状態情報と報酬情報を用いたエピソードに基づいて深層強化学習を行ってロボットの動きが最適化するようにアクションを決定する強化学習エージェント、及び、前記アクションに基づいてロボットが動くように制御し、前記レンダリングエンジンの要請に対応してロボットの動きによる経路情報を前記レンダリングエンジンに提供する制御エンジン、を含むことができる。
【0016】
また、前記実施例に係る強化学習エージェントは、ロボットの現在状態と選択可能な物体の情報によって、特定ロボットに任意の物体を把持するかを割り振るアクションを決定することができる。
【0017】
また、前記実施例は、ロボットの動きによる経路情報が、実際環境でロボットが動いた経路及びあらかじめ保存されたシミュレータープログラム上でロボットが動いた経路のいずれか一つであってよい。
【0018】
また、前記実施例に係るレンダリングエンジンは、ウェブ(Web)を通じて視覚化する応用プログラムがさらに設置されてよい。
【0019】
また、前記実施例に係る強化学習エージェントは、報酬が遅延(Delay)することに対応して遅延報酬(Delayed Reward)処理を行うことができる。
【0020】
また、前記実施例に係る強化学習エージェントは、シミュレーション上の不確実性と動く物体を考慮するためのLSTM(Long Short Term Memory)レイヤを備えることができる。
【0021】
また、前記実施例に係る強化学習エージェントは、最も短いピックアンドプレイス時間周期を生成する確率値を有する個体を選択するように学習することができる。
【0022】
また、本発明の一実施例は、ピックアンドプレイスシステムのための深層強化学習方法であって、a)強化学習エージェントが、強化学習に用いられるアクションに対する状態情報と報酬情報をレンダリングエンジンに要請して収集する段階、b)強化学習エージェントが前記収集された状態情報と報酬情報を用いたエピソードに基づいて深層強化学習を行ってロボットの動きが最適化するようにアクションを決定する段階、c)前記レンダリングエンジンが決定されたアクションを出力すると、制御エンジンが、前記アクションに基づいてロボットが動くように制御する段階、及び、d)前記レンダリングエンジンが、ロボットの経路情報を受信し、動きによる経路に基づいてシミュレーションを行う段階、を含むことができる。
【0023】
また、前記実施例に係るb)段階は、ロボットの現在状態と選択可能な物体の情報によって、特定ロボットに任意の物体を握るかを割り振るアクションを決定することができる。
【0024】
また、前記実施例は、a)段階で収集される情報が一つ以上のロボットのパーキング位置と配置位置間の経路を含むロボットの動き情報であってよい。
【0025】
また、前記実施例に係るb)段階は、報酬が遅延(Delay)することに対応して遅延報酬(Delayed Reward)処理を行うことができる。
【0026】
また、前記実施例に係るb)段階は、強化学習エージェントが最も短いピックアンドプレイス時間周期を生成する確率値を有する個体を選択するように学習することができる。
【0027】
また、前記実施例に係るc)段階は、制御エンジンが実際環境でロボット及びあらかじめ保存されたシミュレータープログラム上でロボットが動くように制御し、それに対応する動き経路を抽出することができる。
【発明の効果】
【0028】
本発明は、強化学習エージェント、レンダリングエンジン、制御エンジンを含むシミュレーション学習フレームワークを構成し、実時間環境でロボット運営体制(ROS)を用いてピックアンドプレイス関連決定を下すために強化学習を適用することができる。
【0029】
このようなシミュレーション学習フレームワークの強化学習によって生成された人工知能モデルはピックアンドプレイスシステムに用いられ、様々なハードウェアと実時間制約を満たす安定した経路モーションを具現することができる。
【図面の簡単な説明】
【0030】
【
図1】一般の強化学習装置の構成を示すブロック図である。
【
図2】本発明の一実施例に係るピックアンドプレイスシステムのための深層強化学習装置を概略的に示すブロック図である。
【
図3】
図2の実施例に係るピックアンドプレイスシステムのための深層強化学習装置の構成を示すブロック図である。
【
図4】
図2の実施例に係るピックアンドプレイスシステムのための深層強化学習装置のピックアンドプレイスシステムを示す例示図である。
【
図5】本発明の一実施例に係るピックアンドプレイスシステムのための深層強化学習方法を説明するためのフローチャートである。
【
図6】
図5の実施例に係るピックアンドプレイスシステムのための深層強化学習方法のエピソード設定過程を説明するためのフローチャートである。
【発明を実施するための形態】
【0031】
以下では、本発明の好ましい実施例及び添付の図面を参照して、本発明を詳細に説明する。ただし、図面中の同一の参照符号は同一の構成要素を示すことを前提にして説明する。
【0032】
本発明の実施のための具体的な内容を説明するに先立ち、本発明の技術的要旨と直接関連していない構成については、本発明の技術的要旨を乱さない範囲内で省略していることに留意されたい。
【0033】
また、本明細書及び特許請求の範囲に使われる用語又は単語は、発明者が自身の発明を最善の方法で説明するために適切な用語の概念を定義できるという原則に立って、発明の技術的思想に符合する意味及び概念として解釈されるべきであろう。
【0034】
本明細書において、ある部分がある構成要素を「含む」という表現は、他の構成要素を排除するものではなく、他の構成要素をさらに含んでよいということを意味する。
【0035】
また、「‥部」、「‥器」、「‥モジュール」などの用語は、少なくとも一つの機能や動作を処理する単位を意味し、これは、ハードウェア、ソフトウェア、又はこれら両者の結合で区別可能である。
【0036】
また、「少なくとも一つの」という用語は、単数及び複数を含む用語と定義され、少なくとも一つのという用語が存在しなくても、各構成要素が単数又は複数で存在してよく、単数又は複数を意味できることは自明であろう。
【0037】
また、各構成要素が単数又は複数で備えられることは、実施例によって変更可能であろう。
【0038】
以下、添付の図面を参照して、本発明の一実施例に係るピックアンドプレイスシステムのための深層強化学習装置及び方法の好ましい実施例を詳細に説明する。
【0039】
図2は、本発明の一実施例に係るピックアンドプレイスシステムのための深層強化学習装置を概略的に示すブロック図であり、
図3は、
図2の実施例に係るピックアンドプレイスシステムのための深層強化学習装置の構成を示すブロック図であり、
図4は、
図2の実施例に係るピックアンドプレイスシステムのための深層強化学習装置のピックアンドプレイスシステムを示す例示図である。
【0040】
図2~
図4を参照すると、本発明の一実施例に係るピックアンドプレイスシステムのための深層強化学習装置100は、実時間環境でロボット運営体制(ROS)を用いてピックアンドプレイス関連決定を下すために強化学習を適用できるようにシミュレーション学習フレームワークを構成して、様々なハードウェアと実時間制約を満たす安定した経路モーションを生成できるように、レンダリングエンジン110と、強化学習エージェント120と、制御エンジン130と、環境140とを含んで構成されてよい。
【0041】
レンダリングエンジン110は、ピックアンドプレイス環境を作る構成であり、ロボット200、200a、200bの動き経路、すなわち、ピックアンドプレイス動作による軌跡に基づいてシミュレーションを行うことができる。
【0042】
また、レンダリングエンジン110は、強化学習エージェント120に、強化学習に用いられる状態(State)情報と、シミュレーションに基づく報酬(Reward)情報を伝達してアクションを要請する。
【0043】
これに応じて、強化学習エージェント120は、要請されたアクションをレンダリングエンジン110に提供する。
【0044】
また、レンダリングエンジン110は、物体400の運動学を写実的且つ物理的にシミュレーションできるようにコア部111が構成されてよく、物理エンジンが適用されたシミュレーターで構成されてもよい。
【0045】
ここで、状態は、ロボット200、200a、200bの現在状態、物体の位置であってよく、物体の最大個数と、現在ロボット200、200a、200bが摘まみ得る物体の位置を含む。
【0046】
また、報酬は、物体の位置が変わることにしたがって物体を成功的に摘んだ場合と、ロボットの経路を計画したが、物体を摘むことができなかった場合とに区分できる。
【0047】
また、報酬は、強化学習エージェント120が極力速くピックアンドプレイスするように奨励するために、報酬関数にはピックアンドプレイス時間周期に対する負数値が含まれてよい。
【0048】
また、ロボットが物体を選択できなかった場合に、報酬関数に、例えば「-10」の罰点を追加することもできる。
【0049】
また、レンダリングエンジン110は、強化学習エージェント120から提供されたアクション(Action)に対して、一つ以上のロボット200、200a、200bのパーキング位置と配置位置間の経路を制御エンジン130に要請することができる。
【0050】
また、レンダリングエンジン110は、制御エンジン130とデータを送受信できるようにプロトコルを提供でき、制御エンジン130に物体400を摘む位置と配置位置間の経路生成要請を伝送できるように、ROS # 112が構成されてよい。
【0051】
すなわち、ROS # 112は、レンダリングエンジン110と制御エンジン130とを連動可能にする。
【0052】
また、レンダリングエンジン110は、強化学習エージェント120のモデルを訓練するための強化学習アルゴリズムを適用できるようにML(Machine Learning)-エージェント113が構成されてよい。
【0053】
また、ML-エージェントは、強化学習エージェント120に情報を伝達でき、レンダリングエンジン110のシミュレーターと例えば「Python」などのプログラム間のインターフェースを行うこともできる。
【0054】
また、レンダリングエンジン110は、ウェブ(Web)を通じて視覚化可能に、ウェブベースのグラフィックライブラリー(WebGL)114を含んで構成されてよい。
【0055】
すなわち、ジャバスクリプトプログラミング言語を用いて、互換性のあるウェブブラウザにおいてインタラクティブな3Dグラフィックを使用できるように構成することができる。
【0056】
強化学習エージェント120は、状態情報と報酬情報を用いたエピソードに基づいて、ロボット200、200a、200bの動きが最適化するようにアクションを決定する構成であり、強化学習アルゴリズムを含んで構成されてよい。
【0057】
ここで、エピソードは、コンベヤーベルト300が作動しながら動く物体400に対してロボット200、200a、200bがピックアンドプレイス動作を行う環境140を構成し、強化学習エージェント120は、どの物体400を摘まむかを選択し、成功的に摘んだ物体の個数が目標に到達することを、1回のエピソードとして設定する。
【0058】
また、強化学習アルゴリズムは、報酬を最大化するための最適の方策を探すために、価値ベース接近方式又は方策ベース接近方式のいずれかを用いることができる。
【0059】
価値ベース接近方式において最適の方策は、エージェントの経験に基づいて近似した最適価値関数から派生し、方策ベース接近方式は、価値関数近似から分離された最適の方策を学習し、訓練された方策が近似値関数方向に改善される。
【0060】
本実施例では、方策ベースアルゴリズムであるPPO(Proximal Policy Optimization)アルゴリズムを用いる。
【0061】
PPOアルゴリズムを用いると、現在方策から遠ざからず、傾斜上昇によって方策が改善されて方策改善がより安定してなされ、方策改善は目標を最大化してなされ得る。
【0062】
また、強化学習エージェント120は、ピックアンドプレイスを行うロボット200、200a、200bの現在状態と、コンベヤーベルト300上で選択可能な物体400の情報によって、特定ロボットに任意の物体を把持するかを割り振るアクションを決定する。
【0063】
また、強化学習エージェント120は、報酬が遅延(Delay)することに対応して遅延報酬(Delayed Reward)処理を行うことができる。
【0064】
また、強化学習エージェント120は、特徴抽出のための入力状態の後に2つのMLP(Multiple Layer Perceptron)を含むことができ、シミュレーション上の不確実性と動く物体400を考慮するために、LSTM(Long Short Term Memory)レイヤを備えることができる。
【0065】
すなわち、時系列及びシーケンスデータにおいてステップ間の長期従属性を学習し、長いシーケンスに対する勾配流れが改善され得るようにする。
【0066】
また、強化学習エージェント120の強化学習ベースアルゴリズムは、低いベルト速度ではなく高いベルト速度で到着した物体を待つのに相対的に時間がかからないので、最も短いピックアンドプレイス時間周期を生成する確率値が高い個体を選択するように学習し、ベルト速度にかかわらずにベルト速度を上げるとピックアンドプレイス時間が短縮し得るようにする。
【0067】
一方、ピックアンドプレイス時間周期で表示される総計画時間とロボット実行時間は、プランナーのコンピューティング時間、物体の到着確率及びロボットの実行時間(実時間ハードウェア制約)の不確実性によって不確実であり得る。
【0068】
これは、各ロボットに対する物体割り当て決定に影響を与えることがあり、このような不確実性下で対象を適応的に選択するようにエージェントを学習する強化学習アルゴリズムを提供することができる。
【0069】
したがって、強化学習アルゴリズムは、ピックアンドプレイス周期時間を最小化し、選択した物体の数を最大化するなどの様々な側面を満たし得るようにシステムを制御する強化学習エージェント120の学習がなされ得るようにする。
【0070】
制御エンジン130は、アクションに基づいてロボット200、200a、200bが動くように制御し、当該ロボット200、200a、200bの動きによる経路情報を抽出して提供する構成であり、ロボット制御システム(ROS)を含んで構成されてよい。
【0071】
ここで、ロボット200、200a、200bの動きによる経路情報は、例えば、コンベヤーベルト300に沿って移動する物体400をピックアンドプレイスする実際環境でロボット200、200a、200bが動いた経路であってよい。
【0072】
また、ロボット制御システム(ROS)は、ロボット操作と経路プランニング(Path Planning)などを用いてシミュレーター上でロボットの動きが適用され得るようにし、ロボット制御システムを用いて制御される動作を、シミュレーションの他に実際環境においても適用可能にする。
【0073】
また、ロボット200、200a、200bの動きによる経路情報は、あらかじめ保存されたシミュレータープログラム上でロボット200、200a、200bが動いた経路であってよい。
【0074】
また、制御エンジン130は、あらかじめ設定されたロボット200、200a、200bの経路計画情報を用いてロボット(200、200b、200b)が動作するように制御できる。
【0075】
また、制御エンジン130は、マニピュレーターのための統合ライブラリーであるMoveltパッケージを用いて、開放型モーションライブラリー(Open Motion Planning Library)を使用して経路を生成できる。
【0076】
すなわち、制御エンジン130は、初期関節角度と目標関節角度間の有効な経路(例えば、滑らかで衝突のない経路)を検索する。
【0077】
また、マニピュレーターは、動くコンベヤーベルトに沿って配置され、ピックアンドプレイス作業を反復して行うロボットであってよい。
【0078】
また、制御エンジン130は、現在位置からピッキング位置まで及びピッキング位置から配置位置までの長い経路を生成する代わりに、それぞれ4個の計画段階に該当する4個の経路を生成できる。
【0079】
すなわち、制御エンジン130は、現在位置から、例えば、ロボットの把持部が対象物体400上にある待機位置(又は、同一の位置)までの経路を生成する「事前把握過程」と、物体が到着すると、待機位置からパーキング位置まで経路を生成する「把握過程」と、把持部を待機位置に再び持ち上げる経路を生成する「ピックアップ過程」と、待機位置から配置位置まで経路を生成する「プレイス過程」によって4個の軌跡を獲得することができる。
【0080】
環境140は、単一ロボット環境であるか或いは多重ロボット環境であってよい。
【0081】
コンベヤーベルト300は、一定方向に沿って整列され、任意の幅(例えば、30cm)を有してよく、ロボット200、200a、200bは、幅に沿って全ての領域に到達できる。
【0082】
物体400は、調節可能なコンベヤーベルト300の速度に従う速度でコンベヤーベルト300の一側(例えば、右側)から始まり、新しい物体は、任意の位置と時間間隔をおいてランダム(無作為)に到着してよい。
【0083】
また、物体400は、容易に摘み取り可能に一定大きさのキューブ形態で構成されてよい。
【0084】
次に、本発明の一実施例に係るピックアンドプレイスシステムのための深層強化学習方法を説明する。
【0085】
図5は、本発明の一実施例に係るピックアンドプレイスシステムのための深層強化学習方法を説明するためのフローチャートであり、
図6は、
図5の実施例に係るピックアンドプレイスシステムのための深層強化学習方法のエピソード設定過程を説明するためのフローチャートである。
【0086】
図2~
図6を参照すると、本発明の一実施例は、ピックアンドプレイスシステムのための深層強化学習方法は、強化学習エージェント120が、強化学習に用いられるアクションに対する状態情報と報酬情報をレンダリングエンジン110に要請すると、レンダリングエンジン110が制御エンジン130に状態情報と報酬情報を要請して収集(S100)する。
【0087】
また、S100段階で収集される情報は、一つ以上のロボット200、200a、200bのパーキング位置と配置位置間の経路を含むロボット200、200a、200bの動き情報であってよい。
【0088】
また、S100段階で収集された状態情報と報酬情報は強化学習エージェント120に提供され、強化学習エージェント120は、状態情報と報酬情報に基づいて、ロボット200、200a、200bの動きが最適化するようにアクションを設定(S200)する。
【0089】
ここで、アクションは、強化学習エージェント120が、連続した個体数によってn個の選択項目の個別集合からアクションを取り込むことができ、個体を選択した後、現在個体位置、ベルト速度及び現在関節角度などに基づいて、選択した位置を計算することができる。
【0090】
また、S200段階で、強化学習エージェント120は、コンベヤーベルト300が作動しながら動く物体400に対してロボット200、200a、200bがピックアンドプレイス動作を行う環境140で、どの物体400を摘まむかを選択し、成功的に摘んだ物体の個数が目標に到達することを、1回のエピソードとして設定する。
【0091】
また、S200段階で、強化学習エージェント120は、ピックアンドプレイスを行うロボット200、200a、200bの現在状態とコンベヤーベルト300上で選択可能な物体400の情報によって、特定ロボットに任意の物体を把持するかを割り振るアクションを決定する。
【0092】
すなわち、特定ロボットに対するアクション要請を受信(S210)すると、ロボットの現在状態と選択可能情報に基づいてアクションを設定(S220)し、強化学習を行うこともできる。
【0093】
また、S200段階で、強化学習エージェント120は、報酬が遅延(Delay)することに対応して遅延報酬(Delayed Reward)処理を行うこともできる。
【0094】
続いて、レンダリングエンジン110は、S200段階で決定されたアクションを受信して制御エンジン130に出力(S300)する。
【0095】
制御エンジン130は、S200段階で生成されたアクションに基づいてロボット200、200a、200bが動くように制御(S400)する。
【0096】
S400段階で、制御エンジン130は、アクションに基づくロボット200、200a、200bの動作が実際環境で連動されたロボット200、200a、200bが動作するように制御し、それに対応して動いた経路(又は、軌跡)を抽出することができる。
【0097】
また、S400段階で、制御エンジン130は、あらかじめ保存されたシミュレータープログラム上でアクションに基づいてロボット200、200a、200bが動くように制御し、それに対応する動き経路を抽出することもできる。
【0098】
また、S400段階は、ロボット200、200a、200bの経路情報がレンダリングエンジン110に提供され、レンダリングエンジン110は、ロボット200、200a、200bの動きによる経路に基づいてシミュレーションする過程を行うことができる。
【0099】
S400段階のシミュレーションによってレンダリングエンジン110は、物体の位置が変わるに従って物体を成功的に摘んだ場合と、ロボットの経路を計画したが、物体を摘むことができなかった場合とに対する報酬を区分して強化学習エージェント120に提供する。
【0100】
次は、フレームワークの検証のためにベルト速度、配置、及び
図3のようにロボット200、200a、200bの個数の様々な構成によってエージェントの動作を分析した実験結果である。
【0101】
10個の個体を選択した後、総作業時間を計算したメトリック(Metric)を、フレームワークの評価に使用した。
【0102】
表1は評価結果であり、3つの基準アルゴリズムに対する提案アルゴリズムの総作動時間を示す。
【0103】
【0104】
ここで、ランダムは、無作為に個体を選択することであり、FSFP(First See First Pick)は、常に、観察可能な個体目録から一番目の個体を選択することであり、SP(Shortest Path)は、ロボットから最も近い個体を選択することである。
【0105】
一つのロボットシステムで構成されたアルゴリズムによって訓練されたエージェントは、全ての状況に適応しようと試み、その性能は、ランダム、FSFP、SPに比べてそれぞれ、15%、2.9%、2.9%向上したことが分かる。
【0106】
また、ハードウェアの制約とプランナーのコンピューティング時間によって変わる経路計画を規則ベースアルゴリズムが考慮しない事実で改善され得る。
【0107】
また、強化学習ベースアルゴリズムは、最も短いピックアンドプレイス時間周期を生成する可能性が高い個体を選択するようにエージェントを学習させ、ベルト速度にかかわらず、ベルト速度を上げると、ピックアンドプレイス時間が短縮し得る。
【0108】
これは、低いベルト速度ではなく高いベルト速度で到着した物体を待つのに相対的に時間がかからないためである。
【0109】
また、配置位置はエージェントの行動にも影響を与えることができる。
【0110】
特に、配置がロボットの左側にある場合に、エージェント動作は常に、配置に最も近い最左側の個体(例えば、配置位置に対する最短経路)を選択するFSFPエージェントに収斂する。
【0111】
また、ロボットの右側に配置されたエージェントは、FSFPとSPとの混合方策を学習し、特に、一番目の決定段階でエージェントは一番目に到着した個体(FSFP動作)を選択し、次の決定段階では、SPエージェントの動作に最も近い個体(一般に、二番目又は三番目の個体)を選択する。
【0112】
複数のロボットシステムを用いると、ロボット数を増やし、ピックアンドプレイス時間が減少し得る。
【0113】
したがって、実時間環境でロボット運営体制(ROS)を用いてピックアンドプレイス関連決定を下すために強化学習を適用できるようにシミュレーション学習フレームワークを構成して、様々なハードウェアと実時間制約を満たす安定した経路モーションを生成することができる。
【0114】
また、行動ベースシステムを活性化し、コンベヤーベルト基盤システムの妥当性と拡張性が確認でき、強化学習アルゴリズムを用いるためにフレームワークを様々なロボットシステムに拡張できる。
【0115】
また、シミュレーション上の不確実性と動く物体を考慮することによって、システムに対するより現実的な環境を改善することが可能になる。
【0116】
上記のように、本発明の好ましい実施例を参照して説明したが、当該技術分野における熟練した当業者であれば、添付する特許請求の範囲に記載された本発明の思想及び領域から逸脱しない範囲内で本発明を様々に修正及び変更可能であることが理解できよう。
【0117】
また、本発明の特許請求の範囲に記載の図面番号は、説明の明瞭性と便宜のために記載したものに過ぎず、それらに限定されることはなく、実施例を説明する過程において、図面上の線の厚さや構成要素のサイズなどは、説明の明瞭性と便宜のために誇張して示されることもある。
【0118】
また、上述の用語は、本発明での機能を考慮して定義された用語であり、それらはユーザ、運用者の意図又は慣例によって変更可能であるので、それらの用語に対する解釈は、本明細書全般ににわたる内容に基づいて下されるべきであろう。
【0119】
また、明示的に図示又は説明されなくとも、本発明の属する技術の分野における通常の知識を有する者にとって、本発明の記載事項から、本発明に係る技術的思想を含む様々な形態の変形が可能であることは明らかであり、それらも本発明の権利範囲に属する。
【0120】
また、添付の図面を参照して説明された上記の実施例は、本発明を説明するための目的で記述されたものであり、本発明の権利範囲はそれらの実施例に限定されない。
【符号の説明】
【0121】
100:強化学習装置
110:レンダリングエンジン
111:コア部
112:ROS #
113:ML-エージェント
114:WebGL
120:強化学習エージェント
130:制御エンジン
140:環境
200、200a、200b:ロボット
300:コンベヤーベルト
400:物体