Declaration
I declare that this thesis is my own work and has not been submitted in any
form for another degree of diploma at any university or other institute of
tertiary education. Information derived from the published and unpublished work
of others has been acknowledged in the text and a list of references is given.
(Virginia) Lee Mei Leng November 3, 2002
Abstract
The use of constraint programming languages to solve combinatorial optimization problems is unpopular. This is due to their lack of support for high-level modelling features, which makes the resulting models cumbersome and requires the modeller to posses sophisticated programming skills. Consequently, users of constraint programming languages are usually limited to computer scientists and programmers. Modelling languages on the other hand offer an alternative method for solving combinatorial problems by supporting high-level modelling features. However, modelling languages have their drawbacks such as the inability to implement problem specific heuristics to obtain good solutions. One way to remedy this situation is to add high-level modelling support to constraint programming languages. This thesis investigates how to add the modelling capabilities of the popular modelling language OPL into the constraint programming language, HAL. Two complimentary methods, extending HAL's library and creating an OPL-to-HAL++ compiler that translate OPL models to HAL programs are discussed in detail. Experimental evaluation showed that models that uses the extended library modelling component are more elegant and compact than those modelled using native HAL code.
Acknowledgements
I would like to thank both my supervisors Dr Maria Garcia de la Banda and Professor Kim Marriott for their advice, guidance and feedback throughout the year.
I would also like to thank all my fellow Honours students, who have gone through the whole year with me, and to my family and friends for their constant support and friendship.