ニュースブリーフ · 2026年11月11日

MuJoCo 4.0が投機的接触と塑性を追加、4.0.1でNewtonソルバのバグを修正

Google DeepMindは2026年11月6日にMuJoCo 4.0.0を公開しました。テンドン、Pythonパッケージ、ケーブルモデルに互換性のない変更があります。2026年11月11日には、Newtonソルバが誤った結果を返す問題を修正した4.0.1が公開されました。

MuJoCoシミュレーションとデジタルツイン動力学MuJoCoリリースシミュレーション

Google DeepMindは2026年11月6日、MuJoCo 4.0.0を公開しました。3.0以来初のメジャーバージョンです。エンジンの主な新機能は、投機的接触(speculative contacts)を有効にするオプトインのenableフラグ speculative です。これにより、高速で動く凸形状のgeomが1ステップの間に薄い障害物をすり抜けることを防ぎます。弾塑性も追加されました。関節とテンドンのばねが降伏できるようになり、2次元・3次元のflexは永久変形できます。塑性状態は mjData.plastic に保持されます。

いくつかの変更は既存モデルの挙動を変える可能性があります。テンドンのside siteは新しい巻き付け規則に従うようになり、テンドンが以前と異なる経路を取ることがあります。RK4積分器は、ボールジョイントとフリージョイントの姿勢について4次精度を達成するようになりました。このため、RK4を使うモデルでは軌道が変わります。cableプラグインと composite 要素は廃止され、弾性を持つ1次元の flexcomp に置き換えられました。コンパイラは、以前は受け付けていた一部の不正なモデルを拒否するようになりました。たとえば、行数または列数が2未満の高さフィールドです。

Python側では、パッケージが mujoco-core、mujoco-studio、メタパッケージ mujoco に分割され、Python 3.10のサポートが終了しました。リリースノートは、pipで更新する場合は先にアンインストールするか、強制的に再インストールするよう指示しています。4.0.1は2026年11月11日に公開されました。4.0.0で新たに入った疎行列のコレスキー分解のバグを修正しています。このバグはNewtonソルバに誤ったヘッセ行列の分解因子を渡しており、収束の遅れ、誤った加速度、発散を引き起こす可能性がありました。

なぜ重要か

MuJoCoを学習やテストのパイプラインで使っている場合は、4.0.0を飛ばして4.0.1に固定してください。拘束ヤコビ行列が疎な場合、4.0.0のソルバのバグにより誤った加速度が出ることがあるためです。更新の前に、テンドンを含むモデル、RK4でボールジョイントやフリージョイントを使うモデル、cable compositeを使うモデルについて回帰テストを再実行し、数値が変わることを想定してください。投機的接触は高速な物体が薄い形状をすり抜けるトンネリングへの対策ですが、明示的に有効にする必要があります。pipで mujoco をインストールするロックファイルやDockerイメージには、アンインストールの手順が必要です。これがないと、パッケージ分割後にファイルが欠落することがあります。