参考
Reinforcement Learning, Second Edition
An Introduction
By Richard S. Sutton and Andrew G. Barto
MDP 是强化学习问题在数学上的理想化形式,因为在这个框架下我们可以进行精确的理论说明
智能体与环境的交互
智能体与环境交互,会得到轨迹,根据轨迹长度 T T T的情况,分为分幕式任务( T < ∞ T<\infty T<∞)和持续式任务( T = ∞ T=\infty T=∞)。轨迹的形式为:
S 0 , A 0 , R 1 , S 1 , A 1 , R 2 , S 2 , A 2 , . . . \blue{S_0,A_0},\red{R_1,S_1,A_1},\green{R_2,S_2,A_2},... S0,A0,R1,S1,A1,R2,S2,A2,...
回报( G G G return)与奖励( R R R reward)
G t = R t + 1 + γ R t + 2 + γ 2 R t + 3 + . . . G_t=R_{t+1}+\gamma R_{t+2}+\gamma^2 R_{t+3} + ... Gt=Rt+1+γRt+2+γ2Rt+3+...
从 t + 1 t+1 t+1开始的原因:因为不存在 R 0 R_0 R0,但是存在 G 0 G_0 G0
状态价值函数 v π ( s ) v_{\pi}(s) vπ(s) 与动作价值函数 q π ( s , a ) q_{\pi}(s,a) qπ(s,a)
v π ( s ) ≐ E [ G t ∣ s ] = E [ R t + 1 + γ G t + 1 ∣ s ] v_{\pi}(s) \doteq \mathbb{E}[G_t|s]=\mathbb{E}[R_{t+1}+\gamma G_{t+1}|s] vπ(s)≐E[Gt∣s]=E[Rt+1+γGt+1∣s]
q π ( s , a ) ≐ E [ G t ∣ s , a ] = E [ R t + 1 + γ G t + 1 ∣ s , a ] q_{\pi}(s,a) \doteq \mathbb{E}[G_t|s,a]=\mathbb{E}[R_{t+1}+\gamma G_{t+1}|s,a] qπ(s,a)≐E[Gt∣s,a]=E[Rt+1+γGt+1∣s,a]
注意到 v , q v, q v,q都定义成给定 π \pi π这个分布的期望回报,因此都是理想存在的一个函数,而不是算法内部的。算法内部对他们两个函数的估计记作大写 V π ( S t ) V_{\pi}(S_{t}) Vπ(St)与 Q π ( S t , A t ) Q_{\pi}(S_{t},A_{t}) Qπ(St,At)
策略函数 π ( a ∣ s ) \pi(a|s) π(a∣s)
策略是从状态到每个动作的选择概率之间的映射
π ( a ∣ s ) \pi(a|s) π(a∣s) 中间的"|“只是提醒我们它为每个 s 都定义了一个在 a 上的概率分布
重要函数与公式
- 四参数动态函数
p ( s ′ , r ∣ s , a ) p(s',r|s,a) p(s′,r∣s,a)
表示given s s s采取动作 a a a,走到 s ′ s' s′并获得 r r r的概率(对每一个不同的s,a组合,都有这样的一个函数)
- 状态转移概率
p ( s ′ ∣ s , a ) = ∑ r ∈ R p ( s ′ , r ∣ s , a ) p(s'|s,a)=\sum_{r\in \mathcal{R}} p(s',r|s,a) p(s′∣s,a)=r∈R∑p(s′,r∣s,a)- 状态-动作期望收益
r ( s , a ) = ∑ r ∈ R r ∑ s ′ ∈ S p ( s ′ , r ∣ s , a ) , r(s,a) = \sum_{r\in{\mathcal{R}}}{r}\sum_{s^{\prime}\in{\mathcal{S}}}p(s^{\prime},r\mid s ,a), r(s,a)=r∈R∑rs′∈S∑p(s′,r∣s,a),- 状态-动作-后继状态
r ( s , a , s ′ ) = ∑ r ∈ R r p ( s ′ , r ∣ s , a ) p ( s ′ ∣ s , a ) r(s,a,s') = \sum_{r\in{\mathcal{R}}}r\,\frac{p(s^{\prime},r\mid s,a)}{p(s^{\prime}\mid s,a)} r(s,a,s′)=r∈R∑rp(s′∣s,a)p(s′,r∣s,a)
- 用 π , q \pi,q π,q表示 v v v
v π ( s ) ≐ ∑ a π ( a ∣ s ) q π ( s , a ) v_\pi(s)\doteq\sum_{a}{\pi(a|s)q_{\pi}(s,a)} vπ(s)≐a∑π(a∣s)qπ(s,a) - 用 v v v和四参数动态函数表示 q q q
q π ( s , a ) = ∑ s ′ , r p ( s ′ , r ∣ s , a ) [ r + γ v π ( s ′ ) ] q_\pi(s,a)=\sum_{s',r}p(s',r|s,a)[r+\gamma v_\pi(s')] qπ(s,a)=s′,r∑p(s′,r∣s,a)[r+γvπ(s′)]
贝尔曼方程
- 状态价值函数的贝尔曼方程
- 动作价值函数的贝尔曼方程
看第二个等号,求和号里面第二项实际上就是 q π q_\pi qπ,因此
q π ( s , a ) = ∑ s ′ , r p ( s ′ , r ∣ s , a ) [ r + γ v π ( s ′ ) ] q_{\pi}(s,a)=\sum_{s^{\prime},r}p(s^{\prime},r|s,a)[r+\gamma \red{v_{\pi }(s')}] qπ(s,a)=s′,r∑p(s′,r∣s,a)[r+γvπ(s′)]
= ∑ s ′ , r p ( s ′ , r ∣ s , a ) [ r + γ ∑ a ′ π ( a ′ ∣ s ′ ) q π ( s ′ , a ′ ) ] =\sum_{s^{\prime},r}p(s^{\prime},r|s,a)[r+\gamma \red{\sum_{a^{\prime}}\pi(a^{\prime}|s^{\prime})q_{\pi}(s^{\prime},a^{\prime})}] =s′,r∑p(s′,r∣s,a)[r+γa′∑π(a′∣s′)qπ(s′,a′)]
贝尔曼最优方程
v ∗ ( s ) = max a q ∗ ( s , a ) v_*(s)=\max_a q_{*}(s,a) v∗(s)=amaxq∗(s,a)