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 "blockmemshell/memory.h"
#include "scip/presol_stuffing.h"
#include "scip/pub_matrix.h"
#include "scip/pub_message.h"
#include "scip/pub_misc_sort.h"
#include "scip/pub_presol.h"
#include "scip/pub_var.h"
#include "scip/scip_general.h"
#include "scip/scip_mem.h"
#include "scip/scip_message.h"
#include "scip/scip_nlp.h"
#include "scip/scip_numerics.h"
#include "scip/scip_presol.h"
#include "scip/scip_pricer.h"
#include "scip/scip_prob.h"
#include "scip/scip_probing.h"
#include "scip/scip_var.h"
#include <string.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   0
 
#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,
  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

◆ PRESOL_NAME

#define PRESOL_NAME   "stuffing"

Definition at line 47 of file presol_stuffing.c.

Referenced by SCIP_DECL_PRESOLCOPY(), and SCIPincludePresolStuffing().

◆ PRESOL_DESC

#define PRESOL_DESC   "fix redundant singleton continuous variables"

Definition at line 48 of file presol_stuffing.c.

Referenced by SCIPincludePresolStuffing().

◆ PRESOL_PRIORITY

#define PRESOL_PRIORITY   -100

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

Definition at line 49 of file presol_stuffing.c.

Referenced by SCIPincludePresolStuffing().

◆ PRESOL_MAXROUNDS

#define PRESOL_MAXROUNDS   0

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

Definition at line 50 of file presol_stuffing.c.

Referenced by SCIPincludePresolStuffing().

◆ PRESOL_TIMING

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

Definition at line 51 of file presol_stuffing.c.

Referenced by SCIPincludePresolStuffing().

Typedef Documentation

◆ FIXINGDIRECTION

Definition at line 60 of file presol_stuffing.c.

Enumeration Type Documentation

◆ Fixingdirection

type of fixing direction

Enumerator
FIXATLB 

fix variable at lower bound

NOFIX 

do not fix variable

FIXATUB 

fix variable at upper bound

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 54 of file presol_stuffing.c.

Function Documentation

◆ singletonColumnStuffing()

◆ SCIP_DECL_PRESOLCOPY()

static SCIP_DECL_PRESOLCOPY ( presolCopyStuffing  )
static

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

Definition at line 336 of file presol_stuffing.c.

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

◆ SCIP_DECL_PRESOLEXEC()