Scippy

SCIP

Solving Constraint Integer Programs

nodesel_hybridestim.c File Reference

Detailed Description

node selector for hybrid best estimate / best bound search

Author
Tobias Achterberg

Definition in file nodesel_hybridestim.c.

#include "scip/nodesel_hybridestim.h"
#include "scip/pub_message.h"
#include "scip/pub_nodesel.h"
#include "scip/pub_tree.h"
#include "scip/scip_mem.h"
#include "scip/scip_message.h"
#include "scip/scip_nodesel.h"
#include "scip/scip_numerics.h"
#include "scip/scip_param.h"
#include "scip/scip_solvingstats.h"
#include "scip/scip_tree.h"
#include <string.h>

Go to the source code of this file.

Macros

#define NODESEL_NAME   "hybridestim"
 
#define NODESEL_DESC   "hybrid best estimate / best bound search"
 
#define NODESEL_STDPRIORITY   50000
 
#define NODESEL_MEMSAVEPRIORITY   50
 
#define MINPLUNGEDEPTH   -1
 
#define MAXPLUNGEDEPTH   -1
 
#define MAXPLUNGEQUOT   0.25
 
#define BESTNODEFREQ   1000
 
#define ESTIMWEIGHT   0.10
 

Functions

static SCIP_Real getNodeselScore (SCIP_NODE *node, SCIP_Real estimweight)
 
static SCIP_DECL_NODESELCOPY (nodeselCopyHybridestim)
 
static SCIP_DECL_NODESELFREE (nodeselFreeHybridestim)
 
static SCIP_DECL_NODESELSELECT (nodeselSelectHybridestim)
 
static SCIP_DECL_NODESELCOMP (nodeselCompHybridestim)
 
SCIP_RETCODE SCIPincludeNodeselHybridestim (SCIP *scip)
 

Macro Definition Documentation

◆ NODESEL_NAME

#define NODESEL_NAME   "hybridestim"

Definition at line 36 of file nodesel_hybridestim.c.

Referenced by SCIPincludeNodeselHybridestim().

◆ NODESEL_DESC

#define NODESEL_DESC   "hybrid best estimate / best bound search"

Definition at line 37 of file nodesel_hybridestim.c.

Referenced by SCIPincludeNodeselHybridestim().

◆ NODESEL_STDPRIORITY

#define NODESEL_STDPRIORITY   50000

Definition at line 38 of file nodesel_hybridestim.c.

Referenced by SCIPincludeNodeselHybridestim().

◆ NODESEL_MEMSAVEPRIORITY

#define NODESEL_MEMSAVEPRIORITY   50

Definition at line 39 of file nodesel_hybridestim.c.

Referenced by SCIPincludeNodeselHybridestim().

◆ MINPLUNGEDEPTH

#define MINPLUNGEDEPTH   -1

minimal plunging depth, before new best node may be selected (-1 for dynamic setting)

Definition at line 46 of file nodesel_hybridestim.c.

Referenced by SCIPincludeNodeselHybridestim().

◆ MAXPLUNGEDEPTH

#define MAXPLUNGEDEPTH   -1

maximal plunging depth, before new best node is forced to be selected (-1 for dynamic setting)

Definition at line 47 of file nodesel_hybridestim.c.

Referenced by SCIPincludeNodeselHybridestim().

◆ MAXPLUNGEQUOT

#define MAXPLUNGEQUOT   0.25

maximal quotient (curlowerbound - lowerbound)/(cutoffbound - lowerbound) where plunging is performed

Definition at line 48 of file nodesel_hybridestim.c.

Referenced by SCIPincludeNodeselHybridestim().

◆ BESTNODEFREQ

#define BESTNODEFREQ   1000

frequency at which the best node instead of the hybrid best estimate / best bound is selected (0: never)

Definition at line 51 of file nodesel_hybridestim.c.

Referenced by SCIPincludeNodeselHybridestim().

◆ ESTIMWEIGHT

#define ESTIMWEIGHT   0.10

weight of estimate value in node selection score (0: pure best bound search, 1: pure best estimate search)

Definition at line 52 of file nodesel_hybridestim.c.

Referenced by SCIPincludeNodeselHybridestim().

Function Documentation

◆ getNodeselScore()

static SCIP_Real getNodeselScore ( SCIP_NODE node,
SCIP_Real  estimweight 
)
static

returns a weighted sum of the node's lower bound and estimate value

Parameters
nodebranching node
estimweightweight of estimate in score

Definition at line 79 of file nodesel_hybridestim.c.

References SCIP_DECL_NODESELCOPY(), SCIPnodeGetEstimate(), and SCIPnodeGetLowerbound().

◆ SCIP_DECL_NODESELCOPY()

static SCIP_DECL_NODESELCOPY ( nodeselCopyHybridestim  )
static

copy method for node selector plugins (called when SCIP copies plugins)

Definition at line 94 of file nodesel_hybridestim.c.

Referenced by getNodeselScore().

◆ SCIP_DECL_NODESELFREE()

static SCIP_DECL_NODESELFREE ( nodeselFreeHybridestim  )
static

destructor of node selector to free user data (called when SCIP is exiting)

Definition at line 108 of file nodesel_hybridestim.c.

◆ SCIP_DECL_NODESELSELECT()

static SCIP_DECL_NODESELSELECT ( nodeselSelectHybridestim  )
static

node selection method of node selector

Definition at line 128 of file nodesel_hybridestim.c.

◆ SCIP_DECL_NODESELCOMP()

static SCIP_DECL_NODESELCOMP ( nodeselCompHybridestim  )
static

node comparison method of node selector

Definition at line 261 of file nodesel_hybridestim.c.