BCP_tm_prob Class Reference

NO OLD DOC. More...

#include <BCP_tm.hpp>

Inheritance diagram for BCP_tm_prob:
Inheritance graph
[legend]
Collaboration diagram for BCP_tm_prob:
Collaboration graph
[legend]

List of all members.

Public Member Functions

virtual BCP_bufferget_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_varunpack_var_without_bcpind (BCP_buffer &buf)
int unpack_var ()
void pack_cut (const BCP_cut &cut)
BCP_cutunpack_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_stringparam (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

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).
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
BCP_vec< BCP_tm_node * > nodes_to_free
BCP_tm_stat stat
User provided members



BCP_tm_useruser
 A class that holds the methods about how to pack things.
BCP_user_packpacker
 A class that holds the methods about how to pack things.
BCP_message_environmentmsg_env
 A class that holds the methods about how to pack things.
Statistics in the other processes



BCP_lp_statisticslp_stat
BCP_solutionfeas_sol
Parameters



BCP_parameter_set< BCP_tm_parpar
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.
std::vector< int > ts_procs
 members to measure how long it took to process the root node.
std::vector< int > lp_procs
 members to measure how long it took to process the root node.
BCP_scheduler lp_scheduler
 members to measure how long it took to process the root node.
double root_node_sent_
 members to measure how long it took to process the root node.
double root_node_received_
 members to measure how long it took to process the root node.
The description of the core of the problem



BCP_problem_corecore
BCP_problem_core_changecore_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
 The lower bounds of the unexplored search tree nodes.

Private Member Functions

Disabled methods



 BCP_tm_prob (const BCP_tm_prob &)
 The copy constructor is declared but not defined to disable it.
BCP_tm_proboperator= (const BCP_tm_prob &)
 The assignment operator is declared but not defined to disable it.

Detailed Description

NO OLD DOC.

Definition at line 136 of file BCP_tm.hpp.


Constructor & Destructor Documentation

BCP_tm_prob::BCP_tm_prob ( const BCP_tm_prob  )  [private]

The copy constructor is declared but not defined to disable it.

BCP_tm_prob::BCP_tm_prob (  ) 
virtual BCP_tm_prob::~BCP_tm_prob (  )  [virtual]

Member Function Documentation

BCP_tm_prob& BCP_tm_prob::operator= ( const BCP_tm_prob  )  [private]

The assignment operator is declared but not defined to disable it.

void BCP_tm_prob::pack_var ( const BCP_var var  ) 
BCP_var* BCP_tm_prob::unpack_var_without_bcpind ( BCP_buffer buf  ) 
int BCP_tm_prob::unpack_var (  ) 
void BCP_tm_prob::pack_cut ( const BCP_cut cut  ) 
BCP_cut* BCP_tm_prob::unpack_cut_without_bcpind ( BCP_buffer buf  ) 
int BCP_tm_prob::unpack_cut (  ) 
char BCP_tm_prob::param ( BCP_tm_par::chr_params  key  )  const [inline]

Definition at line 298 of file BCP_tm.hpp.

References BCP_parameter_set< Par >::entry(), and par.

Referenced by granularity(), and over_ub().

int BCP_tm_prob::param ( BCP_tm_par::int_params  key  )  const [inline]

Definition at line 301 of file BCP_tm.hpp.

References BCP_parameter_set< Par >::entry(), and par.

double BCP_tm_prob::param ( BCP_tm_par::dbl_params  key  )  const [inline]

Definition at line 304 of file BCP_tm.hpp.

References BCP_parameter_set< Par >::entry(), and par.

const BCP_string& BCP_tm_prob::param ( BCP_tm_par::str_params  key  )  const [inline]

Definition at line 307 of file BCP_tm.hpp.

References BCP_parameter_set< Par >::entry(), and par.

const BCP_vec<BCP_string>& BCP_tm_prob::param ( BCP_tm_par::str_array_params  key  )  const [inline]

