Solving Constraint Integer Programs

branch_pscost.h File Reference

Detailed Description

pseudo costs branching rule

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.


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 SCIPincludeBranchrulePscost ( SCIP scip)

creates the pseudo cost branching rule and includes it in SCIP

scipSCIP data structure
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

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