Choco v4.10.7 Release Notes

Release Date: 2021-10-11 // over 2 years ago
  • Major features:

    • Simplify the way deltamonitors work. There is no need to freeze and unfreeze them before calling forEach... methods. But, a call to forEach... consumes all values stored.
    • ๐Ÿ›  Fix a bug related to incremental propagators, views and missing events.
    • STR2+ now deals with STAR tuples. Can be used when CT+ is not efficient (mainly due to very large domain size)
    • Resetting cutoff strategies now possible
    • ๐Ÿ”„ Change restart behavior to reset cutoff on solutions (can be disabled though, calling solver.setRestarts(..) API).
    • Display occurrences of variable types and occurrences of propagator types
    • ๐Ÿ‘€ Now IntDomainBest offers API to break ties (see Search.ValH.BLAST for an example).
    • โž• Add solver.defaultSolution() which creates lazily a solution recording everything, plugs it and returns it. This is helpful when a Solution object is required in many places.
    • ๐Ÿšง Modification of the management of expressions in order to reduce the number of created variables (WIP).
    • โž• Add IntVar.stream() that streams a variable's values (in increasing order)
    • โž• Add Search.ValH.BMIN and Search.ValH.BLAST
    • โž• Add DIMACS CNF parser (org.chocosolver.parser.mps.ChocoDIMACS)
    • โž• Add Logger (solver.log()) to trace from Model/Solver.
    • ๐Ÿ”„ Change some default settings
    • Revamp Settings, now is defined as a factory pattern + add Settings.dev() and Settings.prod() profiles.
    • Make half reification possible. Seed c.implies(b) or c.impliedBy(b) where c is a Constraint and b a BoolVar.
    • โšก๏ธ Update MiniZinc constraints definition + flatzinc files (for testing).
    • โšก๏ธ Update choco.msc (for MiniZinc IDE) + ./minizinc/README.md
    • โž• Add Argmax and Argmin constraints
    • โž• Add IfThenElse as a decomposed constraint
    • ๐Ÿ‘Œ Improvement of solver.findParetoFront()

    ๐Ÿš€ Deprecated API (to be removed in next release):

    Other closed issues and pull requests:

    ๐Ÿ‘€ See milestone 4.10.7

    ๐Ÿš€ Contributors to this release: