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

Detailed Description

functions for irreducible infeasible subsystems (IIS) finders

Functions

const char * SCIPiisfinderGetName (SCIP_IISFINDER *iisfinder)
SCIP_IISFINDERDATASCIPiisfinderGetData (SCIP_IISFINDER *iisfinder)
const char * SCIPiisfinderGetDesc (SCIP_IISFINDER *iisfinder)
int SCIPiisfinderGetPriority (SCIP_IISFINDER *iisfinder)
void SCIPiisfinderSetData (SCIP_IISFINDER *iisfinder, SCIP_IISFINDERDATA *iisfinderdata)
SCIP_Real SCIPiisfinderGetTime (SCIP_IISFINDER *iisfinder)
void SCIPiisfinderInfoMessage (SCIP_IIS *iis, SCIP_Bool printheaders)
 SCIP_DECL_SORTPTRCOMP (SCIPiisfinderComp)
SCIP_RETCODE SCIPincludeIISfinder (SCIP *scip, const char *name, const char *desc, int priority, SCIP_DECL_IISFINDERCOPY((*iisfindercopy)), SCIP_DECL_IISFINDERFREE((*iisfinderfree)), SCIP_DECL_IISFINDEREXEC((*iisfinderexec)), SCIP_IISFINDERDATA *iisfinderdata)
SCIP_RETCODE SCIPincludeIISfinderBasic (SCIP *scip, SCIP_IISFINDER **iisfinder, const char *name, const char *desc, int priority, SCIP_DECL_IISFINDEREXEC((*iisfinderexec)), SCIP_IISFINDERDATA *iisfinderdata)
SCIP_RETCODE SCIPsetIISfinderCopy (SCIP *scip, SCIP_IISFINDER *iisfinder,)
SCIP_RETCODE SCIPsetIISfinderFree (SCIP *scip, SCIP_IISFINDER *iisfinder,)
SCIP_IISFINDERSCIPfindIISfinder (SCIP *scip, const char *name)
SCIP_IISFINDER ** SCIPgetIISfinders (SCIP *scip)
int SCIPgetNIISfinders (SCIP *scip)
SCIP_RETCODE SCIPsetIISfinderPriority (SCIP *scip, SCIP_IISFINDER *iisfinder, int priority)

Function Documentation

◆ SCIPiisfinderGetName()

const char * SCIPiisfinderGetName ( SCIP_IISFINDER * iisfinder)

gets name of IIS finder

Parameters
iisfinderIIS finder

Definition at line 315 of file iisfinder.c.

References assert(), SCIP_IISfinder::name, NULL, and SCIPiisfinderGetName().

Referenced by SCIP_DECL_IISFINDERCOPY(), SCIPiisfinderCopyInclude(), and SCIPiisfinderGetName().

◆ SCIPiisfinderGetData()

◆ SCIPiisfinderGetDesc()

const char * SCIPiisfinderGetDesc ( SCIP_IISFINDER * iisfinder)

gets description of IIS finder

gets description of the IIS finder

Parameters
iisfinderIIS finder

Definition at line 648 of file iisfinder.c.

References assert(), SCIP_IISfinder::desc, NULL, and SCIPiisfinderGetDesc().

Referenced by SCIPiisfinderGetDesc().

◆ SCIPiisfinderGetPriority()

int SCIPiisfinderGetPriority ( SCIP_IISFINDER * iisfinder)

gets priority of IIS finder

Parameters
iisfinderIIS finder

Definition at line 727 of file iisfinder.c.

References assert(), NULL, SCIP_IISfinder::priority, and SCIPiisfinderGetPriority().

Referenced by SCIPiisfinderGetPriority().

◆ SCIPiisfinderSetData()

void SCIPiisfinderSetData ( SCIP_IISFINDER * iisfinder,
SCIP_IISFINDERDATA * iisfinderdata )

sets user data of IIS finder; user has to free old data in advance!

Parameters
iisfinderIIS finder
iisfinderdatanew IIS finder user data

