BonminBB Class Reference

Class which performs optimization of an MINLP stored in an IpoptInterface. More...

#include <CbcBonmin.hpp>

List of all members.

Public Types

 FeasibleOptimal
 Optimum solution has been found and its optimality proved.
 ProvenInfeasible
 Problem has been proven to be infeasible.
 Feasible
 An integer solution to the problem has been found.
 NoSolutionKnown
 No feasible solution to the problem is known.
enum  MipStatuses { FeasibleOptimal, ProvenInfeasible, Feasible, NoSolutionKnown }
 Integer optimization return codes. More...

Public Member Functions

 BonminBB ()
 Constructor.
virtual ~BonminBB ()
 destructor.
void branchAndBound (IpoptInterface &ip, const BonminCbcParam &par)
 Perform a branch-and-bound on given IpoptInterface using passed parameters.
void operator() (IpoptInterface &ip, const BonminCbcParam &par)
 operator() performs the branchAndBound
const NumberbestSolution () const
 get the best solution known to the problem (is optimal if MipStatus is FeasibleOptimal).
double bestObj () const
 return objective value of the bestSolution
MipStatuses mipStatus () const
 return Mip Status
double bestBound ()
 return the best known lower bound on the objective value
int numNodes () const
 return the total number of nodes explored.
int iterationCount ()
 return the total number of iterations in the last mip solved.
double continuousRelaxation ()
 returns the value of the continuous relaxation.
virtual void replaceIntegers (CbcObject **objects, int numberObjects)
 virtual callback function to eventually modify objects for integer variable (replace with user set).

Private Attributes

double * bestSolution_
 Stores the solution of MIP.
MipStatuses mipStatus_
 Status of the mixed integer program.
double bestObj_
 objValue of MIP
double bestBound_
 best known (lower) bound.
double continuousRelaxation_
 Continuous relaxation of the problem.
int numNodes_
 Number of nodes enumerated.
int mipIterationCount_
 get total number of iterations in last mip solved.


Detailed Description

Class which performs optimization of an MINLP stored in an IpoptInterface.

Definition at line 9 of file CbcBonmin.hpp.


Member Enumeration Documentation

enum BonminBB::MipStatuses

Integer optimization return codes.

Enumerator:
FeasibleOptimal  Optimum solution has been found and its optimality proved.
ProvenInfeasible  Problem has been proven to be infeasible.
Feasible  An integer solution to the problem has been found.
NoSolutionKnown  No feasible solution to the problem is known.

Definition at line 13 of file CbcBonmin.hpp.


Constructor & Destructor Documentation

BonminBB::BonminBB (  ) 

Constructor.

virtual BonminBB::~BonminBB (  )  [virtual]

destructor.


Member Function Documentation

void BonminBB::branchAndBound ( IpoptInterface ip,
const BonminCbcParam par 
)

Perform a branch-and-bound on given IpoptInterface using passed parameters.

Referenced by operator()().

void BonminBB::operator() ( IpoptInterface ip,
const BonminCbcParam par 
) [inline]

operator() performs the branchAndBound

Definition at line 26 of file CbcBonmin.hpp.

References branchAndBound().

const Number* BonminBB::bestSolution (  )  const [inline]

get the best solution known to the problem (is optimal if MipStatus is FeasibleOptimal).

if no solution is known returns NULL.

Definition at line 33 of file CbcBonmin.hpp.

References bestSolution_.

double BonminBB::bestObj (  )  const [inline]

return objective value of the bestSolution

Definition at line 38 of file CbcBonmin.hpp.

References bestObj_.

Referenced by main().

MipStatuses BonminBB::mipStatus (  )  const [inline]

return Mip Status

Definition at line 43 of file CbcBonmin.hpp.

References mipStatus_.

Referenced by main().

double BonminBB::bestBound (  ) 

return the best known lower bound on the objective value

int BonminBB::numNodes (  )  const [inline]

return the total number of nodes explored.

Definition at line 50 of file CbcBonmin.hpp.

References numNodes_.

Referenced by main().

int BonminBB::iterationCount (  )  [inline]

return the total number of iterations in the last mip solved.

Definition at line 55 of file CbcBonmin.hpp.

References mipIterationCount_.

Referenced by main().

double BonminBB::continuousRelaxation (  )  [inline]

returns the value of the continuous relaxation.

Definition at line 60 of file CbcBonmin.hpp.

References continuousRelaxation_.

virtual void BonminBB::replaceIntegers ( CbcObject **  objects,
int  numberObjects 
) [inline, virtual]

virtual callback function to eventually modify objects for integer variable (replace with user set).

This is called after CbcModel::findIntegers

Definition at line 67 of file CbcBonmin.hpp.


Member Data Documentation

double* BonminBB::bestSolution_ [private]

Stores the solution of MIP.

Definition at line 68 of file CbcBonmin.hpp.

Referenced by bestSolution().

MipStatuses BonminBB::mipStatus_ [private]

Status of the mixed integer program.

Definition at line 73 of file CbcBonmin.hpp.

Referenced by mipStatus().

double BonminBB::bestObj_ [private]

objValue of MIP

Definition at line 75 of file CbcBonmin.hpp.

Referenced by bestObj().

double BonminBB::bestBound_ [private]

best known (lower) bound.

Definition at line 77 of file CbcBonmin.hpp.

double BonminBB::continuousRelaxation_ [private]

Continuous relaxation of the problem.

Definition at line 79 of file CbcBonmin.hpp.

Referenced by continuousRelaxation().

int BonminBB::numNodes_ [private]

Number of nodes enumerated.

Definition at line 81 of file CbcBonmin.hpp.

Referenced by numNodes().

int BonminBB::mipIterationCount_ [private]

get total number of iterations in last mip solved.

Definition at line 83 of file CbcBonmin.hpp.

Referenced by iterationCount().


The documentation for this class was generated from the following file:
Generated on Fri May 16 21:11:34 2008 for Bonmin by  doxygen 1.4.7