Problem submissions for the 2024 MiniZinc Challenge are currently open! See the call for problems for more information.

MiniZinc Challenge 2021 Results


The entrants for this year (with their descriptions, when provided):

In addition, the challenge organisers entered the following FlatZinc and MiniZinc implementations:

As per the challenge rules, these entries are not eligible for prizes, but do modify the scoring results.

Summary of Results

The results for the MiniZinc Challenge 2021 are

FixedOR-ToolsJaCoPSICStus Prolog
ParallelOR-ToolsPicatSATiZplus + Choco 4
OpenOR-ToolsPicatSATiZplus + Choco 4
Local SearchYuckOscaR/CBLS

Description of Results

All times are given in milliseconds.

A score of 0.0 indicates a worse answer in quality (worse objective, no proof of optimality, or no answer for satisfaction problems).
A score of 1.0 indicates a better solution in quality. When the quality is the same, the 1.0 purse is split with respect to time used.

If a promoted entry does not recognize an option (or states that it is just ignored), times and solutions from the previous category are used for scoring. The suffixes -fd, -free, -par or -open (for the parallel portfolio solver entered) at the end of the solver names indicate which configuration the solvers were run with.

The time limit includes both MiniZinc compilation and solving.

In the Status column:

  • S indicates that a solution was found,
  • C indicates that the search was complete,
  • ERR indicates an incorrect answer or the solver aborted,
  • ERR indicates that flattening aborted (time-out or out-of-memory),
  • UNK indicates that no answer was returned in the time limit.

Download all problems

All problems are available in a zipped tar-ball here.


Select a list of solvers and benchmarks and click on “Compute Results” to score the solvers against each other on the selected benchmarks. The entrants for each of the fd search, free search and parallel search categories can be selected with the corresponding buttons.

Solver selection: Problem selection:
Plot settings:
Note that plotting takes time.

Time axis scale:
Plot lines shape:
Area scoring settings:


Total per problem:

Solver Score Score Incomplete Score Area
Problem Solver Score Score IncompleteScore Area

Individual results:

Problem Instance Solver Status Time Objective Score Score Incomplete Score Area

Objective plots for each instance:

Problem Instance Plot

Score development over time:

Global constraint per model

The following table lists the global constraints used by each model in this year's challenge. In addition, the columns RC and SBC, respectively, indicate whether the model contains redundant or/and symmetry breaking constraints.

ProblemTypeKindRCSBCMiniZinc Globals
carpet-cuttingrealmincumulative, diffn
community-detection-rndcombimaxseq_precede_chain, global_cardinality_low_up
java-routingrealminall_different, element
mappingrealminbin_packing_load, count, maximum, network_flow_cost
p1f-pjscombiminall_different, circuit, inverse, lex_less
peacable_queenspuzzlemaxcount, regular, value_precede
physician-schedulingrealminglobal_cardinality_low_up, nvalue
seat-movingcombiminall_different, all_different_except_0
yumi-dynamicrealminall_equal, all_different, circuit, cumulative, diffn, increasing, table, value_precede, value_precede_chain

The files on this page are for MiniZinc version 2.5.5.