表示
超・人工知能研究所 Super AI Research Lab トップへ超・人工知能研究所AI Research Lab / ぱそ太郎工事中

since
平成38年9月29日

← 検索結果に戻る

接触と離脱を含むロボット計画を解く、相補性制約向けソルバー

Marble

保存した記事を見るこのブラウザに保存します。無料会員で端末間の同期・フォルダ整理
原論文の図

Marbleの原論文から掲載した図です。細部はクリックして拡大できます。

原論文の図の説明を読む

Fig. 5: Hopper trajectory with contact forces (red arrows). The hopper is shaded red to indicate contact (signed distance ≤ 10 − 4 \leq 10^{-4} m.

出典:Marble / arXiv ↗

概要

  • 接触力と距離の相補性制約を緩め、条件を満たす変数表現で動作計画を解く。
  • 39問のベンチマークで全問の実行可能解を得たと著者は報告した。
  • ロボット課題では計算時間に加え、解の費用と接触条件の違反を比較する必要がある。
補足:編集した模式図で仕組みを確認する

VISUAL EXPLAINER

図でつかむ、Marbleの仕組み

左から右へ読む
  1. 01動作の条件
  2. 02接触制約を緩和
  3. 03解を反復更新
  4. 04実行可能な計画

原論文の説明をもとにした模式図です。処理の細部は省略しています。

研究の背景

ロボットが歩くときは、足の位置や速度が連続的に変わる一方、床に触れる・離れるという切り替えも起きる。接触中は床から力を受け、離れている間は受けないという条件を、動作計画へ同時に入れる必要がある。

この関係を表す相補性制約は、接触力と床からの距離のような二つの非負の量の積をゼロにする。表現力は高いが、解ける範囲が滑らかでないため、安定して計画案を得るのが難しい。

手法

入力は、動作の費用を表す二次式、通常の線形制約、接触などの相補性制約だ。Marbleは「距離か力のどちらかがゼロ」という条件を、まず二つの積が小さな正の値になる条件へ緩める。専用の変換式で二つの値を作り、この緩和条件を更新のたびに満たす。

内側の反復では、現在の解の近くで費用と制約のずれを減らす方向を計算する。外側では緩和量を小さくし、元の接触条件に近づける。例えば足が床から離れる区間では接触力をゼロに近づけ、最終的に姿勢や力を含む動作計画を返す。

新規性

Marbleは、相補性制約を少し緩めたときに現れる滑らかな構造を利用し、制約を満たす値を変数から直接作る。著者はこの構造をリー群と捉え、滑らかな面に沿って更新する解法を組み立てた。

値の変換には、指数関数を使う方法で起きる数値的な不安定さを避ける写像を提案する。接触条件への違反を後から罰するだけでなく、緩和した条件を構成上満たす点が、既存解法との主な違いだ。

従来手法との違い

比較対象のLCQPowは、二つの量が同時に正にならないという条件の違反を目的関数の罰則に加え、部分問題を解く。論文は、この方法が条件の組み合わせによって収束に苦しむ場合を挙げている。

Marbleは緩和した接触条件を満たす形で変数を表し、緩和を徐々に小さくする。混合整数法のGurobiも比較に含まれるが、Marbleが目指すのは大域的な最良解の証明ではなく、計画に使える実行可能な局所解を得ることだ。

実験結果

著者は相補性問題のMacMPECから二次計画として扱える39問を選び、LCQPowとGurobiに比較した。Marbleは全39問で実行可能解を得て、そのうち38問で大域最適解を見つけたと報告する。LCQPowが大域最適解に達したのは33問だった。

ロボットの三課題では、跳躍体の接触計画でMarbleが130ミリ秒、LCQPowが55.11秒、Gurobiが344.56秒と報告された。ただし目的関数値はMarbleが31.68、両比較手法が約29.2で、速さと解の費用を併せて見る必要がある。全課題はゼロ初期値で解かれた。

応用の可能性

編集上の応用案 · 論文が実証した用途とは区別しています。

編集上の応用案:段差を越える脚式ロボットの動作案を、シミュレーション上で作る。入力は簡略化した運動方程式、足と床の距離、接触力、摩擦条件、目標速度で、出力は各時刻の姿勢と接触力の計画とする。

まず接地と離地を相補性制約として記述し、Marbleで得た動作案をシミュレータへ渡す。担当者は床を貫通しないか、離れた足に力が生じないか、所要時間内に解けるかを確認する。実機での安全性を示した用途ではない。

応用先の候補からNauhに相談できます。

導入時の検証

導入時の検証案 · 対象データでの再評価が必要です。

導入時の検証案:既存の動作計画から小さな接触問題を一つ切り出し、Marbleと現在使う解法に同じ初期値と制約を渡す。まずシミュレーションで、接触力、床との距離、摩擦条件が許容範囲に収まるかを確認する。

成功率だけでなく、目的関数値、計算時間の中央値と遅い側の値、初期値を変えた場合のばらつきを記録する。時間制限を超えたときの代替動作も用意し、計画案を実機に渡す前の判定基準を定める。

限界と課題

著者が扱うLCQPは非凸で、局所解を求める問題だと明記している。緩和の大きさによって実行可能領域のつながり方が変わり、到達する局所解が左右され得る。39問の試験でも大域最適解に達したのは38問だった。

編集上の確認事項として、初期値を変えたときの解のばらつき、接触モデルのずれ、制御周期内での処理時間を調べたい。論文のロボット課題は特定の定式化による結果であり、別の機体や環境で同じ時間と成功率を期待する根拠にはならない。

研究内容と応用案に基づく分類です。業界での導入実績を示すものではありません。

出典

元のタイトル・要旨を確認する(英語)

Complementarity by Construction: A Lie-Group Approach to Solving Quadratic Programs with Linear Complementarity Constraints

Many problems in robotics require reasoning over a mix of continuous dynamics and discrete events, such as making and breaking contact in manipulation and locomotion. These problems are locally well modeled by linear complementarity quadratic programs (LCQPs), an extension to QPs that introduce complementarity constraints. While very expressive, LCQPs are non-convex, and few solvers exist for computing good local solutions for use in planning pipelines. In this work, we observe that complementarity constraints form a Lie group under infinitesimal relaxation, and leverage this structure to perform on-manifold optimization. We introduce a retraction map that is numerically well behaved, and use it to parameterize the constraints so that they are satisfied by construction. The resulting solver avoids many of the classical issues with complementarity constraints. We provide an open-source solver, Marble, that is implemented in C++ with Julia and Python bindings. We demonstrate that Marble is competitive on a suite of benchmark problems, and solves a number of robotics problems where existing approaches fail to converge.

論文本体の取得範囲に基づく解説。AIが作成した未校閲の記事です。性能の数値は著者の評価条件に依存します。応用例と検証計画は編集上の提案です。解説更新:2026-09-29