報酬と試行錯誤から「掴んで置く」を学習させる
ポーズを一つずつ手でプログラムするのではなく、Isaac Lab(PPO)で方策ネットワークを学習させます。 鍵は3つ:模倣クローンで暖機・reverse-KLアンカーで模倣の天井を破る・成功率連動DRカリキュラムで頑健化。

なぜ単純なPPOでは届かないか3つのレバー
ゼロからのPPOはピックのような疎報酬タスクで収束しません。手書きエキスパート(次章)の実演で暖機し、学習中もエキスパートに緩く繋ぎ留めるのが基本。ただし強く縛りすぎると模倣の天井で頭打ちになります。
① 模倣クローン(BC)で暖機
エキスパート実演を bc_pretrain.py がオフラインでMSE回帰 → 暖機チェックポイント。これが無いとPPOは離陸しない。デモを2,000–2,400件に増やすとBCクローンが大きく跳ねた(12/29% → 76/78%)。
② reverse-KL アンカー
学習中、凍結したBCクローンに対する解析的 D_KL(π‖π_ref) を損失に追加(--anchor reverse_kl)。係数は成功率EMAで減衰。モード探索的なので、~97%のデモを超えて学習できる。
③ 成功率連動DRカリキュラム
events_dr.py:成功EMA>0.5までドメインrandomization(PD/摩擦/質量±20%)をOFF、その後フル幅へ。学べる前に環境を荒らさない。Isaac PD と Web簡易シムのダイナミクス差を埋める。
模倣の天井(83%)と、それを破る reverse-KL
| アンカー方式 | 性質 | Isaac到達点 |
|---|---|---|
| BC-MSE(既定・実績パス) | 方策平均をエキスパート行動へMSE回帰。係数は bc_weight→bc_floor へ線形減衰(非ゼロ床=崩壊防止)。模倣に縛られる | 約83%が天井 |
| reverse-KL(天井ブレーカー) | 「BCクローンから離れすぎない」緩い拘束。手本を超えられる | ≥85%(Conv 92.6 / Sort 89.9 / Pick 86.8) |
結果
実機用ピック方策 ppo_pick_rkl_dr_868.pt が Isaac で 86.8%、本番サイトでライブ稼働。仕分け89.9%(誤仕分け0)、コンベア92.6%(Isaac)。デバッグ性を最優先し、毎ラン スモーク+エキスパート評価+プリフライトをゲートに。
SSOT:docs/b7-rl-pick-plan.md(Session B–F)、docs/break_85_research.md。学習は tools/isaac_rl/train.py(BCRegPPO)。次章で「掴んで置く」の3タスクを、続く章で教師データの作り方を解説します。