Classes
ClpNode Class Reference

#include <ClpNode.hpp>

Collaboration diagram for ClpNode:
Collaboration graph
[legend]

List of all members.

Classes

struct  branchState

Public Member Functions

Useful methods
void applyNode (ClpSimplex *model, int doBoundsEtc)
 Applies node to model 0 - just tree bounds 1 - tree bounds and basis etc 2 - saved bounds and basis etc.
void chooseVariable (ClpSimplex *model, ClpNodeStuff *info)
 Choose a new variable.
int fixOnReducedCosts (ClpSimplex *model)
 Fix on reduced costs.
void createArrays (ClpSimplex *model)
 Create odd arrays.
void cleanUpForCrunch ()
 Clean up as crunch is different model.
Gets and sets
double objectiveValue () const
 Objective value.
void setObjectiveValue (double value)
 Set objective value.
const double * primalSolution () const
 Primal solution.
const double * dualSolution () const
 Dual solution.
double branchingValue () const
 Initial value of integer variable.
double sumInfeasibilities () const
 Sum infeasibilities.
int numberInfeasibilities () const
 Number infeasibilities.
int depth () const
 Relative depth.
double estimatedSolution () const
 Estimated solution value.
int way () const
 Way for integer variable -1 down , +1 up.
bool fathomed () const
 Return true if branch exhausted.
void changeState ()
 Change state of variable i.e. go other way.
int sequence () const
 Sequence number of integer variable (-1 if none)
bool oddArraysExist () const
 If odd arrays exist.
const unsigned char * statusArray () const
 Status array.
Constructors, destructor
 ClpNode ()
 Default constructor.
 ClpNode (ClpSimplex *model, const ClpNodeStuff *stuff, int depth)
 Constructor from model.
void gutsOfConstructor (ClpSimplex *model, const ClpNodeStuff *stuff, int arraysExist, int depth)
 Does work of constructor (partly so gdb will work)
virtual ~ClpNode ()
 Destructor.
Copy methods (at present illegal - will abort)
 ClpNode (const ClpNode &)
 The copy constructor.
ClpNodeoperator= (const ClpNode &)
 Operator =.

Protected Attributes

Data
double branchingValue_
 Initial value of integer variable.
double objectiveValue_
 Value of objective.
double sumInfeasibilities_
 Sum of infeasibilities.
double estimatedSolution_
 Estimated solution value.
ClpFactorizationfactorization_
 Factorization.
ClpDualRowSteepestweights_
 Steepest edge weights.
unsigned char * status_
 Status vector.
double * primalSolution_
 Primal solution.
double * dualSolution_
 Dual solution.
int * lower_
 Integer lower bounds (only used in fathomMany)
int * upper_
 Integer upper bounds (only used in fathomMany)
int * pivotVariables_
 Pivot variables for factorization.
int * fixed_
 Variables fixed by reduced costs (at end of branch) 0x10000000 added if fixed to UB.
branchState branchState_
 State of branch.
int sequence_
 Sequence number of integer variable (-1 if none)
int numberInfeasibilities_
 Number of infeasibilities.
int depth_
 Relative depth.
int numberFixed_
 Number fixed by reduced cost.
int flags_
 Flags - 1 duals scaled.
int maximumFixed_
 Maximum number fixed by reduced cost.
int maximumRows_
 Maximum rows so far.
int maximumColumns_
 Maximum columns so far.
int maximumIntegers_
 Maximum Integers so far.

Detailed Description

Definition at line 17 of file ClpNode.hpp.


Constructor & Destructor Documentation

Default constructor.

ClpNode::ClpNode ( ClpSimplex model,
const ClpNodeStuff stuff,
int  depth 
)

Constructor from model.

virtual ClpNode::~ClpNode ( ) [virtual]

Destructor.

ClpNode::ClpNode ( const ClpNode )

The copy constructor.


Member Function Documentation

void ClpNode::applyNode ( ClpSimplex model,
int  doBoundsEtc 
)

Applies node to model 0 - just tree bounds 1 - tree bounds and basis etc 2 - saved bounds and basis etc.

void ClpNode::chooseVariable ( ClpSimplex model,
ClpNodeStuff info 
)

Choose a new variable.

Fix on reduced costs.

void ClpNode::createArrays ( ClpSimplex model)

Create odd arrays.

Clean up as crunch is different model.

double ClpNode::objectiveValue ( ) const [inline]

Objective value.

Definition at line 41 of file ClpNode.hpp.

void ClpNode::setObjectiveValue ( double  value) [inline]

Set objective value.

Definition at line 45 of file ClpNode.hpp.

const double* ClpNode::primalSolution ( ) const [inline]

