Finite UCB bound implies the asymptotic limsup constant
ProvedBanditAlgorithm.asymptotic_ucb_finite_bound_limsupLet be any real sequence and let be finitely many gaps. Assume that for every horizon and every armwise choice , obeys the finite-time bound in Eq. (8.1) with . Then
This isolates the purely analytic final step of Theorem 8.1: choose once it is smaller than every positive gap, divide by , and let tend to infinity. Zero or nonpositive gaps are excluded by the same finite filter as in the source, including the empty-filter boundary case.
Preamble
import Definitions.Def_asymptoticUcbPolicy open Filter
Formal statement
theorem BanditAlgorithm.asymptotic_ucb_finite_bound_limsup {k : ℕ}
(R : ℕ → ℝ) (Δ : Fin k → ℝ)
(hR : ∀ (n : ℕ) (ε : Fin k → ℝ),
(∀ i, 0 < Δ i → 0 < ε i ∧ ε i < Δ i) →
R n ≤
∑ i ∈ Finset.univ.filter (fun i ↦ 0 < Δ i),
Δ i *
(1 + 5 / (ε i) ^ 2 +
2 / (Δ i - ε i) ^ 2 *
(Real.log (asymptoticUcbSchedule n) +
Real.sqrt (Real.pi * Real.log (asymptoticUcbSchedule n)) + 1))) :
atTop.limsup (fun n : ℕ ↦ ENNReal.ofReal (R n / Real.log n)) ≤
∑ i ∈ Finset.univ.filter (fun i ↦ 0 < Δ i),
ENNReal.ofReal (2 / Δ i) := by
sorrySource
Lattimore and Szepesvari, Bandit Algorithms (CUP 2020), proof of Theorem 8.1, final sentence on printed p. 120 / PDF p. 129, following Eqs. (8.1)-(8.4): choose epsilon = log(n)^(-1/4) and take the limit.