coin-Bcp
Public Member Functions | Public Attributes | Static Public Attributes | List of all members
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]

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 Member Functions inherited from BCP_process
 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_useruser
 A class that holds the methods about how to pack things. More...
 
BCP_user_packpacker
 A class that holds the methods about how to pack things. More...
 
BCP_message_environmentmsg_env
 A class that holds the methods about how to pack things. More...
 
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. 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_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. 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_proboperator= (const BCP_tm_prob &)
 The assignment operator is declared but not defined to disable it. More...
 

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 ( )
inlinevirtual

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

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.

Referenced by param().

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.

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.

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.

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.

double BCP_tm_prob::upper_bound

Definition at line 201 of file BCP_tm.hpp.

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

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.

std::map<int, Coin::SmartPtr<BCP_var> > BCP_tm_prob::vars_local

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.

std::map<int, Coin::SmartPtr<BCP_cut> > BCP_tm_prob::cuts_local

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.

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.

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

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.

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.

BCP_tm_stat BCP_tm_prob::stat

Definition at line 265 of file BCP_tm.hpp.


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