Multi-Armed Bandit

问题描述 #card

  • 多臂老虎机是一种赌博机器,每台老虎机有若干手柄,拉动其中一根手柄,老虎机将会吐出一些金币。
  • 每根手柄每次吐出的金币数是随机的,但是遵循一个固定但对赌徒未知的概率分布。
  • 赌徒一共有N次机会,他希望找到一个最优策略使他能获得的金币数最多。

朴素解法

  • 将 N 次划分成 [[exploration and exploitation]] 两个阶段 #card
    • 先探索,也就是将每根手柄拉动 nn 次,统计 Rˉ(i)\bar{R}(i) 为拉动第 1 根手柄 nn 次所得到的平均收益。
    • 再开发,赌徒找到平均收益最大的那根手柄 amax=argmaxiRˉ(i)a_{\max }=\operatorname{argmax}_i \bar{R}(i) ,然后将剩余的机会全部用来拉动 amax a_{\text {max }}
  • 朴素Bandit算法的缺点在于前期探索的次数很难设置 #card
    • 如果前期每个手柄探索的次数太少,统计出来的每根手柄的平均收益 Rˉ\bar{R} 误差大,导致探索出来的最优手柄的置信度太低,后期开发阶段可能陷入某个次优方案而不自知。
    • 如果前期每根手柄探索的次数太多,每根手柄的平均收益 Rˉ\bar{R} 会准确些,探索出来的最优手柄的置信度会高些,但此时留给"开发"的拉动机会就不多了。

Epsilon Greedy

  • 将探索与开发按照一定概率交替进行,在找到当前最优手柄的同时就充分加以开发利用,以最大化总收益。#card
    image.png

Decay Epsilon Greedy

  • 让决定是否探索的门槛值 ϵ\epsilon 随时间衰减。#card
    • 前期 ϵ\epsilon 较大,算法有更多的机会去探索各手柄的收益。
    • 随着尝试次数变多,统计出来的 Rˉ\bar{R} 更加准确,找到的最优手柄 amax a_{\text {max }} 的置信度更高。
      • 此时 ϵ\epsilon 也变小了,鼓励算法充分利用 amax a_{\text {max }} 赚取最大收益,而非浪费机会在不必要的探索上。

网络回响

作者

Ryen Xiang

发布于

2026-02-17

更新于

2026-02-17

许可协议


评论