Angry Csr

  • Home
  • About me
  • Blog
  • GuildWar2
Welcome to my HomePage!!
  1. 首页
  2. 学习记录
  3. 正文

强化学习实践(2)Q-learning小例子,matlab和python双端实现

2022年4月11日 2820点热度 0人点赞 0条评论

python版本代码来源:https://github.com/MorvanZhou/Reinforcement-learning-with-tensorflow

我自己给自己注释的版本:

python版本:Q_learning2.zip

matlab版本:qlearning.zip

总结:

         两者相似点都在于先编写环境。

         python编程模板要记住,三个文件分别编写环境、table和主循环。思路是编写环境,到编写agent(table),再写算法的主循环 。我只能做到看懂每块的含义,细化到具体语句大部分能看懂含义,但是如果自己从0到1的把整个算法转化成代码语言只能单纯地写出Qlearning的循环更新部分,面向对象编程的思维还没有。

         matlab更加模块化,全程面向对象。先加载环境,然后利用rlTable的属性建立Qtable,利用Q table和rlQValueRepresentation的属性建立Q value function;再利用Q value function和rlQAgentOptions的属性定义参数一起创建Q  agent;最后用trainOpts = rlTrainingOptions进行训练。

         差别:

         一是终止训练的条件,算法中是s'趋近于s,python是这么编写的,而matlab把终止条件放进rlTrainingOptions的属性中,定义了不同的条件,要自己去设置,而怎么设置我还没完全搞清楚,目前猜测是手动调;

          二是python这份源码中有 check_state,即检查是否有状态是Table中没有的,而matlab则没体现出来。

标签: 暂无
最后更新:2022年4月12日

愤怒的叉烧肉丶

这个人很懒,什么都没留下

点赞
< 上一篇
下一篇 >

文章评论

取消回复
最近评论
分类
  • Blog / 36篇
  • GuildWar2 / 1篇
  • 卡尔曼滤波与组合导航原理 / 13篇
  • 学习记录 / 72篇
  • 工程流体力学基础 / 3篇
  • 强化学习 / 23篇
  • 机器学习 / 10篇
  • 深度学习与神经网络 / 7篇
  • 鲁棒控制 / 14篇
最新 热点 随机
最新 热点 随机
文章近况 跑步记录:26年3、4月份总结 跑步记录:下半年总结 难绷(5) 难绷(4) 难绷(3)
强化学习笔记(补3)DQN,A3C,DPG,DDPG 强化学习实践(3)sarsa及sarsa(lambda) 卡尔曼滤波与组合导航原理(5)遗忘滤波 matlab记录(4)一些小操作 跑步记录:12月总结(01.14)暨年终总结 跑步记录:1、2、3月总结
Background
https://www.angryovocsr.cn/wp-content/uploads/2021/11/waiting-for-love.mp3

COPYRIGHT © 2021 angryovocsr.cn. ALL RIGHTS RESERVED.

THEME KRATOS MADE BY VTROIS

辽ICP备2021011214号