<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>アクションチャンク on Physical AI Hub</title>
    <link>https://physicalaihub.net/tags/%E3%82%A2%E3%82%AF%E3%82%B7%E3%83%A7%E3%83%B3%E3%83%81%E3%83%A3%E3%83%B3%E3%82%AF/</link>
    <description>Recent content in アクションチャンク on Physical AI Hub</description>
    <generator>Hugo</generator>
    <language>ja-jp</language>
    <lastBuildDate>Thu, 24 Sep 2026 13:31:55 +0900</lastBuildDate>
    <atom:link href="https://physicalaihub.net/tags/%E3%82%A2%E3%82%AF%E3%82%B7%E3%83%A7%E3%83%B3%E3%83%81%E3%83%A3%E3%83%B3%E3%82%AF/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>ロボット行動方策の実行粒度：アクションチャンクと再計画周期の設計</title>
      <link>https://physicalaihub.net/posts/robot-action-chunking-replanning-period/</link>
      <pubDate>Thu, 24 Sep 2026 13:31:55 +0900</pubDate>
      <guid>https://physicalaihub.net/posts/robot-action-chunking-replanning-period/</guid>
      <description>&lt;p&gt;アクションチャンクの「長さ」と再計画の「間隔」は、同じ数字で語られがちな点が気になります。&lt;/p&gt;&#xA;&lt;h2 id=&#34;先に結論&#34;&gt;先に結論&lt;/h2&gt;&#xA;&lt;p&gt;ロボットの行動方策では、1回の推論で予測する長さ &lt;strong&gt;H&lt;/strong&gt; と、次の推論まで実際に実行する長さ &lt;strong&gt;K&lt;/strong&gt; を分けて設計するべきです。Hはタスクの時間的なまとまりや先読みを表し、Kは環境変化に対する反応性と推論負荷を左右します。&lt;/p&gt;&#xA;&lt;p&gt;基本方針は、通常 &lt;strong&gt;H &amp;gt;= K&lt;/strong&gt; とし、予測した全アクションを固定的に実行しないことです。接触、物体移動、外乱、視覚変化が多い局面ではKを小さくし、安定した自由空間動作や推論コストが高い構成ではKを大きくする候補があります。ただし、最適な数値はロボット、制御周期、アクション表現、推論遅延、タスクによって変わるため、実機でHとKを組み合わせたアブレーションを行って決めます。&lt;/p&gt;&#xA;&lt;h2 id=&#34;なぜhとkを分けるのか&#34;&gt;なぜHとKを分けるのか&lt;/h2&gt;&#xA;&lt;p&gt;アクションチャンクとは、方策が1回の推論で単一のアクションではなく、複数ステップの連続アクション列を予測する設計です。ACT（Action Chunking with Transformers）は固定長のアクション列を予測し、時間的に重なる予測をtemporal ensembleで融合する構成を採用しています。一方、Diffusion Policyはアクション列を生成し、その一部を実行して観測を更新し、再計画するreceding-horizon controlを用います。&lt;/p&gt;&#xA;&lt;p&gt;ここで「チャンク長」という言葉を、予測する列の長さと、再計画まで実行する長さの両方に使うと、実装上の議論が曖昧になります。本稿では、予測長をH、実行してから次に推論する間隔をKと定義します。Hを長くしても、Kを短く保つことは可能です。逆にHとKを同じ値にして、予測列全体をオープンループで実行することもできますが、その場合は途中の観測を使った修正機会が減ります。&lt;/p&gt;&#xA;&lt;h2 id=&#34;ステップ数ではなく時間で考える&#34;&gt;ステップ数ではなく時間で考える&lt;/h2&gt;&#xA;&lt;p&gt;HとKはステップ数だけでなく、低レベル制御周期 &lt;strong&gt;Δt_ctrl&lt;/strong&gt; と組み合わせて評価します。予測時間はHΔt_ctrl、再計画時間はKΔt_ctrlです。同じKでも、制御周期が異なれば、ロボットが観測なしで動く物理的な時間は変わります。&lt;/p&gt;&#xA;&lt;p&gt;さらに、観測、通信、方策推論を含むエンドツーエンド遅延を &lt;strong&gt;T_inf&lt;/strong&gt; とします。同期推論では、少なくともT_infがKΔt_ctrlを超えないかを確認する必要があります。超える場合、推論完了までに現在のアクション列を使い切る可能性があります。そのときは、アクションバッファ、非同期推論、低レベルサーボ、安全な停止・ホールド機構などを設け、推論の遅さを単純なオープンループ時間の増加として放置しないことが重要です。&lt;/p&gt;&#xA;&lt;figure class=&#34;mermaid-figure&#34;&gt;&#xA;    &lt;pre class=&#34;mermaid&#34; role=&#34;img&#34; aria-label=&#34;予測長Hは先読みの長さ、再計画間隔Kは実際に実行してから次の推論を行うまでの長さを表す。基本方針はHをK以上とし、観測更新によって実行列を分割することです。&#34;&gt;flowchart LR&#xA;  A[&#34;時刻 t0：観測&#34;] --&gt; B[&#34;方策推論&#34;]&#xA;  B --&gt; C[&#34;長さHのアクション列を予測&#34;]&#xA;  C --&gt; D[&#34;最初のKステップだけ実行&#34;]&#xA;  D --&gt; E[&#34;時刻 t0+K：新しい観測&#34;]&#xA;  E --&gt; F[&#34;次のアクション列を再計画&#34;]&#xA;  F --&gt; G[&#34;新しい列の一部を実行&#34;]&#xA;  G --&gt; H[&#34;次の観測と再計画&#34;]&#xA;  C -. &#34;HΔt_ctrl：予測時間&#34; .-&gt; D&#xA;  D -. &#34;KΔt_ctrl：実行・再計画間隔&#34; .-&gt; E&#xA;  F -. &#34;予測が重なる場合&#34; .-&gt; I[&#34;temporal ensembleや加重平均で融合&#34;]&#xA;  I -. &#34;滑らかさと反応遅れを評価&#34; .-&gt; G&#xA;  C -. &#34;基本方針 H≥K&#34; .-&gt; F&lt;/pre&gt;&lt;figcaption&gt;予測長Hは先読みの長さ、再計画間隔Kは実際に実行してから次の推論を行うまでの長さを表す。基本方針はHをK以上とし、観測更新によって実行列を分割することです。&lt;/figcaption&gt;&lt;/figure&gt;&lt;h2 id=&#34;hとkの時間軸&#34;&gt;HとKの時間軸&lt;/h2&gt;&#xA;&lt;p&gt;時刻t0で方策が長さHのアクション列を予測し、そのうち最初のKステップを実行します。t0+Kで新しい観測を取得し、次の列を予測します。新しい予測と過去の予測が同じ時刻に対応する場合は、temporal ensembleや加重平均によって融合できます。これにより、チャンク境界での入力の不連続や急変を抑えられる可能性があります。&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
