Abstract
Constraint logic programming has become a promising new technology for solving complexcombinatorial problems. In this paper, we investigate how (constraint) logic programmingcan support the modelling part when solving discrete optimisation problems. First, we showthat the basic functionality of algebraic modelling languages can be realised very easily ina pure logic programming system like PROLOG and that, even without using constraints,various additional features are available. Then we focus on the constraint-solving facilitiesoffered by constraint logic programming systems. In particular, we explain how the constraintsolver of the constraint logic programming language CLP(PB) can be used in modelling0 - 1 problems.
Similar content being viewed by others
References
A. Aggoun and N. Beldiceanu, Extending CHIP in order to solve complex scheduling and placement problems, Math. Comput. Modelling 17(7)(1993)57–73.
A. Aggoun, D. Chan, P. Dufresne, E. Falvey, H. Grant, A. Herold, G. Macartney, M. Meier, D. Miller, B. Perez, E. van Rossum, J. Schimpf, P.A. Tsahageas and D.H. de Villeneuve, ECLIPSE 3.4, ECRC Common Logic Programming System, Technical report, ECRC, Munich, July 1994.
E. Balas and J.B. Mazzola, Nonlinear 0–1 programming: II. Dominance relations and algorithms, Mathematical Programming 30(1984)22–45.
P. Barth, Short Guide to CLP(PB), Max-Planck-Institut für Informatik, 1994. System available: ftp:yyftp.mpi-sb.mpg.deypubytoolsyCLPPByclppb.html.
P. Barth, A Davis–Putnam based enumeration algorithm for linear pseudo-Boolean optimization, Technical Report MPI-I-95-2-003, Max-Planck-Institut für Informatik, Saarbrücken, January 1995. System available: http:yywww.mpi-sb.mpg.dey~barthyopbdpyopbdp.html.
P. Barth, Logic-Based 0 –1 Constraint Programming, Operations Research/Computer Science Interfaces Series, Kluwer, 1996.
P. Barth and A. Bockmayr, Modelling 0 –1 problems in CLP(PB), in: Practical Application of Constraint Technology, PACT '96, Conference and Exhibition, London, 1996.
P. Barth and A. Bockmayr, PLAM: ProLog and Algebraic Modelling, in: Practical Application of Prolog, PAP '97, Conference and Exhibition, London, April 1997.
G. Baues, P. Kay and P. Charlier, Constraint based resource allocation for airline crew scheduling, ATTIS '94, Paris, 1994.
N. Beldiceanu and E. Contejean, Introducing global constraints in CHIP, Math. Comput. Modelling 20(12)(1994)97–123.
F. Benhamou, D. McAllester and P. van Hentenryck, CLP(Intervals) revisited, in: Logic Programming, Proceedings of the 1994 International Symposium, ILPS '94, 1994.
A. Bockmayr, Logic programming with pseudo-Boolean constraints, in: Constraint Logic Programming. Selected Research, eds. F. Benhamou and A. Colmerauer, MIT Press, 1993, chapter 18, pp. 327–350.
W.F. Clocksin and C.S. Mellish, Programming in Prolog, Springer, 1981.
P. Codognet and D. Diaz, Compiling constraints in CLP(FD), Journal of Logic Programming 27(1996)185–226.
A. Colmerauer, Introduction to PROLOG III, in: 4th Annual ESPRIT Conference, Bruxelles, North-Holland, 1987.
M. Dincbas, P. van Hentenryck, H. Simonis, A. Aggoun and T. Graf, The constraint logic programming language CHIP, in: Fifth Generation Computer Systems, Tokyo, 1988, Springer, 1988.
R. Fourer, Modeling languages versus matrix generators for linear programming, ACM Trans. Math. Software 9(1983)143–183.
R. Fourer, D. Gay and B.W. Kernighan, AMPL: A Modeling Language for Mathematical Programming, The Scientific Press, San Francisco, 1993. http://www.ampl.com/cm/cs/what/ampl/.
M. Grötschel, Polyedrische Charakterisierungen kombinatorischer Optimierungsprobleme, volume 36 of Mathematical Systems in Economics, Verlag Anton Hain, Meisenheim am Glan, 1977.
J. Jaffar and J.-L. Lassez, Constraint logic programming, in: Proc. 14th ACM Symp. on Principles of Programming Languages, Munich, 1987.
J. Jaffar and M.J. Maher, Constraint logic programming: A survey, Journal of Logic Programming 19/20(1994)503–581.
J. Jaffar, S. Michaylov, P.J. Stuckey and R.H.C. Yap, The CLP(R) language and system, ACM Transactions on Programming Languages and Systems 14(1992)339–395.
LINDO Systems, Inc., Chicago, LINGO Optimization Modeling Language, 1994. http://www.lindo.com/.
K.I.M. McKinnon and H.P. Williams, Constructing integer programming models by the predicate calculus, Annals of Operations Research 21(1989)227–246.
A. Meeraus and A. Brooke, GAMS: A User's Guide, Boyd and Fraser, 1993. http://www.gams.com/.
G. Mitra, C. Lucas, S. Moody and E. Hadjiconstantinou, Tools for reformulating logical forms into zero–one mixed integer programs, Eur. J. Oper. Res. 72(1994)262–276.
J.J. Moré and S.J. Wright, Optimization Software Guide, SIAM, 1993.
W. Older and F. Benhamou, Programming in CLP(BNR), in: Principles and Practice of Constraint Programming PPCP '93, Newport, RI, 1993.
F. Puget, A C++ implementation of CLP, Technical Report, ILOG S.A., 1994. http://www.ilog.com.
R. Sharda, Linear and Discrete Optimization and Modeling Software, UNICOM, 1993.
G. Smolka, The OZ programming model, in: Computer Science Today: Recent Trends and Developments, ed. J. van Leeuwen, Springer, LNCS 1000, 1995.
L. Sterling and E. Shapiro, The Art of Prolog, MIT Press, 1986.
P. van Hentenryck, Constraint Satisfaction in Logic Programming, MIT Press, 1989.
P. van Hentenryck and Y. Deville, The cardinality operator: A new logical connective for constraint logic programming, in: Constraint Logic Programming. Selected Research, eds. F. Benhamou and A. Colmerauer, MIT Press, 1993, chapter 20, pp. 383–403.
M. Wallace, Practical applications of constraint programming, Constraints 1(1996) 139–168.
H.P. Williams, Model Building in Mathematical Programming, Wiley, 3rd revised edition, 1993.
H.P. Williams, Model Solving in Mathematical Programming, Wiley, 1993.
Rights and permissions
About this article
Cite this article
Barth, P., Bockmayr, A. Modelling discrete optimisation problems inconstraint logic programming. Annals of Operations Research 81, 467–496 (1998). https://doi.org/10.1023/A:1018981813157
Issue Date:
DOI: https://doi.org/10.1023/A:1018981813157