Camargue
blossoms.hpp
Go to the documentation of this file.
1 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
5 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
6 
7 #ifndef CMR_BLOSSOMS_H
8 #define CMR_BLOSSOMS_H
9 
10 #include "active_tour.hpp"
11 #include "cut_structs.hpp"
12 #include "process_cuts.hpp"
13 #include "datagroups.hpp"
14 #include "graph.hpp"
15 
16 namespace CMR {
17 namespace Sep {
18 
20 class ExBlossoms {
21 public:
22  ExBlossoms(const std::vector<Graph::Edge> &_edges,
23  const LP::ActiveTour &active_tour_,
24  Data::SupportGroup &s_dat,
25  CutQueue<ex_blossom> &_blossom_q);
26 
27  bool find_cuts();
28 
29 private:
30  const std::vector<Graph::Edge> &edges;
31  const LP::ActiveTour &active_tour;
32  Data::SupportGroup &supp_data;
33  CutQueue<ex_blossom> &blossom_q;
34 
35 };
36 
37 }
38 }
39 
40 
41 
42 
43 #endif
Support graph data for an LP solution.
Definition: datagroups.hpp:174
Exact primal blossom separation as per Letchford and Lodi&#39;s algorithm.
Definition: blossoms.hpp:20
Header for classes/structures/functions to work with graphs.
Data group structures.
Class template for queue of cuts in some form.
Definition: process_cuts.hpp:30
Information about the active tour in a CoreLP.
Definition: active_tour.hpp:30
Structures for storing and processing cuts.
The namespace for this project.
Definition: abc_nodesel.hpp:20
Monitoring the active tour in the solution process.