methods for reoptimization related tasks
SCIP_RETCODE SCIPgetReoptChildIDs | ( | SCIP * | scip, |
SCIP_NODE * | node, | ||
unsigned int * | ids, | ||
int | idssize, | ||
int * | nids ) |
return the ids of child nodes stored in the reoptimization tree
scip
is in one of the following stages:
scip | SCIP data structure |
node | node of the search tree |
ids | array of ids |
idssize | allocated memory |
nids | number of child nodes |
Definition at line 69 of file scip_reopt.c.
References assert(), FALSE, NULL, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIPreoptGetChildIDs(), and TRUE.
Referenced by Exec().
SCIP_RETCODE SCIPgetReoptLeaveIDs | ( | SCIP * | scip, |
SCIP_NODE * | node, | ||
unsigned int * | ids, | ||
int | idssize, | ||
int * | nids ) |
return the ids of all leave nodes store in the reoptimization tree induced by the given node
scip
is in one of the following stages:
scip | SCIP data structure |
node | node of the search tree |
ids | array of ids |
idssize | size of ids array |
nids | number of child nodes |
Definition at line 101 of file scip_reopt.c.
References assert(), FALSE, NULL, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIPreoptGetLeaves(), and TRUE.
Referenced by constructCompression(), and constructCompression().
returns the number of nodes in the reoptimization tree induced by node
; if node
== NULL, the method returns the number of nodes of the whole reoptimization tree.
returns the number of nodes in the reoptimization tree induced by node
; if node
== NULL the method returns the number of nodes of the whole reoptimization tree.
scip | SCIP data structure |
node | node of the search tree |
Definition at line 126 of file scip_reopt.c.
References assert(), NULL, and SCIPreoptGetNNodes().
returns the number of leave nodes of the subtree induced by node
; if node
== NULL, the method returns the number of leaf nodes of the whole reoptimization tree.
returns the number of leaf nodes of the subtree induced by node
; if node
== NULL, the method returns the number of leaf nodes of the whole reoptimization tree.
scip | SCIP data structure |
node | node of the search tree |
Definition at line 141 of file scip_reopt.c.
References assert(), NULL, and SCIPreoptGetNLeaves().
Referenced by constructCompression(), and constructCompression().
SCIP_REOPTNODE * SCIPgetReoptnode | ( | SCIP * | scip, |
unsigned int | id ) |
gets the node of the reoptimization tree corresponding to the unique id
scip | SCIP data structure |
id | unique id |
Definition at line 154 of file scip_reopt.c.
References assert(), NULL, and SCIPreoptGetReoptnode().
Referenced by constructCompression(), constructCompression(), Exec(), SCIPreoptimizeNode(), and sortIDs().
SCIP_RETCODE SCIPaddReoptnodeBndchg | ( | SCIP * | scip, |
SCIP_REOPTNODE * | reoptnode, | ||
SCIP_VAR * | var, | ||
SCIP_Real | bound, | ||
SCIP_BOUNDTYPE | boundtype ) |
add a variable bound change to a given reoptnode
scip
is in one of the following stages:
scip | SCIP data structure |
reoptnode | node of the reoptimization tree |
var | variable pointer |
bound | variable bound to add |
boundtype | bound type of the variable value |
Definition at line 176 of file scip_reopt.c.
References assert(), bound, FALSE, NULL, SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIPcheckStage(), SCIPreoptnodeAddBndchg(), TRUE, and var.
Referenced by constructCompression(), and constructCompression().
SCIP_RETCODE SCIPsetReoptCompression | ( | SCIP * | scip, |
SCIP_REOPTNODE ** | representation, | ||
int | nrepresentatives, | ||
SCIP_Bool * | success ) |
set the representation
as the new search frontier
scip
is in one of the following stages:
scip | SCIP data structure |
representation | array of representatives |
nrepresentatives | number of representatives |
success | pointer to store the result |
Definition at line 204 of file scip_reopt.c.
References assert(), FALSE, NULL, SCIP_Bool, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIPreoptApplyCompression(), and TRUE.
Referenced by applyCompression(), and applyCompression().
SCIP_RETCODE SCIPaddReoptnodeCons | ( | SCIP * | scip, |
SCIP_REOPTNODE * | reoptnode, | ||
SCIP_VAR ** | vars, | ||
SCIP_Real * | vals, | ||
SCIP_BOUNDTYPE * | boundtypes, | ||
SCIP_Real | lhs, | ||
SCIP_Real | rhs, | ||
int | nvars, | ||
REOPT_CONSTYPE | constype, | ||
SCIP_Bool | linear ) |
add stored constraint to a reoptimization node
scip
is in one of the following stages:
scip | SCIP data structure |
reoptnode | node of the reoptimization tree |
vars | array of variables |
vals | array of variable bounds |
boundtypes | array of variable boundtypes |
lhs | lhs of the constraint |
rhs | rhs of the constraint |
nvars | number of variables |
constype | type of the constraint |
linear | the given constraint has a linear representation |
Definition at line 232 of file scip_reopt.c.
References assert(), FALSE, NULL, nvars, SCIP_Bool, SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIPcheckStage(), SCIPreoptnodeAddCons(), TRUE, and vars.
Referenced by constructCompression(), and constructCompression().
void SCIPgetReoptnodePath | ( | SCIP * | scip, |
SCIP_REOPTNODE * | reoptnode, | ||
SCIP_VAR ** | vars, | ||
SCIP_Real * | vals, | ||
SCIP_BOUNDTYPE * | boundtypes, | ||
int | mem, | ||
int * | nvars, | ||
int * | nafterdualvars ) |
return the branching path stored in the reoptree at ID id
scip | SCIP data structure |
reoptnode | node of the reoptimization tree |
vars | array of variables |
vals | array of variable bounds |
boundtypes | array of bound types |
mem | allocated memory |
nvars | number of variables |
nafterdualvars | number of variables directly after the first based on dual information |
Definition at line 260 of file scip_reopt.c.
References assert(), NULL, nvars, SCIP_Real, SCIPreoptnodeGetPath(), and vars.
Referenced by constructCompression(), and constructCompression().
SCIP_RETCODE SCIPinitRepresentation | ( | SCIP * | scip, |
SCIP_REOPTNODE ** | representatives, | ||
int | nrepresentatives ) |
initialize a set of empty reoptimization nodes
scip
is in one of the following stages:
scip | SCIP data structure |
representatives | array of representatives |
nrepresentatives | number of representatives |
Definition at line 289 of file scip_reopt.c.
References assert(), FALSE, NULL, r, SCIP_CALL, SCIP_OKAY, SCIPallocBlockMemory, SCIPcheckStage(), SCIPreoptnodeInit(), and TRUE.
Referenced by constructCompression(), constructCompression(), and SCIP_DECL_COMPREXEC().
SCIP_RETCODE SCIPresetRepresentation | ( | SCIP * | scip, |
SCIP_REOPTNODE ** | representatives, | ||
int | nrepresentatives ) |
reset a set of initialized reoptimization nodes
scip
is in one of the following stages:
scip | SCIP data structure |
representatives | array of representatives |
nrepresentatives | number of representatives |
Definition at line 319 of file scip_reopt.c.
References assert(), FALSE, NULL, r, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIPreoptnodeReset(), and TRUE.
Referenced by constructCompression().
SCIP_RETCODE SCIPfreeRepresentation | ( | SCIP * | scip, |
SCIP_REOPTNODE ** | representatives, | ||
int | nrepresentatives ) |
free a set of initialized reoptimization nodes
scip
is in one of the following stages:
scip | SCIP data structure |
representatives | array of representatives |
nrepresentatives | number of representatives |
Definition at line 348 of file scip_reopt.c.
References assert(), FALSE, NULL, r, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIPreoptnodeDelete(), and TRUE.
Referenced by applyCompression(), constructCompression(), and SCIP_DECL_COMPREXEC().
SCIP_RETCODE SCIPapplyReopt | ( | SCIP * | scip, |
SCIP_REOPTNODE * | reoptnode, | ||
unsigned int | id, | ||
SCIP_Real | estimate, | ||
SCIP_NODE ** | childnodes, | ||
int * | ncreatedchilds, | ||
int * | naddedconss, | ||
int | childnodessize, | ||
SCIP_Bool * | success ) |
reactivate the given reoptnode
and split them into several nodes if necessary
scip
is in one of the following stages:
scip | SCIP data structure |
reoptnode | node to reactivate |
id | unique id of the reoptimization node |
estimate | estimate of the child nodes that should be created |
childnodes | array to store the created child nodes |
ncreatedchilds | pointer to store number of created child nodes |
naddedconss | pointer to store number of generated constraints |
childnodessize | available size of childnodes array |
success | pointer store the result |
Definition at line 382 of file scip_reopt.c.
References assert(), FALSE, NULL, SCIP_Bool, SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIPcheckStage(), SCIPreoptApply(), and TRUE.
Referenced by Exec().
SCIP_RETCODE SCIPresetReoptnodeDualcons | ( | SCIP * | scip, |
SCIP_NODE * | node ) |
remove the stored information about bound changes based in dual information
scip
is in one of the following stages:
scip | SCIP data structure |
node | node of the search tree |
Definition at line 516 of file scip_reopt.c.
References assert(), FALSE, NULL, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIPreoptResetDualBndchgs(), and TRUE.
SCIP_RETCODE SCIPsplitReoptRoot | ( | SCIP * | scip, |
int * | ncreatedchilds, | ||
int * | naddedconss ) |
splits the root into several nodes and moves the child nodes of the root to one of the created nodes
scip
is in one of the following stages:
splits the root into several nodes and moves the child nodes of the root to one of the created nodes
scip
is in one of the following stages:
scip | SCIP data structure |
ncreatedchilds | pointer to store the number of created nodes |
naddedconss | pointer to store the number added constraints |
Definition at line 489 of file scip_reopt.c.
References assert(), FALSE, NULL, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIPreoptSplitRoot(), and TRUE.
Referenced by Exec().
returns if a node should be reoptimized
scip | SCIP data structure |
node | node of the search tree |
Definition at line 424 of file scip_reopt.c.
References assert(), FALSE, NULL, SCIP_Bool, SCIPgetReoptnode(), SCIPgetRootNode(), SCIPnodeGetReoptID(), and SCIPreoptnodeGetNChildren().
Referenced by SCIP_DECL_BRANCHEXECEXT(), SCIP_DECL_BRANCHEXECLP(), and SCIP_DECL_BRANCHEXECPS().
SCIP_RETCODE SCIPdeleteReoptnode | ( | SCIP * | scip, |
SCIP_REOPTNODE ** | reoptnode ) |
deletes the given reoptimization node
scip
is in one of the following stages:
deletes the given reoptimization node
scip
is in one of the following stages:
scip | SCIP data structure |
reoptnode | node of the reoptimization tree |
Definition at line 464 of file scip_reopt.c.
References assert(), FALSE, NULL, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIPreoptnodeDelete(), and TRUE.
Referenced by SCIP_DECL_COMPREXIT().
return the similarity between two objective functions
scip | SCIP data structure |
run1 | number of run |
run2 | number of run |
Definition at line 407 of file scip_reopt.c.
References assert(), NULL, SCIP_Real, SCIPreoptGetSimilarity(), and SCIPreoptGetSimToPrevious().
Referenced by SCIP_DECL_BRANCHEXECLP(), and SCIP_DECL_HEUREXEC().
SCIP_RETCODE SCIPfreeReoptSolve | ( | SCIP * | scip | ) |
frees branch and bound tree and all solution process data; statistics, presolving data and transformed problem is preserved
scip
is in one of the following stages:
See SCIP_STAGE for a complete list of all possible solving stages.
frees branch and bound tree and all solution process data; statistics, presolving data and transformed problem is preserved
scip
is in one of the following stages:
See SCIP_STAGE for a complete list of all possible solving stages.
scip | SCIP data structure |
Definition at line 3287 of file scip_solve.c.
References assert(), exitPresolve(), FALSE, freeReoptSolve(), SCIP_Bool, SCIP_CALL, SCIP_INVALIDCALL, SCIP_OKAY, SCIP_STAGE_INIT, SCIP_STAGE_PRESOLVED, SCIP_STAGE_PRESOLVING, SCIP_STAGE_PROBLEM, SCIP_STAGE_SOLVED, SCIP_STAGE_SOLVING, SCIP_STAGE_TRANSFORMED, SCIP_STATUS_INFEASIBLE, SCIP_STATUS_INFORUNBD, SCIP_STATUS_OPTIMAL, SCIP_STATUS_UNBOUNDED, SCIPcheckStage(), SCIPerrorMessage, and TRUE.
Referenced by readDiffFile(), and runBenders().
SCIP_RETCODE SCIPenableReoptimization | ( | SCIP * | scip, |
SCIP_Bool | enable ) |
include specific heuristics and branching rules for reoptimization
scip
is in one of the following stages:
scip | SCIP data structure |
enable | enable reoptimization (TRUE) or disable it (FALSE) |
Definition at line 3049 of file scip_solve.c.
References assert(), NULL, SCIP_Bool, SCIP_CALL, SCIP_INVALIDCALL, SCIP_OKAY, SCIP_STAGE_PRESOLVED, SCIP_STAGE_PROBLEM, SCIPerrorMessage, SCIPreoptCreate(), SCIPreoptFree(), and SCIPsetSetReoptimizationParams().
Referenced by runBenders(), SCIP_DECL_PARAMCHGD(), and SCIPcreateProb().
returns whether reoptimization is enabled or not
scip | SCIP data structure |
Definition at line 3504 of file scip_solve.c.
References assert(), NULL, and SCIP_Bool.
Referenced by determineSymmetry(), Exec(), readDiffFile(), SCIP_DECL_BRANCHEXECEXT(), SCIP_DECL_BRANCHEXECLP(), SCIP_DECL_BRANCHEXECPS(), SCIP_DECL_EVENTEXITSOL(), SCIP_DECL_EVENTINITSOL(), SCIP_DECL_HEUREXEC(), SCIP_DECL_HEUREXEC(), and SCIP_DECL_HEUREXEC().
SCIP_RETCODE SCIPgetReoptSolsRun | ( | SCIP * | scip, |
int | run, | ||
SCIP_SOL ** | sols, | ||
int | solssize, | ||
int * | nsols ) |
returns the stored solutions corresponding to a given run
scip | SCIP data structure |
run | number of the run |
sols | array to store solutions |
solssize | size of the array |
nsols | pointer to store number of solutions |
Definition at line 3514 of file scip_solve.c.
References assert(), NULL, SCIP_CALL, SCIP_OKAY, and SCIPreoptGetSolsRun().
Referenced by SCIP_DECL_HEUREXEC().
void SCIPresetReoptSolMarks | ( | SCIP * | scip | ) |
mark all stored solutions as not updated
scip | SCIP data structure |
Definition at line 3540 of file scip_solve.c.
References assert(), NULL, and SCIPreoptResetSolMarks().
Referenced by SCIP_DECL_HEUREXEC().
SCIP_RETCODE SCIPcheckReoptRestart | ( | SCIP * | scip, |
SCIP_NODE * | node, | ||
SCIP_Bool * | restart ) |
check if the reoptimization process should be restarted
scip
is in one of the following stages:
scip | SCIP data structure |
node | current node of the branch and bound tree (or NULL) |
restart | pointer to store of the reoptimitation process should be restarted |
Definition at line 3564 of file scip_solve.c.
References assert(), FALSE, NULL, SCIP_Bool, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIPreoptCheckRestart(), and TRUE.
Referenced by Exec().
SCIP_RETCODE SCIPaddReoptDualBndchg | ( | SCIP * | scip, |
SCIP_NODE * | node, | ||
SCIP_VAR * | var, | ||
SCIP_Real | newbound, | ||
SCIP_Real | oldbound ) |
save bound change based on dual information in the reoptimization tree
scip
is in one of the following stages:
scip | SCIP data structure |
node | node of the search tree |
var | variable whose bound changed |
newbound | new bound of the variable |
oldbound | old bound of the variable |
Definition at line 3119 of file scip_solve.c.
References assert(), FALSE, SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIPcheckStage(), SCIPreoptAddDualBndchg(), SCIPsetIsFeasGT(), SCIPsetIsFeasLT(), TRUE, and var.
Referenced by SCIP_DECL_EVENTEXEC().
returns the optimal solution of the last iteration or NULL of none exists
scip | SCIP data structure |
Definition at line 3137 of file scip_solve.c.
References assert(), NULL, SCIPreoptGetLastBestSol(), and sol.
Referenced by applyOfins(), SCIP_DECL_HEUREXEC(), and setupAndSolve().
SCIP_RETCODE SCIPgetReoptOldObjCoef | ( | SCIP * | scip, |
SCIP_VAR * | var, | ||
int | run, | ||
SCIP_Real * | objcoef ) |
returns the objective coefficent of a given variable in a previous iteration
scip
is in one of the following stages:
scip | SCIP data structure |
var | variable |
run | number of the run |
objcoef | pointer to store the objective coefficient |
Definition at line 3164 of file scip_solve.c.
References assert(), FALSE, NULL, SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIPcheckStage(), SCIPreoptGetOldObjCoef(), SCIPvarGetIndex(), SCIPvarGetOrigvarSum(), SCIPvarIsActive(), SCIPvarIsOriginal(), TRUE, and var.
Referenced by SCIP_DECL_HEUREXEC(), and SCIP_DECL_HEUREXEC().