KL-UCB optimal-arm underestimation count bound
ProvedBanditAlgorithm.klucb_feasibility_optimal_underestimation_count_boundThis is the optimal-arm underestimation count bound used in the finite-time analysis of KL-UCB.
Consider a Bernoulli bandit with means in , a KL-UCB policy , an optimal arm , a suboptimal arm , and . Along a length- history, count the rounds on which arm is selected and the candidate value is infeasible for arm 's KL-UCB confidence set. Equivalently, after initialization this is the event
where . The expected number of such selected rounds satisfies
This is the bandit-history formulation of Lemma 10.7 and supplies the optimal-arm failure term in the proof of the finite-time KL-UCB regret bound.
Formalization Note klucbFeasibilityFailureCount stores the optimal-arm underestimation count in its first component. The predicate IsKLUCBPolicy is included because the policy's initialization rule is needed to charge at most one selected round before arm has an empirical mean.
import Definitions.Def_klucbFeasibilityFailureCount open MeasureTheory ProbabilityTheory
theorem BanditAlgorithm.klucb_feasibility_optimal_underestimation_count_bound
{k : ℕ} (μvec : Fin k → ℝ)
(hμ : ∀ i, μvec i ∈ Set.Icc (0 : ℝ) 1)
(ν : BanditAlgorithm.StochasticBandit k)
(hν : ν = BanditAlgorithm.bernoulliBandit μvec hμ)
(π : BanditAlgorithm.BanditPolicy k)
(hπ : BanditAlgorithm.IsKLUCBPolicy π)
(n : ℕ) (a i : Fin k) (ε : ℝ)
(ha : BanditAlgorithm.banditArmMean ν a =
BanditAlgorithm.banditOptimalMean ν)
(hε : 0 < ε) (hεgap : ε < BanditAlgorithm.banditGap ν i) :
MeasureTheory.integral (BanditAlgorithm.banditMeasure ν π n)
(fun h ↦
(BanditAlgorithm.klucbFeasibilityFailureCount ν a i ε h).1) ≤
2 / ε ^ 2 := by
sorry