Scippy

SCIP

Solving Constraint Integer Programs

Detailed Description

heuristic which fixes all integer variables to a bound (lower/upper) and solves the remaining LP

Author
Gerald Gamrath

Definition in file heur_bound.c.

#include "scip/heur_bound.h"
#include "scip/pub_heur.h"
#include "scip/pub_message.h"
#include "scip/pub_tree.h"
#include "scip/pub_var.h"
#include "scip/scip_branch.h"
#include "scip/scip_general.h"
#include "scip/scip_heur.h"
#include "scip/scip_lp.h"
#include "scip/scip_mem.h"
#include "scip/scip_message.h"
#include "scip/scip_numerics.h"
#include "scip/scip_param.h"
#include "scip/scip_prob.h"
#include "scip/scip_probing.h"
#include "scip/scip_sol.h"
#include "scip/scip_solvingstats.h"
#include "scip/scip_timing.h"
#include "scip/scip_tree.h"
#include <string.h>

Go to the source code of this file.

Macros

#define HEUR_NAME   "bound"
 
#define HEUR_DESC   "heuristic which fixes all integer variables to a bound and solves the remaining LP"
 
#define HEUR_DISPCHAR   SCIP_HEURDISPCHAR_PROP
 
#define HEUR_PRIORITY   -1107000
 
#define HEUR_FREQ   -1
 
#define HEUR_FREQOFS   0
 
#define HEUR_MAXDEPTH   -1
 
#define HEUR_TIMING   SCIP_HEURTIMING_BEFORENODE
 
#define HEUR_USESSUBSCIP   FALSE
 
#define DEFAULT_ONLYWITHOUTSOL   TRUE
 
#define DEFAULT_MAXPROPROUNDS   0 /* maximum number of propagation rounds during probing */
 
#define DEFAULT_BOUND   'l'
 

Functions

static SCIP_RETCODE applyBoundHeur (SCIP *scip, SCIP_HEUR *heur, SCIP_HEURDATA *heurdata, SCIP_Bool lower, SCIP_RESULT *result)
 
static SCIP_DECL_HEURCOPY (heurCopyBound)
 
static SCIP_DECL_HEURFREE (heurFreeBound)
 
static SCIP_DECL_HEUREXEC (heurExecBound)
 
SCIP_RETCODE SCIPincludeHeurBound (SCIP *scip)
 

Macro Definition Documentation

◆ HEUR_NAME

#define HEUR_NAME   "bound"

Definition at line 50 of file heur_bound.c.

Referenced by applyBoundHeur(), SCIP_DECL_HEURCOPY(), and SCIPincludeHeurBound().

◆ HEUR_DESC

#define HEUR_DESC   "heuristic which fixes all integer variables to a bound and solves the remaining LP"

Definition at line 51 of file heur_bound.c.

Referenced by SCIPincludeHeurBound().

◆ HEUR_DISPCHAR

#define HEUR_DISPCHAR   SCIP_HEURDISPCHAR_PROP

Definition at line 52 of file heur_bound.c.

Referenced by SCIPincludeHeurBound().

◆ HEUR_PRIORITY

#define HEUR_PRIORITY   -1107000

Definition at line 53 of file heur_bound.c.

Referenced by SCIPincludeHeurBound().

◆ HEUR_FREQ

#define HEUR_FREQ   -1

Definition at line 54 of file heur_bound.c.

Referenced by SCIPincludeHeurBound().

◆ HEUR_FREQOFS

#define HEUR_FREQOFS   0

Definition at line 55 of file heur_bound.c.

Referenced by SCIPincludeHeurBound().

◆ HEUR_MAXDEPTH

#define HEUR_MAXDEPTH   -1

Definition at line 56 of file heur_bound.c.

Referenced by SCIPincludeHeurBound().

◆ HEUR_TIMING

#define HEUR_TIMING   SCIP_HEURTIMING_BEFORENODE

Definition at line 57 of file heur_bound.c.

Referenced by SCIPincludeHeurBound().

◆ HEUR_USESSUBSCIP

#define HEUR_USESSUBSCIP   FALSE

does the heuristic use a secondary SCIP instance?

Definition at line 58 of file heur_bound.c.

Referenced by SCIPincludeHeurBound().

◆ DEFAULT_ONLYWITHOUTSOL

#define DEFAULT_ONLYWITHOUTSOL   TRUE

Should heuristic only be executed if no primal solution was found, yet?

Definition at line 60 of file heur_bound.c.

Referenced by SCIPincludeHeurBound().

◆ DEFAULT_MAXPROPROUNDS

#define DEFAULT_MAXPROPROUNDS   0 /* maximum number of propagation rounds during probing */

Definition at line 61 of file heur_bound.c.

Referenced by SCIPincludeHeurBound().

◆ DEFAULT_BOUND

#define DEFAULT_BOUND   'l'

to which bound should integer variables be fixed?

Definition at line 62 of file heur_bound.c.

Referenced by SCIPincludeHeurBound().

Function Documentation

◆ applyBoundHeur()

◆ SCIP_DECL_HEURCOPY()

static SCIP_DECL_HEURCOPY ( heurCopyBound  )
static

copy method for primal heuristic plugins (called when SCIP copies plugins)

Definition at line 279 of file heur_bound.c.

References HEUR_NAME, NULL, SCIP_CALL, SCIP_OKAY, SCIPheurGetName(), and SCIPincludeHeurBound().

◆ SCIP_DECL_HEURFREE()

static SCIP_DECL_HEURFREE ( heurFreeBound  )
static

destructor of primal heuristic to free user data (called when SCIP is exiting)

Definition at line 293 of file heur_bound.c.

References NULL, SCIP_OKAY, SCIPfreeBlockMemory, SCIPheurGetData(), and SCIPheurSetData().

◆ SCIP_DECL_HEUREXEC()