Detailed Description
presolver for storing symmetry information about current problem
Definition in file presol_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()
SCIP_EXPORT SCIP_RETCODE SCIPincludePresolSymmetry | ( | SCIP * | scip | ) |
include symmetry presolver
include symmetry constraint handler
- Parameters
-
scip SCIP data structure
Definition at line 1654 of file presol_symmetry.c.
References DEFAULT_CHECKSYMMETRIES, DEFAULT_DISPLAYNORBITVARS, DEFAULT_MAXGENERATORS, FALSE, NULL, PRESOL_DESC, PRESOL_MAXROUNDS, PRESOL_NAME, PRESOL_PRIORITY, PRESOL_TIMING, SCIP_CALL, SCIP_OKAY, SCIPaddBoolParam(), SCIPaddIntParam(), SCIPallocBlockMemory, SCIPincludeExternalCodeInformation(), SCIPincludePresolBasic(), SCIPsetPresolExit(), SCIPsetPresolFree(), SCIPsetPresolInit(), SYMcanComputeSymmetry(), SYMsymmetryGetDesc(), SYMsymmetryGetName(), and TRUE.
Referenced by SCIPincludeDefaultPlugins().
◆ 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
-
scip SCIP data structure symspecrequire symmetry specification for which we need to compute symmetries symspecrequirefixed symmetry specification of variables which must be fixed by symmetries recompute Have symmetries already been computed? npermvars pointer to store number of variables for permutations permvars pointer to store variables on which permutations act nperms pointer to store number of permutations perms pointer to store permutation generators as (nperms x npermvars) matrix log10groupsize pointer to store log10 of group size (or NULL) binvaraffected pointer 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
-
scip SCIP data structure permvarsobj pointer 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().