Architecture and Design of the HeuristicLab Optimization Environment

  • S. Wagner
  • G. Kronberger
  • A. Beham
  • M. Kommenda
  • A. Scheibenpflug
  • E. Pitzer
  • S. Vonolfen
  • M. Kofler
  • S. Winkler
  • V. Dorfer
  • M. Affenzeller
Part of the Topics in Intelligent Engineering and Informatics book series (TIEI, volume 6)


Many optimization problems cannot be solved by classical mathematical optimization techniques due to their complexity and the size of the solution space. In order to achieve solutions of high quality though, heuristic optimization algorithms are frequently used. These algorithms do not claim to find global optimal solutions, but offer a reasonable tradeoff between runtime and solution quality and are therefore especially suitable for practical applications. In the last decades the success of heuristic optimization techniques in many different problem domains encouraged the development of a broad variety of optimization paradigms which often use natural processes as a source of inspiration (as for example evolutionary algorithms, simulated annealing, or ant colony optimization). For the development and application of heuristic optimization algorithms in science and industry, mature, flexible and usable software systems are required. These systems have to support scientists in the development of new algorithms and should also enable users to apply different optimization methods on specific problems easily. The architecture and design of such heuristic optimization software systems impose many challenges on developers due to the diversity of algorithms and problems as well as the heterogeneous requirements of the different user groups. In this chapter the authors describe the architecture and design of their optimization environment HeuristicLab which aims to provide a comprehensive system for algorithm development, testing, analysis and generally the application of heuristic optimization methods on complex problems.