Primal solution.

Definition at line 49 of file ClpNode.hpp.

const double* ClpNode::dualSolution ( ) const [inline]

Dual solution.

Definition at line 53 of file ClpNode.hpp.

double ClpNode::branchingValue ( ) const [inline]

Initial value of integer variable.

Definition at line 57 of file ClpNode.hpp.

double ClpNode::sumInfeasibilities ( ) const [inline]

Sum infeasibilities.

Definition at line 61 of file ClpNode.hpp.

int ClpNode::numberInfeasibilities ( ) const [inline]

Number infeasibilities.

Definition at line 65 of file ClpNode.hpp.

int ClpNode::depth ( ) const [inline]

Relative depth.

Definition at line 69 of file ClpNode.hpp.

double ClpNode::estimatedSolution ( ) const [inline]

Estimated solution value.

Definition at line 73 of file ClpNode.hpp.

int ClpNode::way ( ) const

Way for integer variable -1 down , +1 up.

bool ClpNode::fathomed ( ) const

Return true if branch exhausted.

Change state of variable i.e. go other way.

int ClpNode::sequence ( ) const [inline]

Sequence number of integer variable (-1 if none)

Definition at line 83 of file ClpNode.hpp.

bool ClpNode::oddArraysExist ( ) const [inline]

If odd arrays exist.

Definition at line 87 of file ClpNode.hpp.

const unsigned char* ClpNode::statusArray ( ) const [inline]

Status array.

Definition at line 91 of file ClpNode.hpp.

void ClpNode::gutsOfConstructor ( ClpSimplex model,
const ClpNodeStuff stuff,
int  arraysExist,
int  depth 
)

Does work of constructor (partly so gdb will work)

ClpNode& ClpNode::operator= ( const ClpNode )

Operator =.


Member Data Documentation

double ClpNode::branchingValue_ [protected]

Initial value of integer variable.

Definition at line 127 of file ClpNode.hpp.

double ClpNode::objectiveValue_ [protected]

Value of objective.

Definition at line 129 of file ClpNode.hpp.

double ClpNode::sumInfeasibilities_ [protected]

Sum of infeasibilities.

Definition at line 131 of file ClpNode.hpp.

double ClpNode::estimatedSolution_ [protected]

Estimated solution value.

Definition at line 133 of file ClpNode.hpp.

Factorization.

Definition at line 135 of file ClpNode.hpp.

Steepest edge weights.

Definition at line 137 of file ClpNode.hpp.

unsigned char* ClpNode::status_ [protected]

Status vector.

Definition at line 139 of file ClpNode.hpp.

double* ClpNode::primalSolution_ [protected]

Primal solution.

Definition at line 141 of file ClpNode.hpp.

double* ClpNode::dualSolution_ [protected]

Dual solution.

Definition at line 143 of file ClpNode.hpp.

int* ClpNode::lower_ [protected]

Integer lower bounds (only used in fathomMany)

Definition at line 145 of file ClpNode.hpp.

int* ClpNode::upper_ [protected]

Integer upper bounds (only used in fathomMany)

Definition at line 147 of file ClpNode.hpp.

int* ClpNode::pivotVariables_ [protected]

Pivot variables for factorization.

Definition at line 149 of file ClpNode.hpp.

int* ClpNode::fixed_ [protected]

Variables fixed by reduced costs (at end of branch) 0x10000000 added if fixed to UB.

Definition at line 151 of file ClpNode.hpp.

State of branch.

Definition at line 153 of file ClpNode.hpp.

int ClpNode::sequence_ [protected]

Sequence number of integer variable (-1 if none)

Definition at line 155 of file ClpNode.hpp.

Number of infeasibilities.

Definition at line 157 of file ClpNode.hpp.

int ClpNode::depth_ [protected]

Relative depth.

Definition at line 159 of file ClpNode.hpp.

int ClpNode::numberFixed_ [protected]

Number fixed by reduced cost.

Definition at line 161 of file ClpNode.hpp.

int ClpNode::flags_ [protected]

Flags - 1 duals scaled.

Definition at line 163 of file ClpNode.hpp.

int ClpNode::maximumFixed_ [protected]

Maximum number fixed by reduced cost.

Definition at line 165 of file ClpNode.hpp.

int ClpNode::maximumRows_ [protected]

Maximum rows so far.

Definition at line 167 of file ClpNode.hpp.

int ClpNode::maximumColumns_ [protected]

Maximum columns so far.

Definition at line 169 of file ClpNode.hpp.

int ClpNode::maximumIntegers_ [protected]

Maximum Integers so far.

Definition at line 171 of file ClpNode.hpp.


The documentation for this class was generated from the following file: