Scippy

SCIP

Solving Constraint Integer Programs

Detailed Description

fixing roundable variables to best bound

Author
Tobias Achterberg
Stefan Heinz

Definition in file prop_dualfix.c.

#include "scip/prop_dualfix.h"
#include "scip/pub_message.h"
#include "scip/pub_prop.h"
#include "scip/pub_var.h"
#include "scip/scip_general.h"
#include "scip/scip_message.h"
#include "scip/scip_numerics.h"
#include "scip/scip_prob.h"
#include "scip/scip_probing.h"
#include "scip/scip_prop.h"
#include "scip/scip_tree.h"
#include "scip/scip_var.h"
#include <string.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_PRESOLTIMING   SCIP_PRESOLTIMING_FAST /* timing of the presolving method (fast, medium, or exhaustive) */
 

Functions

SCIP_RETCODE SCIPincludePropDualfix (SCIP *scip)
 
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)
 

Macro Definition Documentation

◆ PROP_NAME

#define PROP_NAME   "dualfix"

Definition at line 48 of file prop_dualfix.c.

◆ PROP_DESC

#define PROP_DESC   "roundable variables dual fixing"

Definition at line 49 of file prop_dualfix.c.

◆ PROP_TIMING

#define PROP_TIMING   SCIP_PROPTIMING_BEFORELP

Definition at line 50 of file prop_dualfix.c.

◆ PROP_PRIORITY

#define PROP_PRIORITY   +8000000

propagation priority

Definition at line 51 of file prop_dualfix.c.

◆ PROP_FREQ

#define PROP_FREQ   0

propagation frequency

Definition at line 52 of file prop_dualfix.c.

◆ PROP_DELAY

#define PROP_DELAY   FALSE

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

Definition at line 54 of file prop_dualfix.c.

◆ PROP_PRESOL_PRIORITY

#define PROP_PRESOL_PRIORITY   +8000000

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

Definition at line 55 of file prop_dualfix.c.

◆ PROP_PRESOL_MAXROUNDS

#define PROP_PRESOL_MAXROUNDS   -1

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

Definition at line 56 of file prop_dualfix.c.

◆ PROP_PRESOLTIMING

#define PROP_PRESOLTIMING   SCIP_PRESOLTIMING_FAST /* timing of the presolving method (fast, medium, or exhaustive) */

Definition at line 57 of file prop_dualfix.c.

Function Documentation

◆ performDualfix()

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

◆ SCIP_DECL_PROPCOPY()

static SCIP_DECL_PROPCOPY ( propCopyDualfix  )
static

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

Definition at line 232 of file prop_dualfix.c.

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

◆ SCIP_DECL_PROPPRESOL()

static SCIP_DECL_PROPPRESOL ( propPresolDualfix  )
static

◆ SCIP_DECL_PROPEXEC()

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

do not run if propagation w.r.t. current objective is not allowed

Definition at line 282 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, SCIPallowStrongDualReds(), SCIPinProbing(), SCIPinRepropagation(), and SCIPpropGetName().