Model-based RL

Felix Christian Lv3

一、Model-based RL

基础算法

模型基强化学习(Model-Based RL)的基本流程如下:

对于每一次迭代 (iter = 1, 2, ...): 1. 在当前策略下收集数据。 2. 使用过去的数据学习一个动态模型。 3. 利用这个动态模型来改进策略。 * 可以通过在学习到的模型上进行时间反向传播(backprop-through-time)来优化策略。 * 也可以将学习到的模型作为一个模拟器来运行其他强化学习算法。

为什么使用Model-Based RL?

  1. 数据效率:从数据中学习模型,可能比单纯的策略梯度更新带来更显著的策略提升。
  2. 可重用性:学习到的模型如果足够通用,可以被复用于其他任务。

为什么不一直使用Model-Based RL?

尽管它有很高的样本效率(sample efficiency),但也存在一些问题:

  • 训练不稳定性
  • 无法达到与无模型(model-free)方法相同的渐进性能

Model-based RL中的过拟合问题

  1. 标准过拟合 (监督学习中)
    • 神经网络在训练数据上表现良好,但在测试数据上表现不佳。例如,在根据(s, a)预测s_next时。
  2. Model-based RL中的新挑战
    • 策略优化倾向于利用那些没有足够数据来训练模型的区域,这会导致灾难性的失败。
    • 这个问题被称为“模型偏差”(model-bias)。

二、Robust Model-based RL:Model-Ensemble TRPO (ME-TRPO)

ME-TRPO(模型集成信赖域策略优化)被提出来解决“模型偏差”问题。

Vanilla Model-Based Deep RL 算法

这是ME-TRPO的基础对比算法。

  1. 初始化策略 和模型
  2. 初始化一个空的数据集D。
  3. 循环直到策略在真实环境中表现良好:
    1. 使用策略 从真实环境f中收集样本并添加到D中。
    2. 循环直到性能停止提升:
      1. 使用数据集D训练模型
      2. 使用策略 从模型 中收集虚拟样本。
      3. 在虚拟样本上使用BPTT(Backpropagation Through Time)更新策略。
      4. 评估性能

ME-TRPO 算法

  1. 初始化策略 和所有模型
  2. 初始化一个空的数据集D。
  3. 循环直到策略在真实环境中表现良好:
    1. 使用策略从真实系统中收集样本并添加到D中。
    2. 使用数据集D训练所有模型。
    3. 循环直到性能停止提升:
      1. 使用策略 从模型集合 中收集虚拟样本。
      2. 在虚拟样本上使用TRPO更新策略。(核心区别:使用所有模型进行优化)
      3. 评估每个模型下的性能 for , ..., Κ。

ME-TRPO 评估

实验环境:

与SOTA(State of the art)方法的比较:

image-20250714005320349

ME-TRPO在多个环境(Swimmer, Hopper, HalfCheetah, Ant, Humanoid, Snake)中与PPO, TRPO, DDPG等先进的无模型方法进行了比较。结果显示,ME-TRPO在样本效率上具有显著优势,能用更少的样本达到甚至超越其他方法的性能。

ME-TRPO 消融实验

  1. TRPO vs. BPTT 在标准Model-based RL中的比较

    image-20250714005352801

    1. 实验对比了在单个模型下,使用TRPO更新策略(MB-TRPO)与使用BPTT更新策略(Vanilla MBRL)的效果。结果显示,在Snake, HalfCheetah, Ant环境中,基于TRPO的更新方式性能更优且更稳定。
  2. 集成中学习的动态模型数量

    image-20250714005413802

    1. 实验比较了使用不同数量模型(1, 5, 10, 20)的ME-TRPO性能。结果显示,在HalfCheetah和Ant环境中,使用更多的模型(特别是5个或10个)可以带来更好的性能和稳定性。

三、Adaptive Model-based RL: Model-based Meta-Policy Optimization (MB-MPO)

解决Model-based RL的渐进性能问题

  • 问题: 因为学习到的(集成)模型不完美,导致的策略在模拟中表现很好,但在真实世界中并非最优。
  • 尝试的修复方案1: 学习更好的动态模型。事实证明这还不够。
  • 尝试的修复方案2: 通过元策略优化(meta-policy optimization)进行模型基强化学习,即MB-MPO。
  • 核心思想:
    1. 学习一个能够代表真实世界通常如何运作的模型集成。
    2. 学习一个自适应策略,该策略可以快速适应任何一个学习到的模型。
    3. 这样一个自适应策略也就能快速地适应真实世界的运作方式。

MB-MPO 算法

需要: 内外两层步长 ,

  1. 初始化策略 ,模型 ... 以及数据集
  2. 循环直到策略在真实环境中表现良好:
    1. 使用适应后的策略 从真实环境中采样轨迹,并添加到D中。
    2. 使用D训练所有模型。
    3. 对于所有模型 :
      1. 使用 从模型 中采样虚拟轨迹
      2. 使用轨迹 计算适应后的参数:
      3. 使用适应后的策略 从模型 中采样虚拟轨迹
    4. 使用轨迹 更新
  3. 返回最优的更新前参数

MB-MPO 评估

实验环境: image-20250714005446428

与SOTA Model-Free方法的比较:

image-20250714005507854

MB-MPO在多个环境中与acktr, trpo, ppo, ddpg等先进的无模型方法进行比较。结果显示MB-MPO(图中ours)在样本效率和渐进性能上都达到了顶尖水平。

与SOTA Model-Based方法的比较:

image-20250714005528702

MB-MPO(图中ours)与me-trpo和mb-mpc进行了比较。在Ant, HalfCheetah, Hopper, Walker2D等环境中,MB-MPO在学习速度和最终性能上均表现出明显优势。

  • 标题: Model-based RL
  • 作者: Felix Christian
  • 创建于 : 2025-07-14 00:47:05
  • 更新于 : 2025-07-14 01:03:59
  • 链接: https://felixchristian.top/2025/07/14/21-DeepRL_lecture6/
  • 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。
评论