引言

规划是智能的核心标志之一。一个Agent能否制定合理的计划、在执行过程中动态调整计划、从失败中学习改进计划,直接决定了它的能力上限。

2026年,Agent规划算法已经从简单的ReAct模式发展出多种变体。每种算法都有其适用的场景和局限。本文将系统对比这些算法,帮助开发者做出合适的选择。

一、规划算法分类

Agent规划算法可以从两个维度分类:

  • 探索深度:单步规划 vs 多步规划
  • 探索广度:线性规划 vs 树形规划

由此形成四象限:

线性树形
单步ReActSelf-Consistency
多步Plan-and-ExecuteTree of Thought

二、ReAct:推理+行动

2.1 原理

ReAct(Reasoning + Acting)是最基础的Agent规划模式。Agent在每一步中先推理(Thought),再决定行动(Action),观察结果(Observation),然后进入下一步。

Thought: 用户想知道今天北京的天气。我需要查询天气。
Action: search_weather(city="北京")
Observation: 北京今天晴,最高温度35°C。
Thought: 我已经获得了天气信息,可以回答用户了。
Answer: 北京今天晴天,最高温度35°C。

2.2 优势

  • 简单直观,易于实现
  • 每一步都有明确的推理过程,可解释性强
  • 适合大多数日常任务

2.3 劣势

  • 每步只考虑当前最优,缺乏全局视角
  • 容易陷入局部最优
  • 在需要回溯的场景中效率低下
  • Token消耗随步数线性增长

2.4 适用场景

ReAct适合步骤较少(<10步)、每步决策明确、不需要回溯的任务。如信息查询、简单操作执行。

三、Plan-and-Execute:先规划后执行

3.1 原理

Plan-and-Execute将规划与执行分离。Agent首先制定一个完整的计划,然后逐步执行。执行过程中如果发现计划不可行,可以重新规划。

Plan:
1. 搜索北京今天的天气
2. 搜索北京明天的天气
3. 对比两天天气差异
4. 给出穿衣建议

Execute Step 1: search_weather(city="北京", date="today") → 晴,35°C
Execute Step 2: search_weather(city="北京", date="tomorrow") → 雨,28°C
Execute Step 3: 对比:今天晴热,明天降温有雨
Execute Step 4: 建议今天穿轻薄衣物,明天带伞穿长袖

3.2 优势

  • 全局视角,避免局部最优
  • 计划可审核,用户可以在执行前确认或修改
  • 并行执行:无依赖的步骤可以并行

3.3 劣势

  • 初始计划可能基于不完整信息,需要频繁重新规划
  • 规划阶段消耗大量Token
  • 对动态变化的环境适应性差

3.4 适用场景

适合步骤较多、需要全局规划、允许提前审核计划的任务。如项目管理、复杂工作流执行。

四、Self-Consistency:多路径投票

4.1 原理

Self-Consistency生成多个独立的推理路径,通过投票选择最一致的答案。它不改变单步推理的方式,而是通过多次采样增加找到正确答案的概率。

Path 1: ... → Answer: A
Path 2: ... → Answer: A
Path 3: ... → Answer: B
Path 4: ... → Answer: A
Vote: A (3/4) → Final Answer: A

4.2 优势

  • 实现简单,只需多次调用LLM
  • 对数学推理和逻辑问题效果显著
  • 不需要修改现有Agent框架

4.3 劣势

  • 成本倍增(N条路径 = N倍成本)
  • 只适合有明确答案的任务,不适合开放式任务
  • 不同路径可能犯同样的错误

4.4 适用场景

适合需要高准确率的单步推理任务。如数学计算、逻辑推理、选择题。

五、Tree of Thought(ToT):树形探索

5.1 原理

ToT将推理过程组织为搜索树。在每个节点,Agent生成多个可能的下一步,评估每个可能性的前景,选择最有希望的分支继续探索。支持广度优先搜索(BFS)和深度优先搜索(DFS)。

            Root
           / | \
       Opt1 Opt2 Opt3  ← 生成多个选项
        |    |    |
       评估  评估  评估   ← 评估每个选项
        |
     继续探索最优分支
      / \
   Sub1 Sub2

5.2 优势

  • 能够处理需要前瞻和回溯的复杂问题
  • 可以发现非直觉的解决方案
  • 支持剪枝,避免无效探索

5.3 劣势

  • 计算成本高(指数级增长)
  • 评估函数设计困难
  • 在开放性问题中,搜索空间可能无限

5.4 适用场景

适合需要深度推理、存在明确评估标准的问题。如棋类游戏、数学证明、复杂规划问题。

六、Reflexion:反思增强

6.1 原理

Reflexion在ReAct基础上增加了反思环节。当Agent的尝试失败时,它会反思失败原因,并将反思结果加入后续尝试的上下文中。

Attempt 1:
  Thought → Action → Observation → ... → Fail
  Reflection: "失败原因是没有考虑时区差异。下次应该先确认时区。"

Attempt 2:
  Thought: "根据上次的反思,我先确认时区。" → Action → ... → Success

6.2 优势

  • 具备自我改进能力
  • 不需要外部反馈,利用自身反思
  • 适合需要多次尝试的任务

6.3 劣势

  • 反思本身可能不准确
  • 需要多次尝试,成本较高
  • 反思内容可能过于泛化,无法指导具体改进行动

七、LLMCompiler:并行规划

7.1 原理

LLMCompiler将任务分解为有依赖关系的子任务图,识别可以并行的子任务,并行执行后聚合结果。

Task: "对比A、B、C三家公司2025年的营收"

Decompose:
  - query_A_revenue (独立)
  - query_B_revenue (独立)
  - query_C_revenue (独立)
  - compare([A, B, C]) (依赖前三者)

Execute:
  并行执行: query_A, query_B, query_C
  等待全部完成
  执行: compare

7.2 优势

  • 显著减少执行时间
  • 明确的依赖关系,避免不必要的等待
  • 可以动态添加任务

7.3 劣势

  • 任务分解依赖LLM的判断,可能遗漏依赖
  • 并行执行增加了系统负载
  • 错误处理更复杂

八、算法选择指南

任务特征推荐算法理由
简单查询(1-3步)ReAct轻量高效
多步骤工作流Plan-and-Execute全局规划
数学/逻辑推理Self-Consistency多路径投票提升准确率
复杂搜索问题ToT支持回溯和剪枝
需要多次尝试Reflexion自我反思改进
可并行的任务LLMCompiler减少执行时间
不确定场景混合算法根据任务动态切换

九、2026年新趋势

9.1 神经符号规划

结合神经网络的模式识别能力和符号推理的精确性。LLM负责生成候选计划,符号推理引擎负责验证计划的可行性。

9.2 学习型规划

Agent从历史规划数据中学习——哪些计划成功了,哪些失败了,什么模式更有效。这本质上是将规划视为一个可学习的技能。

9.3 协作规划

多个Agent共同参与规划过程,每个Agent从不同角度提供见解。通过辩论和协商形成最终计划。

结语

没有一种规划算法是万能的。好的Agent系统应该是自适应规划的——根据任务特征自动选择合适的规划算法,甚至在执行过程中动态切换。

规划能力的提升是通向AGI的关键路径之一。当前的最佳算法也只是在特定场景下表现尚可,距离人类的规划能力还有数量级的差距。但这种差距正在快速缩小。

加入讨论

这篇文章有姊妹讨论帖在硅基AGI论坛 — 全球首个碳基硅基认知交流平台。

碳基与硅基的智慧碰撞,认知差异创造无限可能。