强化学习 --- 马尔科夫决策过程(MDP) 1.强化学习介绍 ​ 强化学习任务通常使用马尔可夫决策过程(Markov Decision Process,简称MDP)来描述,具体而言:机器处在一个环境中,每个状态为机器对当前环境的感知:机器只能通过动作来影响环境,当机器执行一个动作后,会使得环境按某种概率转移到另一个状态:同时,环境会根据潜在的奖赏函数反馈给机器一个奖赏.综合而言,强化学习主要包含四个要素:状态.动作.转移概率以及奖赏函数. ​ 根据上图,agent(智能体)在进行某个任务时,首…
在强化学习(一)模型基础中,我们讲到了强化学习模型的8个基本要素.但是仅凭这些要素还是无法使用强化学习来帮助我们解决问题的, 在讲到模型训练前,模型的简化也很重要,这一篇主要就是讲如何利用马尔科夫决策过程(Markov Decision Process,以下简称MDP)来简化强化学习的建模. MDP这一篇对应Sutton书的第三章和UCL强化学习课程的第二讲. 1. 强化学习引入MDP的原因 强化学习的8个要素我们在第一节已经讲了.其中的第七个是环境的状态转化模型,它可以表示为一个概率模型,即在…
最近在看强化学习方面的东西,突然想到了这么一个事情,那就是经典的CartPole游戏我们改变一下,或者说升级一下,那么使用强化学习是否能得到不错的效果呢? 原始游戏如图: 一点个人的想法: =================================================…
[入门,来自wiki] 强化学习是机器学习中的一个领域,强调如何基于环境而行动,以取得最大化的预期利益.其灵感来源于心理学中的行为主义理论,即有机体如何在环境给予的奖励或惩罚的刺激下,逐步形成对刺激的预期,产生能获得最大利益的习惯性行为.这个方法具有普适性,因此在其他许多领域都有研究,例如博弈论.控制论.运筹学.信息论.模拟优化方法.多主体系统学习.群体智能.统计学以及遗传算法.在运筹学和控制理论研究的语境下,强化学习被称作“近似动态规划”(approximate dynamic program…
# 强化学习读书笔记 - 02 - 多臂老O虎O机问题 学习笔记: [Reinforcement Learning: An Introduction, Richard S. Sutton and Andrew G. Barto c 2014, 2015, 2016](https://webdocs.cs.ualberta.ca/~sutton/book/) ## 数学符号的含义 * 通用 $a$ - 行动(action). $A_t$ - 第t次的行动(select action).通常指求解的…
本文用于基本入门理解. 强化学习的基本理论 : R, S, A 这些就不说了. 先设想两个场景:  一. 1个 5x5 的 格子图, 里面有一个目标点,  2个死亡点二. 一个迷宫,   一个出发点,  3处 分叉点, 5个死角, 1条活路Q-learning 的概念 其实就是一个算法, 数学的,或者软件程序的算法而已.   对于这种 死的(固定的游戏), 我个人觉得其实就是个穷举算法而已.  Q-learning  步骤:场景一:假设前提:  成功的路  A1, A2, ..... An   …
在前面讲到的DQN系列强化学习算法中,我们主要对价值函数进行了近似表示,基于价值来学习.这种Value Based强化学习方法在很多领域都得到比较好的应用,但是Value Based强化学习方法也有很多局限性,因此在另一些场景下我们需要其他的方法,比如本篇讨论的策略梯度(Policy Gradient),它是Policy Based强化学习方法,基于策略来学习. 本文参考了Sutton的强化学习书第13章和策略梯度的论文. 1. Value Based强化学习方法的不足 DQN系列强化学习算法主…
在强化学习系列的前七篇里,我们主要讨论的都是规模比较小的强化学习问题求解算法.今天开始我们步入深度强化学习.这一篇关注于价值函数的近似表示和Deep Q-Learning算法. Deep Q-Learning这一篇对应Sutton书的第11章部分和UCL强化学习课程的第六讲. 1. 为何需要价值函数的近似表示 在之前讲到了强化学习求解方法,无论是动态规划DP,蒙特卡罗方法MC,还是时序差分TD,使用的状态都是离散的有限个状态集合$\mathbb{S}$.此时问题的规模比较小,比较容易求解.但是假…
在强化学习(五)用时序差分法(TD)求解中,我们讨论了用时序差分来求解强化学习预测问题的方法,但是对控制算法的求解过程没有深入,本文我们就对时序差分的在线控制算法SARSA做详细的讨论. SARSA这一篇对应Sutton书的第六章部分和UCL强化学习课程的第五讲部分. 1. SARSA算法的引入 SARSA算法是一种使用时序差分求解强化学习控制问题的方法,回顾下此时我们的控制问题可以表示为:给定强化学习的5个要素:状态集$S$, 动作集$A$, 即时奖励$R$,衰减因子$\gamma$, 探索率…
在强化学习(二)马尔科夫决策过程(MDP)中,我们讨论了用马尔科夫假设来简化强化学习模型的复杂度,这一篇我们在马尔科夫假设和贝尔曼方程的基础上讨论使用动态规划(Dynamic Programming, DP)来求解强化学习的问题. 动态规划这一篇对应Sutton书的第四章和UCL强化学习课程的第三讲. 1. 动态规划和强化学习问题的联系 对于动态规划,相信大家都很熟悉,很多使用算法的地方都会用到.就算是机器学习相关的算法,使用动态规划的也很多,比如之前讲到的隐马尔科夫模型HMM(二)前向后向算法…