MiniZinc Constraint Models

Library of reusable MiniZinc models for common scheduling, assignment, and packing problems.

MiniZinc is a high-level constraint modeling language that separates problem description from solver technology. This project collects reusable MiniZinc models for a range of standard combinatorial problem classes.

Included models:

  • Scheduling — job shop, flow shop, cumulative scheduling with resource constraints.
  • Assignment — generalized assignment, task allocation with skill requirements.
  • Packing — bin packing, knapsack variants, container loading.
  • Routing — vehicle routing with time windows, shortest path under constraints.

Each model is designed to be modular: problem data is separated from the constraint specification, making it straightforward to adapt to new instances. Where possible, models include multiple alternative formulations (e.g., with and without redundant constraints) to compare solver performance.

These models serve as a reference and starting point for larger industrial applications. They are also useful for benchmarking solver backends and understanding how different constraint representations affect search.