Table of Contents
Fetching ...

An Operator Splitting Method for Large-Scale CVaR-Constrained Quadratic Programs

Eric Luxenberg, David Pérez-Piñeiro, Steven Diamond, Stephen Boyd

TL;DR

This work tackles the bottleneck of solving CVaR-constrained quadratic programs with a huge number of scenarios by combining an ADMM framework with a specialized $O(m\log m)$ CVaR projection. The method alternates between solving a linear system and projecting onto CVaR constraints and box constraints, leveraging a fast projection algorithm and adaptive penalty updates to accelerate convergence. Key contributions include the exact $O(m\log m)$ CVaR projection algorithm, an ADMM-based large-scale solver (CVQP) with warm starts and equilibration considerations, and extensive demonstrations on portfolio optimization and quantile regression problems with up to millions of scenarios. The results show orders-of-magnitude speedups over general-purpose solvers and provide open-source software, enabling practical risk-aware optimization in large-scale settings.

Abstract

We introduce a fast and scalable method for solving quadratic programs with conditional value-at-risk (CVaR) constraints. While these problems can be formulated as standard quadratic programs, the number of variables and constraints grows linearly with the number of scenarios, making general-purpose solvers impractical for large-scale problems. Our method combines operator splitting with a specialized $O(m\log m)$ algorithm for projecting onto CVaR constraints, where $m$ is the number of scenarios. The method alternates between solving a linear system and performing parallel projections: onto CVaR constraints using our specialized algorithm and onto box constraints with a closed-form solution. Numerical examples from several application domains demonstrate that our method outperforms general-purpose solvers by several orders of magnitude on problems with up to millions of scenarios. Our method is implemented in an open-source package called CVQP.

An Operator Splitting Method for Large-Scale CVaR-Constrained Quadratic Programs

TL;DR

This work tackles the bottleneck of solving CVaR-constrained quadratic programs with a huge number of scenarios by combining an ADMM framework with a specialized CVaR projection. The method alternates between solving a linear system and projecting onto CVaR constraints and box constraints, leveraging a fast projection algorithm and adaptive penalty updates to accelerate convergence. Key contributions include the exact CVaR projection algorithm, an ADMM-based large-scale solver (CVQP) with warm starts and equilibration considerations, and extensive demonstrations on portfolio optimization and quantile regression problems with up to millions of scenarios. The results show orders-of-magnitude speedups over general-purpose solvers and provide open-source software, enabling practical risk-aware optimization in large-scale settings.

Abstract

We introduce a fast and scalable method for solving quadratic programs with conditional value-at-risk (CVaR) constraints. While these problems can be formulated as standard quadratic programs, the number of variables and constraints grows linearly with the number of scenarios, making general-purpose solvers impractical for large-scale problems. Our method combines operator splitting with a specialized algorithm for projecting onto CVaR constraints, where is the number of scenarios. The method alternates between solving a linear system and performing parallel projections: onto CVaR constraints using our specialized algorithm and onto box constraints with a closed-form solution. Numerical examples from several application domains demonstrate that our method outperforms general-purpose solvers by several orders of magnitude on problems with up to millions of scenarios. Our method is implemented in an open-source package called CVQP.

Paper Structure

This paper contains 42 sections, 43 equations, 3 figures.

Figures (3)

  • Figure 1: CVaR projection solve times versus number of scenarios $m$, with $\tau=0.5$.
  • Figure 2: Solve times versus number of scenarios $m$ for portfolio optimization problem.
  • Figure 3: Solve times versus number of scenarios $m$ for quantile regression problem.