Skip to main content
QUICK REVIEW

[论文解读] Program Synthesis Guided Reinforcement Learning

Yichen Yang, Jeevana Priya Inala|arXiv (Cornell University)|Feb 22, 2021
Reinforcement Learning in Robotics参考文献 54被引用 4
一句话总结

本文提出了一种程序合成引导的强化学习方法,可自动为长时程控制任务生成引导程序,通过模型预测程序合成来建模未观测世界状态中的不确定性,以处理部分可观察性问题。该方法在2D Minecraft风格合成工艺世界和MuJoCo Ant变体等复杂环境中的表现与拥有完美程序知识的最优解(oracle)相当。

ABSTRACT

A key challenge for reinforcement learning is solving long-horizon planning and control problems. Recent work has proposed leveraging programs to help guide the learning algorithm in these settings. However, these approaches impose a high manual burden on the user since they must provide a guiding program for every new task they seek to achieve. We propose an approach that leverages program synthesis to automatically generate the guiding program. A key challenge is how to handle partially observable environments. We propose model predictive program synthesis, which trains a generative model to predict the unobserved portions of the world, and then synthesizes a program based on samples from this model in a way that is robust to its uncertainty. We evaluate our approach on a set of challenging benchmarks, including a 2D Minecraft-inspired ``craft'' environment where the agent must perform a complex sequence of subtasks to achieve its goal, a box-world environment that requires abstract reasoning, and a variant of the craft environment where the agent is a MuJoCo Ant. Our approach significantly outperforms several baselines, and performs essentially as well as an oracle that is given an effective program.

研究动机与目标

  • 降低在长时程规划任务的强化学习中手动提供引导程序的工作负担。
  • 解决在状态信息不完整的复杂环境中部分可观察性带来的挑战。
  • 开发一种通过建模未观测世界状态中的不确定性来合成鲁棒程序的方法。
  • 在需要复杂子任务编排与抽象推理的环境中评估该方法。
  • 证明该方法的性能可接近于拥有最优引导程序的最优解(oracle)

提出的方法

  • 该方法采用模型预测程序合成,训练一个生成模型以预测环境状态中未观测的部分。
  • 通过从生成模型中采样,合成对预测状态中不确定性具有鲁棒性的程序。
  • 通过将合成的程序作为归纳偏置,将程序合成与强化学习相结合,以引导探索与策略学习。
  • 采用一种考虑状态预测不确定性的事先规划机制,提升在部分可观察设置下的泛化能力。
  • 该框架端到端训练,生成模型与程序合成器联合优化以提升任务性能。
  • 通过模仿学习与强化学习信号的结合,指导程序生成与策略训练。

实验结果

研究问题

  • RQ1程序合成能否在无需人工指定的情况下,自动为强化学习生成引导程序?
  • RQ2在部分可观察环境中,如何有效建模并利用不确定性以支持程序合成?
  • RQ3通过自动合成的程序在多大程度上可达到与最优解(oracle)提供的程序相当的性能?
  • RQ4该方法在观测稀疏性与任务复杂性各不相同的环境中扩展性如何?
  • RQ5对不确定性的感知程序合成对长时程任务成功率有何影响?

主要发现

  • 在2D Minecraft风格合成工艺环境中,该方法显著优于多个强基线模型,实现了更高的样本效率与任务成功率。
  • 在需要抽象推理的盒子世界环境中,该方法表现出稳健性能,表明其能有效处理复杂、多步推理任务。
  • 在工艺环境的MuJoCo Ant变体中,该方法的性能几乎与拥有最优引导程序的最优解(oracle)相当。
  • 模型预测程序合成组件有效降低了状态不确定性的影响,使在部分可观察设置下的策略学习更加可靠。
  • 该方法在多样化环境中表现出强大的泛化能力,表明其在所测试基准之外也具备可扩展性。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。