深度强化学习与控制(一):强化学习与马尔可夫过程

一、强化学习定义

通过从交互中学习来实现目标的计算方法

在这里插入图片描述

交互过程

在每一步 t t t,智能体:

  • 获得观察 O t O_t Ot
  • 获得奖励 R t R_t Rt
  • 执行行动 A t A_t At

环境:

  • 接收行动 A t A_t At
  • 给出观察 O t + 1 O_{t+1} Ot+1
  • 给出奖励 R t + 1 R_{t+1} Rt+1

强化学习系统要素

history:观察、行动和奖励的序列
H t = O 1 , R 1 , A 1 , ⋯   , O t − 1 , R t − 1 , A t − 1 , O t , R t H_t=O_1,R_1,A_1,\cdots,O_{t-1},R_{t-1},A_{t-1},O_t,R_t Ht=O1,R1,A1,,Ot1,Rt1,At1,Ot,Rt

state:用于确定接下来会发生的事情的信息,状态是关于 history 的函数
S t = f ( H t ) S_t=f(H_t) St=f(Ht)

policy:智能体在特定时间的行为方式,是从状态到行动的映射

  • 确定性策略(Deterministic Policy): a = π ( s ) a=\pi(s) a=π(s)
  • 随机策略(Stochastic Policy): π ( a ∣ s ) = P ( A t = a ∣ S t = s ) \pi(a|s)=P(A_t=a|S_t=s) π(as)=P(At=aSt=s)

reward:一个定义强化学习目标的标量,能立即感知到什么是“好”的
R ( s , a ) R(s,a) R(s,a)

value function:对于未来累积奖励的预测,用于评估在给定的策略下,状态的好坏
Q π ( s , a ) = E π [ R t + 1 + γ R t + 2 + γ 2 R t + 3 + ⋯ ∣ S t = s , A t = a ] = E π [ R t + 1 + γ Q π ( s ′ , a ′ ) ∣ S t = s , A t = a ] \begin{aligned} Q_\pi(s,a)&=\mathbb E_\pi[R_{t+1}+\gamma R_{t+2}+\gamma^2R_{t+3}+\cdots|S_t=s,A_t=a]\\ &=\mathbb E_\pi[R_{t+1}+\gamma Q_\pi(s^\prime,a^\prime)|S_t=s,A_t=a] \end{aligned} Qπ(s,a)=Eπ[Rt+1+γRt+2+γ2Rt+3+St=s,At=a]=Eπ[Rt+1+γQπ(s,a)St=s,At=a]

environment:用于模拟环境的行为

  • 预测下一个状态: P s s ′ a = P [ S t + 1 = s ′ ∣ S t = s , A t = a ] \mathcal P^a_{ss^\prime}=\mathbb P[S_{t+1}=s^\prime|S_t=s,A_t=a] Pssa=P[St+1=sSt=s,At=a]
  • 预测奖励: R s a = E [ R t + 1 ∣ S t = a , A t = a ] \mathcal R^a_s=\mathbb E[R_{t+1}|S_t=a,A_t=a] Rsa=E[Rt+1St=a,At=a]

二、深度强化学习

利用深度神经网络进行价值函数和策略近似从而使强化学习算法能够以端到端的方式解决复杂问题

研究前沿

基于模拟模型的强化学习

建立环境模拟器,在模拟器中训练强化学习策略,减少对真实环境的影响,也可以生成更多特定场景数据
在这里插入图片描述

目标策动的层次化强化学习

生成中间状态,将长期限任务分割成多个简单的短期限任务

challenge:

  • 累计建模误差
  • 稀疏反馈

模仿学习

建模人类专家的行为。:通过还原人类中的错误和不完美行为,让仿真环境更贴近真实世界

多智能体强化学习

环境包含有不断进行学习和更新的其他智能体,在任何一个智能体的视角下环境是非稳态的,即环境迁移的分布会发生改变

三、探索的概念

