make/make.project
==
through SCIPsetIsEQ()), real values do not have to be exactly the same when computed in different functionSCIP_STAGE_TRANSFORMED
constraints/quadratic/minefficacy
by constraints/quadratic/minefficacysepa
and constraints/quadratic/minefficacyenfo
a
and e
for constraints/soc/nlpform
to enable automatic choice and convex exponential-sqrt form for SOC constraint representation in NLPSCIP_VARDATA
if the implemented subclass create a copy of the given objvardata objectSCIP_VARTYPE_BINARY
variable were handled wrongSCIP_Bool* success
which stores if an error occured during solving(normally a memory problem)SCIP_HEURTIMING_BEFOREPRESOL
. Note that solutions that are added before/during presolving, will be retransformed to the original space.SCIP_HEURTIMING_DURINGPRESOLLOOP
negated cliques
(1<=i<=n : sum (x_i) >= n-1) were added and we are using them now inside the knapsack constraint handler, the cliquepartitioning which is returned by SCIPcalcCliquePartition() contains now integer != 0, negatives ones indicates a negated clique and positive ones indicates a normal cliquenegated cliques
handling in knapsack constraint handler got changed due to the new method SCIPcalcNegatedCliquePartition() resulting in new consdata members negcliquepartition
, negcliquepartitioned
and nnegcliques
; changed SCIPcalcCliquePartition() so all cliquepartitions (calculated by SCIPcalcCliquePartition() or SCIPcalcNegatedCliquePartition(), which uses the first one) contain again not negative integersand
, knapsack
, linear
, logic
, or
, quadratic
, setpp
, varbound
, xor
and clique
constraint handlers can handle implicit binary variableslogicor
, and
, or
can parse their outputor
can copy its constraintsrelaxation handler
or constraint handler
plugin, calling SCIPaddExternBranchCand().SCIP_HEURTIMING_AFTERPROPLOOP
SCIP_Bool force
which allows bound tightening even if the difference to the newbound is below bound strengthening tolerancesettings/emphasis/cpsolver.set
to decrease time per nodenodeselection/restartdfs/selectbestfreq
to 0; this means if the current node has no children the node with the best bound is selected (SCIPgetBestboundNode())example/Eventhdlr
)SCIP_EVENTTYPE_ROWADDEDSEPA
, SCIP_EVENTTYPE_ROWDELETEDSEPA
, SCIP_EVENTTYPE_ROWADDEDLP
, SCIP_EVENTTYPE_ROWDELETEDLP
)branching rules
and How to add primal heuristics primal heuristics
, have a new callback method (see, e.g., type_branch.h and type_heur.h for more details):restart
is TRUE
if the callback method was triggered by a restart.SCIP_EVENTTYPE_ROWCOEFCHANGED
, SCIP_EVENTTYPE_ROWCONSTCHANGED
, SCIP_EVENTTYPE_ROWSIDECHANGED
)varcopy
to SCIPcreateVar() to add the function for copying variable datasettings/cuts/off.set,aggressive.set,fast.set
have been replaced by interface methods like SCIPsetHeuristics(), SCIPsetPresolving(), SCIPsetSeparating(), and SCIPsetEmphasis() in scip.h and by user dialogs in the interactive shell like SCIP> set {heuristics|presolving|separating} emphasis {aggressive|fast|off}
or SCIP> set emphasis {counter|cpsolver|easycip|feasibility|hardlp|optimality}
quiet
it prevents any output during the assign to a new value.SCIP_Real
instead of SCIP_Longint
values.SCIP_DECL_BRANCHCOPY((*branchcopy))
and SCIP_DECL_BRANCHEXECREL((*branchexecrel))
. In the same fashion, the new callbacks SCIP_DECL_VARCOPY
and SCIP_DECL_PROBCOPY
led to new parameters in SCIPcreateVar() and SCIPcreateProb() in scip.c, respectively.ObjCloneable
and ObjProbCloneable
. The constraint handlers and variables pricers are derived from ObjProbCloneable
and all other plugin are derived from ObjCloneable
. Both classes implement the function iscloneable()
which return whether a plugin is clone able or not. Besides that each class has a function named clone()
which differ in their signature. See objcloneable.h, objprobcloneable.h, and the TSP example for more details.usessubscip
: It can be used to inform SCIP that the heuristic/separator to be included uses a secondary SCIP instance.SCIP_DECL_CONSCOPY
has been renamed to valid.maxmksetcoefs
: If the mixed knapsack constraint obtained after aggregating LP rows contains more than maxmksetcoefs
nonzero coefficients the generation of the c-MIR cut is aborted.delta
: It can be used to obtain the scaling factor which leads to the best c-MIR cut found within the cut generation heuristic. If a NULL
pointer is passed, the corresponding c-MIR cut will already be added to SCIP by SCIPcutGenerationHeuristicCmir(). Otherwise, the user can generate the cut and add it to SCIP on demand afterwards.deltavalid
: In case, the user wants to know the best scaling factor, i.e., delta
passed is not NULL
, deltavalid
will be TRUE
if the stored scaling factor delta
will lead to a violated c-MIR cut.or
constraintuselprows
. It can be used to switch from LP rows to SCIP constraints as basis of the sub-SCIP constructed in the RENS heuristic.SCIP_PARAMSET
parameterSCIP> set emphasis feasibility
SCIP> set emphasis counting
display pricers
which displays all included pricersconstraints/knapsack/maxnumcardlift
and adapted setting fileslp/fastmip
from boolean to integer, possible values are 0 (off), 1 (medium, default), 2 (full, must not be used with branch-and-price).branching/clamp
to set the minimal fractional distance of a branching point to a continuous variable' boundsbranching/random/seed
to change the initial seed value of the branching rule randomconstraints/indicator/addCouplingCons
that allows to add variable upper bounds if addCoupling is trueconstraints/indicator/enforceCuts
that allows to check for violated cust in enforcementconstraints/indicator/maxCouplingValue
for the maximal value of the coefficient in a coupling inequality/constraintconstraints/indicator/noLinconsCon
which controls whether the linear constraint is not explicitly added to the problem. default is FALSEconstraints/knapsack/dualpresolving
to switch dualpresolving on/off inside the knapsack constraint handler, default is TRUEconstraints/knapsack/presolpairwise
that allows pairwise presolving of knapsack constraints, default is TRUEconstraints/knapsack/presolusehashing
that allows fast pairwise presolving of knapsack constraints, default is TRUEheuristics/crossover/dontwaitatroot
that allows to call crossover at root node independently from nwaitingnodesheuristics/rens/uselprows
that allows to switch between LP row and SCIP constraints as basis for the subSCIP, default is TRUE (uses LP rows)lp/rowrepswitch
telling simplex solver to switch to row representation of the basis (if possible), if number of rows divided by number of columns exceeds this value (default value infinity, i.e. never switch)lp/threads
to change the number of threads used to solve the LP relaxation (default is 0: automatic)misc/lexdualstalling
that turns on the lex dual algorithm if the separation process is stallingmisc/usevartable
and misc/useconstable
which turns on/off the usage of hashtables mapping from variable/constraint names to the variables/constraints; when turned off, SCIPfindVar() and SCIPfindCons() may not be used; the hashtables can be turned off for subMIPs to improve the performance, default value TRUEmisc/usesmalltables
which results in using smaller tables for names, cliques and cuts and improves the performace for smaller instances, default value FALSEmisc/permutationseed
to change the permutation seed value for permuting the problem after the problem is transformed (-1 means no permutation)reading/zplreader/usestartsol
which allows to switch ZIMPL start solutions off, default value TRUEvbc/dispsols
to propose if the nodes where solutions are found should be visualized in the branch and bound treelintfiles
which allows to call flexelint with a list of file, for example, make lintfiles FILES=src/scip/prop_vbounds.c
make/make.project
need to change their Makefile (!!!): in the target, add behind in the dependencies and add to the linker flagsclean
is changed as described here: http://scipopt.org/download/bugfixes/scip-1.2.0/make.txt.bug
in projects Makefiles w.r.t. make clean
infeasible or unbounded
like in presolving)SCIP_VARTYPE_BINARY
, instead of adding an implication we add a variable boundSCIP_LPPARAM_FROMSCRATCH
to FALSE
afterwardsactive
pricerpricing was aborted, but no branching could be created!
OSTYPE=darwin
w.r.t. to CPLEX as LP solverreading/zplreader/parameters
SCIP_MAXSTRLEN
HEUR_TIMING SCIP_HEURTIMING_AFTERPROPLOOP
which appeared during repropagationHEUR_TIMING SCIP_HEURTIMING_BEFOREPRESOL
and modifiable constraintsChanges between version 1.2 and 2.0
in the doxygen documentation for additional information.