Definition at line 716 of file iisfinder.c.

References assert(), SCIP_IISfinder::iisfinderdata, NULL, and SCIPiisfinderSetData().

Referenced by SCIP_DECL_IISFINDERFREE(), SCIP_DECL_IISFINDERFREE(), and SCIPiisfinderSetData().

◆ SCIPiisfinderGetTime()

SCIP_Real SCIPiisfinderGetTime ( SCIP_IISFINDER * iisfinder)

gets time in seconds used in this IIS finder

Parameters
iisfinderIIS finder

Definition at line 784 of file iisfinder.c.

References assert(), SCIP_IISfinder::iisfindertime, NULL, SCIP_Real, SCIPclockGetTime(), and SCIPiisfinderGetTime().

Referenced by SCIPiisfinderGetTime().

◆ SCIPiisfinderInfoMessage()

void SCIPiisfinderInfoMessage ( SCIP_IIS * iis,
SCIP_Bool printheaders )

◆ SCIP_DECL_SORTPTRCOMP()

SCIP_DECL_SORTPTRCOMP ( SCIPiisfinderComp )

compares two IIS finders w. r. to their priority

Definition at line 1062 of file iisfinder.c.

References SCIP_DECL_SORTPTRCOMP.

◆ SCIPincludeIISfinder()

