Camargue
|
Separation of cut metamorphoses. More...
#include <meta_sep.hpp>
Public Types | |
enum | Type { Decker, Handling, Teething } |
Categories of implemented cut metamorphoses. | |
Public Member Functions | |
MetaCuts (const ExternalCuts &EC_, const std::vector< Graph::Edge > &core_edges_, const LP::ActiveTour &active_tour_, Data::SupportGroup &s_dat) | |
bool | find_cuts (Type meta_type) |
bool | tighten_cuts () |
LPcutList & | metacuts_q () |
Public Attributes | |
bool | verbose = false |
bool | filter_primal = true |
Private Types | |
using | HGitr = std::vector< HyperGraph >::const_iterator |
Private Member Functions | |
bool | price_combs (bool tighten) |
Price all comb-like cuts in LP; return true iff some are of interest. | |
bool | above_threshold (int num_paths) |
Used by attempt_sep to determine if num_paths is high enough. | |
bool | attempt_sep () |
Should separation be attempted at all. More... | |
void | price_cliques () |
Price all the Cliques in the LP. | |
bool | pure_comb (CCtsp_lpcut_in &c) |
Is c a pure comb. | |
Private Attributes | |
std::unordered_map< Clique, double > | clique_vals |
std::vector< HGitr > | interest_combs |
const ExternalCuts & | EC |
const std::vector< Graph::Edge > & | core_edges |
const LP::ActiveTour & | active_tour |
Data::SupportGroup & | supp_data |
TourGraph | TG |
std::vector< int > | perm_elist |
LPcutList | meta_q |
Separation of cut metamorphoses.
|
private |
Should separation be attempted at all.