2.3 The 10-armed Testbed 10摇臂老虎机试验台

为了粗略获得贪心算法和\epsilon贪心算法的相对有效性,我们通过一系列的数值测试来比较两者的优劣。

本实验台包含2000个随机生成的k摇臂老虎机问题,其中k=10。如图2.1所示是其中之一,每个k摇臂问题生成的10个动作的值,q_*(a), a = 1,...,10, 是从一个均值为0,方差为1的正态/高斯分布中选取出来的10个数。然后,当一个学习算法应用这个问题上,并在时刻t时选择动作A_t,其动作的真实奖励R_t,是从一个均值为q_*(a),方差为1的正态分布中选取的。这些分布如图2.1中灰色部分所示。我们把这两千个测试任务称为10-摇臂测试台。对于任何一个学习算法,我们可以通过将其应用于此试验台中的某一个测试问题,并测试其1000步数(time steps)试验中的表现和行为。这1000步组成一轮试验(one run),将试验重复2000轮,每次针对一个不同的测试问题,我们将获得对这个学习算法的平均表现的评估。

图2.2比较了贪心算法和两种\epsilon贪心算法(\epsilon = 0.01\epsilon=0.1)在试验台中的表现。所有算法中使用的动作-值评估方法都是采样平均法。上图显示的是期望奖励随经验的提升。贪心算法比其他算法在开始阶段稍微提升的快一点,但之后就稳定在一个比较低的水平了。它获得的”奖励/步数”大约仅在1,而相比之下在这个试验台中最好的可能是1.55。贪心算法在长期表现得如此之差的原因是,它总是卡在次优动作上。下图显示出贪心算法找到最优动作的概率大约为1/3,而剩下的2/3概率下,它的初始值非常差,导致它无法找到最优动作。而\epsilon=0.1贪心算法最终表现更好,是因为它始终在探索以提升它找到更优动作的机会。\epsilon=0.1的方法探索次数更多,通常更早找到最优动作,但是它每次选择最优动作的概率不大于91%(90%+10%*(1/10) = 91%)。\epsilon=0.01的算法提升得较慢,但是最终在如图2.2所示的两方面可能表现得比的算法要好。而随着时间逐渐减小,可能其既能很快找到最优动作,又能最终获得的平均奖励(”奖励/步数”)更大。(在开始的时候 \epsilon 大一些,可以很快找到最优动作,之后逐渐减小 \epsilon ,让最优动作每次被选中的概率更大,从而使平均奖励值更大。

\epsilon贪心算法相对贪心算法的优势取决于任务。例如,假设奖励的方差更大(奖励分布范围更大),比如说是10而不是1。那么对于这些噪声更大(其实就是分布范围更广了)的奖励值,需要更多的探索来找到最优解(每个奖励的分布范围十分广,一次实验取到的奖励值可能离动作的真实值很远,也就是说一次实验中表现最好的动作可能并不是平均表现最好的动作,而我们是用平均表现来评估一个动作的,所以方差大的需要多次采样来评估某一个动作,也就是对每个动作都要重复采样多次,就需要更多积极的探索),那么 \epsilon 贪心算法可能表现得比贪心算法好很多。而另一方面,如果假设方差为0,那么贪心算法将在试过一次之后就知道知道这个动作的真实值了(我不太同意这种说法,如果贪心算法的第一次尝试是次优解,那么它就会一直执行这个次优解,不去探索其他可能,也就没法获取最优解的真实值了)。在这种情况下贪心算法可能会表现的最好,因为他可以很快的找到最优解,并且永远不探索其他可能。但是即使在这种奖励值完全集中于一点的情况下,如果我们放松一点假设,探索仍然具有巨大优势。比如,假设老虎机任务是非静态的,也就是说,动作的奖励随着时间变化,那么探索就很有必要了,因为一个非贪婪动作也可能随着时间变化为贪婪动作。在接下来的几章中,我们会发现,非静态问题是强化学习中最经常遇到的问题。尽管老虎机的本质任务是静态的,确定的(deterministic),读者仍面临许多类似于老虎机的任务,随着学习的进行和agent策略的改变,这些任务都会随着时间不断变化。强化学习需要在探索和利用中找到平衡。

答案仅供参考

练习2.3  在如图2.2的比较中,从长远来看,在累计奖励和选中最优动作的可能性上,哪一种方法可能表现得最好?。可能好多少,请定量回答。

\epsilon=0.01贪心算法可能表现得最好,随着步数增多,它可能最终收敛到1.55的最优动作上,那么它的平均值大约是1.55附近,所以可能比 \epsilon=0.1 好大约0.15;而他选中最优动作的概率可能会上升到 99%+1%*1/10=99.1%,比 \epsilon=0.1 的 91%高 8.1%

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值