Peter Kovacs <kpeter@inf.elte.hu> [Thu, 07 May 2009 02:07:59 +0200] rev 698
Small doc improvements (#257)
Balazs Dezso <deba@inf.elte.hu> [Thu, 07 May 2009 11:53:49 +0200] rev 697
Fix glp_prob definition (#286)
Peter Kovacs <kpeter@inf.elte.hu> [Wed, 06 May 2009 14:46:05 +0200] rev 696
Add a test file for the connectivity functions (#285)
The Euler tools have a separate test file.
Peter Kovacs <kpeter@inf.elte.hu> [Wed, 06 May 2009 14:44:05 +0200] rev 695
Doc improvements and fixes for connectivity tools (#285)
And add loopFree(), parallelFree(), simpleGraph() to the module doc.
Peter Kovacs <kpeter@inf.elte.hu> [Wed, 06 May 2009 14:37:44 +0200] rev 694
Bug fixes in connectivity.h (#285)
- Bug fix in tree().
- Rename simpleDigraph() to simpleGraph() (it works for both
directed and undirected graphs).
- Possibly faster implementation for parallelFree() and
simpleGraph().
Alpar Juttner <alpar@cs.elte.hu> [Wed, 29 Apr 2009 19:22:14 +0100] rev 693
Merge
Akos Ladanyi <ladanyi@tmit.bme.hu> [Wed, 29 Apr 2009 16:15:29 +0100] rev 692
Add the solver libraries to lemon.pc.in (#281)
Alpar Juttner <alpar@cs.elte.hu> [Wed, 29 Apr 2009 17:48:41 +0100] rev 691
Merge
Alpar Juttner <alpar@cs.elte.hu> [Wed, 29 Apr 2009 17:48:18 +0100] rev 690
Resolve gcc-4.3 warning in lemon/network_simplex.h
Peter Kovacs <kpeter@inf.elte.hu> [Wed, 29 Apr 2009 16:54:27 +0200] rev 689
Less map copying in NetworkSimplex (#234)
- The graph is copied in the constructor instead of the init() function.
It must not be modified after the class is constructed.
- The maps are copied once (instead of twice).
- Remove FlowMap, PotentialMap typedefs and flowMap(), pontentialMap()
setter functions.
- flowMap() and potentialMap() query functions copy the values into the
given map (reference) instead of returning a const reference to a
previously constructed map.
Peter Kovacs <kpeter@inf.elte.hu> [Wed, 29 Apr 2009 14:25:51 +0200] rev 688
Rename Flow to Value in the flow algorithms (#266)
We agreed that using Flow for the value type is misleading, since
a flow should be rather a function on the arcs, not a single value.
This patch reverts the changes of [dacc2cee2b4c] for Preflow and
Circulation.
Peter Kovacs <kpeter@inf.elte.hu> [Wed, 29 Apr 2009 03:15:24 +0200] rev 687
Support negative costs and bounds in NetworkSimplex (#270)
* The interface is reworked to support negative costs and bounds.
- ProblemType and problemType() are renamed to
SupplyType and supplyType(), see also #234.
- ProblemType type is introduced similarly to the LP interface.
- 'bool run()' is replaced by 'ProblemType run()' to handle
unbounded problem instances, as well.
- Add INF public member constant similarly to the LP interface.
* Remove capacityMap() and boundMaps(), see also #266.
* Update the problem definition in the MCF module.
* Remove the usage of Circulation (and adaptors) for checking feasibility.
Check feasibility by examining the artifical arcs instead (after solving
the problem).
* Additional check for unbounded negative cycles found during the
algorithm (it is possible now, since negative costs are allowed).
* Fix in the constructor (the value types needn't be integer any more),
see also #254.
* Improve and extend the doc.
* Rework the test file and add test cases for negative costs and bounds.
Alpar Juttner <alpar@cs.elte.hu> [Wed, 29 Apr 2009 16:55:27 +0100] rev 686
Merge
Akos Ladanyi <ladanyi@tmit.bme.hu> [Tue, 28 Apr 2009 11:25:47 +0100] rev 685
Check the version number in FindGLPK (#277)
Akos Ladanyi <ladanyi@tmit.bme.hu> [Mon, 27 Apr 2009 18:05:04 +0100] rev 684
Add GLPK_ROOT_DIR variable to FindGLPK (#277)
Akos Ladanyi <ladanyi@tmit.bme.hu> [Tue, 28 Apr 2009 11:55:43 +0100] rev 683
Link libm and libpthread if using CPLEX (#277)
Akos Ladanyi <ladanyi@tmit.bme.hu> [Mon, 27 Apr 2009 18:03:18 +0100] rev 682
Add CPLEX_ROOT_DIR variable to FindCPLEX (#277)
Akos Ladanyi <ladanyi@tmit.bme.hu> [Tue, 28 Apr 2009 14:47:25 +0100] rev 681
Look for COIN libraries with and without the lib prefix too (#277)
This is necessary because on Windows when built using autotools the COIN
libraries are named in UNIX style, i.e. libCbc.lib insetad of Cbc.lib.
Alpar Juttner <alpar@cs.elte.hu> [Wed, 29 Apr 2009 15:54:30 +0100] rev 680
Merge
Alpar Juttner <alpar@cs.elte.hu> [Wed, 29 Apr 2009 15:52:08 +0100] rev 679
Merge
Akos Ladanyi <ladanyi@tmit.bme.hu> [Tue, 28 Apr 2009 16:44:48 +0100] rev 678
Remove superfluous HAVE_CONFIG_H (#278)
Akos Ladanyi <ladanyi@tmit.bme.hu> [Tue, 28 Apr 2009 16:49:57 +0100] rev 677
Add cbc.h to lemon/Makefile.am (#279)
Balazs Dezso <deba@inf.elte.hu> [Tue, 28 Apr 2009 12:54:59 +0200] rev 676
Fix Makefile.am EXTRA_DIST (#276)
Alpar Juttner <alpar@cs.elte.hu> [Tue, 28 Apr 2009 14:01:00 +0100] rev 675
Merge
Akos Ladanyi <ladanyi@tmit.bme.hu> [Tue, 28 Apr 2009 13:51:34 +0100] rev 674
Merge and extend the fix of #275
Alpar Juttner <alpar@cs.elte.hu> [Sun, 26 Apr 2009 16:36:23 +0100] rev 673
Merge
Peter Kovacs <kpeter@inf.elte.hu> [Sun, 26 Apr 2009 16:44:53 +0200] rev 672
Modify the interface of MinCostArborescence + improvements (#267)
- Rename arborescenceValue() to arborescenceCost().
- Rename DefXyz template named paramaters to SetXyz.
- Rearrange public functions (for better doc).
- Doc improvements.
- Extend the test file with interface checking.
Alpar Juttner <alpar@cs.elte.hu> [Sat, 25 Apr 2009 17:51:09 +0100] rev 671
Merge
Peter Kovacs <kpeter@inf.elte.hu> [Sat, 25 Apr 2009 02:12:41 +0200] rev 670
Modify the interface of Suurballe (#266, #181)
- Move the parameters s and t from the constructor to the run()
function. It makes the interface capable for multiple run(s,t,k)
calls (possible improvement in the future) and it is more similar
to Dijkstra.
- Simliarly init() and findFlow(k) were replaced by init(s) and
findFlow(t,k). The separation of parameters s and t is for the
future plans of supporting multiple targets with one source node.
For more information see #181.
- LEMON_ASSERT for the Length type (check if it is integer).
- Doc improvements.
- Rearrange query functions.
- Extend test file.
Peter Kovacs <kpeter@inf.elte.hu> [Sat, 25 Apr 2009 18:25:59 +0200] rev 669
Support infinite bounds in Circulation + fixes (#270, #266)
- Support infinite capacities.
- Bug fix in upperMap().
- Fixes and improvements in the documentation.
Akos Ladanyi <ladanyi@tmit.bme.hu> [Thu, 23 Apr 2009 07:30:40 +0100] rev 668
FindCOIN for CMake (#256)
Akos Ladanyi <ladanyi@tmit.bme.hu> [Thu, 23 Apr 2009 07:29:50 +0100] rev 667
FindCPLEX for CMake (#256)
Akos Ladanyi <ladanyi@tmit.bme.hu> [Thu, 23 Apr 2009 07:28:56 +0100] rev 666
FindGLPK improvements (#256)
Alpar Juttner <alpar@cs.elte.hu> [Fri, 24 Apr 2009 12:12:14 +0100] rev 665
Merge
Peter Kovacs <kpeter@inf.elte.hu> [Fri, 24 Apr 2009 11:54:48 +0200] rev 664
Fix and uniform the usage of Graph and Parent typedefs (#268)
- Rename Graph typedefs to GraphType in the implementation of graph
maps and MapExtender to prevent conflicts (especially using VS).
They are not public.
- Make Parent typedefs private in all classes.
- Replace Digraph with Graph in some places
(fix faulty renamings of the script).
- Use Graph and Digraph typedefs (more) consequently.
Peter Kovacs <kpeter@inf.elte.hu> [Fri, 24 Apr 2009 10:15:33 +0200] rev 663
VS compatibility fix (#268)
Peter Kovacs <kpeter@inf.elte.hu> [Fri, 24 Apr 2009 12:23:53 +0200] rev 662
Exploit the changes of #190 in MCF test file (#234, #190)
Peter Kovacs <kpeter@inf.elte.hu> [Fri, 24 Apr 2009 12:23:17 +0200] rev 661
Support LEQ and GEQ supply constraints in dimacs-solver (#234, #219)
Peter Kovacs <kpeter@inf.elte.hu> [Fri, 24 Apr 2009 12:22:06 +0200] rev 660
Bug fix in NetworkSimplex (#234)
Alpar Juttner <alpar@cs.elte.hu> [Thu, 23 Apr 2009 10:44:35 +0100] rev 659
Fix usage of sqrt() (#268)
Alpar Juttner <alpar@cs.elte.hu> [Tue, 21 Apr 2009 15:18:54 +0100] rev 658
Merge and fix
Peter Kovacs <kpeter@inf.elte.hu> [Fri, 17 Apr 2009 18:14:35 +0200] rev 657
Slightly modify the interface of Circulation and Preflow (#266)
in order to synchronize them to the interface of NetworkSimplex.
Circulation:
- The "delta" notation is replaced by "supply".
- lowerCapMap(), upperCapMap() are renamed to lowerMap() and upperMap().
- Value is renamed to Flow.
Preflow:
- Value is renamed to Flow.
Peter Kovacs <kpeter@inf.elte.hu> [Fri, 17 Apr 2009 18:04:36 +0200] rev 656
Support >= and <= constraints in NetworkSimplex (#219, #234)
By default the same inequality constraints are supported as by
Circulation (the GEQ form), but the LEQ form can also be selected
using the problemType() function.
The documentation of the min. cost flow module is reworked and
extended with important notes and explanations about the different
variants of the problem and about the dual solution and optimality
conditions.
Peter Kovacs <kpeter@inf.elte.hu> [Fri, 03 Apr 2009 18:59:15 +0200] rev 655
Support real types + numerical stability fix in NS (#254)
- Real types are supported by appropriate inicialization.
- A feature of the XTI spanning tree structure is removed to ensure
numerical stability (could cause problems using integer types).
The node potentials are updated always on the lower subtree,
in order to prevent overflow problems.
The former method isn't notably faster during to our tests.
Peter Kovacs <kpeter@inf.elte.hu> [Fri, 03 Apr 2009 13:46:16 +0200] rev 654
Separate types for flow and cost values in NetworkSimplex (#234)
Peter Kovacs <kpeter@inf.elte.hu> [Wed, 25 Mar 2009 21:37:50 +0100] rev 653
Support multiple run() calls in NetworkSimplex (#234)
Peter Kovacs <kpeter@inf.elte.hu> [Wed, 25 Mar 2009 15:58:44 +0100] rev 652
Rework the interface of NetworkSimplex (#234)
The parameters of the problem can be set with separate functions
instead of different constructors.
Peter Kovacs <kpeter@inf.elte.hu> [Tue, 24 Mar 2009 00:18:25 +0100] rev 651
Use XTI implementation instead of ATI in NetworkSimplex (#234)
XTI (eXtended Threaded Index) is an imporved version of the widely
known ATI (Augmented Threaded Index) method for storing and updating
the spanning tree structure in Network Simplex algorithms.
In the ATI data structure three indices are stored for each node:
predecessor, thread and depth. In the XTI data structure depth is
replaced by the number of successors and the last successor
(according to the thread index).