14、RL Conclusions


1、强化学习

强化学习是学习一个最优策略(policy),可以让本体(agent)在特定环境(environment)中,根据当前的状态(state),做出行动(action),从而获得最大回报(G or return)。


2、强化学习的术语

学习任务可分为两类:

  1. 情节性任务(episodic tasks):指(强化学习的问题)会在有限步骤下结束。比如:围棋。
  2. 连续性任务(continuing tasks):指(强化学习的问题)有无限步骤。一个特征是:没有结束。比如:倒立摆。

学习的方法:

  1. on-policy方法(on-policy methods):评估的策略和优化的策略是同一个。
  2. off-policy方法(off-policy methods):评估的策略和优化的策略不是同一个。意味着优化策略使用来自外部的模拟数据。

三种算法:

  1. 预测算法(predication algorithms):计算每个状态的值 v(s),然后预测(可以得到最大回报的)最优行动。
  2. 控制算法(control algorithms):计算每个状态下每个动作的值 q(s,a) 。
  3. 策略梯度方法(Policy Gradient):计算策略 π ( a ∣ s , θ ) \pi(a|s,\theta) π(as,θ)

学习的方法:

  1. 列表方法(tabular methods):指使用表格存储每个状态(或者状态-动作)值。
  2. 近似方法(approximation methods):指使用一个函数来逼近状态(或者状态-动作)值。
  3. 基于模型的方法(model-base methods):通过模型来模拟。可以模拟动作,获得(状态或者动作)值。如:动态规划方法。
  4. 无模型的方法(model-free methods):使用试错法(trial-and-error)来获得(状态或者动作)值。

模型(model):环境的模型。可以模拟环境,模拟行动的结果。

引导性(bootstrapping):(状态或者动作)值是根据其它的(状态或者动作)值计算得到的。

采样性(sampling):(状态或者动作)值,或者部分值(比如:奖赏)是取样得到的。

注:引导性和采样性并不是对立的。可以是采样的,并且是引导的。


3、强化学习算法的分类

算法类别是否需要模型引导性情节性任务连续性任务
Dynamic Programming(DP)YY--
Monte Carlo(MC)NN √ \surd × \times ×
Temporal-Difference(TD)NY √ \surd √ \surd
Policy GradientNY √ \surd √ \surd

如果有一个模型,可以获得值函数 v(s) 或者 q(s,a) 的值 → 动态规划方法
如果可以模拟一个完整的情节 → 蒙特卡罗方法
如果需要在模拟一个情节中间就要学习策略 → 时序差分方法


4、有限马尔卡夫决策过程

马尔卡夫决策过程理论定义了一个数学模型,可用于随机动态系统的最优决策过程。

强化学习利用这个数学模型将一个现实中的问题变成一个数学问题。

agent 和 environment 不断交互,这个过程中伴随着 state、reward 和 action 的变化。agent 交互的最终目标:最大化它在长期内获得的总回报,即获得的标量信号(reward)的累积的期望值的最大化。
 the agent-environment interaction

有限马尔卡夫决策过程的基本概念:

  1. state 状态
  2. action 行动
  3. reward 奖赏
  4. Returns 回报
  5. The Markov Property 马尔可夫特性
  6. state-value function 状态值函数
  7. action-value function 动作值函数
  8. optimal state-value function 最优状态值函数
  9. optimal action-value function 最优动作值函数
  10. Bellman optimality equation 贝尔曼最优方程

5、动态规划

Dynamic Programming(DP) 指一组可以用来计算最优策略的算法。动态规划是基于模型的方法。

动态规划的基本概念:

  1. Policy Evaluation 策略评估
  2. Policy Improvement 策略改进
  3. Policy Iteration 策略迭代:每个迭代都涉及 policy evaluation 和 policy
    improvement,因此计算量很大。
  4. Value Iteration 值迭代
  5. Generalized Policy Iteration(GPI) 广义策略迭代:GPI
    是一个强化学习的核心思想,影响了几乎所有的强化学习方法。

6、蒙特卡罗方法

蒙特卡罗方法是一种估计值函数和找到最优策略的学习方法。

蒙特卡罗预测:

  1. first-visit MC method:第一次访问状态s的回报平均值来估计 v π ( s ) v_\pi(s) vπ(s)
  2. every-visit MC method:所有访问状态s的回报平均值来估计 v π ( s ) v_\pi(s) vπ(s)

蒙特卡罗控制:

  1. Monte Carlo ES:从一个特定起始点的蒙特卡罗方法。
  2. on-policy methods:例如 On-policy first-visit MC control (for ϵ-soft policies)
  3. off-policy methods:几乎所有的 off-policy methods 都使用了 importance sampling (重要性抽样),抽样方法有普通重要性抽样和加权重要性抽样。

7、时间差分方法

TD learning 是蒙特卡罗思想和动态规划(DP)思想的结合。

