On Minimizing a Convex Function Subject to Linear Inequalities I: Beale's Simplex Method for a Convex Quadratic Function TerminatesResearch Paper
Motivation
Quadratic programming, the minimization of a convex quadratic function subject to linear constraints, is the simplest nonlinear extension of linear programming. It arises in least-squares estimation with sign constraints, in portfolio selection, and as the subproblem solved at each iteration of Newton-type methods for general smooth convex programs. E. M. L. Beale's 1955 paper (DOI 10.1111/j.2517-6161.1955.tb00191.x) gave one of the first finite algorithms for it by extending Dantzig's simplex method: the method keeps the simplex tableau and adds free variables, linear functions of the original variables with no sign restriction, along which the quadratic stops decreasing.
Timeline:
- 1951: Dantzig publishes the simplex method for linear programming.
- 1952: Charnes introduces ε-perturbations to resolve degeneracy in the simplex method.
- 1955: Beale extends the simplex method to convex quadratic objectives and proves that the iteration terminates (§3 of the paper; the result formalized here).
- 1959: Beale's "On quadratic programming" (Naval Research Logistics Quarterly 6) develops the method further; Wolfe's simplex method for quadratic programming (Econometrica 27) appears the same year.
Setting
There are restricted variables satisfying linearly independent linear equations, and a convex quadratic objective . The iteration keeps nonbasic variables , each either a restricted variable or a free variable, and writes every restricted variable as an affine function of them:
A restricted variable that is not nonbasic is basic. The associated solution sets every , so . The objective is written as
with symmetric. Thus is the value of at the associated solution and is its linear coefficient in . The number of nonbasic free variables is .
One step chooses a nonbasic that can profitably be altered: a free one with if there is one, otherwise a restricted one with . It orients so that it is to be increased, and increases it from . It stops at the first of two events. Either a basic variable reaches (the ratio test (2.4)), and then becomes nonbasic in place of . Or stops decreasing where the free variable vanishes (3.2), and then becomes nonbasic in place of . The coefficients are then transformed by substituting for (eqs. (3.4)–(3.6)). is in standard form when it has no linear term in any free variable.
Formalization targets
Goal: the iteration terminates
From a tableau with symmetric , positive semidefinite quadratic block and consistent labels, there is no infinite run
of steps along which every basic variable stays strictly positive in the associated solution. No bound on the number of steps is claimed, as in the paper.
Milestones
- Eq. (3.7): the closed form of the transformed matrix, its symmetry, and the invariance .
- Lemma 1: when a free variable enters, its row and column vanish off the diagonal, the index included.
- Lemma 2: a slot whose row and column vanish off the diagonal keeps this property when another free variable enters.
- The optimality criterion (p. 175): if no nonbasic variable can profitably be altered and is convex, then is the minimum over the feasible region.
- In standard form, for every with the restricted nonbasic variables at .
- decreases at every step: .
- A finite run never returns to a standard form with the same set of restricted nonbasic variables.
- If is not in standard form and , then within steps either standard form is reached or drops, and never exceeds on the way.
Significance
The theorem makes Beale's method an algorithm: a finite procedure that ends either at an optimal tableau (milestone 4) or with a ray along which decreases without bound. This finiteness is what later active-set methods for quadratic programming inherit.
The result was proved in 1955. What remains is to formalize it: a machine-checked account of a simplex-type method whose state includes variables that are created during the run and later discarded. Mathlib has no simplex-type algorithm for quadratic programming, and no machine-checked proof of this theorem is known. The pivot algebra (3.4)–(3.7) and the tableau model are reusable for other pivoting methods for quadratic programs.
Difficulty
The argument for linear programming does not carry over. There, the objective strictly decreases and a basis is a subset of a finite set of columns, so no basis repeats. Here each step may create a new free variable, and nothing bounds the number of distinct free variables that can occur. Tableaux are therefore not drawn from a finite set, and a strictly decreasing objective alone does not give termination. The paper states this itself: "there is no obvious limit to the number of free variables that may be involved". The difficulty is to bound the number of steps between returns to a well-behaved tableau, and this depends both on the rule that free variables are chosen first and on how the coefficient matrix evolves under repeated pivots.
Formalization scope
- Representation. The nonbasic variables occupy fixed slots
Fin (N+1). Slot0is ; the nonbasic slotk : Fin Nis indexk.succ. A pivot stores the new nonbasic variable in the slot of the variable it replaces, so the paper's index in (3.4)–(3.7) is that slot. The tableau holds the labels (restricted or free), the rows of all restricted variables (a nonbasic one has the unit row), and . Free variables carry no row, as in the paper. - The pivot.
pivotCis computed literally from (3.5) and then (3.6). Rows are transformed by the same substitution, as the paper states. - The step. The step is a relation. It allows any profitable choice of subject to the free-first rule, and at a tie either outcome. No pricing rule is fixed, since the paper fixes none.
- Convexity. Convexity of is the symmetry of plus positive semidefiniteness of the block , assumed on the initial tableau.
- Added hypothesis. The one hypothesis not on the page is that every basic restricted variable is strictly positive in the associated solution of every tableau of the run. It replaces Charnes's ε-perturbations, by which the paper ensures "the are always positive, and not zero". Positivity is required of basic variables only; nonbasic variables are in the associated solution.
- Out of scope. The link to the original equations (2.1) and phase 1 (artificial variables, the M-method) are not formalized: the iteration starts from a tableau already in the form (2.3).
- Ruling out a trivial goal. A step relation that never fires, or a positivity hypothesis that no tableau can meet after a step, would make the goal trivially true. A sorry-free check exhibits a convex instance with consistent labels, a step, and positive basic variables before and after it.
Contributions are welcome on every milestone. The algebraic milestones 1–3 are self-contained.
Selected references
- E. M. L. Beale, On Minimizing a Convex Function Subject to Linear Inequalities, Journal of the Royal Statistical Society, Series B 17(2):173–184, 1955. https://doi.org/10.1111/j.2517-6161.1955.tb00191.x
- A. Charnes, Optimality and Degeneracy in Linear Programming, Econometrica 20(2):160–170, 1952. https://doi.org/10.2307/1907845
- G. B. Dantzig, Maximization of a Linear Function of Variables Subject to Linear Inequalities, in T. C. Koopmans (ed.), Activity Analysis of Production and Allocation, Wiley, 1951, pp. 339–347.
- E. M. L. Beale, On Quadratic Programming, Naval Research Logistics Quarterly 6(3):227–243, 1959. https://doi.org/10.1002/nav.3800060305
- P. Wolfe, The Simplex Method for Quadratic Programming, Econometrica 27(3):382–398, 1959. https://doi.org/10.2307/1909468