Limbo 3.5.4
Loading...
Searching...
No Matches
limbo::solvers::CycleCanceling< T, V > Class Template Reference

Cycle canceling algorithm for min-cost flow. More...

#include <DualMinCostFlow.h>

Inheritance diagram for limbo::solvers::CycleCanceling< T, V >:
limbo::solvers::MinCostFlowSolver< T, V > limbo::solvers::MinCostFlowSolver< T, V >

Public Types

typedef T value_type
 value type
typedef MinCostFlowSolver< T, V > base_type
 base type
typedef base_type::dualsolver_type dualsolver_type
 dual min-cost flow solver type
typedef lemon::CycleCanceling< typename dualsolver_type::graph_type, value_type, value_typealg_type
 algorithm type
typedef T value_type
 value type
typedef MinCostFlowSolver< T, V > base_type
 base type
typedef base_type::primalsolver_type primalsolver_type
 dual min-cost flow solver type
typedef lemon::CycleCanceling< typename primalsolver_type::graph_type, value_type, value_typealg_type
 algorithm type
Public Types inherited from limbo::solvers::MinCostFlowSolver< T, V >
typedef DualMinCostFlow< T, V > dualsolver_type
 dual min-cost flow solver type
typedef MinCostFlow< T, V > primalsolver_type
 dual min-cost flow solver type

Public Member Functions

 CycleCanceling (typename alg_type::Method method=alg_type::CANCEL_AND_TIGHTEN)
 constructor
 CycleCanceling (CycleCanceling const &rhs)
 copy constructor
CycleCancelingoperator= (CycleCanceling const &rhs)
 assignment
virtual SolverProperty operator() (dualsolver_type *d)
 API to run min-cost flow solver.
 CycleCanceling (typename alg_type::Method method=alg_type::CANCEL_AND_TIGHTEN)
 constructor
 CycleCanceling (CycleCanceling const &rhs)
 copy constructor
CycleCancelingoperator= (CycleCanceling const &rhs)
 assignment
virtual SolverProperty operator() (primalsolver_type *d)
 API to run min-cost flow solver.
Public Member Functions inherited from limbo::solvers::MinCostFlowSolver< T, V >
 MinCostFlowSolver ()
 constructor
 MinCostFlowSolver (MinCostFlowSolver const &rhs)
 copy constructor
MinCostFlowSolveroperator= (MinCostFlowSolver const &rhs)
 assignment
virtual ~MinCostFlowSolver ()
 destructor
 MinCostFlowSolver ()
 constructor
 MinCostFlowSolver (MinCostFlowSolver const &rhs)
 copy constructor
MinCostFlowSolveroperator= (MinCostFlowSolver const &rhs)
 assignment
virtual ~MinCostFlowSolver ()
 destructor

Protected Member Functions

void copy (CycleCanceling const &rhs)
 copy object
void copy (CycleCanceling const &rhs)
 copy object
Protected Member Functions inherited from limbo::solvers::MinCostFlowSolver< T, V >
void copy (MinCostFlowSolver const &)
 copy object
void copy (MinCostFlowSolver const &)
 copy object

Protected Attributes

alg_type::Method m_method
 method for the algorithm, SIMPLE_CYCLE_CANCELING, MINIMUM_MEAN_CYCLE_CANCELING, CANCEL_AND_TIGHTEN

Detailed Description

template<typename T, typename V>
class limbo::solvers::CycleCanceling< T, V >

Cycle canceling algorithm for min-cost flow.

Template Parameters
Tcoefficient type
Vvariable type

Definition at line 786 of file MinCostFlow.h.

Member Typedef Documentation

◆ alg_type [1/2]

template<typename T, typename V>
typedef lemon::CycleCanceling<typename dualsolver_type::graph_type, value_type, value_type> limbo::solvers::CycleCanceling< T, V >::alg_type

algorithm type

Definition at line 894 of file DualMinCostFlow.h.

◆ alg_type [2/2]

template<typename T, typename V>
typedef lemon::CycleCanceling<typename primalsolver_type::graph_type, value_type, value_type> limbo::solvers::CycleCanceling< T, V >::alg_type

algorithm type

Definition at line 798 of file MinCostFlow.h.

◆ base_type [1/2]

template<typename T, typename V>
typedef MinCostFlowSolver<T, V> limbo::solvers::CycleCanceling< T, V >::base_type

base type

Definition at line 888 of file DualMinCostFlow.h.

◆ base_type [2/2]

template<typename T, typename V>
typedef MinCostFlowSolver<T, V> limbo::solvers::CycleCanceling< T, V >::base_type

base type

