Published November 24, 2025
| Version v3.0.0
Software
Open
scipopt/papilo: v3.0.0
Authors/Creators
- Alexander Hoen1
- Leona Gottwald2
- DominikKamp
- Franziska Schlösser
- Stefan Vigerske3
- JacobvonHolly-Ponientzietz
- Julian Manns
- Matthias Walter4
- Gabi Kressin Palacios5
- Rajesh Gandham6
- Ambros Gleixner7
- Mathieu Besançon8
- Christoph Jabs9
- Jerry James10
- Buh
- Rolf van der Hulst
- Gioni Mexi
- Maxim Smolskiy
- Antoine Prouvost11
- galabovaa
- Lance Roy
- Mohammed Ghannam12
- Suresh Bolusani
- 1. HTW Berlin
- 2. Consultant for the University of Edinburgh, School of Mathematics
- 3. GAMS
- 4. University of Twente
- 5. Johns Hopkins University
- 6. NVIDIA
- 7. HTW and Zuse Institute Berlin
- 8. Inria
- 9. University of Helsinki
- 10. Forcepoint
- 11. QuantStack
- 12. @scipopt
Description
License changes
The license of PaPILO has changed to the Apache License 2.0.
Features
The MPS Parser can now handle maximization problem (OBJSENSE MAX).
Interface changes
New API functions
ProblemBuilder:setColImplIntAll()to set all implied integrality flags at once.PresolveOptions:early_exit_callbackif a calling program wants to forcefully stop PaPILO.
New parameters with default values
cliquemerging.maxedgesparallel = 1000000: maximal number of edges in the graph constructed for parallel clique mergingcliquemerging.maxedgessequential = 100000: maximal number of edges in the graph constructed for sequential clique mergingcliquemerging.maxcliquesize = 100: maximal size of cliques considered for clique mergingcliquemerging.maxgreedycalls = 10000: maximal number of function calls for greedy clique in a single thread in clique mergingcliquemerging.enabled = 0: is clique merging enabled?dualinfer.minboundred = 0.001: minimum relative reduction to accept a bound change in dualinferpresolve.max_reduction_seq = 1000000000: abort the sequential executed presolver after a specified number of reductionscliquemerging.maxcalls = 1: maximum number of calls to the clique merging presolver
Data Structure:
Postsolve: The eventFixedColInfcontains now also the information whether the opposing bound is infinite. Note that Postsolving is no longer backwards compatible. The PostsolveStack for this entry is changed from (ind = [col,...],val=[bound,...]) to (ind = [col,is_inf, ...],val=[0,bound,...]).
Build system
- for cmake >= 3.30, CMP0167 is enforced and
BOOST_ROOTno longer supported; useBoost_DIRinstead with these cmake versions - disabled default solvers and require linking when enabled
- recognize also Gurobi 10 to 13 libs automatically
Miscellaneous
- the time limit is now checked while applying the presolve reductions
For a detailed description of the new features, see the SCIP Optimization Suite release report.
For downloads of prebuild libraries and executables, check https://scipopt.org/index.php#download.
Files
scipopt/papilo-v3.0.0.zip
Files
(2.1 MB)
| Name | Size | Download all |
|---|---|---|
|
md5:c8e04707ecb7227d29ad39706672e050
|
2.1 MB | Preview Download |
Additional details
Related works
- Is supplement to
- Software: https://github.com/scipopt/papilo/tree/v3.0.0 (URL)
Software
- Repository URL
- https://github.com/scipopt/papilo