coin-Bcp
Public Member Functions | Public Attributes | List of all members
MKC_tm Class Reference

#include <MKC_tm.hpp>

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

Public Member Functions

 MKC_tm ()
 
 ~MKC_tm ()
 
virtual void pack_module_data (BCP_buffer &buf, BCP_process_t ptype)
 Pack the initial information (info that the user wants to send over) for the process specified by the last argument. More...
 
virtual BCP_solutionunpack_feasible_solution (BCP_buffer &buf)
 Unpack a MIP feasible solution that was packed by the BCP_lp_user::pack_feasible_solution() method. More...
 
virtual void pack_var_algo (const BCP_var_algo *var, BCP_buffer &buf)
 
virtual BCP_var_algounpack_var_algo (BCP_buffer &buf)
 
virtual void initialize_core (BCP_vec< BCP_var_core * > &vars, BCP_vec< BCP_cut_core * > &cuts, BCP_lp_relax *&matrix)
 Create the core of the problem by filling out the last three arguments. More...
 
virtual void create_root (BCP_vec< BCP_var * > &added_vars, BCP_vec< BCP_cut * > &added_cuts, BCP_user_data *&user_data, BCP_pricing_status &pricing_status)
 
virtual void display_feasible_solution (const BCP_solution *soln)
 Display a feasible solution. More...
 
virtual void init_new_phase (int phase, BCP_column_generation &colgen)
 
- Public Member Functions inherited from BCP_tm_user
int process_id () const
 What is the process id of the current process. More...
 
void send_message (const int target, const BCP_buffer &buf)
 Send a message to a particular process. More...
 
void broadcast_message (const BCP_process_t proc_type, const BCP_buffer &buf)
 Broadcast the message to all processes of the given type. More...
 
virtual void process_message (BCP_buffer &buf)
 Process a message that has been sent by another process' user part to this process' user part. More...
 
virtual void display_node_information (BCP_tree &search_tree, const BCP_tm_node &node)
 Display user information just before a new node is sent to the LP or diving into a node is acknowledged. More...
 
virtual void display_node_information (BCP_tree &search_tree, const BCP_tm_node &node, bool after_processing_node)
 Display user information. More...
 
virtual void display_final_information (const BCP_lp_statistics &lp_stat)
 Display information after BCP finished processing the search tree. More...
 
void setTmProblemPointer (BCP_tm_prob *ptr)
 Set the pointer. More...
 
BCP_tm_probgetTmProblemPointer () const
 Get the pointer. More...
 
double upper_bound () const
 Return what is the best known upper bound (might be BCP_DBL_MAX) More...
 
double lower_bound () const
 Return a global lower bound. More...
 
char get_param (const BCP_tm_par::chr_params key) const
 
int get_param (const BCP_tm_par::int_params key) const
 
double get_param (const BCP_tm_par::dbl_params key) const
 
const BCP_stringget_param (const BCP_tm_par::str_params key) const
 
void set_param (const BCP_tm_par::chr_params key, const bool val)
 
void set_param (const BCP_tm_par::chr_params key, const char val)
 
void set_param (const BCP_tm_par::int_params key, const int val)
 
void set_param (const BCP_tm_par::dbl_params key, const double val)
 
void set_param (const BCP_tm_par::str_params key, const char *val)
 
 BCP_tm_user ()
 Being virtual, the destructor invokes the destructor for the real type of the object being deleted. More...
 
virtual ~BCP_tm_user ()
 Being virtual, the destructor invokes the destructor for the real type of the object being deleted. More...
 
virtual bool replace_solution (const BCP_solution *old_sol, const BCP_solution *new_sol)
 Decide whether to replace old_sol with new_sol. More...
 
virtual void create_root (BCP_vec< BCP_var * > &added_vars, BCP_vec< BCP_cut * > &added_cuts, BCP_user_data *&user_data)
 Create the set of extra variables and cuts that should be added to the formulation in the root node. More...
 
