Skip to main content

Writing Global Optimization Software

  • Chapter
Global Optimization

Part of the book series: Nonconvex Optimization and Its Applications ((NOIA,volume 84))

Summary

Global Optimization software packages for solving Mixed-Integer Non-linear Optimization Problems are usually complex pieces of codes. Some of the difficulties involved in coding a good GO software are: embedding third-party local optimization codes within the main global optimization algorithm; providing efficient memory representations of the optimization problem; making sure that every part of the code is fully reentrant. Finding good software engineering solutions for these difficulties is not enough to make sure that the outcome will be a GO software that works well. However, starting from a sound software design makes it easy to concentrate on improving the efficiency of the global optimization algorithm implementation. In this paper we discuss the main issues that arise when writing a global optimization software package, namely software architecture and design, symbolic manipulation of mathematical expressions, choice of local solvers and implementation of global solvers.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 109.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. C.S. Adjiman, I.P. Androulakis, CD. Maranas, and C.A. Floudas. A global optimization method, aBB, for process design. Computers & Chemical Engineering, 20:S419–S424, 1996.

    Article  Google Scholar 

  2. C.S. Adjiman and C.A. Floudas. Rigorous convex underestimators for general twice-differentiable problems. Journal of Global Optimization, 9(1):23–40, July 1996.

    Article  MathSciNet  MATH  Google Scholar 

  3. C.S. Adjiman, I.P. Androulakis, and C.A. Floudas. Global optimization of MINLP problems in process synthesis and design. Computers & Chemical Engineering, 21:S445–S450, 1997.

    Google Scholar 

  4. C.S. Adjiman, S. Dallwig, C.A. Floudas, and A. Neumaier. A global optimization method, aBB, for general twice-differentiable constrained NLPs: I. theoretical advances. Computers & Chemical Engineering, 22(9):1137–1158, 1998.

    Article  Google Scholar 

  5. C. S. Adjiman, I. P. Androulakis, and C. A. Floudas. A global optimization method, aBB, for general twice-differentiable constrained NLPs: II. Implementation and computational results. Computers & Chemical Engineering, 22(9):1159–1179, 1998.

    Article  Google Scholar 

  6. C.S. Adjiman. Global Optimization Techniques for Process Systems Engineering. PhD thesis, Princeton University, June 1998.

    Google Scholar 

  7. F.A. Al-Khayyal and J.E. Falk. Jointly constrained biconvex programming. Mathematics of Operations Research, 8(2):273–286, 1983.

    Article  MathSciNet  MATH  Google Scholar 

  8. I. P. Androulakis, C. D. Maranas, and C. A. Floudas. αBB: A global optimization method for general constrained nonconvex problems. Journal of Global Optimization, 7(4):337–363, December 1995.

    Article  MathSciNet  MATH  Google Scholar 

  9. M. Berkelaar. LP_SOLVE: Linear Programming Code. http://www.cs.sunysb.edu/algorith/implement/lpsolve/implement.shtml, 2004.

    Google Scholar 

  10. I.D.L. Bogle and C.C. Pantelides. Sparse nonlinear systems in chemical process simulation. In A.J. Osiadacz, editor, Simulation and Optimization of Large Systems, Oxford, 1988. Clarendon Press.

    Google Scholar 

  11. A. Brook, D. Kendrick, and A. Meeraus. Gams, a user’s guide. ACM SIGNUM Newsletter, 23(3–4):10–11, 1988.

    Google Scholar 

  12. J. Brimberg and N. Mladenović. A variable neighbourhood algorithm for solving the continuous location-allocation problem. Studies in Location Analysis, 10:1–12, 1996.

    MATH  Google Scholar 

  13. J.S. Cohen. Computer Algebra and Symbolic Computation: Mathematical Methods. AK Peters, Natick, Massachussetts, 2000.

    Google Scholar 

  14. J.S. Cohen. Computer Algebra and Symbolic Computation: Elementary Algorithms. AK Peters, Natick, Massachussetts, 2002.

    MATH  Google Scholar 

  15. Process Systems Enterprise. gPROMS v2.2 Introductory User Guide. Process Systems Enterprise, Ltd., London, UK, 2003.

    Google Scholar 

  16. T.G.W. Epperly and E.N. Pistikopoulos. A reduced space branch and bound algorithm for global optimization. Journal of Global Optimization, 11:287:311, 1997.

    Article  MathSciNet  MATH  Google Scholar 

  17. T.G.W. Epperly. Global Optimization of Nonconvex Nonlinear Programs using Parallel Branch and Bound. PhD thesis, University of Winsconsin — Madison, 1995.

    Google Scholar 

  18. R. Fourer and D. Gay. The AMPL Book.

    Google Scholar 

  19. C.A. Floudas. Deterministic Global Optimization. Kluwer, Dordrecht, 2000.

    Google Scholar 

  20. R. Fourer. Personal communication. 2004.

    Google Scholar 

  21. J.E. Falk and R.M. Soland. An algorithm for separable nonconvex programming problems. Management Science, 15:550–569, 1969.

    MathSciNet  MATH  Google Scholar 

  22. S. Galli. Parsing ampl internal format for linear and non-linear expressions, 2004. Didactical project, DEI, Politecnico di Milano, Italy.

    Google Scholar 

  23. P.E. Gill. User’s Guide for SNOPT 5.3. Systems Optimization Laboratory, Department of EESOR, Stanford University, California, February 1999.

    Google Scholar 

  24. A. Griewank. On automatic differentiation. In K. Tanabe, editors. Mathematical Programming: Recent Developments and Applications. Kluwer, Dordrecht, 1989 Iri and Tanabe [30]}, pages 83–108.

    Google Scholar 

  25. K. Hägglöf, P.O. Lindberg, and L. Svensson. Computing global minima to polynomial optimization problems using gröbner bases. Journal of Global Optimization, 7(2):115:125, 1995.

    Article  MathSciNet  MATH  Google Scholar 

  26. P. Hansen and N. Mladenović. Variable neighbourhood search: Principles and applications. European Journal of Operations Research, 130:449–467, 2001.

    Article  MATH  Google Scholar 

  27. P. Hansen and N. Mladenović. Variable neighbourhood search. In P. Pardalos and M. Resende, editors, Handbook of Applied Optimization, Oxford, 2002. Oxford University Press.

    Google Scholar 

  28. P. Hansen and N. Mladenović. Variable neighbourhood search. In F.W. Glover and G.A. Kochenberger, editors, Handbook of Metaheuristics, Dordrecht, 2003. Kluwer.

    Google Scholar 

  29. ILOG. ILOG CPLEX 8.0 User’s Manual. ILOG S.A., Gentilly, France, 2002.

    Google Scholar 

  30. M. Iri and K. Tanabe, editors. Mathematical Programming: Recent Developments and Applications. Kluwer, Dordrecht, 1989.

    MATH  Google Scholar 

  31. R. B. Kearfott. GlobSol User Guide. http://interval.louisiana.edu/GLOBSOL/what_is.html, 1999.

    Google Scholar 

  32. B.R. Keeping and C.C. Pantelides. Novel methods for the efficient evaluation of stored mathematical expressions on scalar and vector computers. AIChE Annual Meeting, Paper #204b, nov 1997.

    Google Scholar 

  33. B. Keeping, C.C. Pantelides, James Barber, and Panagiotis Tsiakis. Mixed integer linear programming interface specification draft. Global Cape-Open Deliverable WP2.3-03, October 2000.

    Google Scholar 

  34. P. Kesavan and P.I. Barton. Generalized branch-and-cut framework for mixed-integer nonlinear optimization problems. Computers & Chemical Engineering, 24:1361–1366, 2000.

    Article  Google Scholar 

  35. D.E. Knuth. The Art of Computer Programming, Part II: Seminumerical Algorithms. Addison-Wesley, Reading, MA, 1981.

    Google Scholar 

  36. V. Kovaĉević-Vujcic, M. Cangalovic, M. Aŝić, L. Ivanović, and M. Dražić. Tabu search methodology in global optimization. Computers and Mathematics with Applications, 37:125–133, 1999.

    Article  MATH  Google Scholar 

  37. S. Kucherenko and Yu. Sytsko. Application of deterministic low-discrepancy sequences to nonlinear global optimization problems. Computational Optimization and Applications, 30(3):297–318, 2004.

    Article  MathSciNet  Google Scholar 

  38. R. Levine, T. Mason, and D. Brown. Lex and Yacc. O’Reilly, Cambridge, second edition, 1995.

    Google Scholar 

  39. L. Liberti, P. Tsiakis, B. Keeping, and C.C. Pantelides. ooOVS. Centre for Process Systems Engineering, Chemical Engineering Department, Imperial College, London, UK, 1.24 edition, jan 2001.

    Google Scholar 

  40. L. Liberti and C.C. Pantelides. Convex envelopes of monomials of odd degree. Journal of Global Optimization, 25:157–168, 2003.

    Article  MathSciNet  MATH  Google Scholar 

  41. L. Liberti. Reformulation and Convex Relaxation Techniques for Global Optimization. PhD thesis, Imperial College London, UK, March 2004.

    Google Scholar 

  42. L. Liberti. Performance comparison of function evaluation methods. In Progress in Computer Science Research, Nova Publisher (accepted for publication 2004).

    Google Scholar 

  43. L. Liberti, N. Maculan, and S. Kucherenko. The kissing number problem: a new result from global optimization. Electronic Notes in Discrete Mathematics, 17:203–207, 2004.

    Article  MathSciNet  Google Scholar 

  44. L. Liberti and S. Kucherenko. Comparison of deterministic and stochastic approaches to global optimization. International Transactions in Operations Research, 12(3), 2005.

    Google Scholar 

  45. M. Locatelli and F. Schoen. Simple linkage: Analysis of a threshold-accepting global optimization method. Journal of Global Optimization, 9:95–111, 1996.

    Article  MathSciNet  MATH  Google Scholar 

  46. M. Locatelli and F. Schoen. Random linkage: a family of acceptance/rejection algorithms for global optimization. Mathematical Programming, 85(2):379–396, 1999.

    Article  MathSciNet  MATH  Google Scholar 

  47. M. Locatelli. Simulated annealing algorithms for global optimization. In H.E. Romeijn, editors. Handbook of Global Optimization, volume 2. Kluwer, Dordrecht, 2002 Pardalos and Romeijn [56]}, pages 179–229.

    Google Scholar 

  48. A. Makhorin. GNU Linear Programming Kit. Free Software Foundation, http://www.gnu.org/software/glpk/, 2003.

    Google Scholar 

  49. G.P. McCormick. Computability of global solutions to factorable nonconvex programs: Part I — Convex underestimating problems. Mathematical Programming, 10:146–175, 1976.

    Article  MathSciNet  Google Scholar 

  50. M. Mathur, S.B. Karale, S. Priye, V.K. Jayaraman, and B.D. Kulkarni. Ant colony approach to continuous function optimization. Industrial and Engineering Chemistry Research, 39:3814–3822, 2000.

    Article  Google Scholar 

  51. N. Mladenović, J. Petrović, V. Kovaĉević-Vujĉić, and M. Cangalovic. Solving a spread-spectrum radar polyphase code design problem by tabu search and variable neighbourhood search. European Journal of Operations Research, 151:389–399, 2003.

    Article  MATH  Google Scholar 

  52. Numerical Algorithms Group. NAG Fortran Library Manual Mark 11. 1984.

    Google Scholar 

  53. C.C. Pantelides. Symbolic and Numerical Techniques for the Solution of Large Systems of Nonlinear Algebraic Equations. PhD thesis, Imperial College of Science, Technology and Medicine, University of London, May 1988.

    Google Scholar 

  54. C.C. Pantelides, L. Liberti, P. Tsiakis, and T. Crombie. Mixed integer linear/nonlinear programming interface specification. Global Cape-Open Deliverable WP2.3-04, February 2002.

    Google Scholar 

  55. C.C. Pantelides, L. Liberti, P. Tsiakis, and T. Crombie. MINLP interface specification. CAPE-OPEN Update, 2:10–13, March 2002.

    Google Scholar 

  56. P.M. Pardalos and H.E. Romeijn, editors. Handbook of Global Optimization, volume 2. Kluwer, Dordrecht, 2002.

    MATH  Google Scholar 

  57. J.D. Pintér. LGO: a Model Development System for Continuous Global Optimization. User’s Guide. Pintér Consulting Services, Halifax, NS, Canada, 2005.

    Google Scholar 

  58. J.D. Pinter. Global optimization: software, test problems, and applications In H.E. Romeijn, editors. Handbook of Global Optimization, volume 2. Kluwer, Dordrecht, 2002 Pardalos and Romeijn [56]}, pages 515–569.

    Google Scholar 

  59. W.H. Press, S.A. Teukolsky, W.T. Vetterling, and B.P. Flannery. Numerical Recipes in C, Second Edition. Cambridge University Press, Cambridge, 1992, reprinted 1997.

    MATH  Google Scholar 

  60. A.H.G. Rinnooy-Kan and G.T. Timmer. Stochastic global optimization methods; part I: Clustering methods. Mathematical Programming, 39:27–56, 1987.

    MathSciNet  MATH  Google Scholar 

  61. A.H.G. Rinnooy-Kan and G.T. Timmer. Stochastic global optimization methods; part II: Multilevel methods. Mathematical Programming, 39:57–78, 1987.

    MathSciNet  MATH  Google Scholar 

  62. H.S. Ryoo and N.V. Sahinidis. Global optimization of nonconvex NLPs and MINLPs with applications in process design. Computers & Chemical Engineering, 19(5):551–566, 1995.

    Article  Google Scholar 

  63. H. S. Ryoo and N. V. Sahinidis. A branch-and-reduce approach to global optimization. Journal of Global Optimization, 8(2): 107–138, March 1996.

    Article  MathSciNet  MATH  Google Scholar 

  64. H. Ryoo and N. Sahinidis. Global optimization of multiplicative programs. Journal of Global Optimization, 26(4):387–418, 2003.

    Article  MathSciNet  MATH  Google Scholar 

  65. P. RoyChowdury, Y.P. Singh, and R.A. Chansarkar. Hybridization of gradient descent algorithms with dynamic tunneling methods for global optimization. IEEE Transactions on Systems, Man and Cybernetics—Part A: Systems and Humans, 30(3):384–390, 2000.

    Article  Google Scholar 

  66. N.V. Sahinidis. Baron: Branch and reduce optimization navigator, user’s manual, version 4.0. http://archimedes.scs.uiuc.edu/baron/manuse.pdf, 1999.

    Google Scholar 

  67. F. Schoen. Random and quasirandom linkage methods in global optimization. Journal of Global Optimization, 13:445–454, 1998.

    Article  MATH  MathSciNet  Google Scholar 

  68. F. Schoen. Global optimization methods for high-dimensional problems. European Journal of Operations Research, 119:345–352, 1999.

    Article  MATH  Google Scholar 

  69. F. Schoen. Two-phase methods for global optimization. In H.E. Romeijn, editors. Handbook of Global Optimization, volume 2. Kluwer, Dordrecht, 2002 Pardalos and Romeijn [56]}, pages 151–177.

    Google Scholar 

  70. H. Schichl. The Coconut API: Reference Manual. Dept. of Maths, Universität Wien, October 2003.

    Google Scholar 

  71. E.M.B. Smith. On the Optimal Design of Continuous Processes. PhD thesis, Imperial College of Science, Technology and Medicine, University of London, October 1996.

    Google Scholar 

  72. J.E. Smith. Genetic algorithms. In H.E. Romeijn, editors. Handbook of Global Optimization, volume 2. Kluwer, Dordrecht, 2002 Pardalos and Romeijn [56]}, pages 275–362.

    Google Scholar 

  73. E.M.B. Smith and C.C. Pantelides. Global optimisation of nonconvex minlps. Computers & Chemical Engineering, 21:S791–S796, 1997.

    Google Scholar 

  74. R. Storn and K. Price. Differential evolution — a simple and efficient heuristic for global optimization over continuous spaces. Journal of Global Optimization, 11:341–359, 1997.

    Article  MathSciNet  MATH  Google Scholar 

  75. E.M.B. Smith and C.C. Pantelides. A symbolic reformulation/spatial branch-and-bound algorithm for the global optimisation of nonconvex MINLPs. Computers & Chemical Engineering, 23:457–478, 1999.

    Article  Google Scholar 

  76. T.K. Shi, W.H. Steeb, and Y. Hardy. An Introduction to Computer Algebra Using Object-Oriented Programming. Springer-Verlag, Berlin, second edition, 2000.

    MATH  Google Scholar 

  77. G. Schrimpf, J. Schneider, H. Stamm-Wilbrandt, and G. Dueck. Record breaking optimization results using the ruin and recreate principle. Journal of Computational Physics, 159:139–171, 2000.

    Article  MathSciNet  MATH  Google Scholar 

  78. B. Stroustrup. The C++ Programming Language. Addison-Wesley, Reading, MA, third edition, 1999.

    Google Scholar 

  79. Lindo Systems. Lindo API: User’s Manual. Lindo Systems, Inc., Chicago, 2004.

    Google Scholar 

  80. M. Tawarmalani and N.V. Sahinidis. Semidefinite relaxations of fractional programming via novel techniques for constructing convex envelopes of nonlinear functions. Journal of Global Optimization, 20(2):137–158, 2001.

    Article  MathSciNet  MATH  Google Scholar 

  81. M. Tawarmalani and N. Sahinidis. Convex extensions and envelopes of semi-continuous functions. Mathematical Programming, 93(2):247–263, 2002.

    Article  MathSciNet  MATH  Google Scholar 

  82. M. Tawarmalani and N.V. Sahinidis. Exact algorithms for global optimization of mixed-integer nonlinear programs. In H.E. Romeijn, editors. Handbook of Global Optimization, volume 2. Kluwer, Dordrecht, 2002 Pardalos and Romeijn [56]}, pages 1–63.

    Google Scholar 

  83. M. Tawarmalani and N.V. Sahinidis. Global optimization of mixed integer non-linear programs: A theoretical and computational study. Mathematical Programming, 99:563–591, 2004.

    Article  MathSciNet  MATH  Google Scholar 

  84. P.L. Toint A.R. Conn, N.I.M. Gould. The SIF reference report, http://www.numerical.rl.ac.uk/lancelot/sif/.

    Google Scholar 

  85. H. Tuy. Convex Analysis and Global Optimization. Kluwer, Dodrecht, 1998.

    MATH  Google Scholar 

  86. B.W. Wah and T. Wang. Efficient and adaptive Lagrange-multiplier methods for nonlinear continuous global optimization. Journal of Global Optimization, 14:1:25, 1999.

    Article  MathSciNet  MATH  Google Scholar 

  87. J. M. Zamora and I. E. Grossmann. A branch and contract algorithm for problems with concave univariate, bilinear and linear fractional terms. Journal of Global Optimization, 14:217:249, 1999.

    Article  MathSciNet  MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2006 Springer Science+Business Media, Inc.

About this chapter

Cite this chapter

Liberti, L. (2006). Writing Global Optimization Software. In: Liberti, L., Maculan, N. (eds) Global Optimization. Nonconvex Optimization and Its Applications, vol 84. Springer, Boston, MA. https://doi.org/10.1007/0-387-30528-9_8

Download citation

Publish with us

Policies and ethics