Scippy

SCIP

Solving Constraint Integer Programs

presol_stuffing.c File Reference

Detailed Description

fix singleton continuous variables

Author
Dieter Weninger

Investigate singleton continuous variables if one can be fixed at a bound.

Definition in file presol_stuffing.c.

#include <stdio.h>
#include <assert.h>
#include <string.h>
#include "scip/pub_matrix.h"
#include "presol_stuffing.h"

Go to the source code of this file.

Macros

#define PRESOL_NAME   "stuffing"
 
#define PRESOL_DESC   "fix redundant singleton continuous variables"
 
#define PRESOL_PRIORITY   -100
 
#define PRESOL_MAXROUNDS   -1
 
#define PRESOL_TIMING   SCIP_PRESOLTIMING_EXHAUSTIVE /* timing of the presolver (fast, medium, or exhaustive) */
 

Typedefs

typedef enum Fixingdirection FIXINGDIRECTION
 

Enumerations

enum  Fixingdirection {
  FIXATLB = -1,
  NOFIX = 0,
  FIXATUB = 1,
  FIXATLB = -1,
  NOFIX = 0,
  FIXATLB = -1,
  NOFIX = 0,
  FIXATUB = 1
}
 

Functions

static SCIP_RETCODE singletonColumnStuffing (SCIP *scip, SCIP_MATRIX *matrix, FIXINGDIRECTION *varstofix, int *nfixings)
 
static SCIP_DECL_PRESOLCOPY (presolCopyStuffing)
 
static SCIP_DECL_PRESOLEXEC (presolExecStuffing)
 
SCIP_RETCODE SCIPincludePresolStuffing (SCIP *scip)
 

Macro Definition Documentation

#define PRESOL_NAME   "stuffing"

Definition at line 36 of file presol_stuffing.c.

Referenced by SCIP_DECL_PRESOLCOPY(), and SCIPincludePresolStuffing().

#define PRESOL_DESC   "fix redundant singleton continuous variables"

Definition at line 37 of file presol_stuffing.c.

Referenced by SCIPincludePresolStuffing().

#define PRESOL_PRIORITY   -100

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

Definition at line 38 of file presol_stuffing.c.

Referenced by SCIPincludePresolStuffing().

#define PRESOL_MAXROUNDS   -1

maximal number of presolving rounds the presolver participates in (-1: no limit)

Definition at line 39 of file presol_stuffing.c.

Referenced by SCIPincludePresolStuffing().

#define PRESOL_TIMING   SCIP_PRESOLTIMING_EXHAUSTIVE /* timing of the presolver (fast, medium, or exhaustive) */

Definition at line 40 of file presol_stuffing.c.

Referenced by SCIPincludePresolStuffing().

Typedef Documentation

Definition at line 49 of file presol_stuffing.c.

Enumeration Type Documentation

type of fixing direction

Enumerator
FIXATLB 

fix variable at lower bound

NOFIX 

do not fix variable

FIXATUB 

fix variable at upper bound

FIXATLB 
NOFIX 
FIXATLB 

fix variable at lower bound

NOFIX 

do not fix variable

FIXATUB 

fix variable at upper bound

Definition at line 43 of file presol_stuffing.c.

Function Documentation

static SCIP_DECL_PRESOLCOPY ( presolCopyStuffing  )
static

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

Definition at line 325 of file presol_stuffing.c.

References NULL, PRESOL_NAME, SCIP_CALL, SCIP_OKAY, SCIPincludePresolStuffing(), and SCIPpresolGetName().

SCIP_RETCODE SCIPincludePresolStuffing ( SCIP scip)

creates the stuffing presolver and includes it in SCIP

Parameters
scipSCIP data structure

Definition at line 466 of file presol_stuffing.c.

References NULL, PRESOL_DESC, PRESOL_MAXROUNDS, PRESOL_NAME, PRESOL_PRIORITY, PRESOL_TIMING, SCIP_CALL, SCIP_OKAY, SCIPincludePresolBasic(), and SCIPsetPresolCopy().

Referenced by SCIP_DECL_PRESOLCOPY(), and SCIPincludeDefaultPlugins().