MiniZinc is a high-level modeling language for expressing constraint satisfaction and constraint optimization problems. It targets multiple constraint programming, mixed-integer, and SAT-based...
Pros
- Solver-independent models can target CP, MIP, and SAT backends
- Compact declarative syntax is well suited to scheduling and combinatorial problems
- Includes an IDE, standard library, tutorials, and benchmark suite
Cons
- Less suitable than mathematical modeling systems for large continuous optimization models
- Performance depends heavily on the selected backend solver
- Requires learning a domain-specific modeling language
Free and open source