SCIP Doxygen Documentation
Loading...
Searching...
No Matches
Infeasibility Analysis

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_RANDNUMGENSCIPiisGetRandnumgen (SCIP_IIS *iis)
SCIPSCIPiisGetSubscip (SCIP_IIS *iis)
SCIP_CONSSCIPiisGetSubscipCons (SCIP_IIS *iis, SCIP_CONS *cons)
SCIP_VARSCIPiisGetSubscipVar (SCIP_IIS *iis, SCIP_VAR *var)
SCIP_HASHMAPSCIPiisGetVarsmap (SCIP_IIS *iis)
SCIP_HASHMAPSCIPiisGetConssmap (SCIP_IIS *iis)
SCIP_RETCODE SCIPgenerateIIS (SCIP *scip)
SCIP_IISSCIPgetIIS (SCIP *scip)

Function Documentation

◆ SCIPtransformMinUC()

◆ SCIPiisGetTime()

SCIP_Real SCIPiisGetTime ( SCIP_IIS * iis)

gets time in seconds used in the IIS calculations

gets time in seconds used in the IIS

Parameters
iisIIS

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().

◆ SCIPiisIsSubscipInfeasible()

SCIP_Bool SCIPiisIsSubscipInfeasible ( SCIP_IIS * iis)

Gets whether the IIS subscip is currently infeasible.

Parameters
iisIIS 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().

◆ SCIPiisIsSubscipIrreducible()

SCIP_Bool SCIPiisIsSubscipIrreducible ( SCIP_IIS * iis)

Gets whether the IIS subscip is irreducible.

Parameters
iisIIS data structure

Definition at line 953 of file iisfinder.c.

References assert(), SCIP_IIS::irreducible, NULL, and SCIP_Bool.

◆ SCIPiisGetNNodes()

SCIP_Longint SCIPiisGetNNodes ( SCIP_IIS * iis)

Gets the number of nodes in the IIS solve.

Parameters
iisIIS 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().

◆ SCIPiisSetSubscipInfeasible()

void SCIPiisSetSubscipInfeasible ( SCIP_IIS * iis,
SCIP_Bool infeasible )

Sets the flag that states whether the IIS subscip is currently infeasible.

Parameters
iisIIS data structure
infeasibleThe 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().

◆ SCIPiisSetSubscipIrreducible()

void SCIPiisSetSubscipIrreducible ( SCIP_IIS * iis,
SCIP_Bool irreducible )

Sets the flag that states whether the IIS subscip is irreducible.

Parameters
iisIIS data structure
irreducibleThe 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().

◆ SCIPiisAddNNodes()

void SCIPiisAddNNodes ( SCIP_IIS * iis,
SCIP_Longint nnodes )

Increments the number of nodes in the IIS solve.

Parameters
iisIIS data structure
nnodesThe 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().

◆ SCIPiisGetRandnumgen()

SCIP_RANDNUMGEN * SCIPiisGetRandnumgen ( SCIP_IIS * iis)

get the randnumgen of the IIS

Parameters
iispointer to the IIS

Definition at line 1003 of file iisfinder.c.

References assert(), NULL, and SCIP_IIS::randnumgen.

Referenced by additionFilterBatch(), and deletionFilterBatch().

◆ SCIPiisGetSubscip()

SCIP * SCIPiisGetSubscip ( SCIP_IIS * iis)

◆ SCIPiisGetSubscipCons()

SCIP_CONS * SCIPiisGetSubscipCons ( SCIP_IIS * iis,
SCIP_CONS * cons )

get the constraint in the IIS subscip corresponding to the given main constraint, or NULL if it was removed

Parameters
iispointer to the IIS
consconstraint from the original model

Definition at line 1022 of file iisfinder.c.

References assert(), SCIP_IIS::conssmap, NULL, and SCIPhashmapGetImage().

◆ SCIPiisGetSubscipVar()

SCIP_VAR * SCIPiisGetSubscipVar ( SCIP_IIS * iis,
SCIP_VAR * var )

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
iispointer to the IIS
varvariable from the original model

Definition at line 1033 of file iisfinder.c.

References assert(), NULL, SCIPhashmapGetImage(), var, and SCIP_IIS::varsmap.

◆ SCIPiisGetVarsmap()

SCIP_HASHMAP * SCIPiisGetVarsmap ( SCIP_IIS * iis)

get the varsmap of an IIS

Parameters
iispointer to the IIS

Definition at line 1043 of file iisfinder.c.

References assert(), NULL, and SCIP_IIS::varsmap.

◆ SCIPiisGetConssmap()

SCIP_HASHMAP * SCIPiisGetConssmap ( SCIP_IIS * iis)

get the conssmap of an IIS

Parameters
iispointer to the IIS

Definition at line 1052 of file iisfinder.c.

References assert(), SCIP_IIS::conssmap, and NULL.

◆ SCIPgenerateIIS()

SCIP_RETCODE SCIPgenerateIIS ( SCIP * scip)

the execution method that iterates over the IIS finder plugins

Parameters
scipSCIP 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().

◆ SCIPgetIIS()

SCIP_IIS * SCIPgetIIS ( SCIP * scip)

Gets the IIS storage.

Returns
the SCIP_IIS iis storage.
Precondition
This method can be called if scip is in one of the following stages:

See SCIP_STAGE for a complete list of all possible solving stages.

Parameters
scipSCIP 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().