Camargue
|
Structures for storing and processing cuts. More...
#include "datagroups.hpp"
#include "cc_lpcuts.hpp"
#include "graph.hpp"
#include "cut_structs.hpp"
#include "lp_util.hpp"
#include "util.hpp"
#include <memory>
#include <vector>
#include <limits>
#include <list>
#include <utility>
Go to the source code of this file.
Classes | |
class | CMR::Sep::CutQueue< cut_rep > |
Class template for queue of cuts in some form. More... | |
Namespaces | |
CMR | |
The namespace for this project. | |
CMR::Sep | |
Classes and functions related to cut separation. | |
Functions | |
LP::SparseRow | CMR::Sep::get_row (const CCtsp_lpcut_in &cc_cut, const std::vector< int > &perm, const Graph::CoreGraph &core_graph) |
SparseRow corresponding to Concorde cut. | |
LP::SparseRow | CMR::Sep::get_row (const dominoparity &dp_cut, const std::vector< int > &tour_nodes, const Graph::CoreGraph &core_graph) |
SparseRow corresponding to simple DP inequality. | |
LP::SparseRow | CMR::Sep::get_row (const std::vector< int > &handle_delta, const std::vector< std::vector< int >> &tooth_edges, const Graph::CoreGraph &core_graph) |
SparseRow corresponding to the handle and tooth edges of a blossom. | |
template<typename number_type > | |
double | CMR::Sep::get_activity (const std::vector< number_type > &x, const LP::SparseRow &R) |
Function template for determining the activity or lhs of a vector on a row. | |
std::vector< int > | CMR::Sep::teeth_inds (const ex_blossom &B, const std::vector< double > &tour_edges, const std::vector< double > &lp_vec, const std::vector< Graph::Edge > &edges, int ncount) |
Gets the indices of the teeth for an ex_blossom B relative to edges . | |
std::vector< int > | CMR::Sep::teeth_inds (const ex_blossom &B, const std::vector< double > &tour_edges, const std::vector< double > &lp_vec, const std::vector< Graph::Edge > &edges, int ncount, const std::vector< int > &handle_delta) |
Like the other version, but if we already have handle_delta. | |
bool | CMR::Sep::bad_blossom (const ex_blossom &B, const std::vector< double > &tour_edges, const std::vector< double > &lp_vec, const std::vector< Graph::Edge > &edges, int ncount) |
Returns true if the blossom is invalid for some reason. | |
Structures for storing and processing cuts.