JP7012944B2 - シミュレーション装置、シミュレーション方法及びシミュレーションプログラム - Google Patents

シミュレーション装置、シミュレーション方法及びシミュレーションプログラム Download PDF

Info

Publication number
JP7012944B2
JP7012944B2 JP2018192393A JP2018192393A JP7012944B2 JP 7012944 B2 JP7012944 B2 JP 7012944B2 JP 2018192393 A JP2018192393 A JP 2018192393A JP 2018192393 A JP2018192393 A JP 2018192393A JP 7012944 B2 JP7012944 B2 JP 7012944B2
Authority
JP
Japan
Prior art keywords
simulation
operation target
movement
unit
conditions
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
JP2018192393A
Other languages
English (en)
Other versions
JP2020060996A (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.)
Omron Corp
Original Assignee
Omron 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 Omron Corp filed Critical Omron Corp
Priority to JP2018192393A priority Critical patent/JP7012944B2/ja
Priority to EP19872157.3A priority patent/EP3866169A4/en
Priority to US17/269,531 priority patent/US20210182459A1/en
Priority to CN201980052349.0A priority patent/CN112534366A/zh
Priority to PCT/JP2019/040142 priority patent/WO2020075834A1/ja
Publication of JP2020060996A publication Critical patent/JP2020060996A/ja
Application granted granted Critical
Publication of JP7012944B2 publication Critical patent/JP7012944B2/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/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1671Programme controls characterised by programming, planning systems for manipulators characterised by simulation, either to verify existing program or to create and verify new program, CAD/CAM oriented, graphic oriented programming systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • G06F30/23Design optimisation, verification or simulation using finite element methods [FEM] or finite difference methods [FDM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • G06F30/25Design optimisation, verification or simulation using particle-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • G06F30/27Design optimisation, verification or simulation using machine learning, e.g. artificial intelligence, neural networks, support vector machines [SVM] or training a model
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • B25J9/1605Simulation of manipulator lay-out, design, modelling of manipulator
    • 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
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B17/00Systems involving the use of models or simulators of said systems
    • G05B17/02Systems involving the use of models or simulators of said systems electric
    • 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/40073Carry container with liquid, compensate liquid vibration, swinging effect
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2113/00Details relating to the application field
    • G06F2113/08Fluids
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Geometry (AREA)
  • Computer Hardware Design (AREA)
  • Artificial Intelligence (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Mathematical Physics (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Manipulator (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Human Computer Interaction (AREA)
  • Numerical Control (AREA)
  • Computational Linguistics (AREA)

Description

本発明は、シミュレーション装置、シミュレーション方法及びシミュレーションプログラムに関する。
従来、ロボットにより操作対象に様々な処理を行うことがある。ロボットの動作は、シミュレーションによって検証され、シミュレーション結果を参照しながら設計されることがある。
例えば下記特許文献1には、工業用機械の動作をシミュレーションして、シミュレーション結果及び工業用機械の動作からの実際のデータを記憶したり、比較したりする方法が記載されている。
特表2008-542888号公報
ロボットにより操作される操作対象が液体であったり、可撓性を有する柔軟物であったりする場合に、ロボットの動きとあわせて操作対象の動きをシミュレーションすることがある。操作対象の動きは、有限要素法や粒子法といった既存の技術によってシミュレーションすることができる。
しかしながら、操作対象の動きを精度良くシミュレーションすると演算負荷が大きくなり、シミュレーションに要する時間が長くなることがある。
そこで、本発明は、操作対象の動きのシミュレーションに要する演算負荷を低減するシミュレーション装置、シミュレーション方法及びシミュレーションプログラムを提供する。
本開示の一態様に係るシミュレーション装置は、操作対象を表すモデルの構成条件を設定する第1設定部と、操作対象に加わる外力の条件を設定する第2設定部と、構成条件及び外力の条件の下で、操作対象の動きをシミュレーションする第1シミュレーション部と、構成条件、外力の条件及び第1シミュレーション部によるシミュレーションにおける操作対象の表面に位置する複数の代表点の動きを表すデータを含む学習データを生成する生成部と、学習データを用いた教師有り学習により、構成条件、外力の条件及び複数の代表点の初期条件を入力として、複数の代表点の動きを表すデータを出力する学習モデルを生成する学習部と、を備える。
この態様によれば、操作対象を表すモデルの動きを任意の手法によりシミュレーションして、そのシミュレーション結果を用いた教師有り学習により学習モデルを生成することで、演算負荷の大きいシミュレーションを比較的演算負荷の小さい学習モデルによる代表点の動きの予測に置き換えることができ、操作対象の動きのシミュレーションに要する演算負荷を低減することができる。
上記態様において、生成部は、構成条件、第1シミュレーション部によるシミュレーションの所定時刻における外力の条件及び所定時刻における複数の代表点の動きを表すデータを入力データとして含み、所定時刻から所定時間経過後の時刻における複数の代表点の動きを表すデータを出力データとして含む学習データを生成してもよい。
この態様によれば、学習モデルによって所定時間経過後の代表点の動きを予測することができ、学習モデルによる予測を繰り返し実行することで、任意の時刻における代表点の動きを予測することができる。
上記態様において、ロボットの動きをシミュレーションする第2シミュレーション部と、第2シミュレーション部によるシミュレーションにおいてロボットにより操作対象に加えられる外力の条件及び構成条件を学習モデルに入力し、複数の代表点の動きを予測する予測部と、をさらに備え、第2シミュレーション部は、予測部により予測された複数の代表点の動きと、シミュレーションしたロボットの動きとを合成してもよい。
この態様によれば、学習モデルによって、操作対象を表すモデルの代表点の動きを比較的演算負荷を小さくして予測し、ロボットの動きを任意の手法によりシミュレーションした結果と合成することで、ロボット及び操作対象を含む全体のシミュレーションに要する演算負荷を低減することができる。
上記態様において、操作対象は、柔軟物、液体及び気体のいずれかを含んでもよい。
この態様によれば、シミュレーションの演算負荷が大きい操作対象であっても、比較的演算負荷の小さい学習モデルによる演算によって操作対象の代表点の動きを予測することができ、操作対象の動きのシミュレーションに要する演算負荷を低減することができる。
上記態様において、操作対象が液体であるとき、操作対象の表面は、液体の液面であり、複数の代表点の動きは、複数の位置における液面の鉛直方向の動きによって表されてもよい。
この態様によれば、学習モデルによって液体の液面に位置する複数の代表点の動きを予測することで、液体全体の動きを予測する場合よりも学習モデルの演算負荷を小さくすることができる。
上記態様において、第1シミュレーション部は、液体を複数の粒子に分解したモデルを用いて、複数の粒子の動きをシミュレーションし、複数の代表点の動きを表すデータは、複数の粒子のうち、第1シミュレーション部によるシミュレーションの所定時刻における液体の液面に位置する一部の粒子の動きを表すデータであってもよい。
この態様によれば、液体全体の動きを粒子モデルによってシミュレーションした結果のうち、液面に位置する粒子の動きを再現する学習モデルを生成することができ、液体全体の動きを予測する場合よりも学習モデルの演算負荷を小さくすることができる。
上記態様において、構成条件は、操作対象の可撓性を表す条件及び粘性を表す条件のいずれかを含んでもよい。
この態様によれば、シミュレーションの演算負荷が大きい操作対象であっても、比較的演算負荷の小さい学習モデルによる演算によって操作対象の代表点の動きを予測することができ、操作対象の動きのシミュレーションに要する演算負荷を低減することができる。
上記態様において、第1シミュレーション部は、操作対象を節点により接続された複数の構成要素に分解したモデルを用いて、節点の動きをシミュレーションし、複数の代表点の数は、節点の数より少なくてもよい。
この態様によれば、操作対象全体の動きを有限要素法によってシミュレーションした結果のうち、操作対象の表面に位置する節点の動きを再現する学習モデルを生成することができ、操作対象を表す節点全体の動きを予測する場合よりも学習モデルの演算負荷を小さくすることができる。
本開示の他の態様に係るシミュレーション方法は、操作対象を表すモデルの構成条件を設定することと、操作対象に加わる外力の条件を設定することと、構成条件及び外力の条件の下で、操作対象の動きをシミュレーションすることと、構成条件、外力の条件及びシミュレーションにおける操作対象の表面に位置する複数の代表点の動きを表すデータを含む学習データを生成することと、学習データを用いた教師有り学習により、構成条件、外力の条件及び複数の代表点の初期条件を入力として、複数の代表点の動きを表すデータを出力する学習モデルを生成することと、を含む。
この態様によれば、操作対象を表すモデルの動きを任意の手法によりシミュレーションして、そのシミュレーション結果を用いた教師有り学習により学習モデルを生成することで、演算負荷の大きいシミュレーションを比較的演算負荷の小さい学習モデルによる代表点の動きの予測に置き換えることができ、操作対象の動きのシミュレーションに要する演算負荷を低減することができる。
本開示の他の態様に係るシミュレーションプログラムは、シミュレーション装置に備えられたプロセッサを、操作対象を表すモデルの構成条件を設定する第1設定部、操作対象に加わる外力の条件を設定する第2設定部、構成条件及び外力の条件の下で、操作対象の動きをシミュレーションする第1シミュレーション部、構成条件、外力の条件及び第1シミュレーション部によるシミュレーションにおける操作対象の表面に位置する複数の代表点の動きを表すデータを含む学習データを生成する生成部、及び学習データを用いた教師有り学習により、構成条件、外力の条件及び複数の代表点の初期条件を入力として、複数の代表点の動きを表すデータを出力する学習モデルを生成する学習部、として機能させる。
この態様によれば、操作対象を表すモデルの動きを任意の手法によりシミュレーションして、そのシミュレーション結果を用いた教師有り学習により学習モデルを生成することで、演算負荷の大きいシミュレーションを比較的演算負荷の小さい学習モデルによる代表点の動きの予測に置き換えることができ、操作対象の動きのシミュレーションに要する演算負荷を低減することができる。
本発明によれば、操作対象の動きのシミュレーションに要する演算負荷を低減するシミュレーション装置、シミュレーション方法及びシミュレーションプログラムが提供される。
本発明の実施形態に係るシミュレーション装置によりシミュレーションされる第1操作対象の動きの概略図である。 本実施形態に係るシミュレーション装置のハードウェア構成を示す図である。 本実施形態に係るシミュレーション装置の機能構成を示す図である。 本実施形態に係るシミュレーション装置により実行される第1処理のフローチャートである。 本実施形態に係るシミュレーション装置により実行される第2処理のフローチャートである。 従来のシミュレーション装置により実行される処理のフローチャートである。 本実施形態に係るシミュレーション装置によりシミュレーションされる第2操作対象の動きの概略図である。
以下、本発明の一側面に係る実施の形態(以下、「本実施形態」と表記する。)を、図面に基づいて説明する。なお、各図において、同一の符号を付したものは、同一又は同様の構成を有する。
§1 適用例
図1は、本発明の実施形態に係るシミュレーション装置10によりシミュレーションされる第1操作対象T1の動きの概略図である。第1操作対象T1は、容器オブジェクトObに入っている液体である。容器オブジェクトObは、ロボットハンドHにより把持され、動かされる。シミュレーション装置10は、ロボットハンドHにより容器オブジェクトObを把持して移動させる場合に、液体である第1操作対象T1が容器オブジェクトObからこぼれないように、しかし短時間で移動させるロボットハンドHの動作をシミュレーションする。図1では、静止状態にある第1操作対象T1を左側に示し、ロボットハンドHにより容器オブジェクトObが動かされ、第1操作対象T1の液面が揺らいでいる状態を右側に示している。
シミュレーション装置10は、第1操作対象T1を表すモデルの構成条件と、第1操作対象T1に加わる外力の条件とを設定し、それらの条件の下で、既存のシミュレーション手法により第1操作対象T1の動きをシミュレーションする。シミュレーション装置10は、例えば、液体である第1操作対象T1を複数の粒子に分解したモデルを用いて、いわゆる粒子法によって複数の粒子の動きをシミュレーションしてよい。この場合、モデルの構成条件は、粒子径及び粒子間の相互作用を定める条件を含んでよい。また、外力の条件は、容器オブジェクトObによる境界条件と、ロボットハンドHにより加えられる力の条件とを含んでよい。
シミュレーション装置10は、粒子法によってシミュレーションした複数の粒子の動きのうち、第1操作対象T1の液面に位置する一部の粒子の動きを表すデータを学習データとしてよい。ここで、粒子の動きを表すデータは、粒子の位置、速度、運動量及び加速度の少なくともいずれかを表すデータを含んでよい。第1操作対象T1のように操作対象が液体であるとき、操作対象の表面は、液体の液面であり、複数の代表点の動きは、複数の位置における液面の鉛直方向の動きによって表されてよい。シミュレーション装置10は、例えば、容器オブジェクトObの内部を3次元格子に区切り、容器オブジェクトObを横断するXY平面の各格子について、最もZ方向(鉛直方向)の値が大きい粒子を選択し、当該粒子のXYZ座標を代表点の一つとする処理を繰り返して、第1操作対象T1の液面に位置する一部の粒子の動きを表すデータを生成してよい。
図1では、第1操作対象T1の液面に位置する一部の粒子として、第1粒子p1、第2粒子p2、第3粒子p3、第4粒子p4、第5粒子p5、第6粒子p6、第7粒子p7、第8粒子p8、第9粒子p9、第10粒子p10、第11粒子p11及び第12粒子p12を示している。第1粒子p1、第2粒子p2、第3粒子p3、第4粒子p4、第5粒子p5、第6粒子p6、第7粒子p7、第8粒子p8、第9粒子p9、第10粒子p10、第11粒子p11及び第12粒子p12は、ある時刻において第1操作対象T1の液面に位置する代表点である。ここで、第1操作対象T1の液面に位置する粒子は、時々刻々と変化してよく、必ずしも同じ粒子でなくてよい。本例では、ロボットハンドHにより容器オブジェクトObが動かされることにより、第1粒子p1、第2粒子p2、第3粒子p3、第4粒子p4、第5粒子p5及び第6粒子p6の高さがほとんど同じである左側の状態から、液体が攪拌されて第1操作対象T1の液面に位置する粒子が変わり、第7粒子p7、第8粒子p8、第9粒子p9、第10粒子p10、第11粒子p11及び第12粒子の高さがばらついている右側の状態に遷移している。
シミュレーション装置10は、第1操作対象T1を表すモデルの構成条件、第1操作対象T1に加わる外力の条件及びシミュレーションにおける第1操作対象T1の液面に位置する複数の代表点(第1~第12粒子等)の動きを表すデータを含む学習データを生成する。そして、シミュレーション装置10は、学習データを用いた教師有り学習により、第1操作対象T1を表すモデルの構成条件、第1操作対象T1に加わる外力の条件及び複数の代表点(第1~第12粒子等)の初期条件を入力として、複数の代表点(第1~第12粒子等)の動きを表すデータを出力する学習モデルを生成する。学習モデルは、物理現象を再現するシミュレーションを直接実行することなく、複数の代表点の位置、速度、運動量及び加速度の少なくともいずれかを予測する。
このように、第1操作対象T1を表すモデルの動きを任意の手法によりシミュレーションして、そのシミュレーション結果を用いた教師有り学習により学習モデルを生成することで、演算負荷の大きいシミュレーションを比較的演算負荷の小さい学習モデルによる代表点の動きの予測に置き換えることができ、操作対象の動きのシミュレーションに要する演算負荷を低減することができ、演算量を減らすことができる。
§2 構成例
[ハードウェア構成]
図2は、本実施形態に係るシミュレーション装置10のハードウェア構成を示す図である。シミュレーション装置10は、CPU(Central Processing Unit)10a、RAM(Random Access Memory)10b、ROM(Read Only Memory)10c、通信部10d、入力部10e及び表示部10fを備える。CPU10a、RAM10b、ROM10c、通信部10d、入力部10e及び表示部10fは、バスを介して相互にデータ送受信可能に接続される。なお、本例ではシミュレーション装置10が一台のコンピュータで構成される場合について説明するが、シミュレーション装置10は、複数のコンピュータが組み合わされて実現されてもよい。また、図2で示す構成は一例であり、シミュレーション装置10はこれら以外の構成を有してもよいし、これらの構成のうち一部を有さなくてもよい。
<CPU>
CPU10aは、シミュレーション装置10に備えられたプロセッサであり、RAM10b及びROM10cに記憶されたプログラムの実行に関する制御やデータの演算、加工を行う。CPU10aは、既存のシミュレーション手法による操作対象の動きのシミュレーション結果を再現する学習モデルを生成するプログラム(シミュレーションプログラム)を実行する演算部である。CPU10aは、入力部10eや通信部10dから種々のデータを受け取り、データの演算結果を表示部10fに表示したり、RAM10bやROM10cに格納したりする。
<RAM>
RAM10bは、シミュレーション装置10に備えられた記憶部であり、データの書き換えが可能なものである。RAM10bは、例えば半導体記憶素子で構成されてよい。RAM10bは、CPU10aが実行するシミュレーションプログラム及びシミュレーション空間でロボットや周辺環境を構成するためのデータ等を記憶してよい。なお、これらは例示であって、RAM10bには、これら以外のデータが記憶されていてもよいし、これらの一部が記憶されていなくてもよい。
<ROM>
ROM10cは、シミュレーション装置10に備えられた記憶部であり、データの読み出しが可能なものである。ROM10cは、例えば半導体記憶素子で構成されてよい。ROM10cは、例えばシミュレーションプログラムや、書き換えが行われないデータを記憶してよい。
<通信部>
通信部10dは、シミュレーション装置10を他の機器に接続するインターフェースである。通信部10dは、LAN(Local Area Network)やインターネット等の通信ネットワークに接続されてよい。
<入力部>
入力部10eは、ユーザからデータの入力を受け付けるものであり、例えば、キーボード、マウス等のポインティングデバイス及びタッチパネルを含んでよい。
<表示部>
表示部10fは、CPU10aによる演算結果を視覚的に表示するものであり、例えば、LCD(Liquid Crystal Display)により構成されてよい。表示部10fは、操作対象のシミュレーション結果であったり、ロボットと操作対象を含む全体のシミュレーション結果であったりを表示してよい。
シミュレーションプログラムは、RAM10bやROM10c等のコンピュータによって読み取り可能な記憶媒体に記憶されて提供されてもよいし、通信部10dにより接続される通信ネットワークを介して提供されてもよい。シミュレーション装置10では、CPU10aがシミュレーションプログラムを実行することにより、次図を用いて説明する第1処理部20及び第2処理部30の動作が実現される。なお、これらの物理的な構成は例示であって、必ずしも独立した構成でなくてもよい。例えば、シミュレーション装置10は、CPU10aとRAM10bやROM10cが一体化したLSI(Large-Scale Integration)を備えていてもよい。
[機能構成]
図3は、本実施形態に係るシミュレーション装置10の機能構成を示す図である。シミュレーション装置10は、第1処理部20と第2処理部30とを備える。第1処理部20は、操作対象の動きを予測する学習モデルを生成する処理を行う。第2処理部30は、生成された学習モデルを用いて、ロボット及び操作対象を含む全体のシミュレーションを行う。第1処理部20は、第1設定部11、第2設定部12、第1シミュレーション部13、生成部14、学習部15及び第1記憶部16を含む。また、第2処理部30は、第2シミュレーション部17、第2記憶部18及び予測部19を含む。
<第1設定部>
第1設定部11は、操作対象を表すモデルの構成条件を設定する。ここで、操作対象は、例えばロボットハンドにより直接把持される対象であったり、間接的に把持される対象であったり、ハンドに限らないロボットのエンドエフェクタにより直接的又は間接的に操作される対象であったり、人により直接的又は間接的に操作される対象であったりしてよい。また、モデルの構成条件は、操作対象を表すモデルをシミュレーション空間で現実と同様に動かすための物理的条件を含み、操作対象の可撓性を表す条件及び粘性を表す条件のいずれかを含んでよい。操作対象は、柔軟物、液体及び気体のいずれかを含んでよい。柔軟物とは、可撓性を有する物であり、例えばゴムで形成されたケーブル、紙や布を含む。操作対象が液体又は気体である場合、ロボットにより操作対象である液体又は気体が格納された容器を把持することがある。また、操作対象が気体である場合、ロボットにより操作対象である気体を噴射するノズルを把持して、気体を他の部材に吹き付ける場合がある。
本実施形態に係るシミュレーション装置10により、操作対象の代表点の動きを予測する学習モデルを生成することで、柔軟物、液体及び気体のようにシミュレーションの演算負荷が大きい操作対象であっても、比較的演算負荷の小さい学習モデルによる演算によって操作対象の代表点の動きを予測することができ、操作対象の動きのシミュレーションに要する演算負荷を低減することができ、演算量を減らすことができる。
<第2設定部>
第2設定部12は、操作対象に加わる外力の条件を設定する。操作対象に加わる外力は、操作対象に対してロボットにより直接的又は間接的に加えられる外力を含んでよい。また、操作対象に加わる外力は、例えば搬送装置により加えられる外力等のロボット以外の構成により加えられる外力を含んでよい。
<第1シミュレーション部>
第1シミュレーション部13は、操作対象を表すモデルの構成条件及び操作対象に加わる外力の条件の下で、操作対象の動きをシミュレーションする。第1シミュレーション部13は、任意の手法を用いて操作対象の動きをシミュレーションしてよいが、例えば、粒子法や有限要素法を用いてよい。
<生成部>
生成部14は、操作対象を表すモデルの構成条件、操作対象に加わる外力の条件及び第1シミュレーション部13によるシミュレーションにおける操作対象の表面に位置する複数の代表点の動きを表すデータを含む学習データを生成する。生成部14により生成された学習データは、第1記憶部16に学習データ16aとして記憶されてよい。ここで、複数の代表点は、操作対象の任意の部分に位置してよいが、操作対象の表面に位置する場合、操作対象の外形の動きを比較的少ない代表点によって表すことができる。なお、生成部14は、操作対象の表面に位置する複数の代表点の動きを表すデータを含む学習データのみならず、操作対象を表すモデルの構成条件、操作対象に加わる外力の条件及び第1シミュレーション部13によるシミュレーションにおける操作対象の一部に位置する複数の代表点の動きを表すデータを含む学習データを生成してもよい。
生成部14は、操作対象を表すモデルの構成条件、第1シミュレーション部13によるシミュレーションの所定時刻に操作対象を表すモデルに加わる外力の条件及び所定時刻における複数の代表点の動きを表すデータを入力データとして含み、所定時刻から所定時間経過後の時刻における複数の代表点の動きを表すデータを出力データとして含む学習データを生成してよい。ここで、所定時間は、第1シミュレーション部13によるシミュレーションにおける最小時間であってもよいし、最小時間の数倍であってもよい。このように、学習モデルによって所定時間経過後の代表点の動きを予測することができ、学習モデルによる予測を繰り返し実行することで、任意の時刻における代表点の動きを予測することができる。なお、学習データに含まれる入力データとは、学習モデルの教師有り学習において学習モデルに入力されるデータである。また、学習データに含まれる出力データとは、学習モデルの教師有り学習において学習モデルの出力と比較されるデータであり、正解を示すデータである。
操作対象が液体であるとき、操作対象の表面は、液体の液面であり、複数の代表点の動きは、複数の位置における液面の鉛直方向の動きによって表されてよい。学習モデルによって液体の液面に位置する複数の代表点の動きを予測することで、液体全体の動きを予測する場合よりも学習モデルの演算負荷を小さくすることができ、演算量を減らすことができる。
操作対象が液体の場合、第1シミュレーション部13は、操作対象である液体を複数の粒子に分解したモデルを用いて、複数の粒子の動きをシミュレーションしてよい。この場合、操作対象を表すモデルの構成条件は、粒子の数、粒子の大きさ、粒子間の相互作用に関する条件を含んでよく、第1シミュレーション部13は、粒子法により操作対象を表す複数の粒子の動きをシミュレーションしてよい。そして、液体の液面に位置する複数の代表点の動きを表すデータは、複数の粒子のうち、第1シミュレーション部13によるシミュレーションの所定時刻における液体の液面に位置する一部の粒子の動きを表すデータであってよい。このように、液体全体の動きを粒子モデルによってシミュレーションした結果のうち、液面に位置する粒子の動きを再現する学習モデルを生成することができ、液体全体の動きを予測する場合よりも学習モデルの演算負荷を小さくすることができ、演算量を減らすことができる。
また、第1シミュレーション部13は、操作対象を節点により接続された複数の構成要素に分解したモデルを用いて、節点の動きをシミュレーションしてよい。この場合、操作対象を表すモデルの構成条件は、構成要素及び節点の数、構成要素の大きさ、構成要素の形状に関する条件を含んでよく、第1シミュレーション部13は、有限要素法により操作対象を表す複数の節点の動きをシミュレーションしてよい。また、複数の代表点は、操作対象の表面に位置してよい。そして、操作対象の表面に位置する複数の代表点の数は、節点の数より少なくてよい。これにより、操作対象全体の動きを有限要素法によってシミュレーションした結果のうち、操作対象の表面に位置する一部の節点の動きを再現する学習モデルを生成することができ、操作対象を表す節点全体の動きを予測する場合よりも学習モデルの演算負荷を小さくすることができ、演算量を減らすことができる。
<学習部>
学習部15は、学習データを用いた教師有り学習により、操作対象を表すモデルの構成条件、操作対象に加わる外力の条件及び操作対象の表面に位置する複数の代表点の初期条件を入力として、複数の代表点の動きを表すデータを出力する学習モデルを生成する。学習部15により生成された学習モデルは、第1記憶部16に学習モデル16bとして記憶されてよい。学習部15により生成される学習モデル16bは、例えばニューラルネットワークを用いたモデルであってよく、誤差逆伝播法によりニューラルネットワークの重みパラメータ等を学習データに対して最適化することで学習モデル16bを生成してよい。
<第2シミュレーション部>
第2シミュレーション部17は、ロボットの動きをシミュレーションする。本実施形態では、第2シミュレーション部17は、ロボットハンドの動きをシミュレーションする。第2シミュレーション部17は、第2記憶部18に記憶されたロボットハンドデータ18aを参照して、シミュレーション空間におけるロボットハンドの動作をシミュレーションする。ロボットハンドデータ18aは、ティーチングされたロボットハンドの軌跡に関するデータ、ロボットハンドを構成するアームの寸法に関するデータ及びロボットハンドを構成するサーボモータのトルクに関するデータ等を含んでよい。第2シミュレーション部17は、第2記憶部18に記憶された環境データ18bを参照して、ロボットハンドの動作とあわせて周辺環境のシミュレーションを行ってもよい。環境データ18bは、ロボットハンドが設置された環境の気温や湿度等に関するデータ、ロボットハンドと共に用いられる搬送装置や加工装置等に関するデータ及びロボットハンドと干渉し得る作業者や障害物に関するデータ等を含んでよい。第2シミュレーション部17は、作業者や障害物との干渉を避けながら、搬送装置や加工装置と協働するようにロボットハンドの動作をシミュレーションしてもよい。
<予測部>
予測部19は、第2シミュレーション部17によるシミュレーションにおいてロボットにより操作対象に加えられる外力の条件及び操作対象を表すモデルの構成条件を学習モデル16bに入力し、複数の代表点の動きを予測する。予測部19は、学習モデル16bから出力されるデータに基づいて、操作対象を表すモデルの動きを直接シミュレートすることなく、操作対象の表面に位置する複数の代表点の動きを予測する。
第2シミュレーション部17は、予測部19により予測された複数の代表点の動きと、シミュレーションしたロボットハンドの動きとを合成する。例えば、操作対象が容器に入った液体であり、ロボットハンドにより容器を把持して移動させる動作をシミュレーションする場合、第2シミュレーション部17によりロボットハンドの動作をシミュレーションして、予測部19により容器に入った液体の液面の動きを予測し、第2シミュレーション部17は、それらを合成することで、ロボットハンド及び操作対象を含む全体のシミュレーションを行う。このように、学習モデルによって、操作対象を表すモデルの代表点の動きを比較的演算負荷を小さくして予測し、ロボットハンドの動きを任意の手法によりシミュレーションした結果と合成することで、ロボットハンド及び操作対象を含む全体のシミュレーションに要する演算負荷を低減することができ、演算量を減らすことができる。
§3 動作例
図4は、本実施形態に係るシミュレーション装置10により実行される第1処理のフローチャートである。第1処理は、シミュレーション装置10の第1処理部20により実行される処理であり、操作対象の複数の代表点の動きを予測する学習モデルを生成する処理である。
はじめに、シミュレーション装置10は、操作対象を表すモデルの構成条件を設定し(S10)、操作対象に加わる外力の条件を設定し(S11)、操作対象の初期条件を設定する(S12)。
その後、シミュレーション装置10は、操作対象の動きを所定時間にわたってシミュレーションする(S13)。ここで、所定時間は、シミュレーションにおける最小時間であってもよいし、最小時間の数倍の時間であってもよい。
シミュレーション装置10は、操作対象の表面に位置する複数の代表点の動きを表す値を取得する(S14)。そして、シミュレーション装置10は、操作対象を表すモデル構成条件、シミュレーションの初期時刻における外力の条件及び初期時刻における複数の代表点の動きを表すデータを入力データとして含み、初期時刻から所定時間経過後の時刻における複数の代表点の動きを表すデータを出力データとして含む学習データを生成する(S15)。
その後、学習データの生成を終了しない場合(S16:NO)、シミュレーション装置10は、再び構成条件の設定(S10)、外力の条件の設定(S11)、初期条件の設定(S12)を行い、操作対象の動きをシミュレーションして(S13)、学習データを生成する(S14,S15)。ここで、同一の操作対象についてシミュレーションを行う場合、構成条件の設定(S10)は省略してよい。また、同一の操作対象について連続した動きのシミュレーションを行う場合、直前のシミュレーションにより得られた操作対象の動きを表すデータに基づいて、次のシミュレーションにおける操作対象の初期条件を定めてよい。
一方、学習データの生成を終了する場合(S16:YES)、シミュレーション装置10は、学習データを用いて、複数の代表点の動きを表すデータを出力する学習モデルを生成し、保存する(S17)。以上により、第1処理が終了する。
図5は、本実施形態に係るシミュレーション装置10により実行される第2処理のフローチャートである。第2処理は、シミュレーション装置10の第2処理部30により実行される処理であり、第1処理により生成された学習モデルを用いて、ロボットハンド及び操作対象を含む全体をシミュレーションする処理である。
はじめに、シミュレーション装置10は、操作対象を表すモデルの構成条件を設定し(S18)、操作対象の初期条件を設定し(S19)、操作対象に加わる外力の条件を設定する(S20)。ここで、操作対象に加わる外力の条件は、ロボットハンドについて予定されている動作に基づいて定められてよい。
その後、シミュレーション装置10は、学習モデルにより操作対象の動きを表すデータを出力し(S21)、シミュレーション空間における操作対象を表すモデルを変形させる(S22)。また、シミュレーション装置10は、ロボットハンド及び周辺環境の動きを所定時間にわたってシミュレーションし、操作対象を表すモデルの変形と合成する(S23)。ここで、所定時間は、第1処理における所定時間と同一であってよく、シミュレーションにおける最小時間であってもよいし、最小時間の数倍の時間であってもよい。
シミュレーションを終了しない場合(S24:NO)、シミュレーション装置10は、次のロボットハンドの動作に基づき、操作対象に加わる外力の条件を設定し(S20)、学習モデルにより操作対象の動きを予測して(S21)、操作対象を表すモデルを変形させ(S22)、ロボットハンド及び周辺環境の動きと操作対象を表すモデルの変形とを合成する(S23)。
一方、シミュレーションを終了する場合(S24:YES)、シミュレーション装置10は、シミュレーション結果を記憶部に書き出したり、表示部に表示したりして、第2処理を終了する。
図6は、従来のシミュレーション装置により実行される処理のフローチャートである。従来のシミュレーション装置による処理は、操作対象の動きを所定時間にわたってシミュレーションする処理(S103)を実行する点で、本実施形態に係るシミュレーション装置10による第2処理と相違する。
従来のシミュレーション装置による処理では、はじめに操作対象を表すモデルの構成条件を設定し(S100)、操作対象の初期条件を設定し(S101)、操作対象に加わる外力の条件を設定する(S102)。ここで、操作対象に加わる外力の条件は、ロボットハンドについて予定されている動作に基づいて定められてよい。
その後、従来のシミュレーション装置は、操作対象の動きを所定時間にわたってシミュレーション(S103)する。ここで、操作対象の動きを所定時間にわたってシミュレーションする処理(S103)は、有限要素法や粒子法を用いて行われる処理であり、一般的に演算負荷が大きく、結果を得るまでに比較的長い時間を要する。従来のシミュレーション装置は、操作対象の動きのシミュレーション結果に応じてシミュレーション空間における操作対象を表すモデルを変形させ(S104)、ロボットハンド及び周辺環境の動きを所定時間にわたってシミュレーションし、操作対象を表すモデルの変形と合成する(S105)。
シミュレーションを終了しない場合(S106:NO)、従来のシミュレーション装置は、次のロボットハンドの動作に基づき、操作対象に加わる外力の条件を設定し(S102)、操作対象の動きを所定時間にわたってシミュレーション(S103)、操作対象を表すモデルを変形させ(S104)、ロボットハンド及び周辺環境の動きと操作対象を表すモデルの変形とを合成する(S105)。
このように、従来のシミュレーション装置は、シミュレーションを所定時間進める毎に、操作対象の動きを有限要素法や粒子法によって所定時間にわたってシミュレーションする。一方、本実施形態に係るシミュレーション装置10は、シミュレーションを所定時間進める毎に、操作対象の代表点の動きを学習モデルによって算出する。このような違いにより、本実施形態に係るシミュレーション装置10は、従来のシミュレーション装置に比べて、操作対象の動きのシミュレーションに要する演算負荷を低減することができ、演算量を減らすことができる。
図7は、本実施形態に係るシミュレーション装置10によりシミュレーションされる第2操作対象T2の動きの概略図である。第2操作対象T2は、紙又は布であり、柔軟物である。第2操作対象T2は、ロボットにより把持され、動かされる。シミュレーション装置10は、ロボットにより第2操作対象T2を把持して移動させる場合に、柔軟物である第2操作対象T2が損傷したり絡まったりしないように、しかし短時間で移動させるロボットの動作をシミュレーションする。図7では、静止状態にある第2操作対象T2を左側に示し、ロボットにより把持され、第2操作対象T2が変形している状態を右側に示している。
シミュレーション装置10は、第2操作対象T2を表すモデルの構成条件と、第2操作対象T2に加わる外力の条件とを設定し、それらの条件の下で、既存のシミュレーション手法により第2操作対象T2の動きをシミュレーションする。シミュレーション装置10は、例えば、柔軟物である第2操作対象T2を、節点により接続された複数の構成要素に分解したモデルを用いて、いわゆる有限要素法によって複数の節点の動きをシミュレーションしてよい。この場合、モデルの構成条件は、構成要素及び節点の数、構成要素の大きさ、構成要素の形状に関する条件を含んでよい。また、外力の条件は、ロボットにより加えられる力の条件を含んでよい。
シミュレーション装置10は、有限要素法によってシミュレーションした複数の節点の動きのうち、第2操作対象T2の表面に位置する一部の節点の動きを表すデータを学習データとしてよい。ここで、節点の動きを表すデータは、節点の位置、速度、運動量及び加速度の少なくともいずれかを表すデータを含んでよい。
図7では、第2操作対象T2の表面に位置する一部の節点として、第1節点p11、第2節点p12、第3節点p13、第4節点子p14及び第5節点p15を示している。なお、これらは一例であり、複数の代表点とする節点は、これら以外の点を含んでもよい。本例では、ロボットにより第2操作対象T2が把持されることにより、第1節点p11、第2節点p12、第3節点p13、第4節点子p14及び第5節点p15が一直線上に位置する左側の状態から、第1節点p11、第2節点p12、第3節点p13、第4節点子p14及び第5節点p15の位置がばらついている右側の状態に遷移している。
シミュレーション装置10は、第2操作対象T2を表すモデルの構成条件、第2操作対象T2に加わる外力の条件及びシミュレーションにおける第2操作対象T2の表面に位置する複数の代表点(第1~第5節点)の動きを表すデータを含む学習データを生成する。そして、シミュレーション装置10は、学習データを用いた教師有り学習により、第2操作対象T2を表すモデルの構成条件、第2操作対象T2に加わる外力の条件及び複数の代表点(第1~第5節点)の初期条件を入力として、複数の代表点(第1~第5節点)の動きを表すデータを出力する学習モデルを生成する。学習モデルは、物理現象を再現するシミュレーションを直接実行することなく、複数の代表点の位置、速度、運動量及び加速度の少なくともいずれかを予測する。
このように、第2操作対象T2を表すモデルの動きを任意の手法によりシミュレーションして、そのシミュレーション結果を用いた教師有り学習により学習モデルを生成することで、演算負荷の大きいシミュレーションを比較的演算負荷の小さい学習モデルによる代表点の動きの予測に置き換えることができ、ロボット及び操作対象を含む全体のシミュレーションに要する演算負荷を低減することができ、演算量を減らすことができる。
以上説明した実施形態は、本発明の理解を容易にするためのものであり、本発明を限定して解釈するためのものではない。実施形態が備える各要素並びにその配置、材料、条件、形状及びサイズ等は、例示したものに限定されるわけではなく適宜変更することができる。また、異なる実施形態で示した構成同士を部分的に置換し又は組み合わせることが可能である。
[付記1]
操作対象を表すモデルの構成条件を設定する第1設定部(11)と、
前記操作対象に加わる外力の条件を設定する第2設定部(12)と、
前記構成条件及び前記外力の条件の下で、前記操作対象の動きをシミュレーションする第1シミュレーション部(13)と、
前記構成条件、前記外力の条件及び前記第1シミュレーション部(13)によるシミュレーションにおける前記操作対象の表面に位置する複数の代表点の動きを表すデータを含む学習データを生成する生成部(14)と、
前記学習データを用いた教師有り学習により、前記構成条件、前記外力の条件及び前記複数の代表点の初期条件を入力として、前記複数の代表点の動きを表すデータを出力する学習モデルを生成する学習部(15)と、
を備えるシミュレーション装置(10)。
[付記2]
前記生成部(14)は、前記構成条件、前記第1シミュレーション部(13)によるシミュレーションの所定時刻における前記外力の条件及び前記所定時刻における前記複数の代表点の動きを表すデータを入力データとして含み、前記所定時刻から所定時間経過後の時刻における前記複数の代表点の動きを表すデータを出力データとして含む前記学習データを生成する、
請求項1に記載のシミュレーション装置(10)。
[付記3]
ロボットの動きをシミュレーションする第2シミュレーション部(17)と、
前記第2シミュレーション部(17)によるシミュレーションにおいて前記ロボットにより前記操作対象に加えられる外力の条件及び前記構成条件を前記学習モデルに入力し、前記複数の代表点の動きを予測する予測部(19)と、をさらに備え、
前記第2シミュレーション部(17)は、前記予測部(19)により予測された前記複数の代表点の動きと、シミュレーションした前記ロボットの動きとを合成する、
請求項1又は2に記載のシミュレーション装置(10)。
[付記4]
前記操作対象は、柔軟物、液体及び気体のいずれかを含む、
請求項1から3のいずれか一項に記載のシミュレーション装置(10)。
[付記5]
前記操作対象が液体であるとき、前記操作対象の表面は、前記液体の液面であり、前記複数の代表点の動きは、複数の位置における前記液面の鉛直方向の動きによって表される、
請求項4に記載のシミュレーション装置(10)。
[付記6]
前記第1シミュレーション部(13)は、前記液体を複数の粒子に分解した前記モデルを用いて、前記複数の粒子の動きをシミュレーションし、
前記複数の代表点の動きを表すデータは、前記複数の粒子のうち、前記第1シミュレーション部(13)によるシミュレーションの所定時刻における前記液体の液面に位置する一部の粒子の動きを表すデータである、
請求項5に記載のシミュレーション装置(10)。
[付記7]
前記構成条件は、前記操作対象の可撓性を表す条件及び粘性を表す条件のいずれかを含む、
請求項1から6のいずれか一項に記載のシミュレーション装置(10)。
[付記8]
前記第1シミュレーション部(13)は、前記操作対象を節点により接続された複数の構成要素に分解した前記モデルを用いて、前記節点の動きをシミュレーションし、
前記複数の代表点の数は、前記節点の数より少ない、
請求項1から7のいずれか一項に記載のシミュレーション装置(10)。
[付記9]
操作対象を表すモデルの構成条件を設定することと、
前記操作対象に加わる外力の条件を設定することと、
前記構成条件及び前記外力の条件の下で、前記操作対象の動きをシミュレーションすることと、
前記構成条件、前記外力の条件及び前記第1シミュレーション部(13)によるシミュレーションにおける前記操作対象の表面に位置する複数の代表点の動きを表すデータを含む学習データを生成することと、
前記学習データを用いた教師有り学習により、前記構成条件、前記外力の条件及び前記複数の代表点の初期条件を入力として、前記複数の代表点の動きを表すデータを出力する学習モデルを生成することと、
を含むシミュレーション方法。
[付記10]
シミュレーション装置(10)に備えられたプロセッサを、
操作対象を表すモデルの構成条件を設定する第1設定部(11)、
前記操作対象に加わる外力の条件を設定する第2設定部(12)、
前記構成条件及び前記外力の条件の下で、前記操作対象の動きをシミュレーションする第1シミュレーション部(13)、
前記構成条件、前記外力の条件及び前記第1シミュレーション部(13)によるシミュレーションにおける前記操作対象の表面に位置する複数の代表点の動きを表すデータを含む学習データを生成する生成部(14)、及び
前記学習データを用いた教師有り学習により、前記構成条件、前記外力の条件及び前記複数の代表点の初期条件を入力として、前記複数の代表点の動きを表すデータを出力する学習モデルを生成する学習部(15)、
として機能させるシミュレーションプログラム。
10…シミュレーション装置、10a…CPU、10b…RAM、10c…ROM、10d…通信部、10e…入力部、10f…表示部、11…第1設定部、12…第2設定部、13…第1シミュレーション部、14…生成部、15…学習部、16…第1記憶部、16a…学習データ、16b…学習モデル、17…第2シミュレーション部、18…第2記憶部、18a…ロボットハンドデータ、18b…環境データ、19…予測部、20…第1処理部、30…第2処理部

Claims (10)

  1. 操作対象を表すモデルの構成条件を設定する第1設定部と、
    前記操作対象に加わる外力の条件を設定する第2設定部と、
    前記構成条件及び前記外力の条件の下で、前記操作対象の動きをシミュレーションする第1シミュレーション部と、
    前記構成条件、前記外力の条件及び前記第1シミュレーション部によるシミュレーションにおける前記操作対象の表面に位置する複数の代表点の動きを表すデータを含む学習データを生成する生成部と、
    前記学習データを用いた教師有り学習により、前記構成条件、前記外力の条件及び前記複数の代表点の初期条件を入力として、前記複数の代表点の動きを表すデータを出力する学習モデルを生成する学習部と、
    を備えるシミュレーション装置。
  2. 前記生成部は、前記構成条件、前記第1シミュレーション部によるシミュレーションの所定時刻における前記外力の条件及び前記所定時刻における前記複数の代表点の動きを表すデータを入力データとして含み、前記所定時刻から所定時間経過後の時刻における前記複数の代表点の動きを表すデータを出力データとして含む前記学習データを生成する、
    請求項1に記載のシミュレーション装置。
  3. ロボットの動きをシミュレーションする第2シミュレーション部と、
    前記第2シミュレーション部によるシミュレーションにおいて前記ロボットにより前記操作対象に加えられる外力の条件及び前記構成条件を前記学習モデルに入力し、前記複数の代表点の動きを予測する予測部と、をさらに備え、
    前記第2シミュレーション部は、前記予測部により予測された前記複数の代表点の動きと、シミュレーションした前記ロボットの動きとを合成する、
    請求項1又は2に記載のシミュレーション装置。
  4. 前記操作対象は、柔軟物、液体及び気体のいずれかを含む、
    請求項1から3のいずれか一項に記載のシミュレーション装置。
  5. 前記操作対象が液体であるとき、前記操作対象の表面は、前記液体の液面であり、前記複数の代表点の動きは、複数の位置における前記液面の鉛直方向の動きによって表される、
    請求項4に記載のシミュレーション装置。
  6. 前記第1シミュレーション部は、前記液体を複数の粒子に分解した前記モデルを用いて、前記複数の粒子の動きをシミュレーションし、
    前記複数の代表点の動きを表すデータは、前記複数の粒子のうち、前記第1シミュレーション部によるシミュレーションの所定時刻における前記液体の液面に位置する一部の粒子の動きを表すデータである、
    請求項5に記載のシミュレーション装置。
  7. 前記構成条件は、前記操作対象の可撓性を表す条件及び粘性を表す条件のいずれかを含む、
    請求項1から6のいずれか一項に記載のシミュレーション装置。
  8. 前記第1シミュレーション部は、前記操作対象を節点により接続された複数の構成要素に分解した前記モデルを用いて、前記節点の動きをシミュレーションし、
    前記複数の代表点の数は、前記節点の数より少ない、
    請求項1から7のいずれか一項に記載のシミュレーション装置。
  9. シミュレーション装置が、操作対象を表すモデルの構成条件を設定することと、
    前記シミュレーション装置が、前記操作対象に加わる外力の条件を設定することと、
    前記シミュレーション装置が、前記構成条件及び前記外力の条件の下で、前記操作対象の動きをシミュレーションすることと、
    前記シミュレーション装置が、前記構成条件、前記外力の条件及び前記シミュレーションにおける前記操作対象の表面に位置する複数の代表点の動きを表すデータを含む学習データを生成することと、
    前記シミュレーション装置が、前記学習データを用いた教師有り学習により、前記構成条件、前記外力の条件及び前記複数の代表点の初期条件を入力として、前記複数の代表点の動きを表すデータを出力する学習モデルを生成することと、
    を含むシミュレーション方法。
  10. シミュレーション装置に備えられたプロセッサを、
    操作対象を表すモデルの構成条件を設定する第1設定部、
    前記操作対象に加わる外力の条件を設定する第2設定部、
    前記構成条件及び前記外力の条件の下で、前記操作対象の動きをシミュレーションする第1シミュレーション部、
    前記構成条件、前記外力の条件及び前記第1シミュレーション部によるシミュレーションにおける前記操作対象の表面に位置する複数の代表点の動きを表すデータを含む学習データを生成する生成部、及び
    前記学習データを用いた教師有り学習により、前記構成条件、前記外力の条件及び前記複数の代表点の初期条件を入力として、前記複数の代表点の動きを表すデータを出力する学習モデルを生成する学習部、
    として機能させるシミュレーションプログラム。
JP2018192393A 2018-10-11 2018-10-11 シミュレーション装置、シミュレーション方法及びシミュレーションプログラム Active JP7012944B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2018192393A JP7012944B2 (ja) 2018-10-11 2018-10-11 シミュレーション装置、シミュレーション方法及びシミュレーションプログラム
EP19872157.3A EP3866169A4 (en) 2018-10-11 2019-10-11 SIMULATION DEVICE, SIMULATION METHOD AND SIMULATION PROGRAM
US17/269,531 US20210182459A1 (en) 2018-10-11 2019-10-11 Simulation device, simulation method, and computer-readable storage medium
CN201980052349.0A CN112534366A (zh) 2018-10-11 2019-10-11 模拟装置、模拟方法以及模拟程序
PCT/JP2019/040142 WO2020075834A1 (ja) 2018-10-11 2019-10-11 シミュレーション装置、シミュレーション方法及びシミュレーションプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018192393A JP7012944B2 (ja) 2018-10-11 2018-10-11 シミュレーション装置、シミュレーション方法及びシミュレーションプログラム

Publications (2)

Publication Number Publication Date
JP2020060996A JP2020060996A (ja) 2020-04-16
JP7012944B2 true JP7012944B2 (ja) 2022-01-31

Family

ID=70163999

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018192393A Active JP7012944B2 (ja) 2018-10-11 2018-10-11 シミュレーション装置、シミュレーション方法及びシミュレーションプログラム

Country Status (5)

Country Link
US (1) US20210182459A1 (ja)
EP (1) EP3866169A4 (ja)
JP (1) JP7012944B2 (ja)
CN (1) CN112534366A (ja)
WO (1) WO2020075834A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113656995B (zh) * 2021-07-06 2024-03-26 兰州空间技术物理研究所 一种基于电子轨迹积分法的电离规灵敏度数值计算方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006275722A (ja) 2005-03-29 2006-10-12 Bridgestone Sports Co Ltd ゴルフボールの弾道シミュレーション方法及び飛行シミュレーション方法
JP2014238828A (ja) 2013-05-10 2014-12-18 国立大学法人電気通信大学 ユーザインタフェース装置およびユーザインタフェース制御プログラム
JP2018126799A (ja) 2017-02-06 2018-08-16 セイコーエプソン株式会社 制御装置、ロボットおよびロボットシステム

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010198399A (ja) * 2009-02-26 2010-09-09 Fuji Xerox Co Ltd 粒子挙動解析装置、プログラム
JP2011081530A (ja) * 2009-10-06 2011-04-21 Univ Of Tokyo 粒子モデルの離散要素法解析シミュレーション方法、離散要素法解析シミュレーションプログラム、及び離散要素法解析シミュレーション装置
JP6107281B2 (ja) * 2013-03-22 2017-04-05 セイコーエプソン株式会社 ロボット及びロボットの制御方法
JP5927270B2 (ja) * 2014-11-06 2016-06-01 ファナック株式会社 ロボットシミュレーション装置
CN104484522B (zh) * 2014-12-11 2017-10-27 西南科技大学 一种基于现实场景的机器人模拟演练系统的构建方法
CN107877528A (zh) * 2017-12-19 2018-04-06 北京君盾装备技术有限公司 一种执法技能对抗训练智能机器人系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006275722A (ja) 2005-03-29 2006-10-12 Bridgestone Sports Co Ltd ゴルフボールの弾道シミュレーション方法及び飛行シミュレーション方法
JP2014238828A (ja) 2013-05-10 2014-12-18 国立大学法人電気通信大学 ユーザインタフェース装置およびユーザインタフェース制御プログラム
JP2018126799A (ja) 2017-02-06 2018-08-16 セイコーエプソン株式会社 制御装置、ロボットおよびロボットシステム

Also Published As

Publication number Publication date
WO2020075834A1 (ja) 2020-04-16
EP3866169A4 (en) 2022-07-06
US20210182459A1 (en) 2021-06-17
EP3866169A1 (en) 2021-08-18
JP2020060996A (ja) 2020-04-16
CN112534366A (zh) 2021-03-19

Similar Documents

Publication Publication Date Title
Boyer et al. Dynamics of continuum and soft robots: A strain parameterization based approach
US8301421B2 (en) Automatic control system generation for robot design validation
Žlajpah Simulation in robotics
Leger Automated synthesis and optimization of robot configurations: an evolutionary approach
US8140189B2 (en) Apparatus and method for computing operational-space physical quantity
US20100168950A1 (en) Path Planning Device, Path Planning Method, and Computer Program
US8386213B2 (en) Device, method and computer program for simulation of collision events between physical objects
JP2012081568A (ja) ロボットの制御装置及び制御方法、並びにコンピューター・プログラム
JP2008509427A (ja) 多体系の運動をシミュレートするためのシステムおよび方法
Salvietti et al. Multicontact bilateral telemanipulation with kinematic asymmetries
Douville et al. Task-level object grasping for simulated agents
Remman et al. Robotic lever manipulation using hindsight experience replay and shapley additive explanations
JP7012944B2 (ja) シミュレーション装置、シミュレーション方法及びシミュレーションプログラム
Pelliccia et al. Task-based motion control of digital humans for industrial applications
Bohlin et al. Unified solution of manikin physics and positioning. Exterior root by introduction of extra parameters
Luo et al. Interactive generation of dynamically feasible robot trajectories from sketches using temporal mimicking
Sinha et al. Koopman operator–based knowledge-guided reinforcement learning for safe human–robot interaction
Wang et al. A virtual environment simulator for mechanical system dynamics with online interactive control
Pouliquen et al. Real-time finite element finger pinch grasp simulation
Andrews et al. Blended linear models for reduced compliant mechanical systems
Mattar e-GRASP: Robotic Hand Modeling and Simulation Environment
Yamamoto et al. Hybrid Simulation-based Optimization of Parallel Kinematics Mechanisms for Enhanced Virtual Reality Experiences
Keith et al. Haptic interaction with virtual avatars
Wang et al. Reinforcement Learning based End-to-End Control of Bimanual Robotic Coordination
Cheema et al. Discovering Fatigued Movements for Virtual Character Animation

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20201214

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20211119

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20211210

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220102

R150 Certificate of patent or registration of utility model

Ref document number: 7012944

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150