Efficient LP warmstarting for linear modifications of the constraint matrix
We consider the problem of computing the optimal solution and objective of a linear program under linearly changing linear constraints. The problem studied is given by $\min c^t x \text{ s.t } Ax + λDx \leq b$ where $λ$ belongs to a set of predefined values $Λ$. Based on the information given by a precomputed basis, we present three efficient LP warm-starting algorithms. Each algorithm is either based on the eigenvalue decomposition, the Schur decomposition, or a tweaked eigenvalue decomposition to evaluate the optimal solution and optimal objective of these problems. The three algorithms have an overall complexity $O(pm^2+pmn)$ where $m$ (resp. $n$) is the number of constraints (resp. variables) of the original problem and $p$ the number of values in $Λ$ after an initial preprocessing step. We also provide theorems related to the optimality conditions to verify when a basis is still optimal and a local bound on the objective.
💡 Research Summary
The paper addresses the computational challenge of repeatedly solving a linear program (LP) whose constraint matrix changes linearly with a parameter λ, i.e., min cᵀx subject to Ax + λDx ≤ b, for a finite set Λ of λ‑values. Assuming that an optimal basis B for the nominal problem (λ = 0) is already known (as is typical after a first LP solve), the authors develop three exact warm‑starting algorithms that reuse this basis to obtain the optimal basic solution x_B(λ) and the optimal objective o*(λ) for every λ∈Λ without solving a full LP each time.
The central observation is that the basic variables satisfy x_B(λ) = (A_B + λD_B)⁻¹b. By rewriting (A_B + λD_B)⁻¹ = A_B⁻¹(I + λA_B⁻¹D_B)⁻¹, the problem reduces to efficiently computing (I + λE_B)⁻¹ where E_B = A_B⁻¹D_B. Three matrix‑decomposition strategies are proposed:
-
Eigenvalue decomposition (diagonalizable case). If E_B can be diagonalized, E_B = QΣQ⁻¹, then (I + λE_B)⁻¹ = Q(I + λΣ)⁻¹Q⁻¹. Since (I + λΣ)⁻¹ is diagonal, each λ requires only O(m) operations after a one‑time O(m^ω) eigen‑decomposition and O(m²) pre‑computations of Q⁻¹x_B(0) and c_BQ. The objective is obtained via a simple vector‑vector product.
-
Schur decomposition (general case). When E_B is not diagonalizable, the Schur factorization E_B = QUQᴴ (U upper‑triangular) is used. (I + λU)⁻¹ remains upper‑triangular, so solving (I + λU)v = Qᴴx_B(0) by back‑substitution costs O(m²) per λ, and the objective follows with another O(m²) multiplication.
-
Tuned eigenvalue decomposition. To avoid the Schur step, the authors embed E_B into a (m+1)×(m+1) matrix F =
Comments & Academic Discussion
Loading comments...
Leave a Comment