[Lemon-commits] Peter Kovacs: Improve module docs and references...
Lemon HG
hg at lemon.cs.elte.hu
Thu Nov 8 09:31:37 CET 2012
details: http://lemon.cs.elte.hu/hg/lemon/rev/f63ba40a60f4
changeset: 1164:f63ba40a60f4
user: Peter Kovacs <kpeter [at] inf.elte.hu>
date: Mon Jan 30 23:24:14 2012 +0100
description:
Improve module docs and references (#437)
diffstat:
doc/groups.dox | 16 ++++++++++------
doc/min_cost_flow.dox | 2 +-
doc/references.bib | 24 ++++++++++++++++++++++--
lemon/hartmann_orlin_mmc.h | 2 +-
lemon/howard_mmc.h | 2 +-
lemon/karp_mmc.h | 2 +-
6 files changed, 36 insertions(+), 12 deletions(-)
diffs (140 lines):
diff --git a/doc/groups.dox b/doc/groups.dox
--- a/doc/groups.dox
+++ b/doc/groups.dox
@@ -407,9 +407,14 @@
strongly polynomial \ref klein67primal, \ref goldberg89cyclecanceling.
In general, \ref NetworkSimplex and \ref CostScaling are the most efficient
-implementations, but the other two algorithms could be faster in special cases.
+implementations, but the other algorithms could be faster in special cases.
For example, if the total supply and/or capacities are rather small,
\ref CapacityScaling is usually the fastest algorithm (without effective scaling).
+
+These classes are intended to be used with integer-valued input data
+(capacities, supply values, and costs), except for \ref CapacityScaling,
+which is capable of handling real-valued arc costs (other numerical
+data are required to be integer).
*/
/**
@@ -448,7 +453,7 @@
\brief Algorithms for finding minimum mean cycles.
This group contains the algorithms for finding minimum mean cycles
-\ref clrs01algorithms, \ref amo93networkflows.
+\ref amo93networkflows, \ref karp78characterization.
The \e minimum \e mean \e cycle \e problem is to find a directed cycle
of minimum mean length (cost) in a digraph.
@@ -464,12 +469,11 @@
function.
LEMON contains three algorithms for solving the minimum mean cycle problem:
-- \ref KarpMmc Karp's original algorithm \ref amo93networkflows,
- \ref dasdan98minmeancycle.
+- \ref KarpMmc Karp's original algorithm \ref karp78characterization.
- \ref HartmannOrlinMmc Hartmann-Orlin's algorithm, which is an improved
- version of Karp's algorithm \ref dasdan98minmeancycle.
+ version of Karp's algorithm \ref hartmann93finding.
- \ref HowardMmc Howard's policy iteration algorithm
- \ref dasdan98minmeancycle.
+ \ref dasdan98minmeancycle, \ref dasdan04experimental.
In practice, the \ref HowardMmc "Howard" algorithm turned out to be by far the
most efficient one, though the best known theoretical bound on its running
diff --git a/doc/min_cost_flow.dox b/doc/min_cost_flow.dox
--- a/doc/min_cost_flow.dox
+++ b/doc/min_cost_flow.dox
@@ -101,7 +101,7 @@
sup(u) \quad \forall u\in V \f]
\f[ lower(uv) \leq f(uv) \leq upper(uv) \quad \forall uv\in A \f]
-However if the sum of the supply values is zero, then these two problems
+However, if the sum of the supply values is zero, then these two problems
are equivalent.
The \ref min_cost_flow_algs "algorithms" in LEMON support the general
form, so if you need the equality form, you have to ensure this additional
diff --git a/doc/references.bib b/doc/references.bib
--- a/doc/references.bib
+++ b/doc/references.bib
@@ -4,8 +4,7 @@
key = {LEMON},
title = {{LEMON} -- {L}ibrary for {E}fficient {M}odeling and
{O}ptimization in {N}etworks},
- howpublished = {\url{http://lemon.cs.elte.hu/}},
- year = 2009
+ howpublished = {\url{http://lemon.cs.elte.hu/}}
}
@misc{egres,
@@ -213,6 +212,16 @@
pages = {309-311}
}
+ at article{hartmann93finding,
+ author = {Mark Hartmann and James B. Orlin},
+ title = {Finding minimum cost to time ratio cycles with small
+ integral transit times},
+ journal = {Networks},
+ year = 1993,
+ volume = 23,
+ pages = {567-574}
+}
+
@article{dasdan98minmeancycle,
author = {Ali Dasdan and Rajesh K. Gupta},
title = {Faster Maximum and Minimum Mean Cycle Alogrithms for
@@ -225,6 +234,17 @@
pages = {889-899}
}
+ at article{dasdan04experimental,
+ author = {Ali Dasdan},
+ title = {Experimental analysis of the fastest optimum cycle
+ ratio and mean algorithms},
+ journal = {ACM Trans. Des. Autom. Electron. Syst.},
+ year = 2004,
+ volume = 9,
+ issue = 4,
+ pages = {385-418}
+}
+
%%%%% Minimum cost flow algorithms %%%%%
diff --git a/lemon/hartmann_orlin_mmc.h b/lemon/hartmann_orlin_mmc.h
--- a/lemon/hartmann_orlin_mmc.h
+++ b/lemon/hartmann_orlin_mmc.h
@@ -98,7 +98,7 @@
///
/// This class implements the Hartmann-Orlin algorithm for finding
/// a directed cycle of minimum mean cost in a digraph
- /// \ref amo93networkflows, \ref dasdan98minmeancycle.
+ /// \ref hartmann93finding, \ref dasdan98minmeancycle.
/// It is an improved version of \ref KarpMmc "Karp"'s original algorithm,
/// it applies an efficient early termination scheme.
/// It runs in time O(ne) and uses space O(n<sup>2</sup>+e).
diff --git a/lemon/howard_mmc.h b/lemon/howard_mmc.h
--- a/lemon/howard_mmc.h
+++ b/lemon/howard_mmc.h
@@ -98,7 +98,7 @@
///
/// This class implements Howard's policy iteration algorithm for finding
/// a directed cycle of minimum mean cost in a digraph
- /// \ref amo93networkflows, \ref dasdan98minmeancycle.
+ /// \ref dasdan98minmeancycle, \ref dasdan04experimental.
/// This class provides the most efficient algorithm for the
/// minimum mean cycle problem, though the best known theoretical
/// bound on its running time is exponential.
diff --git a/lemon/karp_mmc.h b/lemon/karp_mmc.h
--- a/lemon/karp_mmc.h
+++ b/lemon/karp_mmc.h
@@ -98,7 +98,7 @@
///
/// This class implements Karp's algorithm for finding a directed
/// cycle of minimum mean cost in a digraph
- /// \ref amo93networkflows, \ref dasdan98minmeancycle.
+ /// \ref karp78characterization, \ref dasdan98minmeancycle.
/// It runs in time O(ne) and uses space O(n<sup>2</sup>+e).
///
/// \tparam GR The type of the digraph the algorithm runs on.
More information about the Lemon-commits
mailing list