Scippy

SCIP

Solving Constraint Integer Programs

branch_pscost.h File Reference

Detailed Description

pseudo costs branching rule

Author
Tobias Achterberg

The pseudo costs branching rule selects the branching variable with respect to the so-called pseudo costs of the variables. Pseudo costs measure the average gain per unit in the objective function when the variable was branched on upwards or downwards, resp. The required information is updated at every node of the solving process.

The selected variable maximizes the expected gain of the dual bound in the created subtree.

For a more mathematical description and a comparison between the pseudo costs branching rule and other branching rules in SCIP, we refer to

Tobias Achterberg
Constraint Integer Programming
PhD Thesis, Technische Universität Berlin, 2007

Definition in file branch_pscost.h.

#include "scip/scip.h"

Go to the source code of this file.

Functions

SCIP_RETCODE SCIPincludeBranchrulePscost (SCIP *scip)
 
SCIP_RETCODE SCIPselectBranchVarPscost (SCIP *scip, SCIP_VAR **branchcands, SCIP_Real *branchcandssol, SCIP_Real *branchcandsscore, int nbranchcands, SCIP_VAR **var, SCIP_Real *brpoint)
 

Function Documentation

SCIP_RETCODE SCIPselectBranchVarPscost ( SCIP scip,
SCIP_VAR **  branchcands,
SCIP_Real branchcandssol,
SCIP_Real branchcandsscore,
int  nbranchcands,
SCIP_VAR **  var,
SCIP_Real brpoint 
)

selects a branching variable, due to pseudo cost, from the given candidate array and returns this variable together with a branching point

Parameters
scipSCIP data structure
branchcandsbranching candidates
branchcandssolsolution value for the branching candidates
branchcandsscorearray of candidate scores
nbranchcandsnumber of branching candidates
varpointer to store the variable to branch on, or NULL if none
brpointpointer to store the branching point for the branching variable, will be fractional for a discrete variable

Definition at line 693 of file branch_pscost.c.

References BRANCHRULE_NAME, NULL, SCIP_CALL, SCIP_OKAY, SCIPfindBranchrule(), and selectBranchVar().