七月算法强化学习 第二课 学习笔记
一.Unknown Environment MDP
1.回顾:
1)Known Environment MDP 策略评估
2)Known Environment MDP 寻找最优策略
2.Unknown Environment MDP
1)大多数时候模型未知,No knowledge of MDP transitions / rewards
What do you do when don’t know how the world works? Learn from experience!
2)Model-Based:先建立模型(Estimate P and R from observations) 。策略评估/寻找最优策略
3)Model-Free:边玩边学 v(s), q(s,a) and π(s)。策略评估/寻找最优策略
3.策略评估
Problem: How to evaluate given policy π for unknown MDP?
i)生成轨迹 under π, i.e., S1, A1, R2, … , Sk ~ π
ii)估计Vπ(s)
方法1: 从轨迹中学习模型P & R, 然后model-based策略评估。(✖)
方法2: 直接由轨迹估计Vπ(s) (✔) Monte-Carlo & Temporal-Difference
二.Model-Free Prediction: Monte Carlo Method
Monte Carlo基本思想:大数定理,期望值 ~ 经验平均值
Vπ(s) 可以由状态从s开始的所有Gt的平均值替代。
1)直接从经验的轨迹中学习
2)Model-free
3)用经验平均替代期望值
4)轨迹必须结束(To compute Gt)
MC/TD 比较:
MC | TD(0) |
要等到episode结束才能获得return | 每一步执行完都能获得一个return |
只能使用完整的episode | 可以使用不完整的episode |
高variance,零bias | 低variance,有bias |
没有体现出马尔可夫性质 | 体现出了马尔可夫性质 (use MDP) |
No Bootstrapping | Bootstrapping |
收敛慢,steady | 收敛快,not steady |
Common Belief in RL: TD is superior to MC
四.OpenAI Gym 简介
OpenAI gym是一个用于开发和比较RL算法的工具包, 基准测试平台
1.文档:https://gym.openai.com/docs/
2.gym开源库:包含一个测试问题集,每个问题为一个环境env, 环境有共享的接口,允许用户设计通用的算法。
3.Openai gym服务:提供站点和API允许用户对训练的算法进行性能比较。
4.目前支持python, tensorflow, theano
5.gym 的核心接口是 Env, 包含几个核心方法如下:
1)reset(self):重置环境的状态,返回观察。
2)step(self, action):推进一个时间步长,返回 observation, reward, done, info
3)render(self, mode=’human’, close=False):重绘环境的一帧。
6.其他RL开源平台
1 )Arcade Learning Environment (ALE): Atari游戏环境测试
2 )OpenAI Universe: 升级版的Gym,更复杂的flash,PC 游戏。
3 )DeepMind Lab:第一视角的3D游戏环境
4 )Fair TorchCraft: Facebook针对实时策略游戏(星际争霸)
……