Click to print
Adding High Level Modeling to HAL
 

 


Solving combinatorial optimisation problems, such as scheduling or timetabling, is a difficult and time-consuming task which often depends on two factors: finding a good model and developing problem-specific heuristics. High level modeling languages support a syntax close to the usual problem notation (e.g. mathematical notation) and allow their users to design a model without considering low implementation details such as memory usage. These features greatly simplify the task of finding good models but, since they are not general purpose languages, their capabilities to specify problem-specific heuristics is very limited. Constraint programming languages are generic programming languages specifically designed to solve combinatorial problems, allowing the user to implement virtually any customised technique required to solve them. Unfortunately, they usually lack support for high-level modeling. The aim of this project is to investigate the possibility of providing high-level modeling support to the constraint programming language HAL and, in particular, to support the modeling capabilities of OPL, a popular and powerful high-level modeling language for describing combinatorial problems. In order to achieve this aims, two orthogonal approaches will be pursued: extending HAL with a modeling library (obtaining what we call HAL++), and developing an OPL-to-HAL++ compiler.
 
Core References

Pascal Van Hentenryck. The OPL Optimization Programming Language. The MIT Press, Cambridge, Massachusetts. 1999.

Laurent Michel, Pascal van Hentenryck. Modeler++: A Modeling Layer for Constraint Programming Libraries. Brown University.

Student
Virginia Lee
 
Supervisor
Maria Garcia de la Banda, Kim Marriott
 
Type
Bachelor Computer Science (Honours)
 
Project Start
February 2002
 
Completion
November 2002
 




   
Caution   Privacy