public methods for Benders decomposition
- Author
- Tobias Achterberg
-
Timo Berthold
-
Gerald Gamrath
-
Leona Gottwald
-
Stefan Heinz
-
Gregor Hendel
-
Thorsten Koch
-
Alexander Martin
-
Marc Pfetsch
-
Michael Winkler
-
Kati Wolter
Definition in file scip_benders.c.
|
SCIP_RETCODE | SCIPincludeBenders (SCIP *scip, const char *name, const char *desc, int priority, SCIP_Bool cutlp, SCIP_Bool cutpseudo, SCIP_Bool cutrelax, SCIP_Bool shareauxvars, SCIP_DECL_BENDERSCOPY((*benderscopy)), SCIP_DECL_BENDERSFREE((*bendersfree)), SCIP_DECL_BENDERSINIT((*bendersinit)), SCIP_DECL_BENDERSEXIT((*bendersexit)), SCIP_DECL_BENDERSINITPRE((*bendersinitpre)), SCIP_DECL_BENDERSEXITPRE((*bendersexitpre)), SCIP_DECL_BENDERSINITSOL((*bendersinitsol)), SCIP_DECL_BENDERSEXITSOL((*bendersexitsol)), SCIP_DECL_BENDERSGETVAR((*bendersgetvar)), SCIP_DECL_BENDERSCREATESUB((*benderscreatesub)), SCIP_DECL_BENDERSPRESUBSOLVE((*benderspresubsolve)), SCIP_DECL_BENDERSSOLVESUBCONVEX((*benderssolvesubconvex)), SCIP_DECL_BENDERSSOLVESUB((*benderssolvesub)), SCIP_DECL_BENDERSPOSTSOLVE((*benderspostsolve)), SCIP_DECL_BENDERSFREESUB((*bendersfreesub)), SCIP_BENDERSDATA *bendersdata) |
|
SCIP_RETCODE | SCIPincludeBendersBasic (SCIP *scip, SCIP_BENDERS **bendersptr, const char *name, const char *desc, int priority, SCIP_Bool cutlp, SCIP_Bool cutpseudo, SCIP_Bool cutrelax, SCIP_Bool shareauxvars, SCIP_DECL_BENDERSGETVAR((*bendersgetvar)), SCIP_DECL_BENDERSCREATESUB((*benderscreatesub)), SCIP_BENDERSDATA *bendersdata) |
|
SCIP_RETCODE | SCIPsetBendersCopy (SCIP *scip, SCIP_BENDERS *benders, SCIP_DECL_BENDERSCOPY((*benderscopy))) |
|
SCIP_RETCODE | SCIPsetBendersFree (SCIP *scip, SCIP_BENDERS *benders, SCIP_DECL_BENDERSFREE((*bendersfree))) |
|
SCIP_RETCODE | SCIPsetBendersInit (SCIP *scip, SCIP_BENDERS *benders, SCIP_DECL_BENDERSINIT((*bendersinit))) |
|
SCIP_RETCODE | SCIPsetBendersExit (SCIP *scip, SCIP_BENDERS *benders, SCIP_DECL_BENDERSEXIT((*bendersexit))) |
|
SCIP_RETCODE | SCIPsetBendersInitpre (SCIP *scip, SCIP_BENDERS *benders, SCIP_DECL_BENDERSINITPRE((*bendersinitpre))) |
|
SCIP_RETCODE | SCIPsetBendersExitpre (SCIP *scip, SCIP_BENDERS *benders, SCIP_DECL_BENDERSEXITPRE((*bendersexitpre))) |
|
SCIP_RETCODE | SCIPsetBendersInitsol (SCIP *scip, SCIP_BENDERS *benders, SCIP_DECL_BENDERSINITSOL((*bendersinitsol))) |
|
SCIP_RETCODE | SCIPsetBendersExitsol (SCIP *scip, SCIP_BENDERS *benders, SCIP_DECL_BENDERSEXITSOL((*bendersexitsol))) |
|
SCIP_RETCODE | SCIPsetBendersPresubsolve (SCIP *scip, SCIP_BENDERS *benders, SCIP_DECL_BENDERSPRESUBSOLVE((*benderspresubsolve))) |
|
SCIP_RETCODE | SCIPsetBendersSolveAndFreesub (SCIP *scip, SCIP_BENDERS *benders, SCIP_DECL_BENDERSSOLVESUBCONVEX((*benderssolvesubconvex)), SCIP_DECL_BENDERSSOLVESUB((*benderssolvesub)), SCIP_DECL_BENDERSFREESUB((*bendersfreesub))) |
|
SCIP_RETCODE | SCIPsetBendersPostsolve (SCIP *scip, SCIP_BENDERS *benders, SCIP_DECL_BENDERSPOSTSOLVE((*benderspostsolve))) |
|
SCIP_RETCODE | SCIPsetBendersSubproblemComp (SCIP *scip, SCIP_BENDERS *benders, SCIP_DECL_SORTPTRCOMP((*benderssubcomp))) |
|
SCIP_BENDERS * | SCIPfindBenders (SCIP *scip, const char *name) |
|
SCIP_BENDERS ** | SCIPgetBenders (SCIP *scip) |
|
int | SCIPgetNBenders (SCIP *scip) |
|
int | SCIPgetNActiveBenders (SCIP *scip) |
|
SCIP_RETCODE | SCIPactivateBenders (SCIP *scip, SCIP_BENDERS *benders, int nsubproblems) |
|
SCIP_RETCODE | SCIPdeactivateBenders (SCIP *scip, SCIP_BENDERS *benders) |
|
void | SCIPsetBendersPriority (SCIP *scip, SCIP_BENDERS *benders, int priority) |
|
SCIP_RETCODE | SCIPsolveBendersSubproblems (SCIP *scip, SCIP_BENDERS *benders, SCIP_SOL *sol, SCIP_RESULT *result, SCIP_Bool *infeasible, SCIP_Bool *auxviol, SCIP_BENDERSENFOTYPE type, SCIP_Bool checkint) |
|
SCIP_RETCODE | SCIPgetBendersMasterVar (SCIP *scip, SCIP_BENDERS *benders, SCIP_VAR *var, SCIP_VAR **mappedvar) |
|
SCIP_RETCODE | SCIPgetBendersSubproblemVar (SCIP *scip, SCIP_BENDERS *benders, SCIP_VAR *var, SCIP_VAR **mappedvar, int probnumber) |
|
int | SCIPgetBendersNSubproblems (SCIP *scip, SCIP_BENDERS *benders) |
|
SCIP_RETCODE | SCIPaddBendersSubproblem (SCIP *scip, SCIP_BENDERS *benders, SCIP *subproblem) |
|
SCIP_RETCODE | SCIPsetupBendersSubproblem (SCIP *scip, SCIP_BENDERS *benders, SCIP_SOL *sol, int probnumber, SCIP_BENDERSENFOTYPE type) |
|
SCIP_RETCODE | SCIPsolveBendersSubproblem (SCIP *scip, SCIP_BENDERS *benders, SCIP_SOL *sol, int probnumber, SCIP_Bool *infeasible, SCIP_Bool solvecip, SCIP_Real *objective) |
|
SCIP_RETCODE | SCIPfreeBendersSubproblem (SCIP *scip, SCIP_BENDERS *benders, int probnumber) |
|
SCIP_RETCODE | SCIPcheckBendersSubproblemOptimality (SCIP *scip, SCIP_BENDERS *benders, SCIP_SOL *sol, int probnumber, SCIP_Bool *optimal) |
|
SCIP_Real | SCIPgetBendersAuxiliaryVarVal (SCIP *scip, SCIP_BENDERS *benders, SCIP_SOL *sol, int probnumber) |
|
SCIP_RETCODE | SCIPcomputeBendersSubproblemLowerbound (SCIP *scip, SCIP_BENDERS *benders, int probnumber, SCIP_Real *lowerbound, SCIP_Bool *infeasible) |
|
SCIP_RETCODE | SCIPmergeBendersSubproblemIntoMaster (SCIP *scip, SCIP_BENDERS *benders, SCIP_HASHMAP *varmap, SCIP_HASHMAP *consmap, int probnumber) |
|
SCIP_RETCODE | SCIPapplyBendersDecomposition (SCIP *scip, int decompindex) |
|
SCIP_RETCODE | SCIPincludeBenderscut (SCIP *scip, SCIP_BENDERS *benders, const char *name, const char *desc, int priority, SCIP_Bool islpcut, SCIP_DECL_BENDERSCUTCOPY((*benderscutcopy)), SCIP_DECL_BENDERSCUTFREE((*benderscutfree)), SCIP_DECL_BENDERSCUTINIT((*benderscutinit)), SCIP_DECL_BENDERSCUTEXIT((*benderscutexit)), SCIP_DECL_BENDERSCUTINITSOL((*benderscutinitsol)), SCIP_DECL_BENDERSCUTEXITSOL((*benderscutexitsol)), SCIP_DECL_BENDERSCUTEXEC((*benderscutexec)), SCIP_BENDERSCUTDATA *benderscutdata) |
|
SCIP_RETCODE | SCIPincludeBenderscutBasic (SCIP *scip, SCIP_BENDERS *benders, SCIP_BENDERSCUT **benderscutptr, const char *name, const char *desc, int priority, SCIP_Bool islpcut, SCIP_DECL_BENDERSCUTEXEC((*benderscutexec)), SCIP_BENDERSCUTDATA *benderscutdata) |
|
SCIP_RETCODE | SCIPsetBenderscutCopy (SCIP *scip, SCIP_BENDERSCUT *benderscut, SCIP_DECL_BENDERSCUTCOPY((*benderscutcopy))) |
|
SCIP_RETCODE | SCIPsetBenderscutFree (SCIP *scip, SCIP_BENDERSCUT *benderscut, SCIP_DECL_BENDERSCUTFREE((*benderscutfree))) |
|
SCIP_RETCODE | SCIPsetBenderscutInit (SCIP *scip, SCIP_BENDERSCUT *benderscut, SCIP_DECL_BENDERSCUTINIT((*benderscutinit))) |
|
SCIP_RETCODE | SCIPsetBenderscutExit (SCIP *scip, SCIP_BENDERSCUT *benderscut, SCIP_DECL_BENDERSCUTEXIT((*benderscutexit))) |
|
SCIP_RETCODE | SCIPsetBenderscutInitsol (SCIP *scip, SCIP_BENDERSCUT *benderscut, SCIP_DECL_BENDERSCUTINITSOL((*benderscutinitsol))) |
|
SCIP_RETCODE | SCIPsetBenderscutExitsol (SCIP *scip, SCIP_BENDERSCUT *benderscut, SCIP_DECL_BENDERSCUTEXITSOL((*benderscutexitsol))) |
|
SCIP_RETCODE | SCIPsetBenderscutPriority (SCIP *scip, SCIP_BENDERSCUT *benderscut, int priority) |
|
SCIP_RETCODE | SCIPstoreBendersCut (SCIP *scip, SCIP_BENDERS *benders, SCIP_VAR **vars, SCIP_Real *vals, SCIP_Real lhs, SCIP_Real rhs, int nvars) |
|
static SCIP_RETCODE | createAndApplyStoredBendersCut (SCIP *scip, SCIP_VAR **vars, SCIP_Real *vals, SCIP_Real lhs, SCIP_Real rhs, int nvars, int consindex) |
|
SCIP_RETCODE | SCIPapplyBendersStoredCuts (SCIP *scip, SCIP_BENDERS *benders) |
|