Scippy

SCIP

Solving Constraint Integer Programs

prop_symmetry.h File Reference

Detailed Description

propagator for symmetry handling

Author
Marc Pfetsch
Thomas Rehn
Christopher Hojny

Definition in file prop_symmetry.h.

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

Go to the source code of this file.

Functions

SCIP_RETCODE SCIPincludePropSymmetry (SCIP *scip)
 
SCIP_RETCODE SCIPgetSymmetry (SCIP *scip, int *npermvars, SCIP_VAR ***permvars, SCIP_HASHMAP **permvarmap, int *nperms, int ***perms, int ***permstrans, SCIP_Real *log10groupsize, SCIP_Bool *binvaraffected, int **components, int **componentbegins, int **vartocomponent, int *ncomponents)
 
SCIP_Bool SCIPisOrbitalfixingEnabled (SCIP *scip)
 
int SCIPgetSymmetryNGenerators (SCIP *scip)
 

Function Documentation

◆ SCIPincludePropSymmetry()

SCIP_RETCODE SCIPincludePropSymmetry ( SCIP scip)

include symmetry propagator

Parameters
scipSCIP data structure

Definition at line 7366 of file prop_symmetry.c.

References DEFAULT_ADDCONFLICTCUTS, DEFAULT_ADDCONSSTIMING, DEFAULT_ADDSTRONGSBCS, DEFAULT_ADDSYMRESACKS, DEFAULT_ADDWEAKSBCS, DEFAULT_CHECKSYMMETRIES, DEFAULT_COMPRESSSYMMETRIES, DEFAULT_COMPRESSTHRESHOLD, DEFAULT_CONSSADDLP, DEFAULT_DETECTORBITOPES, DEFAULT_DETECTSUBGROUPS, DEFAULT_DISPLAYNORBITVARS, DEFAULT_DOUBLEEQUATIONS, DEFAULT_MAXGENERATORS, DEFAULT_MAXNCONSSSUBGROUP, DEFAULT_OFSYMCOMPTIMING, DEFAULT_ONLYBINARYSYMMETRY, DEFAULT_PERFORMPRESOLVING, DEFAULT_PREFERLESSROWS, DEFAULT_RECOMPUTERESTART, DEFAULT_SSTADDCUTS, DEFAULT_SSTLEADERRULE, DEFAULT_SSTLEADERVARTYPE, DEFAULT_SSTMIXEDCOMPONENTS, DEFAULT_SSTTIEBREAKRULE, DEFAULT_SYMFIXNONBINARYVARS, DEFAULT_USECOLUMNSPARSITY, DEFAULT_USEDYNAMICPROP, EVENTHDLR_SYMMETRY_DESC, EVENTHDLR_SYMMETRY_NAME, FALSE, NULL, PROP_DELAY, PROP_DESC, PROP_FREQ, PROP_NAME, PROP_PRESOL_MAXROUNDS, PROP_PRESOL_PRIORITY, PROP_PRESOLTIMING, PROP_PRIORITY, PROP_TIMING, SCIP_CALL, SCIP_OKAY, SCIPaddBoolParam(), SCIPaddIntParam(), SCIPaddRealParam(), SCIPallocBlockMemory, SCIPgetSymmetry(), SCIPincludeEventhdlrBasic(), SCIPincludeExternalCodeInformation(), SCIPincludePropBasic(), SCIPincludeTable(), SCIPsetPropExit(), SCIPsetPropExitpre(), SCIPsetPropFree(), SCIPsetPropInitpre(), SCIPsetPropPresol(), SCIPsetPropResprop(), SYMcanComputeSymmetry(), SYMsymmetryGetAddDesc(), SYMsymmetryGetAddName(), SYMsymmetryGetDesc(), SYMsymmetryGetName(), TABLE_DESC_ORBITALFIXING, TABLE_EARLIEST_ORBITALFIXING, TABLE_NAME_ORBITALFIXING, TABLE_POSITION_ORBITALFIXING, and TRUE.

Referenced by SCIP_DECL_PROPFREE(), and SCIPincludeDefaultPlugins().

◆ SCIPgetSymmetry()

SCIP_RETCODE SCIPgetSymmetry ( SCIP scip,
int *  npermvars,
SCIP_VAR ***  permvars,
SCIP_HASHMAP **  permvarmap,
int *  nperms,
int ***  perms,
int ***  permstrans,
SCIP_Real log10groupsize,
SCIP_Bool binvaraffected,
int **  components,
int **  componentbegins,
int **  vartocomponent,
int *  ncomponents 
)

return currently available symmetry group information

Parameters
scipSCIP data structure
npermvarspointer to store number of variables for permutations
permvarspointer to store variables on which permutations act
permvarmappointer to store hash map of permvars (or NULL)
npermspointer to store number of permutations
permspointer to store permutation generators as (nperms x npermvars) matrix (or NULL)
permstranspointer to store permutation generators as (npermvars x nperms) matrix (or NULL)
log10groupsizepointer to store log10 of group size (or NULL)
binvaraffectedpointer to store whether binary variables are affected (or NULL)
componentspointer to store components of symmetry group (or NULL)
componentbeginspointer to store begin positions of components in components array (or NULL)
vartocomponentpointer to store assignment from variable to its component (or NULL)
ncomponentspointer to store number of components (or NULL)

Definition at line 7627 of file prop_symmetry.c.

References SYM_Sortgraphcompvars::components, NULL, PROP_NAME, SCIP_Bool, SCIP_OKAY, SCIP_PLUGINNOTFOUND, SCIPerrorMessage, SCIPfindProp(), SCIPisOrbitalfixingEnabled(), SCIPpropGetData(), and SCIPpropGetName().

Referenced by initOrbits(), and SCIPincludePropSymmetry().

◆ SCIPisOrbitalfixingEnabled()

SCIP_Bool SCIPisOrbitalfixingEnabled ( SCIP scip)

return whether orbital fixing is enabled

Parameters
scipSCIP data structure

Definition at line 7707 of file prop_symmetry.c.

References FALSE, NULL, PROP_NAME, SCIPfindProp(), SCIPgetSymmetryNGenerators(), and SCIPpropGetData().

Referenced by SCIPgetSymmetry().

◆ SCIPgetSymmetryNGenerators()

int SCIPgetSymmetryNGenerators ( SCIP scip)

return number of the symmetry group's generators

Parameters
scipSCIP data structure

Definition at line 7727 of file prop_symmetry.c.

References NULL, PROP_NAME, SCIPfindProp(), and SCIPpropGetData().

Referenced by SCIPisOrbitalfixingEnabled().