pseudo-
quadratic constraintsSCIP_VARTYPE_BINARY
SCIP_LPSOLSTAT_NOTSOLVED
in SCIPchg{Lp,Dual}feastol()s
now uses homogenized LP for computing rel.int. point too and allow to set relaxrows = FALSEsuperindicator
for indicator constraints with slack constraints of arbitrary typeSCIP_STATISTIC
and new macros SCIPstatisticMessage(), SCIPstatisticPrintf() and SCIPstatistic() to output statistic and execute code lines which are only needed therefor. Works as SCIP_DEBUG
and SCIPdebugXyz()SCIP_NLPPAR_FASTFAIL
to enable convergence checks in NLP solver to stop early on seeminglySCIP_STAGE_{INIT,EXIT}PRESOLVE
(see pre-conditions for corresponding methods in scip.h).SCIP_DEBUG
flag is set.proptiming
to SCIP_DECL_CONSPROP(), giving the current timing at which this method is called (also to the corresponding c++ wrapper classes).SCIP_DECL_CONSGETVARS
and SCIP_DECL_CONSGETNVARS
. These callbacks, if implemented, should return an array of all variables and the number of all variables used by the given constraint, respectively. (This method might, e.g., be called by a presolver)proptiming
to SCIP_DECL_PROPEXEC(), giving the current timing at which this method is called (also to the corresponding c++ wrapper classes).basic
inclusion methods which have only fundamental data of the plug-ins as arguments; added setter functions for all non-fundamental callbacks of the plug-ins; the plug-in types with basic inclusion functions are: readers, constraint handlers, conflict handlers, presolvers, propagators, heuristics, separators, relaxation handlers, branching rules, node selectors and pricers; these methods should make the usage easier, sparing out optional callbacks and parameters: e.g., SCIPincludeConshdlrBasic();src/dijkstra
and src/xml
has been changed to (increasingly) conform to the SCIP coding style; all function (and variable) names have been changed (do not contain _
anymore).relaxedbds
to conflict handler callback method SCIP_DECL_CONFLICTEXEC(). This array contains bounds which are sufficient to create a valid conflictrestart
to the SCIP_DECL_CONSEXITSOL() callback method, indicating whether this call was triggered by a restart.relaxedbd
to SCIP_DECL_CONSRESPROP() callback method. If explaining a given bound change (index), it is sufficient to explain the reason for reaching the relaxedbd
value, see aboveisunbounded
, isinfeasible
and result
from SCIP_DECL_CONSINITPRE() and SCIP_DECL_CONSEXITPRE() callback methods. It is not allowed to determine unboundedness or infeasibility in these callbacks, anymore.SCIP_CONS*
parameter to SCIPcreateConsDisjunction() which can represent the linear relaxation of the whole disjunction constraint as a conjunction constraint, or NULL
SCIP_SPARSESOL
usage, SCIPsparseSolCreate(), SCIPsparseSolFree(), SCIPsparseSolGetVars(), SCIPsparseSolGetNVars(), SCIPsparseSolGetLbs(), SCIPsparseSolGetUbs() in (pub_)misc.{c,h}.targetscip
parameter from SCIPconvertCutsToConss(), now this function can only convert cuts on one instance, otherwise use SCIPcopyCuts()ncutsadded
parameter to SCIPcopyCuts() to be able to store the number of copied/converted cuts;\n
anymore; if wanted, use SCIPinfoMessage() to print ;\n
manuallyisunbounded
, isinfeasible
and result
from SCIP_DECL_PRESOLINITPRE() and SCIP_DECL_PRESOLSEXITPRE(). It is not allowed to determine unboundedness or infeasibility in these callbacks, anymore.restart
to SCIP_DECL_PROPEXITSOL() callback method, indicating whether this call was triggered by a restart.relaxedbd
to SCIP_DECL_PROPRESPROP() callback method. If explaining a given bound change (index), it is sufficient to explain the reason for reaching the relaxedbd
value.isunbounded
, isinfeasible
and result
from SCIP_DECL_PROPINITPRE() and SCIP_DECL_PROPEXITPRE() callback methods. It is not allowed to determined unboundedness or infeasibility in these callbacks, anymore.NULL
pointer can be givenmisc/num_recompfac
)fix
(instead of set
), e.g., fix heuristics rens freq TRUE
;change minuc
to minimize the number of unsatisfied constraintsbranching/fullstrong/reevalage
changed from an integer to a longint parameterseparating/closecuts/separootonly
constraints/quadratic/defaultbound
separating/cgmip/nodelimit
constraints/s/timingmask
for changing the timingmask for calling the propagtion method of all constraint pluginsconstraints/and/dualpresolving
by default set to TRUE, enabling dual-presolving on and-constraintsconstraints/indicator/{sepacouplingcuts,sepacouplinglocal}
to enable separation of (local) cutsconstraints/indicator/{maxsepacuts,maxsepacutsroot}
to restrict the number of separated cutsconstraints/indicator/dualreductions
to enable dual presolving/propagation stepsconstraints/setppc/cliquelifting
, constraints/setppc/addvariablesascliques
, constraints/setppc/cliqueshrinking
, first for enabling/disabling the clique lifting algorithm in cons_setppc.c, second parameter is for trying to create extra clique constraints in lifting algorithm, third parameter is for trying to decrease the number of variable in a clique constraint in the lifting algorithmlimits/totalnodes
that allows to stop at the correct node if a restart occured; therefore the new SCIP_STATUS_TOTALNODELIMIT
is addedlp/{rootiterlim,iterlim}
to set a limit on the LP iterations spend in the initial root LP and each LP resolve, respectivelymisc/transorigsols
by default set to TRUE, that switches whether SCIP tries to transfer original solutions into the transformed space (in initsol and if a heuristic adds an original solution during solving)numerics/hugeval
that defines the smalles value counting as huge (see new method SCIPisHugeValue())numerics/recompfac
which denotes the factor, by which the absolute of an iteratively updated value has to be decreased in order to recompute the value from scratchpresolving/convertinttobin/maxdomainsize
by default is set to SCIP_LONGINT_MAX
, which deternmines the domainsize for which integers are converted to their binary representationpresolving/convertinttobin/onlypoweroftwo
by default is set to FALSE, that parameter allows you to only convert integer variables with a domainsize of 2^p-1 to their binary representationpresolving/convertinttobin/samelocksinbothdirections
by default is set to FALSE, that parameter allows you to convert only integer variables to their binary representation, which have the same amount of up- and downlockspresolving/gateextraction/sorting
by default is set to 1, that parameter determines if you want to try to extract big-gates(-1) or small-gates(1) at first by ordering bigger/smaller logicor constraint up front, or use them as they are (0)presolving/gateextraction/onlysetpart
by default is set to FALSE, that parameter allows you to only extract set-partitioning and no and-constraintspresolving/gateextraction/searchequations
by default is set to TRUE, that parameter allows you to search for logicor constraints and set-packing/-partitioning constraints with same variablespropagating/s/timingmask
for changing the timingmask for calling the propagtion method of all propagator pluginspropagating/probing/maxdepth
to set the maximal depth until the probing propagation is executedreading/cnfreader/useobj
to state whether an artificial objective, depending on the number of clauses a variable appears in, should be used, by default set to FALSE, old default behavior of reader corresponds to TRUEseparating/cgmip/{minnodelimit,maxnodelimit}
to determine node limit.separating/closecuts/maxlpiterfactor
for iteration limit in relative interior point computationseparating/oddcycle/maxunsucessfull
to automatically turn off separationoncepernode
in Rounding and Simple Rounding heuristicSCIP_BT
and SCIP_BTNODE
in pub_misc.h)SCIP_STAIRMAP
to SCIP_PROFILE
SCIP_STAGE_INITPRESOLVE
, SCIP_STAGE_EXITPRESOLVE
and SCIP_STAGE_FREE
; renamed SCIP_STAGE_FREESOLVE
to SCIP_STAGE_EXITSOLVE
SPARSESOLUTION
was renamed to SCIP_SPARSESOL
and moved from cons_countsols.h to struct_misc.hmake testgams
to CLIENTTMPDIR and changed its default to /tmp
src/cppad
), so that lib/cppad
is not used anymore; the default for EXPRINT has changed from none to cppadLPI=none
(need to count rows/cols in lpi_none)