LinZinc: A Library for Linearizing Zinc Models

Iranian Journal of Science and Technology, Transactions of Electrical Engineering(2016)

引用 1|浏览5
暂无评分
摘要
Zinc is a modeling language in which a conceptual model is automatically mapped into different design models using well-known solving techniques: constraint programming, mathematical methods, and local search. As a result, Zinc is solver and technique independent. Since original conceptual models may be nonlinear, mapping to linear solvers requires the models to be linearized first. In this paper, we introduce LinZinc, a new library for Zinc which includes necessary functions to linearize high-level data structures and expressions in Zinc models. The interesting point is that, thanks to the extensibility of Zinc, LinZinc is written in Zinc itself instead of being implemented in the compiler. We have used LinZinc for linearizing a set of well-known nonlinear models. The experimental results show that on the one hand, there is no significant overhead in linearizing models and, on the other hand, the linearized models are sometimes faster than the original models. Using the proposed approach, Zinc users can implement their own linearizing techniques without any need to change the language and without being anxious about the mapping overhead.
更多
查看译文
关键词
Linear programming,Zinc,Solver independence,LinZinc,Linearization techniques
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要