Non-Negative Conjugate Gradients
Abstract
The conjugate gradient method (CG) solves a symmetric positive definite (SPD) system , but does not respect . We develop non-negative conjugate gradients, a solver for the bound-constrained quadratic subject to , , , with present only in the equality-augmented variant. The solver wraps CG in a primal-dual active-set loop: each step solves the unconstrained system over the free variables, drops variables that turn negative, re-admits any bound variable with negative reduced gradient, and restarts CG. These toggles are the principal pivots of the linear complementarity problem , well defined since is a -matrix. Termination uses the block-principal-pivoting construction of J\'udice and Pires, with a least-index Bland fallback, reaching the unique global minimiser in finitely many outer steps. Our contribution carries this guarantee to the inexact, matrix-free regime the Krylov inner solve requires: once CG's residual is tied to the decision margin, the approximate loop makes the same primal and dual sign decisions as the exact one, and a direct factorisation may replace CG unchanged. Each inner solve is matrix-free: for , the operator needs two products with , no storage, and retains CG's rate, . Regularisation or preconditioning that compresses the spectrum lowers the iteration count; a ridge/Tikhonov split also secures the needed -matrix property. A loop-free projected-gradient reference method, analysed alongside, converges at the slower rate. On synthetic SPD problems the loop reaches the planted optimum in at most 6 outer steps, and with a direct free-set solve outpaces Lawson--Hanson and an interior-point solver by an order of magnitude on dense instances.
Cite
@article{arxiv.2607.22121,
title = {Non-Negative Conjugate Gradients},
author = {Thomas Schmelzer and Martin Stoll},
journal= {arXiv preprint arXiv:2607.22121},
year = {2026}
}