Bpp/Graph_problem
Min_cost_tension
Aggregation
C++
 
 
DESCRIPTION
 

This module implements an algorithm we call "aggregation" to solve the minimum cost tension problem in serial-parallel graphs or almost serial-parallel graphs. The cost functions of the arcs in the graph must be linear as defined by the clLinearArcData class of the Structure module.

 
SOURCE FILES
 

This section allows you to access the C++ source files of the module.

 
PARENT MODULE
 

This module is part of Bpp/Graph_problem/Min_cost_tension.

 
INCLUDED FILES
 

The files listed below are included in the interface part of the module. So any module dependent of this module is also dependent of the files listed here.

  • <bpp/graph_problem/min_cost_tension/conforming_piecewise.hpp>

  • <bpp/graph_problem/serial_parallel.hpp>

 
NEEDED FILES
 

The files listed below are needed by the implementation part of the module. But a module dependent of this module is not necessary dependent of the files listed here.

  • <bpp/modules.hpp>

 
INTEGRATED NAMESPACES
 

The namespaces listed below are integrated in this module. That means any element declared in one of those namespaces can now be directly used by or from this module.

  • graphProblemMinCostTensionAlgorithm

  • graphProblemSerialParallel

 
ALIASES
 

The aliases listed below are only used internally by the interface. They are here just to lighten the writing of certain declarations. Never use them, they are local to the interface and can not be used outside of it.

  • tdGraph = class prArcData,class prNodeData

  • tuGraph = prArcData,prNodeData

 
ERRORS
 

Here are listed the errors that are supported or generated by the module. To use one of them, you do not have to specify the namespace of the module.

  • erEmptyArcList
    The arc list is empty.

  • erNotEnoughAvailableFlow
    Can not increase or decrease more a flow.

  • erNotEnoughAvailableTension
    Can not increase or decrease more a tension.

 
CLASSES
 

Here are listed the classes provided by the module. To use one of them, you have to specify the namespace of the module.

 
clSolveAlgo
 
 
Declaration

template <tdGraph> class clSolveAlgo : public clLinearSolver<tuGraph>

 
Description

Represents an algorithm to solve the minimum cost tension problem in a graph, using the reconstruction approach that combines the aggregation and the conforming methods.

 
Methods
 
clSolveAlgoI
 
 
Declaration

template <tdGraph> class clSolveAlgoI : public clSolveAlgo<tuGraph>

 
Description

Represents an algorithm to solve the minimum cost tension problem in a graph, using the reconstruction approach (version I) that combines the aggregation and the conforming methods.

 
Methods
 
clSolveAlgoII
 
 
Declaration

template <tdGraph> class clSolveAlgoII : public clSolveAlgo<tuGraph>

 
Description

Represents an algorithm to solve the minimum cost tension problem in a graph, using the reconstruction approach (version II, post-decomposition) that combines the aggregation and the conforming methods.

 
Methods
 
clSolveSerialParallelAlgo
 
 
Declaration

template <tdGraph> class clSolveSerialParallelAlgo : public clLinearSolver<tuGraph>

 
Description

Represents an algorithm to solve the minimum cost tension problem in a serial-parallel graph using the recursive aggregation method.

 
Methods
 
 
Copyright (c) 1999-2016 - Bruno Bachelet - bruno@nawouak.net - http://www.nawouak.net
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation. See this license for more details (http://www.gnu.org).