序列决策任务中的一个基本问题: 基于目前策略获取已知最优收益还是尝试不同的决策

  • Exploitation:执行能够获得已知最优收益的决策
  • Exploration:尝试更多可能的决策,不一定会是最优收益

E t = { π t i ∣ i = 1 , ⋯   , n } → Exploration E t + 1 = { π t i ∣ i = 1 , ⋯   , n } ∪ { π e j ∣ j = 1 , ⋯   , m } \mathcal E_t=\{\pi^i_t|i=1,\cdots,n\}\xrightarrow{\text{Exploration}}\mathcal E_{t+1}=\{\pi^i_t|i=1,\cdots,n\}\cup\{\pi^j_e|j=1,\cdots,m\} Et={πtii=1,,n}Exploration Et+1={πtii=1,,n}{πejj=1,,m}

多臂老虎机模型

目标是最大化长期累积收益,但是不知道哪个 “臂”(动作)的期望收益最高,每次选臂都要在 “探索未知臂” 和 “利用已知好臂” 之间做权衡

动作集合: a i ∈ A , i = 1 , ⋯   , K a^i\in\mathcal A,\quad i=1,\cdots,K aiA,i=1,,K
收益函数分布: R ( r ∣ a i ) = P ( r ∣ a i ) \mathcal R(r|a^i)=\mathcal P(r|a^i) R(rai)=P(rai)

目标:最大化累积时间的收益
max ⁡ ∑ t = 1 T r t , r t ∼ R ( ⋅ ∣ a t ) \max\sum^T_{t=1}r_t,\quad r_t\sim\mathcal R(\cdot|a_t) maxt=1Trt,rtR(at)

收益估计

期望收益 Q Q Q 和采样次数 n n n 的关系:
Q n ( a i ) = r 1 + ⋯ + r n − 1 n − 1 = Q n − 1 ( a i ) + 1 n − 1 ( r n − 1 − Q n − 1 ) Q_n(a^i)=\frac{r_1+\cdots+r_{n-1}}{n-1}=Q_{n-1}(a^i)+\frac 1{n-1}\left(r_{n-1}-Q_{n-1}\right) Qn(ai)=n1r1++rn1=Qn1(ai)+n11(rn1Qn1)

Regret 函数

决策的期望收益: Q ( a i ) = E r ∼ P ( r ∣ a i ) [ r ] Q(a^i)=\mathbb E_{r\sim\mathbb P(r|a^i)}[r] Q(ai)=ErP(rai)[r]
最优收益: Q ∗ = max ⁡ a i ∈ A Q ( a i ) Q^*=\max\limits_{a^i\in\mathcal A}Q(a^i) Q=aiAmaxQ(ai)

Regret 函数为:
σ R = E a ∼ π [ ∑ t = 1 T ( Q t ∗ − Q ( a t i ) ) ] \sigma_R=\mathbb E_{a\sim\pi}\left[\sum^T_{t=1}\left(Q^*_t-Q(a^i_t)\right)\right] σR=Eaπ[t=1T(QtQ(ati))]

如果一直 Exploitation 或 Exploration,total regret 都将线性递增,但是合理的算法存在最优下界:

lim ⁡ T → ∞ σ R ≥ log ⁡ T ∑ a ∣ Δ a > 0 Δ a D K L ( R ( r ∣ a ) ∣ ∣ R ∗ ( r ∣ a ) ) \lim\limits_{T\rightarrow\infty}\sigma_R\geq\log T\sum_{a|\Delta_a>0}\frac{\Delta_a}{D_{KL}\left(\mathcal R\left(r|a\right)||\mathcal R^*\left(r|a\right)\right)} TlimσRlogTaΔa>0DKL(R(ra)∣∣R(ra))Δa

其中 Δ a = Q ∗ − Q ( a ) \Delta_a=Q^*-Q(a) Δa=QQ(a)

经典最优算法

  1. UCB 算法
  2. 汤普森采样
  3. 衰减 ϵ − greedy \epsilon-\text{greedy} ϵgreedy

