Unitree G1が床の箱を持ち上げ、運び、置いて手を離す。公開済みのHAIC方策を使い、MuJoCoの平地環境でこの一連の動作を検証しました。今回はシミュレーションで、実機の実証ではありません。
同じ初期条件を3回、箱の位置を少し変えた条件を10回試し、いずれも今回の判定基準を満たしました。置いた後は手を離し、箱が3秒間静止することまで確認しています。
公式のモデルを使い、終了後も確認する
使ったのは、HAICの公開実行コードに含まれる平地搬送用の学習済みモデルです。当社で新たなACTや強化学習を行ったものではありません。追加のテレオペ収集もしていませんが、元の学習に人間由来のデータがないという意味ではありません。
ロボット・箱・参照動作は公開構成を使いました。箱は28×36×35cm、質量1kgの剛体。ハンドは固定されたrubber handモデルで、5本の指を開閉してつかむ構成ではありません。
元の参照動作は8.2秒です。設置後を確認するため、終端の参照を保持して3秒間評価を延長しました。その間も方策と物理計算を続けています。初期化後に箱やロボットを目的の位置へ書き換えて運んだものではありません。
固定3回と、配置を変えた10回
| 条件 | 今回の合格数 | 確認した範囲 |
|---|---|---|
| 同じ初期配置・別プロセスで開始 | 3/3 | 同条件での再現性 |
| 箱の前後・左右を各±2cm以内で変更 | 10/10 | seed42で事前に決めた狭い配置範囲 |
判定は、箱底を10cm以上持ち上げて水平に1m以上運ぶことに加え、最後の3秒で設置中心から15cm以内、箱の傾き10度以内、両手が非接触であることを確認しました。箱の線速度は0.02m/s未満、角速度は0.1rad/s未満を基準にしています。
代表試行では箱の水平移動は約1.41m、箱底の最大高さは約53cmでした。固定3試行の姿勢記録は一致しました。これは同じ条件での再現性であり、現場での成功確率を推定する独立した3サンプルではありません。
配置変更も各±2cmという小さな範囲です。今回の13試行に基準未達はありませんでしたが、大きく位置が変わる箱、重い箱、滑りやすい表面へ結果を広げることはできません。
動画と制御の違い
掲載動画は、物理試験で保存した姿勢を50fpsで再描画した11.2秒の等倍映像です。表示用の再描画と、試験中の学習済み方策による制御を区別しています。公式録画オプションの2倍速は使用していません。
今回の方策は参照動作と身体状態などを使います。カメラで箱を検出し、距離を推定して取りに行く仕組みではありません。参照を使う方式にも、動作を再現しやすい利点と、配置や作業変更の範囲を確認する必要があります。
次は独自工場と摩擦条件へ
今回は公開構成を使った平地での再現確認です。実行環境はWindows・Python 3.13・MuJoCo 3.3.7で、公開案内のPython 3.8とは異なります。終端参照の保持も追加しているため、公式の実行環境・手順を完全にそのまま再現したとは表現しません。
次の記事では、独自工場への移植と摩擦を下げたときの成功・失敗を取り上げます。平地で運べること、工場内で運べること、実物を運べることを分けて検証していきます。
チームゼットでは、公開方策の組み込み、シミュレーション環境の構築、動作評価と失敗の切り分けに取り組んでいます。製造・物流のロボット開発については、こちらからご相談ください。