methods to include and access pricer plugins of SCIP
SCIP_DECL_SORTPTRCOMP | ( | SCIPpricerComp | ) |
SCIP_DECL_SORTPTRCOMP | ( | SCIPpricerCompName | ) |
comparison method for sorting pricers w.r.t. to their name
Definition at line 63 of file pricer.c.
References active, and SCIPpricerGetName().
SCIP_PRICERDATA * SCIPpricerGetData | ( | SCIP_PRICER * | pricer | ) |
gets user data of variable pricer
pricer | variable pricer |
Definition at line 513 of file pricer.c.
References assert(), NULL, and SCIP_Pricer::pricerdata.
Referenced by doPricing(), SCIP_DECL_PRICERCOPY(), SCIP_DECL_PRICEREXIT(), SCIP_DECL_PRICEREXIT(), SCIP_DECL_PRICEREXITSOL(), SCIP_DECL_PRICEREXITSOL(), SCIP_DECL_PRICEREXITSOL(), SCIP_DECL_PRICERFARKAS(), SCIP_DECL_PRICERFREE(), SCIP_DECL_PRICERFREE(), SCIP_DECL_PRICERFREE(), SCIP_DECL_PRICERFREE(), SCIP_DECL_PRICERINIT(), SCIP_DECL_PRICERINIT(), SCIP_DECL_PRICERINIT(), SCIP_DECL_PRICERINITSOL(), SCIP_DECL_PRICERINITSOL(), SCIP_DECL_PRICERREDCOST(), SCIP_DECL_PRICERREDCOST(), SCIP_DECL_PRICERREDCOST(), SCIPfindObjPricer(), SCIPgetObjPricer(), and SCIPpricerBinpackingActivate().
void SCIPpricerSetData | ( | SCIP_PRICER * | pricer, |
SCIP_PRICERDATA * | pricerdata ) |
sets user data of variable pricer; user has to free old data in advance!
pricer | variable pricer |
pricerdata | new variable pricer user data |
Definition at line 523 of file pricer.c.
References assert(), NULL, and SCIP_Pricer::pricerdata.
Referenced by SCIP_DECL_PRICERFREE(), and SCIP_DECL_PRICERFREE().
const char * SCIPpricerGetName | ( | SCIP_PRICER * | pricer | ) |
gets name of variable pricer
pricer | variable pricer |
Definition at line 600 of file pricer.c.
References assert(), SCIP_Pricer::name, and NULL.
Referenced by SCIP_DECL_DIALOGEXEC(), SCIP_DECL_PRICERCOPY(), SCIP_DECL_SORTPTRCOMP(), SCIPincludeDialogDefaultFix(), SCIPincludeDialogDefaultSet(), SCIPpriceLoop(), SCIPpricerCopyInclude(), and SCIPprintPricerStatistics().
const char * SCIPpricerGetDesc | ( | SCIP_PRICER * | pricer | ) |
gets description of variable pricer
pricer | variable pricer |
Definition at line 610 of file pricer.c.
References assert(), SCIP_Pricer::desc, and NULL.
Referenced by SCIP_DECL_DIALOGEXEC(), SCIPincludeDialogDefaultFix(), and SCIPincludeDialogDefaultSet().
int SCIPpricerGetPriority | ( | SCIP_PRICER * | pricer | ) |
gets priority of variable pricer
pricer | variable pricer |
Definition at line 620 of file pricer.c.
References assert(), NULL, and SCIP_Pricer::priority.
Referenced by SCIP_DECL_DIALOGEXEC().
int SCIPpricerGetNCalls | ( | SCIP_PRICER * | pricer | ) |
gets the number of times, the pricer was called and tried to find a variable with negative reduced costs
pricer | variable pricer |
Definition at line 644 of file pricer.c.
References assert(), SCIP_Pricer::ncalls, and NULL.
Referenced by SCIPprintPricerStatistics().
int SCIPpricerGetNVarsFound | ( | SCIP_PRICER * | pricer | ) |
gets the number of variables with negative reduced costs found by this pricer
pricer | variable pricer |
Definition at line 654 of file pricer.c.
References assert(), NULL, and SCIP_Pricer::nvarsfound.
Referenced by SCIPprintPricerStatistics().
SCIP_Real SCIPpricerGetSetupTime | ( | SCIP_PRICER * | pricer | ) |
gets time in seconds used in this pricer for setting up for next stages
pricer | variable pricer |
Definition at line 664 of file pricer.c.
References assert(), NULL, SCIPclockGetTime(), and SCIP_Pricer::setuptime.
Referenced by SCIPprintPricerStatistics().
SCIP_Real SCIPpricerGetTime | ( | SCIP_PRICER * | pricer | ) |
gets time in seconds used in this pricer
pricer | variable pricer |
Definition at line 674 of file pricer.c.
References assert(), NULL, SCIP_Pricer::pricerclock, and SCIPclockGetTime().
Referenced by SCIPprintPricerStatistics().
SCIP_Bool SCIPpricerIsActive | ( | SCIP_PRICER * | pricer | ) |
returns whether the given pricer is in use in the current problem
pricer | variable pricer |
Definition at line 696 of file pricer.c.
References SCIP_Pricer::active, assert(), and NULL.
Referenced by SCIPsetCopyPlugins().
SCIP_Bool SCIPpricerIsDelayed | ( | SCIP_PRICER * | pricer | ) |
returns whether the pricer should be delayed until no other pricer finds a new variable
pricer | variable pricer |
Definition at line 706 of file pricer.c.
References assert(), SCIP_Pricer::delay, and NULL.
Referenced by SCIP_DECL_DIALOGEXEC().
SCIP_Bool SCIPpricerIsInitialized | ( | SCIP_PRICER * | pricer | ) |
is variable pricer initialized?
pricer | variable pricer |
Definition at line 716 of file pricer.c.
References assert(), SCIP_Pricer::initialized, and NULL.
SCIP_RETCODE SCIPincludePricer | ( | SCIP * | scip, |
const char * | name, | ||
const char * | desc, | ||
int | priority, | ||
SCIP_Bool | delay, | ||
SCIP_DECL_PRICERCOPY((*pricercopy)) | , | ||
SCIP_DECL_PRICERFREE((*pricerfree)) | , | ||
SCIP_DECL_PRICERINIT((*pricerinit)) | , | ||
SCIP_DECL_PRICEREXIT((*pricerexit)) | , | ||
SCIP_DECL_PRICERINITSOL((*pricerinitsol)) | , | ||
SCIP_DECL_PRICEREXITSOL((*pricerexitsol)) | , | ||
SCIP_DECL_PRICERREDCOST((*pricerredcost)) | , | ||
SCIP_DECL_PRICERFARKAS((*pricerfarkas)) | , | ||
SCIP_PRICERDATA * | pricerdata ) |
creates a variable pricer and includes it in SCIP To use the variable pricer for solving a problem, it first has to be activated with a call to SCIPactivatePricer(). This should be done during the problem creation stage.
scip | SCIP data structure |
name | name of variable pricer |
desc | description of variable pricer |
priority | priority of the variable pricer |
delay | should the pricer be delayed until no other pricers or already existing problem variables with negative reduced costs are found? if this is set to FALSE it may happen that the pricer produces columns that already exist in the problem (which are also priced in by the default problem variable pricing in the same round) |
pricerdata | variable pricer data |
Definition at line 69 of file scip_pricer.c.
References FALSE, NULL, SCIP_CALL, SCIP_INVALIDDATA, SCIP_OKAY, SCIPcheckStage(), SCIPerrorMessage, SCIPfindPricer(), SCIPpricerCreate(), SCIPsetIncludePricer(), and TRUE.
Referenced by SCIPincludeObjPricer().
SCIP_RETCODE SCIPincludePricerBasic | ( | SCIP * | scip, |
SCIP_PRICER ** | pricerptr, | ||
const char * | name, | ||
const char * | desc, | ||
int | priority, | ||
SCIP_Bool | delay, | ||
SCIP_DECL_PRICERREDCOST((*pricerredcost)) | , | ||
SCIP_DECL_PRICERFARKAS((*pricerfarkas)) | , | ||
SCIP_PRICERDATA * | pricerdata ) |
creates a variable pricer and includes it in SCIP with all non-fundamental callbacks set to NULL; if needed, these can be added afterwards via setter functions SCIPsetPricerCopy(), SCIPsetPricerFree(), SCIPsetPricerInity(), SCIPsetPricerExit(), SCIPsetPricerInitsol(), SCIPsetPricerExitsol(), SCIPsetPricerFarkas();
To use the variable pricer for solving a problem, it first has to be activated with a call to SCIPactivatePricer(). This should be done during the problem creation stage.
scip | SCIP data structure |
pricerptr | reference to a pricer, or NULL |
name | name of variable pricer |
desc | description of variable pricer |
priority | priority of the variable pricer |
delay | should the pricer be delayed until no other pricers or already existing problem variables with negative reduced costs are found? if this is set to FALSE it may happen that the pricer produces columns that already exist in the problem (which are also priced in by the default problem variable pricing in the same round) |
pricerdata | variable pricer data |
Definition at line 127 of file scip_pricer.c.
References FALSE, NULL, SCIP_CALL, SCIP_INVALIDDATA, SCIP_OKAY, SCIPcheckStage(), SCIPerrorMessage, SCIPfindPricer(), SCIPpricerCreate(), SCIPsetIncludePricer(), and TRUE.
Referenced by SCIPincludePricerBinpacking(), SCIPincludePricerColoring(), and SCIPincludePricerRpa().
SCIP_RETCODE SCIPsetPricerCopy | ( | SCIP * | scip, |
SCIP_PRICER * | pricer ) |
sets copy method of pricer
scip | SCIP data structure |
pricer | pricer copy method of pricer or NULL if you don't want to copy your plugin into sub-SCIPs |
Definition at line 175 of file scip_pricer.c.
References assert(), FALSE, NULL, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIPpricerSetCopy(), and TRUE.
Referenced by SCIPincludePricerColoring().
SCIP_RETCODE SCIPsetPricerFree | ( | SCIP * | scip, |
SCIP_PRICER * | pricer ) |
sets destructor method of pricer
scip | SCIP data structure |
pricer | pricer destructor of pricer |
Definition at line 199 of file scip_pricer.c.
References assert(), FALSE, NULL, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIPpricerSetFree(), and TRUE.
Referenced by SCIPincludePricerBinpacking(), SCIPincludePricerColoring(), and SCIPincludePricerRpa().
SCIP_RETCODE SCIPsetPricerInit | ( | SCIP * | scip, |
SCIP_PRICER * | pricer ) |
sets initialization method of pricer
scip | SCIP data structure |
pricer | pricer initialize pricer |
Definition at line 223 of file scip_pricer.c.
References assert(), FALSE, NULL, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIPpricerSetInit(), and TRUE.
Referenced by SCIPincludePricerBinpacking(), and SCIPincludePricerRpa().
SCIP_RETCODE SCIPsetPricerExit | ( | SCIP * | scip, |
SCIP_PRICER * | pricer ) |
sets deinitialization method of pricer
scip | SCIP data structure |
pricer | pricer deinitialize pricer |
Definition at line 247 of file scip_pricer.c.
References assert(), FALSE, NULL, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIPpricerSetExit(), and TRUE.
Referenced by SCIPincludePricerRpa().
SCIP_RETCODE SCIPsetPricerInitsol | ( | SCIP * | scip, |
SCIP_PRICER * | pricer ) |
sets solving process initialization method of pricer
scip | SCIP data structure |
pricer | pricer solving process initialization method of pricer |
Definition at line 271 of file scip_pricer.c.
References assert(), FALSE, NULL, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIPpricerSetInitsol(), and TRUE.
Referenced by SCIPincludePricerColoring().
SCIP_RETCODE SCIPsetPricerExitsol | ( | SCIP * | scip, |
SCIP_PRICER * | pricer ) |
sets solving process deinitialization method of pricer
scip | SCIP data structure |
pricer | pricer solving process deinitialization method of pricer |
Definition at line 295 of file scip_pricer.c.
References assert(), FALSE, NULL, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIPpricerSetExitsol(), and TRUE.
Referenced by SCIPincludePricerBinpacking(), and SCIPincludePricerColoring().
SCIP_PRICER * SCIPfindPricer | ( | SCIP * | scip, |
const char * | name ) |
returns the variable pricer of the given name, or NULL if not existing
scip | SCIP data structure |
name | name of variable pricer |
Definition at line 311 of file scip_pricer.c.
References assert(), NULL, and SCIPsetFindPricer().
Referenced by execmain(), readCol(), SCIPfindObjPricer(), SCIPincludePricer(), SCIPincludePricerBasic(), SCIPpricerBinpackingActivate(), and SCIPpricerRpaActivate().
SCIP_PRICER ** SCIPgetPricers | ( | SCIP * | scip | ) |
returns the array of currently available variable pricers; active pricers are in the first slots of the array
scip | SCIP data structure |
Definition at line 324 of file scip_pricer.c.
References assert(), NULL, and SCIPsetSortPricers().
Referenced by SCIP_DECL_DIALOGEXEC(), SCIPincludeDialogDefaultFix(), and SCIPincludeDialogDefaultSet().
int SCIPgetNPricers | ( | SCIP * | scip | ) |
returns the number of currently available variable pricers
scip | SCIP data structure |
Definition at line 337 of file scip_pricer.c.
References assert(), and NULL.
Referenced by SCIP_DECL_DIALOGEXEC(), SCIP_DECL_HEUREXEC(), SCIPincludeDialogDefaultFix(), and SCIPincludeDialogDefaultSet().
int SCIPgetNActivePricers | ( | SCIP * | scip | ) |
returns the number of currently active variable pricers, that are used in the LP solving loop
scip | SCIP data structure |
Definition at line 348 of file scip_pricer.c.
References assert(), and NULL.
Referenced by determineSymmetry(), doCopy(), isRestartApplicable(), SCIP_DECL_BRANCHEXECLP(), SCIP_DECL_CONSPRESOL(), SCIP_DECL_CONSPROP(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PROPEXEC(), SCIP_DECL_PROPEXEC(), SCIP_DECL_PROPEXEC(), SCIP_DECL_PROPINITSOL(), SCIP_DECL_PROPPRESOL(), SCIP_DECL_SEPAEXECLP(), SCIPapplyHeurSubNlp(), and SCIPmatrixCreate().
SCIP_RETCODE SCIPsetPricerPriority | ( | SCIP * | scip, |
SCIP_PRICER * | pricer, | ||
int | priority ) |
sets the priority of a variable pricer
sets the priority priority of a variable pricer
scip | SCIP data structure |
pricer | variable pricer |
priority | new priority of the variable pricer |
Definition at line 359 of file scip_pricer.c.
References assert(), NULL, SCIP_OKAY, and SCIPpricerSetPriority().
Referenced by SCIP_DECL_PARAMCHGD().
SCIP_RETCODE SCIPactivatePricer | ( | SCIP * | scip, |
SCIP_PRICER * | pricer ) |
activates pricer to be used for the current problem This method should be called during the problem creation stage for all pricers that are necessary to solve the problem model. The pricers are automatically deactivated when the problem is freed.
scip | SCIP data structure |
pricer | variable pricer |
Definition at line 384 of file scip_pricer.c.
References FALSE, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIPpricerActivate(), and TRUE.
Referenced by execmain(), readCol(), SCIPpricerBinpackingActivate(), and SCIPpricerRpaActivate().
SCIP_RETCODE SCIPdeactivatePricer | ( | SCIP * | scip, |
SCIP_PRICER * | pricer ) |
deactivates pricer
deactivates pricer
scip | SCIP data structure |
pricer | variable pricer |
Definition at line 406 of file scip_pricer.c.
References FALSE, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIPpricerDeactivate(), and TRUE.