NO OLD DOC. More...
#include <BCP_tm.hpp>
Public Member Functions | |
virtual BCP_buffer & | get_message_buffer () |
virtual void | process_message () |
Constructor and destructor | |
BCP_tm_prob () | |
virtual | ~BCP_tm_prob () |
Methods to pack/unpack objects | |
void | pack_var (const BCP_var &var) |
BCP_var * | unpack_var_without_bcpind (BCP_buffer &buf) |
int | unpack_var () |
void | pack_cut (const BCP_cut &cut) |
BCP_cut * | unpack_cut_without_bcpind (BCP_buffer &buf) |
int | unpack_cut () |
Query methods | |
char | param (BCP_tm_par::chr_params key) const |
int | param (BCP_tm_par::int_params key) const |
double | param (BCP_tm_par::dbl_params key) const |
const BCP_string & | param (BCP_tm_par::str_params key) const |
const BCP_vec< BCP_string > & | param (BCP_tm_par::str_array_params key) const |
double | granularity () const |
bool | has_ub () const |
double | ub () const |
bool | ub (double new_ub) |
bool | over_ub (const double lb) const |
![]() | |
BCP_process (int self, int my_parent) | |
virtual | ~BCP_process () |
int | get_process_id () const |
int | get_parent () const |
Public Attributes | |
std::multiset< double > | lower_bounds |
double | upper_bound |
double | start_time |
int | phase |
BCP_column_generation | current_phase_colgen |
std::map< int, Coin::SmartPtr < BCP_var > > | vars_local |
std::map< int, int > | vars_remote |
std::map< int, Coin::SmartPtr < BCP_cut > > | cuts_local |
std::map< int, int > | cuts_remote |
int | next_cut_index_set_start |
int | next_var_index_set_start |
bool | need_a_TS |
std::map< int, int > | ts_space |
BCP_tree | search_tree |
std::map< int, BCP_tm_node * > | active_nodes |
A map from the process ids to the nodes (what they work on) More... | |
CoinSearchTreeManager | candidate_list |
std::map< int, BCP_tm_node_to_send * > | nodes_to_send |
BCP_vec< BCP_tm_node * > | next_phase_nodes |
a vector of nodes to be processed in the next phase More... | |
BCP_vec< BCP_tm_node * > | nodes_to_free |
BCP_tm_stat | stat |
User provided members | |
BCP_tm_user * | user |
A class that holds the methods about how to pack things. More... | |
BCP_user_pack * | packer |
A class that holds the methods about how to pack things. More... | |
BCP_message_environment * | msg_env |
A class that holds the methods about how to pack things. More... | |
Statistics in the other processes | |
BCP_lp_statistics * | lp_stat |
BCP_solution * | feas_sol |
Parameters | |
BCP_parameter_set< BCP_tm_par > | par |
BCP_slave_params | slave_pars |
Flags | |
BCP_tm_flags | flags |
Message passing related fields | |
BCP_buffer | msg_buf |
members to measure how long it took to process the root node. More... | |
std::vector< int > | ts_procs |
members to measure how long it took to process the root node. More... | |
std::vector< int > | lp_procs |
members to measure how long it took to process the root node. More... | |
BCP_scheduler | lp_scheduler |
members to measure how long it took to process the root node. More... | |
double | root_node_sent_ |
members to measure how long it took to process the root node. More... | |
double | root_node_received_ |
members to measure how long it took to process the root node. More... | |
The description of the core of the problem | |
BCP_problem_core * | core |
BCP_problem_core_change * | core_as_change |
Vectors indicating the number of leaf nodes assigned to each CP/VP | |
BCP_vec< std::pair< int, int > > | leaves_per_cp |
BCP_vec< std::pair< int, int > > | leaves_per_vp |
Static Public Attributes | |
static double | lb_multiplier = 1e12 |
The lower bounds of the unexplored search tree nodes. More... | |
Private Member Functions | |
Disabled methods | |
BCP_tm_prob (const BCP_tm_prob &) | |
The copy constructor is declared but not defined to disable it. More... | |
BCP_tm_prob & | operator= (const BCP_tm_prob &) |
The assignment operator is declared but not defined to disable it. More... | |
NO OLD DOC.
Definition at line 136 of file BCP_tm.hpp.
|
private |
The copy constructor is declared but not defined to disable it.
BCP_tm_prob::BCP_tm_prob | ( | ) |
Definition at line 20 of file BCP_tm.cpp.
|
virtual |
Definition at line 34 of file BCP_tm.cpp.
|
private |
The assignment operator is declared but not defined to disable it.
Definition at line 83 of file BCP_tm.cpp.
BCP_var * BCP_tm_prob::unpack_var_without_bcpind | ( | BCP_buffer & | buf | ) |
Definition at line 108 of file BCP_tm.cpp.
int BCP_tm_prob::unpack_var | ( | ) |
Definition at line 137 of file BCP_tm.cpp.
Definition at line 169 of file BCP_tm.cpp.
BCP_cut * BCP_tm_prob::unpack_cut_without_bcpind | ( | BCP_buffer & | buf | ) |
Definition at line 192 of file BCP_tm.cpp.
int BCP_tm_prob::unpack_cut | ( | ) |
Definition at line 217 of file BCP_tm.cpp.
|
inline |
Definition at line 298 of file BCP_tm.hpp.
|
inline |
Definition at line 301 of file BCP_tm.hpp.
|
inline |
Definition at line 304 of file BCP_tm.hpp.
|
inline |
Definition at line 307 of file BCP_tm.hpp.
|
inline |
Definition at line 310 of file BCP_tm.hpp.
|
inline |
Definition at line 313 of file BCP_tm.hpp.
|
inline |
Definition at line 319 of file BCP_tm.hpp.
|
inline |
Definition at line 321 of file BCP_tm.hpp.
|
inline |
Definition at line 323 of file BCP_tm.hpp.
|
inline |
Definition at line 331 of file BCP_tm.hpp.
|
inlinevirtual |
Implements BCP_process.
Definition at line 336 of file BCP_tm.hpp.
|
virtual |
Implements BCP_process.
Definition at line 270 of file BCP_tm_msgproc.cpp.
BCP_tm_user* BCP_tm_prob::user |
A class that holds the methods about how to pack things.
Definition at line 151 of file BCP_tm.hpp.
BCP_user_pack* BCP_tm_prob::packer |
A class that holds the methods about how to pack things.
Definition at line 153 of file BCP_tm.hpp.
BCP_message_environment* BCP_tm_prob::msg_env |
A class that holds the methods about how to pack things.
Definition at line 156 of file BCP_tm.hpp.
BCP_lp_statistics* BCP_tm_prob::lp_stat |
Definition at line 160 of file BCP_tm.hpp.
BCP_solution* BCP_tm_prob::feas_sol |
Definition at line 163 of file BCP_tm.hpp.
BCP_parameter_set<BCP_tm_par> BCP_tm_prob::par |
Definition at line 168 of file BCP_tm.hpp.
BCP_slave_params BCP_tm_prob::slave_pars |
Definition at line 170 of file BCP_tm.hpp.
BCP_tm_flags BCP_tm_prob::flags |
Definition at line 177 of file BCP_tm.hpp.
BCP_buffer BCP_tm_prob::msg_buf |
members to measure how long it took to process the root node.
Needed for the scheduler (both are in wallclock)
Definition at line 183 of file BCP_tm.hpp.
std::vector<int> BCP_tm_prob::ts_procs |
members to measure how long it took to process the root node.
Needed for the scheduler (both are in wallclock)
Definition at line 185 of file BCP_tm.hpp.
std::vector<int> BCP_tm_prob::lp_procs |
members to measure how long it took to process the root node.
Needed for the scheduler (both are in wallclock)
Definition at line 186 of file BCP_tm.hpp.
BCP_scheduler BCP_tm_prob::lp_scheduler |
members to measure how long it took to process the root node.
Needed for the scheduler (both are in wallclock)
Definition at line 188 of file BCP_tm.hpp.
double BCP_tm_prob::root_node_sent_ |
members to measure how long it took to process the root node.
Needed for the scheduler (both are in wallclock)
Definition at line 191 of file BCP_tm.hpp.
double BCP_tm_prob::root_node_received_ |
members to measure how long it took to process the root node.
Needed for the scheduler (both are in wallclock)
Definition at line 192 of file BCP_tm.hpp.
|
static |
The lower bounds of the unexplored search tree nodes.
To avoid rounding errors the lower bounds are stored as floor(lb*lb_multiplier)
Definition at line 198 of file BCP_tm.hpp.
std::multiset<double> BCP_tm_prob::lower_bounds |
Definition at line 199 of file BCP_tm.hpp.
double BCP_tm_prob::upper_bound |
Definition at line 201 of file BCP_tm.hpp.
double BCP_tm_prob::start_time |
Definition at line 203 of file BCP_tm.hpp.
BCP_problem_core* BCP_tm_prob::core |
Definition at line 208 of file BCP_tm.hpp.
BCP_problem_core_change* BCP_tm_prob::core_as_change |
Definition at line 210 of file BCP_tm.hpp.
int BCP_tm_prob::phase |
Definition at line 214 of file BCP_tm.hpp.
BCP_column_generation BCP_tm_prob::current_phase_colgen |
Definition at line 216 of file BCP_tm.hpp.
Definition at line 220 of file BCP_tm.hpp.
Definition at line 222 of file BCP_tm.hpp.
Definition at line 224 of file BCP_tm.hpp.
Definition at line 226 of file BCP_tm.hpp.
int BCP_tm_prob::next_cut_index_set_start |
Definition at line 229 of file BCP_tm.hpp.
int BCP_tm_prob::next_var_index_set_start |
Definition at line 231 of file BCP_tm.hpp.
bool BCP_tm_prob::need_a_TS |
Definition at line 234 of file BCP_tm.hpp.
Definition at line 235 of file BCP_tm.hpp.
BCP_tree BCP_tm_prob::search_tree |
Definition at line 239 of file BCP_tm.hpp.
std::map<int, BCP_tm_node*> BCP_tm_prob::active_nodes |
A map from the process ids to the nodes (what they work on)
Definition at line 241 of file BCP_tm.hpp.
CoinSearchTreeManager BCP_tm_prob::candidate_list |
Definition at line 243 of file BCP_tm.hpp.
std::map<int, BCP_tm_node_to_send*> BCP_tm_prob::nodes_to_send |
Definition at line 246 of file BCP_tm.hpp.
BCP_vec<BCP_tm_node*> BCP_tm_prob::next_phase_nodes |
a vector of nodes to be processed in the next phase
Definition at line 250 of file BCP_tm.hpp.
BCP_vec<BCP_tm_node*> BCP_tm_prob::nodes_to_free |
Definition at line 252 of file BCP_tm.hpp.
Definition at line 259 of file BCP_tm.hpp.
Definition at line 261 of file BCP_tm.hpp.
BCP_tm_stat BCP_tm_prob::stat |
Definition at line 265 of file BCP_tm.hpp.