Scippy

SCIP

Solving Constraint Integer Programs

branch_mostinf.c File Reference

Detailed Description

most infeasible LP branching rule

Author
Tobias Achterberg

Definition in file branch_mostinf.c.

#include <assert.h>
#include <string.h>
#include "scip/branch_mostinf.h"

Go to the source code of this file.

Macros

#define BRANCHRULE_NAME   "mostinf"
 
#define BRANCHRULE_DESC   "most infeasible branching"
 
#define BRANCHRULE_PRIORITY   100
 
#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 (branchCopyMostinf)
 
static SCIP_DECL_BRANCHEXECLP (branchExeclpMostinf)
 
static SCIP_DECL_BRANCHEXECEXT (branchExecextMostinf)
 
SCIP_RETCODE SCIPincludeBranchruleMostinf (SCIP *scip)
 

Macro Definition Documentation

#define BRANCHRULE_NAME   "mostinf"
#define BRANCHRULE_DESC   "most infeasible branching"

Definition at line 30 of file branch_mostinf.c.

Referenced by SCIPincludeBranchruleMostinf().

#define BRANCHRULE_PRIORITY   100

Definition at line 31 of file branch_mostinf.c.

Referenced by SCIPincludeBranchruleMostinf().

#define BRANCHRULE_MAXDEPTH   -1

Definition at line 32 of file branch_mostinf.c.

Referenced by SCIPincludeBranchruleMostinf().

#define BRANCHRULE_MAXBOUNDDIST   1.0

Definition at line 33 of file branch_mostinf.c.

Referenced by SCIPincludeBranchruleMostinf().

Function Documentation

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

compares the so far best branching candidate with a new candidate and updates best candidate, if new candidate is better

Parameters
scipSCIP data structure
bestvarbest branching candidate
bestscorescore of best branching candidate
bestobjabsolute objective value of best branching candidate
bestsolproposed branching point of best branching candidate
candbranching candidate to consider
candscorescoring of branching candidate
candsolproposed branching point of branching candidate

Definition at line 41 of file branch_mostinf.c.

References FALSE, NULL, REALABS, SCIP_Bool, SCIP_INVALID, SCIP_Real, SCIP_VARSTATUS_MULTAGGR, SCIPcomputeVarLbLocal(), SCIPcomputeVarUbLocal(), SCIPisEQ(), SCIPisFeasGE(), SCIPisFeasLE(), SCIPisGE(), SCIPisGT(), SCIPisInfinity(), SCIPvarGetBranchFactor(), SCIPvarGetMultaggrNVars(), SCIPvarGetMultaggrScalars(), SCIPvarGetMultaggrVars(), SCIPvarGetObj(), SCIPvarGetProbvar(), SCIPvarGetStatus(), SCIPvarIsActive(), and TRUE.

Referenced by SCIP_DECL_BRANCHEXECEXT().

static SCIP_DECL_BRANCHCOPY ( branchCopyMostinf  )
static

copy method for branchrule plugins (called when SCIP copies plugins)

Definition at line 207 of file branch_mostinf.c.

References BRANCHRULE_NAME, NULL, SCIP_CALL, SCIP_OKAY, SCIPbranchruleGetName(), and SCIPincludeBranchruleMostinf().

static SCIP_DECL_BRANCHEXECLP ( branchExeclpMostinf  )
static
SCIP_RETCODE SCIPincludeBranchruleMostinf ( SCIP scip)

creates the most infeasible LP branching rule and includes it in SCIP

Parameters
scipSCIP data structure

Definition at line 356 of file branch_mostinf.c.

References BRANCHRULE_DESC, BRANCHRULE_MAXBOUNDDIST, BRANCHRULE_MAXDEPTH, BRANCHRULE_NAME, BRANCHRULE_PRIORITY, NULL, SCIP_CALL, SCIP_OKAY, SCIPincludeBranchruleBasic(), SCIPsetBranchruleCopy(), SCIPsetBranchruleExecExt(), and SCIPsetBranchruleExecLp().

Referenced by SCIP_DECL_BRANCHCOPY(), and SCIPincludeDefaultPlugins().