MINION

Fast, Scalable Constraint Solving

MINION is a new constraint solver, which is very fast and scales well as problem size increases. Empirical results on standard benchmarks show orders of magnitude performance gains over state-of-the-art constraint toolkits. These gains increase with problem size --- MINION delivers scalable constraint solving.

MINION is a general-purpose constraint solver, with an expressive input language based on the common constraint modelling device of matrix models. Focussing on matrix models supports a lean, highly-optimised implementation. This contrasts with current constraint toolkits, which, in order to provide ever more modelling and solving options, have become progressively more complex at the cost of both performance and usability.

MINION is a black box from the user point of view, deliberately providing few options. This, combined with its raw speed, makes MINION a substantial step towards Puget's `Model and Run' constraint solving paradigm.

MINION is still in the beta stage of development. Bugs can be expected. However we endeavour to fix bugs promptly after they have been reported.

If you wish to cite MINION in an academic paper, the best reference at the minute is our recently accepted paper at ECAI 06: details are on the references page. We have no preference on the typography of the word MINION.

Minion is Open Source software, licensed under GNU General Public License Version 2. Minion is maintained as a SourceForge project. There is a MINION mailing list, details of which can be found at: https://mail.cs.st-andrews.ac.uk/mailman/listinfo/mug

If you find MINION useful we would be very interested to hear of your applications. Please drop us an email on the mailing list or post something on our guestbook.

News

  • September 28, 2009.

    We have added first case studies to the new applications page.

  • August 21, 2009. Minion 0.9 has been released.

    Changelog:

    • New features:
      • added ability to abort and resume runs
      • added lex[rv] (which achieves GAC with repeated variables) and lex[quick] constraints
      • added -cpulimit flag to limit CPU rather than wall time
    • Misc improvements:
      • various source code cleanups
      • converted the benchmarks to Minion 3 format
      • speedup for input file parsing
      • added support for Windows without Cygwin
      • reduced memory usage

  • August 19, 2009. We are officially retiring the Subversion repository. The source code can be found in our new Git repository from now on.
  • April 06, 2009. Minion 0.8.1 has been released.

    There are some changes and bugfixes, for details please see the news item.

  • March 19, 2009. Our Google Summer of Code application has been rejected.
  • March 11, 2009. We have applied to be a Google Summer of Code mentoring organisation. Please take a look at our ideas page.
  • February 18, 2009. Minion 0.8 has been released.

    There are numerous changes and bugfixes, for details please see the changelog.

  • June 30, 2008. Release Candidate 1 of MINION 0.7.0 is available. There are numerous significant changes and also a greatly expanded manual including tutorial material. It can be downloaded from our download page.
  • May 17, 2008. MINION 0.6.0 has been released. The major changes are
    • Bugs fixed:
    • -check was always enabled. This slowed down problems which found many solutions (hundreds per second)
    • New features:
    • hamming, watchedvecexists_less, watchedvecexists_and, negativetable.
    • Faster performance at root node.
    • New algorithm for solving problems whose solutions for a group.
    • Accept gzipped and bzip2ed input.
    • Better error messages from invalid command line options or input files.
    • -check now faster when activated.
    • Documentation improvements.
    • Many internal improvements and cleanups.
  • February 8, 2008. MINION 0.5.1 has been released. The major changes are
    • The windows version of Minion now requires 'cygwin'.
    • The 'gacelement' constraint has been renamed 'gacelement-deprecated'.
    • Several bugfixes and minor improvements.
    • You can read more at the detailed changelog.
  • January 17, 2008. MINION 0.5.0 has been released. The major changes are
    • considerable stability improvements
    • several bugfixes
    • new, enhanced input format
  • May 9, 2007 The current svn-version of MINION contains a translator that creates MINION instances from Essence' problem models. More information about this translator (including examples) can be found here.

[ Home | Download | Benchmarks | Bugs | Manual | Case studies | References | People | Guestbook ]


Minion is hosted by sourceforge.net
SourceForge.net Logo