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) |
| 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
| scip | SCIP data structure |
| success | pointer to store whether all constraints could be transformed |
Definition at line 2312 of file cons_superindicator.c.
References assert(), FALSE, i, NULL, nvars, SCIP_Bool, 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(), TRUE, and vars.
Referenced by SCIP_DECL_DIALOGEXEC().
gets time in seconds used in the IIS calculations
gets time in seconds used in the IIS
| iis | IIS |
Definition at line 933 of file iisfinder.c.
References assert(), SCIP_IIS::iistime, NULL, SCIP_Real, and SCIPclockGetTime().
Referenced by additionFilterBatch(), deletionFilterBatch(), execIISfinderGreedy(), SCIPiisfinderInfoMessage(), SCIPiisGenerate(), SCIPiisGreedyMakeIrreducible(), and setLimits().
Gets whether the IIS subscip is currently infeasible.
| iis | IIS data structure |
Definition at line 943 of file iisfinder.c.
References assert(), SCIP_IIS::infeasible, NULL, and SCIP_Bool.
Referenced by additionFilterBatch(), deletionFilterBatch(), and SCIPiisGreedyMakeIrreducible().
Gets whether the IIS subscip is irreducible.
| iis | IIS data structure |
Definition at line 953 of file iisfinder.c.
References assert(), SCIP_IIS::irreducible, NULL, and SCIP_Bool.
| SCIP_Longint SCIPiisGetNNodes | ( | SCIP_IIS * | iis | ) |
Gets the number of nodes in the IIS solve.
| iis | IIS data structure |
Definition at line 963 of file iisfinder.c.
References assert(), SCIP_IIS::nnodes, NULL, and SCIP_Longint.
Referenced by additionFilterBatch(), deletionFilterBatch(), execIISfinderGreedy(), SCIPiisfinderInfoMessage(), SCIPiisGenerate(), SCIPiisGreedyMakeIrreducible(), and setLimits().
Sets the flag that states whether the IIS subscip is currently infeasible.
| iis | IIS data structure |
| infeasible | The new infeasibility status of the IIS subscip |
Definition at line 973 of file iisfinder.c.
References assert(), SCIP_IIS::infeasible, NULL, and SCIP_Bool.
Referenced by additionFilterBatch(), and deletionSubproblem().
Sets the flag that states whether the IIS subscip is irreducible.
| iis | IIS data structure |
| irreducible | The new irreducible status of the IIS |
Definition at line 983 of file iisfinder.c.
References assert(), SCIP_IIS::irreducible, NULL, and SCIP_Bool.
Referenced by execIISfinderGreedy(), SCIPiisGenerate(), and SCIPiisGreedyMakeIrreducible().
| void SCIPiisAddNNodes | ( | SCIP_IIS * | iis, |
| SCIP_Longint | nnodes ) |
Increments the number of nodes in the IIS solve.
| iis | IIS data structure |
| nnodes | The number of nodes to add to the IIS |
Definition at line 993 of file iisfinder.c.
References assert(), nnodes, SCIP_IIS::nnodes, NULL, and SCIP_Longint.
Referenced by additionSubproblem(), and deletionSubproblem().
| SCIP_RANDNUMGEN * SCIPiisGetRandnumgen | ( | SCIP_IIS * | iis | ) |
get the randnumgen of the IIS
| iis | pointer to the IIS |
Definition at line 1003 of file iisfinder.c.
References assert(), NULL, and SCIP_IIS::randnumgen.
Referenced by additionFilterBatch(), and deletionFilterBatch().
get the subscip of an IIS
| iis | pointer to the IIS |
Definition at line 1012 of file iisfinder.c.
References assert(), NULL, and SCIP_IIS::subscip.
Referenced by additionFilterBatch(), additionSubproblem(), deletionFilterBatch(), deletionSubproblem(), execIISfinderGreedy(), SCIP_DECL_DIALOGEXEC(), SCIP_DECL_DIALOGEXEC(), SCIPiisfinderInfoMessage(), and SCIPiisGreedyMakeIrreducible().
get the constraint in the IIS subscip corresponding to the given main constraint, or NULL if it was removed
| iis | pointer to the IIS |
| cons | constraint from the original model |
Definition at line 1022 of file iisfinder.c.
References assert(), SCIP_IIS::conssmap, NULL, and SCIPhashmapGetImage().
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
| iis | pointer to the IIS |
| var | variable from the original model |
Definition at line 1033 of file iisfinder.c.
References assert(), NULL, SCIPhashmapGetImage(), var, and SCIP_IIS::varsmap.
| SCIP_HASHMAP * SCIPiisGetVarsmap | ( | SCIP_IIS * | iis | ) |
get the varsmap of an IIS
| iis | pointer to the IIS |
Definition at line 1043 of file iisfinder.c.
References assert(), NULL, and SCIP_IIS::varsmap.
| SCIP_HASHMAP * SCIPiisGetConssmap | ( | SCIP_IIS * | iis | ) |
get the conssmap of an IIS
| iis | pointer to the IIS |
Definition at line 1052 of file iisfinder.c.
References assert(), SCIP_IIS::conssmap, and NULL.
| SCIP_RETCODE SCIPgenerateIIS | ( | SCIP * | scip | ) |
the execution method that iterates over the IIS finder plugins
| scip | SCIP data structure |
Definition at line 148 of file scip_iisfinder.c.
References assert(), NULL, SCIP_CALL, SCIP_OKAY, and SCIPiisGenerate().
Referenced by SCIP_DECL_DIALOGEXEC().
Gets the IIS storage.
scip is in one of the following stages:
See SCIP_STAGE for a complete list of all possible solving stages.
| 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(), SCIP_DECL_DIALOGEXEC(), and SCIPiisGenerate().