Scippy

GCG

Branch-and-Price & Column Generation for Everyone

heur_mastervecldiving.c File Reference

Detailed Description

master LP diving heuristic that rounds variables with long column vectors

Author
Tobias Achterberg
Christian Puchert

Definition in file heur_mastervecldiving.c.

#include <assert.h>
#include <string.h>
#include "heur_mastervecldiving.h"
#include "heur_masterdiving.h"

Go to the source code of this file.

Macros

#define HEUR_NAME   "mastervecldiving"
 
#define HEUR_DESC   "master LP diving heuristic that rounds variables with long column vectors"
 
#define HEUR_DISPCHAR   'v'
 
#define HEUR_PRIORITY   -1003100
 
#define HEUR_FREQ   10
 
#define HEUR_FREQOFS   4
 
#define HEUR_MAXDEPTH   -1
 

Functions

static GCG_DECL_DIVINGSELECTVAR (heurSelectVarMastervecldiving)
 
SCIP_RETCODE GCGincludeHeurMastervecldiving (SCIP *scip)
 

Macro Definition Documentation

◆ HEUR_NAME

#define HEUR_NAME   "mastervecldiving"

Definition at line 43 of file heur_mastervecldiving.c.

◆ HEUR_DESC

#define HEUR_DESC   "master LP diving heuristic that rounds variables with long column vectors"

Definition at line 44 of file heur_mastervecldiving.c.

◆ HEUR_DISPCHAR

#define HEUR_DISPCHAR   'v'

Definition at line 45 of file heur_mastervecldiving.c.

◆ HEUR_PRIORITY

#define HEUR_PRIORITY   -1003100

Definition at line 46 of file heur_mastervecldiving.c.

◆ HEUR_FREQ

#define HEUR_FREQ   10

Definition at line 47 of file heur_mastervecldiving.c.

◆ HEUR_FREQOFS

#define HEUR_FREQOFS   4

Definition at line 48 of file heur_mastervecldiving.c.

◆ HEUR_MAXDEPTH

#define HEUR_MAXDEPTH   -1

Definition at line 49 of file heur_mastervecldiving.c.

Function Documentation

◆ GCG_DECL_DIVINGSELECTVAR()

static GCG_DECL_DIVINGSELECTVAR ( heurSelectVarMastervecldiving  )
static

variable selection method of diving heuristic; finds best candidate variable w.r.t. vector length:

  • round variables in direction where objective value gets worse; for zero objective coefficient, round upwards
  • round variable with least objective value deficit per row the variable appears in (we want to "fix" as many rows as possible with the least damage to the objective function)

Definition at line 64 of file heur_mastervecldiving.c.

◆ GCGincludeHeurMastervecldiving()

SCIP_RETCODE GCGincludeHeurMastervecldiving ( SCIP *  scip)

creates the mastervecldiving heuristic and includes it in GCG

Parameters
scipSCIP data structure

Definition at line 147 of file heur_mastervecldiving.c.

References GCGincludeDivingHeurMaster(), HEUR_DESC, HEUR_DISPCHAR, HEUR_FREQ, HEUR_FREQOFS, HEUR_MAXDEPTH, HEUR_NAME, and HEUR_PRIORITY.

Referenced by GCGincludeMasterPlugins().