The symbolic constraint for cuts.
#include <cut.h>
Classes | |
class | bfs_dist_visitor |
Visitor for algorithm boost::breadth_first_search. More... | |
Public Member Functions | |
CUT (Graph &G_, row_map< edge_descriptor > &VM_, int nc_=-1) | |
void | init (subproblem &S) |
int | generate_triangle_inequalities (subproblem &S) |
status | standard_separation (subproblem &S) |
status | fast_separation (subproblem &S) |
status | feasible (solution &S) |
int | exactCycleSeparation (solution &S, int maxnum, std::list< cons_obj * > &newCons) |
int | forestCycleSeparation (solution &S, int maxnum, std::list< cons_obj * > &newCons) |
list< vertex_descriptor > | getConfiguration (solution &S) |
void | info () |
Definition at line 44 of file cut.h.
int CUT::exactCycleSeparation | ( | solution & | S, | |
int | maxnum, | |||
std::list< cons_obj * > & | newCons | |||
) | [inline] |
Separates the cycle constraints, i.e. for a cycle C,
odd, with an exact separation algorithm.
Definition at line 303 of file cut.cc.
References SCIL::subproblem::configuration(), SCIL::row::normalize(), and SCIL::solution::value().
Referenced by SCIL::CUT< Graph >::standard_separation().
CUT< Graph >::status CUT::fast_separation | ( | subproblem & | S | ) | [inline, virtual] |
The fast saparation function.
Reimplemented from SCIL::sym_constraint.
Definition at line 746 of file cut.cc.
References SCIL::subproblem::add_basic_constraint(), SCIL::subproblem::configuration(), SCIL::CUT< Graph >::forestCycleSeparation(), and SCIL::solution::save_solution().
Returns true, if the induced graph is a cut.
Reimplemented from SCIL::sym_constraint.
Definition at line 659 of file cut.cc.
References SCIL::subproblem::configuration(), and SCIL::solution::value().
Referenced by SCIL::CUT< Graph >::getConfiguration().
int SCIL::CUT< Graph >::forestCycleSeparation | ( | solution & | S, | |
int | maxnum, | |||
std::list< cons_obj * > & | newCons | |||
) |
Heuristically separates cycle constraints
Referenced by SCIL::CUT< Graph >::fast_separation(), and SCIL::CUT< Graph >::standard_separation().
list< typename CUT< Graph >::vertex_descriptor > CUT::getConfiguration | ( | solution & | S | ) | [inline] |
Returns the cut configuration induced by the (feasible) solution S
Definition at line 768 of file cut.cc.
References SCIL::subproblem::configuration(), and SCIL::CUT< Graph >::feasible().
void CUT::info | ( | ) | [inline, virtual] |
Returns information on the symbolic constraints.
Reimplemented from SCIL::sym_constraint.
void CUT::init | ( | subproblem & | ) | [inline, virtual] |
This function is called before the first LP at the root of the BCP-tree is solved.
Reimplemented from SCIL::sym_constraint.
Definition at line 235 of file cut.cc.
References SCIL::subproblem::configuration().
CUT< Graph >::status CUT::standard_separation | ( | subproblem & | S | ) | [inline, virtual] |
The main separation function.
Reimplemented from SCIL::sym_constraint.
Definition at line 718 of file cut.cc.
References SCIL::subproblem::add_basic_constraint(), SCIL::subproblem::configuration(), SCIL::CUT< Graph >::exactCycleSeparation(), SCIL::CUT< Graph >::forestCycleSeparation(), and SCIL::solution::save_solution().