SQN是Soft Q Network的缩写,是基于Q-value的强化学习算法,"Soft"指代的是熵正规化( entropy regularization )。SQN算法在2018年就写下了,但是由于我比较懒,一直没有写论文介绍,在此简略介绍。伪代码如下:
SQN的policy为Q-value的Softmax形式,是算法的策略改进(policy improvement )部分,Q-value 的更新为值估计(value estimation)部分。两部分交替进行提升Q值以及策略。
上图为Q backup,我们提出三种形式:Value,Q,以及MaxQ。三种形式都经过了我们的实验验证。第二项为policy的动作熵,也是算法的核心。熵正规化的含义即:在获得最多奖励的同时让动作尽可能地随机,因此对agent的探索有重要作用。
强化学习中 explore-exploit trade-off 是个永恒的难题。在DQN算法中,需要人为地加一个衰减的探索因子,训练才能进行。而SQN通过Softmax中的alpha,可以自动平衡explore-exploit,相比DQN,SQN对explore-exploit的处理要优雅得多。当然,效果也好得多。