四、马尔可夫决策过程

状态 S t S_t St 是马尔可夫的,iff:

P [ S t + 1 ∣ S t ] = [ S t + 1 ∣ S 1 , ⋯   , S t ] \mathbb P[S_{t+1}|S_t]=\mathbb[S_{t+1}|S_1,\cdots,S_t] P[St+1St]=[St+1S1,,St]

性质:

  1. 状态从历史中捕获了所有相关信息
  2. 当状态已知的时候,可以抛开历史不管
  3. 当前状态是未来的充分统计量

MDP (Markov Decision Process):提供了一套为在结果部分随机、部分在决策者的控制下的决策过程建模的数学框架

MDP 可以由一个五元组表示 ( S , A , { P s a } , γ , R ) (S,A,\{P_{sa}\},\gamma,R) (S,A,{Psa},γ,R)
其中 S S S 是状态集合; A A A 是动作集合; P s a P_{sa} Psa 是状态转移概率,对每个状态 s ∈ S s\in S sS 和动作 a ∈ A a\in A aA,表示下一个状态在 S S S 中的概率分布; γ ∈ [ 0 , 1 ] \gamma\in[0,1] γ[0,1] 是对未来奖励的折扣因子; R : S × A ⟼ R R:S\times A\longmapsto\mathbb R R:S×AR 是奖励函数

值迭代与策略迭代

MDP 的目标是选择能够最大化累积奖励期望的动作

策略 π \pi π 的价值函数为:
V π ( s ) = E [ R ( s 0 ) + γ R ( s 1 ) + γ 2 R ( s 2 ) + ⋯ ∣ s 0 = s , π ] = R ( s ) + γ ∑ s ′ ∈ S P s π ( s ) ( s ′ ) V π ( s ′ ) ( Bellman 等式 ) \begin{aligned} V^\pi(s)&=\mathbb E[R(s_0)+\gamma R(s_1)+\gamma^2R(s_2)+\cdots|s_0=s,\pi]\\ &=R(s)+\gamma\sum_{s^\prime\in S}P_{s\pi(s)}(s^\prime)V^\pi(s^\prime)\quad\quad(\text{Bellman 等式}) \end{aligned} Vπ(s)=E[R(s0)+γR(s1)+γ2R(s2)+s0=s,π]=R(s)+γsSPsπ(s)(s)Vπ(s)(Bellman 等式)

对状态 𝑠 𝑠 s 来说的最优价值函数是所有策略可获得的最大可能折扣奖励的和

V ∗ ( s ) = max ⁡ π V π ( s ) = R ( s ) + max ⁡ a ∈ A γ ∑ s ′ ∈ S P s a ( s ′ ) V ∗ ( s ′ ) V^*(s)=\max\limits_{\pi}V^\pi(s)=R(s)+\max\limits_{a\in A}\gamma\sum_{s^\prime\in S}P_{sa}(s^\prime)V^*(s^\prime) V(s)=πmaxVπ(s)=R(s)+aAmaxγsSPsa(s)V(s)

最优策略:

π ∗ ( s ) = arg ⁡ max ⁡ a ∈ A ∑ s ′ ∈ S P s a ( s ′ ) V ∗ ( s ′ ) \pi^*(s)=\arg\max\limits_{a\in A}\sum_{s^\prime\in S}P_{sa}(s^\prime)V^*(s^\prime) π(s)=argaAmaxsSPsa(s)V(s)

由此可以选择对最优价值函数和最优策略执行迭代更新,即值迭代与策略迭代

  1. 价值迭代是贪心更新法
  2. 策略迭代中,用 Bellman 等式更新价值函数代价很大
  3. 对于空间较小的 MDP,策略迭代通常很快收敛
  4. 对于空间较大的 MDP,价值迭代更实用
  5. 如果没有状态转移循环,最好使用价值迭代
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

SP FA

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值