50#define PROP_NAME "sync"
51#define PROP_DESC "propagator for synchronization of bound changes"
52#define PROP_PRIORITY (INT_MAX/4)
54#define PROP_DELAY FALSE
55#define PROP_TIMING SCIP_PROPTIMING_ALWAYS
57#define PROP_PRESOL_PRIORITY (INT_MAX/4)
58#define PROP_PRESOLTIMING SCIP_PRESOLTIMING_ALWAYS
59#define PROP_PRESOL_MAXROUNDS -1
74 SCIP_Longint ntightened;
75 SCIP_Longint ntightenedint;
106 for(
i = 0;
i < data->nbnds; ++
i )
108 SCIP_Bool infeas, tightened;
186 data->bndtype =
NULL;
187 data->ntightened = 0;
188 data->ntightenedint = 0;
237 *nchgbds += ntightened;
238 data->ntightened += ntightened;
239 data->ntightenedint += ntightened;
272 data->ntightened += ntightened;
273 data->ntightenedint += ntightenedint;
308 propExecSync, propdata) );
339 if( data->nbnds + 1 > data->bndsize )
346 data->bndsize = newsize;
349 data->bndvar[data->nbnds] =
var;
350 data->bndval[data->nbnds] = val;
351 data->bndtype[data->nbnds] = bndtype;
353 if( data->nbnds == 0 )
374 return data->ntightened;
389 return data->ntightenedint;
void SCIPenableConcurrentBoundStorage(SCIP *scip)
void SCIPdisableConcurrentBoundStorage(SCIP *scip)
helper functions for concurrent scip solvers
void SCIPverbMessage(SCIP *scip, SCIP_VERBLEVEL msgverblevel, FILE *file, const char *formatstr,...)
SCIP_Longint SCIPpropSyncGetNTightenedBnds(SCIP_PROP *prop)
SCIP_RETCODE SCIPpropSyncAddBndchg(SCIP *scip, SCIP_PROP *prop, SCIP_VAR *var, SCIP_Real val, SCIP_BOUNDTYPE bndtype)
SCIP_Longint SCIPpropSyncGetNTightenedIntBnds(SCIP_PROP *prop)
SCIP_RETCODE SCIPincludePropSync(SCIP *scip)
int SCIPcalcMemGrowSize(SCIP *scip, int num)
#define SCIPallocMemory(scip, ptr)
#define SCIPfreeMemory(scip, ptr)
#define SCIPreallocBlockMemoryArray(scip, ptr, oldnum, newnum)
#define SCIPfreeBlockMemoryArrayNull(scip, ptr, num)
SCIP_Bool SCIPinProbing(SCIP *scip)
void SCIPpropSetData(SCIP_PROP *prop, SCIP_PROPDATA *propdata)
SCIP_PROPDATA * SCIPpropGetData(SCIP_PROP *prop)
SCIP_RETCODE SCIPsetPropPresol(SCIP *scip, SCIP_PROP *prop, SCIP_DECL_PROPPRESOL((*proppresol)), int presolpriority, int presolmaxrounds, SCIP_PRESOLTIMING presoltiming)
const char * SCIPpropGetName(SCIP_PROP *prop)
SCIP_RETCODE SCIPsetPropFree(SCIP *scip, SCIP_PROP *prop,)
void SCIPpropSetFreq(SCIP_PROP *prop, int freq)
SCIP_RETCODE SCIPsetPropInit(SCIP *scip, SCIP_PROP *prop,)
SCIP_RETCODE SCIPsetPropExit(SCIP *scip, SCIP_PROP *prop,)
SCIP_RETCODE SCIPincludePropBasic(SCIP *scip, SCIP_PROP **propptr, const char *name, const char *desc, int priority, int freq, SCIP_Bool delay, SCIP_PROPTIMING timingmask, SCIP_DECL_PROPEXEC((*propexec)), SCIP_PROPDATA *propdata)
SCIP_RETCODE SCIPvarGetProbvarBound(SCIP_VAR **var, SCIP_Real *bound, SCIP_BOUNDTYPE *boundtype)
SCIP_RETCODE SCIPtightenVarUbGlobal(SCIP *scip, SCIP_VAR *var, SCIP_Real newbound, SCIP_Bool force, SCIP_Bool *infeasible, SCIP_Bool *tightened)
SCIP_VARSTATUS SCIPvarGetStatus(SCIP_VAR *var)
SCIP_VARTYPE SCIPvarGetType(SCIP_VAR *var)
SCIP_RETCODE SCIPtightenVarLbGlobal(SCIP *scip, SCIP_VAR *var, SCIP_Real newbound, SCIP_Bool force, SCIP_Bool *infeasible, SCIP_Bool *tightened)
assert(minobj< SCIPgetCutoffbound(scip))
memory allocation routines
#define PROP_PRESOL_MAXROUNDS
#define PROP_PRESOLTIMING
static SCIP_RETCODE applyBoundChanges(SCIP *scip, SCIP_PROPDATA *data, SCIP_RESULT *result, int *ntightened, int *ntightenedint)
#define PROP_PRESOL_PRIORITY
propagator for applying global bound changes that were communicated by other concurrent solvers
public methods for message output
public methods for propagators
public methods for problem variables
public methods for memory management
public methods for message handling
public methods for the probing mode
public methods for propagator plugins
public methods for SCIP variables
the type definitions for the SCIP parallel interface
int SCIPtpiGetThreadNum(void)
enum SCIP_BoundType SCIP_BOUNDTYPE
#define SCIP_DECL_PROPINIT(x)
#define SCIP_DECL_PROPFREE(x)
#define SCIP_DECL_PROPEXIT(x)
#define SCIP_DECL_PROPPRESOL(x)
struct SCIP_PropData SCIP_PROPDATA
#define SCIP_DECL_PROPEXEC(x)
enum SCIP_Result SCIP_RESULT
enum SCIP_Retcode SCIP_RETCODE
@ SCIP_VARSTATUS_MULTAGGR