01/15/1999 |
Start of the project. |
06/01/1999 |
First version of the library under Windows (with Cygwin and Borland C++ 5.02) and AIX. Only the standard layer and the graph structure. |
09/01/1999 |
Basic algorithms for the minimum cost tension problem with linear costs. |
11/01/1999 |
- Tools to manage files (Cut File, Dos Unix, Remove Files and Show Dir).
- Full portability under AIX, Linux and Windows (with Cygwin, Borland C++ 5.02 and C++ Builder 4). |
12/01/1999 |
- First release of the library on the Web.
- Tools for the semi automatic generation of the documentation (Make Doc) and the makefile of the library (Build Makefile). |
01/15/2000 |
An algorithm for the minimum cost tension problem with convex costs. |
03/01/2000 |
Basic algorithms to solve classical problems: connectivity, minimum spanning tree, shortest path, maximum flow... |
05/01/2000 |
- A tool to generate random graphs and problems (Build Graph).
- Tools to solve these problems (Solve Graph and Solve Tension). |
08/01/2000 |
A tool to build the layout of a graph in the EPS format (Graph Layout). |
09/01/2000 |
A tool to analyze and extract series of tests on algorithms that solve graph problems (Analyze Result). |
11/01/2000 |
- Imperceptible changes in many modules that increase the speed of some algorithms.
- A new section in the documentation that explains how to use the library. |
02/01/2001 |
- A new algorithm for the minimum cost tension problem with linear costs in serial-parallel graphs.
- Modification of the Graph Layout tool: an algorithm to build the layout of a binary tree. |
03/01/2001 |
Basic algorithms to generate and solve the minimum cost flow problem. |
04/04/2001 |
- A cost-scaling algorithm for the minimum cost flow problem.
- Another basic algorithm for shortest path problems. |
04/27/2001 |
A new algorithm for the minimum cost tension problem with linear costs based on the cost-scaling algorithm for the minimum cost flow problem. |
05/15/2001 |
- A tool to encrypt files (Encrypt).
- A tool to rename files (Renum Files). |
06/02/2001 |
A new initialization and termination mechanism for the modules of the library. It makes the DLL version of the library fully operational. Warning: there are major changes in the way of compiling and using the library. |
06/25/2001 |
- End of the testing with Borland C++ 5.02 and C++ Builder 4. They are replaced by Borland C++ 5.5 freely available here.
- A new algorithm to find a compatible tension in a graph that must significantly increase the speed of several algorithms. |
08/29/2001 |
- A new display mechanism: instead of non implemented functions, there is an abstract class. Warning: there are changes in the way of initializing the library.
- A module to load a dynamic library at run time.
- A module to use the Java Native Interface (JNI). For the moment it only provides the load of a Java Virtual Machine. |
11/24/2001 |
- Encapsulation of the library in a namespace and a folder, add of a prefix to the library names. This should avoid the clash of names. Warning: there are minor changes in the way of using the library.
- A module to manipulate threads.
- Modification of the makefile and the documentation generation to deal with Java modules in the library.
- Jirk++ mechanism to manipulate Java classes directly in C++. Documentation available . |
01/04/2002 |
- Correction in the random generation of serial-parallel graphs with disruption.
- A new algorithm to decompose a graph into serial-parallel components. |
01/26/2002 |
A new linear solver wrapper to use the GNU Linear Programming Kit. |
03/11/2002 |
- Improvement of the accuracy of the error and debugging reports.
- A new algorithm for the minimum cost tension problem.
- An algorithm to find a topological ordering of the nodes of a graph. |
06/09/2002 |
- Mutex mechanism in the thread module.
- First release of the library with thread-safety. |
11/10/2002 |
- Improvement of the serial-parallel decomposition algorithms for graphs.
- Correction in the aggregation/reconstruction algorithm for the minimum cost tension problem.
- Move of the B++ Library official site to Nawouak.net. |
05/30/2003 |
- Full compatibility with GCC 3 compilers.
- Improvement in the search of independent cycles, so they can be shorter.
- Data structure and random generation for the minimum cost discrete tension problem.
- CGI interface to use Build Graph online, available . |
08/15/2003 |
- Modification of the GNU Linear Programming Kit wrapper to use the last 4.0 version.
- Basic heuristics to solve the minimum binary cost tension problem.
- New facilities in the decomposition of serial-parallel graphs.
- Improvement of the reconstruction method for the minimum cost tension problem.
|
11/05/2003 |
Full compatibility with Microsoft Visual C++ 7 compiler. Thanks to Toni Rönkkö for porting the POSIX "dirent" interface to this compiler. |
03/02/2004 |
- Minor changes in the Environment module: any object with an output stream operator can be displayed now.
- An exact algorithm to solve the minimum binary cost tension problem on serial-parallel graphs. |
05/08/2004 |
- Full compatibility with GCC 3.2 compiler.
- Improvement of the cutting algorithm to solve the minimum binary cost tension problem (aggregation used to solve the subproblem on a cycle).
- A wrapper for the CPLEX Callable Library (version 8.0). |
11/27/2004 |
- A module for basic statistics.
- Pool facilities to speed up the allocation and deallocation of bunches of objects.
- New keywords for code generation (especially to design patterns for methods or functions with variable arguments).
- Mechanism and new keywords to provide identification for classes and methods. Introduction of the notion of method slot.
- Demangling for symbol and type strings provided by the RTTI mechanism (for GCC compilers only). Thanks to Carlo Wood for the source code.
- A framework called B++ Simulator for discrete-event visual simulation. |
12/14/2004 |
- A module to make extendable data structures in Java.
- An extendable graph structure for Java. |
01/17/2005 |
- Rewriting of the generic make_pair function of the STL (for efficiency reasons). A specific version dedicated to the STL map structure is proposed.
- A Java wrapper to use Solve Tension in the HyperProp software. |
02/16/2005 |
- Documentation on the B++ Simulator framework, available .
- A standalone package for Solve Tension, its name is B++ Tension Solver. |
10/02/2005 |
- Full compatibility with GCC 3.4 compiler.
- Best portability of the method slot mechanism. |
12/29/2005 |
- Full compatibility with Borland C++ 5.6.4 compiler.
- Changes in the Jirk++ mechanism to support Java 1.5. |
02/23/2006 |
- The library is now fully deterministic: the execution only depends on the seed of the random generator (which is portable).
- Performance improvement of the graph and linear system structures.
- Modification of the GNU Linear Programming Kit wrapper to use the last 4.9 version. |
09/08/2007 |
- With late Cygwin versions, JNI and Cygwin are incompatible: impossible to load into Java a DLL that is linked against cygwin1.dll . Warning: the MinGW compiler must be used instead of the Cygwin compiler until this issue is corrected. The binary code of the B++ Tools, provided , is now built with the MinGW compiler. It is advised to update if you use them through JNI.
- A contribution module to replace low-level string functions such as sprintf and sscanf .
- A module to manage the B++ Library environment in Java. Warning: there are minor changes in the way of loading the library into Java. Check the documentation on for details (section "Native Methods").
- Modification of the GNU Linear Programming Kit wrapper to use the last 4.18 version. |
08/12/2009 |
- Full compatibility with GCC 4.1.2 compiler.
- Full compatibility with Borland/CodeGear 6.10 compiler.
- Full compatibility with Microsoft Visual C++ 9 compiler.
- A module to serialize objects.
- A multijob version of the makefile.
- Modification of the CPLEX Callable Library wrapper to use the 11.0 version. |
07/12/2016 |
- Full compatibility with GCC 4.8.3 compiler.
- Full compatibility with Borland/Embarcadero 7.20 compiler.
- Full compatibility with Microsoft Visual C++ 14 compiler.
- Minor changes to support Java 1.8.
- Modification of the GNU Linear Programming Kit wrapper to use the 4.54 version. |