在强化学习领域,长视野任务(long-horizon tasks)一直是个棘手的问题。这类任务通常需要智能体执行一系列连续动作才能达成最终目标,比如网页导航中的多步骤操作,或是机器人完成复杂装配流程。传统强化学习方法在这类场景下表现不佳,主要原因在于奖励稀疏性(reward sparsity)——智能体只有在最终完成任务时才能获得正向奖励,而在漫长的中间过程中缺乏有效的学习信号。
长视野任务主要面临三个关键挑战:
子目标驱动框架通过将复杂任务分解为一系列可管理的中间里程碑(subgoals)来应对这些挑战。这种"分而治之"的策略源于人类解决问题的方式——我们不会试图一次性解决复杂问题,而是将其分解为多个可完成的子任务。
以WebArena环境中的"在GitLab创建项目并添加成员"任务为例:
每个子目标都标记着任务推进的关键节点,为智能体提供了中间学习信号。
奖励塑形(Reward Shaping)是解决稀疏奖励问题的经典方法,其核心思想是在环境提供的原生奖励之外,设计额外的塑形奖励来引导智能体学习。传统奖励塑形面临的主要难题是如何设计这些额外奖励才能保证策略不变性(policy invariance)——即塑形后的最优策略与原问题最优策略一致。
潜在函数(Potential Function)Φ(s,g)的引入解决了这一难题。基于势能的奖励塑形定义如下:
R̃(s,a,s',g) = R(s,a,s',g) + γΦ(s',g) - Φ(s,g)
其中γ是折扣因子。Ng等人(1999)证明了当塑形奖励采用这种形式时,可以保证原始MDP与塑形后MDP的最优策略一致。
在MiRA框架中,潜在函数Φ(s,g)被实现为潜在批评家(Potential Critic)Pψ(s,g),它通过学习来预测当前状态s相对于目标g的进度。这种设计有两大优势:
MiRA框架包含三个核心组件:
子目标生成器:基于Gemini-2.5-pro等大型语言模型的视觉-语言理解能力,将用户指令分解为4个固定数量的子目标。这种固定数量的设计确保了不同复杂度的任务具有可比的时间粒度。
潜在批评家:一个经过监督训练的回归模型,输入为当前状态和目标,输出为0到1之间的进度预测值。它的训练数据仅来自成功轨迹,确保学习到的进度信号与真实任务完成度相关。
策略执行器:基于强化学习的主策略网络,接收环境观察并输出动作。其奖励函数结合了环境提供的稀疏奖励和潜在批评家提供的塑形奖励。
潜在批评家的训练遵循算法3的流程:
这种设计确保了进度预测的平滑性和单调性,为策略学习提供了稳定的梯度信号。
策略优化采用KL正则化的强化学习目标:
max_π E_π[r(s,a) - βlog(π(a|s)/π_ref(a|s))]
其闭式解为:
π*(a|s) = 1/Z(s) π_ref(a|s) exp(Q*(s,a)/β)
在实际实现中,我们使用近端策略优化(PPO)算法进行训练,结合以下奖励函数:
r_total = r_env + α(r_aux)
其中辅助奖励r_aux = α[P_ψ(s_{t+1},g) - P_ψ(s_t,g)],α是塑形系数,实验中确定最佳值为0.3。
MiRA引入了"思考预算"(Thinking Budget)的概念——即允许模型在每一步决策时使用的计算资源(以token数衡量)。研究发现(图14):
动态调整机制能够自动平衡计算成本与决策质量,实现32.12%的成功率,同时将平均推理时间控制在16.74秒。
表7展示了不同α值对任务成功率的影响:
| α值 | 成功率(%) |
|---|---|
| 0.0 | 30.9 |
| 0.1 | 31.5 |
| 0.3 | 36.4 |
| 0.5 | 28.5 |
| 0.8 | 25.5 |
从数据可以看出:
这种现象符合预期——适度的塑形奖励帮助智能体在稀疏奖励环境中学习,但过强的塑形信号会淹没真正的环境奖励,导致策略偏离最优。
表8展示了不同困惑度(perplexity)过滤区间对性能的影响:
| Rank Score区间 | 成功率(%) |
|---|---|
| (0.9,1.0] | 27.9 |
| [0.5,0.9] | 36.4 |
| [0.0,0.5) | 23.6 |
| [0.0,1.0] | 29.1 |
关键发现:
这验证了课程学习(curriculum learning)的原则——从适度挑战性的样本中学习效果最佳。
在WebArena网页导航环境中部署MiRA框架时,需注意以下要点:
观察空间设计:
动作空间设计:
python复制def do(action, argument, element):
"""支持的基础动作类型"""
# action ∈ ["Click","Type","Hover","Scroll","Select Dropdown"]
# element: DOM元素ID
def exit(message):
"""任务终止并返回结果"""
def go_backward():
"""返回上一页面"""
系统提示设计:
必须严格限制智能体输出格式,防止幻觉行为:
code复制规则:
- 每次只执行一个动作
- 不能虚构不可见元素
- 使用"# Element"注释指明目标元素
- 避免循环,仅在必要时使用条件判断
在实际部署中,我们总结了以下关键经验:
子目标数量选择:
潜在批评家训练:
策略微调技巧:
子目标分解错误:
进度预测不准确:
动作重复循环:
当系统性能不如预期时,建议按以下步骤排查:
虽然本文聚焦WebArena环境,但MiRA框架可广泛应用于其他长视野任务场景:
机器人操作任务:
对话系统:
游戏AI:
未来值得探索的方向包括:
在实际应用中,我们发现将子目标驱动框架与大型语言模型相结合,能够显著提升智能体在复杂环境中的表现。这种混合方法既保留了传统RL的严谨性,又利用了LLM的语义理解能力,为长视野任务学习提供了新的可能性。