k摇臂老虎机有k个摇臂,玩家每次投入一个硬币可以按下其中一个摇臂,每个摇臂按下后有可能吐出硬币作为奖赏,但是每个摇臂吐出硬币的概率分布是未知的。
玩家的目标是用某种玩法最大化自己的奖赏,也就是获得最多的硬币。对于每次尝试,玩家有两种选择:一是利用,即按下当前已知的最优摇臂;二是探索,即随机选取其中一个摇臂。利用法没有很好地估计每个摇臂的优劣,很可能错失最优摇臂。而探索法可以估计每个摇臂的优劣,但是失去了很多按下最优摇臂的机会。因为尝试次数有限,欲最大化累积奖赏,必须在探索和利用之间达成较好的折中。
求解k摇臂老虎机问题的常用方法有ε贪心法、上置信界(upper confidence bound)法等。其中,ε贪心法的思想是基于一个概率对探索和利用进行折中。对于每次尝试,以ε的概率进行探索,即随机选择一个摇臂;以1-ε的概率进行利用,即选择已知的平均奖赏最高的摇臂。
k摇臂老虎机问题的一个实用变体是上下文赌博机问题。现有一些不同的k摇臂老虎机,智能体每次都要随机地面对其中一个。因此,赌博机任务每一次都是随机变化的。当遇到一个k摇臂老虎机时,智能体还会得到和老虎机关联的特征。利用这些特征,智能体能够学习与每个k摇臂老虎机相关联的策略。LinUCB等多种算法可以用于近似求解上下文赌博机问题。上下文赌博机问题介于k摇臂老虎机和完整强化学习问题之间。它和完整强化学习问题一样都需要学习一个策略。它与k摇臂老虎机问题的共同点是每个动作只会影响即时奖赏,而不会影响下一时刻的状态和奖赏。