Detailed Description
functions for analyzing infeasibility of a model (IIS, MinUC), see also How to deduce reasons for infeasibility in SCIP
Functions | |
| SCIP_RETCODE | SCIPtransformMinUC (SCIP *scip, SCIP_Bool *success) |
| SCIP_Real | SCIPiisGetTime (SCIP_IIS *iis) |
| SCIP_Bool | SCIPiisIsSubscipInfeasible (SCIP_IIS *iis) |
| SCIP_Bool | SCIPiisIsSubscipIrreducible (SCIP_IIS *iis) |
| SCIP_Longint | SCIPiisGetNNodes (SCIP_IIS *iis) |
| void | SCIPiisSetSubscipInfeasible (SCIP_IIS *iis, SCIP_Bool infeasible) |
| void | SCIPiisSetSubscipIrreducible (SCIP_IIS *iis, SCIP_Bool irreducible) |
| void | SCIPiisAddNNodes (SCIP_IIS *iis, SCIP_Longint nnodes) |
| SCIP_RANDNUMGEN * | SCIPiisGetRandnumgen (SCIP_IIS *iis) |
| SCIP * | SCIPiisGetSubscip (SCIP_IIS *iis) |
| SCIP_CONS * | SCIPiisGetSubscipCons (SCIP_IIS *iis, SCIP_CONS *cons) |
| SCIP_VAR * | SCIPiisGetSubscipVar (SCIP_IIS *iis, SCIP_VAR *var) |
| SCIP_HASHMAP * | SCIPiisGetVarsmap (SCIP_IIS *iis) |
| SCIP_HASHMAP * | SCIPiisGetConssmap (SCIP_IIS *iis) |
| SCIP_RETCODE | SCIPgenerateIIS (SCIP *scip) |
| SCIP_IIS * | SCIPgetIIS (SCIP *scip) |
Function Documentation
◆ SCIPtransformMinUC()
| SCIP_RETCODE SCIPtransformMinUC | ( | SCIP * | scip, |
| SCIP_Bool * | success | ||
| ) |
transforms the current problem into a MinUC problem (minimizing the number of unsatisfied constraints), a CIP generalization of the MinULR (min. unsatisfied linear relations) problem
- Parameters
-
scip SCIP data structure success pointer to store whether all constraints could be transformed
Definition at line 2312 of file cons_superindicator.c.
References FALSE, NULL, SCIP_CALL, SCIP_INVALIDCALL, SCIP_MAXSTRLEN, SCIP_OBJSENSE_MINIMIZE, SCIP_OKAY, SCIP_STAGE_PROBLEM, SCIP_VARTYPE_BINARY, SCIPaddCons(), SCIPaddVar(), SCIPchgVarBranchPriority(), SCIPchgVarObj(), SCIPconsGetHdlr(), SCIPconsGetName(), SCIPconshdlrGetName(), SCIPconsIsChecked(), SCIPconsIsDynamic(), SCIPconsIsEnforced(), SCIPconsIsInitial(), SCIPconsIsLocal(), SCIPconsIsPropagated(), SCIPconsIsRemovable(), SCIPconsIsSeparated(), SCIPconsIsStickingAtNode(), SCIPcreateConsSuperindicator(), SCIPcreateVar(), SCIPdebugMsg, SCIPdelCons(), SCIPduplicateBufferArray, SCIPerrorMessage, SCIPfreeBufferArray, SCIPgetConss(), SCIPgetNConss(), SCIPgetNegatedVar(), SCIPgetStage(), SCIPgetVarsData(), SCIPreleaseCons(), SCIPreleaseVar(), SCIPsetObjsense(), SCIPsnprintf(), SCIPvarGetBranchPriority(), and TRUE.
Referenced by SCIP_DECL_DIALOGEXEC().
◆ SCIPiisGetTime()
gets time in seconds used in the IIS calculations
gets time in seconds used in the IIS
- Parameters
-
iis IIS
Definition at line 933 of file iisfinder.c.
References SCIP_IIS::iistime, NULL, and SCIPclockGetTime().
Referenced by additionFilterBatch(), deletionFilterBatch(), execIISfinderGreedy(), SCIPiisfinderInfoMessage(), SCIPiisGenerate(), SCIPiisGreedyMakeIrreducible(), and setLimits().
◆ SCIPiisIsSubscipInfeasible()
Gets whether the IIS subscip is currently infeasible.
- Parameters
-
iis IIS data structure
Definition at line 943 of file iisfinder.c.
References SCIP_IIS::infeasible, and NULL.
Referenced by additionFilterBatch(), deletionFilterBatch(), and SCIPiisGreedyMakeIrreducible().
◆ SCIPiisIsSubscipIrreducible()
Gets whether the IIS subscip is irreducible.
- Parameters
-
iis IIS data structure
Definition at line 953 of file iisfinder.c.
References SCIP_IIS::irreducible, and NULL.
◆ SCIPiisGetNNodes()
| SCIP_Longint SCIPiisGetNNodes | ( | SCIP_IIS * | iis | ) |
Gets the number of nodes in the IIS solve.
- Parameters
-
iis IIS data structure
Definition at line 963 of file iisfinder.c.
References SCIP_IIS::nnodes, and NULL.
Referenced by additionFilterBatch(), deletionFilterBatch(), execIISfinderGreedy(), SCIPiisfinderInfoMessage(), SCIPiisGenerate(), SCIPiisGreedyMakeIrreducible(), and setLimits().
◆ SCIPiisSetSubscipInfeasible()
Sets the flag that states whether the IIS subscip is currently infeasible.
- Parameters
-
iis IIS data structure infeasible The new infeasibility status of the IIS subscip
Definition at line 973 of file iisfinder.c.
References SCIP_IIS::infeasible, and NULL.
Referenced by additionFilterBatch(), and deletionSubproblem().
◆ SCIPiisSetSubscipIrreducible()
Sets the flag that states whether the IIS subscip is irreducible.
- Parameters
-
iis IIS data structure irreducible The new irreducible status of the IIS
Definition at line 983 of file iisfinder.c.
References SCIP_IIS::irreducible, and NULL.
Referenced by execIISfinderGreedy(), SCIPiisGenerate(), and SCIPiisGreedyMakeIrreducible().
◆ SCIPiisAddNNodes()
| void SCIPiisAddNNodes | ( | SCIP_IIS * | iis, |
| SCIP_Longint | nnodes | ||
| ) |
Increments the number of nodes in the IIS solve.
- Parameters
-
iis IIS data structure nnodes The number of nodes to add to the IIS
Definition at line 993 of file iisfinder.c.
References nnodes, SCIP_IIS::nnodes, and NULL.
Referenced by additionSubproblem(), and deletionSubproblem().
◆ SCIPiisGetRandnumgen()
| SCIP_RANDNUMGEN * SCIPiisGetRandnumgen | ( | SCIP_IIS * | iis | ) |
get the randnumgen of the IIS
- Parameters
-
iis pointer to the IIS
Definition at line 1003 of file iisfinder.c.
References NULL, and SCIP_IIS::randnumgen.
Referenced by additionFilterBatch(), and deletionFilterBatch().
◆ SCIPiisGetSubscip()
get the subscip of an IIS
- Parameters
-
iis pointer to the IIS
Definition at line 1012 of file iisfinder.c.
References NULL, and SCIP_IIS::subscip.
Referenced by additionFilterBatch(), additionSubproblem(), deletionFilterBatch(), deletionSubproblem(), execIISfinderGreedy(), SCIP_DECL_DIALOGEXEC(), SCIPiisfinderInfoMessage(), and SCIPiisGreedyMakeIrreducible().
◆ SCIPiisGetSubscipCons()
get the constraint in the IIS subscip corresponding to the given main constraint, or NULL if it was removed
- Parameters
-
iis pointer to the IIS cons constraint from the original model
Definition at line 1022 of file iisfinder.c.
References SCIP_IIS::conssmap, NULL, and SCIPhashmapGetImage().
◆ SCIPiisGetSubscipVar()
get the variable in the IIS subscip corresponding to the given main variable, or NULL if it became redundant
get the variable in the IIS subscip corresponding to an original variable, or NULL if it does not exist
- Parameters
-
iis pointer to the IIS var variable from the original model
Definition at line 1033 of file iisfinder.c.
References NULL, SCIPhashmapGetImage(), and SCIP_IIS::varsmap.
◆ SCIPiisGetVarsmap()
| SCIP_HASHMAP * SCIPiisGetVarsmap | ( | SCIP_IIS * | iis | ) |
get the varsmap of an IIS
- Parameters
-
iis pointer to the IIS
Definition at line 1043 of file iisfinder.c.
References NULL, and SCIP_IIS::varsmap.
◆ SCIPiisGetConssmap()
| SCIP_HASHMAP * SCIPiisGetConssmap | ( | SCIP_IIS * | iis | ) |
get the conssmap of an IIS
- Parameters
-
iis pointer to the IIS
Definition at line 1052 of file iisfinder.c.
References SCIP_IIS::conssmap, and NULL.
◆ SCIPgenerateIIS()
| SCIP_RETCODE SCIPgenerateIIS | ( | SCIP * | scip | ) |
the execution method that iterates over the IIS finder plugins
- Parameters
-
scip SCIP data structure
Definition at line 148 of file scip_iisfinder.c.
References NULL, SCIP_CALL, SCIP_OKAY, and SCIPiisGenerate().
Referenced by SCIP_DECL_DIALOGEXEC().
◆ SCIPgetIIS()
Gets the IIS storage.
- Returns
- the SCIP_IIS iis storage.
- Precondition
- This method can be called if
scipis in one of the following stages:
See SCIP_STAGE for a complete list of all possible solving stages.
- Parameters
-
scip SCIP data structure
Definition at line 232 of file scip_iisfinder.c.
References FALSE, SCIP_CALL_ABORT, SCIPcheckStage, and TRUE.
Referenced by SCIP_DECL_DIALOGEXEC(), and SCIPiisGenerate().