SCIP_RETCODE SCIPincludeIISfinder ( SCIP * scip,
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 and includes it in SCIP

Note
this method has all IIS finder callbacks as arguments and is thus changed every time a new callback is added in future releases; consider using SCIPincludeIISfinderBasic() and setter functions if you seek for a method which is less likely to change in future releases
Parameters
scipSCIP data structure
namename of IIS finder
descdescription of IIS finder
prioritypriority of the IIS finder
-copy method of IIS finder or NULL if you don't want to copy your plugin into sub-SCIPs
-destructor of IIS finder
-IIS finder execution method
iisfinderdataIIS finder data

Definition at line 48 of file scip_iisfinder.c.

References FALSE, NULL, SCIP_CALL, SCIP_DECL_IISFINDERCOPY, SCIP_DECL_IISFINDEREXEC, SCIP_DECL_IISFINDERFREE, SCIP_INVALIDDATA, SCIP_OKAY, SCIPcheckStage, SCIPerrorMessage, SCIPfindIISfinder(), SCIPiisfinderCreate(), SCIPincludeIISfinder(), SCIPsetIncludeIISfinder(), and TRUE.

Referenced by SCIPincludeIISfinder(), and SCIPincludeObjIISfinder().

◆ SCIPincludeIISfinderBasic()

SCIP_RETCODE SCIPincludeIISfinderBasic ( SCIP * scip,
SCIP_IISFINDER ** iisfinder,
const char * name,
const char * desc,
int priority,
SCIP_DECL_IISFINDEREXEC((*iisfinderexec)) ,
SCIP_IISFINDERDATA * iisfinderdata )

Creates an IIS finder and includes it in SCIP with its most fundamental callbacks.

All non-fundamental (or optional) callbacks as, e.g., copy and free callbacks, will be set to NULL. Optional callbacks can be set via specific setter functions, see SCIPsetIISfinderCopy() and SCIPsetIISfinderFree(),

Note
if you want to set all callbacks with a single method call, consider using SCIPincludeIISfinder() instead

Creates an IIS finder and includes it in SCIP with its most fundamental callbacks.

All non-fundamental (or optional) callbacks as, e.g., copy and free callbacks, will be set to NULL. Optional callbacks can be set via specific setter functions, see SCIPsetIISfinderCopy(), and SCIPsetIISfinderFree()

Note
if you want to set all callbacks with a single method call, consider using SCIPincludeIISfinder() instead
Parameters
scipSCIP data structure
iisfinderreference to an IIS finder, or NULL
namename of IIS finder
descdescription of IIS finder
prioritypriority of the IIS finder in standard mode
-IIS finder execution method
iisfinderdataIIS finder data

Definition at line 84 of file scip_iisfinder.c.

References FALSE, NULL, SCIP_CALL, SCIP_DECL_IISFINDEREXEC, SCIP_INVALIDDATA, SCIP_OKAY, SCIPcheckStage, SCIPerrorMessage, SCIPfindIISfinder(), SCIPiisfinderCreate(), SCIPincludeIISfinderBasic(), SCIPsetIncludeIISfinder(), and TRUE.

Referenced by SCIPincludeIISfinderBasic(), and SCIPincludeIISfinderGreedy().

◆ SCIPsetIISfinderCopy()

SCIP_RETCODE SCIPsetIISfinderCopy ( SCIP * scip,
SCIP_IISFINDER * iisfinder )

sets copy method of IIS finder

Parameters
scipSCIP data structure
iisfinderIIS finder copy method of IIS finder or NULL if you don't want to copy your plugin into sub-SCIPs

Definition at line 116 of file scip_iisfinder.c.

References assert(), FALSE, NULL, SCIP_CALL, SCIP_DECL_IISFINDERCOPY, SCIP_OKAY, SCIPcheckStage, SCIPiisfinderSetCopy(), SCIPsetIISfinderCopy(), and TRUE.

Referenced by SCIPincludeIISfinderGreedy(), and SCIPsetIISfinderCopy().

◆ SCIPsetIISfinderFree()

SCIP_RETCODE SCIPsetIISfinderFree ( SCIP * scip,
SCIP_IISFINDER * iisfinder )

sets destructor method of IIS finder

Parameters
scipSCIP data structure
iisfinderIIS finder destructor of IIS finder

Definition at line 132 of file scip_iisfinder.c.

References assert(), FALSE, NULL, SCIP_CALL, SCIP_DECL_IISFINDERFREE, SCIP_OKAY, SCIPcheckStage, SCIPiisfinderSetFree(), SCIPsetIISfinderFree(), and TRUE.

Referenced by SCIPincludeIISfinderGreedy(), and SCIPsetIISfinderFree().

◆ SCIPfindIISfinder()

SCIP_IISFINDER * SCIPfindIISfinder ( SCIP * scip,
const char * name )

returns the IIS finder of the given name, or NULL if not existing

Parameters
scipSCIP data structure
namename of the IIS finder

Definition at line 159 of file scip_iisfinder.c.

References assert(), NULL, SCIPfindIISfinder(), and SCIPsetFindIISfinder().

Referenced by SCIPfindIISfinder(), SCIPfindObjIISfinder(), SCIPincludeIISfinder(), and SCIPincludeIISfinderBasic().

◆ SCIPgetIISfinders()

SCIP_IISFINDER ** SCIPgetIISfinders ( SCIP * scip)

returns the array of currently available IIS finders

Parameters
scipSCIP data structure

Definition at line 172 of file scip_iisfinder.c.

References assert(), NULL, SCIPgetIISfinders(), and SCIPsetSortIISfinders().

Referenced by SCIPgetIISfinders().

◆ SCIPgetNIISfinders()

int SCIPgetNIISfinders ( SCIP * scip)

returns the number of currently available IIS finders

Parameters
scipSCIP data structure

Definition at line 185 of file scip_iisfinder.c.

References assert(), NULL, and SCIPgetNIISfinders().

Referenced by SCIPgetNIISfinders().

◆ SCIPsetIISfinderPriority()

SCIP_RETCODE SCIPsetIISfinderPriority ( SCIP * scip,
SCIP_IISFINDER * iisfinder,
int priority )

sets the priority of an IIS finder

Parameters
scipSCIP data structure
iisfinderIIS finder
prioritynew priority of the IIS finder

Definition at line 196 of file scip_iisfinder.c.

References assert(), NULL, SCIP_OKAY, SCIPiisfinderSetPriority(), and SCIPsetIISfinderPriority().

Referenced by SCIP_DECL_PARAMCHGD(), and SCIPsetIISfinderPriority().