Definition at line 792 of file MinCostFlow.h.

◆ dualsolver_type

template<typename T, typename V>
typedef base_type::dualsolver_type limbo::solvers::CycleCanceling< T, V >::dualsolver_type

dual min-cost flow solver type

Definition at line 890 of file DualMinCostFlow.h.

◆ primalsolver_type

template<typename T, typename V>
typedef base_type::primalsolver_type limbo::solvers::CycleCanceling< T, V >::primalsolver_type

dual min-cost flow solver type

Definition at line 794 of file MinCostFlow.h.

◆ value_type [1/2]

template<typename T, typename V>
typedef T limbo::solvers::CycleCanceling< T, V >::value_type

value type

Definition at line 886 of file DualMinCostFlow.h.

◆ value_type [2/2]

template<typename T, typename V>
typedef T limbo::solvers::CycleCanceling< T, V >::value_type

value type

Definition at line 790 of file MinCostFlow.h.

Constructor & Destructor Documentation

◆ CycleCanceling() [1/4]

template<typename T, typename V>
limbo::solvers::CycleCanceling< T, V >::CycleCanceling ( typename alg_type::Method method = alg_type::CANCEL_AND_TIGHTEN)
inline

constructor

Parameters
methodmethod

Definition at line 898 of file DualMinCostFlow.h.

◆ CycleCanceling() [2/4]

template<typename T, typename V>
limbo::solvers::CycleCanceling< T, V >::CycleCanceling ( CycleCanceling< T, V > const & rhs)
inline

copy constructor

Parameters
rhsright hand side

Definition at line 905 of file DualMinCostFlow.h.

◆ CycleCanceling() [3/4]

template<typename T, typename V>
limbo::solvers::CycleCanceling< T, V >::CycleCanceling ( typename alg_type::Method method = alg_type::CANCEL_AND_TIGHTEN)
inline

constructor

Parameters
methodmethod

Definition at line 802 of file MinCostFlow.h.

◆ CycleCanceling() [4/4]

template<typename T, typename V>
limbo::solvers::CycleCanceling< T, V >::CycleCanceling ( CycleCanceling< T, V > const & rhs)
inline

copy constructor

Parameters
rhsright hand side

Definition at line 809 of file MinCostFlow.h.

Member Function Documentation

◆ copy() [1/2]

template<typename T, typename V>
void limbo::solvers::CycleCanceling< T, V >::copy ( CycleCanceling< T, V > const & rhs)
inlineprotected

copy object

Definition at line 966 of file DualMinCostFlow.h.

◆ copy() [2/2]

template<typename T, typename V>
void limbo::solvers::CycleCanceling< T, V >::copy ( CycleCanceling< T, V > const & rhs)
inlineprotected

copy object

Definition at line 870 of file MinCostFlow.h.

◆ operator()() [1/2]

template<typename T, typename V>
virtual SolverProperty limbo::solvers::CycleCanceling< T, V >::operator() ( dualsolver_type * d)
inlinevirtual

API to run min-cost flow solver.

Parameters
ddual min-cost flow object

Implements limbo::solvers::MinCostFlowSolver< T, V >.

Definition at line 924 of file DualMinCostFlow.h.

◆ operator()() [2/2]

template<typename T, typename V>
virtual SolverProperty limbo::solvers::CycleCanceling< T, V >::operator() ( primalsolver_type * d)
inlinevirtual

API to run min-cost flow solver.

Parameters
ddual min-cost flow object

Implements limbo::solvers::MinCostFlowSolver< T, V >.

Definition at line 828 of file MinCostFlow.h.

◆ operator=() [1/2]

template<typename T, typename V>
CycleCanceling & limbo::solvers::CycleCanceling< T, V >::operator= ( CycleCanceling< T, V > const & rhs)
inline

assignment

Parameters
rhsright hand side

Definition at line 912 of file DualMinCostFlow.h.

◆ operator=() [2/2]

template<typename T, typename V>
CycleCanceling & limbo::solvers::CycleCanceling< T, V >::operator= ( CycleCanceling< T, V > const & rhs)
inline

assignment

Parameters
rhsright hand side

Definition at line 816 of file MinCostFlow.h.

Member Data Documentation

◆ m_method

template<typename T, typename V>
alg_type::Method limbo::solvers::CycleCanceling< T, V >::m_method
protected

method for the algorithm, SIMPLE_CYCLE_CANCELING, MINIMUM_MEAN_CYCLE_CANCELING, CANCEL_AND_TIGHTEN

Definition at line 971 of file DualMinCostFlow.h.


The documentation for this class was generated from the following files: