Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | File Members | Related Pages

CbcStrongInfo Struct Reference

Abstract base class for `objects'. More...

#include <CbcBranchBase.hpp>

List of all members.

Public Attributes

CbcBranchingObjectpossibleBranch
double upMovement
double downMovement
int numIntInfeasUp
int numObjInfeasUp
bool finishedUp
int numItersUp
int numIntInfeasDown
int numObjInfeasDown
bool finishedDown
int numItersDown
int objectNumber
int fix


Detailed Description

Abstract base class for `objects'.

The branching model used in Cbc is based on the idea of an object. In the abstract, an object is something that has a feasible region, can be evaluated for infeasibility, can be branched on (i.e., there's some constructive action to be taken to move toward feasibility), and allows comparison of the effect of branching.

This class (CbcObject) is the base class for an object. To round out the branching model, the class CbcBranchingObject describes how to perform a branch, and the class CbcBranchDecision describes how to compare two CbcBranchingObjects.

To create a new type of object you need to provide three methods: #infeasibility(), #feasibleRegion(), and #createBranch(), described below.

This base class is primarily virtual to allow for any form of structure. Any form of discontinuity is allowed.

Todo:
The notion that all branches are binary (two arms) is wired into the implementation of CbcObject, CbcBranchingObject, and CbcBranchDecision. Changing this will require a moderate amount of recoding.

Definition at line 44 of file CbcBranchBase.hpp.


Member Data Documentation

CbcBranchingObject* CbcStrongInfo::possibleBranch
 

Definition at line 45 of file CbcBranchBase.hpp.

double CbcStrongInfo::upMovement
 

Definition at line 46 of file CbcBranchBase.hpp.

double CbcStrongInfo::downMovement
 

Definition at line 47 of file CbcBranchBase.hpp.

int CbcStrongInfo::numIntInfeasUp
 

Definition at line 48 of file CbcBranchBase.hpp.

int CbcStrongInfo::numObjInfeasUp
 

Definition at line 49 of file CbcBranchBase.hpp.

bool CbcStrongInfo::finishedUp
 

Definition at line 50 of file CbcBranchBase.hpp.

int CbcStrongInfo::numItersUp
 

Definition at line 51 of file CbcBranchBase.hpp.

int CbcStrongInfo::numIntInfeasDown
 

Definition at line 52 of file CbcBranchBase.hpp.

int CbcStrongInfo::numObjInfeasDown
 

Definition at line 53 of file CbcBranchBase.hpp.

bool CbcStrongInfo::finishedDown
 

Definition at line 54 of file CbcBranchBase.hpp.

int CbcStrongInfo::numItersDown
 

Definition at line 55 of file CbcBranchBase.hpp.

int CbcStrongInfo::objectNumber
 

Definition at line 56 of file CbcBranchBase.hpp.

int CbcStrongInfo::fix
 

Definition at line 57 of file CbcBranchBase.hpp.


The documentation for this struct was generated from the following file:
Generated on Sun Jun 11 02:01:19 2006 by  doxygen 1.3.9.1