Go to the documentation of this file.
53 #define BCP_ONLY_LP_PROCESS_HANDLING_WORKS
93 double* sumQueueLength;
102 sumQueueLength(NULL),
103 numQueueLength(NULL),
107 delete[] sumQueueLength;
108 delete[] numQueueLength;
112 delete[] sumQueueLength;
113 delete[] numQueueLength;
115 wait_time =
new double[num+1];
116 sumQueueLength =
new double[num+1];
117 numQueueLength =
new int[num+1];
118 for (
int i = 0; i <= num_lp; ++i) {
120 sumQueueLength[i] = 0;
121 numQueueLength[i] = 0;
126 sumQueueLength[i] += len;
323 inline bool ub(
double new_ub) {
std::map< int, int > ts_space
char entry(const chr_params key) const
BCP_parameter_set< BCP_cg_par > cg
double granularity() const
std::vector< int > lp_procs
BCP_message_environment * msg_env
@ Granularity
??? Values: Default:
double root_node_received_
int next_cut_index_set_start
std::map< int, BCP_tm_node_to_send * > nodes_to_send
BCP_scheduler lp_scheduler
BCP_cut * unpack_cut_without_bcpind(BCP_buffer &buf)
chr_params
Character parameters.
int next_var_index_set_start
BCP_vec< BCP_tm_node * > nodes_to_free
double root_node_sent_
members to measure how long it took to process the root node.
BCP_parameter_set< BCP_ts_par > ts
BCP_slave_params slave_pars
void print(bool final, double t)
BCP_lp_statistics * lp_stat
const BCP_vec< BCP_string > & param(BCP_tm_par::str_array_params key) const
void update_queue_length(int i, int len)
BCP_var * unpack_var_without_bcpind(BCP_buffer &buf)
BCP_user_pack * packer
A class that holds the methods about how to pack things.
std::map< int, BCP_tm_node * > active_nodes
A map from the process ids to the nodes (what they work on)
This class describes the core of the MIP problem, the variables/cuts in it as well as the matrix corr...
BCP_vec< std::pair< int, int > > leaves_per_cp
This class is a very simple impelementation of a constant length string.
void pack_var(const BCP_var &var)
BCP_column_generation
This enumerative constant describes what to do when a search tree node becomes fathomable for the cur...
std::multiset< double > lower_bounds
static double lb_multiplier
The lower bounds of the unexplored search tree nodes.
BCP_column_generation current_phase_colgen
BCP_problem_core_change * core_as_change
void pack_cut(const BCP_cut &cut)
virtual BCP_buffer & get_message_buffer()
std::map< int, int > vars_remote
char param(BCP_tm_par::chr_params key) const
int_params
Integer parameters.
bool root_pricing_unpacked
Set to true if the result of root pricing is already unpacked.
Abstract base class that defines members common to all types of cuts.
std::map< int, int > cuts_remote
This is the abstract base class for a solution to a Mixed Integer Programming problem.
void update_wait_time(int i, double t)
const BCP_string & param(BCP_tm_par::str_params key) const
CoinSearchTreeManager candidate_list
BCP_parameter_set< BCP_lp_par > lp
This is an abstract base class that describes the message passing environment.
BCP_parameter_set< BCP_tm_par > par
bool over_ub(const double lb) const
std::map< int, Coin::SmartPtr< BCP_cut > > cuts_local
virtual void process_message()
dbl_params
Double parameters.
Abstract base class that defines members common to all types of variables.
str_params
String parameters.
std::map< int, Coin::SmartPtr< BCP_var > > vars_local
int param(BCP_tm_par::int_params key) const
BCP_vec< BCP_tm_node * > next_phase_nodes
a vector of nodes to be processed in the next phase
BCP_vec< std::pair< int, int > > leaves_per_vp
BCP_parameter_set< BCP_vg_par > vg
Warmstarting information for the LP solver.
This class describes changes in the core of the problem.
This class describes the message buffer used for all processes of BCP.
std::vector< int > ts_procs
double param(BCP_tm_par::dbl_params key) const
The BCP_tm_user class is the base class from which the user can derive a problem specific class to be...
This class stores data about how an object set (set of vars or set of cuts) changes.