Handling Infinite Domain Parameters in Planning Through Best-First Search with Delayed Partial Expansions

本文提出了一种基于最佳优先搜索与延迟部分扩展的算法,通过将控制参数显式视为决策点而非约束,有效解决了自动化规划中无限域参数的搜索问题,并证明了其在特定条件下的完备性。

Ángel Aso-Mollar, Diego Aineto, Enrico Scala, Eva Onaindia

发布于 2026-03-09
📖 1 分钟阅读☕ 轻松阅读

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

这篇论文讲述了一个关于人工智能(AI)如何学会做“无限选择”的决策的故事。

为了让你轻松理解,我们可以把这篇论文的核心内容想象成**“在一个拥有无限种调料的世界里,教厨师做出一道完美菜肴”**。

1. 背景:传统的厨师 vs. 无限的调料

  • 传统的 AI 规划(旧方法):
    想象一个传统的 AI 厨师,他面前的菜单是有限的。比如,他只能选“加盐”或“加糖”,而且只能选“一勺”或“两勺”。世界里的东西是固定的、有限的。
  • 新挑战(控制参数):
    现在,我们要给这个厨师升级。我们要让他能处理连续的数值。比如,他不仅要决定“加盐”,还要决定“加多少盐”——可以是 0.1 克、0.1001 克、0.1000001 克……甚至可以是任何实数。
    这就好比调料瓶里不是只有几勺,而是有无限多种可能的分量
  • 旧方法的困境:
    以前的 AI 处理这种“无限”时,通常把它当作**“限制条件”**(比如:盐必须在 0 到 1 克之间),然后试图用数学公式(像解方程一样)去算出答案。这就像厨师试图在还没开始炒菜前,就算出所有可能的盐量组合,非常笨重,而且容易陷入死胡同。

2. 核心创新:S-BFS 算法(“尝一口”策略)

这篇论文提出了一种全新的方法,叫 S-BFS(基于采样的最佳优先搜索)。我们可以把它想象成一种**“聪明地尝味道”**的策略。

核心概念一:延迟部分扩展(Delayed Partial Expansions)

  • 比喻:
    想象你面前有一棵巨大的树,树枝代表不同的选择。在传统方法里,如果一棵树有无限多根树枝,你根本没法把树枝全摘下来看(因为摘不完)。
    S-BFS 的做法是: 它不试图一下子摘光所有树枝。它只随机摘下一根(采样),看看这根树枝通向哪里。如果这条路看起来不错,它就继续走;如果不好,它就回来,再摘下一根新的树枝试试。
    这就叫**“延迟部分扩展”:不一次性看完所有可能,而是边看边选,边选边看**。

核心概念二:采样函数(Sampling Function)

  • 比喻:
    这就是那个“摘树枝”的手法。
    • 均匀采样: 就像闭着眼睛随机抓一把调料,不管多少,先抓一把试试。
    • 启发式采样: 就像闻一下味道,觉得哪个方向可能好吃,就优先往那个方向抓。
      论文发现,有时候“闭眼随机抓”(均匀采样)或者“按顺序抓”(系统采样)反而比“闻味道抓”更有效,因为有时候味道(启发式函数)会骗人,或者味道太相似,分不清好坏。

核心概念三:修正函数(Rectification Function)

  • 比喻:
    这是为了防止厨师**“死脑筋”
    如果厨师一直盯着某根树枝看,看了很多次发现路不通,但他还是死磕,那他就永远找不到好菜了。
    修正函数就像是一个
    “耐心计数器”。每当你盯着同一个选择看了一次,计数器就加 1。随着次数增加,这个选择的“吸引力”就会慢慢下降(或者成本变高),迫使厨师去尝试其他新的树枝。
    论文发现,用
    “对数增长”**(Logarithmic)的方式增加这个惩罚最聪明:刚开始很宽容,让你多试试;后来慢慢收紧,逼你换方向,但不会一下子就把好路给堵死。

3. 实验结果:谁赢了?

作者把他们的 AI(S-BFS)和现有的两个最强对手比了比:

  1. NextFLAP: 像是一个擅长解数学题的“学霸”厨师,擅长用公式算出最优解,但在面对特别复杂、无限变化的问题时,容易算不过来,或者根本算不出答案。
  2. MCTS(蒙特卡洛树搜索): 像是一个“试错狂人”,疯狂尝试各种随机组合,但在有结构的规划问题上,效率太低。

结果:

  • 覆盖率(能解决多少问题): S-BFS 完胜!它能解决绝大多数 NextFLAP 算不出来的问题。因为它不追求一开始就算出完美答案,而是通过“不断尝试”来找到路。
  • 解的质量(菜好不好吃): 在简单的问题上,NextFLAP 算出的菜可能更精致(步骤更少);但在复杂问题上,S-BFS 能做出“能吃”的菜,而 NextFLAP 直接放弃。
  • 结论: 对于拥有“无限选择”的复杂世界,“边做边试”(S-BFS)比“先算后做”(传统方法)更管用。

4. 总结:这篇论文到底说了什么?

简单来说,这篇论文告诉我们要解决那些**“选项无限多”**的复杂规划问题(比如机器人控制、自动驾驶中的连续速度调整),不能死板地把它当成数学题去解。

我们要学会**“抽样”**:

  1. 不要试图穷尽所有可能(因为那是无限的)。
  2. 像探险家一样,每次只探索一小部分路径。
  3. 如果一条路走不通,就换个方向,但要用聪明的方式(修正函数)来平衡“坚持”和“放弃”。

这就好比在茫茫大海中找岛屿,你不需要画出整张海图,只需要拿着指南针,不断尝试不同的航向,最终一定能靠岸。这就是 S-BFS 算法的精髓。