---
title: 【DL輪読会】Code as Policies and LLM Agents for Physical AI
tags: 
author: [Deep Learning JP](https://docswell.com/user/DeepLearning2023)
site: [Docswell](https://www.docswell.com/)
thumbnail: https://bcdn.docswell.com/page/87DGDWLK7G.jpg?width=480
description: 【DL輪読会】Code as Policies and LLM Agents for Physical AI by Deep Learning JP
published: November 12, 26
canonical: https://docswell.com/s/DeepLearning2023/KGN714-2026-11-12-114421
---
# Page. 1

![Page Image](https://bcdn.docswell.com/page/87DGDWLK7G.jpg)

DEEP LEARNING JP
[DL Papers]
Code as Policies and LLM Agents for Physical AI
Yusei Koen, Matsuo Lab, M1
http://deeplearning.jp/
1


# Page. 2

![Page Image](https://bcdn.docswell.com/page/VJP3X923E8.jpg)

Code as Policies とは
ロボットの方策を、ニューラルネットではなく「LLM が書くコード」で表す
考え方
指示:「ブロックを空いたお皿に積んで」
• 方策 = ニューラルネットではなくコード
• LLM が知覚・制御の API を組み合わせて書く
LLM
強み
方策コード
blocks = detect_objects(&quot;blocks&quot;)
bowl = find_empty(&quot;bowls&quot;)
for b in blocks:
pick_place(b, bowl)
書いたら終わり(結果を見て直さない)
知覚 API
制御 API
• 言語理解で、初めて見る指示にも汎化(学習不要)
• 条件分岐・ループなどを明示的に書ける
弱み
ロボットが実行
• 観測に合わせた細かい動作が苦手(API の範囲まで)
• LLMをロールアウト中にも呼び出す場合には、
推論の待ち時間が発生する
2


# Page. 3

![Page Image](https://bcdn.docswell.com/page/2EV4LMDNJQ.jpg)

代表的な研究：Code as Policies /Cap-X
単なるコード生成から、エージェントのハーネス最適化へシフトしている
Code as Policies(Liang et al., 2022)
論文 Fig. 1:指示からコードを書き、API を呼んで実行
CaP-X(Fu et al., ICML 2026)
論文 Fig. 7:CaP-Agent0(実行結果・画像の変化を見て書き直す)
• CaP を12のLLMモデルで評価
• 階層的コード生成:未定義の関数も LLM が書き足す
• 結果を見て直すマルチターンで改善
• 見たことのない指示・属性にも汎化
• 人手でのAPI設計が重要 → ハーネスの改善へ
Liang et al., Code as Policies, arXiv 2209.07753 (2022) / Fu et al., CaP-X, arXiv 2603.22435 (ICML 2026)
3


# Page. 4

![Page Image](https://bcdn.docswell.com/page/57G1XGY5EL.jpg)

CaP と VLAの関係
CaP と VLA は得意なことと苦手なことが逆。二つを統合して補い合えるか？
CaP 系
VLA
得意
指示の理解・タスクへの 観測を反映した細かい
汎化
動作を高速に実行
苦手
細かい動作・推論遅延
指示・配置の変化への
汎化
VLA
• 画像+指示 → 行動を出す大規模モデル(RT-2,
OpenVLA, π0.5, GR00T…)
• 指示の言い換え・配置の入れ替えで大きく崩れる
本サーベイの対象
• CaP (LLM Agent)とVLA を統合することで、
両者の弱点を補える研究はあるか？
HarnessPAI Fig. 4:指示に not を足しても、π0.5 は学習時と同じボウルを掴む
Darwin Agent Team, HarnessPAI, arXiv 2609.29166 (2026-09)
4


# Page. 5

![Page Image](https://bcdn.docswell.com/page/4EQD8XMLJP.jpg)

CaPの分類・全体像
「VLA を使うか」×「実行中も LLM を呼び出すか」で、CaP 系の研究を4象限に整理
マルチターン
CaP-X
+ 柔軟 − 遅い
VoLo · Pigey など
RATs · Agent as Policy など
① Harness VLA
② Zetta
GPT-6 Astra(行動を直接出力)
④ DynaHarness
VLA なし
VLA あり
Code as Policies
③ HarnessPAI
ASPIRE · RHO · RAX など
本サーベイの中心
深掘りする4本
先行研究
シングルターン + 速い − 再計画しにくい
5


# Page. 6

![Page Image](https://bcdn.docswell.com/page/KJ4Z26V571.jpg)

Harness VLA ①:VLA を「1つの基本関数」として呼ぶ
凍結した VLA を「接触専用の基本関数」にして、LLM が毎ステップ呼び出す
問題意識
• VLA と CaP のそれぞれ単独に多くのことを
任せすぎている
仕組み
• LLM が毎ステップ、基本関数を1つ選ぶ
• 解析的な基本関数(移動・姿勢・グリッパ) +
VLA_ACT
• 基本関数は固定。「いつ・どこで VLA を呼ぶか」を
学ぶ
Memory
論文 Fig. 2:VLA が得意な局所領域(緑)を、解析的な移動でつなぐ
Zhang et al., Harness VLA, arXiv 2607.08448 (2026-07)
• 学習時に成功した手順の骨格と、成功パターン・
失敗パターンを保存
• 保存した記憶をコンテキストに入れて、関数の選択
に使う
6


# Page. 7

![Page Image](https://bcdn.docswell.com/page/LE1RMV32EG.jpg)

Harness VLA ②:手法の詳細
LLM は「どの関数を、どこへ」だけ決める — 位置は画像から、学ぶのは記憶
どう選ぶか(1ターンの流れ)
低レベルの動き(基本関数の中身)
• 観測(RGB-D 画像+ロボット状態)・指示・記憶を読み、
基本関数を1つ選んで JSON で出す
• その関数が終了条件まで動く → 新しい観測を見て次を選ぶ
• 接近・運搬:MOVE_TO が目標座標へ移動(中身は IK・操作
空間制御のソルバ)
• 姿勢・グリッパ:手首の回転・開閉を値で指定
• 接触:VLA_ACT が短い区切りで行動を出し、停止条件
で止まる
位置をどう求めるか
• VLM が RGB 画像上で対象の画素を選ぶ → 深度から作った
3次元マップを引く
• 複数画素の中央値。正解座標は使わない
どう学ぶか(VLA の重みは更新しない)
LLM が出す命令(JSON)の例
• 試行錯誤:1つの初期状態で、うまくいく手順を探す
• 成功したら記憶:手順の骨格+成功則・失敗パターン
• 本番:記憶を再利用して行動選択を行う
{&quot;action&quot;: &quot;move_to&quot;, &quot;xyz&quot;: [-0.10, 0.20, 1.05],
&quot;gripper&quot;: &quot;open&quot;}
{&quot;action&quot;: &quot;vla_act&quot;, &quot;prompt&quot;: &quot;grasp the black bowl&quot;,
&quot;max_chunks&quot;: 30, &quot;stop&quot;: &quot;object_lifted&quot;}
Zhang et al., Harness VLA, arXiv 2607.08448 (2026-07) — §2, Table 1, 付録 A・C・E.2
7


# Page. 8

![Page Image](https://bcdn.docswell.com/page/GEW13LP272.jpg)

Harness VLA ③:結果
LIBERO-Pro 82.4%:VLA 単体(50.0%)も CaP 系(Cap-X 18.2%)も上回る
LIBERO-Pro 全体(Table 3)
• Harness VLA 82.4%
• 同じ凍結 VLA 単体 50.0%・π0.5 11.0%
• CaP 系:Cap-X 18.2%・RATS 43.8%
記憶なしでも CaP 系に勝つ(Table 5)
• 指示の言い換え:79.0% vs 16.8%
• 配置の入れ替え:31.0% vs 25.6%
論文 Table 3:LIBERO-Pro の成功率(T=指示の言い換え、S=配置の入れ替え)
ポイント
• LLM の汎化 × VLA の接触操作で、どちら
か単体を超える
論文 Table 5:記憶なし(ゼロショット)の Harness VLA と Cap-X の比較(LIBERO-Pro Goal)
Zhang et al., Harness VLA, arXiv 2607.08448 (2026-07)
8


# Page. 9

![Page Image](https://bcdn.docswell.com/page/47ZPVMK4E3.jpg)

Harness VLA ④:残った課題
HarnessVLAは性能は高いが実行が遅く、実行中の VLA を見ていないという課題もある
実行が遅い
• 毎ステップ LLM を呼ぶため、計画だけで1エピソード約350〜530秒
→ リアルタイム性の求められる環境では使えない
実行中は VLA を見ていない
• VLAはあくまでツールとして呼び出しているイメージ
• VLA_ACT を呼んだら、終わるまで結果が分からない
Zhang et al., Harness VLA, arXiv 2607.08448 (2026-07) / 時間・費用は Zetta・HarnessPAI の計測
9


# Page. 10

![Page Image](https://bcdn.docswell.com/page/YJ6M5NQG7V.jpg)

Zetta ①:LLM を実行の外へ、監視はコードで
LLM は実行の外で改善するだけ — 実行中はコードが見張り、外れたら立て直して VLA に返す
問題意識
•
•
判断のたびに LLM を呼ぶ設計は遅い
大きなLLMは短い周期で推論できない
実行中
• 監視コード（Critic）が動作を監視(把持状態等)
• 復旧処理で VLA の得意な状態に戻してから返す
事後
• LLM が失敗を診断し、Critic・復旧処理を追加
論文 Fig. 2:実行時のループ(左)と、事後の3段階の改善(右)
ポイント
•
Ding et al., Zetta, arXiv 2608.16590 (2026-08)
VLAの失敗、復旧のルールベースの処理を
ハーネスとして最適化する
10


# Page. 11

![Page Image](https://bcdn.docswell.com/page/GJ5ZY5RXE4.jpg)

Zetta ②:結果と課題
VLA を変えずに性能が上がり、LLM を実行から外して推論時間も約1/10に
性能向上(VLA は凍結)
• LIBERO-Pro(Goal):π0.5 34.5% → 90.8%
• RoboCasa:GR00T 73.6% → 93.6%
• LIBERO-Pro 全40条件では 32.0% → 71.1%
論文 Fig. 1(抜粋):成功率。LIBERO-Pro は Goal の2条件の平均
推論時間の短縮
• 1エピソード:Harness VLA 392〜513秒 → 約40秒
• LLM は実行の外(事後の改善)だけで呼ぶ
（成功率はHarness VLAと比較なし）
論文 Fig. 1(抜粋):14:実行コスト(RPent = Harness VLA)
Ding et al., Zetta, arXiv 2608.16590 (2026-08)
11


# Page. 12

![Page Image](https://bcdn.docswell.com/page/9E2RGNDQJR.jpg)

HarnessPAI ①:実行中は LLM を呼ばない
実行中は LLM を呼ばず、固定のプログラムが動く
問題意識:適応がどこに学習されるか
• 追加学習=重み / CaP=プログラム /
VLA ハーネス=実行時の LLM
• HarnessPAI=事前に作るプログラムと
記憶
論文 Fig. 2:既存手法(追加学習・CaP・VLA ハーネス)と HarnessPAI
Zetta との対比 — 問題意識は共通、VLA 主導か CaP 主導かが違う
Zetta
共通の問題意識
HarnessPAI
実行中に毎ステップ LLM を呼ぶと遅い → LLM を実行の外へ出す
主導
VLA 主導
CaP(コード)主導
実行中の動き
VLA が通常の動作を担い、コードは監視・復旧で補う
タスクごとに最適化したコード全体が動き、
VLA は把持・配置の部品
何を改善するか
監視役・復旧処理を足していく
プログラム全体を書き直し、タスクごとに固定する
Darwin Agent Team, HarnessPAI, arXiv 2609.29166 (2026-09)
12


# Page. 13

![Page Image](https://bcdn.docswell.com/page/D7YDVP2Y7M.jpg)

HarnessPAI ②:手法の詳細
Harness VLA の毎ステップの判断を、事前の試行錯誤で1本のプログラムにまとめる
準備(任意)
• expert動画から、VLM が作業の流れ(接近→把持→運搬→
配置)を作る
• VLA を試し、失敗する段階を VLM が判定 → その段階はコード
に置き換える
試行錯誤のループ(タスクごと)
論文 Fig. 9:手法の全体像(左:準備、右上:試行錯誤のループ、右下:技能の管理)
• 成功の条件を先に固定(「エラーなく終了」は成功ではない)
• GPT-5.6 がコードを修正 → 15シードで実行 → Gemini が動画
で段階ごとに診断
• 全シード成功で採用、「失敗→修正」を技能として保存
実行時(シングルターン)
• 固定プログラムが動くだけ。LLM は呼ばない
• 「把持を確認してから運搬」などの分岐はコード内
論文 Table 3:実行時の段階ごとの担当(固定コード / VLA)
Darwin Agent Team, HarnessPAI, arXiv 2609.29166 (2026-09)
13


# Page. 14

![Page Image](https://bcdn.docswell.com/page/VEN6M58RE8.jpg)

HarnessPAI ③:結果と課題
実行中に LLM を呼ばないことで、Harness VLA より速く、安く、性能も高い
結果
• LIBERO-PRO 96.5%(Harness VLA 87.7%・
ASPIRE 72%・π0.5 34.9%)
• 1回 49秒 vs 1135秒、実行中の LLM 費用 $0 vs
$168(50試行)
• 別の行動モデルに付け替えても 0.6% → 73.4%
課題
論文 Table 7:LIBERO-PRO の成功率(Swap=配置の入れ替え、Task=指示の言い換え)
論文 Fig. 21:Harness VLA との時間・トークン・費用の比較
Darwin Agent Team, HarnessPAI, arXiv 2609.29166 (2026-09)
• 固定プログラムは新しい状況に弱い
14


# Page. 15

![Page Image](https://bcdn.docswell.com/page/Y79LNYKZJ3.jpg)

DynaHarness ①:遅い判断役と速い判断役に分ける
Harness VLA の遅い LLM 推論を、小さな LLM と決定的なコードによる管理に分担
問題意識
• 接触や途中の成功は、LLM の判断の間に起きる
遅い判断役(Qwen3-VL-4B)
• 次に使う機能と対象だけ決める(座標は出さない)
速い判断役(決定的なコード, 2Hz)
論文 Fig. 2:遅い判断役・速い判断役・機能ライブラリ
Harness VLA
大きな LLM が
毎ステップ判断
• 具体化・拒否・監視・切替・再計画の依頼
• 機能:解析的な技能+復旧技能+ vla_act(凍結 π0.5)
小さな LLM:何をするかだけ
決定的なコード:実行の管理
Deng et al., DynaHarness, arXiv 2609.40306 (2026-09)
15


# Page. 16

![Page Image](https://bcdn.docswell.com/page/G78XK62YED.jpg)

DynaHarness ②:主な結果
4B の小型 LLM で 74.25% — 同じ LLM にそろえると既存のハーネスを大きく上回る
LIBERO-Pro 4条件(Table 1)
• DynaHarness 74.25%(上位は 4B の小型 LLM)
• 凍結した π0.5 単体 16.2% から +58.0pt
同じ小型 LLM(Qwen3-VL-4B)にそろえると
• Harness VLA 6.0%・Zetta 0.0%・PhyAgentOS
20.3%
• 元論文の最先端 LLM では Harness VLA 76.8%・
Zetta 71.1%
注意
論文 Table 1:LIBERO-Pro 4条件の成功率(T=言い換え、S=入れ替え)
Deng et al., DynaHarness, arXiv 2609.40306 (2026-09)
• 他手法の値の多くは各論文からの引用で、条件は揃わな
い
• 74.25% は開発に使ったシードでの値(新しい初期状態
では 75.2%)
16


# Page. 17

![Page Image](https://bcdn.docswell.com/page/L7L8Z929JR.jpg)

DynaHarness ③:VLA は何をしているか
VLA を外しても −3.5pt — 性能の大部分は解析的な技能が担っている
VLA の役割は小さい(Table 16)
• VLA を外しても 74.0% → 70.5%(−3.5pt)
• 解析的な技能を外すと 16.6%(π0.5 単体 16.2% 並
み)
VLA の使われ方(本文)
• 770件中570件は VLA を呼ばずに成功率 96.7%
• VLA は解析的な技能で解けない難しい場面で呼ばれる
論文 Table 16:機能を外す比較実験(各800件中の成功数)。全部入り 592 =
74.0%、VLA なし 564 = 70.5%、解析的な技能なし 133 = 16.6%
Deng et al., DynaHarness, arXiv 2609.40306 (2026-09)
17


# Page. 18

![Page Image](https://bcdn.docswell.com/page/4EM6VZ8V7W.jpg)

まとめ①:4本の比較
LLM の判断は実行の外へ、VLA の担当は狭く — 周りのハーネスが性能を担う方向へ
Harness VLA(7月)
Zetta(8月)
HarnessPAI(9月)
DynaHarness(9月)
VLA に任せる
接触の局面
通常の動作全般
把持・配置
予備
LLM が考える
実行時毎ステップ
ハーネス改善時
ハーネス改善時
小さな LLMで抽象
指示
LIBERO-Pro
82.4%
71.1%
96.5%
75.2%
速さ・費用
遅い(数百秒/回)
約40秒/回
約50秒/回・実行中
$0
約30秒/回
実機実験
定性結果のみ
なし
なし
4タスク×10回
注意
• 評価条件(摂動の種類・条件数・シードなど)が論文ごとに違うので、LIBERO-PROの数値は参考値
Harness VLA 2607.08448 / Zetta 2608.16590 / HarnessPAI 2609.29166 / DynaHarness 2609.40306
18


# Page. 19

![Page Image](https://bcdn.docswell.com/page/PERP265W79.jpg)

まとめ②:未解決課題と展望
Agent+VLAは VLA 単体を大きく超えるが、VLAの有効性と未知タスクへの汎化の検証が課題
未解決課題
• VLA は必要か? Harness VLA は VLA なしで 3%、DynaHarness は外しても −3.5pt
(差はハーネスの作り込み)
→ ハーネスが強ければCaPだけで良くてVLAは必要ない？
• タスク間のハーネスの転移が未検証:ハーネスはタスクごとに作り、評価は同じタスクの別の初期状
態・言い換えが中心
– VLA は学習していない指示に汎化しにくい
– VLAにCaPを組み込むことで、どれだけ未知タスクにも汎化できるのか
Harness VLA 2607.08448 / Zetta 2608.16590 / HarnessPAI 2609.29166 / DynaHarness 2609.40306
19


# Page. 20

![Page Image](https://bcdn.docswell.com/page/P7X3DMKVEX.jpg)

参考文献
先行研究
分類図で触れた研究
[1]
[7]
[2]
J. Liang et al., &quot;Code as Policies: Language Model Programs for
Embodied Control,&quot; ICRA 2023. arXiv:2209.07753
L. Fu et al., &quot;CaP-X: A Framework for Benchmarking and Improving
Coding Agents for Robot Manipulation,&quot; ICML 2026. arXiv:2603.22435
本発表で紹介した研究
[3]
[4]
[5]
[6]
Y. Zhang et al., &quot;Harness VLA: Steering Frozen VLAs into Reliable
Manipulation Primitives via Memory-Guided Agents,&quot;
arXiv:2607.08448, 2026.
X. Ding et al., &quot;Zetta ζ: An Efficient Closed-Loop Embodied Harness
for Self-Evolving Physical Intelligence,&quot; arXiv:2608.16590, 2026.
Darwin Agent Team, &quot;HarnessPAI: An Evolving Harness for Physical
AI,&quot; arXiv:2609.29166, 2026.
H. Deng et al., &quot;DynaHarness: A Dynamic Physical Harness for SelfEvolving Robot Agents,&quot; arXiv:2609.40306, 2026.
R. Lu et al., &quot;ASPIRE: Agentic Skills Discovery for Robotics,&quot;
arXiv:2607.00272, 2026.
[8] J. Zhang et al., &quot;Playful Agentic Robot Learning,&quot; arXiv:2606.19419,
2026.(RATs)
[9] &quot;Agent as Policy for Robotic Manipulation,&quot; arXiv:2609.12541, 2026.
[10] &quot;An Unexpected Robot Policy: Early Evaluations of GPT-6 Astra on
RoboDojo and Beyond,&quot; arXiv:2609.24170, 2026.
[11] &quot;VoLo: A Physical Orchestrator for Open-Vocabulary Long-Horizon
Manipulation,&quot; arXiv:2606.07723, 2026.
[12] L. Galanti, D. Shah, T. Dao, &quot;Addressing the Orchestration Gap in
Generalist Robots via Physical Agency,&quot; arXiv:2607.21725,
2026.(Pigey)
[13] K. Elmaaroufi et al., &quot;RHO: Your Coding Agent is Secretly a
Roboticist,&quot; arXiv:2606.16458, 2026.
[14] R. Huang et al., &quot;Scaling Online Exploration for Robot Agents,&quot;
arXiv:2610.22496, 2026.(RAX)
その他
[15] Physical Intelligence et al., &quot;π0.5: a Vision-Language-Action Model
with Open-World Generalization,&quot; arXiv:2504.16054, 2025.
[16] &quot;Towards Agentic Robots: Model, Data, Environment, and Harness,&quot;
arXiv:2610.20442, 2026.(サーベイ)
20


