Guido Tack: libmzn - a prototype implementation of a modular compilation architecture for MiniZinc
Guido Tack has released libmzn, a prototype implementation of a modular compilation architecture for MiniZinc.
From the presentation:
From the presentation:
This project proposes to develop an infrastructure for constraint modeling based on MiniZinc, rather than just a modeling language. This will ensure a greater impact of MiniZinc, and a better chance of it being accepted as a standard.
The infrastructure will feature Application Programming Interfaces (APIs) in C and C++ for both modeling and solving. This architecture will make it easy to integrate the MiniZinc toolchain into applications and general-purpose programming languages, as well as provide a direct interface for solver backends.
libmzn
is presented in the position paper (to be presented at the 2011 MiniZinc workshop): libmzn - A modular CP infrastructure based on MiniZinc (PDF). The abstract:
The main obstacle to a successful integration of MiniZinc models within general applications is the monolithic, text-based interface to the MiniZinc toolchain. Both the frontend and the individual solver backends require a custom, error-prone implementation of data exchange via text files.
This position paper proposes to develop an infrastructure for constraint modeling based on MiniZinc, rather than just a modeling language. This will ensure a greater impact of MiniZinc, and a better chance of it being accepted as a standard. Such an infrastructure could be based on a modular library for MiniZinc, called libmzn, featuring Application Programming Interfaces (APIs) in C and C++ for both modeling and solving. This architecture will make it easy to integrate the MiniZinc toolchain into applications and general-purpose programming languages, as well as provide a direct interface for solver backends.