Scippy

SCIP

Solving Constraint Integer Programs

Interface changes between SCIP 4.0 and SCIP 5.0

New and changed callbacks

  • New types:
    • added new abstract selection algorithm SCIP_BANDIT together with callbacks
    • added new type SCIP_TABLE together with callbacks to output SCIP statistics
    • added new types for symmetry handling
  • Separation callbacks:
    • added parameter "allowlocal" to SCIP_DECL_SEPAEXECLP and SCIP_DECL_SEPAEXECSOL
  • NLP callbacks
    • added parameter "dstatssize" to SCIP_DECL_NLPIDELVARSET and SCIP_DECL_NLPIDELCONSSET
    • added parameter "objval" to SCIP_DECL_NLPIGETSOLUTION


Changed interface methods




  • LP interface:
    • replaced LP parameters SCIP_LPPARAM_LOBJLIM and SCIP_LPPARAM_UOBJLIM by SCIP_LPPARAM_OBJLIM



  • Primal heuristics:






Changed parameters

  • fixed typo: "heuristics/completesol/maxunkownrate" has changed to "heuristics/completesol/maxunknownrate"
  • removed parameters "constraints/{abspower,bivariate,nonlinear,quadratic,soc}/scaling"
  • replaced "constraints/quadratic/disaggregate" by "constraints/quadratic/maxdisaggrsize" to bound the total number of created constraints when disaggregating a quadratic constraint
  • removed parameters "constraints/{abspower,bivariate,quadratic,nonlinear}/mincutefficacysepa", "constraints/{abspower,bivariate,quadratic,nonlinear}/mincutefficacyenfofac", and "constraints/soc/minefficacy"
  • removed parameters "conflict/usemir" and "conflict/prefermir"
  • removed parameter "separating/feastolfac"
  • removed parameter "separating/orthofac"
  • parameter "separating/maxstallrounds" only applies to nodes in the tree (not the root node, anymore); use the new parameter "separating/maxstallroundsroot" for the root node
  • removed parameters "heuristics/clique/{multiplier,initseed}"
  • replaced parameter "heuristics/{clique,vbounds}/minfixingrate" by "heuristics/{clique,vbounds}/minintfixingrate" and "heuristics/{clique,vbounds}/minmipfixingrate", which check the fixing rate before LP solving and after sub-MIP presolve
  • removed parameter "separating/cgmip/allowlocal" (use parameter passed to separation callback instead)
  • removed parameter "separating/{gomory,strongcg}/maxweightrange"
  • changed and removed several parameters for zerohalf separator
  • moved parameters for flowcover and cmir separators to "separating/aggregation"


For further information we refer to the Release notes and the Changelog.