NEWS
author Peter Kovacs <kpeter@inf.elte.hu>
Sun, 23 Aug 2009 11:13:21 +0200
changeset 738 456fa5bc3256
parent 507 4f3ea453eb90
child 881 87569cb5734d
permissions -rw-r--r--
Much better implementation for node splitting (#311)
in ListDigraph. This solution is the same as the one that
is used in SmartDigraph. It is much faster and does not
invalidate any iterator like the former implementation.
     1 2009-05-13 Version 1.1 released
     2 
     3         This is the second stable release of the 1.x series. It
     4         features a better coverage of the tools available in the 0.x
     5         series, a thoroughly reworked LP/MIP interface plus various
     6         improvements in the existing tools.
     7 
     8         * Much improved M$ Windows support
     9           * Various improvements in the CMAKE build system
    10           * Compilation warnings are fixed/suppressed
    11         * Support IBM xlC compiler
    12         * New algorithms
    13           * Connectivity related algorithms (#61)
    14           * Euler walks (#65)
    15           * Preflow push-relabel max. flow algorithm (#176)
    16           * Circulation algorithm (push-relabel based) (#175)
    17           * Suurballe algorithm (#47)
    18           * Gomory-Hu algorithm (#66)
    19           * Hao-Orlin algorithm (#58)
    20           * Edmond's maximum cardinality and weighted matching algorithms
    21             in general graphs (#48,#265)
    22           * Minimum cost arborescence/branching (#60)
    23           * Network Simplex min. cost flow algorithm (#234)
    24         * New data structures
    25           * Full graph structure (#57)
    26           * Grid graph structure (#57)
    27           * Hypercube graph structure (#57)
    28           * Graph adaptors (#67)
    29           * ArcSet and EdgeSet classes (#67)
    30           * Elevator class (#174)
    31         * Other new tools
    32           * LP/MIP interface (#44)
    33             * Support for GLPK, CPLEX, Soplex, COIN-OR CLP and CBC
    34           * Reader for the Nauty file format (#55)
    35           * DIMACS readers (#167)
    36           * Radix sort algorithms (#72)
    37           * RangeIdMap and CrossRefMap (#160)
    38         * New command line tools
    39           * DIMACS to LGF converter (#182)
    40           * lgf-gen - a graph generator (#45)
    41           * DIMACS solver utility (#226)
    42         * Other code improvements
    43           * Lognormal distribution added to Random (#102)
    44           * Better (i.e. O(1) time) item counting in SmartGraph (#3)
    45           * The standard maps of graphs are guaranteed to be
    46             reference maps (#190)
    47         * Miscellaneous
    48           * Various doc improvements
    49           * Improved 0.x -> 1.x converter script
    50 
    51         * Several bugfixes (compared to release 1.0):
    52           #170: Bugfix SmartDigraph::split()
    53           #171: Bugfix in SmartGraph::restoreSnapshot()
    54           #172: Extended test cases for graphs and digraphs
    55           #173: Bugfix in Random
    56                 * operator()s always return a double now
    57                 * the faulty real<Num>(Num) and real<Num>(Num,Num)
    58                   have been removed
    59           #187: Remove DijkstraWidestPathOperationTraits
    60           #61:  Bugfix in DfsVisit
    61           #193: Bugfix in GraphReader::skipSection()
    62           #195: Bugfix in ConEdgeIt()
    63           #197: Bugfix in heap unionfind
    64                 * This bug affects Edmond's general matching algorithms
    65           #207: Fix 'make install' without 'make html' using CMAKE
    66           #208: Suppress or fix VS2008 compilation warnings
    67           ----: Update the LEMON icon
    68           ----: Enable the component-based installer
    69                 (in installers made by CPACK)
    70           ----: Set the proper version for CMAKE in the tarballs
    71                 (made by autotools)
    72           ----: Minor clarification in the LICENSE file
    73           ----: Add missing unistd.h include to time_measure.h
    74           #204: Compilation bug fixed in graph_to_eps.h with VS2005
    75           #214,#215: windows.h should never be included by lemon headers
    76           #230: Build systems check the availability of 'long long' type
    77           #229: Default implementation of Tolerance<> is used for integer types
    78           #211,#212: Various fixes for compiling on AIX
    79           ----: Improvements in CMAKE config
    80                 - docs is installed in share/doc/
    81                 - detects newer versions of Ghostscript
    82           #239: Fix missing 'inline' specifier in time_measure.h
    83           #274,#280: Install lemon/config.h
    84           #275: Prefix macro names with LEMON_ in lemon/config.h
    85           ----: Small script for making the release tarballs added
    86           ----: Minor improvement in unify-sources.sh (a76f55d7d397)
    87 
    88 2009-03-27 LEMON joins to the COIN-OR initiative
    89 
    90         COIN-OR (Computational Infrastructure for Operations Research,
    91         http://www.coin-or.org) project is an initiative to spur the
    92         development of open-source software for the operations research
    93         community.
    94 
    95 2008-10-13 Version 1.0 released
    96 
    97 	This is the first stable release of LEMON. Compared to the 0.x
    98 	release series, it features a considerably smaller but more
    99 	matured set of tools. The API has also completely revised and
   100 	changed in several places.
   101 
   102 	* The major name changes compared to the 0.x series (see the
   103           Migration Guide in the doc for more details)
   104           * Graph -> Digraph, UGraph -> Graph
   105           * Edge -> Arc, UEdge -> Edge
   106 	  * source(UEdge)/target(UEdge) -> u(Edge)/v(Edge)
   107 	* Other improvements
   108 	  * Better documentation
   109 	  * Reviewed and cleaned up codebase
   110 	  * CMake based build system (along with the autotools based one)
   111 	* Contents of the library (ported from 0.x)
   112 	  * Algorithms
   113        	    * breadth-first search (bfs.h)
   114        	    * depth-first search (dfs.h)
   115        	    * Dijkstra's algorithm (dijkstra.h)
   116        	    * Kruskal's algorithm (kruskal.h)
   117     	  * Data structures
   118        	    * graph data structures (list_graph.h, smart_graph.h)
   119        	    * path data structures (path.h)
   120        	    * binary heap data structure (bin_heap.h)
   121        	    * union-find data structures (unionfind.h)
   122        	    * miscellaneous property maps (maps.h)
   123        	    * two dimensional vector and bounding box (dim2.h)
   124           * Concepts
   125        	    * graph structure concepts (concepts/digraph.h, concepts/graph.h,
   126               concepts/graph_components.h)
   127        	    * concepts for other structures (concepts/heap.h, concepts/maps.h,
   128 	      concepts/path.h)
   129     	  * Tools
   130        	    * Mersenne twister random number generator (random.h)
   131        	    * tools for measuring cpu and wall clock time (time_measure.h)
   132        	    * tools for counting steps and events (counter.h)
   133        	    * tool for parsing command line arguments (arg_parser.h)
   134        	    * tool for visualizing graphs (graph_to_eps.h)
   135        	    * tools for reading and writing data in LEMON Graph Format
   136               (lgf_reader.h, lgf_writer.h)
   137             * tools to handle the anomalies of calculations with
   138 	      floating point numbers (tolerance.h)
   139             * tools to manage RGB colors (color.h)
   140     	  * Infrastructure
   141        	    * extended assertion handling (assert.h)
   142        	    * exception classes and error handling (error.h)
   143       	    * concept checking (concept_check.h)
   144        	    * commonly used mathematical constants (math.h)