CCOpt: an Open-Source Solver for Large-Scale Mathematical Programs with Complementarity Constraints

Fuente: arXiv
Salvato in:
Dettagli Bibliografici
Autori principali: Pozharskiy, Anton, Pacaud, François, Diehl, Moritz, Nurkanović, Armin
Natura: Preprint
Pubblicazione: 2026
Soggetti:
Accesso online:
Tags: Aggiungi Tag
Nessun Tag, puoi essere il primo ad aggiungerne!!
_version_ 1866910156036505600
author Pozharskiy, Anton
Pacaud, François
Diehl, Moritz
Nurkanović, Armin
author_facet Pozharskiy, Anton
Pacaud, François
Diehl, Moritz
Nurkanović, Armin
contents This paper presents the Julia package CCOpt, built on top of the interior-point solver MadNLP. CCOpt implements a suite of algorithms for Mathematical Programs with Complementarity Constraints (MPCCs). The solver additionally comes with interfaces for use in Matlab, Python, and C++. MPCCs have recently gained renewed attention in engineering optimization, as complementarity provides a powerful modeling tool for nonsmooth functions and logical conditions. These problems are inherently challenging since their nonlinear programming reformulations violate classical regularity conditions at all feasible points, complicating both theoretical analysis and numerical treatment. Consequently, specialized algorithms are required to handle this degeneracy, and several approaches have been proposed. We implement a toolbox of methods, including relaxation and penalty approaches, as well as a crossover to recently proposed active-set methods. Our solver is based on nonlinear interior-point algorithms that couple the relaxation or penalty parameter with the barrier parameter, yielding substantial speedups compared to standard implementations. Both monotone and nonmonotone strategies for updating this joint parameter update are proposed and investigated. In addition, we propose regularization techniques that improve the conditioning of the KKT system for small relaxation parameters, enhancing robustness and computational efficiency. The implementation is validated on the classical MacMPEC benchmark, large-scale problems in security-constrained optimal power flow, optimal control of nonsmooth systems, as well as on quadratic programs with complementarity constraints arising in model predictive control. This benchmarking reveals an algorithmically driven improvement of often an entire order of magnitude over other methods, including commercial solvers.
format Preprint
id arxiv_https___arxiv_org_abs_2604_18726
institution arXiv
publishDate 2026
record_format arxiv
spellingShingle CCOpt: an Open-Source Solver for Large-Scale Mathematical Programs with Complementarity Constraints
Pozharskiy, Anton
Pacaud, François
Diehl, Moritz
Nurkanović, Armin
Optimization and Control
90C30 (Primary), 90C33, 90C51 (Secondary)
This paper presents the Julia package CCOpt, built on top of the interior-point solver MadNLP. CCOpt implements a suite of algorithms for Mathematical Programs with Complementarity Constraints (MPCCs). The solver additionally comes with interfaces for use in Matlab, Python, and C++. MPCCs have recently gained renewed attention in engineering optimization, as complementarity provides a powerful modeling tool for nonsmooth functions and logical conditions. These problems are inherently challenging since their nonlinear programming reformulations violate classical regularity conditions at all feasible points, complicating both theoretical analysis and numerical treatment. Consequently, specialized algorithms are required to handle this degeneracy, and several approaches have been proposed. We implement a toolbox of methods, including relaxation and penalty approaches, as well as a crossover to recently proposed active-set methods. Our solver is based on nonlinear interior-point algorithms that couple the relaxation or penalty parameter with the barrier parameter, yielding substantial speedups compared to standard implementations. Both monotone and nonmonotone strategies for updating this joint parameter update are proposed and investigated. In addition, we propose regularization techniques that improve the conditioning of the KKT system for small relaxation parameters, enhancing robustness and computational efficiency. The implementation is validated on the classical MacMPEC benchmark, large-scale problems in security-constrained optimal power flow, optimal control of nonsmooth systems, as well as on quadratic programs with complementarity constraints arising in model predictive control. This benchmarking reveals an algorithmically driven improvement of often an entire order of magnitude over other methods, including commercial solvers.
title CCOpt: an Open-Source Solver for Large-Scale Mathematical Programs with Complementarity Constraints
topic Optimization and Control
90C30 (Primary), 90C33, 90C51 (Secondary)
url https://arxiv.org/abs/2604.18726