internal methods for Benders' decomposition cuts
Definition in file benderscut.h.
#include "scip/def.h"
#include "blockmemshell/memory.h"
#include "scip/type_retcode.h"
#include "scip/type_result.h"
#include "scip/type_set.h"
#include "scip/type_benderscut.h"
#include "scip/type_benders.h"
#include "scip/type_message.h"
#include "scip/pub_benderscut.h"
Go to the source code of this file.
SCIP_RETCODE SCIPbenderscutCopyInclude | ( | SCIP_BENDERS * | benders, |
SCIP_BENDERSCUT * | benderscut, | ||
SCIP_SET * | set ) |
copies the given Benders' decomposition cut to a new scip
benders | the Benders' decomposition that the cuts are copied to |
benderscut | Benders' decomposition cut |
set | SCIP_SET of SCIP to copy to |
Definition at line 86 of file benderscut.c.
References assert(), NULL, SCIP_CALL, SCIP_OKAY, SCIPbenderscutGetName(), and SCIPsetDebugMsg.
Referenced by SCIPbendersCopyInclude().
SCIP_RETCODE SCIPbenderscutCreate | ( | SCIP_BENDERS * | benders, |
SCIP_BENDERSCUT ** | benderscut, | ||
SCIP_SET * | set, | ||
SCIP_MESSAGEHDLR * | messagehdlr, | ||
BMS_BLKMEM * | blkmem, | ||
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 ) |
creates a Benders' decomposition cut
benders | Benders' decomposition |
benderscut | pointer to the Benders' decomposition cut data structure |
set | global SCIP settings |
messagehdlr | message handler |
blkmem | block memory for parameter settings |
name | name of the Benders' decomposition cut |
desc | description of the Benders' decomposition cut |
priority | priority of the the Benders' decomposition cut |
islpcut | indicates whether the cut is generated from the LP solution |
benderscutdata | Benders' decomposition cut data |
Definition at line 170 of file benderscut.c.
References assert(), doBenderscutCreate(), NULL, SCIP_Bool, SCIP_CALL_FINALLY, SCIP_OKAY, and SCIPbenderscutFree().
Referenced by SCIPincludeBenderscut(), and SCIPincludeBenderscutBasic().
SCIP_RETCODE SCIPbenderscutFree | ( | SCIP_BENDERSCUT ** | benderscut, |
SCIP_SET * | set ) |
calls destructor and frees memory of the Benders' decomposition cut
benderscut | pointer to the Benders' decomposition cut data structure |
set | global SCIP settings |
Definition at line 203 of file benderscut.c.
References assert(), BMSfreeMemory, BMSfreeMemoryArray, NULL, SCIP_CALL, SCIP_OKAY, and SCIPclockFree().
Referenced by SCIPbenderscutCreate(), and SCIPbendersFree().
SCIP_RETCODE SCIPbenderscutInit | ( | SCIP_BENDERSCUT * | benderscut, |
SCIP_SET * | set ) |
initializes the Benders' decomposition cut
benderscut | Benders' decomposition cut |
set | global SCIP settings |
Definition at line 229 of file benderscut.c.
References assert(), SCIP_Benderscut::benderscutclock, SCIP_Benderscut::initialized, SCIP_Benderscut::name, SCIP_Benderscut::ncalls, SCIP_Benderscut::nfound, NULL, SCIP_CALL, SCIP_INVALIDCALL, SCIP_OKAY, SCIPclockReset(), SCIPclockStart(), SCIPclockStop(), SCIPerrorMessage, SCIP_Benderscut::setuptime, and TRUE.
Referenced by SCIPbendersInit().
SCIP_RETCODE SCIPbenderscutExit | ( | SCIP_BENDERSCUT * | benderscut, |
SCIP_SET * | set ) |
calls exit method of the Benders' decomposition cut
benderscut | Benders' decomposition cut |
set | global SCIP settings |
Definition at line 268 of file benderscut.c.
References assert(), FALSE, SCIP_Benderscut::initialized, SCIP_Benderscut::name, NULL, SCIP_CALL, SCIP_INVALIDCALL, SCIP_OKAY, SCIPclockStart(), SCIPclockStop(), SCIPerrorMessage, and SCIP_Benderscut::setuptime.
Referenced by SCIPbendersExit().
SCIP_RETCODE SCIPbenderscutInitsol | ( | SCIP_BENDERSCUT * | benderscut, |
SCIP_SET * | set ) |
informs the Benders' decomposition cut that the branch and bound process is being started
informs Benders' cut that the branch and bound process is being started
benderscut | Benders' decomposition cut |
set | global SCIP settings |
Definition at line 298 of file benderscut.c.
References assert(), NULL, SCIP_CALL, SCIP_OKAY, SCIPclockStart(), SCIPclockStop(), and SCIP_Benderscut::setuptime.
Referenced by SCIPbendersInitsol().
SCIP_RETCODE SCIPbenderscutExitsol | ( | SCIP_BENDERSCUT * | benderscut, |
SCIP_SET * | set ) |
informs the Benders' decomposition cut that the branch and bound process data is being freed
informs Benders' decomposition that the branch and bound process data is being freed
benderscut | Benders' decomposition |
set | global SCIP settings |
Definition at line 322 of file benderscut.c.
References assert(), NULL, SCIP_CALL, SCIP_OKAY, SCIPclockStart(), SCIPclockStop(), and SCIP_Benderscut::setuptime.
Referenced by SCIPbendersExitsol().
SCIP_RETCODE SCIPbenderscutExec | ( | SCIP_BENDERSCUT * | benderscut, |
SCIP_SET * | set, | ||
SCIP_BENDERS * | benders, | ||
SCIP_SOL * | sol, | ||
int | probnumber, | ||
SCIP_BENDERSENFOTYPE | type, | ||
SCIP_RESULT * | result ) |
calls execution method of the Benders' decomposition cut
benderscut | Benders' decomposition cut |
set | global SCIP settings |
benders | Benders' decomposition |
sol | primal CIP solution |
probnumber | the number of the subproblem for which the cut is generated |
type | the enforcement type calling this function |
result | pointer to store the result of the callback method |
Definition at line 346 of file benderscut.c.
References assert(), SCIP_Benderscut::benderscutclock, SCIP_Benderscut::enabled, SCIP_Benderscut::name, SCIP_Benderscut::ncalls, SCIP_Benderscut::nfound, NULL, result, SCIP_CALL, SCIP_CONSADDED, SCIP_DIDNOTFIND, SCIP_DIDNOTRUN, SCIP_FEASIBLE, SCIP_INVALIDRESULT, SCIP_OKAY, SCIP_SEPARATED, SCIPclockStart(), SCIPclockStop(), SCIPerrorMessage, SCIPsetDebugMsg, and sol.
Referenced by generateBendersCuts().
void SCIPbenderscutSetPriority | ( | SCIP_BENDERSCUT * | benderscut, |
int | priority ) |
sets priority of the Benders' decomposition cut
benderscut | Benders' decomposition cut |
priority | new priority of the Benders' decomposition cut |
Definition at line 522 of file benderscut.c.
References assert(), NULL, and SCIP_Benderscut::priority.
Referenced by SCIPsetBenderscutPriority().
void SCIPbenderscutSetCopy | ( | SCIP_BENDERSCUT * | benderscut | ) |
sets copy callback of the Benders' decomposition cut
benderscut | Benders' decomposition cut copy callback of the Benders' decomposition cut or NULL if you don't want to copy your plugin into sub-SCIPs |
Definition at line 426 of file benderscut.c.
References assert(), and NULL.
Referenced by SCIPsetBenderscutCopy().
void SCIPbenderscutSetFree | ( | SCIP_BENDERSCUT * | benderscut | ) |
sets destructor callback of the Benders' decomposition cut
benderscut | Benders' decomposition cut destructor of the Benders' decomposition cut |
Definition at line 437 of file benderscut.c.
References assert(), and NULL.
Referenced by SCIPsetBenderscutFree().
void SCIPbenderscutSetInit | ( | SCIP_BENDERSCUT * | benderscut | ) |
sets initialization callback of the Benders' decomposition cut
benderscut | Benders' decomposition cut initialize the Benders' decomposition cut |
Definition at line 448 of file benderscut.c.
References assert(), and NULL.
Referenced by SCIPsetBenderscutInit().
void SCIPbenderscutSetExit | ( | SCIP_BENDERSCUT * | benderscut | ) |
sets deinitialization callback of the Benders' decomposition cut
benderscut | Benders' decomposition cut deinitialize the Benders' decomposition cut |
Definition at line 459 of file benderscut.c.
References assert(), and NULL.
Referenced by SCIPsetBenderscutExit().
void SCIPbenderscutSetInitsol | ( | SCIP_BENDERSCUT * | benderscut | ) |
sets solving process initialization callback of the Benders' decomposition cut
benderscut | Benders' decomposition cut solving process initialization callback of the Benders' decomposition cut |
Definition at line 470 of file benderscut.c.
References assert(), and NULL.
Referenced by SCIPsetBenderscutInitsol().
void SCIPbenderscutSetExitsol | ( | SCIP_BENDERSCUT * | benderscut | ) |
sets solving process deinitialization callback of the Benders' decomposition cut
sets solving process deinitialization callback of Benders' decomposition cut
benderscut | Benders' decomposition cut solving process deinitialization callback of the Benders' decomposition cut |
Definition at line 481 of file benderscut.c.
References assert(), and NULL.
Referenced by SCIPsetBenderscutExitsol().