CCOpt: an Open-Source Solver for Large-Scale Mathematical Programs with Complementarity Constraints
Pith reviewed 2026-05-10 03:50 UTC · model grok-4.3
The pith
CCOpt couples relaxation or penalty parameters to the barrier parameter inside an interior-point solver to handle large-scale mathematical programs with complementarity constraints up to an order of magnitude faster.
A machine-rendered reading of the paper's core claim, the machinery that carries it, and where it could break.
Core claim
CCOpt implements a toolbox of relaxation and penalty algorithms for MPCCs inside a nonlinear interior-point framework that couples the relaxation or penalty parameter to the barrier parameter via monotone and nonmonotone strategies; additional regularization improves KKT conditioning for small parameter values. The resulting solver is released with interfaces for Julia, Matlab, Python, and C++ and demonstrates order-of-magnitude speedups on standard and large-scale engineering test sets.
What carries the argument
Joint update of the relaxation or penalty parameter together with the barrier parameter, plus KKT regularization, inside a primal-dual interior-point iteration.
If this is right
- Relaxation and penalty reformulations become practical for large-scale MPCCs arising in optimal power flow and model predictive control.
- Monotone and nonmonotone joint-parameter updates both preserve robustness while delivering speed gains.
- KKT regularization stabilizes the linear algebra step when relaxation parameters approach zero.
- Open-source release with multi-language interfaces enables direct use in existing modeling pipelines.
- The observed performance advantage holds across classical MacMPEC benchmarks and application-derived problems.
Where Pith is reading between the lines
- The same coupling idea could be tested on other classes of degenerate problems such as mathematical programs with equilibrium constraints.
- Embedding CCOpt inside automated modeling environments might reveal whether the speedups scale to even larger stochastic or robust variants.
- Application-specific tuning of the monotone versus nonmonotone update rule could further reduce solve times in real-time control settings.
- The regularization technique might transfer to barrier methods for other ill-conditioned nonlinear programs outside the MPCC setting.
Load-bearing premise
Linking the relaxation or penalty parameter to the barrier parameter and applying the proposed regularization will reliably improve numerical conditioning and runtime on diverse large MPCC instances without introducing instability or loss of accuracy.
What would settle it
A collection of MPCC instances on which the coupled-parameter strategy plus regularization either increases runtime by more than a factor of two or yields solutions with measurably higher constraint violation than standard uncoupled implementations.
read the original abstract
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.
Editorial analysis
A structured set of objections, weighed in public.
Referee Report
Summary. The paper presents CCOpt, a Julia package built on MadNLP for solving large-scale MPCCs. It implements relaxation and penalty methods with the relaxation/penalty parameter coupled to the barrier parameter, regularization of the KKT system for small parameter values, monotone and nonmonotone update strategies, and a crossover to active-set methods. Interfaces are provided for Matlab, Python, and C++. The approach is validated on the MacMPEC benchmark, security-constrained optimal power flow (SCOPF), optimal control of nonsmooth systems, and MPC-derived QPs with complementarity constraints, claiming order-of-magnitude speedups over other solvers including commercial ones.
Significance. An open-source, multi-language MPCC solver with demonstrated practical performance on engineering-scale problems (power flow, control) would be a useful addition to the optimization toolkit. The coupling of parameters and regularization address known degeneracy issues in MPCC reformulations; if the speedups are robustly shown to arise from these mechanisms rather than solver-specific details, the work offers both a usable tool and methodological insight into interior-point handling of complementarity.
major comments (2)
- [Numerical results] Numerical results (benchmarking on MacMPEC, SCOPF, MPC sets): The abstract and introduction attribute the 'algorithmically driven improvement of often an entire order of magnitude' to coupling the relaxation/penalty parameter with the barrier parameter plus KKT regularization. However, the reported timings compare primarily against external solvers and standard (uncoupled) baselines that differ in multiple respects (linear algebra, step acceptance, etc.). Direct within-MadNLP ablations (coupled vs. uncoupled relaxation/penalty on identical instances) are needed to isolate the contribution of the coupling; without them the central performance claim cannot be substantiated.
- [Algorithm description] Algorithm section on regularization: The proposed regularization improves conditioning for small relaxation parameters and is claimed to enhance robustness. The manuscript should report quantitative checks that this does not change the computed solutions or introduce new failure modes, e.g., by tabulating objective-value differences, constraint violations, or success rates with vs. without regularization on the SCOPF and MPC test sets.
minor comments (2)
- [Algorithm description] Clarify in the text which of the monotone or nonmonotone joint-parameter update strategies is the default/recommended setting for the reported benchmarks.
- [Numerical results] Ensure all test instances (dimensions, sources, complementarity structure) are fully documented in a table or appendix to support reproducibility.
Simulated Author's Rebuttal
We thank the referee for the careful and constructive review of our manuscript. The comments identify key areas where additional evidence can strengthen the presentation of our algorithmic contributions and numerical results. We address each major comment below and will revise the manuscript accordingly.
read point-by-point responses
-
Referee: [Numerical results] Numerical results (benchmarking on MacMPEC, SCOPF, MPC sets): The abstract and introduction attribute the 'algorithmically driven improvement of often an entire order of magnitude' to coupling the relaxation/penalty parameter with the barrier parameter plus KKT regularization. However, the reported timings compare primarily against external solvers and standard (uncoupled) baselines that differ in multiple respects (linear algebra, step acceptance, etc.). Direct within-MadNLP ablations (coupled vs. uncoupled relaxation/penalty on identical instances) are needed to isolate the contribution of the coupling; without them the central performance claim cannot be substantiated.
Authors: We appreciate the referee highlighting this point. While the manuscript compares against standard (uncoupled) implementations and external solvers, we agree that direct ablations within the identical MadNLP framework are the most rigorous way to isolate the effect of the coupling. In the revised manuscript we will add new numerical experiments performing coupled versus uncoupled runs on the same MacMPEC, SCOPF, and MPC instances, keeping all other solver components (linear algebra, step acceptance, etc.) fixed. These results will be presented in an expanded numerical section to substantiate the algorithmic contribution of the coupling strategy. revision: yes
-
Referee: [Algorithm description] Algorithm section on regularization: The proposed regularization improves conditioning for small relaxation parameters and is claimed to enhance robustness. The manuscript should report quantitative checks that this does not change the computed solutions or introduce new failure modes, e.g., by tabulating objective-value differences, constraint violations, or success rates with vs. without regularization on the SCOPF and MPC test sets.
Authors: We agree that quantitative verification of the regularization's effect on solution quality and robustness is important. In the revised manuscript we will add a dedicated table (or subsection) reporting objective-value differences, maximum constraint violations, and success rates for the SCOPF and MPC test sets with and without the proposed KKT regularization. These checks will confirm that the regularization improves conditioning and robustness while preserving the computed solutions to within acceptable numerical tolerances. revision: yes
Circularity Check
No circularity; empirical implementation and benchmarking against external test sets
full rationale
The paper describes an open-source Julia package implementing relaxation, penalty, and regularization techniques for MPCCs inside the existing MadNLP interior-point solver, with validation on the independent MacMPEC, SCOPF, and MPC benchmark collections. All performance claims are presented as direct runtime and robustness comparisons to external solvers and methods on these fixed test instances; no equation or result is shown to reduce by construction to a parameter fitted inside the paper itself, nor does any central claim rest on a self-citation chain that would be required to close the argument. The work is therefore self-contained as an engineering artifact evaluated against outside benchmarks.
Axiom & Free-Parameter Ledger
axioms (1)
- domain assumption Interior-point methods remain applicable to MPCCs after relaxation or penalty reformulation despite violation of classical constraint qualifications at feasible points.
Reference graph
Works this paper leans on
-
[1]
J. A. E. Andersson, J. Gillis, G. Horn, J. B. Rawlings, and M. Diehl , CasADi -- a software framework for nonlinear optimization and optimal control , Mathematical Programming Computation, 11 (2019), pp. 1--36
work page 2019
-
[2]
M. Anitescu , G lobal convergence of an elastic mode approach for a class of mathematical programs with complementarity constraints , SIAM Journal on Optimization, 16 (2005), pp. 120--145
work page 2005
-
[3]
M. Anitescu, P. Tseng, and S. J. Wright , Elastic-mode algorithms for mathematical programs with equilibrium constraints: global convergence and stationarity properties , Mathematical programming, 110 (2007), pp. 337--371
work page 2007
-
[4]
I. Aravena, D. K. Molzahn, S. Zhang, C. G. Petra, F. E. Curtis, S. Tu, A. W \"a chter, E. Wei, E. Wong, A. Gholami, et al. , Recent developments in security-constrained AC optimal power flow: Overview of challenge 1 in the ARPA-E grid optimization competition , Operations research, 71 (2023), pp. 1997--2014
work page 2023
- [5]
-
[6]
B. Baumrucker, J. G. Renfro, and L. T. Biegler , MPEC problem formulations and solution strategies with chemical engineering applications , Computers & Chemical Engineering, 32 (2008), pp. 2903--2913
work page 2008
-
[7]
R. H. Byrd, J. Nocedal, and R. A. Waltz , KNITRO : An integrated package for nonlinear optimization , in Large Scale Nonlinear Optimization, G. Pillo and M. Roma, eds., Springer Verlag, 2006, pp. 35--59
work page 2006
-
[8]
B. Chen, X. Chen, and C. Kanzow , A penalized F ischer- B urmeister NCP -function , Mathematical Programming, 88 (2000), pp. 211--216
work page 2000
-
[9]
B. Chen and T. Harker , A non-interior-point continuation method for linear complementarity problems , SIAM Journal on Matrix Analysis, (1993), pp. 1168--1190
work page 1993
-
[10]
V. DeMiguel, M. P. Friedlander, F. J. Nogales, and S. Scholtes , A two-sided relaxation scheme for mathematical programs with equilibrium constraints , SIAM Journal on Optimization, 16 (2005), pp. 587--609
work page 2005
-
[11]
I. Duff , MA57 --- a code for the solution of sparse symmetric definite and indefinite systems , ACM Transactions on Mathematical Software, 30 (2004), pp. 118--144
work page 2004
-
[12]
I. S. Duff and J. K. Reid , MA 27 -- a set of fortran subroutines for solving sparse symmetric sets of linear equations , 1982
work page 1982
-
[13]
F. Facchinei and J.-S. Pang , Finite-dimensional variational inequalities and complementarity problems , vol. 1-2, Springer-Verlag, 2003
work page 2003
-
[14]
M. Feng, J. J. Mitchell, J. S. Pang, X. Shen, and A. Waechter , Complementarity formulations of _0 -norm optimization , Pacific Journal of Optimization, 14 (2018), pp. 273--305
work page 2018
-
[15]
H. J. Ferreau, C. Kirches, A. Potschka, H. G. Bock, and M. Diehl , qpOASES : a parametric active-set algorithm for quadratic programming , Mathematical Programming Computation, 6 (2014), pp. 327--363
work page 2014
-
[16]
M. L. Flegel and C. Kanzow , Abadie-type constraint qualification for mathematical programs with equilibrium constraints , Journal of Optimization Theory and Applications, 124 (2005), pp. 595--614
work page 2005
-
[17]
R. Fletcher, S. Leyffer, D. Ralph, and S. Scholtes , L ocal C onvergence of SQP M ethods for M athematical P rograms with E quilibrium C onstraints , SIAM Journal on Optimization, 17 (2006), pp. 259--286
work page 2006
-
[18]
M. Fukushima and G.-H. Lin , Smoothing methods for mathematical programs with equilibrium constraints , in International Conference on Informatics Research for Development of Knowledge Society Infrastructure, 2004. ICKS 2004., IEEE, 2004, pp. 206--213
work page 2004
-
[19]
J. Gauvin , A necessary and sufficient regularity condition to have bounded multipliers in nonconvex programming , Mathematical Programming, 12 (1977), pp. 136--138
work page 1977
-
[20]
Gurobi Optimization, LLC , Gurobi Optimizer Reference Manual , 2022
work page 2022
-
[21]
J. Hall, A. Nurkanovi \'c , F. Messerer, and M. Diehl , LCQPow : a solver for linear complementarity quadratic programs , Mathematical Programming Computation, (2024)
work page 2024
-
[22]
L. C. Hegerhorst-Schultchen, C. Kirches, and M. C. Steinbach , On the relation between MPECs and optimization problems in abs-normal form , Optimization Methods and Software, 35 (2020), pp. 560--575
work page 2020
-
[23]
T. Hoheisel, C. Kanzow, and A. Schwartz , Theoretical and numerical comparison of relaxation methods for mathematical programs with complementarity constraints , Mathematical Programming, 137 (2013), pp. 257--288
work page 2013
-
[24]
Q. Huangfu and J. J. Hall , Parallelizing the dual revised simplex method , Mathematical Programming Computation, 10 (2018), pp. 119--142
work page 2018
-
[25]
A. F. Izmailov and M. V. Solodov , An active-set newton method for mathematical programs with complementarity constraints , SIAM Journal on Optimization, 19 (2008), pp. 1003--1027
work page 2008
-
[26]
J. Y. Jane , Necessary and sufficient optimality conditions for mathematical programs with equilibrium constraints , Journal of Mathematical Analysis and Applications, 307 (2005), pp. 350--369
work page 2005
-
[27]
H. Jiang and D. Ralph , Qpecgen, a matlab generator for mathematical programs with quadratic objectives and affine variational inequality constraints , Computational Optimization and Applications, 13 (1999), pp. 25--59
work page 1999
-
[28]
A. Kadrani, J.-P. Dussault, and A. Benchakroun , A new regularization scheme for mathematical programs with complementarity constraints , SIAM Journal on Optimization, 20 (2009), pp. 78--103
work page 2009
-
[29]
C. Kanzow and A. Schwartz , A new regularization method for mathematical programs with complementarity constraints with strong convergence properties , SIAM Journal on Optimization, 23 (2013), pp. 770--798
work page 2013
- [30]
- [31]
-
[32]
S. R. Kazi, M. Thombre, and L. Biegler , Globally convergent method for optimal control of hybrid dynamical systems , IFAC-PapersOnLine, 58 (2024), pp. 868--873
work page 2024
-
[33]
Y. Kim, S. Leyffer, and T. Munson , MPEC methods for bilevel optimization problems , in Bilevel Optimization, Springer, 2020, pp. 335--360
work page 2020
-
[34]
Leyffer , Mac MPEC : Ampl collection of MPEC s
S. Leyffer , Mac MPEC : Ampl collection of MPEC s . Argonne National Laboratory, 2000
work page 2000
-
[35]
S. Leyffer , Complementarity constraints as nonlinear equations: Theory and numerical experience , in Optimization with Multivalued Mappings, Springer, 2006, pp. 169--208
work page 2006
-
[36]
S. Leyffer, G. L \'o pez-Calva, and J. Nocedal , Interior methods for mathematical programs with complementarity constraints , SIAM Journal on Optimization, 17 (2006), pp. 52--77
work page 2006
- [37]
- [38]
- [39]
-
[40]
Z. Luo, J. Pang, and D. Ralph , M athematical P rograms with E quilibrium C onstraints , Cambridge U niversity P ress, Cambridge, 1996
work page 1996
-
[41]
J. Nocedal, A. W \"a chter, and R. A. Waltz , Adaptive barrier update strategies for nonlinear interior methods , SIAM Journal on Optimization, 19 (2009), pp. 1674--1693
work page 2009
-
[42]
J. Nocedal and S. J. Wright , Numerical Optimization , Springer Series in Operations Research and Financial Engineering, Springer, 2 ed., 2006
work page 2006
-
[43]
A. Nurkanovi \'c , Numerical Methods for Optimal Control of Nonsmooth Dynamical Systems , PhD thesis, University of Freiburg, 2023
work page 2023
-
[44]
A. Nurkanovi\'c, S. Albrecht, and M. Diehl , Limits of MPCC F ormulations in D irect O ptimal C ontrol with N onsmooth D ifferential E quations , in 2020 European Control Conference (ECC), 2020, pp. 2015--2020
work page 2020
-
[45]
A. Nurkanovi\'c and M. Diehl , Continuous optimization for control of hybrid systems with hysteresis via time-freezing , IEEE Control Systems Letters, 6 (2022), pp. 3182--3187
work page 2022
-
[46]
height 2pt depth -1.6pt width 23pt, NOSNOC : A software package for numerical optimal control of nonsmooth systems , IEEE Control Systems Letters, 6 (2022), pp. 3110--3115
work page 2022
-
[47]
A. Nurkanovi \'c and S. Leyffer , A globally convergent method for computing B -stationary points of mathematical programs with equilibrium constraints , arXiv preprint arXiv:2501.13835, (2025)
-
[48]
A. Nurkanovi \'c , A. Pozharskiy, and M. Diehl , Solving mathematical programs with complementarity constraints arising in nonsmooth optimal control , Vietnam Journal of Mathematics, (2024), pp. 1--39
work page 2024
-
[49]
height 2pt depth -1.6pt width 23pt, Real-time algorithms for model predictive control of hybrid dynamical systems , arXiv preprint, (2026)
work page 2026
-
[50]
A. Nurkanovi\'c , M. Sperl , S. Albrecht , and M. Diehl , F inite E lements with S witch D etection for D irect O ptimal C ontrol of N onsmooth S ystems , Numerische Mathematik, (2024), pp. 1--48
work page 2024
- [51]
-
[52]
J. Outrata , O ptimality C onditions for a C lass of M athematical P rograms with E quilibrium C onstraints , Math. Oper. Res., 24 (1999), pp. 627--644
work page 1999
-
[53]
J. Outrata, M. Kocvara, and J. Zowe , Nonsmooth approach to optimization problems with equilibrium constraints: theory, applications and numerical results , vol. 28, Springer Science & Business Media, 2013
work page 2013
- [54]
-
[55]
A. Pozharskiy , Evaluating methods for solving mathematical programs with complementarity constraints arising from nonsmooth optimal control. , Master's thesis, Albert-Ludwigs-University Freiburg, 2023
work page 2023
-
[56]
A. Raghunathan and L. Biegler , M athematical programs with equilibrium constraints ( MPECs ) in process engineering , Computers and Chemical Engineering, 27 (2003), pp. 1381--1392
work page 2003
-
[57]
A. U. Raghunathan and L. T. Biegler , An interior point method for mathematical programs with complementarity constraints ( MPCCs ) , SIAM Journal on Optimization, 15 (2005), pp. 720--750
work page 2005
-
[58]
D. Ralph and S. J. Wright , Some properties of regularization and penalization schemes for MPECs , Optimization Methods and Software, 19 (2004), pp. 527--556
work page 2004
-
[59]
S. Regev, N.-Y. Chiang, E. Darve, C. G. Petra, M. A. Saunders, K. \'S wirydowicz, and S. Pele s , HyKKT : a hybrid direct-iterative method for solving KKT linear systems , Optimization Methods and Software, 38 (2023), pp. 332--355
work page 2023
-
[60]
H. Scheel and S. Scholtes , M athematical programs with complementarity constraints: S tationarity, optimality, and sensitivity , Math. Oper. Res., 25 (2000), pp. 1--22
work page 2000
-
[61]
S. Scholtes , Convergence properties of a regularization scheme for mathematical programs with complementarity constraints , SIAM Journal on Optimization, 11 (2001), pp. 918--936
work page 2001
-
[62]
D. F. Shanno and R. J. Vanderbei , Interior-point methods for nonconvex nonlinear programming: orderings and higher-order methods , Mathematical Programming, 87 (2000), pp. 303--316
work page 2000
-
[63]
S. Shin, M. Anitescu, and F. Pacaud , Accelerating optimal power flow with GPU s: SIMD abstraction of nonlinear programs and condensed-space interior-point methods , Electric Power Systems Research, 236 (2024), p. 110651
work page 2024
-
[64]
S. Siddiqui and S. A. Gabriel , An SOS1 -based approach for solving MPECs with a natural gas market application , Networks and Spatial Economics, 13 (2013), pp. 205--227
work page 2013
-
[65]
S. Steffensen and M. Ulbrich , A new relaxation scheme for mathematical programs with equilibrium constraints , SIAM Journal on Optimization, 20 (2010), pp. 2504--2539
work page 2010
-
[66]
B. Stellato, G. Banjac, P. Goulart, A. Bemporad, and S. Boyd , OSQP : An operator splitting solver for quadratic programs , Mathematical Programming Computation, 12 (2020), pp. 637--672
work page 2020
-
[67]
D. E. Stewart , A numerical method for friction problems with multiple contacts , The ANZIAM Journal, 37 (1996), pp. 288--308
work page 1996
- [68]
-
[69]
R. J. Vanderbei , Loqo: An interior point code for quadratic programming , Optimization methods and software, 11 (1999), pp. 451--484
work page 1999
-
[70]
R. Verschueren, G. Frison, D. Kouzoupis, J. Frey, N. van Duijkeren, A. Zanelli, B. Novoselnik, T. Albin, R. Quirynen, and M. Diehl , acados -- a modular open-source framework for fast embedded optimal control , Mathematical Programming Computation, (2021), pp. 147--183
work page 2021
-
[71]
L. N. Vicente and S. J. Wright , Local convergence of a primal-dual method for degenerate nonlinear programming , Computational Optimization and Applications, 22 (2002), pp. 311--328
work page 2002
-
[72]
A. W\"achter and L. Biegler , IPOPT - an I nterior P oint OPT imizer . https://projects.coin-or.org/Ipopt, 2009
work page 2009
-
[73]
A. W \"a chter and L. T. Biegler , Line search filter methods for nonlinear programming: Motivation and global convergence , SIAM Journal on Optimization, 16 (2005), pp. 1--31
work page 2005
-
[74]
A. W\"achter and L. T. Biegler , L ine S earch F ilter M ethods for N onlinear P rogramming: L ocal C onvergence , SIAM Journal on Optimization, 16 (2006), pp. 32--48
work page 2006
-
[75]
height 2pt depth -1.6pt width 23pt, On the implementation of an interior-point filter line-search algorithm for large-scale nonlinear programming , Mathematical Programming, 106 (2006), pp. 25--57
work page 2006
- [76]
-
[77]
K. Wang and L. Biegler , MPCC strategies for nonsmooth nonlinear programs , Optimization and Engineering, 24 (2023), pp. 1883--1929
work page 2023
-
[78]
P. M. Wensing, M. Posa, Y. Hu, A. Escande, N. Mansard, and A. Del Prete , Optimization-based control for dynamic legged robots , IEEE Transactions on Robotics, (2023)
work page 2023
discussion (0)
Sign in with ORCID, Apple, or X to comment. Anyone can read and Pith papers without signing in.