Scippy

SCIP

Solving Constraint Integer Programs

presol_symmetry.h File Reference

Detailed Description

presolver for storing symmetry information about current problem

Author
Marc Pfetsch
Thomas Rehn

Definition in file presol_symmetry.h.

#include <scip/scip.h>
#include <symmetry/type_symmetry.h>

Go to the source code of this file.

Functions

SCIP_EXPORT SCIP_RETCODE SCIPincludePresolSymmetry (SCIP *scip)
 
SCIP_EXPORT SCIP_RETCODE SCIPgetGeneratorsSymmetry (SCIP *scip, SYM_SPEC symspecrequire, SYM_SPEC symspecrequirefixed, SCIP_Bool recompute, int *npermvars, SCIP_VAR ***permvars, int *nperms, int ***perms, SCIP_Real *log10groupsize, SCIP_Bool *binvaraffected)
 
SCIP_EXPORT SCIP_RETCODE SCIPgetPermvarsObjSymmetry (SCIP *scip, SCIP_Real **permvarsobj)
 

Function Documentation

◆ SCIPincludePresolSymmetry()

◆ SCIPgetGeneratorsSymmetry()

SCIP_EXPORT SCIP_RETCODE SCIPgetGeneratorsSymmetry ( SCIP scip,
SYM_SPEC  symspecrequire,
SYM_SPEC  symspecrequirefixed,
SCIP_Bool  recompute,
int *  npermvars,
SCIP_VAR ***  permvars,
int *  nperms,
int ***  perms,
SCIP_Real log10groupsize,
SCIP_Bool binvaraffected 
)

return symmetry group generators

Parameters
scipSCIP data structure
symspecrequiresymmetry specification for which we need to compute symmetries
symspecrequirefixedsymmetry specification of variables which must be fixed by symmetries
recomputeHave symmetries already been computed?
npermvarspointer to store number of variables for permutations
permvarspointer to store variables on which permutations act
npermspointer to store number of permutations
permspointer to store permutation generators as (nperms x npermvars) matrix
log10groupsizepointer to store log10 of group size (or NULL)
binvaraffectedpointer to store whether binary variables are affected

Definition at line 1712 of file presol_symmetry.c.

References determineSymmetry(), FALSE, NULL, PRESOL_NAME, SCIP_CALL, SCIP_INVALIDCALL, SCIP_OKAY, SCIP_PLUGINNOTFOUND, SCIP_STAGE_EXITPRESOLVE, SCIP_STAGE_INITPRESOLVE, SCIP_STAGE_INITSOLVE, SCIP_STAGE_PRESOLVED, SCIP_STAGE_PRESOLVING, SCIP_STAGE_SOLVING, SCIPerrorMessage, SCIPfindPresol(), SCIPfreeBlockMemoryArray, SCIPfreeBlockMemoryArrayNull, SCIPgetStage(), SCIPpresolGetData(), and SCIPpresolGetName().

Referenced by getSymmetries(), and tryAddSymmetryHandlingConss().

◆ SCIPgetPermvarsObjSymmetry()

SCIP_EXPORT SCIP_RETCODE SCIPgetPermvarsObjSymmetry ( SCIP scip,
SCIP_Real **  permvarsobj 
)

return objective coefficients of permuted variables at time of symmetry computation

Parameters
scipSCIP data structure
permvarsobjpointer to store objective coefficients of permuted variables (NULL if not available)

Definition at line 1799 of file presol_symmetry.c.

References NULL, PRESOL_NAME, SCIP_OKAY, SCIP_PLUGINNOTFOUND, SCIPerrorMessage, SCIPfindPresol(), SCIPpresolGetData(), and SCIPpresolGetName().

Referenced by propagateOrbitalFixing().