Detailed Description
full strong LP branching rule
Definition in file branch_fullstrong.c.
#include "blockmemshell/memory.h"
#include "scip/branch_fullstrong.h"
#include "scip/pub_branch.h"
#include "scip/pub_message.h"
#include "scip/pub_tree.h"
#include "scip/pub_var.h"
#include "scip/scip_branch.h"
#include "scip/scip_general.h"
#include "scip/scip_lp.h"
#include "scip/scip_mem.h"
#include "scip/scip_message.h"
#include "scip/scip_numerics.h"
#include "scip/scip_param.h"
#include "scip/scip_prob.h"
#include "scip/scip_solvingstats.h"
#include "scip/scip_tree.h"
#include "scip/scip_var.h"
#include <string.h>
Go to the source code of this file.
Macros | |
#define | BRANCHRULE_NAME "fullstrong" |
#define | BRANCHRULE_DESC "full strong branching" |
#define | BRANCHRULE_PRIORITY 0 |
#define | BRANCHRULE_MAXDEPTH -1 |
#define | BRANCHRULE_MAXBOUNDDIST 1.0 |
#define | DEFAULT_REEVALAGE 10LL |
#define | DEFAULT_MAXPROPROUNDS -2 |
#define | DEFAULT_PROBINGBOUNDS TRUE |
#define | DEFAULT_FORCESTRONGBRANCH FALSE |
Functions | |
static | SCIP_DECL_BRANCHCOPY (branchCopyFullstrong) |
static | SCIP_DECL_BRANCHFREE (branchFreeFullstrong) |
static | SCIP_DECL_BRANCHINIT (branchInitFullstrong) |
static | SCIP_DECL_BRANCHEXIT (branchExitFullstrong) |
SCIP_RETCODE | SCIPselectVarStrongBranching (SCIP *scip, SCIP_VAR **lpcands, SCIP_Real *lpcandssol, SCIP_Real *lpcandsfrac, SCIP_Bool *skipdown, SCIP_Bool *skipup, int nlpcands, int npriolpcands, int ncomplete, int *start, int maxproprounds, SCIP_Bool probingbounds, SCIP_Bool forcestrongbranch, int *bestcand, SCIP_Real *bestdown, SCIP_Real *bestup, SCIP_Real *bestscore, SCIP_Bool *bestdownvalid, SCIP_Bool *bestupvalid, SCIP_Real *provedbound, SCIP_RESULT *result) |
static | SCIP_DECL_BRANCHEXECLP (branchExeclpFullstrong) |
SCIP_RETCODE | SCIPincludeBranchruleFullstrong (SCIP *scip) |
Macro Definition Documentation
◆ BRANCHRULE_NAME
#define BRANCHRULE_NAME "fullstrong" |
Definition at line 45 of file branch_fullstrong.c.
Referenced by SCIPincludeBranchruleFullstrong(), and SCIPselectVarStrongBranching().
◆ BRANCHRULE_DESC
#define BRANCHRULE_DESC "full strong branching" |
Definition at line 46 of file branch_fullstrong.c.
Referenced by SCIPincludeBranchruleFullstrong().
◆ BRANCHRULE_PRIORITY
#define BRANCHRULE_PRIORITY 0 |
Definition at line 47 of file branch_fullstrong.c.
Referenced by SCIPincludeBranchruleFullstrong().
◆ BRANCHRULE_MAXDEPTH
#define BRANCHRULE_MAXDEPTH -1 |
Definition at line 48 of file branch_fullstrong.c.
Referenced by SCIPincludeBranchruleFullstrong().
◆ BRANCHRULE_MAXBOUNDDIST
#define BRANCHRULE_MAXBOUNDDIST 1.0 |
Definition at line 49 of file branch_fullstrong.c.
Referenced by SCIPincludeBranchruleFullstrong().
◆ DEFAULT_REEVALAGE
#define DEFAULT_REEVALAGE 10LL |
number of intermediate LPs solved to trigger reevaluation of strong branching value for a variable that was already evaluated at the current node
Definition at line 51 of file branch_fullstrong.c.
Referenced by SCIPincludeBranchruleFullstrong().
◆ DEFAULT_MAXPROPROUNDS
#define DEFAULT_MAXPROPROUNDS -2 |
maximum number of propagation rounds to be performed during strong branching before solving the LP (-1: no limit, -2: parameter settings)
Definition at line 54 of file branch_fullstrong.c.
Referenced by SCIPincludeBranchruleFullstrong().
◆ DEFAULT_PROBINGBOUNDS
#define DEFAULT_PROBINGBOUNDS TRUE |
should valid bounds be identified in a probing-like fashion during strong branching (only with propagation)?
Definition at line 57 of file branch_fullstrong.c.
Referenced by SCIPincludeBranchruleFullstrong().
◆ DEFAULT_FORCESTRONGBRANCH
#define DEFAULT_FORCESTRONGBRANCH FALSE |
should strong branching be applied even if there is just a single candidate?
Definition at line 60 of file branch_fullstrong.c.
Referenced by SCIPincludeBranchruleFullstrong().
Function Documentation
◆ SCIP_DECL_BRANCHCOPY()
|
static |
copy method for branchrule plugins (called when SCIP copies plugins)
Definition at line 86 of file branch_fullstrong.c.
◆ SCIP_DECL_BRANCHFREE()
|
static |
destructor of branching rule to free user data (called when SCIP is exiting)
Definition at line 100 of file branch_fullstrong.c.
◆ SCIP_DECL_BRANCHINIT()
|
static |
initialization method of branching rule (called after problem was transformed)
Definition at line 120 of file branch_fullstrong.c.
◆ SCIP_DECL_BRANCHEXIT()
|
static |
deinitialization method of branching rule (called before transformed problem is freed)
Definition at line 135 of file branch_fullstrong.c.
◆ SCIP_DECL_BRANCHEXECLP()
|
static |
branching execution method for fractional LP solutions
Definition at line 537 of file branch_fullstrong.c.
Referenced by SCIPselectVarStrongBranching().