Skip to main content
Log in

A Tightly Integrated Modelling and Optimisation Library: A New Framework for Rapid Algorithm Development

  • Published:
Annals of Operations Research Aims and scope Submit manuscript

Abstract

The development of mathematical programming algorithms and heuristics has traditionally been hampered by the separation of modeller and optimiser. Developers either have to sacrifice performance by switching between a modeller and optimiser and communicating through cumbersome matrix files; or they can work solely with the in-core matrix in the optimiser, where knowledge about the structured algebraic model is missing and thus difficult to exploit.

We present EMOSL, a new combined modelling and optimisation subroutine library that overcomes these drawbacks. It allows the problem to be manipulated using the notation of the model language, which is of course close to the algebraic formulation of the problem. Access is provided directly to the in-core matrix of the optimiser, eliminating the need to communicate via files. Thus the scope and ease of algorithm development is greatly improved, without any degradation of performance.

We substantiate these claims by describing four applications: a block structure extraction tool, and the implementations of three MIP heuristics and cutting planes techniques.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. O. Bahn, A. Haurie, S. Kypreos and J.-P. Vial, A decomposition approach to multi-regional environmental planning: A numerical study, in: Operations Research and Environmental Management, eds. C. Carraro and A. Haurie (Kluwer Academic, 1996) pp. 119-132.

  2. E. Balas, S. Ceria and G. Cornuéjols, Mixed 0-1 programming by lift-and-project in a branch-and-cut framework, Management Science 42 (1996) 1229–1246.

    Google Scholar 

  3. E.M.L. Beale, Mathematical Programming in Practice (Pitman, London, 1968).

    Google Scholar 

  4. E.M.L. Beale, Sparseness in linear programming, in: Large Sparse Sets of Linear Equations, ed. J.K. Reid (Academic Press, London, 1971) pp. 1–15.

    Google Scholar 

  5. 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: Proc. 5th International Conference on Operations Research (Tavistock, London, 1970) pp. 447-454.

  6. G. Belvaux, Solving lot-sizing problems by branch & cut: Basic guide to use of mg-emosl, Working paper, CORE, Université catholique de Louvain (February 1998).

  7. S. Ceria, Workshop on computational integer programming, OPTIMA (Mathematical Programming Society Newsletter) 56 (December 1997) 1, 8.

    Google Scholar 

  8. D. Chang and E. Fragnière, SPLITDAT and DECOMP: Two new GAMS I/O subroutines to handle mathematical programming problems with an automated decomposition procedure, Working paper 97.5, HEC, Université de Genève (28 August 1996).

  9. M. Constantino, A cutting plane approach to capacitated lot-sizing with start-up costs, Mathematical Programming 75 (1996) 353–376.

    Google Scholar 

  10. C. Cordier, H. Marchand, R.S. Laundy and L.A. Wolsey, bc-opt: A branch-and-cut code for mixed integer programs, Mathematical Programming 86(2) (1999) 335–353.

    Google Scholar 

  11. Dash Associates, XPRESS-MP User Guide and Reference Manual, release 10 (Blisworth House, Church Lane, Blisworth, Northants NN7 3BX, UK, 1997).

    Google Scholar 

  12. Dash Associates, XPRESS-MP EMOSL Reference Manual, release 10 (Blisworth House, Church Lane, Blisworth, Northants NN7 3BX, UK, 1997).

    Google Scholar 

  13. M.C. Ferris and J.D. Horn, Partitioning mathematical programs for parallel solution, Mathematical Programming 80 (1980) 35–61.

    Google Scholar 

  14. R. Fourer, Modelling languages versus matrix generators for linear programming, ACM Transactions on Mathematical Software 9(2) (1983) 143–183.

    Google Scholar 

  15. R. Fourer, Software for optimization: A buyer's guide, Parts 1 and 2, INFORMS Computer Science Technical Section Newsletter 17(1) (1996) 14–17; 17(2) (1996) 3-4, 9-10.

    Google Scholar 

  16. R. Fourer, D.M. Gay and B.W. Kernighan, AMPL: A Modelling Language for Mathematical Programming (The Scientific Press, San Francisco, 1993).

    Google Scholar 

  17. R. Fourer and J.W. Gregory, Linear programming FAQ, available via WWW at URL: http://www.mcs.anl.gov/home/otc/faq/linear-programming-faq.html, and anonymous FTP at URL: rtfm.mit.edu in /pub/usenet/sci.answers/linear-programming-faq, 1998.

  18. E. Fragnière, J. Gondzio, R. Sarkissian and J.-P. Vial, Structure exploiting tool in algebraic modelling languages, Logilab technical report 1997.2, Logilab, HEC, Université de Genève (18 June 1997) submitted to Management Science.

  19. J. Gondzio, R. Sarkissian and J.-P. Vial, Using an interior point method for the master problem in a decomposition approach, European Journal of Operational Research 101 (1997) 577–587.

    Google Scholar 

  20. M.D. Grigoriadis and L.G. Khachiyan, An interior point method for bordered block-diagonal linear programs, SIAM Journal on Optimization 6(4) (1996) 913–932.

    Google Scholar 

  21. K. Hoffman and M. Padberg, LP-based combinatorial problem solving, Annals of Operations Research 4 (1985) 145–194.

    Google Scholar 

  22. IBM Corp., MPSX/370 Version 2 Users Guide (1988).

  23. E. Loute, Private communication (1997).

  24. H. Marchand and L.A.Wolsey, The 0-1 knapsack problem with a single continuous variable, Mathematical Programming 85 (1999) 15–33.

    Google Scholar 

  25. A.Martin, Integer programs with block structure, Habilitations-Schrift, Technische Universität Berlin, Berlin (1998).

    Google Scholar 

  26. J.G. Morris, On the extent to which certain fixed depot location problems can be solved by linear programming, Journal of the Operational Research Society 29 (1978) 71–76.

    Google Scholar 

  27. G.L. Nemhauser, M.W.P. Savelsbergh and G.S. Sigismondi, MINTO, a Mixed INTeger Optimizer, Operations Research Letters 15 (1994) 47–58.

    Google Scholar 

  28. G.L. Nemhauser and L.A.Wolsey, Integer and Combinatorial Optimisation (Wiley, New York, 1988).

    Google Scholar 

  29. W. Orchard-Hays, Advanced Linear-Programming Computing Techniques (McGraw-Hill, New York, 1968).

    Google Scholar 

  30. Scicon Ltd., MGG Users Guide (Milton Keynes, MK17 8LX, UK, 1986).

  31. R. Sharda and G. Rampal, Algebraic modelling on PCs, OR/MS Today 23(3) (1996) 58–63.

    Google Scholar 

  32. J.R. Tebboth, Block structure extraction tool: User manual,Working paper, University of Buckingham (16 February 1998).

  33. J.R. Tebboth, jcomp-A Dantzig-Wolfe solver: User manual, Working paper, University of Buckingham (22 January 1998).

  34. S. Thienel, ABACUS: A Branch-And-CUt System, Doctoral Dissertation, Universität zu Köln (1995).

  35. J.A. Tomlin and J.S. Welch, Mathematical programming systems, in: Handbooks in OR and MS, Volume 3: Computing, ed. E. Coffman (North-Holland, New York, 1992) pp. 561–601.

    Google Scholar 

  36. R.L.Weil and P.C. Kettler, Rearranging matrices to block-angular form for decomposition (and other) algorithms, Management Science 18(1) (1971) 98–108.

    Google Scholar 

  37. J.S. Welch, PAM-A practitioner's approach to modelling, Management Science 33(5) (1987) 610–625.

    Google Scholar 

  38. H.P. Williams, Model Building in Mathematical Programming, 3rd revised ed. (Wiley, Chichester, 1993).

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Tebboth, J., Daniel, R. A Tightly Integrated Modelling and Optimisation Library: A New Framework for Rapid Algorithm Development. Annals of Operations Research 104, 313–333 (2001). https://doi.org/10.1023/A:1013119809876

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1023/A:1013119809876

Navigation