9.8_强化学习的(自动)课程学习

虽然本课程中介绍的大部分强化学习方法在实践中表现良好,但在某些情况下,仅使用这些方法可能会失败。例如,在以下情况下可能会出现这种情况:

在这些情况下,采用(自动)课程学习的方法可能是有益的。

Bipedal Movable creepers
TeachMyAgent

在这种情况下,似乎需要向我们的强化学习智能体提供不同的任务,并将它们组织起来,以使智能体逐步习得技能。这种方法被称为课程学习,通常涉及手动设计的课程(或按照特定顺序组织的任务集合)。在实践中,我们可以控制环境的生成、初始状态,或者使用自我对抗(Self-Play)来控制提供给强化学习智能体的对手水平。

由于设计这样的课程并不总是简单明了的,**自动课程学习(Automatic Curriculum Learning,ACL)**领域提出了一种学习如何创建任务组织的方法,以最大化强化学习智能体的性能。Portelas 等人将 ACL 定义为:

...一种机制的集合,通过学习调整学习情境的选择,自动调整训练数据的分布,以适应强化学习智能体的能力。

以 OpenAI 为例,他们使用了域随机化(对环境进行随机变化)来让机械手解决魔方问题。

Dr
OpenAI - 用机械手解决 Rubik 魔方

最后,你可以通过控制环境变化或甚至绘制地形来调整在 TeachMyAgent 基准测试中训练的智能体的鲁棒性。你可以在这里进行操作。👇

Demo
https://huggingface.co/spaces/flowers-team/Interactive_DeepRL_Demo

补充阅读

欲了解更多信息,建议你查阅以下资源:

领域概述

最近的理论

作者

本节由 Clément Romac 撰写。