LinearRelaxSolverMIP Class Reference

#include <linrelax.h>

Inheritance diagram for LinearRelaxSolverMIP:

Inheritance graph
[legend]
Collaboration diagram for LinearRelaxSolverMIP:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 LinearRelaxSolverMIP (LinearRelax &linrelax_)
void init ()
 Initializes the model for the core linear relaxation.
void reset ()
 Resets the solver, so we use only the core linear relaxation.
void construct (Pointer< MinlpNode > node=NULL)
 Builds the linear relaxation for a specific node or uses global cuts only.
void add_cut (const CutPool::CutInfo &cutinfo)
 Updates the linear relaxation for a specific node.
void set_objective (Pointer< SepQcFunc > obj)
void update_levelcut (double newlevel)
bool feasible ()
 Checks the linear relaxation only for feasiblity instead of solving it.
int solve (Pointer< MinlpNode > node=NULL)
void remove_cuts ()
 According to the information, set in the remove-member of the cutinfos, remove cuts.
int generate_cuts (list< Pointer< SimpleCut > > &cuts)

Private Member Functions

void add_intervalgradientcut (CutPool::CutInfo &cutinfo)

Private Attributes

MipProblem mip
 The core linear relaxation as MIP.
Pointer< MIPSolversolver
int levelcut_pos
int intervalgradcutvars_start
 Starting index of interval gradient cut variables.

Detailed Description

Definition at line 374 of file linrelax.h.


Constructor & Destructor Documentation

LinearRelaxSolverMIP::LinearRelaxSolverMIP ( LinearRelax linrelax_  ) 


Member Function Documentation

void LinearRelaxSolverMIP::add_intervalgradientcut ( CutPool::CutInfo cutinfo  )  [private]

void LinearRelaxSolverMIP::init (  )  [virtual]

Initializes the model for the core linear relaxation.

Implements LinearRelaxSolver.

void LinearRelaxSolverMIP::reset (  )  [virtual]

Resets the solver, so we use only the core linear relaxation.

Implements LinearRelaxSolver.

void LinearRelaxSolverMIP::construct ( Pointer< MinlpNode node = NULL  )  [virtual]

Builds the linear relaxation for a specific node or uses global cuts only.

Implements LinearRelaxSolver.

void LinearRelaxSolverMIP::add_cut ( const CutPool::CutInfo cutinfo  )  [virtual]

Updates the linear relaxation for a specific node.

Implements LinearRelaxSolver.

void LinearRelaxSolverMIP::set_objective ( Pointer< SepQcFunc obj  )  [virtual]

Implements LinearRelaxSolver.

void LinearRelaxSolverMIP::update_levelcut ( double  newlevel  )  [virtual]

Implements LinearRelaxSolver.

bool LinearRelaxSolverMIP::feasible (  )  [virtual]

Checks the linear relaxation only for feasiblity instead of solving it.

Implements LinearRelaxSolver.

int LinearRelaxSolverMIP::solve ( Pointer< MinlpNode node = NULL  )  [virtual]

Implements LinearRelaxSolver.

void LinearRelaxSolverMIP::remove_cuts (  )  [virtual]

According to the information, set in the remove-member of the cutinfos, remove cuts.

Implements LinearRelaxSolver.

int LinearRelaxSolverMIP::generate_cuts ( list< Pointer< SimpleCut > > &  cuts  )  [virtual]

Implements LinearRelaxSolver.


Member Data Documentation

MipProblem LinearRelaxSolverMIP::mip [private]

The core linear relaxation as MIP.

Definition at line 378 of file linrelax.h.

Pointer<MIPSolver> LinearRelaxSolverMIP::solver [private]

Definition at line 380 of file linrelax.h.

int LinearRelaxSolverMIP::levelcut_pos [private]

Definition at line 382 of file linrelax.h.

int LinearRelaxSolverMIP::intervalgradcutvars_start [private]

Starting index of interval gradient cut variables.

Definition at line 386 of file linrelax.h.


The documentation for this class was generated from the following file:
Generated on Wed Oct 22 03:12:58 2008 for LaGO by  doxygen 1.4.7