Department of Computer Engineering Khomeinishahr Branch, Islamic Azad University Khomeinishahr/Isfahan, Iran
Department of Computer Engineering, Arak University Arak, Iran
Zinc is the first modelling language which supports solver and technique independence. This means that a high level conceptual model can be automatically mapped into an appropriate low level design model for a specific solver or technique. To date, Zinc uses three different techniques to solve a model: Constraint Programming (CP), Local Search (LS), and Mixed Integer Programming (MIP). In this way, modellers can examine all solving techniques for their models and see which one gives them the best result. MIP solvers can only accept linear models. Therefore, to map a conceptual model to MIP solvers, the model must be linearized first. In this paper we explain the techniques used in Zinc to linearize high level data structures and expressions which may be appeared in a conceptual model. As a result, modellers can benefit of expressive modelling using nonlinear expressions as well as efficiency of MIP solvers.