#include <linrelax.h>
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< MIPSolver > | solver |
int | levelcut_pos |
int | intervalgradcutvars_start |
Starting index of interval gradient cut variables. |
Definition at line 374 of file linrelax.h.
LinearRelaxSolverMIP::LinearRelaxSolverMIP | ( | LinearRelax & | linrelax_ | ) |
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.
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.
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.
Implements LinearRelaxSolver.
void LinearRelaxSolverMIP::remove_cuts | ( | ) | [virtual] |
According to the information, set in the remove-member of the cutinfos, remove cuts.
Implements LinearRelaxSolver.
Implements LinearRelaxSolver.
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.