#include <algorithm>
#include "CoinHelperFunctions.hpp"
#include "BCP_math.hpp"
#include "BCP_mempool.hpp"
#include "BCP_cut.hpp"
Go to the source code of this file.
Classes | |
class | MC_cycle_cut |
class | MC_explicit_dense_cut |
Enumerations | |
enum | MC_cut_t { MC_cut_t__cycle, MC_cut_t__explicit_dense } |
enum | MC_EdgeOrdering { MC_MstEdgeOrderingPreferZero, MC_MstEdgeOrderingPreferOne, MC_MstEdgeOrderingPreferExtreme } |
Functions | |
bool | MC_cycle_cut_less (const BCP_cut *bc0, const BCP_cut *bc1) |
bool | MC_cycle_cut_equal (const BCP_cut *bc0, const BCP_cut *bc1) |
MC_solution * | MC_mst_heur (const MC_problem &mc, const double *x, const double *w, const double alpha, const double beta, const MC_EdgeOrdering edge_ordering, const int heurswitchround, const bool do_edge_switch_heur, const int struct_switch_heur) |
MC_solution * | MC_mst_cutgen (const MC_problem &mc, const double *x, const double *w, const double alpha, const double beta, const MC_EdgeOrdering edge_ordering, const int heurswitchround, const bool do_edge_switch_heur, const int struct_switch_heur, const double minviol, const int maxnewcuts, BCP_vec< BCP_cut * > &new_cuts, BCP_vec< BCP_row * > &new_rows) |
void | MC_kruskal (const MC_problem &mc, const int *edgeorder, const double *x, int *nodesign, int *edges_in_tree) |
void | MC_kruskal (const MC_problem &mc, const int *edgeorder, const double *x, int *nodesign, int *parentnode, int *parentedge) |
void | MC_generate_shortest_path_cycles (const MC_problem &mc, const double *x, const bool generate_all_cuts, const double minviol, BCP_vec< BCP_cut * > &new_cuts, BCP_vec< BCP_row * > &new_rows) |
void | MC_test_ising_four_cycles (const int n, const int *cycles, const double *x, const double minviol, BCP_vec< BCP_cut * > &cuts, BCP_vec< BCP_row * > &rows) |
void | MC_test_ising_triangles (const int n, const int *triangles, const double *x, const double minviol, BCP_vec< BCP_cut * > &cuts, BCP_vec< BCP_row * > &rows) |
enum MC_cut_t |
Enumerator | |
---|---|
MC_cut_t__cycle | |
MC_cut_t__explicit_dense |
Definition at line 21 of file MC_cut.hpp.
enum MC_EdgeOrdering |
Enumerator | |
---|---|
MC_MstEdgeOrderingPreferZero | |
MC_MstEdgeOrderingPreferOne | |
MC_MstEdgeOrderingPreferExtreme |
Definition at line 26 of file MC_cut.hpp.
Definition at line 107 of file MC_cut.hpp.
Definition at line 122 of file MC_cut.hpp.
MC_solution* MC_mst_heur | ( | const MC_problem & | mc, |
const double * | x, | ||
const double * | w, | ||
const double | alpha, | ||
const double | beta, | ||
const MC_EdgeOrdering | edge_ordering, | ||
const int | heurswitchround, | ||
const bool | do_edge_switch_heur, | ||
const int | struct_switch_heur | ||
) |
Definition at line 13 of file MC_mst_heur.cpp.
MC_solution* MC_mst_cutgen | ( | const MC_problem & | mc, |
const double * | x, | ||
const double * | w, | ||
const double | alpha, | ||
const double | beta, | ||
const MC_EdgeOrdering | edge_ordering, | ||
const int | heurswitchround, | ||
const bool | do_edge_switch_heur, | ||
const int | struct_switch_heur, | ||
const double | minviol, | ||
const int | maxnewcuts, | ||
BCP_vec< BCP_cut * > & | new_cuts, | ||
BCP_vec< BCP_row * > & | new_rows | ||
) |
Definition at line 152 of file MC_cutgen.cpp.
void MC_kruskal | ( | const MC_problem & | mc, |
const int * | edgeorder, | ||
const double * | x, | ||
int * | nodesign, | ||
int * | edges_in_tree | ||
) |
Definition at line 33 of file MC_kruskal.cpp.
void MC_kruskal | ( | const MC_problem & | mc, |
const int * | edgeorder, | ||
const double * | x, | ||
int * | nodesign, | ||
int * | parentnode, | ||
int * | parentedge | ||
) |
Definition at line 129 of file MC_kruskal.cpp.
void MC_generate_shortest_path_cycles | ( | const MC_problem & | mc, |
const double * | x, | ||
const bool | generate_all_cuts, | ||
const double | minviol, | ||
BCP_vec< BCP_cut * > & | new_cuts, | ||
BCP_vec< BCP_row * > & | new_rows | ||
) |
Definition at line 89 of file MC_shortest_path_cycle.cpp.
void MC_test_ising_four_cycles | ( | const int | n, |
const int * | cycles, | ||
const double * | x, | ||
const double | minviol, | ||
BCP_vec< BCP_cut * > & | cuts, | ||
BCP_vec< BCP_row * > & | rows | ||
) |
Definition at line 65 of file MC_ising_cycles.cpp.