least infeasible LP branching rule
Definition in file branch_leastinf.c.
#include "scip/branch_leastinf.h"
#include "scip/pub_branch.h"
#include "scip/pub_message.h"
#include "scip/pub_var.h"
#include "scip/scip_branch.h"
#include "scip/scip_message.h"
#include "scip/scip_numerics.h"
#include "scip/scip_var.h"
#include <string.h>
Go to the source code of this file.
Macros | |
#define | BRANCHRULE_NAME "leastinf" |
#define | BRANCHRULE_DESC "least infeasible branching" |
#define | BRANCHRULE_PRIORITY 50 |
#define | BRANCHRULE_MAXDEPTH -1 |
#define | BRANCHRULE_MAXBOUNDDIST 1.0 |
Functions | |
static void | updateBestCandidate (SCIP *scip, SCIP_VAR **bestvar, SCIP_Real *bestscore, SCIP_Real *bestobj, SCIP_Real *bestsol, SCIP_VAR *cand, SCIP_Real candscore, SCIP_Real candsol) |
static | SCIP_DECL_BRANCHCOPY (branchCopyLeastinf) |
static | SCIP_DECL_BRANCHEXECLP (branchExeclpLeastinf) |
static | SCIP_DECL_BRANCHEXECEXT (branchExecextLeastinf) |
SCIP_RETCODE | SCIPincludeBranchruleLeastinf (SCIP *scip) |
#define BRANCHRULE_NAME "leastinf" |
Definition at line 44 of file branch_leastinf.c.
#define BRANCHRULE_DESC "least infeasible branching" |
Definition at line 45 of file branch_leastinf.c.
#define BRANCHRULE_PRIORITY 50 |
Definition at line 46 of file branch_leastinf.c.
#define BRANCHRULE_MAXDEPTH -1 |
Definition at line 47 of file branch_leastinf.c.
#define BRANCHRULE_MAXBOUNDDIST 1.0 |
Definition at line 48 of file branch_leastinf.c.
|
static |
compares the so far best branching candidate with a new candidate and updates best candidate, if new candidate is better
scip | SCIP data structure |
bestvar | best branching candidate |
bestscore | score of best branching candidate |
bestobj | absolute objective value of best branching candidate |
bestsol | proposed branching point of best branching candidate |
cand | branching candidate to consider |
candscore | scoring of branching candidate |
candsol | proposed branching point of branching candidate |
Definition at line 56 of file branch_leastinf.c.
References assert(), FALSE, i, NULL, obj, REALABS, SCIP_Bool, SCIP_INVALID, SCIP_Real, SCIP_VARSTATUS_MULTAGGR, SCIPcomputeVarLbLocal(), SCIPcomputeVarUbLocal(), SCIPisEQ(), SCIPisFeasGE(), SCIPisFeasLE(), SCIPisInfinity(), SCIPisLE(), SCIPisLT(), SCIPvarGetBranchFactor(), SCIPvarGetMultaggrNVars(), SCIPvarGetMultaggrScalars(), SCIPvarGetMultaggrVars(), SCIPvarGetObj(), SCIPvarGetProbvar(), SCIPvarGetStatus(), SCIPvarIsActive(), TRUE, and updateBestCandidate().
Referenced by SCIP_DECL_BRANCHEXECEXT(), and updateBestCandidate().
|
static |
copy method for branchrule plugins (called when SCIP copies plugins)
Definition at line 222 of file branch_leastinf.c.
References assert(), BRANCHRULE_NAME, NULL, SCIP_CALL, SCIP_OKAY, SCIPbranchruleGetName(), and SCIPincludeBranchruleLeastinf().
|
static |
branching execution method for fractional LP solutions
Definition at line 237 of file branch_leastinf.c.
References assert(), bestcand, BRANCHRULE_NAME, i, lpcands, lpcandsfrac, MIN, nlpcands, NULL, obj, REALABS, result, SCIP_BRANCHED, SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIP_REAL_MIN, SCIPbranchruleGetName(), SCIPbranchVar(), SCIPdebugMsg, SCIPgetLPBranchCands(), SCIPisGE(), SCIPisGT(), SCIPvarGetBranchFactor(), SCIPvarGetName(), and SCIPvarGetObj().
|
static |
branching execution method for external candidates
Definition at line 299 of file branch_leastinf.c.
References assert(), bestcand, BRANCHRULE_NAME, i, NULL, result, SCIP_BRANCHED, SCIP_CALL, SCIP_DIDNOTRUN, SCIP_INVALID, SCIP_OKAY, SCIP_Real, SCIP_REDUCEDDOM, SCIPbranchruleGetName(), SCIPbranchVarVal(), SCIPdebugMsg, SCIPerrorMessage, SCIPgetBranchingPoint(), SCIPgetExternBranchCands(), SCIPinfinity(), SCIPisEQ(), SCIPvarGetBranchFactor(), SCIPvarGetLbLocal(), SCIPvarGetName(), SCIPvarGetUbLocal(), and updateBestCandidate().