タオル畳みを、時給で測る
タオル畳みロボットの損益分岐は成功率 66.7%。現在は 61%。実機の双腕ロボットで advantage 条件付き学習(RECAP)を検証し、何が効いて何が効かなかったかを、負の結果も含めて書いた。
杉山 幹太
Head of ML Engineering
目次
これは Omotenashi Robotics の ML の仕事についての技術シリーズの第 1 回です。今後の記事は 1 本につき 1 つの実験を扱う予定ですが、初回のこの記事は、私たちが何者でどう考えているかから始め、その後、実機の双腕ロボット上で最近完了した advantage 条件付きポリシー学習(RECAP [1])の一連の実験を通しで紹介します。
66.7%
黒字化に必要な成功率(損益分岐)
61%
現在の成功率。あと 6〜10 ポイント
4秒+
RECAP によるサイクルタイム短縮
1. 私たちが作っているもの
私たちは「何でもできるロボット」を作っていません。ある一つの業界の仕事を実用水準でこなすロボットを、最短で現場に届けることを目指しています。
選んだ業界はリネンサプライ——ホテルや病院で使われるタオルやシーツを洗濯・折り畳み・納品する事業です。作業は身体的に反復的で、人手は慢性的に不足しており、そしてタスクが「測定できる」程度に具体的です。畳む対象はフェイスタオルに限らず、バスタオル・バスマット・拭き上げタオル・ガウンなど多岐にわたり、将来的には畳み以外の工程にも広げていきます。この記事ではその中の一つ、フェイスタオル畳みに絞って話します。山から 1 枚ずつ取り、2 回畳んで、積み上げる。
特定の業界に賭けると、ML のやり方が変わります。汎用ロボットは能力の幅で評価されますが、私たちのロボットは「リネン工場がそれを動かして儲かるか」で評価される。この単一の基準が、以下のすべてを駆動しています。
2. 目標は「時給(円/h)」で立てる
「成功率 90%」は、それ自体ではビジネスの目標になりません。私たちはすべての研究目標を 1 つの数字に還元します。ロボット 1 台が 1 時間に生む利益、
P = u · Z − c_itv · I
です。ここで Z はスループット(1 時間に仕上がるタオルの枚数)、I は介入頻度(人が助けに入る回数/時)、u はロボットが 1 枚畳むことで浮く人件費(フェイスタオルでは 10 円を仮定)、c_itv は介入 1 回のコスト(30 円を仮定)です。タオルが 1 枚仕上がれば本来かかっていた人件費が浮き、介入が起これば工場の別の場所の労働力が消費される、という考え方です。
スループットと介入頻度は、評価で実際に測る 2 つの量——成功率 p とサイクルタイム——から導けます。1 試行の制限時間 120 秒、介入 1 回 60 秒の仮定の下で、タオル 1 枚あたりの期待時間は C = p · C_succ + (1 − p) · (120 + 60)(C_succ は成功時のサイクルタイム)、そこから Z = 3600 / C、I = (1 − p) · Z です。なお Z が成功率によらず 3600 / C なのは、失敗した試行のタオルも 60 秒の介入で人が畳み終え、1 サイクルにつき 1 枚が仕上がる想定だからです(その労働の分は c_itv で払っています)。
利益の式 P = u · Z − c_itv · I は 1 回だけ書き直しておく価値があります。I = (1 − p) · Z を P に代入すると
P = Z · (u − c_itv · (1 − p))
——Z > 0 なので、P の符号は成功率 p だけで決まります。損益分岐は p* = 1 − u / c_itv = 1 − 10/30 = 66.7%。つまり黒字化までは成功率が唯一の効く変数で、サイクルタイム短縮が利益に転化するのは p が 66.7% を超えてからです——赤字域では、速く回すほど赤字の回転もわずかに速くなる。参考までに、タオルを 1 枚も畳めないロボット(p = 0%)は 3 分に 1 回介入を呼ぶだけの存在で、P = −400 円/h です。以降の数字はこの 2 つの目盛り——−400 円/h と 0 円/h(p = 66.7%)——の間のどこにいるかで読んでください。
後で見るとおり、P は現状マイナスです。ただしこの赤字は、実機データを収集するために払っている費用とも解釈できます。成功率がいくつであれ、1 時間の稼働から得られるデータの量は同じ——だからこそ p = 0% の −400 円/h が対比になります。あれは同じデータ収集の定価であり、赤字が縮むほど、同じデータをより安く集めていることになる。今のロボットは、いわば自分の学習データ代を自分で払っている見習いです。私たちはすべての実験でこの数字を社内に公開しています。どの改善が本当に効くかは動作点に依存し、直感と逆になることもある——それをこの式が強制的に暴いてくれるからです。実例を §4.4 で見ます。
3. 研究のやり方
すべての研究活動は P を動かすために存在します。新しい ML 手法がボトルネックなら、作ります。しかし新規性をロマン化することは拒否します。データの集め方を改善する、カメラマウントを直す、公開済みの手法を丁寧に適用する——そのほうが発明よりも P を動かすことは珍しくありません。以下の RECAP の物語は、「公開済み手法を丁寧に適用する」が実際に何を意味するかのケーススタディです: 統制された対照実験、学習前に設計したオフライン指標、そしてうまくいったことといかなかったことの誠実な会計。
4. ケーススタディ: advantage 条件付き学習(RECAP)をタオル畳みに
4.1 なぜ RECAP を重視するか
RECAP は Physical Intelligence の π*0.6 を支える学習レシピです [1]。学習データの各フレームに 2 値の advantage indicator——記録された直後の行動チャンク(ポリシーが 1 回の推論でまとめて出力する、連続する短い行動列)が「普段より速い進捗」を生んだか(positive)否か(negative)——のラベルを付け、学習時にそのラベルをポリシーのプロンプトに含め、デプロイ時には常に「positive」を与える。ポリシーは失敗を含むすべてのデータから学びつつ、推論時には自身の良い挙動の側へ誘導されます。正確には、論文の RECAP は「rollout を収集 → value function を更新 → ポリシーを再学習」と回す反復ループ全体の名前です。本記事で検証したのはその 1 周目で、反復はこれからです(§6)。
私たちにとってこれは P に直結します。より良い行動選択は成功率を上げ(介入が減る)、速い進捗の行動を優先すればサイクルタイムが縮む(スループットが増える)。だからこそ私たちのパイプラインで最重要級の手法と位置づけ、1 回走らせて終わりではなく、徹底的に検証しました。
ベースのポリシーは π0.5 [2](openpi [4])で、全実験を通して real-time chunking の遅延条件付き [3] で学習しています。冒頭の動画の動作が滑らかで、行動チャンクの切れ目のカクつきが見えないのはこのためです——推論遅延を学習時にシミュレートすることで、ポリシーはデプロイ時に直面する遅延の下で行動を決め切ることを学びます。advantage ラベルは小さな value function(正規化した完了までの残り時間を予測)から作ります——あるフレームの advantage は「50 フレーム先の予測値の上がり幅が、時間経過だけで説明できる分を超えるか」で、タスクごとに上位 30% で 2 値化します。論文自身は pretraining に限り、エピソード末尾までの実リターンと予測値の差というより粗い推定に切り替えていますが、私たちは pretraining・finetune とも一貫してこの 50 フレーム推定を使っています。
4.2 finetune 時だけの条件付け
まず安価な回し方から始めました。pretraining には条件付けを入れず、value function 由来の indicator を、デモ + ポリシー自身の rollout(学習済みポリシーを実機で走らせて記録したエピソード)でのタスク finetune のときだけ注入する構成です。成功率は向上しませんでした。indicator の導出が問題なのか、ポリシーの学習がそれを使えていないのかを切り分けるため、ラベルを rollout 100 本への人手の良/悪区間アノテーションに差し替えて再度 finetune しても、改善しません。それどころか、同じ demo+rollout 混合データで学習した無条件の BC 対照(BC = Behavior Cloning、条件付けを入れない通常の模倣学習)ごと、デモのみで学習したベースラインを大きく下回りました。つまり失敗 rollout を模倣学習に混ぜること自体が単体でコストであり、条件付けはそれを何も回復していません。オフラインで確かめても、条件を positive ↔ negative で入れ替えたときに生成行動はほとんど動かず、条件付けは実質不活性でした。
原因はラベルの情報量にありました。モデル自身の観測埋め込みを入力にした単純な線形分類器だけで、ラベルを AUC 0.92 で予測できます。失敗しそうな状態からは、実際に失敗につながる行動が記録されていることがほとんどで、ラベルが観測と独立に意味のある情報を持つフレームはごく一部しかない——だからプロンプトを読む学習圧が立たないのです。解決策は、観測がまだ含んでいない情報を運ぶラベルを、条件付けが根を張れる場所——pretraining——で学ばせること。
4.3 indicator を pretraining へ——実機に進む前のオフライン確認
π*0.6 のレシピどおり [1]、advantage 条件付けを pretraining に置きました。正確に言うと、私たちの pretraining は π0.5 の公開パラメータを出発点に、それを自前の pretraining セット全体(3,000 エピソード・100 以上のタスク——§5 参照)で言わば finetune する形の「第 2 の pretraining」です——π0.5 の元のパラメータを作った Physical Intelligence 側の pretraining とは別物です。これを indicator つきで 20k ステップ回すと、今度は条件付けが明確に立ち上がりました。条件の入れ替えで行動がはっきり動き、「positive」では行動チャンクが 1 チャンクあたり約 8% 長く進みます——サイクルタイム短縮のオフラインでの予兆です。
残る懸念は、タスク finetune がこれを消してしまわないかでした。全フレーム positive のデモだけで finetune する——これは π*0.6 論文のレシピどおりの SFT 段で、論文はこの段階では indicator を positive に固定します——と条件付けは大きく弱まりますが、50 本の「recovery」エピソード(作業者があえて失敗してから復帰する記録——専門家がリアルタイムで修正介入する intervention よりも安く「失敗と復帰」を集めるための、私たち独自の工夫です)を実ラベルつきで混ぜれば保たれます。模倣の質への副作用はありません(BC 対照と一致)。条件付けが残ることを確認して、実機評価に進みました。
4.4 実機で
実機評価は 2 段階で行いました。最初に、論文の SFT 段に当たる「全フレーム positive のデモのみで finetune」した構成を BC 対照と並べて評価すると、成功率 56% 対 52%、成功時サイクルタイム 76.6 秒 対 72.5 秒(スループット 29.5 対 29.0 /h、介入 13.0 対 13.9 回/h、P = −95 対 −127 円/h)。成功率はやや上がった一方でサイクルタイムはむしろ伸びており、条件付けがオフラインで大きく減衰していたことと整合する、小さく曖昧な差にとどまりました(このペアには後述の統一基準での再判定は行っていません)。本命は、条件付けが保たれることを確認済みの demo + recovery 構成です:
| 成功率 | 成功時サイクル | スループット Z | 介入 I | P = 10·Z − 30·I | |
|---|---|---|---|---|---|
| RECAP(判定者の申告) | 61% | 75.9 s | 30.9 /h | 12.1 /h | −54 円/h |
| BC 対照(判定者の申告) | 54% | 84.9 s | 28.0 /h | 12.9 /h | −107 円/h |
| RECAP(統一基準で再判定・参考) | 57% | 72.1 s* | 30.4 /h | 13.1 /h | −88 円/h |
| BC 対照(統一基準で再判定・参考) | 53% | 76.3 s* | 28.8 /h | 13.5 /h | −118 円/h |
* 再判定行のサイクルは録画から機械測定した「畳み完了時刻」。判定者が録画を止めるまでの遅れを含まないぶん、申告行の録画長より短めに出る物差しです。
額面どおりなら: 成功率 +7 ポイント、9 秒高速化、利益差 53 円/台·時。私たちは額面どおりには受け取りませんでした。評価は 1 セル(手法 × ロボット)につき別の人が判定しており、判定者ごとの合否基準の個人差——特に、畳み終わったタオルの角のずれやシワをどこまで許容して成功と数えるか——が、成功率の差を丸ごと説明できる規模の交絡になっていたのです。
そこで、demo + recovery 構成の全 200 エピソードを単一の厳しい基準——整った畳みだけを成功と数える——で AI に再判定させました。具体的には、各エピソードの録画の最終フレームから頭上カメラの画像を切り出し、手法・ロボット・判定者が分からないよう通し番号だけを振ってシャッフルし、一覧画像にして AI に渡します。指示は「整った二つ折り × 2 が完了した状態(層ズレ・シワ・角のはみ出しがほぼ無い)だけを成功とし、欠陥の見える畳みや未完了はすべて失敗と判定せよ」。
これが表の「統一基準で再判定」の行です。成功率の差は 57% 対 53%(p 値 0.67)に縮み、統計的な差はありません。一方、サイクルタイムの短縮はどの切り口でも残ります(判定者由来の成分を除いても 4 秒以上)。なお、この再判定の合否線をどこに引くべきか自体はまだ確定していません——だから表では参考値の扱いで、基準の確定は §6 で述べる AI 統一評価の仕事です。
誠実な要約: RECAP は本命の demo + recovery 構成でサイクルタイムを 4 秒(5%)以上短縮し、成功率は測定可能な変化なし。 そして §2 の式に照らすと、この 2 つの重みを取り違えてはいけません。現在の動作点では、成功率 +1 ポイントが P を約 +9 円/h 動かすのに対し、サイクルタイム −1 秒は約 0.3 円/h 悪化させる側に働きます。黒字化までは成功率が唯一の効く変数であり、この短縮分は、p が損益分岐の 66.7% を超えた瞬間から配当が始まる貯金です。 現在地は 61%(厳しい再判定基準なら 57%)——損益分岐まであと 6〜10 ポイント。p = 0% の −400 円/h から見れば、損失の 8 割前後はすでに詰めています。
4.5 この一連の実験から学んだこと
- 得たもの: 頑健な 4 秒以上のサイクルタイム短縮。ただし §2 の式のとおり、これが利益に転化するのは損益分岐 66.7% を超えてから。成功率はまだ動いていない。
- indicator は pretraining に置く。finetune 時だけの注入は機能しなかった。
- finetune のデータに negative を混ぜ続ける。さもなくば条件付けは薄れる。
- 主戦場はラベルである。観測から読めるラベルは学習圧を生まない——§4.2 の条件付けが不活性に終わったのはこのためだった。
5. pretraining データについて、簡潔に
上記のすべては自前の pretraining セットの上に載っています: 双腕プラットフォーム(Nova5 アーム × 2 本)上の遠隔操作エピソード約 3,000 本・100 以上のタスク——タオル・枕カバー・布のさまざまな状態(広げる、畳む、ねじれをほどく、悪い状態からの復帰)に加え、リネン以外のマニピュレーションタスクも少々。カメラは 3 台(頭上 + 両手首)。学習は pretraining・finetune とも NVIDIA RTX PRO 6000 Blackwell Workstation Edition で回しています。基盤モデルの水準からすれば小さいですが、デプロイタスクが訪れる状態の周辺に意図的に密度を寄せています。この収集とスケーリングの方法——シミュレーション生成データを含む——は別の記事のテーマです。
6. 次にやること
現在のボトルネックは分かりやすい: 試行の約 2 割がタイムアウトし、その多くはグリッパーがタオルの寸前で閉じてしまう把持ミスの繰り返しです。損益分岐の成功率 66.7% まであと 6〜10 ポイント——§2 の式は、まずここを押せと言っています。対策は、手法側で予測精度を上げるか、カメラ側で実質的に深度情報を取って使うか、などを考えていますが、着手はまず原因を切り分けてからです。並行して 3 つ: 判定者ばらつきを根絶する AI 統一評価(§4.4 の再判定基準を確定させる)、intervention データを RECAP ループに入れて試すこと、そして pretraining のスケーリング——データ数と学習ステップ数の両方を増やします。
私たちは小さなチームです。この種の実験を回す人が、指標も設計し、ラベルの定義を議論し、本番ではロボットの隣に立ちます。ロボット学習を時給(円/h)で測ること——そしてネガティブな結果もポジティブな結果と一緒に公開すること——が自分の研究文化だと感じるなら、私たちは ML エンジニアを募集しています。求めているのは、単に ML 手法を使えるだけでなく、扱っている手法を深く理解できる数学的素養を持つ人です——実装して結果を出して終わりではなく、結果を分析し、次の一手を精度高く選ぶためです。一緒にタオルを畳みましょう。
参考文献
- [1]Physical Intelligence. π*0.6: a VLA That Learns From Experience. arXiv:2511.14759, 2025.
- [2]K. Black et al. (Physical Intelligence). π0.5: a Vision-Language-Action Model with Open-World Generalization. arXiv:2504.16054, 2025.
- [3]K. Black, A. Z. Ren, M. Equi, and S. Levine. Training-Time Action Conditioning for Efficient Real-Time Chunking. arXiv:2512.05964, 2025.
- [4]Physical Intelligence. openpi. GitHub, 2025.

AUTHOR
杉山 幹太Head of ML Engineering
ML エンジニアを募集しています
ロボット学習を時給(円/h)で測ること、そしてネガティブな結果もポジティブな結果と一緒に公開すること。 これが自分の研究文化だと感じたら、まずはお話からで構いません。 共同研究・技術提携のご相談も同じ窓口で承っています。