Definition at line 310 of file BCP_tm.hpp.

References BCP_parameter_set< Par >::entry(), and par.

double BCP_tm_prob::granularity (  )  const [inline]

Definition at line 313 of file BCP_tm.hpp.

References BCP_tm_par::Granularity, and param().

bool BCP_tm_prob::has_ub (  )  const [inline]

Definition at line 319 of file BCP_tm.hpp.

References BCP_DBL_MAX, and upper_bound.

double BCP_tm_prob::ub (  )  const [inline]

Definition at line 321 of file BCP_tm.hpp.

References upper_bound.

bool BCP_tm_prob::ub ( double  new_ub  )  [inline]

Definition at line 323 of file BCP_tm.hpp.

References upper_bound.

bool BCP_tm_prob::over_ub ( const double  lb  )  const [inline]

Definition at line 331 of file BCP_tm.hpp.

References BCP_tm_par::Granularity, param(), and upper_bound.

virtual BCP_buffer& BCP_tm_prob::get_message_buffer (  )  [inline, virtual]

Implements BCP_process.

Definition at line 336 of file BCP_tm.hpp.

References msg_buf.

virtual void BCP_tm_prob::process_message (  )  [virtual]

Implements BCP_process.


Member Data Documentation

A class that holds the methods about how to pack things.

Definition at line 151 of file BCP_tm.hpp.

A class that holds the methods about how to pack things.

Definition at line 153 of file BCP_tm.hpp.

A class that holds the methods about how to pack things.

Definition at line 156 of file BCP_tm.hpp.

Definition at line 160 of file BCP_tm.hpp.

Definition at line 163 of file BCP_tm.hpp.

Definition at line 168 of file BCP_tm.hpp.

Referenced by param().

Definition at line 170 of file BCP_tm.hpp.

Definition at line 177 of file BCP_tm.hpp.

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.

Referenced by get_message_buffer().

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.

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.

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.

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.

double BCP_tm_prob::lb_multiplier [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.

Definition at line 201 of file BCP_tm.hpp.

Referenced by has_ub(), over_ub(), and ub().

Definition at line 203 of file BCP_tm.hpp.

Definition at line 208 of file BCP_tm.hpp.

Definition at line 210 of file BCP_tm.hpp.

Definition at line 214 of file BCP_tm.hpp.

Definition at line 216 of file BCP_tm.hpp.

Definition at line 220 of file BCP_tm.hpp.

std::map<int, int> BCP_tm_prob::vars_remote

Definition at line 222 of file BCP_tm.hpp.

Definition at line 224 of file BCP_tm.hpp.

std::map<int, int> BCP_tm_prob::cuts_remote

Definition at line 226 of file BCP_tm.hpp.

Definition at line 229 of file BCP_tm.hpp.

Definition at line 231 of file BCP_tm.hpp.

Definition at line 234 of file BCP_tm.hpp.

std::map<int, int> BCP_tm_prob::ts_space

Definition at line 235 of file BCP_tm.hpp.

Definition at line 239 of file BCP_tm.hpp.

A map from the process ids to the nodes (what they work on).

Definition at line 241 of file BCP_tm.hpp.

Definition at line 243 of file BCP_tm.hpp.

Definition at line 246 of file BCP_tm.hpp.

a vector of nodes to be processed in the next phase

Definition at line 250 of file BCP_tm.hpp.

Definition at line 252 of file BCP_tm.hpp.

BCP_vec< std::pair<int, int> > BCP_tm_prob::leaves_per_cp

Definition at line 259 of file BCP_tm.hpp.

BCP_vec< std::pair<int, int> > BCP_tm_prob::leaves_per_vp

Definition at line 261 of file BCP_tm.hpp.

Definition at line 265 of file BCP_tm.hpp.


The documentation for this class was generated from the following file:

Generated on 16 Nov 2013 for coin-Bcp by  doxygen 1.6.1