Detailed Description
reduction based primal heuristic for Steiner problems
This file implements a reduction based heuristic for Steiner problems that makes use of lurking bounds.
Definition in file heur_lurkprune.h.
Go to the source code of this file.
Functions | |
SCIP_RETCODE | SCIPStpIncludeHeurLurkPrune (SCIP *scip) |
SCIP_RETCODE | SCIPStpHeurLurkPruneRun (SCIP *scip, SCIP_VAR **vars, const SCIP_Real *lurkingbounds, GRAPH *g, SCIP_Bool initialreduce, SCIP_Bool ascendprune, int *soledge, SCIP_Bool *solimproved) |
Function Documentation
◆ SCIPStpIncludeHeurLurkPrune()
SCIP_RETCODE SCIPStpIncludeHeurLurkPrune | ( | SCIP * | scip | ) |
creates the lurk prune primal heuristic and includes it in SCIP
creates the lurkprune primal heuristic and includes it in SCIP
- Parameters
-
scip SCIP data structure
Definition at line 792 of file heur_lurkprune.c.
References DEFAULT_LURKPRUNE_MAXFREQ, FALSE, HEUR_DESC, HEUR_DISPCHAR, HEUR_FREQ, HEUR_FREQOFS, HEUR_MAXDEPTH, HEUR_NAME, HEUR_PRIORITY, HEUR_TIMING, HEUR_USESSUBSCIP, NULL, SCIP_CALL, SCIP_OKAY, SCIPaddBoolParam(), SCIPallocMemory, SCIPincludeHeurBasic(), SCIPsetHeurCopy(), SCIPsetHeurExitsol(), SCIPsetHeurFree(), SCIPsetHeurInit(), and SCIPsetHeurInitsol().
Referenced by runShell(), SCIP_DECL_HEURCOPY(), and subscipSetupCallbacks().
◆ SCIPStpHeurLurkPruneRun()
SCIP_RETCODE SCIPStpHeurLurkPruneRun | ( | SCIP * | scip, |
SCIP_VAR ** | vars, | ||
const SCIP_Real * | lurkingbounds, | ||
GRAPH * | g, | ||
SCIP_Bool | initialreduce, | ||
SCIP_Bool | ascendprune, | ||
int * | soledge, | ||
SCIP_Bool * | solimproved | ||
) |
execute lurk-and-prune heuristic on given graph
- Parameters
-
scip SCIP data structure vars problem variables or NULL lurkingbounds lurking edge bounds g graph data structure initialreduce try to reduce graph initially? ascendprune use ascend-prune? soledge array to 1. provide and 2. return primal solution solimproved could a better solution be found?
Definition at line 731 of file heur_lurkprune.c.
References GRAPH::extended, FALSE, graph_pc_isPcMw(), LURKPRUNE_MAXREDROUNDS, lurkpruneFinalize(), lurkpruneInit(), NULL, reduceExact(), reduceFixedVars(), reduceLurk(), SCIP_Bool, SCIP_CALL, SCIP_OKAY, SCIPdebugMessage, solstp_isValid(), GRAPH::terms, and updateSolution().
Referenced by SCIP_DECL_HEUREXEC().