internal methods for IIS finder
Definition in file iisfinder.h.
#include "scip/def.h"#include "blockmemshell/memory.h"#include "scip/type_retcode.h"#include "scip/type_set.h"#include "scip/pub_iisfinder.h"#include "scip/lp.h"Go to the source code of this file.
| SCIP_RETCODE SCIPiisfinderCreate | ( | SCIP_IISFINDER ** | iisfinder, |
| SCIP_SET * | set, | ||
| SCIP_MESSAGEHDLR * | messagehdlr, | ||
| BMS_BLKMEM * | blkmem, | ||
| const char * | name, | ||
| const char * | desc, | ||
| int | priority, | ||
| SCIP_DECL_IISFINDERCOPY((*iisfindercopy)) | , | ||
| SCIP_DECL_IISFINDERFREE((*iisfinderfree)) | , | ||
| SCIP_DECL_IISFINDEREXEC((*iisfinderexec)) | , | ||
| SCIP_IISFINDERDATA * | iisfinderdata ) |
creates an IIS finder
| iisfinder | pointer to store IIS finder |
| set | global SCIP settings |
| messagehdlr | message handler |
| blkmem | block memory for parameter settings |
| name | name of IIS finder |
| desc | description of IIS finder |
| priority | priority of the IIS finder in standard mode |
| iisfinderdata | IIS finder data |
Definition at line 288 of file iisfinder.c.
References assert(), doIISfinderCreate(), NULL, SCIP_CALL_FINALLY, SCIP_DECL_IISFINDERCOPY, SCIP_DECL_IISFINDEREXEC, SCIP_DECL_IISFINDERFREE, SCIP_OKAY, and SCIPiisfinderFree().
Referenced by SCIPincludeIISfinder(), and SCIPincludeIISfinderBasic().
| void SCIPiisfinderEnableOrDisableClocks | ( | SCIP_IISFINDER * | iisfinder, |
| SCIP_Bool | enable ) |
enables or disables all clocks of iisfinder, depending on the value of the flag
| iisfinder | the IIS finder for which all clocks should be enabled or disabled |
| enable | should the clocks of the IIS be enabled? |
Definition at line 683 of file iisfinder.c.
References assert(), SCIP_IISfinder::iisfindertime, NULL, SCIP_Bool, and SCIPclockEnableOrDisable().
| SCIP_RETCODE SCIPiisGenerate | ( | SCIP_SET * | set | ) |
calls the IIS finder generation method
calls IIS finder generation method
| set | global SCIP settings |
Definition at line 324 of file iisfinder.c.
References assert(), checkTrivialInfeas(), createSubscipIIS(), FALSE, i, SCIP_IISfinder::iisfindertime, SCIP_IIS::iistime, SCIP_IIS::infeasible, SCIP_IIS::irreducible, SCIP_IISfinder::name, SCIP_IIS::nnodes, NULL, nvars, result, SCIP_Bool, SCIP_CALL, SCIP_DIDNOTFIND, SCIP_DIDNOTRUN, SCIP_Longint, SCIP_OKAY, SCIP_Real, SCIP_STAGE_PROBLEM, SCIP_STAGE_SOLVED, SCIP_STATUS_BESTSOLLIMIT, SCIP_STATUS_DUALLIMIT, SCIP_STATUS_GAPLIMIT, SCIP_STATUS_INFEASIBLE, SCIP_STATUS_INFORUNBD, SCIP_STATUS_MEMLIMIT, SCIP_STATUS_NODELIMIT, SCIP_STATUS_OPTIMAL, SCIP_STATUS_PRIMALLIMIT, SCIP_STATUS_RESTARTLIMIT, SCIP_STATUS_SOLLIMIT, SCIP_STATUS_STALLNODELIMIT, SCIP_STATUS_TERMINATE, SCIP_STATUS_TIMELIMIT, SCIP_STATUS_TOTALNODELIMIT, SCIP_STATUS_UNBOUNDED, SCIP_STATUS_UNKNOWN, SCIP_STATUS_USERINTERRUPT, SCIP_SUCCESS, SCIPclockGetTime(), SCIPclockStart(), SCIPclockStop(), SCIPconsGetHdlr(), SCIPconsGetNUses(), SCIPconshdlrGetName(), SCIPdebugMsg, SCIPdelCons(), SCIPdelVar(), SCIPfreeTransform(), SCIPgetBoolParam(), SCIPgetIIS(), SCIPgetLongintParam(), SCIPgetNOrigConss(), SCIPgetNOrigVars(), SCIPgetNTotalNodes(), SCIPgetNVarsLinear(), SCIPgetOrigConss(), SCIPgetOrigVars(), SCIPgetRealParam(), SCIPgetStage(), SCIPgetStatus(), SCIPgetVarsLinear(), SCIPiisfinderInfoMessage(), SCIPiisGetNNodes(), SCIPiisGetTime(), SCIPiisGreedyMakeIrreducible(), SCIPiisReset(), SCIPiisSetSubscipIrreducible(), SCIPinfoMessage(), SCIPisInfinity(), SCIPsetSortIISfinders(), SCIPsolve(), SCIPvarGetLbOriginal(), SCIPvarGetNUses(), SCIPvarGetUbOriginal(), SCIPvarIsDeletable(), SCIP_IIS::subscip, TRUE, and vars.
Referenced by SCIPgenerateIIS().
| SCIP_RETCODE SCIPiisfinderCopyInclude | ( | SCIP_IISFINDER * | iisfinder, |
| SCIP_SET * | set ) |
copies the given IIS finder to a new scip
Definition at line 604 of file iisfinder.c.
References assert(), NULL, SCIP_CALL, SCIP_OKAY, SCIPiisfinderGetName(), and SCIPsetDebugMsg.
Referenced by SCIPsetCopyPlugins().
| void SCIPiisfinderSetCopy | ( | SCIP_IISFINDER * | iisfinder | ) |
sets copy method of IIS finder
| iisfinder | IIS finder copy method of IIS finder or NULL if you don't want to copy your plugin into sub-SCIPs |
Definition at line 694 of file iisfinder.c.
References assert(), NULL, and SCIP_DECL_IISFINDERCOPY.
Referenced by SCIPsetIISfinderCopy().
| SCIP_RETCODE SCIPiisfinderFree | ( | SCIP_IISFINDER ** | iisfinder, |
| SCIP_SET * | set, | ||
| BMS_BLKMEM * | blkmem ) |
frees memory of IIS finder
| iisfinder | IIS finder |
| set | global SCIP settings |
| blkmem | block memory |
Definition at line 622 of file iisfinder.c.
References assert(), BMSfreeBlockMemory, BMSfreeBlockMemoryArrayNull, NULL, SCIP_CALL, SCIP_OKAY, and SCIPclockFree().
Referenced by SCIPiisfinderCreate().
| void SCIPiisfinderSetFree | ( | SCIP_IISFINDER * | iisfinder | ) |
sets destructor method of IIS finder
| iisfinder | IIS finder destructor of IIS finder |
Definition at line 705 of file iisfinder.c.
References assert(), NULL, and SCIP_DECL_IISFINDERFREE.
Referenced by SCIPsetIISfinderFree().
| void SCIPiisfinderSetPriority | ( | SCIP_IISFINDER * | iisfinder, |
| SCIP_SET * | set, | ||
| int | priority ) |
sets priority of IIS finder
| iisfinder | IIS finder |
| set | global SCIP settings |
| priority | new priority of the IIS finder |
Definition at line 716 of file iisfinder.c.
References assert(), FALSE, NULL, and SCIP_IISfinder::priority.
Referenced by SCIPsetIISfinderPriority().
| SCIP_RETCODE SCIPiisCreate | ( | SCIP_IIS ** | iis, |
| SCIP_SET * | set, | ||
| BMS_BLKMEM * | blkmem ) |
creates and captures a new IIS
| iis | pointer to return the created IIS |
| set | global SCIP settings |
| blkmem | block memory |
Definition at line 776 of file iisfinder.c.
References assert(), BMSallocBlockMemory, FALSE, NULL, SCIP_ALLOC, SCIP_CALL, SCIP_CLOCKTYPE_DEFAULT, SCIP_OKAY, SCIPclockCreate(), SCIPrandomCreate(), and SCIPsetInitializeRandomSeed().
Referenced by doScipCreate().
| SCIP_RETCODE SCIPiisFree | ( | SCIP_IIS ** | iis, |
| BMS_BLKMEM * | blkmem ) |
releases an IIS
| iis | pointer to the IIS |
| blkmem | block memory |
Definition at line 801 of file iisfinder.c.
References assert(), BMSfreeBlockMemory, NULL, SCIP_CALL, SCIP_OKAY, SCIPclockFree(), SCIPfree(), SCIPhashmapFree(), and SCIPrandomFree().
Referenced by SCIPfree().
| SCIP_RETCODE SCIPiisReset | ( | SCIP_IIS ** | iis | ) |
reset an IIS (in case one exists from a previous solve)
| iis | pointer to the IIS |
Definition at line 843 of file iisfinder.c.
References assert(), FALSE, NULL, SCIP_CALL, SCIP_OKAY, SCIPclockReset(), SCIPfree(), and SCIPhashmapFree().
Referenced by createSubscipIIS(), and SCIPiisGenerate().