English

Non-Negative Conjugate Gradients

Optimization and Control 2026-07-24 v1 Numerical Analysis

Abstract

The conjugate gradient method (CG) solves a symmetric positive definite (SPD) system Ax=bAx=b, but does not respect x0x\geq0. We develop non-negative conjugate gradients, a solver for the bound-constrained quadratic minx12xAxbx\min_x \tfrac12 x^\top A x - b^\top x subject to x0x\geq0, Bx=cBx=c, A0A\succ0, with Bx=cBx=c 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 (A,b)(A,-b), well defined since AA is a PP-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 A=MMA=M^\top M, the operator vM(Mv)v\mapsto M^\top(Mv) needs two products with MM, no O(n2)O(n^2) storage, and retains CG's O(κ)O(\sqrt\kappa) rate, κ=κ(A)\kappa=\kappa(A). Regularisation or preconditioning that compresses the spectrum lowers the iteration count; a ridge/Tikhonov split A(1α)A+αRRA\mapsto(1-\alpha)A+\alpha R^\top R also secures the needed PP-matrix property. A loop-free projected-gradient reference method, analysed alongside, converges at the slower O(κ)O(\kappa) 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}
}