强化学习第一讲

  • 强化学习基本概念
  • 马尔科夫决策过程
  • 随机策略

一、基本概念简介

原理

  • 强化学习讨论的问题是一个智能体(agent)通过与一个复杂不确定的环境(environment)进行不断地交互来修改自己的动作策略,以极大化它能获得的奖励(学习到完成相应任务的最优策略)。
  • 从广义上讲,强化学习是序贯决策问题。但序贯决策问题包含的内容更丰富,他不仅包含马尔科夫过程的决策,而且包括非马尔科夫过程的决策。
  • Agent在获得自己能力的过程中,是通过不断地试错探索。探索(exploration)和利用(exploitation)的平衡是强化学习里的一个核心。

基本框架

在离散时刻tt,智能体观测到环境状态StS_{t},然后选择一个动作AtA_{t};在t+1t+1时刻,作为动作AtA_{t}的结果,智能体获得一个数值化的奖励Rt+1R_{t+1},同时智能体观测到一个新的状态St+1S_{t+1}
强化学习基本框架

与监督学习相比的特征

  • 强化学习通过试错探索,它需要通过探索环境来获取对环境的理解;而监督学习会告诉正确的标签是什么;
  • 强化学习从环境获得的是具有延迟的奖励信号(reward signal);
  • 在强化学习中数据具有时间关联,不是独立同分布的;而在监督学习中,数据尽量是独立同分布,以便消除数据之间的相关性;
  • Agent的行为会影响它随后得到的数据。

为什么要关注强化学习

强化学习得到的模型可以有超人类的表现,而监督学习的监督数据是由人来标注的,决定了其上限。


二、马尔科夫决策过程(MDP)

1、马尔科夫性

指系统的下一个状态st+1s_{t+1}仅与当前状态sts_{t}有关,与以前的状态无关。

定义:状态sts_{t}是马尔科夫的,当且仅当P[st+1st]=P[st+1s1,...,st]P[s_{t+1}|s_{t}]=P[s_{t+1}|s_{1},...,s_{t}]。(可以看出当前状态sts_{t}是蕴含了所有的历史信息,一旦当前状态已知,历史信息将会被抛弃)

2、马尔科夫过程

定义:马尔科夫过程是一个二元组(S,P)(S,P),且满足:SS是有限状态集合,PP是状态转移概率。(不存在动作和奖励,状态序列称为马尔科夫链)

3、马尔科夫决策过程

定义:马尔科夫决策过程由元组(S,A,P,R,γ)(S,A,P,R,\gamma{})描述,其中:

  • SS为有限的状态集
  • AA为有限的动作集
  • PP为状态转移概率(矩阵)
  • RR为回报函数
  • γ\gamma{}为折扣因子,用于计算累计回报(γ[0,1]\gamma{}\in[0,1])

与马尔科夫过程不同的是,决策过程的状态转移概率包含动作。

强化学习的目标是给定一个马尔科夫决策过程,寻找最佳策略(状态到动作的映射),策略用π\pi表示,有:

π(as)=p[At=aSt=s]\pi{}(a\mid{} s)=p\left[A_{t}=a|S_{t}=s\right]

上式含义:策略π\pi在每个状态ss指定一个动作概率。

4、一些概念

(1)、状态-值函数

当agent采取策略π\pi时,累计回报服从一个分布,在状态ss处的期望值定义为状态-值函数

vπ(s)=Eπ[k=0γkRt+k+1St=s]v_{\pi{}}(s)=E_{\pi{}}\left[\sum_{k=0}^{\infty} \gamma{}^kR_{t+k+1}|S_{t}=s\right]

(2)、状态-行为值函数

类似的有:

qπ(s,a)=Eπ[k=0γkRt+k+1St=s,At=a]q_{\pi{}}(s,a)=E_{\pi{}}\left[\sum_{k=0}^{\infty{}} \gamma{}^kR_{t+k+1}|S_{t}=s,A_{t}=a\right]

(3)、贝尔曼方程

待补充\ldots

三、随机策略

1、贪婪策略

π(as)={1if a=arg maxq(as)0otherwise\pi_{*}\left(a\mid{} s\right)=\begin{cases} 1 & if\ a=\argmax{} q_{*}\left(a\mid{} s\right) \\ 0 & otherwise \end{cases}

贪婪策略是一个确定性策略,即只有在动作值函数q(as)q_{*}(a|s)最大的动作处取概率1,其它取0。

2、εgreedy\varepsilon-greedy策略

π(as)={1ε+εA(s)if a=arg maxAQ(as)εA(s)if aarg maxAQ(as)\pi_{*}\left(a\mid{} s\right)= \begin{cases} 1-\varepsilon{}+\frac{\varepsilon{}}{\mid{} A(s)\mid{}} & if\ a=\underset{A}{\argmax{}} Q\left(a\mid s\right) \\ \frac{\varepsilon{}}{\mid{} A(s)\mid{}} & if\ a\neq{} \underset{A}{\argmax{}} Q\left(a\mid{} s\right) \end{cases}

εgreedy\varepsilon-greedy策略是强化学习最基本最常用策略。其平衡了利用与探索,选取动作值函数最大的部分为利用,其它非最优动作仍有概率探索部分。

3、高斯策略

一般高斯策略写成πθ=μθ+ε,εN(0,σ2)\pi_{\theta}=\mu_{\theta}+\varepsilon,\varepsilon\sim N(0,\sigma^2)。其中μθ\mu_{\theta}为确定性部分,ε\varepsilon为零均值的高斯随机噪声。高斯策略在连续系统的强化学习中应用广泛。

4、玻尔兹曼分布

对于动作空间是离散的或者动作空间并不大的情况,可采用玻尔兹曼分布作为随机策略,即:

π(as,θ)=exp(Q(s,a,θ))bexp(h(s,b,θ))\pi_{*}(a\mid{} s,\theta{})=\frac{\exp{} (Q(s,a,\theta{}))}{\sum_{b}\exp{}(h(s,b,\theta{}))}

其中Q(s,a,θ)Q(s,a,\theta{})为动作值函数。该策略的含义是:动作值函数越大的动作被选中的概率越大。


总结

  • 有关基于gym的MDP实例部分和贝尔曼方程,emmm,有机会在看(水了)
  • 对于动作空间和状态空间等,老师没有把ppt放出来,也水了
  • 尚且有点云里雾里,不清楚怎样代码实现

强化学习第一讲
https://zongjy.github.io/2022/02/28/7373f5387e4c/
作者
zongjy
发布于
2022年2月28日
许可协议