virtual void init_new_phase (int phase, BCP_column_generation &colgen, CoinSearchTreeBase *&candidates)
 Do whatever initialization is necessary before the phase-th phase. More...
 
virtual void change_candidate_heap (CoinSearchTreeManager &candidates, const bool new_solution)
 
- Public Member Functions inherited from BCP_user_class
virtual ~BCP_user_class ()
 

Public Attributes

BCP_parameter_set< MKC_tm_partm_par
 
BCP_parameter_set< MKC_lp_parlp_par
 
MKC_knapsack_set kss
 
BCP_vec< MKC_var * > input_vars
 
OsiClpSolverInterfaceclp
 

Detailed Description

Definition at line 21 of file MKC_tm.hpp.

Constructor & Destructor Documentation

MKC_tm::MKC_tm ( )
inline

Definition at line 29 of file MKC_tm.hpp.

MKC_tm::~MKC_tm ( )
inline

Definition at line 30 of file MKC_tm.hpp.

References clp, input_vars, and purge_ptr_vector().

Member Function Documentation

virtual void MKC_tm::pack_module_data ( BCP_buffer buf,
BCP_process_t  ptype 
)
virtual

Pack the initial information (info that the user wants to send over) for the process specified by the last argument.

The information packed here will be unpacked in the unpack_module_data() method of the user defined class in the appropriate process.
Default: empty method.

Reimplemented from BCP_tm_user.

virtual BCP_solution* MKC_tm::unpack_feasible_solution ( BCP_buffer buf)
virtual

Unpack a MIP feasible solution that was packed by the BCP_lp_user::pack_feasible_solution() method.

Default: Unpacks a BCP_solution_generic object. The built-in default should be used if and only if the built-in default was used in BCP_lp_user::pack_feasible_solution().

Reimplemented from BCP_tm_user.

virtual void MKC_tm::pack_var_algo ( const BCP_var_algo var,
BCP_buffer buf 
)
virtual
virtual BCP_var_algo* MKC_tm::unpack_var_algo ( BCP_buffer buf)
virtual
virtual void MKC_tm::initialize_core ( BCP_vec< BCP_var_core * > &  vars,
BCP_vec< BCP_cut_core * > &  cuts,
BCP_lp_relax *&  matrix 
)
virtual

Create the core of the problem by filling out the last three arguments.

These variables/cuts will always stay in the LP relaxation and the corresponding matrix is described by the specified matrix. If there is no core variable or cut then the returned pointer for to the matrix should be a null pointer.

Default: empty method, meaning that there are no variables/cuts in the core and this the core matrix is empty (0 pointer) as well.

Reimplemented from BCP_tm_user.

virtual void MKC_tm::create_root ( BCP_vec< BCP_var * > &  added_vars,
BCP_vec< BCP_cut * > &  added_cuts,
BCP_user_data *&  user_data,
BCP_pricing_status &  pricing_status 
)
virtual
virtual void MKC_tm::display_feasible_solution ( const BCP_solution sol)
virtual

Display a feasible solution.

Reimplemented from BCP_tm_user.

virtual void MKC_tm::init_new_phase ( int  phase,
BCP_column_generation colgen 
)
virtual

Member Data Documentation

BCP_parameter_set<MKC_tm_par> MKC_tm::tm_par

Definition at line 23 of file MKC_tm.hpp.

BCP_parameter_set<MKC_lp_par> MKC_tm::lp_par

Definition at line 24 of file MKC_tm.hpp.

MKC_knapsack_set MKC_tm::kss

Definition at line 25 of file MKC_tm.hpp.

BCP_vec<MKC_var*> MKC_tm::input_vars

Definition at line 26 of file MKC_tm.hpp.

Referenced by ~MKC_tm().

OsiClpSolverInterface* MKC_tm::clp

Definition at line 27 of file MKC_tm.hpp.

Referenced by ~MKC_tm().


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