Cbc 2.10.13
Loading...
Searching...
No Matches
CbcFollowOn Class Reference

Define a follow on class. More...

#include <CbcFollowOn.hpp>

Inheritance diagram for CbcFollowOn:
Collaboration diagram for CbcFollowOn:

Public Member Functions

 CbcFollowOn ()
 CbcFollowOn (CbcModel *model)
 Useful constructor.
 CbcFollowOn (const CbcFollowOn &)
virtual CbcObject * clone () const
 Clone.
CbcFollowOnoperator= (const CbcFollowOn &rhs)
 ~CbcFollowOn ()
virtual double infeasibility (const OsiBranchingInformation *info, int &preferredWay) const
 Infeasibility - large is 0.5.
virtual void feasibleRegion ()
 This looks at solution and sets bounds to contain solution.
virtual CbcBranchingObjectcreateCbcBranch (OsiSolverInterface *solver, const OsiBranchingInformation *info, int way)
 Creates a branching object.
virtual int gutsOfFollowOn (int &otherRow, int &preferredWay) const
 As some computation is needed in more than one place - returns row.

Protected Attributes

CoinPackedMatrix matrix_
 data Matrix
CoinPackedMatrix matrixByRow_
 Matrix by row.
int * rhs_
 Possible rhs (if 0 then not possible).

Detailed Description

Define a follow on class.

The idea of this is that in air-crew scheduling problems crew may fly in on flight A and out on flight B or on some other flight. A useful branch is one which on one side fixes all which go out on flight B to 0, while the other branch fixes all those that do NOT go out on flight B to 0.

This branching rule should be in addition to normal rules and have a high priority.

Definition at line 25 of file CbcFollowOn.hpp.

Constructor & Destructor Documentation

◆ CbcFollowOn() [1/3]

CbcFollowOn::CbcFollowOn ( )

◆ CbcFollowOn() [2/3]

CbcFollowOn::CbcFollowOn ( CbcModel * model)

Useful constructor.

◆ CbcFollowOn() [3/3]

CbcFollowOn::CbcFollowOn ( const CbcFollowOn & )

◆ ~CbcFollowOn()

CbcFollowOn::~CbcFollowOn ( )

Member Function Documentation

◆ clone()

virtual CbcObject * CbcFollowOn::clone ( ) const
virtual

Clone.

◆ operator=()

CbcFollowOn & CbcFollowOn::operator= ( const CbcFollowOn & rhs)

◆ infeasibility()

virtual double CbcFollowOn::infeasibility ( const OsiBranchingInformation * info,
int & preferredWay ) const
virtual

Infeasibility - large is 0.5.

◆ feasibleRegion()

virtual void CbcFollowOn::feasibleRegion ( )
virtual

This looks at solution and sets bounds to contain solution.

◆ createCbcBranch()

virtual CbcBranchingObject * CbcFollowOn::createCbcBranch ( OsiSolverInterface * solver,
const OsiBranchingInformation * info,
int way )
virtual

Creates a branching object.

◆ gutsOfFollowOn()

virtual int CbcFollowOn::gutsOfFollowOn ( int & otherRow,
int & preferredWay ) const
virtual

As some computation is needed in more than one place - returns row.

Member Data Documentation

◆ matrix_

CoinPackedMatrix CbcFollowOn::matrix_
protected

data Matrix

Definition at line 63 of file CbcFollowOn.hpp.

◆ matrixByRow_

CoinPackedMatrix CbcFollowOn::matrixByRow_
protected

Matrix by row.

Definition at line 65 of file CbcFollowOn.hpp.

◆ rhs_

int* CbcFollowOn::rhs_
protected

Possible rhs (if 0 then not possible).

Definition at line 67 of file CbcFollowOn.hpp.


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