Scippy

SCIP

Solving Constraint Integer Programs

prop_dualfix.c File Reference

Detailed Description

fixing roundable variables to best bound

Author
Tobias Achterberg
Stefan Heinz

Definition in file prop_dualfix.c.

#include <assert.h>
#include <string.h>
#include "scip/prop_dualfix.h"

Go to the source code of this file.

Macros

#define PROP_NAME   "dualfix"
 
#define PROP_DESC   "roundable variables dual fixing"
 
#define PROP_TIMING   SCIP_PROPTIMING_BEFORELP
 
#define PROP_PRIORITY   +8000000
 
#define PROP_FREQ   0
 
#define PROP_DELAY   FALSE
 
#define PROP_PRESOL_PRIORITY   +8000000
 
#define PROP_PRESOL_MAXROUNDS   -1
 
#define PROP_PRESOL_DELAY   FALSE
 

Functions

Local methods
static SCIP_RETCODE performDualfix (SCIP *scip, int *nfixedvars, SCIP_Bool *unbounded, SCIP_Bool *cutoff)
 
Callback methods
static SCIP_DECL_PROPCOPY (propCopyDualfix)
 
static SCIP_DECL_PROPPRESOL (propPresolDualfix)
 
static SCIP_DECL_PROPEXEC (propExecDualfix)
 
Interface methods
SCIP_RETCODE SCIPincludePropDualfix (SCIP *scip)
 

Macro Definition Documentation

#define PROP_NAME   "dualfix"
#define PROP_DESC   "roundable variables dual fixing"

Definition at line 31 of file prop_dualfix.c.

Referenced by SCIPincludePropDualfix().

#define PROP_TIMING   SCIP_PROPTIMING_BEFORELP

Definition at line 32 of file prop_dualfix.c.

Referenced by SCIPincludePropDualfix().

#define PROP_PRIORITY   +8000000

propagation priority

Definition at line 33 of file prop_dualfix.c.

Referenced by SCIPincludePropDualfix().

#define PROP_FREQ   0

propagation frequency

Definition at line 34 of file prop_dualfix.c.

Referenced by SCIPincludePropDualfix().

#define PROP_DELAY   FALSE

should propagation method be delayed, if other propagators found reductions?

Definition at line 35 of file prop_dualfix.c.

Referenced by SCIPincludePropDualfix().

#define PROP_PRESOL_PRIORITY   +8000000

priority of the propagator (>= 0: before, < 0: after constraint handlers)

Definition at line 37 of file prop_dualfix.c.

Referenced by SCIPincludePropDualfix().

#define PROP_PRESOL_MAXROUNDS   -1

maximal number of propving rounds the propver participates in (-1: no limit)

Definition at line 38 of file prop_dualfix.c.

Referenced by SCIPincludePropDualfix().

#define PROP_PRESOL_DELAY   FALSE

should propver be delayed, if other propvers found reductions?

Definition at line 39 of file prop_dualfix.c.

Referenced by SCIPincludePropDualfix().

Function Documentation

static SCIP_RETCODE performDualfix ( SCIP scip,
int *  nfixedvars,
SCIP_Bool unbounded,
SCIP_Bool cutoff 
)
static
static SCIP_DECL_PROPCOPY ( propCopyDualfix  )
static

copy method for constraint handler plugins (called when SCIP copies plugins)

Definition at line 211 of file prop_dualfix.c.

References NULL, PROP_NAME, SCIP_CALL, SCIP_OKAY, SCIPincludePropDualfix(), and SCIPpropGetName().

static SCIP_DECL_PROPPRESOL ( propPresolDualfix  )
static

presolving method of propagator

Definition at line 225 of file prop_dualfix.c.

References FALSE, NULL, performDualfix(), PROP_NAME, SCIP_Bool, SCIP_CALL, SCIP_CUTOFF, SCIP_DIDNOTFIND, SCIP_OKAY, SCIP_SUCCESS, SCIP_UNBOUNDED, and SCIPpropGetName().

static SCIP_DECL_PROPEXEC ( propExecDualfix  )
static

execution method of propagator

Warning
Don't run in probing or in repropagation since this can lead to wrong conclusion

Definition at line 256 of file prop_dualfix.c.

References FALSE, NULL, performDualfix(), PROP_NAME, SCIP_Bool, SCIP_CALL, SCIP_CUTOFF, SCIP_DIDNOTFIND, SCIP_DIDNOTRUN, SCIP_OKAY, SCIP_REDUCEDDOM, SCIP_UNBOUNDED, SCIPinProbing(), SCIPinRepropagation(), and SCIPpropGetName().

SCIP_RETCODE SCIPincludePropDualfix ( SCIP scip)

creates the dual fixing propagator and includes it in SCIP

Parameters
scipSCIP data structure

Definition at line 300 of file prop_dualfix.c.

References NULL, PROP_DELAY, PROP_DESC, PROP_FREQ, PROP_NAME, PROP_PRESOL_DELAY, PROP_PRESOL_MAXROUNDS, PROP_PRESOL_PRIORITY, PROP_PRIORITY, PROP_TIMING, SCIP_CALL, SCIP_OKAY, SCIPincludePropBasic(), SCIPsetPropCopy(), and SCIPsetPropPresol().

Referenced by SCIP_DECL_PROPCOPY(), and SCIPincludeDefaultPlugins().