Multi-armed Bandits(多臂老虎机问题)
参考链接:强化学习系列(二):Multi-armed Bandits(多臂老虎机问题)
一、问题描述
先放一张slot machine的图片😏
1.arm指拉杆,bandit是arm的集合:
bandit=arm1,arm2,…,armk
2.假设 t 时刻我们选择动作为At, 对应的奖励为Rt, 则t时刻的任意action a 的期望奖励(value)可以表示为 q∗(a)=E[Rt|At=a]
3.但这个式子我们并不知道确切的值,因此只能通过多次测试产生相应action的估计价值(estimated value)Qt(a),让Qt(a)尽可能接近q*(a),然后根据Qt(a)选择具有最大奖励value的行为a。
二、Action-value function
1.sample-average采样平均法
2.greedy与 ϵ-greedy
贪心策略。两个的区别在于有没有考虑对环境的exploration。
三、Incremental Implementation 增量式实现
1.迭代思想推导出增量式的求解方法,该方法仅耗费固定大小的内存,且可以单步更新。
2.推导过程👇
这样每次只需要存储 Qn和n,就可以算出新的reward。这种方式称为增量式求解。
3.伪代码
过程可以简写为:
NewEstimate←OldEstimate+StepSize [Target–OldEstimate]
四、针对非固定性问题
1.如果随着时间变化,bandits所获得的reward也在变化,那么需要引入当前reward的权重,引入一种比较性,以表示对当前reward影响的重视。
2.推导公式——exponential recency-weighted average 指数近期加权平均
五、最优化初始值 optimistic initial values
这部分有点不太明白……
最优化初始值对exploration的驱动是短期且固有的。
六、Upper-Condience-Bound 动作选取
1.ϵ-greedy在随机选择action时无差别的对待每个action,如果在随机选择action时考虑每个action的隐含属性有利于找到最优action。
2.隐函属性一般包括:与最大值的接近度、估计错误率
3.upper-condience-bound是一种常用的action选取方法
4.UCB的局限性
- 解决不确定性uncertainty问题比较难
- 不适用于状态空间较大的问题,尤其是使用逼近函数的问题中
七、Gradient Bendit Algorithms
1.是一种通过偏好Ht(a)选取action的方法
2.偏好越大,越经常被选择
3.偏好和reward没有直接关系,偏好通过相对大小影响action的选择概率
4.公式
八、总结
4种用于平衡exploration和exploitation的方法:
- ϵ-greedy (在强化学习中应用广泛)
- UCB方法(通过增加出现次数少的action的选择概率来增强Exploration,UCB不容易扩展到一般强化学习中)
- Gradient Bendit Algorithms(不依据价值估计来选取动作,通过action偏好来选择action)
- optimistic initial values(不能用于非固定性问题中)