Simultaneous parameter tuning for the MDP lower bound
OpenBanditAlgorithm.arena_lower_bound_parameter_choiceThe parameter tuning of the MDP lower bound, isolated as a self-contained statement about real numbers.
The lower-bound construction has many free parameters: the restart probability , the planted advantage , a truncation level , a scale , and constants . The change-of-measure step imposes a long list of compatibility constraints among them, and the point of this lemma is that the constraints are simultaneously satisfiable, with enough room left over to reach the target rate.
Given the structural data of the construction — states, actions, a tree of depth with , and leaves with , so that the family has members — and given a horizon with and a diameter budget , one may choose the parameters so that every constraint holds and, simultaneously,
The second inequality is the diameter budget: an episode costs steps of descent, one gamble and a sojourn of mean , and the diameter is four such episodes. The first says the main term of Step 2 survives after subtracting the transient cost of one episode.
A witnessing choice is with , then , , , , , and .
Two features of this choice deserve comment. First, must be capped at and not simply set to the largest value the diameter allows: the net bound is unimodal in , so saturating the diameter budget overshoots the optimum and can make the bound vacuous. Second, is a free scale and not the diameter itself; taking makes the truncation, calibration and upper-bound constraints hold with equality, which is what leaves the whole slack available for the rate.
import Mathlib.Data.Real.Sqrt import Mathlib.Analysis.SpecialFunctions.Log.Basic open scoped NNReal
theorem BanditAlgorithm.arena_lower_bound_parameter_choice
(S A n L d k : ℕ) (D : ℝ)
(hS : 3 ≤ S) (hA : 2 ≤ A)
(hD : 20 * (1 + Real.log S / Real.log A) ≤ D)
(hn : D * S * A ≤ (n : ℝ))
(hdep : A ^ d < A * (S - 2)) (hL : S - 2 ≤ 3 * L + 1) (hL1 : 1 ≤ L)
(hk : k = L * A) :
∃ (δ Δ : ℝ≥0) (N : ℕ) (ε c₁ c₂ c₃ Dsc : ℝ),
δ ≤ 1 ∧ (0 : ℝ) < δ ∧ Δ ≤ 1 / 4 ∧ Δ ≤ 1 / 2 ∧
2 ≤ k ∧ 0 < n ∧ 0 < N ∧ 0 < Dsc ∧ 0 < c₁ ∧ 0 < c₂ ∧ 0 < c₃ ∧
(N : ℝ) ≤ n / Dsc ∧ c₃ * Dsc ≤ 1 / (δ : ℝ) ∧
c₁ * n / Dsc ≤ (1 - ε) * N ∧
((n : ℝ) + 1 / (δ : ℝ)) / (1 / (δ : ℝ) + d + 1) ≤ c₂ * n / Dsc ∧
d + N * (d + 2) ≤ n ∧
(2 : ℝ) ^ N ≤ ε * (1 + (δ : ℝ)) ^ N * (1 + (δ : ℝ) / 2) ^ (n - d - N * (d + 2)) ∧
(Δ : ℝ) = c₁ * ((k : ℝ) - 1) / 2 * Real.sqrt (Dsc / (2 * c₂ * n * k)) ∧
4 * (1 / (δ : ℝ) + d + 1) ≤ D ∧
(1 / 12500) * Real.sqrt (D * S * A * n)
≤ c₁ ^ 2 * c₃ / 16 * Real.sqrt (Dsc * k * n / (2 * c₂))
- (1 / 2 + (Δ : ℝ)) / (δ : ℝ) := by
sorry