coin-Bcp
MC_tm.hpp
Go to the documentation of this file.
1 // Copyright (C) 2000, International Business Machines
2 // Corporation and others. All Rights Reserved.
3 #ifndef _MC_TM_H
4 #define _MC_TM_H
5 
6 #include "BCP_tm_user.hpp"
7 #include "BCP_parameters.hpp"
8 
9 #include "MC_tm_param.hpp"
10 #include "MC_lp_param.hpp"
11 
12 #include "MC.hpp"
13 #include "MC_solution.hpp"
14 #include "MC_cut.hpp"
15 
16 class MC_tm : public BCP_tm_user {
17 public:
20  // BCP_parameter_set<MC_cg_par> cg_par;
21  // BCP_parameter_set<MC_cg_par> vg_par;
22 
23  MC_problem mc;
25 
26 public:
27  MC_tm() : tm_par(), lp_par(), mc(), best_soln() {}
28  ~MC_tm() {}
29 
30  //--------------------------------------------------------------------------
31  // pack the module data for the appropriate process
32  void
34  //--------------------------------------------------------------------------
35  // unpack an MIP feasible solution
38  //--------------------------------------------------------------------------
39  // feasible solution displaying
40  void
41  display_solution(const BCP_solution* soln);
42  //--------------------------------------------------------------------------
43  // setting the core
44  void
47  BCP_lp_relax*& matrix);
48  //--------------------------------------------------------------------------
49  // create the root node
50  void
51  create_root(BCP_vec<BCP_var*>& added_vars,
52  BCP_vec<BCP_cut*>& added_cuts,
53  BCP_user_data*& user_data);
54 
55  //--------------------------------------------------------------------------
56  // Display a feasible solution
57  void
59 
60  //##########################################################################
61 };
62 
63 #endif
BCP_parameter_set< MC_tm_par > tm_par
Definition: MC_tm.hpp:18
BCP_process_t
This enumerative constant describes the various process types.
BCP_parameter_set< MC_lp_par > lp_par
Definition: MC_tm.hpp:19
~MC_tm()
Definition: MC_tm.hpp:28
BCP_solution * unpack_feasible_solution(BCP_buffer &buf)
Unpack a MIP feasible solution that was packed by the BCP_lp_user::pack_feasible_solution() method...
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...
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)
void display_feasible_solution(const BCP_solution *sol)
Display a feasible solution.
MC_problem mc
Definition: MC_tm.hpp:23
Definition: MC_tm.hpp:16
MC_solution best_soln
Definition: MC_tm.hpp:24
This class describes the message buffer used for all processes of BCP.
Definition: BCP_buffer.hpp:39
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.
The BCP_tm_user class is the base class from which the user can derive a problem specific class to be...
Definition: BCP_tm_user.hpp:58
void display_solution(const BCP_solution *soln)
An object of type BCP_lp_relax holds the description of an lp relaxation.
Definition: BCP_matrix.hpp:267
This is the abstract base class for a solution to a Mixed Integer Programming problem.
MC_tm()
Definition: MC_tm.hpp:27