我是靠谱客的博主 高大篮球,最近开发中收集的这篇文章主要介绍强化学习基础,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

一、马尔可夫决策过程

从强化学习的基本原理可以看出他与监督学习与非监督学习的一些差别,在监督、非监督学习中数据是静态的,不需要与环境进行交互,强化学习的环境是动态的,不断交互的过程,所需要的数据也是通过与环境不断交互得到的。所以,与监督学习相比,强化学习涉及的环境更多,比如动作,环境,状态转移概率和回报函数等。

强化学习的经典框架就是马尔可夫决策过程简称MDP,下面介绍几个马尔可夫过程需要用到的经典性质:

1、马尔可夫性(马氏性)

马氏性是指系统的下一状态 St+1 S t + 1 仅与当前状态 St S t 有关,而与以前的状态无关。
在一般的应用场合,我们都可以假设系统满足这个性质,举个例子,比如我们考虑一个atari上的游戏的时候,当游戏到达某一状态(画面)我们就可以完全不再考虑之前游戏的信息,比如当游戏到达第四关的时候,游戏前三关的信息就没必要再考虑。我们假设模型具有马氏性可以大大压缩信息量,使强化学习能够在算力有限的情况下得到较为准确的结果。

2、马尔可夫过程(马氏过程)

马尔可夫过程是一个二元组 SP) ( S , P ) ,且满足: S S 是有限状态集合,P是状态转移概率。状态转移矩阵为: [Pij] [ P i j ]
其中 Pij P i j 表示从状态i转移到状态j的概率。给定初始状态就可以确定一个完整的马氏过程。

3、马尔可夫决策过程(马氏决策过程)

一个完整的马尔可夫决策过程可以由一个五元组描述 (S,A,P,R,γ) ( S , A , P , R , γ )
其中:
S为有限状态集合
A为动作集合
P为状态转移概率
R为回报函数
γ γ 为折扣因子,用来计算累积回报
马尔可夫决策过程的转移概率是如下定义的

Pass=P[St+1=s|St,At=a](25) (25) P s s ′ a = P [ S t + 1 = s ′ | S t , A t = a ]

其表示的含义是在状态 s s 下执行动作a得到状态s的概率,这个概率由环境所决定。
强化学习的目标很明确,给定一个马尔可夫决策过程,寻找最优策略。所谓策略是一个状态到动作的映射,策略常用符号 π π 表示,它是指给定状态 s s 时,动作集上的一个分布,即
(26)π(a|s)=p[At=a|St]

所以,即使给定策略 π π ,且当前状态S已知,接下来采取什么动作也不是固定的,而是一个满足上述分布的随机变量。

4、累计回报

当给定一个策略 π π 时,我们就可以计算累计回报了,首先定义累计回报:

Gt=Rt+1+γRt+2+...=k=0γkRt+k+1(27) (27) G t = R t + 1 + γ R t + 2 + . . . = ∑ k = 0 ∞ γ k R t + k + 1

注意到每次得到的回报是一个随机变量,所以累计回报也是一个随机变量。既然是一个随机变量,为了评价一个策略的好坏,一个很自然的想法就是用期望来作为评价的指标。
常用的两种值函数如下:

(1)状态值函数

当智能体采取策略 π π 时,累计回报服从一个分布,累计回报在状态s处的期望值定义为状态-值函数:

Vπ(s)=Eπ[k=0γkRt+k+1|St=s](28) (28) V π ( s ) = E π [ ∑ k = 0 ∞ γ k R t + k + 1 | S t = s ]

与之对应的,状态-动作值函数:

(2)状态-动作值函数

状态-行为值函数为:

qπ(s,a)=Eπ[k=0γkRt+k+1|St=s,At=a](29) (29) q π ( s , a ) = E π [ ∑ k = 0 ∞ γ k R t + k + 1 | S t = s , A t = a ]

可以把状态-动作值函数看作是在 s s 状态,必须采取行动a之后得到的总的回报的期望,这两者唯一的区别就是状态-动作值函数是在 S S 状态必须采取a行动,之后再贯彻 π π 策略

状态值函数与状态-动作值函数的贝尔曼方程

v(s)=E[Rt+1+γv(St+1)|St=s](30) (30) v ( s ) = E [ R t + 1 + γ v ( S t + 1 ) | S t = s ]

同样可以得到状态-行为值函数的贝尔曼方程
qπ(s,a)=Eπ[Rt+1+γq(St+1,At+1)|St=s,At=a](31) (31) q π ( s , a ) = E π [ R t + 1 + γ q ( S t + 1 , A t + 1 ) | S t = s , A t = a ]

最优状态值函数

V(s) V ∗ ( s ) 为所有策略中值最大的值函数,即 V(s)=maxπvπ(s) V ∗ ( s ) = m a x π v π ( s ) ,最优状态-行为值函数 q(s,a) q ∗ ( s , a ) 为在所有策略中最大的状态-行为值函数,即

q(s,a)=maxπqπ(s,a)(32) (32) q ∗ ( s , a ) = max π q π ( s , a )

于是我们很容易得到最优值函数和最优状态-行为值函数的贝尔曼方程
v(s)=maxaRas+γsSPassv(s)q(s,a)=Ras+γsSPassq(s,a)(33) (33) v ∗ ( s ) = max a R s a + γ ∑ s ′ ∈ S P s s ′ a v ∗ ( s ′ ) q ∗ ( s , a ) = R s a + γ ∑ s ′ ∈ S P s s ′ a ′ q ∗ ( s ′ , a ′ )

最后

以上就是高大篮球为你收集整理的强化学习基础的全部内容,希望文章能够帮你解决强化学习基础所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(45)

评论列表共有 0 条评论

立即
投稿
返回
顶部