結論

モデルベース強化学習(MBRL)は、状態sと行動aから次状態を予測する世界モデル\hat fを学び、その内部で候補行動を試してから実機へ出す。モデルフリーRLが報酬から直接方策\pi(a|s)を学ぶのに対し、データを再利用しやすく、制約を計画へ入れやすい。しかし予測誤差を信じすぎると、シミュレータ内でだけ強い方策になる。RL基礎Q学習PPO/SACMPCと合わせて読むと位置づけが分かる。

世界モデルとMPC

実機観測世界モデル f̂MPC・方策安全監視

図1 — Duskcoil作成。観測、予測、計画、安全監視を閉ループで扱う概念図。

離散時間なら\hat s_{t+1}=\hat f_\theta(s_t,a_t)、報酬\hat r_\theta(s_t,a_t)を学ぶ。MPCは時刻tで有限ホライズンHの列を最適化する。

a_{t:t+H}^*=\arg\max\sum_{k=0}^{H-1}\gamma^k\hat r(\hat s_{t+k},a_{t+k})-\lambda C(\hat s,a)
最初の行動だけ実行して観測し直すため、誤差を完全には防げなくても蓄積を抑えられる。Cには衝突、関節角、温度、速度、電流などの制約を置く。

誤差とSim-to-Real

長いロールアウトでは小さな一段誤差が増幅する。モデルの不確実性をアンサンブル分散で見積もり、分散が大きい行動を罰する、短いホライズンを使う、実データを追加する方法がある。Domain Randomizationは質量、摩擦、遅延、センサ雑音、照明、カメラ姿勢をシミュレーションごとに変え、特定の仮想世界への過適合を減らす。ただし範囲が狭ければ実機との差が残り、無根拠に広ければ学習が難しくなる。システム同定で慣性、摩擦、モータ定数、遅延を実測し、ランダム化範囲を根拠あるものにする。

段階的な実機移行と失敗

最初はログ収集だけ、次に低速・空荷・ソフト制約下の影制御、限定行動、監督下の短時間実行へ進む。停止スイッチ、独立した速度・力・温度監視、通信断時の安全停止、人と機械の距離制限を方策の外側に置く。失敗例は、摩擦係数を固定して車輪が滑る、カメラ照明だけを学んで対象を見失う、報酬の穴を突いて機械を振動させる、遅延を無視して発散する、といったものだ。成功率だけでなく、最悪時の停止距離、制約違反回数、不確実性時の棄権率を報告する。

モデルフリーとの役割分担

モデルフリーRLは、予測モデルを明示せず、経験から方策や価値を直接更新する。環境が複雑でモデル化が難しいときは強力だが、実機での試行回数が増えやすい。MBRLは、学習したモデルの中で候補列を何度も評価できるため、サンプルを節約しやすい。一方、モデルの誤差が系統的だと、計画器が「モデルの中でだけ」良い行動を選ぶ。

観点 モデルフリー モデルベース
実機データ効率 低〜中 中〜高(モデルが有効な範囲)
計算 方策推論が軽い場合が多い 毎周期のロールアウト/最適化が重い
制約の表現 報酬や安全層へ間接的に入れる 計画問題へ直接入れやすい
モデル誤差 方策へ暗黙に吸収 長期予測で増幅、監視が必要
典型用途 複雑な接触、視覚、ゲーム 移動、把持の短期計画、熱・エネルギー

現場では完全な二者択一にしない。世界モデルで短い予測を作り、PPOやSACの方策を候補生成器として使い、MPCで速度・力・電流の制約を掛ける構成もある。PPO・SAC入門MPC入門の境界を、制御周期と安全責務で決める。

不確実性を一つの数字にしない

