当前位置: 首页 > news >正文

强化学习的数学原理(一)基本概念

由于全文太长,只好分开发了。(已完结!在专栏查看本系列其他文章)

个人博客可以直接看全文~

本系列为在学习赵世钰老师的“强化学习的数学原理” 课程后所作笔记。

课堂视频链接https://www.bilibili.com/video/BV1sd4y167NS/

第一章基本概念

  • grid-world example : 一个机器人走网格的经典例子,机器人尽量避免进入forbidden grid、尽量减少拐弯、不要走出边界、…

  • state: 状态,表示为一个节点,在grid-world中可以表示为一个格子(也可以添加其他信息到状态,如速度等)

  • state space:状态空间,所有状态的集合。

  • action:行动,能够使得状态变化的动作。(如向上/下/左/右移动,等)

  • action space:行动的集合,通常依赖于当前的状态。

  • state transition:状态转移,从一个状态移动到另一个状态。

    s 5 → a 1 s 6 s_5 \overset{a_1}{\rightarrow} s_6 s5a1s6 表示从状态 s 5 s_5 s5 经过动作 a 1 a_1 a1 到达状态 a 6 a_6 a6

  • state transition probability: 状态转移的条件概率。(例如: p ( s 2 ∣ s 1 , a 2 ) = 0.8 p(s_2|s_1,a_2) = 0.8 p(s2s1,a2)=0.8 代表在状态 s 1 s_1 s1,行动 a 2 a_2 a2 下, s 2 s_2 s2的概率是0.8)

  • Policy: 策略,用箭头来表示。表示在某个状态更倾向于走哪个action

    π ( a 1 ∣ s 1 ) = 0 , π ( a 2 ∣ s 1 ) = 1 , π ( a 3 ∣ s 1 ) = 0 , π ( a 4 ∣ s 1 ) = 0 \pi(a_1|s_1)=0 ,\pi(a_2|s_1)=1,\pi(a_3|s_1)=0 ,\pi(a_4|s_1)=0 π(a1s1)=0,π(a2s1)=1,π(a3s1)=0,π(a4s1)=0 表示在状态 s 1 s_1 s1 有1的概率进行行动 a 2 a_2 a2 。显然 ∑ i = 1 k π ( a i ∣ s 1 ) = 1 \sum_{i=1}^k \pi(a_i|s_1) = 1 i=1kπ(ais1)=1

  • reward: 他是一个实数,代表我们的奖励,如果 r e w a r d > 0 reward>0 reward>0,则代表希望它发生, r e w a r d < 0 reward<0 reward<0则表示不希望它发生。

    例如我们可以将“尝试逃出边界的时候,我们设 r b o u n d = − 1 r_{bound} = -1 rbound=1 , 将到达目的地设为 r t a r g e t = 1 r_{target} = 1 rtarget=1

    因此我们可以通过设计reward来实现到达目的地。

    p ( r = − 1 ∣ s 1 , a 1 ) = 1 , p ( r ≠ − 1 ∣ s 1 , a 1 ) = 0 p(r=-1|s_1,a_1) = 1, p(r \not= -1 |s_1,a_1)=0 p(r=1∣s1,a1)=1,p(r=1∣s1,a1)=0 表示在状态 s 1 s_1 s1 进行 a 1 a_1 a1 得到-1的reward的概率是1,得到不是-1的reward的概率是0

  • trajectory:一个由state、action、reward连接成的链。

  • return:一个trajectory中所有的reward的总和。通过比较return来评估策略是好是坏

  • Discounted rate : γ ∈ [ 0 , 1 ) \gamma \in [0,1) γ[0,1) d i s c o u n t e d r e t u r n = r 0 + γ r 1 + γ 2 r 2 + . . . discounted return = r_0 + \gamma r_1 + \gamma ^2 r_2 + ... discountedreturn=r0+γr1+γ2r2+... ,

    γ \gamma γ 通常表示是否更看重未来, γ \gamma γ 越小,则越看重现在。

  • Episode: 能够到达terminal states(停止状态) 的trajectory。一个Episode也叫一个Episode task与之对应的是continuing task(指永无止境的任务)。

Markov decision process(MDP)

  • 集合:

    • State:状态集合

    • Action:对于每个状态s的行动集合 A ( s ) A(s) A(s)

    • Reward:奖励集合 R ( s , a ) R(s,a) R(s,a)

  • 概率要素(probability distribution):

    • State transition probability: p ( s ′ ∣ s , a ) p(s'|s,a) p(ss,a) 在状态s下,进行行动a,到达另一个状态 s ′ s' s的概率。

    • Reward probability: p ( r ∣ s , a ) p(r|s,a) p(rs,a)在状态s下,进行行动a,得到r的奖励的概率。

    • Policy: π ( a ∣ s ) \pi(a|s) π(as) 在状态s下,进行行动a的概率。

MDP的独特性质(markov property):与历史无关

p ( s t + 1 ∣ a t + 1 s t . . . a 1 s 0 ) = p ( s t + 1 ∣ a t + 1 , s t ) p(s_{t+1} |a_{t+1}s_t...a_1s_0) = p(s_{t+1}|a_{t+1},s_t) p(st+1at+1st...a1s0)=p(st+1at+1,st)

p ( r t + 1 ∣ a t + 1 s t . . . a 1 s 0 ) = p ( r t + 1 ∣ a t + 1 , s t ) p(r_{t+1} |a_{t+1}s_t...a_1s_0) = p(r_{t+1}|a_{t+1},s_t) p(rt+1at+1st...a1s0)=p(rt+1at+1,st)

相关文章:

  • Redis --- 基本数据类型
  • Spark-SQL(三)
  • 方案解读:虚拟电厂总体规划建设方案【附全文阅读】
  • 从零开始学习PX4源码20(遥控器模式切换如何执行)
  • 进程控制(上)【Linux操作系统】
  • 【leetcode100】整数拆分
  • 带宽”(bandwidth)有以下两种不同的意义
  • 41.[前端开发-JavaScript高级]Day06-原型关系图-ES6类的使用-ES6转ES5
  • 【C++游戏引擎开发】第16篇:ImGui指南
  • MTK-Android12 13 屏蔽掉Viewing full screen
  • 【数据结构_9】栈和队列
  • spring:注解@PostConstruct、@PreDestroy
  • 同步 vs 异步 最直白的区别
  • Github webhook 是什么以及它的用途
  • 强化学习的数学原理(四)Value iteration Policy iteration
  • LLamaIndex中经常使用的四个模块
  • 2024年第九届团队程序设计天梯赛c++题解L1-L3-1(附PTA网址)
  • 6 CMD 与 PowerShell 指令大全、C 程序终端运行、字符编码切换指南
  • 【AI工具】用大模型生成脑图初试
  • C++学习记录:
  • 网页制作与网站建设江西/今日新闻热点10条
  • 深圳家装互联网网站/汕头seo托管
  • qplayer wordpress/文军seo
  • 网站描本链接怎么做/大连网站搜索排名
  • 电子业网站建设/杭州排名推广
  • 软件工程大学排名/宁波seo公司排名