Penalty-Based Contact Model
- 別名: spring-damper contact model, penalty method contact
- カテゴリ: Software & tooling › Simulation & twins
- タグ: contact, physics-simulation, differentiable-simulation, numerical-methods, dynamics
物体のわずかな重なりを許し、貫通深さと貫通速度に比例するばね・ダンパの力で物体を押し離す接触モデル。
定義
ペナルティ法に基づく接触モデル(penalty-based contact model)は、接触を減衰付きの硬いばねとして扱う。二つの物体が重なると、シミュレータは接触法線に沿って貫通深さを測定し、反発力を加える。反発力は典型的には k と深さの積に d と貫通速度の積を加えたもので、k は剛性、d は減衰係数である。この力は物体が重なっている間だけ働き、接触が物体同士を引き寄せることのないようクリップされる。非線形の変種もある。例えば Hunt–Crossley モデルは、衝突の瞬間に生じる非物理的な力の跳びを避けるため、減衰力を貫通深さとともに大きくする。接線方向の摩擦は通常、クーロン摩擦を正則化したものとして加えられる。
この手法が魅力的なのは、単純で局所的だからである。接触力は現在の状態の陽な関数なので大域的な制約問題を解く必要がなく、力は状態に対して連続であるため、勾配に基づく最適化や微分可能シミュレーションに適している。もう一方の系統であるハード接触、つまり制約ベースの接触は、相補性問題や制約付き最適化によって非貫通を厳密に課すが、その代わりにソルバが複雑になり、振る舞いが非平滑になる。ソフト制約モデルやハイドロエラスティックモデルはその中間に位置する。
主な難しさは剛性にある。柔らかいばねでは目に見える貫通が生じ、跳ねるような、ふわふわした接触になる。硬いばねは貫通を小さく保つが、方程式が硬くなり、安定を保つには非常に小さな時間ステップか陰的積分が必要になり、大きく急激に変化する力が生じる。微分可能シミュレーションでは、これは勾配にも影響する。硬いペナルティ接触は接触イベントの近くで非常に大きな勾配を生み、ロールアウト間でのその分散は剛性が上がるにつれて大きくなる。そのため、ポリシー最適化においては、シミュレータの厳密な勾配がより滑らかな推定値ほど役に立たなくなることがある。
重要な理由
接触はロボットシミュレーションで最も難しい部分であり、接触モデルの選択がシミュレータの安定性、速さ、精度、微分可能性を左右する。ペナルティモデルは微分可能シミュレータや研究用シミュレータでよく使われるため、その剛性のトレードオフを理解すれば、エンジニアが直面する不安定性、貫通、勾配の問題の多くを説明できる。
主な用途
- 制御と設計最適化のための微分可能な物理シミュレータ
- 柔らかい接触や変形する接触のシミュレーション
- 柔軟な地面モデルを用いた脚ロボットのロコモーションのシミュレーション
- ハプティックレンダリングとバーチャルフィクスチャ
- 試作や研究のための簡易な自作シミュレータ
実際の使われ方
ある研究者が、押し動作を最適化するために簡易な微分可能シミュレータを作る。プッシャ、箱、テーブルの間の接触には、法線方向の線形ばねとダンパに平滑化したクーロン摩擦項を加えたペナルティモデルを使う。剛性が低いと箱は目に見えてテーブルに沈み込み、おかしな滑り方をする。剛性を上げるとそれは直るが、時間ステップを 1 桁小さくしない限りシミュレーションが発散する。押し軌道に対する最終的な箱の位置の勾配も不規則になる。研究者は最終的に、選んだ時間ステップで貫通を 1 ミリメートルの何分の一かに抑える剛性に落ち着き、臨界に近い減衰を加え、摂動を与えた複数のロールアウトで平均をとって勾配の推定を平滑化する。
よくある誤解
- 貫通はモデルが壊れていることを意味する — ばねが力を生むにはある程度のたわみが必要なので、小さな貫通は本質的なものであり、取り除くのではなく調整する
- 接触が硬いほど常に正確である — 剛性を上げると時間ステップを小さくする必要があり、シミュレーションが不安定になることがあり、勾配の分散も大きくなる
- ペナルティ接触はどこでも滑らかな勾配を与える — 力は接触の瞬間にオン・オフが切り替わることに変わりはないため、接触イベント周辺の勾配は大きくなったり情報を持たなかったりする
知っておくべき人
- 物理シミュレーションと物理エンジンの開発者
- 微分可能シミュレーションに取り組む研究者
- シミュレーションに依存するロコモーションとマニピュレーションのエンジニア
- ハプティクスの開発者
関連技術
- Hunt-Crossley 接触モデル(Hunt-Crossley Contact Model)
- Kelvin-Voigt モデル(Kelvin-Voigt Model)
- 線形相補性問題(Linear Complementarity Problem)
- ハイドロエラスティック接触(Hydroelastic Contact)
- 陰的積分(Implicit Integration)
関連用語
- Differentiable Simulation
- Coulomb Friction
- Contact mode
- Signed Distance Field
- Hybrid system
- Reduced Coordinates
関連プロジェクト
- Drake: MIT robotics toolbox for model-based dynamics, optimization, and control system design
- ProtoMotions: NVIDIA framework for training simulated digital humans and humanoid robots on GPUs
- PHC: Physics-based perpetual humanoid controller with fail-state recovery for real-time avatars
- SOFA Framework: Real-time physics simulation framework for medical simulation and soft tissue modeling
- DART: C++ physics engine for articulated rigid body dynamics and robotics simulation
- frax: JAX library for fast, differentiable robot kinematics, dynamics and inverse kinematics