Fri, 13 Nov 2009 00:23:07 +0100Rework the MCF test file to help extending it (#180)
Peter Kovacs <kpeter@inf.elte.hu> [Fri, 13 Nov 2009 00:23:07 +0100] rev 818
Rework the MCF test file to help extending it (#180)

Fri, 13 Nov 2009 00:15:50 +0100Fixes in the heap concept to avoid warnings (#180)
Peter Kovacs <kpeter@inf.elte.hu> [Fri, 13 Nov 2009 00:15:50 +0100] rev 817
Fixes in the heap concept to avoid warnings (#180)

Fri, 13 Nov 2009 00:11:11 +0100Add citations to CycleCanceling (#180, #184)
Peter Kovacs <kpeter@inf.elte.hu> [Fri, 13 Nov 2009 00:11:11 +0100] rev 816
Add citations to CycleCanceling (#180, #184)

Fri, 13 Nov 2009 00:10:33 +0100Entirely rework cycle canceling algorithms (#180)
Peter Kovacs <kpeter@inf.elte.hu> [Fri, 13 Nov 2009 00:10:33 +0100] rev 815
Entirely rework cycle canceling algorithms (#180)

- Move the cycle canceling algorithms (CycleCanceling, CancelAndTighten)
into one class (CycleCanceling).
- Add a Method parameter to the run() function to be able to select
the used cycle canceling method.
- Use the new interface similarly to NetworkSimplex.
- Rework the implementations using an efficient internal structure
for handling the residual network.
This improvement made the codes much faster.
- Handle GEQ supply type (LEQ is not supported).
- Handle infinite upper bounds.
- Handle negative costs (for arcs of finite upper bound).
- Extend the documentation.

Fri, 13 Nov 2009 00:09:35 +0100Port cycle canceling algorithms from SVN -r3524 (#180)
Peter Kovacs <kpeter@inf.elte.hu> [Fri, 13 Nov 2009 00:09:35 +0100] rev 814
Port cycle canceling algorithms from SVN -r3524 (#180)

Thu, 12 Nov 2009 23:52:51 +0100Add citations to the scaling MCF algorithms (#180, #184)
Peter Kovacs <kpeter@inf.elte.hu> [Thu, 12 Nov 2009 23:52:51 +0100] rev 813
Add citations to the scaling MCF algorithms (#180, #184)
and improve the doc of their group.

Thu, 12 Nov 2009 23:49:05 +0100Small doc improvements + unifications in MCF classes (#180)
Peter Kovacs <kpeter@inf.elte.hu> [Thu, 12 Nov 2009 23:49:05 +0100] rev 812
Small doc improvements + unifications in MCF classes (#180)

Thu, 12 Nov 2009 23:45:15 +0100Small implementation improvements in MCF algorithms (#180)
Peter Kovacs <kpeter@inf.elte.hu> [Thu, 12 Nov 2009 23:45:15 +0100] rev 811
Small implementation improvements in MCF algorithms (#180)

- Handle max() as infinite value (not only infinity()).
- Better GEQ handling in CapacityScaling.
- Skip the unnecessary saturating operations in the first phase in
CapacityScaling.
- Use vector<char> instead of vector<bool> and vector<int> if it is
possible and it proved to be usually faster.

Thu, 12 Nov 2009 23:34:35 +0100More options for run() in scaling MCF algorithms (#180)
Peter Kovacs <kpeter@inf.elte.hu> [Thu, 12 Nov 2009 23:34:35 +0100] rev 810
More options for run() in scaling MCF algorithms (#180)

- Three methods can be selected and the scaling factor can be
given for CostScaling.
- The scaling factor can be given for CapacityScaling.

Thu, 12 Nov 2009 23:30:45 +0100Entirely rework CostScaling (#180)
Peter Kovacs <kpeter@inf.elte.hu> [Thu, 12 Nov 2009 23:30:45 +0100] rev 809
Entirely rework CostScaling (#180)

- Use the new interface similarly to NetworkSimplex.
- Rework the implementation using an efficient internal structure
for handling the residual network. This improvement made the
code much faster.
- Handle GEQ supply type (LEQ is not supported).
- Handle infinite upper bounds.
- Handle negative costs (for arcs of finite upper bound).
- Traits class + named parameter for the LargeCost type used in
internal computations.
- Extend the documentation.

Thu, 12 Nov 2009 23:29:42 +0100Port CostScaling from SVN -r3524 (#180)
Peter Kovacs <kpeter@inf.elte.hu> [Thu, 12 Nov 2009 23:29:42 +0100] rev 808
Port CostScaling from SVN -r3524 (#180)

Thu, 12 Nov 2009 23:27:21 +0100Traits class + a named parameter for CapacityScaling (#180)
Peter Kovacs <kpeter@inf.elte.hu> [Thu, 12 Nov 2009 23:27:21 +0100] rev 807
Traits class + a named parameter for CapacityScaling (#180)
to specify the heap used in internal Dijkstra computations.

Thu, 12 Nov 2009 23:26:13 +0100Entirely rework CapacityScaling (#180)
Peter Kovacs <kpeter@inf.elte.hu> [Thu, 12 Nov 2009 23:26:13 +0100] rev 806
Entirely rework CapacityScaling (#180)

- Use the new interface similarly to NetworkSimplex.
- Rework the implementation using an efficient internal structure
for handling the residual network. This improvement made the
code much faster (up to 2-5 times faster on large graphs).
- Handle GEQ supply type (LEQ is not supported).
- Handle negative costs for arcs of finite capacity.
(Note that this algorithm cannot handle arcs of negative cost
and infinite upper bound, thus it returns UNBOUNDED if such
an arc exists.)
- Extend the documentation.

Thu, 12 Nov 2009 23:17:34 +0100Port CapacityScaling from SVN -r3524 (#180)
Peter Kovacs <kpeter@inf.elte.hu> [Thu, 12 Nov 2009 23:17:34 +0100] rev 805
Port CapacityScaling from SVN -r3524 (#180)

Sun, 13 Dec 2009 22:19:08 +0100Memory leak bugfix in BellmanFord (#51)
Peter Kovacs <kpeter@inf.elte.hu> [Sun, 13 Dec 2009 22:19:08 +0100] rev 804
Memory leak bugfix in BellmanFord (#51)

Thu, 10 Dec 2009 17:18:25 +0100Merge bugfix #330
Alpar Juttner <alpar@cs.elte.hu> [Thu, 10 Dec 2009 17:18:25 +0100] rev 803
Merge bugfix #330

Thu, 10 Dec 2009 17:05:35 +0100Merge
Alpar Juttner <alpar@cs.elte.hu> [Thu, 10 Dec 2009 17:05:35 +0100] rev 802
Merge

Fri, 13 Nov 2009 12:33:33 +0100Bug fix in map_extender.h (#330)
Peter Kovacs <kpeter@inf.elte.hu> [Fri, 13 Nov 2009 12:33:33 +0100] rev 801
Bug fix in map_extender.h (#330)

Thu, 10 Dec 2009 09:14:47 +0100Fix clear() function in ExtendFindEnum (#335)
Balazs Dezso <deba@inf.elte.hu> [Thu, 10 Dec 2009 09:14:47 +0100] rev 800
Fix clear() function in ExtendFindEnum (#335)

Wed, 09 Dec 2009 11:14:06 +0100Merge #62
Alpar Juttner <alpar@cs.elte.hu> [Wed, 09 Dec 2009 11:14:06 +0100] rev 799
Merge #62

Sun, 04 Oct 2009 10:15:32 +0200Planarity checking function instead of class (#62)
Balazs Dezso <deba@inf.elte.hu> [Sun, 04 Oct 2009 10:15:32 +0200] rev 798
Planarity checking function instead of class (#62)

Wed, 09 Sep 2009 15:32:03 +0200Port planarity related algorithms from SVN 3509 (#62)
Balazs Dezso <deba@inf.elte.hu> [Wed, 09 Sep 2009 15:32:03 +0200] rev 797
Port planarity related algorithms from SVN 3509 (#62)

Fri, 20 Nov 2009 14:18:33 +0100Merge
Alpar Juttner <alpar@cs.elte.hu> [Fri, 20 Nov 2009 14:18:33 +0100] rev 796
Merge

Wed, 18 Nov 2009 21:21:26 +0100Fix in HartmannOrlin algorithm (#333)
Balazs Dezso <deba@inf.elte.hu> [Wed, 18 Nov 2009 21:21:26 +0100] rev 795
Fix in HartmannOrlin algorithm (#333)

Thu, 19 Nov 2009 09:36:43 +0100Valgring option for ./scripts/bootstrap.sh
Alpar Juttner <alpar@cs.elte.hu> [Thu, 19 Nov 2009 09:36:43 +0100] rev 794
Valgring option for ./scripts/bootstrap.sh

Wed, 18 Nov 2009 18:37:21 +0000Optionally use valgrind when running tests + other build system fixes
Akos Ladanyi <ladanyi@tmit.bme.hu> [Wed, 18 Nov 2009 18:37:21 +0000] rev 793
Optionally use valgrind when running tests + other build system fixes

Wed, 18 Nov 2009 14:38:38 +0100Merge
Alpar Juttner <alpar@cs.elte.hu> [Wed, 18 Nov 2009 14:38:38 +0100] rev 792
Merge

Wed, 18 Nov 2009 14:22:52 +0100Merge
Alpar Juttner <alpar@cs.elte.hu> [Wed, 18 Nov 2009 14:22:52 +0100] rev 791
Merge

Wed, 18 Nov 2009 14:21:35 +0100Fix gcc-4.4 compilation warning
Alpar Juttner <alpar@cs.elte.hu> [Wed, 18 Nov 2009 14:21:35 +0100] rev 790
Fix gcc-4.4 compilation warning

Fri, 13 Nov 2009 12:47:13 +0100Map utility functions (#320)
Peter Kovacs <kpeter@inf.elte.hu> [Fri, 13 Nov 2009 12:47:13 +0100] rev 789
Map utility functions (#320)

Wed, 18 Nov 2009 14:38:02 +0100Merge
Alpar Juttner <alpar@cs.elte.hu> [Wed, 18 Nov 2009 14:38:02 +0100] rev 788
Merge

Sun, 15 Nov 2009 19:57:02 +0100Various doc improvements (#331)
Peter Kovacs <kpeter@inf.elte.hu> [Sun, 15 Nov 2009 19:57:02 +0100] rev 787
Various doc improvements (#331)

- Add notes to the graph classes about the time of
item counting.
- Clarify the doc for run() in BFS and DFS.
- Other improvements.

Fri, 13 Nov 2009 18:10:06 +0100Small doc fixes in several files (#331)
Peter Kovacs <kpeter@inf.elte.hu> [Fri, 13 Nov 2009 18:10:06 +0100] rev 786
Small doc fixes in several files (#331)

Fri, 13 Nov 2009 17:30:26 +0100Doc improvements for Path and PathDumper concepts (#331)
Peter Kovacs <kpeter@inf.elte.hu> [Fri, 13 Nov 2009 17:30:26 +0100] rev 785
Doc improvements for Path and PathDumper concepts (#331)

Thu, 05 Nov 2009 15:50:01 +0100Merge #321
Alpar Juttner <alpar@cs.elte.hu> [Thu, 05 Nov 2009 15:50:01 +0100] rev 784
Merge #321

Thu, 05 Nov 2009 15:48:01 +0100Merge #293
Alpar Juttner <alpar@cs.elte.hu> [Thu, 05 Nov 2009 15:48:01 +0100] rev 783
Merge #293

Thu, 05 Nov 2009 10:27:17 +0100Merge
Alpar Juttner <alpar@cs.elte.hu> [Thu, 05 Nov 2009 10:27:17 +0100] rev 782
Merge

Mon, 28 Sep 2009 15:53:20 +0200Small fixes related to BellmanFord (#51)
Peter Kovacs <kpeter@inf.elte.hu> [Mon, 28 Sep 2009 15:53:20 +0200] rev 781
Small fixes related to BellmanFord (#51)

- Add a missing #include.
- Add a missing const keyword for negativeCycle().
- Test if negativeCycle() is const function.

Thu, 05 Nov 2009 10:23:16 +0100Merge #68 (Port static graph implementation)
Alpar Juttner <alpar@cs.elte.hu> [Thu, 05 Nov 2009 10:23:16 +0100] rev 780
Merge #68 (Port static graph implementation)

Thu, 05 Nov 2009 10:01:02 +0100Merge
Alpar Juttner <alpar@cs.elte.hu> [Thu, 05 Nov 2009 10:01:02 +0100] rev 779
Merge

Tue, 29 Sep 2009 13:03:34 +0200Make some graph member functions static (#311, #68)
Peter Kovacs <kpeter@inf.elte.hu> [Tue, 29 Sep 2009 13:03:34 +0200] rev 778
Make some graph member functions static (#311, #68)

Tue, 29 Sep 2009 12:03:02 +0200Add a new build() function to StaticDigraph (#68)
Peter Kovacs <kpeter@inf.elte.hu> [Tue, 29 Sep 2009 12:03:02 +0200] rev 777
Add a new build() function to StaticDigraph (#68)

This function builds the digraph from an arc list that
contains pairs of integer indices from the range [0..n-1].
It is useful in the cases when you would like to build a
StaticDigraph from scratch, i.e. you do not want to build
another digraph that can be copied using the other build()
function.

Tue, 29 Sep 2009 10:39:20 +0200Extend the interface of StaticDigraph (#68)
Peter Kovacs <kpeter@inf.elte.hu> [Tue, 29 Sep 2009 10:39:20 +0200] rev 776
Extend the interface of StaticDigraph (#68)
with index(), arc() and node() functions similarly to
other static graph structures.

Tue, 25 Aug 2009 16:32:47 +0200Add documentation for StaticDigraph (#68)
Peter Kovacs <kpeter@inf.elte.hu> [Tue, 25 Aug 2009 16:32:47 +0200] rev 775
Add documentation for StaticDigraph (#68)

Tue, 25 Aug 2009 13:58:43 +0200Small improvements + add tests for StaticDigraph (#68)
Peter Kovacs <kpeter@inf.elte.hu> [Tue, 25 Aug 2009 13:58:43 +0200] rev 774
Small improvements + add tests for StaticDigraph (#68)

Tue, 25 Aug 2009 11:09:02 +0200Port StaticDigraph from SVN -r3524 (#68)
Peter Kovacs <kpeter@inf.elte.hu> [Tue, 25 Aug 2009 11:09:02 +0200] rev 773
Port StaticDigraph from SVN -r3524 (#68)

Fri, 16 Oct 2009 09:50:18 +0200Small fix in the doc (#179)
Peter Kovacs <kpeter@inf.elte.hu> [Fri, 16 Oct 2009 09:50:18 +0200] rev 772
Small fix in the doc (#179)

Thu, 15 Oct 2009 12:55:41 +0200Add citations to the min mean cycle classes (#179, #184)
Peter Kovacs <kpeter@inf.elte.hu> [Thu, 15 Oct 2009 12:55:41 +0200] rev 771
Add citations to the min mean cycle classes (#179, #184)

Thu, 05 Nov 2009 08:39:49 +0100Merge #179 (Port the min mean cycle algorithms)
Alpar Juttner <alpar@cs.elte.hu> [Thu, 05 Nov 2009 08:39:49 +0100] rev 770
Merge #179 (Port the min mean cycle algorithms)

Tue, 18 Aug 2009 10:08:28 +0200Add tolerance() functions for MMC classes (#179)
Peter Kovacs <kpeter@inf.elte.hu> [Tue, 18 Aug 2009 10:08:28 +0200] rev 769
Add tolerance() functions for MMC classes (#179)

Wed, 12 Aug 2009 09:45:15 +0200Separate group for the min mean cycle classes (#179)
Peter Kovacs <kpeter@inf.elte.hu> [Wed, 12 Aug 2009 09:45:15 +0200] rev 768
Separate group for the min mean cycle classes (#179)

Tue, 11 Aug 2009 22:52:35 +0200Simplify comparisons in min mean cycle classes (#179)
Peter Kovacs <kpeter@inf.elte.hu> [Tue, 11 Aug 2009 22:52:35 +0200] rev 767
Simplify comparisons in min mean cycle classes (#179)
using extreme INF values instead of bool flags.

Tue, 11 Aug 2009 21:53:39 +0200Add HartmannOrlin algorithm class (#179)
Peter Kovacs <kpeter@inf.elte.hu> [Tue, 11 Aug 2009 21:53:39 +0200] rev 766
Add HartmannOrlin algorithm class (#179)
This algorithm is an improved version of Karp's original method,
it applies an efficient early termination scheme.
The interface is the same as Karp's and Howard's interface.

Tue, 11 Aug 2009 20:55:40 +0200Add Karp algorithm class (#179)
Peter Kovacs <kpeter@inf.elte.hu> [Tue, 11 Aug 2009 20:55:40 +0200] rev 765
Add Karp algorithm class (#179)
based on the MinMeanCycle implementation in SVN -r3436.
The interface is reworked to be the same as Howard's interface.

Mon, 10 Aug 2009 14:50:57 +0200Rename MinMeanCycle to Howard (#179)
Peter Kovacs <kpeter@inf.elte.hu> [Mon, 10 Aug 2009 14:50:57 +0200] rev 764
Rename MinMeanCycle to Howard (#179)

Fri, 07 Aug 2009 14:52:40 +0200Add a detailed test file for MinMeanCycle and fix test_tools.h (#179)
Peter Kovacs <kpeter@inf.elte.hu> [Fri, 07 Aug 2009 14:52:40 +0200] rev 763
Add a detailed test file for MinMeanCycle and fix test_tools.h (#179)

Thu, 06 Aug 2009 20:31:04 +0200Rename cyclePath() to cycle() in MinMeanCycle (#179)
Peter Kovacs <kpeter@inf.elte.hu> [Thu, 06 Aug 2009 20:31:04 +0200] rev 762
Rename cyclePath() to cycle() in MinMeanCycle (#179)

Thu, 06 Aug 2009 20:28:28 +0200Traits class + named parameters for MinMeanCycle (#179)
Peter Kovacs <kpeter@inf.elte.hu> [Thu, 06 Aug 2009 20:28:28 +0200] rev 761
Traits class + named parameters for MinMeanCycle (#179)

- Add a Traits class defining LargeValue, Tolerance, Path types.
LargeValue is used for internal computations, it is 'long long'
if the length type is integer, otherwise it is 'double'.
- Add named template parameters for LargeValue and Path types.
- Improve numerical stability: remove divisions from the internal
computations. If the arc lengths are integers, then all used
values are integers (except for the cycleMean() query function,
of course).

Thu, 06 Aug 2009 20:12:43 +0200Rework and fix the implementation of MinMeanCycle (#179)
Peter Kovacs <kpeter@inf.elte.hu> [Thu, 06 Aug 2009 20:12:43 +0200] rev 760
Rework and fix the implementation of MinMeanCycle (#179)

- Fix the handling of the cycle means.
- Many implementation improvements:
- More efficient data storage for the strongly connected
components.
- Better handling of BFS queues.
- Merge consecutive BFS searches (perform two BFS searches
instead of three).

This version is about two times faster on average and an order of
magnitude faster if there are a lot of strongly connected components.

Mon, 03 Aug 2009 14:35:38 +0200Simplify the interface of MinMeanCycle (#179)
Peter Kovacs <kpeter@inf.elte.hu> [Mon, 03 Aug 2009 14:35:38 +0200] rev 759
Simplify the interface of MinMeanCycle (#179)
Remove init() and reset(), and move their content into findMinMean().