这个算法是基于一个概率来对探索和利用进行折中:每次尝试时,以概率进行探索,即以均匀概率随机选取一个摇臂,以的概率进行利用,即以这个概率选择当前平均奖赏最高的摇臂(如有多个,则随机选取)。
其中:小k表示第k个摇臂。因为大K表示摇臂总数;n表示尝试的次数,vn表示第n次尝试的奖赏。
Qn的直观意思为:为前n-1次的平均奖赏。当其与n-1相乘所得是前n-1次总奖赏。再加上第n次的奖赏,处于n,则为n次的平均奖赏。
其中:argmax为选取最优的Q(i)。count是从0开始的,故count(k)+1的值为n,算出的Q(k)为n次的平均奖赏。
(二)Softmax算法
softmax算法是基于当前已知的摇臂平均奖赏来对探索和利用进行折中。若各摇臂的平均奖赏相当,则选取各摇臂的概率也相当;如果某些概率的平均奖赏明显高于其他奖赏,则它们被选的概率也明显高。
在贪心算法中,的取值是由用户选取的。softmax算法中摇臂概率的分配是基于Boltzmann分布。
<查>Boltzmann分布
从算法中并没有看出botlzmann分布的利用?
至于两个算法的取舍还要看实际情况。从下图看出,softmax当温度=0.01时,曲线与“仅利用”的曲线几乎重合。