Appendix B, pp. 39–40 — Heavy-ball tuned for quadratics, from x₀ = 3.3 on (4.11), converges to the 3-cycle (792, −2208, 2592)/1225
ProvedIQCAlg.HeavyBall.heavy_ball_limit_cyclecounterexamplefirst-order-methodsheavy-balllimit-cyclep2o-batch-pfp2ap2o-gran-per-chapterp2o-plan-paperp2o-v1
Let be the piecewise-linear gradient (4.11), so that and has its unique minimizer at . Run the Heavy-ball method
with the parameters that Proposition 1 shows to be optimal on quadratics for , ,
from with . Then, as ,
The iterates converge to a cycle of period 3, not to the minimizer of : the Heavy-ball method optimized for quadratics does not converge for general , even though every quadratic in this class is handled at the optimal rate. This is the counterexample of Section 4.6, proved in Appendix B.
Formalization Note The sequence is indexed from , so the page's initialization appears as . The parameters are written as in Proposition 1 rather than as and .
Preamble
import Mathlib import Definitions.Def_IQCAlg_HeavyBall_Setting
Formal statement
namespace IQCAlg.HeavyBall
/-- Appendix B, pp. 39–40: the Heavy-ball method with Proposition 1's tuning for
`L = 25`, `m = 1`, run on the gradient (4.11) from `x_0 = 3.3` (with `x_{−1} = x_0`), has
`x_{3n} → 792/1225`, `x_{3n+1} → −2208/1225`, `x_{3n+2} → 2592/1225`: the limit cycle (B.3)
is attractive. -/
theorem heavy_ball_limit_cycle :
Filter.Tendsto (fun n : ℕ => hbRun gradF (hbAlpha 25 1) (hbBeta 25 1) (33 / 10) (3 * n))
Filter.atTop (nhds (792 / 1225)) ∧
Filter.Tendsto (fun n : ℕ => hbRun gradF (hbAlpha 25 1) (hbBeta 25 1) (33 / 10) (3 * n + 1))
Filter.atTop (nhds (-2208 / 1225)) ∧
Filter.Tendsto (fun n : ℕ => hbRun gradF (hbAlpha 25 1) (hbBeta 25 1) (33 / 10) (3 * n + 2))
Filter.atTop (nhds (2592 / 1225)) := by sorry
end IQCAlg.HeavyBall
Source
Lessard, Recht & Packard, Analysis and Design of Optimization Algorithms via Integral Quadratic Constraints, arXiv:1408.3595v7, pp. 39–40, Appendix B, (B.1)–(B.3) and "Therefore, the limit cycle is attractive"; p. 23, Section 4.6
Human review
Confirmed by the mission captain (proposal self-audit).
Confirmed by the moderator at approval.