What's new in Minion 1.7
Jul 3, 2014
- Improvements:
- element_undefzero constraint
- alldiff_matrix constraint
- Minion now defaults to supporting 64-bit instead of 32-bit domains
- Handle some cases where wdeg caused minion to crash
- Update to support windows 8, latest visual studio and Mac OS X mavericks
- Remove dependancy on boost (instead require a C++11 compiler)
- Bugs which could result in incorrect answers:
- Correctly reject domains like {1..0}.
- Such domains would result in minion returning 'no solutions'. They now result in 'incorrect input'.
- reified haggisgac_stable would produce incorrect answers occasionally when
- the --preprocess flag was used.
- reified watchelement_undefzero would produce incorrect answers occasionally
- Removed functionality:
- Minion will now no longer take gz and bz2 files and auto-uncompress them. You can emulate this functionality by doing 'gunzip -c file.gz | minion --'
New in Minion 1.6.1 (Jul 3, 2014)
- Improvements:
- Fixed a slowdown in reification of equality constraints
New in Minion 1.6 (Jul 3, 2014)
- Bugfixes:
- Fix an occasional crash when minion exits (this only happened after all output was produced.)
- Improvements:
- Added an implementation of the shortstr2 propagator (as published in IJCAI 2013), and SHORTTUPLES, which is a compressed form of tuples used by ShortSTR2 and some other propagators.
- Added the command line option '-map-long-short' to automatically compress standard tuples into short tuples, for use with shortstr2 and haggisgac (also published in IJCAI 2013)
- Added an implementation of the mddc, negativemddc and str2plus propagators.
- All constraints now work with negative values, in particular pow, div and mod.
- Minion can now support 64-bit domains on both 32-bit and 64-bit processors. Enable with the DOMAINS64 compile time option to CMake.
- Other changes:
- Many old pieces of code were cleaned up or deleted.
New in Minion 0.8.1 (Apr 13, 2009)
- Improvements:
- the code was cleaned up and modularised to be more easily understandable and modifiable
- more information is made available in INFO mode
- some minor bugfixes
- Performance enhancements:
- bound checks for Boolean variables are more efficient
- input files are parsed faster
- Other changes:
- the build system now provides make targets to run the tests
- builds are not done in the main direcotry anymore, but in a separate directory (meaning that you can have as many different builds of the same source as you like)
- better Cygwin support
New in Minion 0.8.0 (Feb 19, 2009)
- The following bugs, which could have produced incorrect answers, have been fixed:
- The 'pow' constraint was confused by domains which contained '0'.
- Using integers close to 2^32 could occasionally produce incorrect results.
- The table constraint containing 1 tuple over no variables was considered false, not true.
- The following bugs, which could not produce incorrect errors, have been fixed:
- Arrays containing no variables crashed Minion.
- Many constraints crashed when given arrays of length 0.
- Table constraints caused crashes when the length of tuples is not equal to the number of variables.
- The following improvements have been made to Minion, some of which have been in previous versions but are now correctly documented:
- All constraints can now be reified.
- An efficient method of calculating the 'or' of a list of constraints has been added.
- Efficient implementations of alldiff and gcc (global cardinality constraint) have been added.
- A number of other binary and unary constraints have been added.
- There is now a rudimentary visualiser which shows (in a matrix) the domains/assignments of variables during search.
- The Minion build system now uses 'cmake'.
- The documentation has been improved.