My Project
CouenneSolver Class Reference

The CouenneSolver class solves problems using Ipopt. More...

#include <OSCouenneSolver.h>

Inheritance diagram for CouenneSolver:
DefaultSolver

Public Member Functions

 CouenneSolver ()
 the CouenneSolver class constructor
 
 ~CouenneSolver ()
 the IpoptSolver class destructor
 
virtual void solve ()
 solve results in an instance being read into the Couenne data structrues and optimized
 
virtual void buildSolverInstance ()
 buildSolverInstance is a virtual function – the actual solvers will implement their own buildSolverInstance method – the solver instance is the instance the individual solver sees in its API
 
virtual void setSolverOptions ()
 The implementation of the virtual functions.
 
void dataEchoCheck ()
 use this for debugging, print out the instance that the solver thinks it has and compare this with the OSiL file
 
void writeResult ()
 use this to write the solution information to an OSResult object
 
- Public Member Functions inherited from DefaultSolver
 DefaultSolver ()
 default constructor.
 
virtual ~DefaultSolver ()=0
 default destructor.
 

Public Attributes

OSiLReaderm_osilreader
 m_osilreader is an OSiLReader object used to create an osinstance from an osil string if needed
 
OSoLReaderm_osolreader
 m_osolreader is an OSoLReader object used to create an osoption from an osol string if needed
 
Couenne::CouenneProblem * couenne
 
Ipopt::SmartPtr< BonminProblemtminlp
 
Ipopt::SmartPtr< Bonmin::TNLPSolver > app_
 
Couenne::CouenneBab bb
 
Bonmin::TMINLP::SolverReturn status
 
Couenne::expression * con_body
 
Couenne::expression * obj_body
 
- Public Attributes inherited from DefaultSolver
std::string osil
 osil holds the problem instance as a std::string
 
std::string osol
 osol holds the options for the solver
 
std::string osrl
 osrl holds the solution or result of the model
 
OSInstanceosinstance
 osinstance holds the problem instance in-memory as an OSInstance object
 
OSOptionosoption
 osoption holds the solver options in-memory as an OSOption object
 
OSResultosresult
 osresult holds the solution or result of the model in-memory as an OSResult object
 
std::string sSolverName
 sSolverName is the name of the Coin solver used, e.g.
 
bool bCallbuildSolverInstance
 bCallbuildSolverInstance is set to true if buildSolverService has been called
 
bool bSetSolverOptions
 bSetSolverOptions is set to true if setSolverOptions has been called, false otherwise
 

Private Member Functions

Couenne::expression * createCouenneExpression (OSnLNode *node)
 

Private Attributes

OSrLWriterosrlwriter
 
Couenne::CouenneSetup couenneSetup
 
std::string couenneErrorMsg
 

Detailed Description

The CouenneSolver class solves problems using Ipopt.

Author
Jun Ma, Horand Gassmann, Kipp Martin
Version
1.0, 07/05/2008
Since
OS 1.0
Remarks
this class takes an OSiL instance and optimizes it using the COIN-OR Ipopt solver

Definition at line 67 of file OSCouenneSolver.h.

Constructor & Destructor Documentation

◆ CouenneSolver()

CouenneSolver::CouenneSolver ( )

the CouenneSolver class constructor

Definition at line 96 of file OSCouenneSolver.cpp.

◆ ~CouenneSolver()

CouenneSolver::~CouenneSolver ( )

the IpoptSolver class destructor

Definition at line 109 of file OSCouenneSolver.cpp.

Member Function Documentation

◆ solve()

void CouenneSolver::solve ( )
virtual

solve results in an instance being read into the Couenne data structrues and optimized

Implements DefaultSolver.

Definition at line 521 of file OSCouenneSolver.cpp.

◆ buildSolverInstance()

void CouenneSolver::buildSolverInstance ( )
virtual

buildSolverInstance is a virtual function – the actual solvers will implement their own buildSolverInstance method – the solver instance is the instance the individual solver sees in its API

Implements DefaultSolver.

Definition at line 141 of file OSCouenneSolver.cpp.

◆ setSolverOptions()

void CouenneSolver::setSolverOptions ( )
virtual

The implementation of the virtual functions.

Returns
void.

Implements DefaultSolver.

Definition at line 441 of file OSCouenneSolver.cpp.

◆ dataEchoCheck()

void CouenneSolver::dataEchoCheck ( )

use this for debugging, print out the instance that the solver thinks it has and compare this with the OSiL file

◆ writeResult()

void CouenneSolver::writeResult ( )

use this to write the solution information to an OSResult object

Definition at line 717 of file OSCouenneSolver.cpp.

◆ createCouenneExpression()

expression * CouenneSolver::createCouenneExpression ( OSnLNode * node)
private

Definition at line 316 of file OSCouenneSolver.cpp.

Member Data Documentation

◆ m_osilreader

OSiLReader* CouenneSolver::m_osilreader

m_osilreader is an OSiLReader object used to create an osinstance from an osil string if needed

Definition at line 110 of file OSCouenneSolver.h.

◆ m_osolreader

OSoLReader* CouenneSolver::m_osolreader

m_osolreader is an OSoLReader object used to create an osoption from an osol string if needed

Definition at line 116 of file OSCouenneSolver.h.

◆ couenne

Couenne::CouenneProblem* CouenneSolver::couenne

Definition at line 118 of file OSCouenneSolver.h.

◆ tminlp

Ipopt::SmartPtr<BonminProblem> CouenneSolver::tminlp

Definition at line 120 of file OSCouenneSolver.h.

◆ app_

Ipopt::SmartPtr<Bonmin::TNLPSolver> CouenneSolver::app_

Definition at line 122 of file OSCouenneSolver.h.

◆ bb

Couenne::CouenneBab CouenneSolver::bb

Definition at line 127 of file OSCouenneSolver.h.

◆ status

Bonmin::TMINLP::SolverReturn CouenneSolver::status

Definition at line 129 of file OSCouenneSolver.h.

◆ con_body

Couenne::expression* CouenneSolver::con_body

Definition at line 131 of file OSCouenneSolver.h.

◆ obj_body

Couenne::expression* CouenneSolver::obj_body

Definition at line 132 of file OSCouenneSolver.h.

◆ osrlwriter

OSrLWriter* CouenneSolver::osrlwriter
private

Definition at line 135 of file OSCouenneSolver.h.

◆ couenneSetup

Couenne::CouenneSetup CouenneSolver::couenneSetup
private

Definition at line 137 of file OSCouenneSolver.h.

◆ couenneErrorMsg

std::string CouenneSolver::couenneErrorMsg
private

Definition at line 138 of file OSCouenneSolver.h.


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