Q-Learning算法学习
来源:互联网 发布:怎么用邮箱注册淘宝 编辑:程序博客网 时间:2024/05/18 07:26
Q-Learning算法学习
简介
Q-Learning算法下,目标是达到目标状态(Goal State)并获取最高收益,一旦到达目标状态,最终收益保持不变。因此,目标状态又称之为吸收态。
Q-Learning算法下的agent,不知道整体的环境,知道当前状态下可以选择哪些动作。
通常,我们需要构建一个即时奖励矩阵R,用于表示从状态s到下一个状态s’的动作奖励值。
由即时奖励矩阵R计算得出指导agent行动的Q矩阵。
Q矩阵是agent的大脑。
初始时,Q矩阵元素全部初始化为0,表示当前的agent大脑一片空白,什么也不知道。
而计算
其中,
通过这个推导公式计算出Q矩阵的元素,注意右边的max内的Q值通过查找当前的Q矩阵得到,左边是计算。而不是我们第一眼看过去理解的那样:需要用动态规划来求解。
Q-Learning算法核心
以一个episode为一个训练周期:从初始状态到终结态。
每学完一个episode后,再进入下一个episode学习。
因此,可以得到Q-Learning外层循环是一个episode,内层循环是episode的每一个step。
算法核心:
- 设置好
γ 值以及矩阵R - 初始化矩阵Q全为0
- For each episode:
- Select a random initial state
- Do while the goal state hasn’t been reached.
- Select one among all possible actions for current state
- Using this possible action, consider going to the next state
- Get maximum Q value for this next state based on all possible actions
- Compute:
Q(s,a)=R(s,a)+γmax[Q(s′,all actions)] - Set the next state as the current state
- End Do
- End For
每个episode是一个training session,且每一轮训练的意义是:加强大脑,表现形式是agent的Q矩阵的元素更新。
当Q习得后,可以用Q矩阵来指引agent的行动。
问题是:如何使用Q矩阵?
核心是:从Q矩阵中寻找当前状态得到的最大的总收益的行动。
具体算法如下:
- Set current state = initial state
- From current state, find the action with the highest Q value
- Set current state = next state
- Repeat 2,3, until current state = goal state
所以问题的重点是在求得Q矩阵,而利用Q矩阵是比较简单的。
最终输出的是从初始状态到目标状态的状态序列,表示从当前习得的Q矩阵下做出的最优选择。
- Q-Learning算法学习
- Deep Q-Learning深度增强学习算法
- Q-learning算法
- Q-learning算法实现
- 增强学习 | Q-Learning
- Q-learning学习笔记
- 增强学习Q-learning 算法的简明教程
- 机器学习之Grid World的Q-Learning算法解析
- SARSA和Q-learning算法
- Q-learning 算法工作原理
- Q-learning 算法工作原理
- 增强学习(Q-learning)
- 深度学习中sarsa算法和Q-learning算法的区别
- Q-Learning算法分析与代码实现
- 一个 Q-learning 算法的简明教程
- 简单的描述Q-learning算法
- 一个 Q-learning 算法的简明教程
- 增强学习入门之Q-Learning
- MySql 入门(1)
- 关于Python迭代器的问题
- echarts.js 画报表、数据可视化(第一部分)
- N线城市码农生存指南
- Java Enum 枚举类的使用一例
- Q-Learning算法学习
- RabbitMQ深入学习指导
- JSP基本语法
- 百度地图Marker的定位和方向
- Linux学习笔记:Linux基础命令之二(Linux命令帮助的获取)
- mysql审计开启--两种方法
- HDOJ1058 Humble Numbers
- Linux中变量#, @, 1, *,$$,$?的含义
- 原生Js实现删除li标签一行内容