idol
A C++ Framework for Optimization
Loading...
Searching...
No Matches
idol::LazyCutCallback::Strategy Class Referenceabstract
Inheritance diagram for idol::LazyCutCallback::Strategy:
Inheritance graph
Collaboration diagram for idol::LazyCutCallback::Strategy:
Collaboration graph

Public Member Functions

 Strategy (Model *t_separation_problem, GenerationPattern< Ctr > t_cut, CtrType t_type)
 

Protected Member Functions

void hook_add_cut (const TempCtr &t_cut) override
 
std::string name () const override
 
virtual const Modeloriginal_model () const
 
virtual void submit_heuristic_solution (const PrimalPoint &t_solution)
 
virtual void add_user_cut (const TempCtr &t_cut)
 
virtual void add_lazy_cut (const TempCtr &t_cut)
 
virtual PrimalPoint primal_solution () const
 
const Timertime () const
 
double best_obj () const
 
double best_bound () const
 
void terminate ()
 
virtual void operator() (CallbackEvent t_event)=0
 

Detailed Description

Definition at line 29 of file LazyCutCallback.h.

Constructor & Destructor Documentation

◆ Strategy()

idol::LazyCutCallback::Strategy::Strategy ( Model t_separation_problem,
GenerationPattern< Ctr t_cut,
CtrType  t_type 
)
inlineexplicit

Definition at line 40 of file LazyCutCallback.h.

Member Function Documentation

◆ add_lazy_cut()

virtual void idol::Callback::add_lazy_cut ( const TempCtr t_cut)
protectedvirtualinherited

Adds a lazy cut to the relaxation

Parameters
t_cutthe cut to be added

◆ add_user_cut()

virtual void idol::Callback::add_user_cut ( const TempCtr t_cut)
protectedvirtualinherited

Adds a user cut to the relaxation

Parameters
t_cutthe cut to be added

◆ best_bound()

double idol::Callback::best_bound ( ) const
protectedinherited

Returns the best bound found so far

Returns
the best bound

◆ best_obj()

double idol::Callback::best_obj ( ) const
protectedinherited

Returns the best objective value found so far

Returns
the best objective value

◆ hook_add_cut()

void idol::LazyCutCallback::Strategy::hook_add_cut ( const TempCtr t_cut)
inlineoverrideprotected

Definition at line 31 of file LazyCutCallback.h.

◆ name()

std::string idol::LazyCutCallback::Strategy::name ( ) const
inlineoverrideprotected

Definition at line 35 of file LazyCutCallback.h.

◆ operator()()

virtual void idol::Callback::operator() ( CallbackEvent  t_event)
protectedpure virtualinherited

This method is left for the user to write and consists in the main execution block of the callback.

Parameters
t_eventthe event which triggered the call

Implemented in idol::Heuristics::LocalBranching::Strategy, idol::Heuristics::RENS::Strategy, idol::Heuristics::SimpleRounding::Strategy, idol::Plots::OptimalityGap::Strategy, and idol::Optimizers::Robust::Benders::BendersCallback::Strategy.

◆ original_model()

virtual const Model & idol::Callback::original_model ( ) const
protectedvirtualinherited

Accesses the original model given to the solver

◆ primal_solution()

virtual PrimalPoint idol::Callback::primal_solution ( ) const
protectedvirtualinherited

Returns the solution of the node which is currently being explored (when available)

Returns
the solution of the current node

◆ submit_heuristic_solution()

virtual void idol::Callback::submit_heuristic_solution ( const PrimalPoint t_solution)
protectedvirtualinherited

Submits a new heuristic solution

◆ terminate()

void idol::Callback::terminate ( )
protectedinherited

Asks the optimizer to terminate the optimization process as soon as possible

◆ time()

const Timer & idol::Callback::time ( ) const
protectedinherited

Returns the current time

Returns
the optimizer's time