【问题标题】:Difference between Evolutionary Strategies and Reinforcement Learning?进化策略和强化学习的区别?
【发布时间】:2019-04-17 20:32:43
【问题描述】:

我正在学习机器人强化学习中采用的方法,并且遇到了进化策略的概念。但我无法理解 RL 和 ES 有何不同。谁能解释一下?

【问题讨论】:

    标签: deep-learning reinforcement-learning robotics evolutionary-algorithm


    【解决方案1】:

    我认为进化策略和强化学习最大的区别在于 ES 是一种全局优化技术,而 RL 是一种局部优化技术。因此,RL 可以更快地收敛到局部最优值,而 ES 可以更慢地收敛到全局最小值。

    【讨论】:

    • 嗨,Shunyo,我对此有一个简短的问题。我想知道为什么你说 ES 可以收敛到全局解决方案而 RL 收敛到本地解决方案。据我了解,ES 只能在无限时间内“保证”全局解决方案,但适用于损失函数不可微的离散问题。考虑到目标函数本质上是凸的,RL 解决了保证全局最优的最优控制中的动态规划问题。
    • 嗨 Rui,我认为这是一个相关的问题。如果目标函数是凸的,则解是唯一的,当然,RL 会收敛到全局解。然而,问题是当目标函数是非凸的(在许多实际问题中可能是)时,RL 可能会陷入局部最优。另一方面,仅凭借从大量人口中抽样,ES 将更容易收敛到全局解决方案(当然不能保证)。解决方法是奖励塑造,这很麻烦,更像是一门艺术而不是科学。
    【解决方案2】:

    据我了解,我知道两个主要的。

    1) 强化学习使用一个代理的概念,代理通过以不同方式与环境交互来学习。在进化算法中,它们通常从许多“代理”开始,只有“强者存活”(具有产生最低损失特征的代理)。

    2) 强化学习代理同时学习正面和负面的动作,但进化算法只学习最优的,而负面或次优的解决方案信息被丢弃和丢失。

    示例

    你想建立一个算法来调节房间的温度。

    房间的温度是 15 °C,而您希望它是 23 °C。

    使用强化学习,代理会尝试一系列不同的动作来增加和降低温度。最终,它了解到提高温度会产生良好的回报。但它也知道降低温度会产生不好的回报。

    对于进化算法,它从一堆随机代理开始,这些代理都有一组预编程的动作。然后具有“升高温度”作用的代理存活下来,并转移到下一代。最终,只有提高温度的试剂才能存活并被认为是最佳解决方案。但是,算法不知道如果降低温度会发生什么。

    TL;DR: RL 通常是一个代理,尝试不同的动作,学习和记住所有信息(正面或负面)。 EM 使用许多智能体来猜测许多动作,只有具有最佳动作的智能体才能存活。基本上是解决问题的蛮力方法。

    【讨论】:

      猜你喜欢
      • 2019-12-05
      • 2016-10-24
      • 2018-11-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-02-25
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多