Numberjack

Numberjack is a modelling platform written in Python for constraint programming
and combinatorial optimization. The model is written in a high-level, intuitive
language and solved efficiently using one of the underlying solvers.