Advertisement

A Brief Introduction to Evolutionary Algorithms from the Perspective of Management Science

  • Volker Nissen
Chapter

Abstract

Evolutionary Algorithms (EA) represent, as nature-inspired metaheuristics, a branch of computational intelligence or soft computing. Their working is based on a rough abstraction of the mechanisms of natural evolution. They imitate biological principles, such as a population-based approach, the inheritance of information, the variation of solutions through crossover and mutation, and the selection of individual solutions for reproduction based on fitness. Different variants of Evolutionary Algorithms (EA) exist, such as Genetic Algorithms, Evolution Strategies, and Genetic Programming.

This chapter presents a brief introduction to the basic forms of EA, their benefits and limitations, as well as the general procedure to develop and apply them in practice, including self-adaptation and hybridization. Then, computational frameworks that ease the development process as well as the integration of EA in modern business software are highlighted. Providers of optimization software such as MathWorks with the “Global Optimization Toolbox”, but also large players in enterprise resource planning (ERP), such as SAP SE with “SAP APO”, integrated EA in their canons of software-based optimization methods. However, following the “No-Free-Lunch Theorem”, metaheuristics such as EA always require a certain degree of adaptation to the individual problem at hand to provide good solutions. In practice, this can pose a problem for the unexperienced user of EA-based software products. The chapter concludes with a brief assessment of the current situation concerning EA from an application-oriented point of view.

