
Reinforcement Learning
The way of Reinforcement Learning
野生蘑菇菌
中国科学院沈阳自动化研究所 && 深度学习 && 机器人控制
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
《深度强化学习实践》Actor-Critic
最近想拿出一些时间,把《深度强化学习时间》好好过一遍,这一节总结的是AC和A3C的内容。Actor-Critic方差策略梯度算法目标:通过训练,增加好动作的概率,减小不好动作被采集到的概率。实现:▽J≈E[Q(s,a)▽logπ(a∣s)]{\triangledown }J\approx E[Q(s,a){\triangledown }\log \pi (a|s)]▽J≈E[Q(s,a)▽logπ(a∣s)]缺点:不稳定,收敛速度慢的缺点(因此actor-critic算法致力于解决这两个问.原创 2020-11-29 22:41:46 · 846 阅读 · 0 评论 -
gym中env = gym.wrappers.Monitor(env, directory=“mon“,force=True)问题
问题:raise error.DependencyNotInstalled("""Found neither the ffmpeg nor avconv ex解决:sudo apt-get install libav-tools同时注意不能已有同名文件夹原创 2020-11-09 18:48:10 · 1313 阅读 · 0 评论 -
pybullet入门
pybullet入门一、pybullet是什么二、安装实践其他参考文献一、pybullet是什么pybullet是一个易于使用的python模块,它基于bullet物理sdk进行物理仿真、机器人技术和深度强化学习。使用pybullet,您可以从urdf、sdf和其他文件格式加载铰接体。pybullet提供正向动力学仿真、反向动力学计算、正向和反向运动学以及碰撞检测和光线相交查询。除了物理模拟,pybullet还支持渲染,包括cpu渲染器和opengl可视化,以及对虚拟现实耳机的支持,官方的中文网址网址,原创 2020-10-01 15:54:53 · 8514 阅读 · 1 评论 -
lecture6:Policy OptimizatiobⅡ(策略优化2)
1、ACKTR方法是对TRPO的改进,NIPS,2017想提升TRPO的计算效率通过K-FAC的方法去加速FIM求逆(但是上节课不是说不用直接求逆,只需要转化成无约束优化,然后用共轭梯度法优化就可以吗???)思想来源于ICML2015的论文这篇论文提出:因为SGD是一阶优化,因此不是那么准确,因此提出了Natural Gradient Descend(上一节讲的),包含二阶信息,同时去除曲率影响。但是需要求逆,因此提出K-FAC方法去分解.把FIM分解成一个个block(近似???),因原创 2020-05-19 00:08:02 · 454 阅读 · 0 评论 -
CVPR2020文章---无监督强化学习获得迁移能力
链接:CVPR 2020 | 用无监督强化学习方法来获得迁移能力CVPR2020文章---无监督强化学习获得迁移能力引出问题深度强化学习任务存在的问题我们的目标meta-learning什么是meta-learning主要分为三种类型:基于梯度的方法meta-learning学习分为以下两个阶段问题及解决方案具体工作1、curriculum-base Adversarial training Strategy2、Hierarchical Policy3、Meta-Reinforcement Learnin原创 2020-05-13 22:58:17 · 1262 阅读 · 0 评论 -
强化学习之score function
Score Function Trick及其在机器学习中的应用 1、score function定义,就是说score function是求最大对数似然函数中让对数似然函数梯度等于0的梯度就是说,求解最大似然问题就是求解score function2、再对参数求导,就会得到Fisher Information ,FIM是SF的负导数。3、SF的期望值是0这一个性质可以用在有baseline的策略梯度中。...转载 2020-05-12 18:15:33 · 6084 阅读 · 0 评论 -
Lecture 3:Model-free Prediction and Control
前节回顾在已知模型的时候,我们可以利用贝尔曼方程,和贝尔曼最优方程通过策略迭代和价值迭代进行更新。但是我们都需要知道概率和奖励,不需要与环境交互就可以更新。Model-free Prediction现在我们不知道MDP的模型 ,通过与环境交互,采集轨迹数据两种方法:MC,TD基于蒙特卡洛采样(MC)通过与环境交互,获取实际的回报取平均,可以得到每个状态的价值。但是只能用在可以终止的M...原创 2020-04-15 17:13:25 · 387 阅读 · 0 评论 -
lecture6:Policy OptimizatiobⅡ(策略优化1)
两条主线,一共有6中方法。策略梯度和Q两种这两堂课内容都是基于策略梯度,基于值函数的是选择最大的Q。基于策略的会给出每个动作的概率,然后采样就可以得到。策略的目标函数是,从策略得到的奖励尽可能大。然后为了减小方差,引入baseline,天然的baseline—>V。得到advantage Actor-Critic,这里需要两组参数。...原创 2020-05-12 16:10:43 · 418 阅读 · 0 评论 -
pong和flappy_bird游戏中针对图像预处理的分析+python技巧
一、在atiri游戏中IMAGE_SIZE = (72, 128)def preprocess(frame): """Do preprocessing: resize and binarize. Downsampling to 128x72 size and convert to grayscale frame -- input frame, rgb im...原创 2020-04-23 11:42:28 · 352 阅读 · 0 评论 -
DQN-FlappyBird学习之算法思路+代码分析+python技巧
首先从上一节博文我们知道了关于如何通过shell脚本进行传递参数在main文件中,我们看到在train的环节有以下代码:if args.train:model = BrainDQN(epsilon=args.init_e, mem_size=args.memory_size, cuda=args.cuda)resume = not args.weight == ‘’train_dqn(...原创 2020-04-22 15:47:38 · 2264 阅读 · 0 评论 -
lecture5: Policy OptimizatiobⅠ(策略优化)
一、引言之前的学习方法都是基于价值函数的,而不是通过选择策略输出中取值大的值。之前基于值函数的学到的都是确定性的策略(值函数离散化后用table表示或者用网络近似)我们需要的是策略函数,输出是一个概率,取argmax的动作。对其进行采样,就可以得到具体的行为了(这种情况下不是取最大值)强化学习基于策略的优化的化,可以让优化更容易。、分类:在价值函数中是通过价值函数隐士的表示策略在策...原创 2020-04-21 11:44:51 · 694 阅读 · 0 评论 -
DQN-FlappyBird学习之main.py解析之argparse函数 shell传参
今天根据周博磊老师的视频推荐,download了DNQ的代码,这篇博文主要是学习python在shell脚本中定义and怎么写出优美的代码(传参)话不多说,直接上代码DQN-FlappyBird学习之main.py解析之argparse函数 shell传参importargparseif __name__ == '__main__':importimport sysimport ar...原创 2020-04-18 18:47:33 · 466 阅读 · 0 评论 -
Lecture 4:Value Function Approximation
为什么要价值函数近似?现实生活或者更大的游戏中,状态可能非常多,如何在这种情况下运用之前的知识是一个挑战。之前的方法都可以存放在表格或者向量中,但是当状态多的时候无法保存。因此避免用table去表征,有效的解决方法是用带参数的函数近似的办法去估计。这样的优点可以泛化到没有观察到的状态,更新参数可以用MC,TD的方法近似估计。近似的类别有如下三种方式:函数估计的模型可以有多种,比如...原创 2020-04-18 14:44:06 · 655 阅读 · 0 评论 -
gym-MountainCar-v0离散状态的Q-Learning
周老师课程推荐的程序解析这里写目录标题一、关键点二、代码块一、关键点一、关于eta二、关于离散化离散为40个状态(二维)三、关于_表示某个变量是临时的或无关紧要的四、关于列表解析 solution_policy_scores = [run_episode(env, solution_policy, False) for _ in range(100)]二、代码块...原创 2020-04-17 15:37:55 · 1996 阅读 · 0 评论 -
《强化学习导论》之doubleQ-Learning的理解
我的理解是这个最大化偏差来源于Q学习中的求取的最大化这个步骤可能得到的值不准确。然后这个期望,我觉得是讲动作和值解耦,然后从E的表达式来看,求得期望就是从另一个Q得到的动作的期望,默认第一个Q学到的是最大动作,然后第二个Q只求期望。两个没有干扰...原创 2020-04-15 18:10:42 · 2450 阅读 · 0 评论 -
《强化学习导论》中关于带控制变量的每次决策型方法的理解
从书中前面的介绍中可以看到,G通过加入一个控制变量,来达到降低方法的效果。虽然后面不知道怎么在推导正式公式的时后没有看到1-ρ的身影。。。(这里如果有知道的小伙伴,请留下您的意见)。对于后面的公式来说,我的理解是:第一:Gt+1:h也是个递归,还没展开。第二:这个最终结果就类似树回溯算法,只不过这里用的是ρ。这个地方稍微画以下就可以看出。不知理解是否到位,还请不吝指教!...原创 2020-04-14 17:34:11 · 401 阅读 · 0 评论 -
深度强化学习在机器人领域的研究与应用讲座笔记
deep q-learning,能发现bug,可以把球击到上面,让他可以自己玩;alphago 文章在2016.2017的naturealphago zero 扩展到了其他游戏alphago start 深度强化学习玩星际争霸今天介绍如何利用深度强化学习用到机器人上强化学习解决连续决策问题,目标得到最优策略马尔科夫决策过程概率图,未来只与当下有关回报有递归的形式,价值函...原创 2020-04-12 21:41:28 · 763 阅读 · 0 评论 -
Sarsa与Q-larning对比分析
之前写过一片关于Q-Learning的博文,现在看来有些不是很到位,在看完《强化学习导论》中关于这部分的介绍后,想再补充下。前言一、首先我们知道TD方法和蒙特卡罗方法的区别时,一个需要所有时间步走完才更新,完全取决于样本;一个可以走完一步就更新,融合样本法和动态规划。二、蒙特卡洛方法中,有同策略和以策略的思想。同策略中:在试探性出发的方法中,策略为argmax;在非试探性出发的方法...原创 2020-04-08 22:51:30 · 310 阅读 · 0 评论 -
一文让你看懂如何用MC和TD方法解决“开车回家”问题
一文让你看懂如何用MC和TD方法解决“开车回家”问题引言问题描述求解致谢引言在学习《强化学习导论的》的过程中,都逃不过一个经典的强化学习案例—开车回家问题。下面我们就来分析,如何用MC和TD方法预测回家总时间。问题描述每天下班回家时,您都会尝试预测回家需要多长时间。当您离开办公室时,您会记下时间,星期几,天气以及其他可能相关的内容。说这个星期五你正好在6点钟离开,你估计要回家需要30分钟...原创 2020-04-08 18:37:15 · 796 阅读 · 0 评论 -
Lecture 2:Markov Decision Processes
Part 1一、马尔可夫链满足马尔可夫特征,未来的转移与过去是独立的,只取决于现在。状态转移矩阵给定了马尔可夫链以后,可以对其进行采样,得到一条轨迹。二、马尔可夫奖励过程马尔可夫链+奖励函数奖励函数是一个期望类比一个没有动力的纸船,随波逐流到一定位置后得到相应奖励。值函数,是未来奖励的期望引入gamma的原因避免陷入环;同时可以尽快获得相应奖励,而不是在后面才获得奖励。...原创 2020-04-04 17:15:39 · 364 阅读 · 0 评论 -
Q-Learning原理+python代码解析+改进
。原创 2020-03-20 17:11:46 · 3197 阅读 · 0 评论 -
安装强化学习工具包gym
一、简介Gym是一个用于测试和比较强化学习算法的工具包,它不依赖强化学习算法结构,并且可以使用很多方法对它进行调用,像Tensorflow、Theano强化学习环境-Gym安装到使用入门二、安装由于以上的介绍中给出gym可以兼容tensorflow,同时为了以后测试深度强化学习代码,因此首先复制一个安装好的tensorflow_gpu的环境。环境搭建详见我的博文详解ubuntu18.04+G...原创 2020-03-19 16:56:13 · 1792 阅读 · 0 评论