本篇承接上一篇继续介绍轨迹优化问题中的动力学模型问题

在前面的介绍中,我们做轨迹优化的时候,动力学模型,状态观测等都是确定性的

然而很多情况并不是确定的,我们处理的方法有两种:

一种是传统的方法:对不确定的动力学做系统辨识或者自适应控制,对有误差的状态观测做状态估计,或者扰动观测器等

另一种就是建立概率模型,如马尔科夫决策过程(MDP),MDP建立起来的体系被称为强化学习(Reinforcement Learning)

以下内容参考某位朋友前几年硕士毕业答辩材料(PS:何曾几时,博主也是深度强化学习的那个屠龙少年)


1. MDP

机器人的任务可以形成化为一个MDP,无论是机械臂,还是腿足式机器人,还是轮式机器人

机器人作为一个智能体,通过反复试验与环境进行交互,进而学习最优行为

在这里需要了解:交互轨迹,值函数,策略,累积回报(奖励函数的设置是关键),强化学习的目标;以上概念其实就类似于一个确定性系统的轨迹优化问题

2. 传统强化学习算法

3. 广义机器人动力学

上面的算法都是自己在那盲猜结果,如果没有模型,我们可以发现求解过程可能十分繁琐,所以大型任务还是得基于模型

但是基于任务建模,通用那套算法又可能不适合,所以后面建立的都是基于数据流的广义动力学

在强化学习里面,我们可以重新定义机器人动力学

狭义动力学:传统机器人依赖于基于人类对物理的洞察而手工生成的模型

广义动力学:自主机器人能够从可访问的数据流中提取信息,自动生成模型

有点玄学,换言之,现在我们做轨迹优化问题不一定要建立Newton-Euler方程等,概率模型,甚至直接用神经网络就可以搞出一个模型

那么建立了动力学有什么好处?

(1)有了模型,问题就退化为动态规划问题呢

(2)有了模型,我们可以进一步再训练网络

(3)也可以进行Learn from demonstration

4. 强化学习的问题

然鹅强化学习也有弱点:那就是维度灾难的问题,此外就是强化学习没办法解决感知问题

深度学习(Deep Learning)的出现正好解决了强化深度学习存在的问题,于是发展成了深度强化学习(Deep Reinforcement Learning)

深度强化学习:结合深度学习的感知能力和强化学习的决策能力,实现了从原始输入到输出的端对端直接控制

而深度强化学习结合强化学习发展了三类算法:

(1)基于状态空间与动作空间(早期都是无模型算法,后期业发展了结合模型的算法):以DQN为代表的离散空间基于值函数的DRL,以DDPG、A3C、TRPO等为代表的连续空间基于策略的DRL

(2)基于模型:PILCO、DDP、iLQR等

(3)基于奖励函数学习:以GAIL为代表的逆向强化学习


写在后面:

受一些研究方向的变化,已然有好几年没关注DRL的最新成果了,随着DRL的发展,无疑是给传统轨迹优化算法一次巨大的冲击,希望现在还在学校学习的朋友能够多关注前沿知识,并能够实践和应用!