When both Grounding and not Grounding are Bad -- A Partially Grounded Encoding of Planning into SAT (Extended Version)

この論文は、計画の長さに比例して線形にスケーリングし、完全な接地や完全な非接地のいずれの欠点も回避しながら、難易度の高いドメインにおいて状態最先端の計画手法を上回る性能を発揮する、述語を部分的に接地し動作をリフティングされたまま保持する3 つのSAT エンコーディングを提案するものである。

João Filipe, Gregor Behnke

公開日 2026-03-23
📖 1 分で読めます☕ さくっと読める

Each language version is independently generated for its own context, not a direct translation.

この論文は、**「AI が物事を計画する(自動計画)」**という難しい問題を、より効率的に解くための新しい方法を提案した研究です。

専門用語を並べると難しく聞こえますが、実は**「地図の描き方」「荷物の整理」**に例えると、とてもわかりやすくなります。

1. 問題:巨大な地図を描きすぎている

AI が「目的地にたどり着くまでの手順」を考えるとき、従来の方法は**「すべての可能性を紙に書き出す(接地化)」**というアプローチをとっていました。

  • 例え話:
    あなたが「東京から大阪へ行く方法」を考えたとします。
    • 従来の方法(完全接地): 東京駅、新宿駅、渋谷駅……すべての駅名をリストアップし、「東京→新宿」「東京→渋谷」「新宿→渋谷」など、すべての組み合わせを紙に書き出して、どれが最短か探します。
    • 問題点: 都市の数(オブジェクト)が増えると、このリストの量は爆発的に増えます。10 倍の都市があれば、リストは 100 倍、100 倍の都市があれば 10,000 倍になります。AI はこの膨大なリストを読み込むだけで疲弊してしまい、長い計画を立てるのに時間がかかりすぎてしまいます。

一方、最近の研究では**「抽象的なルールだけで考える(完全浮動)」**方法も試されました。

  • 例え話: 「駅名は書かないで、『駅 A から駅 B へ行く』というルールだけを書く」方法です。リストは短くなりますが、ルール同士をつなげる計算が複雑になり、計画が長くなると、また計算量が急激に増えてしまいます(2 乗の法則で増える)。

2. 解決策:「半分は具体、半分は抽象」のハイブリッド

この論文の著者たちは、**「完全なリスト」「完全な抽象」の中間にある、「部分接地(Partial Grounding)」**という新しい方法を提案しました。

彼らは**「アクション(行動)」は抽象的に残しつつ、「状態(事実)」だけを賢く整理する**というアイデアを使いました。

核心となるアイデア:「グループ化された整理箱」

ここで登場するのが**「排他 Mutex グループ」**という概念です。

  • 例え話:
    「荷物」を考えてください。
    • 「荷物は同時に 2 つの場所には置けない」
    • 「荷物は同時に 2 つの車には積めない」
      これらは**「排他ルール」**です。

従来の方法では、「荷物 A は東京にある」「荷物 A は大阪にある」……と、すべての組み合わせを個別にチェックしていました。
しかし、この新しい方法は**「この荷物は、東京か大阪かのどちらかしかない(排他グループ)」グループ化**して管理します。

  • 魔法の整理箱:
    「この箱には、東京か大阪のどちらかのラベルが貼られている」という1 つの箱で管理します。
    「東京のラベル」か「大阪のラベル」のどちらかが付いているかだけをチェックすればよく、個別の「東京にある」「大阪にある」という事実をすべて書き出す必要がなくなります。

3. 3 つの新しい「書き方」

著者たちは、この「グループ化」をどう SAT(論理パズル)という形式に変換するか、3 つの異なる方法を試しました。

  1. 完全リスト方式(Baseline):
    従来のようにすべて書き出す方法。単純ですが、データ量が多すぎて遅いです。
  2. 部分接地+1 対 1 対応方式:
    「グループ化」を使って、事実を減らします。
  3. 部分接地+2 進数方式(Binary Encoding):
    これが最も優秀な方法です。
    • 例え話:
      100 個の都市がある場合、100 個のスイッチを個別に付けるのではなく、7 個のスイッチ(2 進数:0000000〜1100100)で「どの都市か」を表す方法です。
      これにより、必要な情報量が劇的に減り、AI が処理するメモリの量が
      「計画の長さ」に対して直線的にしか増えない
      ようになります。

4. 結果:なぜこれがすごいのか?

  • 直線的な成長:
    従来の方法(LiSAT など)は、計画が長くなると計算量が**2 乗(2 倍、4 倍、9 倍…)で増え、すぐにパンクしていました。
    しかし、この新しい方法は
    直線的(2 倍、3 倍、4 倍…)**にしか増えません。
    例え話:

    • 従来の方法:階段を登るたびに、次の段までの距離が倍々になっていく(1m → 2m → 4m → 8m…)。
    • 新しい方法:階段を登るたびに、次の段までの距離が一定(1m → 2m → 3m → 4m…)。
      長い計画を立てる場合、新しい方法の方が圧倒的に速く、効率的です。
  • 実績:
    難しい問題(多くの都市や複雑なルールがある問題)でテストしたところ、この新しい方法が、これまでの最高峰の AI プランナー(LiSAT)よりも多くの問題を解くことに成功しました。特に、計画が長くなるような複雑なシナリオで強さを発揮しました。

まとめ

この論文は、**「AI に計画をさせるとき、すべてを個別に数え上げるのではなく、似たものをグループ化して『排他ルール』で管理し、さらに数字(2 進数)で効率的に表現すれば、複雑な問題でもサクサク解ける」**ということを証明しました。

まるで、**「100 個の荷物を個別に数えるのではなく、グループ分けして『どの箱に入っているか』だけをチェックする」**ような、賢い整理術を AI に教えたようなものです。これにより、AI はより長く、複雑な未来のシナリオを計画できるようになります。