Release 1.1.0 of Oct-2012

  • Improved handling of optimization process:
    • The solver’s method “findOptimalSolution” now has an optional third parameter:
      public Solution findOptimalSolution(Objective objective, Var objectiveVar, OptimizationStrategy optStrategy);
      where “optStrategy” can be one of 3 standard constants:

      • OptimizationStrategy.NATIVE – defined by a concrete implementation
      • OptimizationStrategy.BASIC – provided by a common JSR-331 implementation using a solution operator
      • OptimizationStrategy.DICHOTOMIZE – provided by a common JSR-331 implementation
  • The optimization process may be controlled by two different time limits set by the following methods of the interface Solver:
    • setTimeLimit(millis) – a number of milliseconds for a search of one solution
    • setTimeLimitGlobal(millis) – a number of milliseconds for the entire search of an optimal solution
  • The TCK now contains an additional 4 packages:
    • org.jcp.jsr331.test – mandatory JUnit tests that check compliance of different CP solvers to the standard
    • org.jcp.jsr331.samples – various constraint satisfaction and optimization problems that demonstrate the use of JSR-331
    • org.jcp.jsr331.linear.samples – various linear optimization problems that may be executed with any CP or LP solvers
    • org.jcp.jsr331.hakan – a collection of test problems contributed by Hakan Kjellerstrand
Advertisement