References

  1. Abraham, A., Jain, L. C., & Goldberg, R. (Eds.). (2005). Evolutionary Multiobjective Optimization: Theoretical Advances and Applications. Berlin: Springer.Google Scholar
  2. Alander, J. (2015). An Indexed Bibliography of Genetic Algorithms & Pareto and Constrained Optimization. University of Vaasa. Technical Report, (Available at http://lipas.uwasa.fi/~TAU/reports/report94-1/gaPARETObib.pdf).
  3. Bäck, T. (1992). Self-Adaptation in Genetic Algorithms. In Proceedings of the 1st European Conference on Artificial Life (pp. 263–271). Cambridge, MA: MIT Press.Google Scholar
  4. Bäck, T. (1996). Evolutionary Algorithms in Theory and Practice. New York: Oxford University Press.Google Scholar
  5. Bäck, T. (1998). An Overview of Parameter Control Methods by Self-Adaptation in Evolutionary Algorithms. Fundamenta Informaticae, 35, 51–66.Google Scholar
  6. Bäck, T., Foussette, C., & Krause, P. (2013). Contemporary Evolution Strategies. Berlin: Springer.CrossRefGoogle Scholar
  7. Baker, J. E. (1985). Adaptive Selection Methods for Genetic Algorithms. In J. J. Grefenstette (Ed.), Proceedings of an International Conference on Genetic Algorithms and Their Applications (pp. 101–111). Hillsdale: Lawrence Erlbaum.Google Scholar
  8. Baker, J. E. (1987). Reducing Bias and Inefficiency in the Selection Algorithm. In J. J. Grefenstette (Ed.), Proceedings of the Second International Conference on Genetic Algorithms (pp. 14–21). Hillsdale: Lawrence Erlbaum.Google Scholar
  9. Beyer, H.-G. (2000). Evolutionary Algorithms in Noisy Environments: Theoretical Issues and Guidelines for Practice. Computer Methods in Mechanics and Applied Engineering, 186, 239–267.CrossRefGoogle Scholar
  10. Beyer, H.-G., & Schwefel, H.-P. (2002). Evolution Strategies—A Comprehensive Introduction. Natural Computing, 1, 3–52.CrossRefGoogle Scholar
  11. Bezerra, L. C. T., Lopez-Ibanez, M., & Stützle, T. (2014). Automatic Design of Evolutionary Algorithms for Multi-Objective Combinatorial Optimization. In Proceedings of PPSN XIII, LNCS 8672 (pp. 508–517). Berlin: Springer.Google Scholar
  12. Biethahn, J., & Nissen, V. (1994). Combinations of Simulation and Evolutionary Algorithms in Management Science and Economics. Annals of Operations Research, 52, 183–208.CrossRefGoogle Scholar
  13. Biethahn, J., & Nissen, V. (Eds.). (1995). Evolutionary Algorithms in Management Applications. Berlin: Springer.Google Scholar
  14. Borenstein, Y., & Moraglio, A. (2014). Theory and Principled Methods for Designing Metaheuristics. Berlin: Springer.CrossRefGoogle Scholar
  15. Burke, E. K., Hyde, M., Kendall, G., Ochoa, G., Özcan, E., & Woodward, J. R. (2010). A Classification of Hyper-Heuristic Approaches. In M. Gendreau & J. Y. Potvin (Eds.), Handbook of Metaheuristics (pp. 449–468). Heidelberg: Springer.CrossRefGoogle Scholar
  16. Cocaña-Fernández, A., Sánchez, L., & Ranilla, J. (2016). Improving the Eco-efficiency of High Performance Computing Clusters Using EECluster. Energies, 9, 3. https://doi.org/10.3390/en9030197.CrossRefGoogle Scholar
  17. Coello Coello, C., Lamont, G. B., & van Veldhuizen, D. A. (2007). Evolutionary Algorithms for Solving Multi-Objective Problems. Berlin: Springer.Google Scholar
  18. Dahal, K., Remde, S., Cowling, P., & Colledge, N. (2008). Improving Metaheuristic Performance by Evolving a Variable Fitness Function. In J. Hemert & C. Cotta (Eds.), Proc. EvoCOP 2008. LNCS 4972 (pp. 170–181). Berlin: Springer.Google Scholar
  19. Das, S., & Suganthan, P. N. (2011). Differential Evolution: A Survey of the State-of-the-Art. IEEE Transactions on Evolutionary Computation, 15, 4–31.CrossRefGoogle Scholar
  20. Datta, R., & Deb, K. (2015). Evolutionary Constrained Optimization. Berlin: Springer.CrossRefGoogle Scholar
  21. Dawkins, R. (1976). The Selfish Gene. London: Oxford University Press.Google Scholar
  22. De Jong, K. (2006). Evolutionary Computation: A Unified Approach. Cambridge, MA: MIT Press.Google Scholar
  23. Deb, K. (2001). Multi-Objective Optimization Using Evolutionary Algorithms. Hoboken: Wiley.Google Scholar
  24. Desell, T., Clachar, S., Higgins, J., & Wild, B. (2014). Evolving Neural Network Weights for Time-Series Prediction of General Aviation Flight Data. In Proceedings of PPSN XIII (pp. 771–781). Berlin: Springer.Google Scholar
  25. Eiben, A. E., & Smith, J. E. (2015). Introduction to Evolutionary Computing (2nd ed.). Berlin: Springer.CrossRefGoogle Scholar
  26. Fink, A., & Voß, S. (2003). Anwendung von Metaheuristiken zur Lösung betrieblicher Planungsprobleme. Potenziale und Grenzen einer softwaretechnischen Unterstützung. Wirtschaftsinformatik, 45(4), 395–407.CrossRefGoogle Scholar
  27. Fister, I., Jr., Yang, X. S., Fister, I., Brest, J., & Fister, D. (2013). A Brief Review of Nature-Inspired Algorithms for Optimization. Elektrotehniˇski Vestnik (English Edition), 80(3), 1–7.Google Scholar
  28. Floreano, D., Dürr, P., & Mattiussi, C. (2008). Neuroevolution: From Architectures to Learning. Evolutionary Intelligence, 1, 47–62.CrossRefGoogle Scholar
  29. Fogel, D. B. (2006). Evolutionary Computation. Toward a New Philosophy of Machine Intelligence (3rd ed.). Piscataway: IEEE Press.Google Scholar
  30. Fogel, L., Owens, A. J., & Walsh, M. J. (1966). Artificial Intelligence Through Simulated Evolution. New York: John Wiley & Sons.Google Scholar
  31. Fortin, F. A., De Rainville, F. M., Gardner, M. A., Parizeau, M., & Gagné, C. (2012). DEAP: Evolutionary Algorithms Made Easy. Journal of Machine Learning Research, 13, 2171–2175.Google Scholar
  32. Foulds, L. R. (1983). The Heuristic Problem-Solving Approach. Journal of the Operational Research Society, 34(10), 927–934.CrossRefGoogle Scholar
  33. Gaspar-Cunha, A., Henggeler, A., & Coello Coello, C. (Eds.). (2015). Evolutionary Multi-Criterion Optimization. LNCS 9019. Berlin: Springer.Google Scholar
  34. Goldberg, D. E. (1989). Genetic Algorithms in Search, Optimization, and Machine Learning. Reading: Addison-Wesley.Google Scholar
  35. Grosan, C., & Abraham, A. (2007). Hybrid Evolutionary Algorithms: Methodologies, Architectures, and Reviews. In C. Grosan, A. Abraham, & H. Ishibuchi (Eds.), Hybrid Evolutionary Algorithms (pp. 1–17). Berlin: Springer.Google Scholar
  36. Grosan, C., Abraham, A., & Ishibuchi, H. (Eds.). (2007). Hybrid Evolutionary Algorithms. Berlin: Springer.Google Scholar
  37. Günther, M., & Nissen, V. (2009). A Comparison of Neighbourhood Topologies for Staff Scheduling with Particle Swarm Optimisation. In B. Mertsching, M. Hund, & A. Zaheer (Hrsg.), KI 2009: Advances in Artificial Intelligence, LNCS 5803 (pp. 185–192). Berlin: Springer.Google Scholar
  38. Hansen, N. (2006). The CMA Evolution Strategy: A Comparing Review. In J. A. Lozano, P. Larranaga, I. Inza, & E. Bengoetxea (Eds.), Towards a New Evolutionary Computation: Advances in Estimation of Distribution Algorithms (pp. 75–102). Berlin: Springer.CrossRefGoogle Scholar
  39. Hansen, N., & Ostermeier, A. (2001). Completely Derandomized Self-Adaptation in Evolution Strategies. Evolutionary Computation, 9(2), 159–195.CrossRefGoogle Scholar
  40. Harrald, P. G., & Kamstra, M. (1997). Evolving Artificial Neural Networks to Combine Financial Forecasts. IEEE Transactions on Evolutionary Computation, 1(1), 40–52.CrossRefGoogle Scholar
  41. Holland, J. H. (1975). Adaptation in Natural and Artificial Systems. Ann Arbor: University of Michigan Press.Google Scholar
  42. Ishibuchi, H., Tsukamoto, N., & Nojima, Y. (2008). Evolutionary Many-Objective Optimization. A Short Review. In Proceedings of 2008 IEEE Congress on Evolutionary Computation (pp. 2424–2431). Piscataway: IEEE.Google Scholar
  43. Juan, A. A., Faulin, J., Grasman, S. E., Rabe, M., & Figueira, G. (2015). A Review of Simheuristics: Extending Metaheuristics to Deal with Stochastic Combinatorial Optimization Problems. Operations Research Perspectives, 2, 62–72.CrossRefGoogle Scholar
  44. Keijzer, M.; Merelo, J.J.; Romero, G.; Schoenauer, M., Evolving Objects: A General Purpose Evolutionary Computation Library. In: Collet, P.; Fonlupt, C.; Hao, J.-K.; Lutton, E.; Schoenauer, M.: Artificial Evolution. LNCS 2310. Springer, Berlin, 2002, 231 – 242.Google Scholar
  45. Koza, J. R. (1992). Genetic Programming. Cambridge, MA: MIT Press.Google Scholar
  46. Koza, J. R. (1994). Genetic Programming II. Cambridge, MA: MIT Press.Google Scholar
  47. Kubalik, J. (2012). Hyper-Heuristic Based on Iterated Local Search Driven by Evolutionary Algorithm. In J. K. Hao & M. Middendorf (Eds.), Proceedings EvoCOP 2012 (pp. 148–159). Berlin: Springer.Google Scholar
  48. Kühn, M., Severin, T., & Salzwedel, H. (2013). Variable Mutation Rate at Genetic Algorithms: Introduction of Chromosome Fitness in Connection with Multi-Chromosome Representation. International Journal of Computer Applications, 72(17), 31–38.Google Scholar
  49. Kursawe, F. (1996, March). Unpublished Presentation. Dagstuhl Seminar on EA and Their Applications.Google Scholar
  50. Lobo, F. G., Lima, C. F., & Michalewicz, Z. (Eds.). (2007). Parameter Setting in Evolutionary Algorithms. Berlin: Springer.Google Scholar
  51. Lones, M. A. (2014). Metaheuristics in Nature-Inspired Algorithms. In Proceedings of GECCO 2014 (pp. 1419–1422). New York: ACM.Google Scholar
  52. Lozano, M., & Garcia-Martinez, C. (2010). Hybrid Metaheuristics with Evolutionary Algorithms Specializing in Intensification and Diversification: Overview and Progress Report. Computers & Operations Research, 37, 481–497.CrossRefGoogle Scholar
  53. Lozano, J. A., Larranaga, P., Inza, I., & Bengoetxea, E. (Eds.). (2006). Towards a New Evolutionary Computation: Advances in Estimation of Distribution Algorithms. Berlin: Springer.Google Scholar
  54. Lukasiewycz, M., Glaß, M., Reimann, F., & Teich, J. (2011, July 12–16). Opt4J—A Modular Framework for Meta-Heuristic Optimization. In Proceedings of GECCO’11 (pp. 1723–1730). Dublin, Ireland.Google Scholar
  55. MathWorks. (2016). Product Information for Global Optimization Toolbox on MathWorks Website. Accessed 27 Sept 2016.Google Scholar
  56. Matsui, S., Watanabe, I., & Tokoro, K. I. (2002). Real-Coded Parameter-Free Genetic Algorithm for Job-Shop Scheduling Problems. In Proceedings of PPSN VII, LNCS 2439 (pp. 800–810). Berlin: Springer.Google Scholar
  57. Mendes, R. R. F., Voznika, F., Freitas, A. A., & Nievola, J. C. (2001). Discovering Fuzzy Classification Rules with Genetic Programming and Co-evolution. In L. De Raedt & A. Siebes (Eds.), Proceedings of 5th European Conference on Principles and Practice of Knowledge Discovery in Databases (pp. 314–325). Berlin: Springer.Google Scholar
  58. Meyer-Nieberg, S., & Beyer, H. G. (2007). Self-Adaptation in Evolutionary Algorithms. In F. G. Lobo, C. F. Lima, & Z. Michalewicz (Eds.), Parameter Setting in Evolutionary Algorithms (pp. 47–75). Berlin: Springer.CrossRefGoogle Scholar
  59. Mezura-Montes, E., & Coello Coello, C. A. (2011). Constraint-Handling in Nature-Inspired Numerical Optimization: Past, Present, and Future. Swarm and Evolutionary Computation, 1(4), 173–194.CrossRefGoogle Scholar
  60. Michalewicz, Z. (1996). Genetic Algorithms + Data Structures = Evolution Programs (3rd ed.). Berlin: Springer.CrossRefGoogle Scholar
  61. Michalewicz, Z., & Fogel, D. B. (2004). How to Solve It: Modern Heuristics (2nd ed.). Berlin: Springer.CrossRefGoogle Scholar
  62. Moscato, P. (1989). On Evolution, Search, Optimization, Genetic Algorithms and Martial Arts: Towards Memetic Algorithms. TR 826, California Institute of Technology, USA.Google Scholar
  63. Mühlenbein, H., & Paaß, G. (1996). From Recombination of Genes to the Estimation of Distributions I. Binary Parameters. In Proceedings of PPSN IV. LNCS 1141 (pp. 178–187). Berlin: Springer.Google Scholar
  64. Neri, F., Cotta, C., & Moscato, P. (2012). Handbook of Memetic Algorithms. Berlin: Springer.CrossRefGoogle Scholar
  65. Newell, A. (1969). Heuristic Programming: Ill Structured Problems. In J. Aronofsky (Ed.), Progress in Operations Research (Vol. 3, pp. 361–414). New York: Wiley.Google Scholar
  66. Nissen, V. (1995). An Overview of Evolutionary Algorithms in Management Applications. In J. Biethahn & V. Nissen (Eds.), Evolutionary Algorithms in Management Applications (pp. 44–97). Berlin: Springer.CrossRefGoogle Scholar
  67. Nissen, V. (1997). Einführung in Evolutionäre Algorithmen. Wiesbaden: Vieweg.CrossRefGoogle Scholar
  68. Nissen, V., & Gold, S. (2008). Survivable Network Design with an Evolution Strategy. In A. Yang, Y. Shan, & L. T. Bui (Eds.), Success in Evolutionary Computation (pp. 263–283). Berlin: Springer.CrossRefGoogle Scholar
  69. Nissen, V., & Propach, J. (1998). On the Robustness of Population-Based Versus Point-Based Optimization in the Presence of Noise. IEEE Transactions on Evolutionary Computation, 2(3), 107–119.CrossRefGoogle Scholar
  70. Parejo, J. A., Ruiz-Cortés, A., Lozano, S., & Fernandez, P. (2012). Metaheuristic Optimization Frameworks: A Survey and Benchmarking. Soft Computing, 16(3), 527–561.CrossRefGoogle Scholar
  71. Poli, R., Langdon, W. B., McPhee, N. F., & Koza, J. R. (2008). A Field Guide to Genetic Programming. Freely available at http://www.gp-field-guide.org.uk.
  72. Rechenberg, I. (1973). Evolutionsstrategie. Optimierung technischer Systeme nach Prinzipien der biologischen Evolution. Stuttgart: Frommann-Holzboog.Google Scholar
  73. Rothlauf, F. (2006). Representations for Genetic and Evolutionary Algorithms (2nd ed.). Heidelberg: Springer.Google Scholar
  74. Rothlauf, F. (2011). Design of Modern Heuristics. Principles and Application. Berlin: Springer.CrossRefGoogle Scholar
  75. SAP SE. (2016). SAP Help SCM 7.0 Optimization. Accessed 27 Sept 2016.Google Scholar
  76. Sarker, R. A., Elsayed, S. M., & Ray, T. (2014). Differential Evolution with Dynamic Parameters Selection for Optimization Problems. IEEE Transactions on Evolutionary Computation, 18(5), 689–707.CrossRefGoogle Scholar
  77. Sawai, H., & Kizu, S. (1998). Parameter-Free Genetic Algorithm Inspired by “Disparity Theory of Evolution”. In Proceedings of PPSN V (pp. 702–711). Berlin/Heidelberg: Springer.Google Scholar
  78. Schwefel, H.-P. (1975). Evolutionsstrategie und numerische Optimierung, Dissertation, TU Berlin.Google Scholar
  79. Schwefel, H.-P. (1981). Numerical Optimization of Computer Models. Chichester: Wiley.Google Scholar
  80. Schwefel, H.-P. (1995). Evolution and Optimum Seeking. New York: Wiley.Google Scholar
  81. Smith, J. S. (2008). Self-Adaptation in Evolutionary Algorithms for Combinatorial Optimisation. In C. Cotta, M. Sevaux, & K. Sörensen (Eds.), Adaptive and Multilevel Metaheuristics (pp. 31–57). Berlin: Springer.CrossRefGoogle Scholar
  82. Sörensen, K. (2015). Metaheuristics—The Metaphor Exposed. International Transaction in Operational Research, 22, 3–18.CrossRefGoogle Scholar
  83. Sörensen, K., & Glover, F. (2013). Metaheuristics. In S. Gass & M. Fu (Eds.), Encyclopedia of OR/MS (3rd ed., pp. 960–970). Hoboken: Wiley.Google Scholar
  84. Sörensen, K., Sevaux, M., & Glover, F. (2016). A History of Metaheuristics. In R. Marti, P. Pardalos, & M. Resende (Eds.), Handbook of Heuristics. Berlin: Springer. (to appear).Google Scholar
  85. Storn, R., & Price, K. (1995). Differential Evolution: A Simple and Efficient Adaptive Scheme for Global Optimization over Continuous Spaces. Int. Comp. Sci. Inst., Berkeley, CA, Tech. Rep. TR-95-012.Google Scholar
  86. Weyland, D. (2015). A Critical Analysis of the Harmony Search Algorithm—How Not to Solve Sudoku. Operations Research Perspectives, 2, 97–105.CrossRefGoogle Scholar
  87. Wolpert, D. H., & Macready, W. G. (1997). No Free Lunch Theorems for Optimisation. IEEE Transactions on Evolutionary Computation, 1, 67–82.CrossRefGoogle Scholar
  88. Xhafa, F. (2007). A Hybrid Evolutionary Heuristic for Job Scheduling in Computational Grids. In J. Kacprzyk (Ed.), Studies in Computational Intelligence (Vol. 75). Berlin: Springer, (Chapter 10).Google Scholar
  89. Yang, X. S. (2014). Nature-Inspired Optimization Algorithms. Amsterdam: Elsevier.Google Scholar
  90. Yao, X. (1999). Evolving Artificial Neural Networks. Proceedings of the IEEE, 87(9), 1423–1447.CrossRefGoogle Scholar

Copyright information

© The Author(s) 2018

Authors and Affiliations

  • Volker Nissen
    • 1
  1. 1.Information Systems Engineering in ServicesUniversity of Technology IlmenauIlmenauGermany

Personalised recommendations