学習データにない状態での認識論的不確実性(epistemic uncertainty)と、センサノイズや環境のばらつきである偶然的不確実性(aleatoric uncertainty)は分けて扱う。複数モデルの予測分散は前者の手掛かりになるが、全モデルが同じ偏りを持つと過信する。予測分散が閾値を超えたら、ホライズンを短くする、速度を下げる、古典制御へ切り替える、観測を追加してから再計画する、という棄権ポリシーを用意する。

一段先の誤差をe_t=s_{t+1}-\hat s_{t+1}として、平均二乗誤差だけでなく分位点や最大値を保存する。平均誤差が小さくても接触直前だけ大きいなら、その領域の計画を禁止する方が安全である。予測区間を「確率だから安全」と解釈せず、独立した衝突・力・温度監視と組み合わせる。

同定実験とデータ分割

システム同定は、モデルのパラメータを一度測って終わりではない。モータなら低速の静止摩擦、複数速度の慣性、荷重を変えたトルク、通信往復遅延を別々に測る。油圧アクチュエータなら圧力、流量、シリンダ速度、油温、バルブ開度を同じ時計で記録する。実験データは訓練・検証・最終評価へ分け、時間的に隣接するログをランダム分割しない。日、路面、荷重、照明、温度などの単位で分割すると、未見条件の性能を測れる。

最小の数値例

質量1\,\mathrm{kg}の台車を入力加速度uで動かす。T_s=0.1\,\mathrm{s}で速度が毎周期0.1uだけ変わるモデルは、u=1を5ステップで0.5\,\mathrm{m/s}増速すると予測する。実機の摩擦で各ステップ0.02\,\mathrm{m/s}失われれば、5ステップ後の誤差は0.1\,\mathrm{m/s}に達する。短いホライズン、オンライン同定、速度上限の余裕、実測での再計画が、単純なモデルでも必要になる。

公開時に残す証拠

モデルの式だけでなく、学習データの期間、センサ周期、遅延、乱数seed、環境パラメータ、solverの締切、フォールバック条件を残す。グラフは平均報酬だけでなく、予測残差、制約違反、停止距離、不確実性による棄権率を同じ試験IDで示す。ログを公開できない場合も、匿名化した統計、再現用シミュレーション設定、単位、基準日を示せば主張の範囲を検証できる。

世界モデルの型と計画器

世界モデルには、状態をそのまま予測する物理モデル、ニューラルネットワークで画像特徴を予測する潜在モデル、確率分布を出力するアンサンブルがある。物理モデルは解釈しやすいが、接触や摩擦の不連続を表すのが難しい。潜在モデルは画像を圧縮して計算を軽くできる一方、特徴空間の誤差が実空間の衝突へどう対応するかを検証しにくい。用途と検証可能性を先に決め、精度の数字だけで選ばない。

候補行動列の作り方も複数ある。ランダムな列を評価するshooting法、行動分布を交差エントロピー法(CEM)で更新する方法、勾配を使って最適化する微分可能MPCなどである。いずれも計算時間に締切があり、締切までに解けなければ、速度を落とした既定軌道や停止指令へ切り替える。候補列の最初の入力だけを使い、次周期に観測し直すreceding horizonを守ることが、予測誤差の蓄積を抑える。

学習データの衛生管理

センサが飽和した区間、時刻が逆行した区間、制限器が介入した区間を通常データと混ぜると、モデルは「危険な入力が通る」世界を学ぶ。各遷移に、観測の妥当性、実際に通った入力、制限器フラグ、終端理由を付ける。欠測を補間した値は生データと区別し、モデルの評価では補間あり・なしを分けて残差を出す。学習を継続する場合も、以前の評価セットを書き換えず、モデル更新で安全指標が悪化していないか比較する。

これらの手順は、MBRLを「予測が当たるニューラルネットワーク」から「制約と証拠を伴う制御システム」へ変える。予測誤差が小さいこと、報酬が高いこと、実機で危険がないことは同じ主張ではない。それぞれの指標と責任範囲を分けて公開する。

参考資料

#強化学習 #モデルベースRL #Sim-to-Real #MPC