primal heuristic that tries a given solution
This heuristic takes a solution from somewhere else via the function SCIPheurPassSolTrySol(). It then tries to commit this solution. It is mainly used by cons_indicator, which tries to correct a given solution, but cannot directly submit this solution, because it is a constraint handler and not a heuristic.
Definition in file heur_trysol.c.
Go to the source code of this file.
Macros | |
#define | HEUR_NAME "trysol" |
#define | HEUR_DESC "try solution heuristic" |
#define | HEUR_DISPCHAR 'y' |
#define | HEUR_PRIORITY -3000000 /* should process after all other heuristics */ |
#define | HEUR_FREQ 1 |
#define | HEUR_FREQOFS 0 |
#define | HEUR_MAXDEPTH -1 |
#define | HEUR_TIMING SCIP_HEURTIMING_DURINGLPLOOP | SCIP_HEURTIMING_BEFOREPRESOL | SCIP_HEURTIMING_BEFORENODE |
#define | HEUR_USESSUBSCIP FALSE |
Functions | |
static | SCIP_DECL_HEURCOPY (heurCopyTrySol) |
static | SCIP_DECL_HEURFREE (heurFreeTrySol) |
static | SCIP_DECL_HEUREXITSOL (heurExitTrySol) |
static | SCIP_DECL_HEUREXEC (heurExecTrySol) |
SCIP_RETCODE | SCIPincludeHeurTrySol (SCIP *scip) |
SCIP_RETCODE | SCIPheurPassSolTrySol (SCIP *scip, SCIP_HEUR *heur, SCIP_SOL *sol) |
SCIP_RETCODE | SCIPheurPassSolAddSol (SCIP *scip, SCIP_HEUR *heur, SCIP_SOL *sol) |
#define HEUR_NAME "trysol" |
Definition at line 34 of file heur_trysol.c.
Referenced by SCIP_DECL_HEURCOPY(), SCIP_DECL_HEUREXEC(), SCIP_DECL_HEUREXITSOL(), SCIP_DECL_HEURFREE(), SCIPheurPassSolAddSol(), SCIPheurPassSolTrySol(), and SCIPincludeHeurTrySol().
#define HEUR_DESC "try solution heuristic" |
Definition at line 35 of file heur_trysol.c.
Referenced by SCIPincludeHeurTrySol().
#define HEUR_DISPCHAR 'y' |
Definition at line 36 of file heur_trysol.c.
Referenced by SCIPincludeHeurTrySol().
#define HEUR_PRIORITY -3000000 /* should process after all other heuristics */ |
Definition at line 37 of file heur_trysol.c.
Referenced by SCIPincludeHeurTrySol().
#define HEUR_FREQ 1 |
Definition at line 38 of file heur_trysol.c.
Referenced by SCIPincludeHeurTrySol().
#define HEUR_FREQOFS 0 |
Definition at line 39 of file heur_trysol.c.
Referenced by SCIPincludeHeurTrySol().
#define HEUR_MAXDEPTH -1 |
Definition at line 40 of file heur_trysol.c.
Referenced by SCIPincludeHeurTrySol().
#define HEUR_TIMING SCIP_HEURTIMING_DURINGLPLOOP | SCIP_HEURTIMING_BEFOREPRESOL | SCIP_HEURTIMING_BEFORENODE |
Definition at line 41 of file heur_trysol.c.
Referenced by SCIPincludeHeurTrySol().
#define HEUR_USESSUBSCIP FALSE |
does the heuristic use a secondary SCIP instance?
Definition at line 42 of file heur_trysol.c.
Referenced by SCIPincludeHeurTrySol().
|
static |
copy method for primal heuristic plugins (called when SCIP copies plugins)
Definition at line 65 of file heur_trysol.c.
References HEUR_NAME, SCIP_CALL, SCIP_OKAY, SCIPheurGetName(), and SCIPincludeHeurTrySol().
|
static |
destructor of primal heuristic to free user data (called when SCIP is exiting)
Definition at line 79 of file heur_trysol.c.
References HEUR_NAME, SCIP_OKAY, SCIPdebugMsg, SCIPfreeBlockMemory, SCIPheurGetData(), and SCIPheurGetName().
|
static |
deinitialization method of primal heuristic (called before transformed problem is freed)
Definition at line 101 of file heur_trysol.c.
References HEUR_NAME, SCIP_CALL, SCIP_OKAY, SCIPdebugMsg, SCIPfreeSol(), SCIPheurGetData(), and SCIPheurGetName().
|
static |
execution method of primal heuristic
Definition at line 131 of file heur_trysol.c.
References FALSE, HEUR_NAME, SCIP_Bool, SCIP_CALL, SCIP_DIDNOTFIND, SCIP_DIDNOTRUN, SCIP_FOUNDSOL, SCIP_OKAY, SCIP_Real, SCIPaddSolFree(), SCIPdebugMsg, SCIPgetSolOrigObj(), SCIPheurGetData(), SCIPheurGetName(), SCIPtrySolFree(), and TRUE.