Definition at line 138 of file BranchAndBoundCallback.h.
Protected Methods | |
| virtual void | initialize () |
| virtual void | operator() (CallbackEvent t_event)=0 |
| virtual void | log_after_termination () |
| void | add_user_cut (const TempCtr &t_cut) |
| void | add_lazy_cut (const TempCtr &t_cut) |
| void | add_local_variable_branching (const Var &t_var, CtrType t_type, double t_rhs) |
| const Node< NodeInfoT > & | node () const |
| const Model & | relaxation () const |
| const Model & | original_model () const |
| void | submit_heuristic_solution (NodeInfoT *t_info) |
| void | submit_bound (double t_bound) |
| const SideEffectRegistry & | side_effect_registry () const |
| const Timer & | time () const |
| double | best_bound () const |
| double | best_obj () const |
| unsigned int | node_count () const |
| void | terminate () |
Friends | |
| class | BranchAndBoundCallbackI< NodeInfoT > |
|
protected |
Adds a lazy cut to the relaxation
| t_cut | the cut to be added |
Definition at line 301 of file BranchAndBoundCallback.h.
|
protected |
Definition at line 229 of file BranchAndBoundCallback.h.
|
protected |
Adds a user cut to the relaxation
| t_cut | the cut to be added |
Definition at line 307 of file BranchAndBoundCallback.h.
Referenced by idol::CglCutCallback< NodeInfoT >::Strategy::operator()().
|
nodiscardprotected |
Definition at line 247 of file BranchAndBoundCallback.h.
|
nodiscardprotected |
Definition at line 235 of file BranchAndBoundCallback.h.
|
inlineprotectedvirtual |
This method is called at the very beginning of the Branch-and-Bound algorithm
Reimplemented in idol::CglCutCallback< NodeInfoT >::Strategy, and idol::Cuts::KnapsackCover< NodeInfoT >::Strategy.
Definition at line 146 of file BranchAndBoundCallback.h.
Referenced by idol::CglCutCallback< NodeInfoT >::Strategy::initialize(), and idol::Cuts::KnapsackCover< NodeInfoT >::Strategy::initialize().
|
inlineprotectedvirtual |
Definition at line 154 of file BranchAndBoundCallback.h.
|
nodiscardprotected |
Returns the node which is currently explored
Definition at line 295 of file BranchAndBoundCallback.h.
Referenced by idol::CglCutCallback< NodeInfoT >::Strategy::operator()(), idol::Cuts::KnapsackCover< NodeInfoT >::Strategy::operator()(), idol::Heuristics::IntegerMaster< NodeInfoT >::Strategy::operator()(), idol::Heuristics::LocalMIP< NodeInfoT >::Strategy::operator()(), idol::ReducedCostFixing< NodeInfoT >::Strategy::operator()(), and idol::Utils::ExportBranchAndBoundTreeToCSV< NodeInfoT >::Strategy::operator()().
|
nodiscardprotected |
Definition at line 241 of file BranchAndBoundCallback.h.
|
protectedpure virtual |
This method is left for the user to write and consists in the main execution block of the callback.
| t_event | The event triggering the callback |
Implemented in idol::CallbackAsBranchAndBoundCallback< NodeInfoT >::Strategy, idol::CglCutCallback< NodeInfoT >::Strategy, idol::Cuts::KnapsackCover< NodeInfoT >::Strategy, idol::Heuristics::IntegerMaster< NodeInfoT >::Strategy, idol::Heuristics::LocalMIP< NodeInfoT >::Strategy, idol::ReducedCostFixing< NodeInfoT >::Strategy, and idol::Utils::ExportBranchAndBoundTreeToCSV< NodeInfoT >::Strategy.
|
nodiscardprotected |
Returns the original model from which the branch-and-bound algorithm started (i.e., the original non-relaxed model)
Definition at line 283 of file BranchAndBoundCallback.h.
Referenced by idol::Cuts::KnapsackCover< NodeInfoT >::Strategy::initialize(), idol::Heuristics::IntegerMaster< NodeInfoT >::Strategy::operator()(), idol::Heuristics::LocalMIP< NodeInfoT >::Strategy::operator()(), and idol::ReducedCostFixing< NodeInfoT >::Strategy::operator()().
|
nodiscardprotected |
Returns the current node's model being solved
Definition at line 289 of file BranchAndBoundCallback.h.
Referenced by idol::Heuristics::IntegerMaster< NodeInfoT >::Strategy::operator()(), idol::Heuristics::LocalMIP< NodeInfoT >::Strategy::operator()(), and idol::ReducedCostFixing< NodeInfoT >::Strategy::operator()().
|
nodiscardprotected |
Returns the side effect registry
Definition at line 259 of file BranchAndBoundCallback.h.
Referenced by idol::CglCutCallback< NodeInfoT >::Strategy::operator()(), and idol::Utils::ExportBranchAndBoundTreeToCSV< NodeInfoT >::Strategy::operator()().
|
protected |
Submits a new proven bound.
The given bound is set as best bound if and only if it improves the current best bound.
| t_bound | a proven bound |
Definition at line 271 of file BranchAndBoundCallback.h.
|
protected |
Submits a new solution to the branch-and-bound tree algorithm.
The solution is checked for validity according to the branch-and-bound tree branching rule and is set as incumbent if and only if it is valid and improves the current best objective.
| t_info | a node information storing the solution |
Definition at line 277 of file BranchAndBoundCallback.h.
Referenced by idol::Heuristics::IntegerMaster< NodeInfoT >::Strategy::operator()(), and idol::Heuristics::LocalMIP< NodeInfoT >::Strategy::operator()().
|
protected |
Definition at line 253 of file BranchAndBoundCallback.h.
|
nodiscardprotected |
Definition at line 265 of file BranchAndBoundCallback.h.
|
friend |
Definition at line 223 of file BranchAndBoundCallback.h.