Extending a General-Purpose Algebraic Modeling Language to Combinatorial Optimization: A Logic Programming Approach
General-purpose algebraic modeling languages are a central feature of popular computer systems for large-scale optimization Languages such as AIMMS , AMPL [12, 13], GAMS [4, 5], LINGO  and MPL  allow people to develop and maintain diverse optimization models in their natural mathematical forms. The systems that process these languages convert automatically to and from the various data structures required by packages of optimizing algorithms (“solvers”), with only minimal assistance from users. Most phases of language translation remain independent of solver details, however, so that users can easily switch between many combinations of language and solver.
KeywordsCombinatorial Optimization Integer Program Modeling Language Integer Variable Expression Tree
Unable to display preview. Download preview PDF.
- E.M.L. Beale and J.A. Tomlin, Special Facilities in a General Mathematical Programming System for Non-Convex Problems Using Ordered Sets of Variables. In J. Lawrence, ed., OR 69: Proceedings of the Fifth International Conference on Operational Research, Tavistock Publications, London (1970) 447–454.Google Scholar
- J.J. Bisschop and R. Entriken, AIMMS: The Modeling System Paragon Decision Technology, Haarlem, The Netherlands (1993). See also http://www.paragon.n1/.
- ECRC GmbH,ECLiPSe 3.5: ECRC Common Logic Programming System: User Manual European Computer-Industry Research Centre, München (1995). See also http: //www.ecrc. de/research/projects/eclipse/.Google Scholar
- R. Fourer, Software Survey: Linear Programming OR/MS Today 24: 2 (April 1997) 54–63.Google Scholar
- R. Fourer, D.M. Gay and B.W. Kernighan, AMPL: A Modeling Language for Mathematical Programming Duxbury Press/Wadsworth Publishing Company, Belmont, CA (1992). See also http: //www. ampl. com/ampl/.Google Scholar
- D.M. Gay, Hooking Your Solver to AMPL. Technical report, Bell Laboratories, Murray Hill, NJ (1993; revised 1994, 1997). 74 INTERFACES IN COMPUTER SCIENCE AND OPERATIONS RESEARCHGoogle Scholar
- ILOG S.A., ILOG Solver User Manual,Version 3.2; ILOG Solver Reference Manual,Version 3.2. ILOG, Inc., Mountain View, CA (1996). See also http://www.flog.corn/.
- B. Kristjansson, MPL Modelling System User Manual,Version 2.8. Maximal Software Inc., Arlington, VA (1993). See also http: //www.maximal-usa. com/.Google Scholar
- K. McAloon and C. Tretkoff, 2LP: Linear Programming and Logic Programming. In V. Saraswat and P. Van Hentenryck, eds., Principles and Practice of Constraint Programming, MIT Press, Cambridge, MA (1995) 101–116.Google Scholar
- J.P. Paul, LINGO/PC: Modeling Language for Linear and Integer Programming. OR/MS Today 16:2 (1988) 19–22. See also http://www.lindo.com/.
- J.-F. Puget, A C++ implementation of CLP. Proceedings of SPICIS 94, Singapore (1994).Google Scholar
- L. Sterling and E. Shapiro, The Art of Prolog: Advanced Programming Techniques, 2nd ed. MIT Press, Cambridge, MA (1994).Google Scholar
- J.A. Tomlin, Branch and Bound Methods for Integer and Non-Convex Programming. In J. Abadie, ed., Integer and Nonlinear Programming, American Elsevier Publishing Company, New York (1970) 437–450.Google Scholar
- P. Van Hentenryck, Constraint Satisfaction in Logic Programming. MIT Press, Cambridge, MA (1989).Google Scholar