Random Binary Csp Generator - CHANGELOG J.I. van Hemert Version 1.8.0 - Added: Model RB, an improvement over Model B by Xu and Li that overcomes the problem of flawed variables in Model B. For this model the prediction of the number of solutions is extremely accurate - Changed: Default output format from List to Matrix. - Fixed: all source now works under GCC-3.3.2 according to the new include file conventions. Version 1.7.0 - Added: Model F, an improvement over Model E by MacIntyre et al. See the readme for the citation. Version 1.6.1 - Fixed bug: incorrect display of number of conflicts after using RemoveConflict(). Especially noticeable after loading a file in listformat. - Changes: small corrections and additions to the readme. Version 1.6 - Added new file format to store CSPs. Result is two save functions to save in either list or matrix format. Load procedure determines format automatically and does not need changing. - Old files cannot be read in using this library except when adding the following two lines to the top of the file: CSP generated with RandomCsp 1.5.0 matrixformat - Bug fix in counting conflict checks Version 1.5 - Added new application to analyze csp instances. - Updated documentation to comply with new features, filled in some missing information. - Added ability to generate bincsps with a new model, called G. It creates deceptive instances that are always solvable, but will be very difficult to solve by evolutionary algorithms. Version 1.4 - Changed names of prosser and dozier classes to corresponding model A and B names. - Changed names of default filenames to include model and less rubbish characters (- and =). - Brushed up documentation. Version 1.3 - Added a member function to CspC that makes it possible to ask if the instance has at least on solution. Version 1.2 - Changed the inheritance structure because the new model (model E) uses only three parameters. See the documentation (generated with Doc++) for the whole inheritance tree. Version 1.1 - Fixed a bug that caused the library to output problems harder then expected, i.e. more conflicts were produced then expected. - Added the documentation. The 'doc' directory contains a Makefile that produces the postscript files. For documentation of the implementation the program Doc++ is used. - Added an option to the randomcsp program to output a serie of generated problem files. The option is called '-p'. Version 1.0 - Fixed a nasty bug that caused the program to output less constraints then expected. Version 0.6.1 - Fixed a bug that caused garbage output in the error-message, when a invalid number of variables was given on the command line. - Changed Makefiles, they all use common makefiles now. - Removed version.h, is now in Makefile. Version 0.6 - Changed the CspC class, such that it now correctly does everythin symmetric. Things could go wrong if things like AddConstraint(v1, v2) and IsConstrain(v2, v1) were used. Version 0.5 - Added the function CspC::GetNumberOfConflicts (int []), return the number of violated conflicts given a solution. - Added the function CspC::IsValid (int []), checks if a solution to the csp problem violates conflicts. - Added the function CspC::LoadFromFile (char *), loads a previously saved CSP problem from a file. - Changed some basic 'int' types to 'unsigned int' in csp.h, for better error finding. - Changed directory structure of the package, there are threee subdirectories now: 'lib', contains the RandomCsp library; 'randomcsp', contains the RandomCsp program; 'checkcsp' contains the program to check solutions on CSPs. - Fixed the CspC::IsConstraint and CspC::IsConflict functions, they now handle v_i and v_j correctly when i > j, previously they would default to no constraint resp. no conflict. Version 0.4 - Fixed problem with the incorrect filename when using -c. - Changed Makefile, installation can now be done with 'make all'. - Added the function CspC::GetNumberOfVariables. - Added the function CspC::RemoveConstraint. - Added the function CspC::RemoveConflict. - Added the function CspC::IsDirty. - Added the function CspC::Reset. - Added the pure virtual function CspC::ProduceFilename. - Added the function RandomCsp::ProduceFilename. - Remove the iSeed1 and iSeed2 arguments from the constructor of RandomCspC. - Added the function RandomCspC::InitRandomGenerator. - Changed the random generator so it is static, if you initialise it with InitRandomGenerator, it stays so between the creation and destruction of RandomCspC objects. - Tested with Egcs (1.0.1) works fine, but it needed some alternations to the Makefile. Version 0.3 - Changed generated output filenames, see README for details. - Changed program arguments to switch arguments. Version 0.2 - Fixed a bug in number of constrains to create (variable 'c') in RandomCsp::ProduceProblem. - Added a copyconstructor for CspC. - Added the overloaded operator = to CspC. - Added some consts on the right places. - Added a pointerstructure to remove some extra variables. - Added owner string to ErrorC. Version 0.1 - First release. $Id: CHANGELOG,v 1.11 2004/02/16 16:06:51 jvhemert Exp $