You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
parse pseudoboolean constraint from CIP format (and add linear-"and"-reformulation)
added check for absolute and relative gap limits at end of synchronization in concurrent solving mode, in order to terminate earlier;
note that if the concurrent solve is stopped due to a gap limit, the "winner" solver will have an interrupted solution status and
its primal and dual bounds may not be the best possible ones (use SCIPgetConcurrentPrimalbound() and SCIPgetConcurrentDualbound() instead)
Performance improvements
imposed stricter limits on the size of disconnected components which may be solved separately during presolve
use individual slack variables also for constraints indicated by a common binary variable to use tighter formulation by default
when computing symmetries using Nauty, iteration limits are now available to terminate Nauty early
reoptimization now also stores propagations from propagators if reoptimization/saveconsprop is enabled;
the parameter will be renamed to reoptimization/saveprop in a next major release
Fixed bugs
Benders' decomposition subproblems that are always infeasible are correctly handled and the complete problem is declared infeasible
skip linear constraint propagation if the residual activity bound cancels the side precision
correct bound tracking to make the evaluation of primal-dual-integrals work
skip aggregations on fixed variables in milp presolver to avoid errors for earlier versions of PaPILO
use indices of negation counterparts and accept fixings when ordering and-resultants of pseudoboolean constraints
update locks on model variables before removing pseudoboolean constraints in presolve
reformulate soft pseudoboolean constraints with linear constraints if the indicator decomposition is disabled
add workaround for recent HiGHS versions resetting the model status when changing the presolve option after a solve
avoid hashmap key error in removal of doubletons and singletons in dual presolve of setppc constraints by updating constraints and corresponding hashmaps after each multi-aggregation
Interface changes
New API functions
added SCIPtpiIsAvailable() to check whether a working task processing interface is available (TPI != none)
added SCIPtpiGetLibraryName() and SCIPtpiGetLibraryDesc()
SCIPdelCons() can now also be called in SCIP_STAGE_TRANSFORMED
added SCIPstrcasecmp() and SCIPstrncasecmp() for case-insensitive string comparison
added SCIPbendersSubproblemsAreInfeasible() to return if at least one subproblem has been identified as being
infeasible prior to performing any variable fixing
New parameters
presolving/milp/abortfacexhaustive to control the abort threshold for exhaustive presolving in PAPILO
presolving/milp/abortfacmedium to control the abort threshold for medium presolving in PAPILO
presolving/milp/abortfacfast to control the abort threshold for fast presolving in PAPILO
constraints/components/maxcompweight to determine the maximum weight for a disconnected component that is solved during presolve
constraints/components/contfactor counts the contributing factor of a single continuous variables with respect to the weight limit specified by constraints/components/maxcompweight
constraints/indicator/usesameslackvar to decide whether the same slack variable should be used for indicators constraints with common binary variable
propagating/symmetry/nautymaxncells and propagating/symmetry/nautymaxnnodes to set iteration limits in Nauty (only available if build with SYM=nauty or SYM=snauty)
Changed parameters
presolving/milp/threads is now only available if PaPILO is built with TBB
changed default of numerics/recomputefac to 1e+6 to aim at relative epsilon precision
Build system
Cmake
attempted to fix detection of CPLEX library on macOS and Windows systems
Testing
added parameter FILTER for tests/Makefile to run only tests with a specific pattern (ctest with -R FILTER)
Miscellaneous
adjusted Gurobi interface for Gurobi 12
reordered events: BESTSOLFOUND/NODE_FEASIBLE are now processed before the nodes are cut off and before NODE_DELETE events are processed
removed #define of getcwd (in case of Windows builds) in scip/def.h
the #define of strcasecmp and strncasecmp (in case of Windows builds) in scip/def.h will be removed with SCIP 10;
use SCIPstr(n)casecmp() (scip/pub_misc.h) instead