<GPS; Learning Neural Network Policies with Guided Policy Search under Unknown Dynamics

Posted 小贝也沉默

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了<GPS; Learning Neural Network Policies with Guided Policy Search under Unknown Dynamics相关的知识,希望对你有一定的参考价值。

1. Abstract

该论文[2]承接于[1], 在前一篇博客中整理. 提出一个策略搜索方法, 算法中迭代的拟合局部线性模型去优化大型连续的轨迹分布, 得到的轨迹分布被用在引导策略搜索(GPS)算法中, 学习任意参数的策略. 论文拟合时变线性动态模型去加速局部动态拟合过程, 并不学习一个全局模型. 在全局动态模型复杂并且不连续的情况下, 很难被成功学习. 该算法是model-based和model-free的混合方法, 比model-free方法需求更少的样本, 又能很好的解决model-based方法难以成功学习复杂不连续动态模型的问题. 最后, 在仿真平台上, 针对环境部分可观测的复杂机器人操作任务, 算法能够成功学习到一个复杂的神经网络策略, 并取得一个比较理想的结果.

2. Preliminaries

策略搜索一般分为两类: model-based方法, 需要用到系统的动态模型, 而实际系统往往难以得到精准的系统模型. model-free方法, 仅仅依靠现实世界尝试去寻找最优策略, 不依赖于具体系统模型. model-free方法很好的避免了这个难题, 但是策略往往需要精细的设计, 低维度表示, 否则搜索时间太长, 需求样本过多, 搜索空间过大, 最终导致搜索陷入局部最优并失败.

策略搜索方法, 一般包括: 优化策略 πθ(utxt) 的参数 θ , 代价函数 (xt,ut) 的期望 Eπθ[Tt=1(xt,ut)] . 该期望是在策略和动态模型 p(utxt) 的条件下求得. 由策略和动态模型可以确定轨迹 ζ 的分布. 代价函数期望也可表示成: Eπθ[(ζ)] .

论文所述算法, 是学习一个时变线性高斯策略 p(utxt)=N(Ktxt+kt,Ct) . 当初始状态分布是一个比较窄的高斯分布时, 该结构的策略可以使用一些特别有效的优化方法来求解. 而任意参数的策略 πθ 使用GPS算法来优化, 通过匹配一个或多个高斯策略 p 来训练. 实验论证, 这样的方法比直接学习策略的参数θ效果要好.

3. Trajectory Optimization under Unknown Dynamics

在动态模型 N(fxtxt+futut,Ft) 未知的情况下, 我们可以利用前一个的线性高斯控制器 πθ(utxt) 在实际系统中运行, 获取到轨迹, ζi=x1i,u1i,...,xTi,uTi 表示第 i 个rollout, 然后利用样本(xti,uTti),xt+1i来估计该动态模型.

只要我们估计每一时间步局部的线性高斯动态模型, 紧接着我们就可以运行动态规划算法来学习到新的线性高斯控制器. 在这个思路下, 会遇到另一个问题. 我们估计的动态模型是局部的, 然后通过iLQG算法新学习到的控制器确有可能与老的控制器有很大的变化. 之前的一些工作针对这个问题也提出了一些解决方案, 但是都不怎么理想. 该论文提出通过加入新老控制器的KL-divergence约束项来限制每一次动态规划时的变化, 来解决该问题.

3.1 KL-Divergence Constraints

加入KL-Divergence约束项, 修改代价函数期望:

minp(ζ)N(ζ)Ep[(ζ)] s.t. DKL(p(ζ)p^(ζ))ϵ

朗格朗日对偶问题:

L(p(ζ),η)=Ep[(ζ)]+η[DKL(p(ζ))神经结构化学习 1 框架概述 Neural Structured Learning Part 1: Framework overview

Neural Networks: Learning 学习笔记

Learning Convolutional Neural Networks Backpropagation

【NLP论文笔记】Sequence to Sequence Learning with Neural Networks

神经结构化学习 3 使用合成图进行训练 Neural Structured Learning - Part 3: Training with synthesized graphs

神经结构化学习 2 使用自然图进行训练 Neural Structured Learning - Part 2: Training with natural graphs