强化学习读书笔记(11)| On-policy Control with Approximation

2019-10-18 15:03:09 浏览数 (2)

本讲我们关注on-policy control问题,这里采用参数化方法逼近action-value函数。主要介绍的semi-gradient Sarsa算法是对上一章中介绍的semi-gradient TD(0)的一种扩展。在episodic任务中,这种扩展十分直观,但是对于continuing的情况,我们需要再次考虑对于discounting方法来定义一个最优策略的方式。而当我们使用函数逼近的时候需要放弃discounting并且转到一个新的average-reward的控制机制。

首先,针对episodic任务,我们将上一章用于state value 的函数逼近思想扩展到action value上,然后将这些思想扩展到 on-policy GPI过程中,用ϵ-greedy来选择action,最后针对continuing任务,对包含differential value的average-reward运用上述思想。

Episode Semi-gradient Control

n-step Semi-gradient Sarsa

Average Reward:A New Problem

Setting for Continuing Tasks

Deprecating the Discounted Setting

n-step Differential Semi-gradient Sarsa

实例:An Access-Control Queuing Task

这是一系列决策任务。现有n=10个服务台,有四类等级的顾客在排队,服务费分别为1,2,4,8,优先级较高则支付更多。在每个time step,队列队头的顾客被接受或被拒绝。无论哪种情况,在下一个时间步中,都会考虑队列中的下一个顾客。队列永远不会为空,并且队列中顾客的优先级是平均随机分布的。如果没有空闲的服务器,无法为顾客提供服务,在这种情况下会拒绝顾客。每个服务台在每个时间步上的空闲概率为p = 0.06。我们的任务是基于空闲的服务台数量和客户等级,决定是否接受顾客,以最大化没有折扣的长期奖励。

代码编写

调库

Tile coding

参数设置

differential semi-gradient Sarsa state-action function

根据epsilon-greedy policy 和 value function选择行为

differential semi-gradient Sarsa

可视化

结果:

小结

本讲将第九讲中参数化函数逼近和semi-gradient decent 扩展到control 问题中。首先,对episodic问题进行了简单扩展,然后对连续问题,先介绍了average-reward setting 和 differential value function。然后说明了discounted setting 不适用于连续问题中的函数逼近的原因。average reward formulation的设定引入了新的差分形式的value functions,Bellman equations 和 TD error。但是这些都和我们之前学习的形式等同,概念上的变化很小。对于 average-reward,也有一组新的使用差分形式算法的集合。

参考

1.R.Sutton et al. Reinforcement learning: An introduction , 1998

2.https://blog.csdn.net/qq_25037903/article/details/82669594

3.https://blog.csdn.net/LagrangeSK/article/details/81986102

4.https://gitee.com/marcusli/reinforcement-learning-an-introduction

0 人点赞