C++ wrapper for primal heuristics.
This class defines the interface for primal heuristics implemented in C++. Note that there is a pure virtual function (this function has to be implemented). This function is: scip_exec().
C++ wrapper for primal heuristics. More...
#include <objheur.h>
Public Member Functions | |
ObjHeur (SCIP *scip, const char *name, const char *desc, char dispchar, int priority, int freq, int freqofs, int maxdepth, SCIP_HEURTIMING timingmask, SCIP_Bool usessubscip) | |
ObjHeur (const ObjHeur &o) | |
ObjHeur (ObjHeur &&o) | |
virtual | ~ObjHeur () |
ObjHeur & | operator= (const ObjHeur &o)=delete |
ObjHeur & | operator= (ObjHeur &&o)=delete |
virtual | SCIP_DECL_HEURFREE (scip_free) |
virtual | SCIP_DECL_HEURINIT (scip_init) |
virtual | SCIP_DECL_HEUREXIT (scip_exit) |
virtual | SCIP_DECL_HEURINITSOL (scip_initsol) |
virtual | SCIP_DECL_HEUREXITSOL (scip_exitsol) |
virtual | SCIP_DECL_HEUREXEC (scip_exec)=0 |
![]() | |
virtual | ~ObjCloneable () |
ObjCloneable & | operator= (const ObjCloneable &o)=delete |
ObjCloneable & | operator= (ObjCloneable &&o)=delete |
virtual | SCIP_DECL_OBJCLONEABLECLONE (ObjCloneable *clone) |
virtual | SCIP_DECL_OBJCLONEABLEISCLONEABLE (iscloneable) |
Data Fields | |
SCIP * | scip_ |
char * | scip_name_ |
char * | scip_desc_ |
const char | scip_dispchar_ |
const int | scip_priority_ |
const int | scip_freq_ |
const int | scip_freqofs_ |
const int | scip_maxdepth_ |
const SCIP_HEURTIMING | scip_timingmask_ |
const SCIP_Bool | scip_usessubscip_ |
|
inline |
default constructor
scip | SCIP data structure |
name | name of primal heuristic |
desc | description of primal heuristic |
dispchar | display character of primal heuristic |
priority | priority of the primal heuristic |
freq | frequency for calling primal heuristic |
freqofs | frequency offset for calling primal heuristic |
maxdepth | maximal depth level to call heuristic at (-1: no limit) |
timingmask | positions in the node solving loop where heuristic should be executed; see definition of SCIP_HEURTIMING for possible values |
usessubscip | does the heuristic use a secondary SCIP instance? |
Definition at line 89 of file objheur.h.
References scip_, SCIP_CALL_ABORT, scip_desc_, scip_name_, and SCIPduplicateMemoryArray.
|
inline |
move constructor
Definition at line 126 of file objheur.h.
References i, scip_desc_, and scip_name_.
|
inlinevirtual |
destructor
Definition at line 143 of file objheur.h.
References scip_, scip_desc_, scip_name_, and SCIPfreeMemoryArray.
assignment of polymorphic classes causes slicing and is therefore disabled.
assignment of polymorphic classes causes slicing and is therefore disabled.
destructor of primal heuristic to free user data (called when SCIP is exiting)
Reimplemented in tsp::Heur2opt, tsp::HeurFarthestInsert, and tsp::HeurFrats.
Definition at line 161 of file objheur.h.
References SCIP_OKAY.
initialization method of primal heuristic (called after problem was transformed)
Reimplemented in tsp::Heur2opt, tsp::HeurFarthestInsert, and tsp::HeurFrats.
Definition at line 170 of file objheur.h.
References SCIP_OKAY.
deinitialization method of primal heuristic (called before transformed problem is freed)
Reimplemented in tsp::Heur2opt, tsp::HeurFarthestInsert, and tsp::HeurFrats.
Definition at line 179 of file objheur.h.
References SCIP_OKAY.
|
inlinevirtual |
solving process initialization method of primal heuristic (called when branch and bound process is about to begin)
Reimplemented in tsp::Heur2opt, tsp::HeurFarthestInsert, and tsp::HeurFrats.
Definition at line 188 of file objheur.h.
References SCIP_OKAY.
|
inlinevirtual |
solving process deinitialization method of primal heuristic (called before branch and bound process data is freed)
Reimplemented in tsp::Heur2opt, tsp::HeurFarthestInsert, and tsp::HeurFrats.
Definition at line 197 of file objheur.h.
References SCIP_OKAY.
execution method of primal heuristic
Implemented in tsp::Heur2opt, tsp::HeurFarthestInsert, and tsp::HeurFrats.
SCIP* scip::ObjHeur::scip_ |
SCIP data structure
Definition at line 59 of file objheur.h.
Referenced by ObjHeur(), and ~ObjHeur().
char* scip::ObjHeur::scip_name_ |
name of the primal heuristic
Definition at line 62 of file objheur.h.
Referenced by ObjHeur(), ObjHeur(), SCIPincludeObjHeur(), and ~ObjHeur().
char* scip::ObjHeur::scip_desc_ |
description of the primal heuristic
Definition at line 65 of file objheur.h.
Referenced by ObjHeur(), ObjHeur(), SCIPincludeObjHeur(), and ~ObjHeur().
const char scip::ObjHeur::scip_dispchar_ |
display character of primal heuristic
Definition at line 68 of file objheur.h.
Referenced by SCIPincludeObjHeur().
const int scip::ObjHeur::scip_priority_ |
default priority of the primal heuristic
Definition at line 71 of file objheur.h.
Referenced by SCIPincludeObjHeur().
const int scip::ObjHeur::scip_freq_ |
frequency for calling primal heuristic
Definition at line 74 of file objheur.h.
Referenced by SCIPincludeObjHeur().
const int scip::ObjHeur::scip_freqofs_ |
frequency offset for calling primal heuristic
Definition at line 77 of file objheur.h.
Referenced by SCIPincludeObjHeur().
const int scip::ObjHeur::scip_maxdepth_ |
maximal depth level to call heuristic at (-1: no limit)
Definition at line 80 of file objheur.h.
Referenced by SCIPincludeObjHeur().
const SCIP_HEURTIMING scip::ObjHeur::scip_timingmask_ |
positions in the node solving loop where heuristic should be executed
Definition at line 83 of file objheur.h.
Referenced by SCIPincludeObjHeur().
does the heuristic use a secondary SCIP instance?
Definition at line 86 of file objheur.h.
Referenced by SCIPincludeObjHeur().