methods for presolver plugins
Modules | |
Special Methods | |
methods commonly used for presolving | |
SCIP_DECL_SORTPTRCOMP | ( | SCIPpresolComp | ) |
SCIP_DECL_SORTPTRCOMP | ( | SCIPpresolCompName | ) |
comparison method for sorting presolvers w.r.t. to their name
Definition at line 53 of file presol.c.
References SCIPpresolGetName().
SCIP_PRESOLDATA* SCIPpresolGetData | ( | SCIP_PRESOL * | presol | ) |
gets user data of presolver
presol | presolver |
Definition at line 466 of file presol.c.
References NULL, and SCIP_Presol::presoldata.
Referenced by SCIP_DECL_PRESOLCOPY(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXIT(), SCIP_DECL_PRESOLEXITPRE(), SCIP_DECL_PRESOLFREE(), SCIP_DECL_PRESOLINIT(), SCIP_DECL_PRESOLINITPRE(), SCIPfindObjPresol(), and SCIPgetObjPresol().
void SCIPpresolSetData | ( | SCIP_PRESOL * | presol, |
SCIP_PRESOLDATA * | presoldata | ||
) |
sets user data of presolver; user has to free old data in advance!
presol | presolver |
presoldata | new presolver user data |
Definition at line 476 of file presol.c.
References NULL, and SCIP_Presol::presoldata.
Referenced by SCIP_DECL_PRESOLFREE().
const char* SCIPpresolGetName | ( | SCIP_PRESOL * | presol | ) |
gets name of presolver
presol | presolver |
Definition at line 553 of file presol.c.
References SCIP_Presol::name, and NULL.
Referenced by paramsetSetPresolvingDefault(), paramsetSetPresolvingOff(), presolveRound(), printPresolverStatistics(), SCIP_DECL_DIALOGEXEC(), SCIP_DECL_PRESOLCOPY(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_SORTPTRCOMP(), SCIPcopyConcurrentSolvingStats(), SCIPincludeDialogDefaultFix(), SCIPincludeDialogDefaultSet(), SCIPpresolCopyInclude(), and SCIPsetFindConflicthdlr().
const char* SCIPpresolGetDesc | ( | SCIP_PRESOL * | presol | ) |
gets description of presolver
presol | presolver |
Definition at line 563 of file presol.c.
References SCIP_Presol::desc, and NULL.
Referenced by SCIP_DECL_DIALOGEXEC(), SCIPincludeDialogDefaultFix(), and SCIPincludeDialogDefaultSet().
int SCIPpresolGetPriority | ( | SCIP_PRESOL * | presol | ) |
gets priority of presolver
presol | presolver |
Definition at line 573 of file presol.c.
References NULL, and SCIP_Presol::priority.
Referenced by presolveRound(), and SCIP_DECL_DIALOGEXEC().
int SCIPpresolGetMaxrounds | ( | SCIP_PRESOL * | presol | ) |
gets round limit of presolver
presol | presolver |
Definition at line 583 of file presol.c.
References SCIP_Presol::maxrounds, and NULL.
Referenced by SCIP_DECL_DIALOGEXEC().
SCIP_PRESOLTIMING SCIPpresolGetTiming | ( | SCIP_PRESOL * | presol | ) |
gets the timing mask of the presolver
presol | presolver |
Definition at line 607 of file presol.c.
References NULL, and SCIP_Presol::timing.
Referenced by SCIP_DECL_DIALOGEXEC().
void SCIPpresolSetTiming | ( | SCIP_PRESOL * | presol, |
SCIP_PRESOLTIMING | timing | ||
) |
sets the timing mask of the presolver
presol | presolver |
timing | timing mask of the presolver |
Definition at line 617 of file presol.c.
References NULL, and SCIP_Presol::timing.
SCIP_Bool SCIPpresolIsInitialized | ( | SCIP_PRESOL * | presol | ) |
is presolver initialized?
presol | presolver |
Definition at line 629 of file presol.c.
References SCIP_Presol::initialized, and NULL.
SCIP_Real SCIPpresolGetSetupTime | ( | SCIP_PRESOL * | presol | ) |
gets time in seconds used in this presolver for setting up for next stages
presol | presolver |
Definition at line 651 of file presol.c.
References NULL, SCIPclockGetTime(), and SCIP_Presol::setuptime.
Referenced by printPresolverStatistics().
SCIP_Real SCIPpresolGetTime | ( | SCIP_PRESOL * | presol | ) |
gets time in seconds used in this presolver
presol | presolver |
Definition at line 661 of file presol.c.
References NULL, SCIP_Presol::presolclock, and SCIPclockGetTime().
Referenced by printPresolverStatistics().
int SCIPpresolGetNFixedVars | ( | SCIP_PRESOL * | presol | ) |
gets number of variables fixed in presolver
presol | presolver |
Definition at line 671 of file presol.c.
References SCIP_Presol::nfixedvars, and NULL.
Referenced by printPresolverStatistics().
int SCIPpresolGetNAggrVars | ( | SCIP_PRESOL * | presol | ) |
gets number of variables aggregated in presolver
presol | presolver |
Definition at line 681 of file presol.c.
References SCIP_Presol::naggrvars, and NULL.
Referenced by printPresolverStatistics().
int SCIPpresolGetNChgVarTypes | ( | SCIP_PRESOL * | presol | ) |
gets number of variable types changed in presolver
presol | presolver |
Definition at line 691 of file presol.c.
References SCIP_Presol::nchgvartypes, and NULL.
Referenced by printPresolverStatistics().
int SCIPpresolGetNChgBds | ( | SCIP_PRESOL * | presol | ) |
gets number of bounds changed in presolver
presol | presolver |
Definition at line 701 of file presol.c.
References SCIP_Presol::nchgbds, and NULL.
Referenced by printPresolverStatistics().
int SCIPpresolGetNAddHoles | ( | SCIP_PRESOL * | presol | ) |
gets number of holes added to domains of variables in presolver
presol | presolver |
Definition at line 711 of file presol.c.
References SCIP_Presol::naddholes, and NULL.
Referenced by printPresolverStatistics().
int SCIPpresolGetNDelConss | ( | SCIP_PRESOL * | presol | ) |
gets number of constraints deleted in presolver
presol | presolver |
Definition at line 721 of file presol.c.
References SCIP_Presol::ndelconss, and NULL.
Referenced by printPresolverStatistics().
int SCIPpresolGetNAddConss | ( | SCIP_PRESOL * | presol | ) |
gets number of constraints added in presolver
presol | presolver |
Definition at line 731 of file presol.c.
References SCIP_Presol::naddconss, and NULL.
Referenced by printPresolverStatistics().
int SCIPpresolGetNUpgdConss | ( | SCIP_PRESOL * | presol | ) |
gets number of constraints upgraded in presolver
presol | presolver |
Definition at line 741 of file presol.c.
References NULL, and SCIP_Presol::nupgdconss.
int SCIPpresolGetNChgCoefs | ( | SCIP_PRESOL * | presol | ) |
gets number of coefficients changed in presolver
presol | presolver |
Definition at line 751 of file presol.c.
References SCIP_Presol::nchgcoefs, and NULL.
Referenced by printPresolverStatistics().
int SCIPpresolGetNChgSides | ( | SCIP_PRESOL * | presol | ) |
gets number of constraint sides changed in presolver
presol | presolver |
Definition at line 761 of file presol.c.
References SCIP_Presol::nchgsides, and NULL.
Referenced by printPresolverStatistics().
int SCIPpresolGetNCalls | ( | SCIP_PRESOL * | presol | ) |
gets number of times the presolver was called and tried to find reductions
presol | presolver |
Definition at line 771 of file presol.c.
References SCIP_Presol::ncalls, and NULL.
Referenced by printPresolverStatistics().
SCIP_RETCODE SCIPincludePresol | ( | SCIP * | scip, |
const char * | name, | ||
const char * | desc, | ||
int | priority, | ||
int | maxrounds, | ||
SCIP_PRESOLTIMING | timing, | ||
SCIP_DECL_PRESOLCOPY((*presolcopy)) | , | ||
SCIP_DECL_PRESOLFREE((*presolfree)) | , | ||
SCIP_DECL_PRESOLINIT((*presolinit)) | , | ||
SCIP_DECL_PRESOLEXIT((*presolexit)) | , | ||
SCIP_DECL_PRESOLINITPRE((*presolinitpre)) | , | ||
SCIP_DECL_PRESOLEXITPRE((*presolexitpre)) | , | ||
SCIP_DECL_PRESOLEXEC((*presolexec)) | , | ||
SCIP_PRESOLDATA * | presoldata | ||
) |
creates a presolver and includes it in SCIP
creates a presolver and includes it in SCIP.
scip | SCIP data structure |
name | name of presolver |
desc | description of presolver |
priority | priority of the presolver (>= 0: before, < 0: after constraint handlers) |
maxrounds | maximal number of presolving rounds the presolver participates in (-1: no limit) |
timing | timing mask of the presolver |
presoldata | presolver data |
Definition at line 6846 of file scip.c.
References checkStage(), FALSE, Scip::mem, Scip::messagehdlr, NULL, SCIP_CALL, SCIP_INVALIDDATA, SCIP_OKAY, SCIPerrorMessage, SCIPfindPresol(), SCIPpresolCreate(), SCIPsetIncludePresol(), Scip::set, SCIP_Mem::setmem, and TRUE.
Referenced by SCIPincludeObjPresol().
SCIP_RETCODE SCIPincludePresolBasic | ( | SCIP * | scip, |
SCIP_PRESOL ** | presolptr, | ||
const char * | name, | ||
const char * | desc, | ||
int | priority, | ||
int | maxrounds, | ||
SCIP_PRESOLTIMING | timing, | ||
SCIP_DECL_PRESOLEXEC((*presolexec)) | , | ||
SCIP_PRESOLDATA * | presoldata | ||
) |
Creates a presolver and includes it in SCIP with its fundamental callback. All non-fundamental (or optional) callbacks as, e.g., init and exit callbacks, will be set to NULL. Optional callbacks can be set via specific setter functions. These are SCIPsetPresolCopy(), SCIPsetPresolFree(), SCIPsetPresolInit(), SCIPsetPresolExit(), SCIPsetPresolInitpre(), and SCIPsetPresolExitPre().
creates a presolver and includes it in SCIP with its fundamental callback. All non-fundamental (or optional) callbacks as, e.g., init and exit callbacks, will be set to NULL. Optional callbacks can be set via specific setter functions. These are SCIPsetPresolCopy(), SCIPsetPresolFree(), SCIPsetPresolInit(), SCIPsetPresolExit(), SCIPsetPresolInitpre(), and SCIPsetPresolExitPre().
scip | SCIP data structure |
presolptr | reference to presolver, or NULL |
name | name of presolver |
desc | description of presolver |
priority | priority of the presolver (>= 0: before, < 0: after constraint handlers) |
maxrounds | maximal number of presolving rounds the presolver participates in (-1: no limit) |
timing | timing mask of the presolver |
presoldata | presolver data |
Definition at line 6889 of file scip.c.
References checkStage(), FALSE, Scip::mem, Scip::messagehdlr, NULL, SCIP_CALL, SCIP_INVALIDDATA, SCIP_OKAY, SCIPerrorMessage, SCIPfindPresol(), SCIPpresolCreate(), SCIPsetIncludePresol(), Scip::set, SCIP_Mem::setmem, and TRUE.
Referenced by SCIPincludePresolBoundshift(), SCIPincludePresolConvertinttobin(), SCIPincludePresolDomcol(), SCIPincludePresolDualagg(), SCIPincludePresolDualcomp(), SCIPincludePresolDualinfer(), SCIPincludePresolImplfree(), SCIPincludePresolImplics(), SCIPincludePresolInttobinary(), SCIPincludePresolQPKKTref(), SCIPincludePresolRedvub(), SCIPincludePresolStuffing(), SCIPincludePresolTrivial(), and SCIPincludePresolTworowbnd().
SCIP_RETCODE SCIPsetPresolCopy | ( | SCIP * | scip, |
SCIP_PRESOL * | presol, | ||
SCIP_DECL_PRESOLCOPY((*presolcopy)) | |||
) |
sets copy method of presolver
scip | SCIP data structure |
presol | presolver |
Definition at line 6924 of file scip.c.
References checkStage(), FALSE, NULL, SCIP_CALL, SCIP_OKAY, SCIPpresolSetCopy(), and TRUE.
Referenced by SCIPincludePresolBoundshift(), SCIPincludePresolConvertinttobin(), SCIPincludePresolDomcol(), SCIPincludePresolDualcomp(), SCIPincludePresolDualinfer(), SCIPincludePresolImplfree(), SCIPincludePresolImplics(), SCIPincludePresolInttobinary(), SCIPincludePresolQPKKTref(), SCIPincludePresolStuffing(), SCIPincludePresolTrivial(), and SCIPincludePresolTworowbnd().
SCIP_RETCODE SCIPsetPresolFree | ( | SCIP * | scip, |
SCIP_PRESOL * | presol, | ||
SCIP_DECL_PRESOLFREE((*presolfree)) | |||
) |
sets destructor method of presolver
scip | SCIP data structure |
presol | presolver |
Definition at line 6940 of file scip.c.
References checkStage(), FALSE, NULL, SCIP_CALL, SCIP_OKAY, SCIPpresolSetFree(), and TRUE.
Referenced by SCIPincludePresolBoundshift(), SCIPincludePresolConvertinttobin(), SCIPincludePresolDomcol(), SCIPincludePresolDualcomp(), and SCIPincludePresolQPKKTref().
SCIP_RETCODE SCIPsetPresolInit | ( | SCIP * | scip, |
SCIP_PRESOL * | presol, | ||
SCIP_DECL_PRESOLINIT((*presolinit)) | |||
) |
sets initialization method of presolver
scip | SCIP data structure |
presol | presolver |
Definition at line 6956 of file scip.c.
References checkStage(), FALSE, NULL, SCIP_CALL, SCIP_OKAY, SCIPpresolSetInit(), and TRUE.
SCIP_RETCODE SCIPsetPresolExit | ( | SCIP * | scip, |
SCIP_PRESOL * | presol, | ||
SCIP_DECL_PRESOLEXIT((*presolexit)) | |||
) |
sets deinitialization method of presolver
scip | SCIP data structure |
presol | presolver |
Definition at line 6972 of file scip.c.
References checkStage(), FALSE, NULL, SCIP_CALL, SCIP_OKAY, SCIPpresolSetExit(), and TRUE.
SCIP_RETCODE SCIPsetPresolInitpre | ( | SCIP * | scip, |
SCIP_PRESOL * | presol, | ||
SCIP_DECL_PRESOLINITPRE((*presolinitpre)) | |||
) |
sets solving process initialization method of presolver
scip | SCIP data structure |
presol | presolver |
Definition at line 6988 of file scip.c.
References checkStage(), FALSE, NULL, SCIP_CALL, SCIP_OKAY, SCIPpresolSetInitpre(), and TRUE.
SCIP_RETCODE SCIPsetPresolExitpre | ( | SCIP * | scip, |
SCIP_PRESOL * | presol, | ||
SCIP_DECL_PRESOLEXITPRE((*presolexitpre)) | |||
) |
sets solving process deinitialization method of presolver
scip | SCIP data structure |
presol | presolver |
Definition at line 7004 of file scip.c.
References checkStage(), FALSE, NULL, SCIP_CALL, SCIP_OKAY, SCIPpresolSetExitpre(), and TRUE.
SCIP_PRESOL* SCIPfindPresol | ( | SCIP * | scip, |
const char * | name | ||
) |
returns the presolver of the given name, or NULL if not existing
scip | SCIP data structure |
name | name of presolver |
Definition at line 7020 of file scip.c.
References NULL, SCIPsetFindPresol(), and Scip::set.
Referenced by SCIPcopyConcurrentSolvingStats(), SCIPfindObjPresol(), SCIPincludePresol(), and SCIPincludePresolBasic().
SCIP_PRESOL** SCIPgetPresols | ( | SCIP * | scip | ) |
returns the array of currently available presolvers
scip | SCIP data structure |
Definition at line 7033 of file scip.c.
References NULL, SCIP_Set::presols, SCIPsetSortPresols(), and Scip::set.
Referenced by SCIP_DECL_DIALOGEXEC(), SCIPcopyConcurrentSolvingStats(), SCIPincludeDialogDefaultFix(), and SCIPincludeDialogDefaultSet().
int SCIPgetNPresols | ( | SCIP * | scip | ) |
returns the number of currently available presolvers
scip | SCIP data structure |
Definition at line 7046 of file scip.c.
References SCIP_Set::npresols, NULL, and Scip::set.
Referenced by SCIP_DECL_DIALOGEXEC(), SCIPcopyConcurrentSolvingStats(), SCIPincludeDialogDefaultFix(), and SCIPincludeDialogDefaultSet().
SCIP_RETCODE SCIPsetPresolPriority | ( | SCIP * | scip, |
SCIP_PRESOL * | presol, | ||
int | priority | ||
) |
sets the priority of a presolver
scip | SCIP data structure |
presol | presolver |
priority | new priority of the presolver |
Definition at line 7057 of file scip.c.
References NULL, SCIP_OKAY, SCIPpresolSetPriority(), and Scip::set.
Referenced by SCIP_DECL_PARAMCHGD().