C++ wrapper for the Benders' decomposition plugins.
Definition in file objbenders.cpp.
Go to the source code of this file.
Functions | |
static | SCIP_DECL_BENDERSCOPY (bendersCopyObj) |
static | SCIP_DECL_BENDERSFREE (bendersFreeObj) |
static | SCIP_DECL_BENDERSINIT (bendersInitObj) |
static | SCIP_DECL_BENDERSEXIT (bendersExitObj) |
static | SCIP_DECL_BENDERSINITPRE (bendersInitpreObj) |
static | SCIP_DECL_BENDERSEXITPRE (bendersExitpreObj) |
static | SCIP_DECL_BENDERSINITSOL (bendersInitsolObj) |
static | SCIP_DECL_BENDERSEXITSOL (bendersExitsolObj) |
static | SCIP_DECL_BENDERSCREATESUB (bendersCreatesubObj) |
static | SCIP_DECL_BENDERSPRESUBSOLVE (bendersPresubsolveObj) |
static | SCIP_DECL_BENDERSSOLVESUBCONVEX (bendersSolvesubconvexObj) |
static | SCIP_DECL_BENDERSSOLVESUB (bendersSolvesubObj) |
static | SCIP_DECL_BENDERSPOSTSOLVE (bendersPostsolveObj) |
static | SCIP_DECL_BENDERSFREESUB (bendersFreesubObj) |
static | SCIP_DECL_BENDERSGETVAR (bendersGetvarObj) |
SCIP_RETCODE | SCIPincludeObjBenders (SCIP *scip, scip::ObjBenders *objbenders, SCIP_Bool deleteobject) |
scip::ObjBenders * | SCIPfindObjBenders (SCIP *scip, const char *name) |
scip::ObjBenders * | SCIPgetObjBenders (SCIP *scip, SCIP_BENDERS *benders) |
|
static |
copy method for Benders' decomposition plugins (called when SCIP copies plugins)
Definition at line 62 of file objbenders.cpp.
References assert(), NULL, SCIP_CALL, SCIP_OKAY, SCIPbendersGetData(), SCIPincludeObjBenders(), and TRUE.
|
static |
destructor of Benders' decomposition to free user data (called when SCIP is exiting)
Definition at line 87 of file objbenders.cpp.
References assert(), NULL, SCIP_CALL, SCIP_OKAY, SCIPbendersGetData(), and SCIPbendersSetData().
|
static |
initialization method of Benders' decomposition (called after problem was transformed)
Definition at line 113 of file objbenders.cpp.
References assert(), NULL, SCIP_CALL, SCIP_OKAY, and SCIPbendersGetData().
|
static |
deinitialization method of Benders' decomposition (called before transformed problem is freed)
Definition at line 131 of file objbenders.cpp.
References assert(), NULL, SCIP_CALL, SCIP_OKAY, and SCIPbendersGetData().
|
static |
presolving initialization method of Benders' decomposition (called when presolving is about to begin)
Definition at line 148 of file objbenders.cpp.
References assert(), NULL, SCIP_CALL, SCIP_OKAY, and SCIPbendersGetData().
|
static |
presolving deinitialization method of Benders' decomposition (called after presolving has been finished)
Definition at line 165 of file objbenders.cpp.
References assert(), NULL, SCIP_CALL, SCIP_OKAY, and SCIPbendersGetData().
|
static |
solving process initialization method of Benders' decomposition (called when branch and bound process is about to begin)
Definition at line 182 of file objbenders.cpp.
References assert(), NULL, SCIP_CALL, SCIP_OKAY, and SCIPbendersGetData().
|
static |
solving process deinitialization method of Benders' decomposition (called before branch and bound process data is freed)
Definition at line 199 of file objbenders.cpp.
References assert(), NULL, SCIP_CALL, SCIP_OKAY, and SCIPbendersGetData().
|
static |
method that is called to create the subproblem and register it with the Benders' decomposition structure.
Definition at line 216 of file objbenders.cpp.
References assert(), NULL, SCIP_CALL, SCIP_OKAY, and SCIPbendersGetData().
|
static |
methods called prior to solving the subproblems
Definition at line 233 of file objbenders.cpp.
References assert(), NULL, result, SCIP_CALL, SCIP_OKAY, SCIPbendersGetData(), and sol.
|
static |
method called to solve the convex relaxation of an individual subproblem of the Benders' decomposition
Definition at line 251 of file objbenders.cpp.
References assert(), NULL, result, SCIP_CALL, SCIP_OKAY, SCIPbendersGetData(), and sol.
|
static |
method called to solve an individual subproblem of the Benders' decomposition
Definition at line 269 of file objbenders.cpp.
References assert(), NULL, result, SCIP_CALL, SCIP_OKAY, SCIPbendersGetData(), and sol.
|
static |
method called after the subproblems are solved in the Benders' decomposition algorithm
Definition at line 286 of file objbenders.cpp.
References assert(), NULL, SCIP_CALL, SCIP_OKAY, SCIPbendersGetData(), and sol.
|
static |
frees an individual subproblem. Called in each iteration of the Benders' decomposition algorithm
Definition at line 304 of file objbenders.cpp.
References assert(), NULL, SCIP_CALL, SCIP_OKAY, and SCIPbendersGetData().
|
static |
callback method to retrieve the master (subproblem) variable corresponding to the input subproblem (master) variable
Definition at line 321 of file objbenders.cpp.
References assert(), NULL, SCIP_CALL, SCIP_OKAY, SCIPbendersGetData(), and var.
SCIP_RETCODE SCIPincludeObjBenders | ( | SCIP * | scip, |
scip::ObjBenders * | objbenders, | ||
SCIP_Bool | deleteobject ) |
creates the Benders' decomposition for the given Benders' decomposition object and includes it in SCIP
scip | SCIP data structure |
objbenders | Benders' decomposition object |
deleteobject | should the Benders' decomposition object be deleted when benders is freed? |
Definition at line 344 of file objbenders.cpp.
References assert(), NULL, scip::ObjBenders::scip_, SCIP_Bool, SCIP_CALL, scip::ObjBenders::scip_cutlp_, scip::ObjBenders::scip_cutpseudo_, scip::ObjBenders::scip_cutrelax_, scip::ObjBenders::scip_desc_, scip::ObjBenders::scip_name_, SCIP_OKAY, scip::ObjBenders::scip_priority_, scip::ObjBenders::scip_shareauxvars_, and SCIPincludeBenders().
Referenced by SCIP_DECL_BENDERSCOPY().
scip::ObjBenders * SCIPfindObjBenders | ( | SCIP * | scip, |
const char * | name ) |
returns the benders object of the given name, or 0 if not existing
scip | SCIP data structure |
name | name of Benders' decomposition |
Definition at line 373 of file objbenders.cpp.
References assert(), NULL, SCIPbendersGetData(), and SCIPfindBenders().
scip::ObjBenders * SCIPgetObjBenders | ( | SCIP * | scip, |
SCIP_BENDERS * | benders ) |
returns the benders object for the given Benders' decomposition
scip | SCIP data structure |
benders | Benders' decomposition |
Definition at line 392 of file objbenders.cpp.
References assert(), NULL, and SCIPbendersGetData().
Referenced by SCIP_DECL_BENDERSCUTCOPY().