heur_gcgguideddiving.c
Go to the documentation of this file.
34 /*---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+----0----+----1----+----2*/
292 /** execution initialization method of diving heuristic (called when execution of diving heuristic is about to begin) */
311 /** execution deinitialization method of diving heuristic (called when execution data is freed) */
333 * - of these variables, round a variable to its value in direction of incumbent solution, and choose the
336 * - round variable in direction that destroys LP feasibility (other direction is checked by SCIProundSol())
339 * - variables in a minimal cover or variables that are also fractional in an optimal LP solution might
369 SCIP_CALL( SCIPgetExternBranchCands(scip, &lpcands, &lpcandssol, &lpcandsfrac, &nlpcands, NULL, NULL, NULL, NULL) );
415 /* the candidate may be rounded: choose this candidate only, if the best candidate may also be rounded */
421 * - if variable may be rounded in both directions, round corresponding to its value in incumbent solution
422 * - otherwise, round in the infeasible direction, because feasible direction is tried by rounding
GCG_DIVINGDATA * GCGheurGetDivingDataOrig(SCIP_HEUR *heur)
Definition: heur_origdiving.c:1087
GCG interface methods.
static GCG_DECL_DIVINGFREE(heurFreeGcgguideddiving)
Definition: heur_gcgguideddiving.c:275
SCIP_VAR ** GCGoriginalVarGetMastervars(SCIP_VAR *var)
Definition: gcgvar.c:587
SCIP_Bool GCGisLinkingVarInBlock(SCIP_VAR *var, int block)
Definition: gcgvar.c:1064
static SCIP_RETCODE getMasterUpFrac(SCIP *scip, SCIP_VAR *var, SCIP_Real *frac)
Definition: heur_gcgguideddiving.c:202
primal heuristic interface for LP diving heuristics on the original variables
SCIP_Real * GCGoriginalVarGetMastervals(SCIP_VAR *var)
Definition: gcgvar.c:605
Definition: heur_gcgcoefdiving.c:61
SCIP_RETCODE GCGincludeDivingHeurOrig(SCIP *scip, SCIP_HEUR **heur, const char *name, const char *desc, char dispchar, int priority, int freq, int freqofs, int maxdepth, GCG_DECL_DIVINGFREE((*divingfree)), GCG_DECL_DIVINGINIT((*divinginit)), GCG_DECL_DIVINGEXIT((*divingexit)), GCG_DECL_DIVINGINITSOL((*divinginitsol)), GCG_DECL_DIVINGEXITSOL((*divingexitsol)), GCG_DECL_DIVINGINITEXEC((*divinginitexec)), GCG_DECL_DIVINGEXITEXEC((*divingexitexec)), GCG_DECL_DIVINGSELECTVAR((*divingselectvar)), GCG_DIVINGDATA *divingdata)
Definition: heur_origdiving.c:1120
SCIP_RETCODE GCGincludeHeurGcgguideddiving(SCIP *scip)
Definition: heur_gcgguideddiving.c:515
static SCIP_Bool areVarsInSameBlock(SCIP_VAR *origvar, SCIP_VAR *mastervar)
Definition: heur_gcgguideddiving.c:74
static GCG_DECL_DIVINGINITEXEC(heurInitexecGcgguideddiving)
Definition: heur_gcgguideddiving.c:294
static SCIP_RETCODE getMasterDownFrac(SCIP *scip, SCIP_VAR *var, SCIP_Real *frac)
Definition: heur_gcgguideddiving.c:132
void GCGheurSetDivingDataOrig(SCIP_HEUR *heur, GCG_DIVINGDATA *divingdata)
Definition: heur_origdiving.c:1103
LP diving heuristic that chooses fixings in direction of incumbent solutions.
static GCG_DECL_DIVINGEXITEXEC(heurExitexecGcgguideddiving)
Definition: heur_gcgguideddiving.c:313
static GCG_DECL_DIVINGSELECTVAR(heurSelectVarGcgguideddiving)
Definition: heur_gcgguideddiving.c:343