alpar@1005
|
1 |
2010-10-21 Version 1.2.1 released
|
alpar@1005
|
2 |
|
alpar@1005
|
3 |
Bugfix release.
|
alpar@1005
|
4 |
|
alpar@1005
|
5 |
#366: Fix Pred[Matrix]MapPath::empty()
|
alpar@1005
|
6 |
#371: Bug fix in (di)graphCopy()
|
alpar@1005
|
7 |
The target graph is cleared before adding nodes and arcs/edges.
|
alpar@1005
|
8 |
|
alpar@1005
|
9 |
#364: Add missing UndirectedTags
|
alpar@1005
|
10 |
#368: Fix the usage of std::numeric_limits<>::min() in Network Simplex
|
alpar@1005
|
11 |
#372: Fix a critical bug in preflow
|
alpar@1005
|
12 |
|
alpar@962
|
13 |
2010-03-19 Version 1.2 released
|
alpar@962
|
14 |
|
alpar@962
|
15 |
This is major feature release
|
alpar@962
|
16 |
|
alpar@962
|
17 |
* New algorithms
|
alpar@962
|
18 |
* Bellman-Ford algorithm (#51)
|
alpar@962
|
19 |
* Minimum mean cycle algorithms (#179)
|
alpar@962
|
20 |
* Karp, Hartman-Orlin and Howard algorithms
|
alpar@962
|
21 |
* New minimum cost flow algorithms (#180)
|
alpar@962
|
22 |
* Cost Scaling algorithms
|
alpar@962
|
23 |
* Capacity Scaling algorithm
|
alpar@962
|
24 |
* Cycle-Canceling algorithms
|
alpar@962
|
25 |
* Planarity related algorithms (#62)
|
alpar@962
|
26 |
* Planarity checking algorithm
|
alpar@962
|
27 |
* Planar embedding algorithm
|
alpar@962
|
28 |
* Schnyder's planar drawing algorithm
|
alpar@962
|
29 |
* Coloring planar graphs with five or six colors
|
alpar@962
|
30 |
* Fractional matching algorithms (#314)
|
alpar@962
|
31 |
* New data structures
|
alpar@962
|
32 |
* StaticDigraph structure (#68)
|
alpar@962
|
33 |
* Several new priority queue structures (#50, #301)
|
alpar@962
|
34 |
* Fibonacci, Radix, Bucket, Pairing, Binomial
|
alpar@962
|
35 |
D-ary and fourary heaps (#301)
|
alpar@962
|
36 |
* Iterable map structures (#73)
|
alpar@962
|
37 |
* Other new tools and functionality
|
alpar@962
|
38 |
* Map utility functions (#320)
|
alpar@962
|
39 |
* Reserve functions are added to ListGraph and SmartGraph (#311)
|
alpar@962
|
40 |
* A resize() function is added to HypercubeGraph (#311)
|
alpar@962
|
41 |
* A count() function is added to CrossRefMap (#302)
|
alpar@962
|
42 |
* Support for multiple targets in Suurballe using fullInit() (#181)
|
alpar@962
|
43 |
* Traits class and named parameters for Suurballe (#323)
|
alpar@962
|
44 |
* Separate reset() and resetParams() functions in NetworkSimplex
|
alpar@962
|
45 |
to handle graph changes (#327)
|
alpar@962
|
46 |
* tolerance() functions are added to HaoOrlin (#306)
|
alpar@962
|
47 |
* Implementation improvements
|
alpar@962
|
48 |
* Improvements in weighted matching algorithms (#314)
|
alpar@962
|
49 |
* Jumpstart initialization
|
alpar@962
|
50 |
* ArcIt iteration is based on out-arc lists instead of in-arc lists
|
alpar@962
|
51 |
in ListDigraph (#311)
|
alpar@962
|
52 |
* Faster add row operation in CbcMip (#203)
|
alpar@962
|
53 |
* Better implementation for split() in ListDigraph (#311)
|
alpar@962
|
54 |
* ArgParser can also throw exception instead of exit(1) (#332)
|
alpar@962
|
55 |
* Miscellaneous
|
alpar@962
|
56 |
* A simple interactive bootstrap script
|
alpar@962
|
57 |
* Doc improvements (#62,#180,#299,#302,#303,#304,#307,#311,#331,#315,
|
alpar@962
|
58 |
#316,#319)
|
alpar@962
|
59 |
* BibTeX references in the doc (#184)
|
alpar@962
|
60 |
* Optionally use valgrind when running tests
|
alpar@962
|
61 |
* Also check ReferenceMapTag in concept checks (#312)
|
alpar@962
|
62 |
* dimacs-solver uses long long type by default.
|
alpar@962
|
63 |
* Several bugfixes (compared to release 1.1):
|
alpar@962
|
64 |
#295: Suppress MSVC warnings using pragmas
|
alpar@962
|
65 |
----: Various CMAKE related improvements
|
alpar@962
|
66 |
* Remove duplications from doc/CMakeLists.txt
|
alpar@962
|
67 |
* Rename documentation install folder from 'docs' to 'html'
|
alpar@962
|
68 |
* Add tools/CMakeLists.txt to the tarball
|
alpar@962
|
69 |
* Generate and install LEMONConfig.cmake
|
alpar@962
|
70 |
* Change the label of the html project in Visual Studio
|
alpar@962
|
71 |
* Fix the check for the 'long long' type
|
alpar@962
|
72 |
* Put the version string into config.h
|
alpar@962
|
73 |
* Minor CMake improvements
|
alpar@962
|
74 |
* Set the version to 'hg-tip' if everything fails
|
alpar@962
|
75 |
#311: Add missing 'explicit' keywords
|
alpar@962
|
76 |
#302: Fix the implementation and doc of CrossRefMap
|
alpar@962
|
77 |
#308: Remove duplicate list_graph.h entry from source list
|
alpar@962
|
78 |
#307: Bugfix in Preflow and Circulation
|
alpar@962
|
79 |
#305: Bugfix and extension in the rename script
|
alpar@962
|
80 |
#312: Also check ReferenceMapTag in concept checks
|
alpar@962
|
81 |
#250: Bugfix in pathSource() and pathTarget()
|
alpar@962
|
82 |
#321: Use pathCopy(from,to) instead of copyPath(to,from)
|
alpar@962
|
83 |
#322: Distribure LEMONConfig.cmake.in
|
alpar@962
|
84 |
#330: Bug fix in map_extender.h
|
alpar@962
|
85 |
#336: Fix the date field comment of graphToEps() output
|
alpar@962
|
86 |
#323: Bug fix in Suurballe
|
alpar@962
|
87 |
#335: Fix clear() function in ExtendFindEnum
|
alpar@962
|
88 |
#337: Use void* as the LPX object pointer
|
alpar@962
|
89 |
#317: Fix (and improve) error message in mip_test.cc
|
alpar@962
|
90 |
Remove unnecessary OsiCbc dependency
|
alpar@962
|
91 |
#356: Allow multiple executions of weighted matching algorithms (#356)
|
alpar@962
|
92 |
|
alpar@712
|
93 |
2009-05-13 Version 1.1 released
|
alpar@712
|
94 |
|
alpar@712
|
95 |
This is the second stable release of the 1.x series. It
|
alpar@712
|
96 |
features a better coverage of the tools available in the 0.x
|
alpar@712
|
97 |
series, a thoroughly reworked LP/MIP interface plus various
|
alpar@712
|
98 |
improvements in the existing tools.
|
alpar@712
|
99 |
|
alpar@712
|
100 |
* Much improved M$ Windows support
|
alpar@712
|
101 |
* Various improvements in the CMAKE build system
|
alpar@712
|
102 |
* Compilation warnings are fixed/suppressed
|
alpar@712
|
103 |
* Support IBM xlC compiler
|
alpar@712
|
104 |
* New algorithms
|
alpar@712
|
105 |
* Connectivity related algorithms (#61)
|
alpar@712
|
106 |
* Euler walks (#65)
|
alpar@712
|
107 |
* Preflow push-relabel max. flow algorithm (#176)
|
alpar@712
|
108 |
* Circulation algorithm (push-relabel based) (#175)
|
alpar@712
|
109 |
* Suurballe algorithm (#47)
|
alpar@712
|
110 |
* Gomory-Hu algorithm (#66)
|
alpar@712
|
111 |
* Hao-Orlin algorithm (#58)
|
alpar@712
|
112 |
* Edmond's maximum cardinality and weighted matching algorithms
|
alpar@712
|
113 |
in general graphs (#48,#265)
|
alpar@712
|
114 |
* Minimum cost arborescence/branching (#60)
|
alpar@712
|
115 |
* Network Simplex min. cost flow algorithm (#234)
|
alpar@712
|
116 |
* New data structures
|
alpar@712
|
117 |
* Full graph structure (#57)
|
alpar@712
|
118 |
* Grid graph structure (#57)
|
alpar@712
|
119 |
* Hypercube graph structure (#57)
|
alpar@712
|
120 |
* Graph adaptors (#67)
|
alpar@712
|
121 |
* ArcSet and EdgeSet classes (#67)
|
alpar@712
|
122 |
* Elevator class (#174)
|
alpar@712
|
123 |
* Other new tools
|
alpar@712
|
124 |
* LP/MIP interface (#44)
|
alpar@712
|
125 |
* Support for GLPK, CPLEX, Soplex, COIN-OR CLP and CBC
|
alpar@712
|
126 |
* Reader for the Nauty file format (#55)
|
alpar@712
|
127 |
* DIMACS readers (#167)
|
alpar@712
|
128 |
* Radix sort algorithms (#72)
|
alpar@712
|
129 |
* RangeIdMap and CrossRefMap (#160)
|
alpar@712
|
130 |
* New command line tools
|
alpar@712
|
131 |
* DIMACS to LGF converter (#182)
|
alpar@712
|
132 |
* lgf-gen - a graph generator (#45)
|
alpar@712
|
133 |
* DIMACS solver utility (#226)
|
alpar@712
|
134 |
* Other code improvements
|
alpar@712
|
135 |
* Lognormal distribution added to Random (#102)
|
alpar@712
|
136 |
* Better (i.e. O(1) time) item counting in SmartGraph (#3)
|
alpar@712
|
137 |
* The standard maps of graphs are guaranteed to be
|
alpar@712
|
138 |
reference maps (#190)
|
alpar@712
|
139 |
* Miscellaneous
|
alpar@712
|
140 |
* Various doc improvements
|
alpar@712
|
141 |
* Improved 0.x -> 1.x converter script
|
alpar@712
|
142 |
|
alpar@712
|
143 |
* Several bugfixes (compared to release 1.0):
|
alpar@712
|
144 |
#170: Bugfix SmartDigraph::split()
|
alpar@712
|
145 |
#171: Bugfix in SmartGraph::restoreSnapshot()
|
alpar@712
|
146 |
#172: Extended test cases for graphs and digraphs
|
alpar@712
|
147 |
#173: Bugfix in Random
|
alpar@712
|
148 |
* operator()s always return a double now
|
alpar@712
|
149 |
* the faulty real<Num>(Num) and real<Num>(Num,Num)
|
alpar@712
|
150 |
have been removed
|
alpar@712
|
151 |
#187: Remove DijkstraWidestPathOperationTraits
|
alpar@712
|
152 |
#61: Bugfix in DfsVisit
|
alpar@712
|
153 |
#193: Bugfix in GraphReader::skipSection()
|
alpar@712
|
154 |
#195: Bugfix in ConEdgeIt()
|
alpar@712
|
155 |
#197: Bugfix in heap unionfind
|
alpar@712
|
156 |
* This bug affects Edmond's general matching algorithms
|
alpar@712
|
157 |
#207: Fix 'make install' without 'make html' using CMAKE
|
alpar@712
|
158 |
#208: Suppress or fix VS2008 compilation warnings
|
alpar@712
|
159 |
----: Update the LEMON icon
|
alpar@712
|
160 |
----: Enable the component-based installer
|
alpar@712
|
161 |
(in installers made by CPACK)
|
alpar@712
|
162 |
----: Set the proper version for CMAKE in the tarballs
|
alpar@712
|
163 |
(made by autotools)
|
alpar@712
|
164 |
----: Minor clarification in the LICENSE file
|
alpar@712
|
165 |
----: Add missing unistd.h include to time_measure.h
|
alpar@712
|
166 |
#204: Compilation bug fixed in graph_to_eps.h with VS2005
|
alpar@962
|
167 |
#214,#215: windows.h should never be included by LEMON headers
|
alpar@712
|
168 |
#230: Build systems check the availability of 'long long' type
|
alpar@712
|
169 |
#229: Default implementation of Tolerance<> is used for integer types
|
alpar@712
|
170 |
#211,#212: Various fixes for compiling on AIX
|
alpar@712
|
171 |
----: Improvements in CMAKE config
|
alpar@712
|
172 |
- docs is installed in share/doc/
|
alpar@712
|
173 |
- detects newer versions of Ghostscript
|
alpar@712
|
174 |
#239: Fix missing 'inline' specifier in time_measure.h
|
alpar@712
|
175 |
#274,#280: Install lemon/config.h
|
alpar@712
|
176 |
#275: Prefix macro names with LEMON_ in lemon/config.h
|
alpar@712
|
177 |
----: Small script for making the release tarballs added
|
alpar@712
|
178 |
----: Minor improvement in unify-sources.sh (a76f55d7d397)
|
alpar@712
|
179 |
|
alpar@534
|
180 |
2009-03-27 LEMON joins to the COIN-OR initiative
|
alpar@534
|
181 |
|
alpar@534
|
182 |
COIN-OR (Computational Infrastructure for Operations Research,
|
alpar@534
|
183 |
http://www.coin-or.org) project is an initiative to spur the
|
alpar@534
|
184 |
development of open-source software for the operations research
|
alpar@534
|
185 |
community.
|
alpar@534
|
186 |
|
alpar@322
|
187 |
2008-10-13 Version 1.0 released
|
alpar@262
|
188 |
|
alpar@962
|
189 |
This is the first stable release of LEMON. Compared to the 0.x
|
alpar@962
|
190 |
release series, it features a considerably smaller but more
|
alpar@962
|
191 |
matured set of tools. The API has also completely revised and
|
alpar@962
|
192 |
changed in several places.
|
alpar@262
|
193 |
|
alpar@962
|
194 |
* The major name changes compared to the 0.x series (see the
|
alpar@322
|
195 |
Migration Guide in the doc for more details)
|
alpar@262
|
196 |
* Graph -> Digraph, UGraph -> Graph
|
alpar@262
|
197 |
* Edge -> Arc, UEdge -> Edge
|
alpar@962
|
198 |
* source(UEdge)/target(UEdge) -> u(Edge)/v(Edge)
|
alpar@962
|
199 |
* Other improvements
|
alpar@962
|
200 |
* Better documentation
|
alpar@962
|
201 |
* Reviewed and cleaned up codebase
|
alpar@962
|
202 |
* CMake based build system (along with the autotools based one)
|
alpar@962
|
203 |
* Contents of the library (ported from 0.x)
|
alpar@962
|
204 |
* Algorithms
|
alpar@962
|
205 |
* breadth-first search (bfs.h)
|
alpar@962
|
206 |
* depth-first search (dfs.h)
|
alpar@962
|
207 |
* Dijkstra's algorithm (dijkstra.h)
|
alpar@962
|
208 |
* Kruskal's algorithm (kruskal.h)
|
alpar@962
|
209 |
* Data structures
|
alpar@962
|
210 |
* graph data structures (list_graph.h, smart_graph.h)
|
alpar@962
|
211 |
* path data structures (path.h)
|
alpar@962
|
212 |
* binary heap data structure (bin_heap.h)
|
alpar@962
|
213 |
* union-find data structures (unionfind.h)
|
alpar@962
|
214 |
* miscellaneous property maps (maps.h)
|
alpar@962
|
215 |
* two dimensional vector and bounding box (dim2.h)
|
alpar@262
|
216 |
* Concepts
|
alpar@962
|
217 |
* graph structure concepts (concepts/digraph.h, concepts/graph.h,
|
alpar@262
|
218 |
concepts/graph_components.h)
|
alpar@962
|
219 |
* concepts for other structures (concepts/heap.h, concepts/maps.h,
|
alpar@962
|
220 |
concepts/path.h)
|
alpar@962
|
221 |
* Tools
|
alpar@962
|
222 |
* Mersenne twister random number generator (random.h)
|
alpar@962
|
223 |
* tools for measuring cpu and wall clock time (time_measure.h)
|
alpar@962
|
224 |
* tools for counting steps and events (counter.h)
|
alpar@962
|
225 |
* tool for parsing command line arguments (arg_parser.h)
|
alpar@962
|
226 |
* tool for visualizing graphs (graph_to_eps.h)
|
alpar@962
|
227 |
* tools for reading and writing data in LEMON Graph Format
|
alpar@262
|
228 |
(lgf_reader.h, lgf_writer.h)
|
alpar@262
|
229 |
* tools to handle the anomalies of calculations with
|
alpar@962
|
230 |
floating point numbers (tolerance.h)
|
alpar@262
|
231 |
* tools to manage RGB colors (color.h)
|
alpar@962
|
232 |
* Infrastructure
|
alpar@962
|
233 |
* extended assertion handling (assert.h)
|
alpar@962
|
234 |
* exception classes and error handling (error.h)
|
alpar@962
|
235 |
* concept checking (concept_check.h)
|
alpar@962
|
236 |
* commonly used mathematical constants (math.h)
|