Genetic Algorithm Simulated Annealing Graphical User Interface Solution Candidate Algorithm Model 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Affenzeller, M., Winkler, S., Wagner, S., Beham, A.: Genetic Algorithms and Genetic Programming - Modern Concepts and Practical Applications. In: Numerical Insights. CRC Press (2009)Google Scholar
  2. 2.
    Alba, E. (ed.): Parallel Metaheuristics: A New Class of Algorithms. Wiley Series on Parallel and Distributed Computing. Wiley (2005)Google Scholar
  3. 3.
    Arenas, M.G., Collet, P., Eiben, A.E., Jelasity, M., Merelo, J.J., Paechter, B., Preuß, M., Schoenauer, M.: A framework for distributed evolutionary algorithms. In: Guervós, J.J.M., Adamidis, P.A., Beyer, H.-G., Fernández-Villacañas, J.-L., Schwefel, H.-P. (eds.) PPSN 2002. LNCS, vol. 2439, pp. 665–675. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  4. 4.
    Blum, C., Roli, A., Alba, E.: An introduction to metaheuristic techniques. In: Alba, E. (ed.) Parallel Metaheuristics: A New Class of Algorithms, Wiley Series on Parallel and Distributed Computing, ch. 1, pp. 3–42. Wiley (2005)Google Scholar
  5. 5.
    Burkard, R.E., Karisch, S.E., Rendl, F.: QAPLIB – A quadratic assignment problem library. Journal of Global Optimization 10(4), 391–403 (1997), MathSciNetzbMATHCrossRefGoogle Scholar
  6. 6.
    Cantu-Paz, E.: Efficient and Accurate Parallel Genetic Algorithms. Kluwer (2001)Google Scholar
  7. 7.
    de Carvalho Jr., S.A., Rahmann, S.: Microarray layout as quadratic assignment problem. In: Proceedings of the German Conference on Bioinformatics (GCB). Lecture Notes in Informatics, vol. P-83 (2006)Google Scholar
  8. 8.
    Cox, B.J.: Planning the software industrial revolution. IEEE Software 7(6), 25–33 (1990), CrossRefGoogle Scholar
  9. 9.
    DeJong, K.A.: Evolutionary Computation: A Unified Approach. In: Bradford Books. MIT Press (2006)Google Scholar
  10. 10.
    Drezner, Z.: Extensive experiments with hybrid genetic algorithms for the solution of the quadratic assignment problem. Computers & Operations Research 35(3), 717–736 (2008), Part Special Issue: New Trends in Locational Analysis,, doi:10.1016/j.cor.2006.05.004MathSciNetzbMATHCrossRefGoogle Scholar
  11. 11.
    Fu, M., Glover, F., April, J.: Simulation optimization: A review, new developments, and applications. In: Proceedings of the 2005 Winter Simulation Conference, pp. 83–95 (2005)Google Scholar
  12. 12.
    Fu, M.C.: Optimization for simulation: Theory vs. practice. Informs J. on Computing 14(3), 192–215 (2002), zbMATHCrossRefGoogle Scholar
  13. 13.
    Gagné, C., Parizeau, M.: Genericity in evolutionary computation software tools: Principles and case-study. International Journal on Artificial Intelligence Tools 15(2), 173–194 (2006)CrossRefGoogle Scholar
  14. 14.
    Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley (1995)Google Scholar
  15. 15.
    Giffler, B., Thompson, G.L.: Algorithms for solving production-scheduling problems. Operations Research 8(4), 487–503 (1960)MathSciNetzbMATHCrossRefGoogle Scholar
  16. 16.
    Glover, F., Kelly, J.P., Laguna, M.: New advances for wedding optimization and simulation. In: Farrington, P.A., Nembhard, H.B., Sturrock, D.T., Evans, G.W. (eds.) Proceedings of the 1999 Winter Simulation Conference, pp. 255–260 (1999),
  17. 17.
    Greenfield, J., Short, K.: Software Factories: Assembling Applications with Patterns, Models, Frameworks, and Tools. Wiley (2004)Google Scholar
  18. 18.
    Hahn, P.M., Krarup, J.: A hospital facility layout problem finally solved. Journal of Intelligent Manufacturing 12, 487–496 (2001)CrossRefGoogle Scholar
  19. 19.
    Holland, J.H.: Adaption in Natural and Artificial Systems. University of Michigan Press (1975)Google Scholar
  20. 20.
    Johnson, R., Foote, B.: Designing reusable classes. Journal of Object-Oriented Programming 1(2), 22–35 (1988)Google Scholar
  21. 21.
    Jones, M.S.: An object-oriented framework for the implementation of search techniques. Ph.D. thesis, University of East Anglia (2000)Google Scholar
  22. 22.
    Jones, M.S., McKeown, G.P., Rayward-Smith, V.J.: Distribution, cooperation, and hybridization for combinatorial optimization. In: Voß, S., Woodruff, D.L. (eds.) Optimization Software Class Libraries. Operations Research/Computer Science Interfaces Series, vol. 18, ch. 2, pp. 25–58. Kluwer (2002)Google Scholar
  23. 23.
    Keijzer, M., Merelo, J.J., Romero, G., Schoenauer, M.: Evolving Objects: A general purpose evolutionary computation library. In: EA 2001, Evolution Artificielle, 5th International Concerence in Evolutionary Algorithms, pp. 231–242 (2001)Google Scholar
  24. 24.
    Kirkpatrick, S., Gelatt, C.D., Vecchi, M.P.: Optimization by simulated annealing. Science 220, 671–680 (1983)MathSciNetzbMATHCrossRefGoogle Scholar
  25. 25.
    Knuth, D.E.: The Art of Computer Programming, 3rd edn. Seminumerical Algorithms, vol. 2. Addison-Wesley (1997)Google Scholar
  26. 26.
    Koopmans, T.C., Beckmann, M.: Assignment problems and the location of economic activities. Econometrica, Journal of the Econometric Society 25(1), 53–76 (1957), MathSciNetzbMATHCrossRefGoogle Scholar
  27. 27.
    Krasner, G.E., Pope, S.T.: A cookbook for using the model-view-controller user interface paradigm in Smalltalk-80. Journal of Object-Oriented Programming 1(3), 26–49 (1988)Google Scholar
  28. 28.
    Lenaerts, T., Manderick, B.: Building a genetic programming framework: The added-value of design patterns. In: Banzhaf, W., Poli, R., Schoenauer, M., Fogarty, T.C. (eds.) EuroGP 1998. LNCS, vol. 1391, pp. 196–208. Springer, Heidelberg (1998)CrossRefGoogle Scholar
  29. 29.
    McIlroy, M.D.: Mass produced software components. In: Naur, P., Randell, B. (eds.) Software Engineering: Report of a conference sponsored by the NATO Science Committee, pp. 138–155 (1969)Google Scholar
  30. 30.
    Nievergelt, J.: Complexity, algorithms, programs, systems: The shifting focus. Journal of Symbolic Computation 17(4), 297–310 (1994)MathSciNetzbMATHCrossRefGoogle Scholar
  31. 31.
    Parejo, J.A., Ruiz-Cortes, A., Lozano, S., Fernandez, P.: Metaheuristic optimization frameworks: A survey and benchmarking. Soft Computing 16(3), 527–561 (2012)CrossRefGoogle Scholar
  32. 32.
    Pitzer, E., Beham, A., Affenzeller, M., Heiss, H., Vorderwinkler, M.: Production fine planning using a solution archive of priority rules. In: Proceedings of the IEEE 3rd International Symposium on Logistics and Industrial Informatics (Lindi 2011), pp. 111–116 (2011)Google Scholar
  33. 33.
    Reinelt, G.: TSPLIB - A traveling salesman problem library. ORSA Journal on Computing 3, 376–384 (1991)zbMATHCrossRefGoogle Scholar
  34. 34.
    Ribeiro Filho, J.L., Treleaven, P.C., Alippi, C.: Genetic-algorithm programming environments. IEEE Computer 27(6), 28–43 (1994)CrossRefGoogle Scholar
  35. 35.
    Stützle, T.: Iterated local search for the quadratic assignment problem. European Journal of Operational Research 174, 1519–1539 (2006)MathSciNetzbMATHCrossRefGoogle Scholar
  36. 36.
    Taillard, E.D.: Robust taboo search for the quadratic assignment problem. Parallel Computing 17, 443–455 (1991)MathSciNetCrossRefGoogle Scholar
  37. 37.
    Voß, S., Woodruff, D.L.: Optimization software class libraries. In: Voß, S., Woodruff, D.L. (eds.) Optimization Software Class Libraries. Operations Research/Computer Science Interfaces Series, vol. 18, ch. 1, pp. 1–24. Kluwer (2002)Google Scholar
  38. 38.
    Voß, S., Woodruff, D.L. (eds.): Optimization Software Class Libraries. Operations Research/Computer Science Interfaces Series, vol. 18. Kluwer (2002)Google Scholar
  39. 39.
    Vonolfen, S., Affenzeller, M., Beham, A., Wagner, S., Lengauer, E.: Simulation-based evolution of municipal glass-waste collection strategies utilizing electric trucks. In: Proceedings of the IEEE 3rd International Symposium on Logistics and Industrial Informatics (Lindi 2011), pp. 177–182 (2011)Google Scholar
  40. 40.
    Wagner, S.: Looking Inside Genetic Algorithms. Schriften der Johannes Kepler Universität Linz, Reihe C: Technik und Naturwissenschaften. Universitätsverlag Rudolf Trauner (2004)Google Scholar
  41. 41.
    Wagner, S.: Heuristic optimization software systems - Modeling of heuristic optimization algorithms in the HeuristicLab software environment. Ph.D. thesis, Johannes Kepler University, Linz, Austria (2009)Google Scholar
  42. 42.
    Wagner, S., Affenzeller, M.: HeuristicLab Grid - A flexible and extensible environment for parallel heuristic optimization. In: Bubnicki, Z., Grzech, A. (eds.) Proceedings of the 15th International Conference on Systems Science, vol. 1, pp. 289–296. Oficyna Wydawnicza Politechniki Wroclawskiej (2004)Google Scholar
  43. 43.
    Wagner, S., Affenzeller, M.: HeuristicLab Grid. - A flexible and extensible environment for parallel heuristic optimization 30(4), 103–110 (2004)MathSciNetzbMATHGoogle Scholar
  44. 44.
    Wagner, S., Affenzeller, M.: HeuristicLab: A generic and extensible optimization environment. In: Ribeiro, B., Albrecht, R.F., Dobnikar, A., Pearson, D.W., Steele, N.C. (eds.) Adaptive and Natural Computing Algorithms, pp. 538–541. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  45. 45.
    Wagner, S., Affenzeller, M.: SexualGA: Gender-specific selection for genetic algorithms. In: Callaos, N., Lesso, W., Hansen, E. (eds.) Proceedings of the 9th World Multi-Conference on Systemics, Cybernetics and Informatics (WMSCI 2005), vol. 4, pp. 76–81. International Institute of Informatics and Systemics (2005)Google Scholar
  46. 46.
    Wagner, S., Kronberger, G., Beham, A., Winkler, S., Affenzeller, M.: Modeling of heuristic optimization algorithms. In: Bruzzone, A., Longo, F., Piera, M.A., Aguilar, R.M., Frydman, C. (eds.) Proceedings of the 20th European Modeling and Simulation Symposium, pp. 106–111. DIPTEM University of Genova (2008)Google Scholar
  47. 47.
    Wagner, S., Kronberger, G., Beham, A., Winkler, S., Affenzeller, M.: Model driven rapid prototyping of heuristic optimization algorithms. In: Quesada-Arencibia, A., Rodrígue, J.C., Moreno-Diaz Jr., R., Moreno-Diaz, R. (eds.) 12th International Conference on Computer Aided Systems Theory EUROCAST 2009, vol. 2009, pp. 250–251. IUCTC Universidad de Las Palmas de Gran Canaria (2009)Google Scholar
  48. 48.
    Wagner, S., Winkler, S., Pitzer, E., Kronberger, G., Beham, A., Braune, R., Affenzeller, M.: Benefits of plugin-based heuristic optimization software systems. In: Moreno Díaz, R., Pichler, F., Quesada Arencibia, A. (eds.) EUROCAST 2007. LNCS, vol. 4739, pp. 747–754. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  49. 49.
    Wilson, G.C., McIntyre, A., Heywood, M.I.: Resource review: Three open source systems for evolving programs - Lilgp, ECJ and Grammatical Evolution. Genetic Programming and Evolvable Machines 5(1), 103–105 (2004)CrossRefGoogle Scholar
  50. 50.
    Wolpert, D.H., Macready, W.G.: No free lunch theorems for optimization. IEEE Transactions on Evolutionary Computation 1(1), 67–82 (1997)CrossRefGoogle Scholar

Copyright information

© Springer International Publishing Switzerland 2014

Authors and Affiliations

  • S. Wagner
    • 1
  • G. Kronberger
    • 1
  • A. Beham
    • 1
  • M. Kommenda
    • 1
  • A. Scheibenpflug
    • 1
  • E. Pitzer
    • 1
  • S. Vonolfen
    • 1
  • M. Kofler
    • 1
  • S. Winkler
    • 1
  • V. Dorfer
    • 1
  • M. Affenzeller
    • 1
  1. 1.Heuristic and Evolutionary Algorithms Laboratory, School of Informatics, Communication and MediaUniversity of Applied Sciences Upper AustriaHagenbergAustria

Personalised recommendations