NEWS
author deba
Tue, 17 Oct 2006 10:50:57 +0000
changeset 2247 269a0dcee70b
parent 1948 9e9c035a08be
child 2265 5bb8867a9351
permissions -rw-r--r--
Update the Path concept
Concept check for paths

DirPath renamed to Path
The interface updated to the new lemon interface
Make difference between the empty path and the path from one node
Builder interface have not been changed
// I wanted but there was not accordance about it

UPath is removed
It was a buggy implementation, it could not iterate on the
nodes in the right order
Right way to use undirected paths => path of edges in undirected graphs

The tests have been modified to the current implementation
     1 2006-02-03  Version 0.5 Released
     2 	* New features:
     3 	  - Bfs/Dfs/Dijkstra
     4 	    + query functions for the next node/edge to be processed
     5 	    + visitor interface for dfs
     6 	  - topology.h: small functions for discovering graph topology
     7 	    + connected components, strongly connected components
     8 	    + bipartiteness testing
     9 	  - Shortest paths algorithms:
    10 	    bellman_ford.h, floyd_warshall.h, johnson.h
    11 	  - Euler tour iterator for directed and undirected graphs
    12 	  - Other algorithms:
    13 	    + dag_shortest_path.h
    14 	    + fredman_tarjan.h and prim.h for min cost trees
    15 	  - Bipartite graph concept and implementations
    16 	  - Graph maps:
    17 	    + template assign operator
    18 	    + specialized iterable bool map
    19 	    + potential difference map
    20 	    + NodeMatrixMap -- Matrix over the nodes
    21 	  - Maps:
    22 	    + IterableIntMap
    23 	  - GUI:
    24 	    + NewMap window in MapSelector
    25 	    + Algorithm window and some algorithms (eg. Kruskal) added
    26 	  - LemonReader:
    27 	    + exception on non-existent files
    28 	  - LP interface:
    29 	    + (Dual)Expr::simplify(double tolerance) added
    30 	    + getDual()
    31 	  - GraphToEps:
    32 	    + negateY() opt
    33 	    + male/female node shapes :)
    34 	    + correct %%BoundingBox handling
    35 	  - Tools:
    36 	    + Timer can be stop()ed and (re)start()ed
    37 	    + radix sort algorithm
    38 	    + tolerance.h for working with imprecise numbers
    39 	* Backward incompatibilities/changed namings:
    40 	  - Access functions of TimeStamp/Timer
    41 	  - Undir graph interface: findUEdge, ConUEdgeIt
    42 	  - pred -> predEdge renaming in search algorithms
    43 	  - SnapShot -> Snapshot in {List,Smart}Graph
    44 	  - NewEdgeSetAdaptor -> ListEdgeSet
    45 	  - LP: set{Obj,Row,Col}() -> {obj,row,col}()
    46 	  - "label" instead of "id" inside the LGF files
    47 	  - UndirGraph -> UGraph, UndirEdge* -> UEdge*
    48 	  - BipartiteGraph -> BpGraph, Lower/UpperNode* -> A/BNode*
    49 	* Bugfixes in
    50 	  - DFS
    51 	  - Preflow
    52 	  - x86_64 connected bugfixes (lemon_reader.h)
    53 	  - lp.h
    54 	* New demos, benchmarks and tools:
    55 	  - graph_orientation.cc: A thoroughly documented demo application
    56 	  - runningTimeTest(): a tool to measure running times more precisely
    57 	  - Demo for topology
    58 	  - counter.h: a tool to measure the number of steps of algorithms
    59 	  - Some useful scripts: check-compiler, check-integrity
    60 	* Other changes:
    61 	  - Demos and benchmarks are not built by default now. They can be
    62 	    enabled with the --enable-demo and --enable-benchmark
    63 	    configure flags.
    64 	  - GCC 4.0.3 and ICC 9.0 compatibility
    65 	  
    66 2005-08-27  Version 0.4 Released
    67 	* List of new features and changes	
    68 	  * Changed namings:
    69 	    Wrapper -> Adaptor
    70 	    kruskalEdgeMap() -> kruskal()
    71 	    kruskalEdgeMap_IteratorOut() -> kruskal()
    72 	  * BoundinBox<>
    73 	    * operator+=() -> add()
    74 	    + clear()
    75 	  + More and better graph I/O functionalities
    76 	  + High level uniform LP solver interface to CPLEX and GLKP
    77 	  * graphToEps()
    78 	    + Automatic node size and edge width scaling
    79 	    + Simple color palette tool (ColorSet)
    80 	  * Bfs/Dfs/Dijkstra
    81 	    + Step-by-step execution
    82 	    + Run from multiple sources
    83 	    + Used define stop condition
    84 	    + Improved "named parameters"
    85 	  * Preflow
    86 	    + Function type interface
    87 	    + Changed interface
    88 	  * ListGraph/SmarGraph
    89 	    + split() splits a node
    90 	    + SnapShot
    91 	  + New map adaptors
    92 	  + New convenience maps
    93 	    + IdMap, DescriptorMap
    94 	    + InDegMap, OutDegMap
    95 	    + XMap, YMap
    96 	  + Default graph maps are iterable
    97 	  + glemon: a graph editor
    98 	  + Some new demo codes added, the old ones got polished.
    99 	  * Better documentation
   100 	  * Several important bugfixes
   101 	  * Now lemon should compile without warnings with
   102 	    * gcc 3.3, 3.4, 4.0
   103 	    * Intel C++ Compiler v9.0 
   104 
   105 2005-03-19  Version 0.3.1 Released
   106 	* This release fixes a compilation failure bug under cygwin. 
   107 
   108 2005-02-21  Version 0.3 released
   109 	* List of new features and changes	
   110 	  * Redesigned Graph infrastructures
   111 	  + Standardized LEMON exceptions
   112 	  + Undirected Graph
   113 	  + Standard graph file format, input and output classes for it.
   114 	  * head() -> target(), tail() -> source()
   115 	  * Some standard namings have changes:
   116 	    ValueType -> Value, 
   117 	    KeyType -> Key,
   118 	    ReferenceType ->Reference,
   119 	    PointerType -> Pointer
   120 	  + GraphToEps: A simple graph drawer
   121 	  * Better documentation
   122 	
   123 2004-09-30  Version 0.2 released
   124