Reinforcement Learning 一:历史发展背景与介绍
2017-12-10 01:36
691 查看
大家好,今天跟大家分享一下强化学习。
1977年Werbos提出只适应动态规划算法。
1988年sutton提出时间差分算法。
1992年Watkins 提出Q-learning 算法。
1994年rummery 提出Saras算法。
1996年Bersekas提出解决随机过程中优化控制的神经动态规划方法。
2006年Kocsis提出了置信上限树算法。
2009年kewis提出反馈控制只适应动态规划算法。
2014年silver提出确定性策略梯度(Policy Gradents)算法。
2015年Google-deepmind 提出Deep-Q-Network算法。
Unsupervised learning:非监督学习无标签,算法能够通过数据之间的关联性将数据分类进行处理。
Reinforcement learning:强化学习的目标是使得回报最大化。强化学习和非监督学习的关键部分就是回报的选择。强化学习是学习状态和行为之间的映射关系,以使得数值回报达到最大化。换句话说,在未知采取何种行为的情况下,学习者必须通过不断尝试才能发现采取哪种行为能够产生最大回报。
随机博弈包括两个框架:
1.马尔科夫决策过程(MDP):MDP包括一个智能体和多个状态。
2.矩阵博弈:矩阵博弈包括多个智能体和一个状态。
随机博弈可以看成是多个智能体和多个状态的问题。
![](https://img-blog.csdn.net/20171210001015892?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcXFfMjA0OTkwNjM=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
Model-free:不尝试去理解环境, 环境给什么就是什么,一步一步等待真实世界的反馈, 再根据反馈采取下一步行动。
Model-based:先理解真实世界是怎样的, 并建立一个模型来模拟现实世界的反馈,通过想象来预判断接下来将要发生的所有情况,然后选择这些想象情况中最好的那种,并依据这种情况来采取下一步的策略。它比 Model-free 多出了一个虚拟环境,还有想象力。
Policy based:通过感官分析所处的环境, 直接输出下一步要采取的各种动作的概率, 然后根据概率采取行动。
Value based:输出的是所有动作的价值, 根据最高价值来选动作,这类方法不能选取连续的动作。
Monte-carlo update:游戏开始后, 要等待游戏结束, 然后再总结这一回合中的所有转折点, 再更新行为准则。
Temporal-difference update:在游戏进行中每一步都在更新, 不用等待游戏的结束, 这样就能边玩边学习了。
On-policy:必须本人在场, 并且一定是本人边玩边学习。
Off-policy:可以选择自己玩, 也可以选择看着别人玩, 通过看别人玩来学习别人的行为准则。
inputs:x(n) outputs:y(n)
y(n)=ax(n)+b;y(n)=ϕTθ
ϕT=[x(n),1];θ=[a,b]
成本函数为:
V=∑n=1N(y(n)−ϕT(n)θ)2
求得LS解为:
θ=[∑n=1Nϕ(n)ϕT(n)]−1[∑n=1Nϕ(n)y(n)]
预测误差为:
ε(n)=(y(n)−ϕT(n)θ)
2.RLS算法:
V=∑n=1Nλ(N−t)(y(n)−ϕT(n)θ)2
等式中λ⩽1,λ为遗忘因子。
求得RLS的解为:
θ=[∑n=1Nλ(N−t)ϕ(n)ϕT(n)]−1[∑n=1Nλ(N−t)ϕ(n)y(n)]
3.LMS算法:
LMS相对与LS来说,其解析解为:
θ=R−1P
R=[1N∑n=1Nϕ(n)ϕT(n)];P=[1N∑n=1Nϕ(n)y(n)]
LMS的迭代解为:
θ(n+1)=θ(n)+αϕ(n)(y(n)−ϕT(n)θ(n))
1.强化学习的历史发展
1956年Bellman提出了动态规划方法。1977年Werbos提出只适应动态规划算法。
1988年sutton提出时间差分算法。
1992年Watkins 提出Q-learning 算法。
1994年rummery 提出Saras算法。
1996年Bersekas提出解决随机过程中优化控制的神经动态规划方法。
2006年Kocsis提出了置信上限树算法。
2009年kewis提出反馈控制只适应动态规划算法。
2014年silver提出确定性策略梯度(Policy Gradents)算法。
2015年Google-deepmind 提出Deep-Q-Network算法。
2.强化学习的介绍
Supervised learning:监督学习有标签,能告诉你训练结果的对与错。可以看成根据监督者的先验知识提供的先例进行监督学习。Unsupervised learning:非监督学习无标签,算法能够通过数据之间的关联性将数据分类进行处理。
Reinforcement learning:强化学习的目标是使得回报最大化。强化学习和非监督学习的关键部分就是回报的选择。强化学习是学习状态和行为之间的映射关系,以使得数值回报达到最大化。换句话说,在未知采取何种行为的情况下,学习者必须通过不断尝试才能发现采取哪种行为能够产生最大回报。
随机博弈包括两个框架:
1.马尔科夫决策过程(MDP):MDP包括一个智能体和多个状态。
2.矩阵博弈:矩阵博弈包括多个智能体和一个状态。
随机博弈可以看成是多个智能体和多个状态的问题。
3.常用强化学习算法介绍
强化学习从提出到现在,也差不多半个世纪左右。到目前为止,常见的强化学习的算法有下面几种,以及不同的分类。Model-free:不尝试去理解环境, 环境给什么就是什么,一步一步等待真实世界的反馈, 再根据反馈采取下一步行动。
Model-based:先理解真实世界是怎样的, 并建立一个模型来模拟现实世界的反馈,通过想象来预判断接下来将要发生的所有情况,然后选择这些想象情况中最好的那种,并依据这种情况来采取下一步的策略。它比 Model-free 多出了一个虚拟环境,还有想象力。
Policy based:通过感官分析所处的环境, 直接输出下一步要采取的各种动作的概率, 然后根据概率采取行动。
Value based:输出的是所有动作的价值, 根据最高价值来选动作,这类方法不能选取连续的动作。
Monte-carlo update:游戏开始后, 要等待游戏结束, 然后再总结这一回合中的所有转折点, 再更新行为准则。
Temporal-difference update:在游戏进行中每一步都在更新, 不用等待游戏的结束, 这样就能边玩边学习了。
On-policy:必须本人在场, 并且一定是本人边玩边学习。
Off-policy:可以选择自己玩, 也可以选择看着别人玩, 通过看别人玩来学习别人的行为准则。
4.基本的数学知识和理论
1.LS算法inputs:x(n) outputs:y(n)
y(n)=ax(n)+b;y(n)=ϕTθ
ϕT=[x(n),1];θ=[a,b]
成本函数为:
V=∑n=1N(y(n)−ϕT(n)θ)2
求得LS解为:
θ=[∑n=1Nϕ(n)ϕT(n)]−1[∑n=1Nϕ(n)y(n)]
预测误差为:
ε(n)=(y(n)−ϕT(n)θ)
2.RLS算法:
V=∑n=1Nλ(N−t)(y(n)−ϕT(n)θ)2
等式中λ⩽1,λ为遗忘因子。
求得RLS的解为:
θ=[∑n=1Nλ(N−t)ϕ(n)ϕT(n)]−1[∑n=1Nλ(N−t)ϕ(n)y(n)]
3.LMS算法:
LMS相对与LS来说,其解析解为:
θ=R−1P
R=[1N∑n=1Nϕ(n)ϕT(n)];P=[1N∑n=1Nϕ(n)y(n)]
LMS的迭代解为:
θ(n+1)=θ(n)+αϕ(n)(y(n)−ϕT(n)θ(n))
相关文章推荐
- 一张图来介绍人脸识别历史与发展方向
- C/C++发展历史简单介绍
- 从HTML1到HTML5,HTML发展历史介绍【转载】
- .NET框架与COM:背景和历史,关系的发展
- 从HTML1到HTML5,HTML发展历史介绍【转载】
- 景德镇简要介绍以及瓷都形成的历史背景
- CentOS以及Oracle数据库发展历史及各版本新功能介绍, 便于构造环境时有个对应关系
- C/C++发展历史简单介绍
- 翻译介绍一点CAD发展的历史
- C/C++发展历史简单介绍
- 微软MSN发展历史详细介绍(1995-2001)
- 科普文章-人脸识别发展历史介绍
- 1、 Linux的介绍:Linux的发展历史、Linux和Windows的对比和优势、Linux的常见版本
- 最流行的开源飞控项目ArduPilot Mega(APM)介绍及发展历史
- Atheros开源驱动发展历史的介绍
- 人脸识别发展历史介绍 by 山世光
- 最流行的开源飞控项目ArduPilot Mega(APM)介绍及发展历史
- 话题模型topic model的发展历史及典型方法介绍
- 计算机视觉简介:历史、现状和发展趋势
- Dubbo系列(1)_背景介绍和基本情况