TD 预测:

  1. Tabular TD(0) for estimating v π v_\pi vπ:计算 v(s) 的单步TD算法。

TD 控制:

  1. Sarsa: On-Policy TD Control:计算 q(s,a) 的单步TD算法。
  2. Q-learning: Off-Policy TD Control:是一个突破性算法。但是存在一个最大化偏差(Maximization
    Bias)问题。
  3. Double Q-learning:解决了最大化偏差(Maximization Bias)问题。

8、多步时间差分方法

Multi-step TD 方法对MC方法和TD(0)方法进行了推广,且表现更佳。

预测:

  1. n-step TD Prediction:计算 v(s) 的多步TD算法。

控制:

  1. n-step Sarsa:计算 q(s,a) 的多步TD算法。
  2. Off-policy n-step Sarsa for estimating:考虑到重要性样本,把ρ带入到Sarsa算法中,形成一个off-policy的方法。
  3. The n-step Tree Backup Algorithm:每步都求动作值的期望值。
  4. n-step Q( σ \sigma σ):结合了Sarsa(importance sampling), Expected Sarsa, Tree Backup算法,并考虑了重要性样本。

9、基于模型的算法

Planning and Learning with Tabular Methods

random-sample one-step tabular Q-planning:通过从模型中获取奖励值,计算 q(s,a) 。

Tabular Dyna-Q:包括 planning, acting, model learning 和 direct RL 这些过程。

Prioritized sweeping for a deterministic environment:提供了一种性能的优化,只评估那些误差大于一定值θ的策略价值。


10、近似预测方法

近似预测:使用已知策略 π \pi π 生成的经验来逼近值函数 v π v_\pi vπ,且值函数是一种以权重向量 θ ∈ R n \theta \in \R^n θRn 的参数化函数形式,用 v ^ ( s , θ ) ≈ v π ( s ) \hat{v}(s,\theta) \approx v_\pi(s) v^(s,θ)vπ(s) 表示。

Gradient Monte Carlo Algorithm for Approximating:蒙特卡罗方法对应的近似预测方法。

Semi-gradient TD(0) for estimating:单步TD方法对应的近似预测方法。半梯度的原因是TD(0)和 n-steps TD计算状态值的公式不是精确的(而蒙特卡罗方法是精确的)。

n-step semi-gradient TD for estimating:多步TD方法对应的近似预测方法。

Least-Squares TD:最小二乘TD算法

线性方法中特征结构:

  1. 多项式基(Polynomials Basis)
  2. 傅里叶基(Fourier Basis)
  3. 粗编码(Coarse Coding)
  4. 块编码(Tile Coding)
  5. 径向基函数(Radial Basis Functions)

非线性函数近似:

  1. 人工神经网络(ANNs)

11、近似控制方法

近似控制是求策略的动作值函数, q ^ ≈ q π \hat{q} \approx q_\pi q^qπ ,表示为权重向量 θ \theta θ 的参数化函数。

Episodic Semi-gradient Sarsa for Control:单步TD的近似控制方法。(情节性任务)

Episodic semi-gradient n-step Sarsa for estimating:多步TD的近似控制方法。(情节性任务)

Differential Semi-gradient Sarsa for Control:单步TD的近似控制方法。(连续性任务)

Differential semi-gradient n-step Sarsa for estimating:多步TD的近似控制方法。(连续性任务)


12、有效跟踪

有效跟踪(Eligibility traces)与TD和MC方法进行统一和概括。有效跟踪提供了一种在线实现蒙特卡罗方法的方法,以及在没有episodes的情况下实现连续问题的方法。还提供了一种简练的算法机制,具有显著的计算优势。该机制是一个短期记忆向量,有效跟踪 e t ∈ R n e _t \in \R^n etRn,与长期的权向量 θ t ∈ R n \theta _t \in \R^n θtRn 并存。

λ-return:计算 G t G_t Gt

TD(λ):第一个使用eligibility traces的算法

True Online TD(λ):真正的在线 TD(λ) 算法


13、策略梯度方法

策略梯度方法中,可以使用任何方式对策略进行参数化,只要 π ( a ∣ s , θ ) \pi(a|s,\theta) π(as,θ) 可微,即 ▽ θ π ( a ∣ s , θ ) \bigtriangledown_{\theta}\pi(a|s,\theta) θπ(as,θ) 存在且总是有限。

REINFORCE: Monte Carlo Policy Gradient:基于蒙特卡罗方法的策略梯度算法。

REINFORCE with Baseline:带基线的蒙特卡洛方法的策略梯度算法。

Actor-Critic Methods:带基线的TD方法的策略梯度算法。

Actor-Critic with Eligibility Traces (episodic):带基线的TD方法的策略梯度算法 + 有效跟踪(Eligibility traces)

Actor-Critic with Eligibility Traces (continuing):基于TD方法的策略梯度算法。(连续性任务)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值