这一节我们来了解下多臂赌博机问题的提出和理论基础,最后讨论下UCB系列策略.当然,这里的多臂赌博机问题是随机式的. 随机式多臂赌博机的问题描述就不在这里重复了,可以参考上一节
理论
问题的证明
Lai & Robbins在1985年论证了对于某些特定的分布(只有一个实参的分布),存在有策略使得它的累积遗憾的期望服从 增长.同时也证明了对于任何策略任何次优臂,总有
当然他们也提出了一些针对特定分布的策略,虽然结果较好(对数增长的常数项较小),但是由于计算复杂度和特定分布的限制,并不具有较好的实用性.
改进
为了克服上面的缺点, Agrawal提出了基于采样平均值作为上部信心指数(upper confidence index)
的多臂赌博机策略,它将各臂采样平均值的某些函数作为该臂优越性的指标,然后总选取最优越的臂. 同时证明结果显示它们同样服从对数增长,只不过对数增长的常数项较大了些.
UCB策略
UCB1
该策略已经在上一节讨论过了,这里只列举下算法.
UCB1算法:
在前 轮,每臂各选择一次,
在 轮:
- 选择指数 最大的臂,其中 ,其中 是均值, 是臂 当前累积被选择的次数
- 记录获得的奖励,并更新 和
UCB2
UCB2算法
在前 轮,每臂各选择一次,并置
- 选出指数 最大的臂,其中 ,其中
, 其中- 选择该臂 次
定理: 如果 ,则总的遗憾期望不超过
e-Greedy策略
在多臂赌博机问题中贪婪算法并不适用,但是,可以改良一下,如Sutton &Barto在1998年提出的 算法,它简单地以 的概率选择最大的采样均值的臂,而以 的概率去随机选择臂. 但是,它并不是对数增长的. 它需要人为地设定一个停止规则,而且,这个停止规则必然和各臂期望有关.
一个好的改良叫做 算法.
定义参数 , 和
算法
在前 轮,每臂各选择一次,
- 以 的概率选择最大的采样均值的臂,而以 的概率去随机选择臂.
- 更新
虽然该方法在仿真中能得到很好的结果,但实际情况是各臂期望不可知,无法确定较好的 ,所以只能设置一个较大的 (其实c,d可以合并成同一参数).
一般来说,如果 满足条件, 足够保证对数增长.
UCB1-NORMAL
UCB1-NORMAL算法
1. 如果有臂被选择的次数少于 ,那么就选择该臂
2. 否则,选择指数 最大的臂,其中 , 其中
3. 更新 和定理
UCB1-NORMAL算法下总的遗憾期望不超过
好了,这样就列举完了UCB基本算法了.当然,还有很多变种,留待以后补充. 但其实,各UCB算法的差异并不足够大.