强化学习导论
Sutton & Barto的著作《强化学习导论(第二版)》的Python复现
如果您对代码有任何疑问或想报告bug,请开一个issue而不是直接给我发邮件。很遗憾,我没有这本书的习题答案。
目录
第1章
- 井字棋
第2章
- 图2.1:10臂赌博机测试平台的一个示例问题
- 图2.2:ε-贪婪动作价值方法在10臂赌博机测试平台上的平均表现
- 图2.3:乐观的初始动作价值估计
- 图2.4:UCB动作选择在10臂赌博机测试平台上的平均表现
- 图2.5:梯度赌博机算法的平均表现
- 图2.6:各种赌博机算法的参数研究
第3章
第4章
第5章
第6章
- 例6.2:随机游走
- 图6.2:批量更新
- 图6.3:Sarsa应用于有风的网格世界
- 图6.4:悬崖行走任务
- 图6.6:TD控制方法的中期和渐近性能
- 图6.7:Q-learning和Double Q-learning的比较
第7章
第8章
- 图8.2:规划步数不同的Dyna-Q智能体的平均学习曲线
- 图8.4:Dyna智能体在阻塞任务中的平均表现
- 图8.5:Dyna智能体在捷径任务中的平均表现
- 例8.4:优先扫描显著缩短了Dyna迷宫任务的学习时间
- 图8.7:期望更新和采样更新效率的比较
- 图8.8:不同更新分布的相对效率
第9章
- 图9.1:梯度蒙特卡洛算法在1000状态随机游走任务中的表现
- 图9.2:半梯度n步TD算法在1000状态随机游走任务中的表现
- 图9.5:傅里叶基与多项式在1000状态随机游走任务中的比较
- 图9.8:特征宽度对初始泛化和渐近精度影响的示例
- 图9.10:单个分块和多个分块在1000状态随机游走任务中的表现
第10章
- 图10.1:山地汽车任务中一次运行的代价函数
- 图10.2:半梯度Sarsa在山地汽车任务中的学习曲线
- 图10.3:单步vs多步半梯度Sarsa在山地汽车任务中的表现
- 图10.4:α和n对n步半梯度Sarsa早期表现的影响
- 图10.5:差分半梯度Sarsa在访问控制排队任务中的表现
第11章
第12章
- 图12.3:离线λ-回报算法在19状态随机游走中的表现
- 图12.6:TD(λ)算法在19状态随机游走中的表现
- 图12.8:真实在线TD(λ)算法在19状态随机游走中的表现
- 图12.10:带替换轨迹的Sarsa(λ)在山地汽车任务中的表现
- 图12.11:Sarsa(λ)算法在山地汽车任务中的综合比较
第13章
环境
使用方法
所有文件都是独立的
python 你想运行的任何文件.py
贡献
如果您想贡献一些缺失的示例或修复一些bug,欢迎开issue或提交pull request。