Skip to main content

Optimisation Modelling for Software Developers

  • Conference paper
Principles and Practice of Constraint Programming (CP 2012)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 7514))

Abstract

Software developers are an ideal channel for the distribution of Constraint Programming (CP) technology. Unfortunately, including even basic optimisation functionality in an application currently requires the use of an entirely separate paradigm with which most software developers are not familiar.

We suggest an alternative interface to CP designed to overcome this barrier, and describe a prototype implementation for Java. The interface allows an optimisation problem to be defined in terms of procedures rather than decision variables and constraints. Optimisation is seamlessly integrated into a wider application through automatic conversion between this definition and a conventional model solved by an external solver.

This work is inspired by the language CoJava, in which a simulation is automatically translated into an optimal simulation. We extend this idea to support a general interface where optimisation is triggered on-demand. Our implementation also supports much more advanced code, such as object variables, variable-sized collections, and complex decisions.

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

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. Al-Nory, M., Brodsky, A.: Unifying simulation and optimization of strategic sourcing and transportation. In: Winter Simulation Conference (WSC), pp. 2616–2624 (2008)

    Google Scholar 

  2. Brodsky, A., Al-Nory, M., Nash, H.: Service composition language to unify simulation and optimization of supply chains. In: Hawaii International Conference on System Sciences, p. 74. IEEE Computer Society, Los Alamitos (2008)

    Google Scholar 

  3. Brodsky, A., Luo, J., Nash, H.: CoReJava: learning functions expressed as Object-Oriented programs. In: Machine Learning and Applications, pp. 368–375. IEEE Computer Society, Los Alamitos (2008)

    Google Scholar 

  4. Brodsky, A., Nash, H.: CoJava: a unified language for simulation and optimization. In: Conference on Object-oriented Programming, Systems, Languages, and Applications (OOPSLA), pp. 194–195. ACM, New York (2005)

    Google Scholar 

  5. Brodsky, A., Nash, H.: CoJava: Optimization Modeling by Nondeterministic Simulation. In: Benhamou, F. (ed.) CP 2006. LNCS, vol. 4204, pp. 91–106. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  6. Carson, Y., Maria, A.: Simulation optimization: methods and applications. In: Winter Simulation Conference (WSC), pp. 118–126. IEEE Computer Society, Atlanta (1997)

    Google Scholar 

  7. Fu, M.C., Glover, F.W., April, J.: Simulation optimization: a review, new developments, and applications. In: Winter Simulation Conference, WSC (2005)

    Google Scholar 

  8. Hebrard, E., O’Mahony, E., O’Sullivan, B.: Constraint Programming and Combinatorial Optimisation in Numberjack. In: Lodi, A., Milano, M., Toth, P. (eds.) CPAIOR 2010. LNCS, vol. 6140, pp. 181–185. Springer, Heidelberg (2010)

    Chapter  Google Scholar 

  9. Jussien, N., Rochart, G., Lorca, X.: The CHOCO constraint programming solver. In: CPAIOR 2008 Workshop on OpenSource Software for Integer and Constraint Programming OSSICP 2008 (2008)

    Google Scholar 

  10. Nethercote, N., Stuckey, P.J., Becket, R., Brand, S., Duck, G.J., Tack, G.: MiniZinc: Towards a Standard CP Modelling Language. In: Bessière, C. (ed.) CP 2007. LNCS, vol. 4741, pp. 529–543. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  11. Schulte, C., Lagerkvist, M., Tack, G.: GECODE – an open, free, efficient constraint solving toolkit, http://www.gecode.org/

  12. Van Hentenryck, P., Michel, L., Perron, L., Régin, J.-C.: Constraint Programming in OPL. In: Nadathur, G. (ed.) PPDP 1999. LNCS, vol. 1702, pp. 98–116. Springer, Heidelberg (1999)

    Chapter  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2012 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Francis, K., Brand, S., Stuckey, P.J. (2012). Optimisation Modelling for Software Developers. In: Milano, M. (eds) Principles and Practice of Constraint Programming. CP 2012. Lecture Notes in Computer Science, vol 7514. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-33558-7_22

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-33558-7_22

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-33557-0

  • Online ISBN: 978-3-642-33558-7

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics