A Systematic Review of Multi-Objective Evolutionary Algorithms Optimization Frameworks
Abstract
:1. Introduction
1.1. Evolutionary Computing
- -
- Evolutionary strategies: Proposed and developed starting in 1970 by Ingo Reichenberg and Hans-Paul Schwefel [1]. The representation of individuals consists of floating-point numbers and the main characteristic is the variable step of mutation.
- -
- Genetic programming: Developed from 1990 by John Koza [2]. Data is represented as trees with crossover being accomplished through prune and graft operations. It fits very well in languages such as LISP.
- -
- Evolutionary programming: Introduced in 1960 by J.L Fogel [3]. It is very similar to genetic programming but the representation is performed by the use of a finite state machine and is mutation based (no crossover).
- -
- Genetic algorithms: These algorithms are the most widely known type of evolutionary algorithms. The mechanism for formalizing the prediction of individuals’ quality in successive generations, the so-called Schemata Theory was introduced, with their help, by John Holland in 1970 [4].
1.2. Objectives
- RQI:
- Which are the most useful tools/platforms available for working with Multi-Objective Optimization Evolutionary Algorithms and their target problems?
- RQII:
- What essential features do they provide?
- RQIII:
- Which are the constraints and limitations?
- RQIV:
- How easily to extensible and maintainable are these tools from a software perspective?
2. Research Strategy
Bibliometric Study
- Choosing the research criteria: We decided to select research papers from the Scopus database referring to “multi-objective”, “algorithms”, “optimization” and “platforms”.
- Choosing the time period: We selected the “2005–present” period to provide our study a higher relevance. Prior to 2005, there was a significantly smaller number of publications than after 2005.
- Analysis of results: An investigation of over 1760 papers returned by the criteria from steps 1 and 2. This analysis included the number of citations, the interest, and the relevance of the paper subject and the most frequent of the selected keywords.
- Pre-processing data: Before using the data gathered from Scopus, we had to preprocess some of the keywords and syntaxes. In most cases, we aggregated two or more terms referring to the same concept, but still kept the total number of occurrences of all of them. For example, we combined “genetic algorithm” and “genetic-algorithms” as “genetic algorithm”. Similarly, instead of “energy consumption”, “energy distribution”, “energy optimization” we used “energy utilization”.
- Analysis of occurrences: An investigation of the key terms to have strong correlations with each other, as indicated by authors from the Scopus database. We used the VOSviewer tool [28] in order to perform these advanced clustering correlations. We selected only the keywords that occurred at least 35 times. Moreover, by using the same tool, we generated in Figure 2 a map of the current research trends in scientific literature. The 4 clusters obtained are presented in Table 2, Table 3, Table 4 and Table 5.
3. State-of-the-Art Algorithms
4. Frameworks
4.1. PlatEMO
- It is an open-source framework The source code is publicly available on GitHub for developers’ contributions.
- It consists of a very rich and complex library of algorithms. There are more than 250 algorithms available in the application, divided in 4 categories: single objective, multi-objective (2 or 3 objectives) and many-objective (4 or more objectives). It consists of a large number of optimization problems—over 100 such problems.
- It provides easy extensibility. The software architecture is structured well so that the interface level allows an easy extensibility of the tool with new algorithms and problems. In order to run different algorithms or problems, no more code is needed, since the GUI allows the user to select the desired options. This GUI allows the user to see the generation-by-generation evolution of solutions around the true Pareto-front and quality indicators of the results over the entire run.
- The software design allows the implementation of different meta-optimization algorithms, such as that presented in [63]. It would be possible to create at least two threads, each of them for one of the super-positioned algorithms, followed by starting the simulation on the same problem.
- A check-pointing mechanism to save individuals or populations periodically, in case some simulations fail before the end of the last generation.
- It does not address the mechanism of parallelization of the evaluation functions inside the individuals. This could generate very long runs in case of a complex and time-consuming problem.
- It does not include relatively new proposed algorithms such as RDA, Gray-Wolf, MOGBO, etc.
- It does not allow the user to change the range of the design variables, nor the constraints, where possible, for the selected optimization problems.
4.2. PyMOO
- It is an open-source framework. It is publicly available on GitHub for developers’ contributions.
- It provides single-objective, multi-objective, and many-objective test problems.
- Optimization constraints are also available for the user.
- It contains gradient information provided by automatic differentiation [64].
- Problems: single-, multi-, and many-objectives;
- Optimization (genetic operations): Crossover, Mutation, Survival, etc.;
- Analytics: Visualization, Performance Indicator, Decision Making. This extra feature, called Decision Making, provides some options to select one solution from the final Pareto-front, depending on different preferences.
- In order to run new simulations, the user has to write new code.
- Every time a new algorithm or the same algorithm with different parameters needs to be started, a new object has to be created.
- This also applies to the other components: problems, quality indicators, etc. This is not necessarily a major problem, but some researchers might be interested in black-box usage of the tool: initial-config + results interpretation.
- The MOA library is extremely poor, containing less than 20 algorithms.
- The same happens with problems. There are few problems for testing those algorithms. Therefore, it does not include relatively new proposed algorithms such as: RDA, Gray-Wolf, MOGBO, etc.
4.3. jMetal
- It contains a very rich set of algorithms and problems, around 100 state-of-the art algorithms.
- There are 3 possible categories: single-objective, multi-objective and many-objective algorithms.
- The software architecture consists of a very good object-oriented base design. Each category of algorithms inherits its own specific path, making it easy to maintain and easy to use. Therefore, a very easy extensibility with new algorithms and problems is possible.
- Documentation, code snippets, and examples of how to use different features and quality indicators are provided.
- It is relatively easy to integrate a meta-optimization and super-position mechanism within jMetal. The software design makes it feasible for such extensions.
- There is no parallelization mechanism addressed.
- There is no checkpointing mechanism addressed.
- The results are not displayed in a visual manner. As mentioned earlier, it might be regarded as a library, but the end should be given a confirmation about the end of the simulation and the obtained results.
- It does not include relatively new proposed algorithms such as: Hyena, Gray-Wolf, MOGBO, etc.
4.4. Evolver
- The algorithm, whose optimal configuration is to be found and is referred to as a Configurable Algorithm is given a training set. This set is actually a collection of optimization problems; hence the diversity of training is provided.
- It could be easily extended to work with any real-world engineering problem. As an example, in the original paper, the authors present a case-study of an injector design problem. As an objective of meta-optimization, a list of quality indicators is set to be minimized. This list is configurable.
- Evolver—the core of the meta-optimization approach (jMetal, problems, etc.);
- Evolver Dashboard—a user-friendly web application built with Python, which allows the user to configure and modify all of the parameters for meta-optimization. The web-interface provides a very detailed and relevant visualization of the results: generation-by-generation population, indicator values, time, evaluations, pareto-front, etc.
- The project comes also as a pre-built docker package to ease the interaction with the tool. It provides easy software extensibility.
- The algorithmic idea of meta-optimization might take a lot of time to run, typically when the problem to optimize is very complex. An evolutionary algorithm itself might require a significant amount of time, let alone an algorithm which uses a population of such evolutionary algorithms.
- Considering the previous idea, checkpointing, individual reusability mechanisms, and evaluation parallelization should be addressed.
- A logging feature to save the progress or status of simulation at some points in time would be useful, as well. In the case of a long-run simulation, the evaluation of some individuals may fail or the simulation itself may fail, therefore, leading to unknown scenarios.
4.5. FADSE
- An open-source framework that is based on jMetal library. Therefore, it comes with a rich library of algorithms and problems. It is publicly available on GitHub for developers’ contributions.
- It includes single and multi-objective algorithms.
- It provides quality indicators and several monitoring reports to see the progress of the current simulations.
- It also provides a robustness mechanism including a SQL database connection in order to save the already simulated individuals. It is also tolerant to simulation failures due to the checkpointing mechanism.
- It is possible to use fuzzy logic rules in order to help algorithms to obtain a faster convergence. This fuzzy mechanism is easy to extend and manipulate by domain knowledge experts.
- There is a parallelization mechanism implemented in FADSE, such that, if connected to a computer network or high-performance computers, individuals are sent among this network and simulated at the same time.
- The main drawback of FADSE is that it uses jMetal version 0.8. This is one of the first versions of jMetal and it is outdated. The object-orientated design is very poor. Therefore, the extensibility of the tool is very difficult because of this poor software design. Since the jMetal library used is that old, FADSE misses many of the more recent algorithms.
- The same thing is valid for optimization problems and metrics.
- Moreover, all the changes have been made directly inside the code of this old metaheuristics library over time. That means that an update to a recent version of jMetal is extremely difficult because of the lack of compatibilities between the current jMetal version included in FADSE and other recent jMetal versions.
- It does not provide a GUI, but the input to FADSE is given in a custom xml file. Nevertheless, FADSE provides features to run simulations on High-Performance Computers within Local Area Networks.
- Nevertheless, the documentation is missing, which makes it very difficult for developers to get started with FADSE.
- It is not possible to implement any meta-optimization or superposition mechanism because the software architecture was designed so that a simulation allows only one thread to be started for one optimization problem.
4.6. General Comparison
5. Discussions
5.1. Constraints and Limitations
5.2. Other Specialized Optimization Existing Platforms
5.3. Future Developments
6. Concluding Remarks
Funding
Conflicts of Interest
References
- Beyer, H.-G.; Schwefel, H.-P. Evolution strategies—A comprehensive introduction. Nat. Comput. 2002, 1, 3–52. [Google Scholar] [CrossRef]
- Koza, J. Non-Linear Genetic Algorithms for Solving Problems. U.S. Patent No. 4,935,877, 19 June 1990. [Google Scholar]
- Fogel, L. Intelligence through Simulated Evolution: Forty Years of Evolutionary Programming; John Wiley & Sons, Inc.: Hoboken, NJ, USA, 1999. [Google Scholar]
- Holland, J. Adaptation in Natural and Artificial Systems: An Introductory Analysis with Applications to Biology, Control and Artificial Intelligence; MIT Press: Cambridge, MA, USA, 1975. [Google Scholar]
- Sharma, S.; Chahar, V. A Comprehensive Review on Multi-objective Optimization Techniques: Past, Present and Future. Arch. Comput. Methods Eng. 2022, 29, 5605–5633. [Google Scholar] [CrossRef]
- Liu, H.; Li, Y.; Duan, Z.; Chen, C. A review on multi-objective optimization framework in wind energy forecasting techniques and applications. Energy Convers. Manag. 2020, 224, 113324. [Google Scholar] [CrossRef]
- Calborean, H.; Vintan, L. An automatic design space exploration framework for multicore architecture optimizations. In Proceedings of the 9th RoEduNet IEEE International Conference, Sibiu, Romania, 24–26 June 2010; pp. 202–207. [Google Scholar]
- Tian, Y.; Cheng, R.; Zhang, X.; Jin, Y. PlatEMO: A MATLAB Platform for Evolutionary Multi-Objective Optimization. IEEE Comput. Intell. Mag. 2017, 12, 73–87. [Google Scholar] [CrossRef]
- Evins, R. A review of computational optimisation methods applied to sustainable building design. Renew. Sustain. Energy Rev. 2013, 22, 230–245. [Google Scholar] [CrossRef]
- Altiparmak, F.; Gen, M.; Lin, L.; Paksoy, T. A genetic algorithm approach for multi-objective optimization of supply chain networks. Comput. Ind. Eng. 2006, 51, 196–215. [Google Scholar] [CrossRef]
- Zhu, Z.; Zhang, G.; Li, M.; Liu, X. Evolutionary Multi-Objective Workflow Scheduling in Cloud. IEEE Trans. Parallel Distrib. Syst. 2016, 27, 1344–1357. [Google Scholar] [CrossRef]
- Kaur, K.; Garg, S.; Aujla, G.S.; Kumar, N.; Rodrigues, J.J.P.C.; Guizani, M. Edge Computing in the Industrial Internet of Things Environment: Software-Defined-Networks-Based Edge-Cloud Interplay. IEEE Commun. Mag. 2018, 56, 44–51. [Google Scholar] [CrossRef]
- Alba, E.; Luque, G.; Nesmachnow, S. Parallel metaheuristics: Recent advances and new trends. Int. Trans. Oper. Res. 2013, 20, 1–48. [Google Scholar] [CrossRef]
- Liu, S.; Wang, S.; Zhu, F.; Zhang, J.; Krishnan, R. HYDRA: Large-scale social identity linkage via heterogeneous behavior modeling. In Proceedings of the ACM SIGMOD International Conference on Management of Data, Snowbird, UT, USA, 22–27 June 2014; pp. 51–62. [Google Scholar]
- Wang, Y.; Liu, H.; Zheng, W.; Xia, Y.; Li, Y.; Cheng, P.; Guo, K.; Xie, H. Multi-objective workflow scheduling with deep-Q-network-based multi-agent reinforcement learning. IEEE Access 2019, 7, 39974–39982. [Google Scholar] [CrossRef]
- Liu, Q.; Cai, W.; Shen, J.; Fu, Z.; Liu, X.; Linge, N. A speculative approach to spatial-temporal efficiency with multi-objective optimization in a heterogeneous cloud environment. Secur. Commun. Netw. 2016, 9, 4002–4012. [Google Scholar] [CrossRef]
- Zhou, X.; Zhang, G.; Sun, J.; Zhou, J.; Wei, T.; Hu, S. Minimizing cost and makespan for workflow scheduling in cloud using fuzzy dominance sort based HEFT. Future Gener. Comput. Syst. 2019, 93, 278–289. [Google Scholar] [CrossRef]
- Lukasiewycz, M.; Glaß, M.; Reimann, F.; Teich, J. Opt4J: A modular framework for meta-heuristic optimization. In Proceedings of the 13th Annual Conference Genetic and Evolutionary, Dublin, Ireland, 12–16 July 2011; pp. 1723–1730. [Google Scholar]
- Shen, R.; Zheng, J.; Li, M. A hybrid development platform for evolutionary multi-objective optimization. In Proceedings of the 2015 IEEE Congress on Evolutionary Computation (CEC), Sendai, Japan, 25–28 May 2015; pp. 1885–1892. [Google Scholar]
- Bezerra, L.C.T.; Lopez-Ibanez, M.; Stutzle, T. Automatic Component-Wise Design of Multiobjective Evolutionary Algorithms. IEEE Trans. Evol. Comput. 2016, 20, 403–417. [Google Scholar] [CrossRef]
- Jones, J.; Clark, R.D.; Lawless, M.S.; Miller, D.W.; Waldman, M. The AI-driven Drug Design (AIDD) platform: An interactive multi-parameter optimization system integrating molecular evolution with physiologically based pharmacokinetic simulations. J. Comput. Mol. Des. 2024, 38, 1–20. [Google Scholar] [CrossRef]
- Yi, J.-C.; Yang, Z.-Y.; Zhao, W.-T.; Yang, Z.-J.; Zhang, X.-C.; Wu, C.-K.; Lu, A.-P.; Cao, D.-S. ChemMORT: An automatic ADMET optimization platform using deep learning and multi-objective particle swarm optimization. Brief. Bioinform. 2024, 25, bbae008. [Google Scholar] [CrossRef]
- Kronfeld, M.; Planatscher, H.; Zell, A. The EvA2 Optimization Framework. In Learning and Intelligent Optimization; Springer: Berlin/Heidelberg, Germany, 2010; pp. 247–250. [Google Scholar]
- Ventura, S.; Romero, C.; Zafra, A.; Delgado, J.A.; Hervás, C. JCLEC: A Java framework for evolutionary computation. Soft Comput.-Fusion Found. Methodol. Appl. 2008, 12, 381–392. [Google Scholar] [CrossRef]
- Liefooghe, A.; Basseur, M.; Jourdan, L.; Talbi, E.-G. ParadisEO-MOEO: A framework for evolutionary multi-objective optimization. In Proceedings of the International Conference on Evolutionary Multi-Criterion Optimization, Matsushima, Japan, 5–8 March 2007; pp. 386–400. [Google Scholar]
- Bleuler, S.; Laumanns, M.; Thiele, L.; Zitzler, E. PISA-a platform and programming language independent interface for search algorithms. In Proceedings of the International Conference on Evolutionary Multi-Criterion Optimization, Faro, Portugal, 8–11 April 2003; pp. 494–508. [Google Scholar]
- Wagner, S.; Affenzeller, M. HeuristicLab: A Generic and Extensible. In Adaptive and Natural Computing Algorithms; Springer: Vienna, Austria, 2005; pp. 538–541. [Google Scholar]
- Van Eck, N.J.; Waltman, L. VOSviewer Manual. 2017. Available online: http://vosviewer.com/download/f-y2z2.pdf (accessed on 12 March 2024).
- Deb, K.; Pratap, A.; Agarwal, S.; Meyarivan, T. A fast and elitist multi-objective genetic algorithm: NSGA-II. IEEE Trans. Evol. Comput. 2002, 6, 182–197. [Google Scholar] [CrossRef]
- Zitzler, E.; Laumanns, M.; Thiele, L. SPEA2: Improving the Strength Pareto Evolutionary Algorithm; TIK-Report; ETH Zurich, Computer Engineering and Networks Laboratory: Zurich, Switzerland, 2001. [Google Scholar]
- Deb, K.; Goel, T. Controlled Elitist Non-dominated Sorting Genetic Algorithms for Better Convergence. In Evolutionary Multi-Criterion Optimization; EMO 2001; Lecture Notes in Computer Science; Springer: Berlin/Heidelberg, Germany, 2001; Volume 1993. [Google Scholar]
- Deb, K.; Jain, H. An evolutionary many-objective optimization algorithm using reference-point-based nondominated sorting approach, part I: Solving problems with box constraints. IEEE Trans. Evol. Comput. 2014, 18, 577–601. [Google Scholar] [CrossRef]
- Jain, H.; Deb, K. An evolutionary many-objective optimization algorithm using reference-point based nondominated sorting approach, part II: Handling constraints and extending to an adaptive approach. IEEE Trans. Evol. Comput. 2014, 18, 602–622. [Google Scholar] [CrossRef]
- He, Z.; Yen, G.G.; Zhang, J. Fuzzy-Based Pareto Optimality for Many-Objective Evolutionary Algorithms. IEEE Trans. Evol. Comput. 2013, 18, 269–285. [Google Scholar] [CrossRef]
- Nebro, A.; Durillo, J.; García-Nieto, J.; Coello, C.; Luna, F.; Alba, E. SMPSO: A new PSO-based metaheuristic for multi-objective optimization. In Proceedings of the IEEE Symposium on Computational Intelligence in Multi-Criteria Decision-Making, MCDM, Nashville, TN, USA, 30 March–2 April 2009; pp. 66–73. [Google Scholar]
- Fathollahi-Fard, A.M.; Hajiaghaei-Keshteli, M. Red Deer Algorithm (RDA): A new optimization algorithm inspired by Red Deers’ mating. In Proceedings of the International Conference on Industrial Engineering, Tehran, Iran, 25–26 January 2016; Volume 12, pp. 331–342. [Google Scholar]
- Mirjalili, S.; Mirjalili, S.M.; Lewis, A.; Optimizer, G.W. Grey wolf optimizer. Adv. Eng. Softw. 2014, 69, 46–61. [Google Scholar]
- Dhiman, G.; Kumar, V. Spotted hyena optimizer: A novel bio-inspired based metaheuristic technique for engineering applications. Adv. Eng. Softw. 2017, 114, 48–70. [Google Scholar] [CrossRef]
- Premkumar, M.; Jangir, P.; Sowmya, R. MOGBO: A new Multi-objective Gradient-Based Optimizer for real-world structural optimization problems. Knowl.-Based Syst. 2021, 218, 106856. [Google Scholar] [CrossRef]
- Dulebenets, M.A. An Adaptive Polyploid Memetic Algorithm for scheduling trucks at a cross-docking terminal. Inf. Sci. 2021, 565, 390–421. [Google Scholar] [CrossRef]
- Wei, Z.; Wang, H.; Wang, S.; Zhang, Z.; Cui, Z.; Wang, F.; Peng, H.; Zhao, J. Many-objective evolutionary algorithm based on parallel distance for handling irregular Pareto fronts. Swarm Evol. Comput. 2024, 86, 101539. [Google Scholar] [CrossRef]
- Xiong, J.; Liu, G.; Gao, Z.; Zhou, C.; Hu, P.; Bao, Q. A many-objective evolutionary algorithm based on learning assessment and mapping guidance of historical superior information. J. Comput. Des. Eng. 2024, 11, 194–229. [Google Scholar] [CrossRef]
- Chu, X.; Ming, F.; Gong, W. Competitive Multitasking for Computational Resource Allocation in Evolutionary Constrained Multi-Objective Optimization. IEEE Trans. Evol. Comput. 2024; Early Access. [Google Scholar]
- Neghină, M.; Dicoiu, A.-I.; Chiş, R.; Florea, A. A competitive new multi-objective optimization genetic algorithm based on apparent front ranking. Eng. Appl. Artif. Intell. 2024, 132, 107870. [Google Scholar] [CrossRef]
- Blank, J.; Deb, K. Pymoo: Multi-Objective Optimization in Python. IEEE Access 2020, 8, 89497–89509. [Google Scholar] [CrossRef]
- Durillo, J.; Nebro, A.; Luna, F.; Dorronsoro, B.; Alba, E.; Teatinos, C. jMetal: A Java Framework for Developing Multi-Objective Optimization Metaheuristics; TECH-REPORT: ITI-2006-10; University of Malaga: Malaga, Spain, 2006. [Google Scholar]
- Durillo, J.J.; Nebro, A.J. jMetal: A Java framework for multi-objective optimization. Adv. Eng. Softw. 2011, 42, 760–771. [Google Scholar] [CrossRef]
- Aldana-Martín, J.F.; Durillo, J.J.; Nebro, A.J. Evolver: Meta-optimizing multi-objective metaheuristics. SoftwareX 2023, 24, 101551. [Google Scholar] [CrossRef]
- Nebro, A.J.; Durillo, J.J.; Vergne, M. Redesigning the jMetal Multi-Objective Optimization Framework. In Proceedings of the Companion Publication of the 2015 Annual Conference on Genetic and Evolutionary Computation (GECCO Companion ’15), Madrid, Spain, 11–15 July 2015; pp. 1093–1100. [Google Scholar]
- Calborean, H. Multi-Objective Optimization of Advanced Computer Architectures Using Domain-Knowledge. Ph.D. Thesis, “Lucian Blaga” University of Sibiu, Sibiu, Romania, 2011. [Google Scholar]
- Chiș, R. Developing Effective Multi-Objective Optimization Methods for Complex Computing Systems. Ph.D. Thesis, “Lucian Blaga” University of Sibiu, Sibiu, Romania, 2017. [Google Scholar]
- Zwart, S.P. The ecological impact of high-performance computing in astrophysics. Nat. Astron. 2020, 4, 819–822. [Google Scholar] [CrossRef]
- Pereira, R.; Couto, M.; Ribeiro, F.; Rua, R.; Cunha, J.; Fernandes, J.; Saraiva, J. Energy efficiency across programming languages: How do energy, time, and memory relate? In Proceedings of the 10th ACM SIGPLAN International Conference, Vancouver, BC, Canada, 23–24 October 2017. [Google Scholar]
- Pereira, R.; Couto, M.; Ribeiro, F.; Rua, R.; Cunha, J.; Fernandes, J.P.; Saraiva, J. Ranking programming languages by energy efficiency. Sci. Comput. Program. 2021, 205, 102609. [Google Scholar] [CrossRef]
- Georgiou, S.; Kechagia, M.; Spinellis, D. Analyzing Programming Languages’ Energy Consumption: An Empirical Study. In Proceedings of the 21st Pan-Hellenic Conference on Informatics (PCI ’17). Association for Computing Machinery, Larissa, Greece, 28–30 September 2017; Springer: Berlin/Heidelberg, Germany, 2017; pp. 1–6. [Google Scholar]
- Rashid, M.; Ardito, L.; Torchiano, M. Energy Consumption Analysis of Algorithms Implementations. In Proceedings of the Conference: Symposium on Empirical Software Engineering and Measurement, Beijing, China, 22–23 October 2015. [Google Scholar]
- Jamil, M.N.; Kor, A.-L. Analyzing energy consumption of nature-inspired optimization algorithms. Green Technol. Resil. Sustain. 2022, 2, 1. [Google Scholar] [CrossRef]
- Florea, A.; Cofaru, I.; Patrausanu, A.; Cofaru, N.; Fiore, U. Superposition of populations in multi-objective evolutionary optimization of car suspensions. Eng. Appl. Artif. Intell. 2023, 126, 107026. [Google Scholar] [CrossRef]
- Florea, A.; Cofaru, N. Implementing some Evolutionary Computing Methods for Determining the Optimal Parameters in the Turning Process. Appl. Mech. Mater. 2015, 809, 902–907. [Google Scholar] [CrossRef]
- Florea, A.; Gellert, A. Different approaches for solving optimization problems using interactive e-learning tools. Elearning Softw. Educ. 2014, 181. [Google Scholar]
- Carlson, T.E.; Heirman, W.; Eeckhout, L. Sniper: Exploringthe the Level of Abstraction for Scalable and Accurate Parallel Multi-Core Simulation. In Proceedings of the International Conference for High Performance Computing, Networking, Storage and Analysis (SC), Seattle, WA, USA, 12–18 November 2011; pp. 1–12. [Google Scholar]
- Sharkey, J.; Ponomarev, D.; Ghose, K. M-sim: A Flexible, Multithreaded Architectural Simulation Environment; Technical Report; Department of Computer Science, State University of New York at Binghamton: Binghamton, NY, USA, 2005. [Google Scholar]
- Vintan, L.; Chis, R.; Ismail, M.; Cotofana, C. Improving Computing Systems Automatic Multi-Objective Optimization through Meta-Optimization. IEEE Trans. Comput.-Aided Des. Integr. Circuits Syst. 2015, 35, 1125–1129. [Google Scholar] [CrossRef]
- Bücker, M.; Corliss, G.; Hovland, P.; Naumann, U.; Norris, B. Automatic Differentiation: Applications, Theory, and Implementations. Lect. Notes Comput. Sci. Eng. 2006, 50. [Google Scholar]
- Benítez-Hidalgo, A.; Nebro, A.J.; García-Nieto, J.; Oregi, I.; Del Ser, J. jMetalPy: A Python framework for multi-objective optimization with metaheuristics. Swarm Evol. Comput. 2019, 51, 100598. [Google Scholar] [CrossRef]
- Uhrig, S.; Shehan, B.; Jahr, R.; Ungerer, T. A Two-Dimensional Superscalar Processor Architecture. In Proceedings of the 2009 Computation World: Future Computing, Service Computation, Cognitive, Adaptive, Content, Patterns, Athens, Greece, 15–20 November 2009; pp. 608–611. [Google Scholar]
- Knowles, J.; Corne, D. On metrics for comparing nondominated sets. In Proceedings of the 2002 Congress on Evolutionary Computation, CEC’02 (Cat. No.02TH8600), Honolulu, HI, USA, 12–17 May 2002; Volume 1, pp. 711–716. [Google Scholar]
- Zitzler, E.; Thiele, L.; Laumanns, M.; Fonseca, C.; da Fonseca, V. Performance assessment of multiobjective optimizers: An analysis and review. IEEE Trans. Evol. Comput. 2003, 7, 117–132. [Google Scholar] [CrossRef]
- Zitzler, E.; Thiele, L. Multiobjective optimization using evolutionary algorithms—A comparative case study. In Proceedings of the 5th International Conference on Parallel Problem Solving from Nature (PPSN-V), Amsterdam, The Netherlands, 27–30 September 1998; Eiben, A.E., Back, T., Schoenauer, M., Schwefel, H.P., Eds.; Springer: Berlin/Heidelberg, Germany, 1998; pp. 292–301. [Google Scholar]
- Zitzler, E. Evolutionary Algorithms for Multiobjective Optimization: Methods and Applications. Ph.D. Thesis, ETH Zurich, Zurich, Switzerland, 1999. [Google Scholar]
- Zhou, A.; Jin, Y.; Zhang, Q.; Sendhoff, B.; Tsang, E. Combining Model-based and Genetics-based Offspring Generation for Multi-objective Optimization Using a Convergence Criterion. In Proceedings of the 2006 IEEE International Conference on Evolutionary Computation, Vancouver, BC, Canada, 16–21 July 2006; pp. 892–899. [Google Scholar]
- Laumanns, M.; Thiele, L.; Zitzler, E. An efficient, adaptive parameter variation scheme for metaheuristics based on the epsilon-constraint method. Eur. J. Oper. Res. 2006, 169, 932–942. [Google Scholar] [CrossRef]
- García-León, A.A.; Dauzère-Pérès, S.; Mati, Y. An efficient Pareto approach for solving the multi-objective flexible job-shop scheduling problem with regular criteria. Comput. Oper. Res. 2019, 108, 187–200. [Google Scholar] [CrossRef]
- Van Veldhuizen, D.; Lamont, G. Evolutionary computation and convergence to a Pareto front. In Late Breaking Papers at the Genetic Programming 1998 Conference; Koza, J.R., Ed.; Stanford University Bookstore: Stanford, CA, USA, 1998; pp. 221–228. [Google Scholar]
- CoelloCoello, C.; ReyesSierra, M. A study of the parallelization of a coevolutionary multi-objective evolutionary algorithm. In MICAI 2004 Advances in Artificial Intelligence; Monroy, R., Arroyo-Figueroa, G., Sucar, L.E., Sossa, H., Eds.; Springer: Berlin/Heidelberg, Germany, 2004; pp. 688–697. [Google Scholar]
- Shajii, A.; Numanagić, I.; Leighton, A.T.; Greenyer, H.; Amarasinghe, S.; Berger, B. A Python-based optimization framework for high-performance genomics. bioRxiv 2020. [Google Scholar] [CrossRef]
- Mondelli, M.L.; Magalhães, T.; Loss, G.; Wilde, M.; Foster, I.; Mattoso, M.; Katz, D.; Barbosa, H.; de Vasconcelos, A.T.R.; Ocaña, K.; et al. BioWorkbench: A high-performance framework for managing and analyzing bioinformatics experiments. PeerJ 2018, 6, e5551. [Google Scholar] [CrossRef]
- Zambrano-Vega, C.; Nebro, A.J.; Aldana-Montes, J.F. MO-Phylogenetics: A phylogenetic inference software tool with multi-objective evolutionary metaheuristics. Methods Ecol. Evol. 2016, 7, 800–805. [Google Scholar] [CrossRef]
- Legato, P.; Mazza, R.M.; Fortino, G. A multi-level simulation-based optimization framework for IoT-enabled elderly care systems. Simul. Model. Pract. Theory 2022, 114, 102420. [Google Scholar] [CrossRef]
- Gillis, M.; Urban, R.; Saif, A.; Kamal, N.; Murphy, M. A simulation–optimization framework for optimizing response strategies to epidemics. Oper. Res. Perspect. 2021, 8, 100210. [Google Scholar] [CrossRef]
- Badakhshan, E.; Ball, P. A simulation-optimization approach for integrating physical and financial flows in a supply chain under economic uncertainty. Oper. Res. Perspect. 2023, 10, 100270. [Google Scholar] [CrossRef]
Authors | Title | Source | Year | Times Cited |
---|---|---|---|---|
Tian, Y., Cheng, R., Zhang, X., Jin, Y. [8] | PlatEMO: A MATLAB Platform for Evolutionary Multi-Objective Optimization [Educational Forum] | IEEE Computational Intelligence Magazine, 12(4), pp. 73–87, 8065138 | 2017 | 1406 |
Evins, R. [9] | A review of computational optimization methods applied to sustainable building design | Renewable and Sustainable Energy Reviews, 22, pp. 230–245 | 2013 | 551 |
Altiparmak, F., Gen, M., Lin, L., Paksoy, T. [10] | A genetic algorithm approach for multi-objective optimization of supply chain networks | Computers and Industrial Engineering, 51(1), pp. 196–215 | 2006 | 496 |
Zhu, Z., Zhang, G., Li, M., Liu, X. [11] | Evolutionary Multi-Objective Workflow Scheduling in Cloud | IEEE Transactions on Parallel and Distributed Systems, 27(5), pp. 1344–1357, 7127017 | 2016 | 324 |
Kaur, K., Garg, S., Aujla, G.S., Kumar, N., Rodrigues, J.J.P.C., Guizani, M. [12] | Edge Computing in the Industrial Internet of Things Environment: Software-Defined-Networks-Based Edge-Cloud Interplay | IEEE Communications Magazine, 56(2), pp. 44–51 | 2018 | 301 |
Alba, E., Luque, G., Nesmachnow, S. [13] | Parallel metaheuristics: Recent advances and new trends | International Transactions in Operational Research, 20(1), pp. 1–48 | 2013 | 238 |
Liu, S., Wang, S., Zhu, F., Zhang, J., Krishnan, R. [14] | HYDRA: Large-scale social identity linkage via heterogeneous behavior modeling | Proceedings of the ACM SIGMOD International Conference on Management of Data, pp. 51–62 | 2014 | 229 |
Wang, Y., Liu, H., Zheng, W., Xia, Y., Li, Y., Cheng, P., Guo, K., Xie, H. [15] | Multi-objective workflow scheduling with deep-Q-network-based multi-agent reinforcement learning | IEEE Access, 7, pp. 39974–39982, 8676306 | 2019 | 209 |
Liu, Q., Cai, W., Shen, J., Fu, Z., Liu, X., Linge, N. [16] | A speculative approach to spatial-temporal efficiency with multi-objective optimization in a heterogeneous cloud environment | Security and Communication Networks, 9(17), pp. 4002–4012 | 2016 | 199 |
Zhou, X., Zhang, G., Sun, J., Zhou, J., Wei, T., Hu, S. [17] | Minimizing cost and makespan for workflow scheduling in cloud using fuzzy dominance sort based HEFT | Future Generation Computer Systems, 93, pp. 278–289 | 2019 | 196 |
Cluster 1—Swarm-Based Algorithms | ||
---|---|---|
ID | Keyword | Occurrences |
1 | ant colony optimization | 36 |
2 | artificial-intelligence | 49 |
3 | cloud-computing | 116 |
4 | costs | 60 |
5 | energy utilization | 173 |
6 | integer programming | 39 |
7 | internet of things | 39 |
8 | network security | 42 |
9 | particle swarm optimization | 168 |
10 | performance | 44 |
11 | quality of service | 61 |
12 | resource allocation | 40 |
13 | scheduling | 131 |
14 | virtual machine | 37 |
Cluster 2—Multi-Objective Genetic Algorithms | ||
---|---|---|
ID | Keyword | Occurrences |
1 | algorithm | 152 |
2 | computer software | 195 |
3 | design | 105 |
4 | efficiency | 53 |
5 | genetic algorithm | 568 |
6 | matlab | 84 |
7 | multi-objective | 1273 |
8 | optimization | 459 |
9 | optimization algorithm | 91 |
10 | optimization problems | 86 |
11 | parameters estimation | 50 |
12 | structural optimization | 77 |
Cluster 3—Pareto Dominance for MO Problems | ||
---|---|---|
ID | Keyword | Occurrences |
1 | constrained optimization | 44 |
2 | decision making | 99 |
3 | economic and social effects | 101 |
4 | multi-objective problem | 173 |
5 | nsga-ii | 70 |
6 | optimal systems | 62 |
7 | pareto optimal solutions | 46 |
8 | pareto principle | 116 |
9 | product design | 50 |
Cluster 4—Categories of Algorithms | ||
---|---|---|
ID | Keyword | Occurrences |
1 | benchmarking | 38 |
2 | embedded systems | 45 |
3 | evolutionary algorithm | 231 |
4 | heuristic algorithm | 53 |
5 | learning algorithm | 77 |
6 | objective functions | 55 |
7 | reinforcement learning | 35 |
Cluster 4—Evolutionary Algorithms | ||
---|---|---|
ID | Problem | Occurrences |
1 | costs optimization | 60 |
2 | energy utilization | 173 |
3 | internet of things | 39 |
4 | network security | 42 |
5 | resource allocation | 40 |
6 | scheduling | 131 |
7 | economic and social effects | 101 |
8 | embedded systems | 45 |
Framework | No. of Scopus Citations | First Publication Date | Current Version | Language |
---|---|---|---|---|
jMetal | 969 | 2006 | 6.1 | Java |
FADSE | 43 | 2010 | 2.0 | Java |
PlatEMO | 1372 | 2017 | 4.5 | MATLAB |
PyMOO | 748 | 2020 | 0.6.0 | Python |
Evolver | 0 | 2023 | 1.0.1 | Java |
Feature/Framework | PlatEMO | PyMOO | jMetal | Evolver | FADSE |
---|---|---|---|---|---|
Multi-objective focus | ✓ | ✓ | ✓ | ✓ | ✓ |
Rich algorithms library | ✓ | ✘ | ✓ | ✓ | ✓ |
Rich problems library | ✓ | ✘ | ✓ | ✓ | ✓ |
Parallelization | ✘ | ✘ | ✘ | ✘ | ✓ |
Checkpointing | ✘ | ✘ | ✘ | ✘ | ✓ |
Easy extensibility | ✓ | ✓ | ✓ | ✓ | ✘ |
GUI | ✓ | ✘ | ✘ | ✓ | ✘ |
Open-source | ✓ | ✓ | ✓ | ✓ | ✓ |
Comprehensive documentation | ✓ | ✓ | ✓ | ✓ | ✘ |
Framework | Link GitHub | # of Contributors | # of Watchers |
---|---|---|---|
PlatEMO | https://github.com/BIMK/PlatEMO (accessed on 12 March 2024) | 12 | 45 |
PyMOO | https://github.com/anyoptimization/pymoo (accessed on 12 March 2024) | 37 | 32 |
jMetal | https://github.com/jMetal/jMetal (accessed on 12 March 2024) | 43 | 54 |
FADSE | https://github.com/horia-calborean/fadse (accessed on 12 March 2024) | 3 | 6 |
Evolver | https://github.com/ElsevierSoftwareX/SOFTX-D-23-00488 (accessed on 12 March 2024) | 3 | 0 |
Quality Indicator | PlatEMO | PyMOO | jMetal | Evolver | FADSE |
---|---|---|---|---|---|
HV | ✓ | ✓ | ✓ | ✓ | ✓ |
TSHD | ✘ | ✘ | ✘ | ✘ | ✓ |
EP | ✘ | ✘ | ✓ | ✓ | ✓ |
SP | ✓ | ✘ | ✓ | ✓ | ✓ |
GS | ✘ | ✘ | ✓ | ✓ | ✓ |
NPS | ✘ | ✘ | ✘ | ✘ | ✘ |
MID | ✘ | ✘ | ✘ | ✘ | ✘ |
GD | ✓ | ✓ | ✓ | ✓ | ✓ |
IGD | ✓ | ✓ | ✓ | ✓ | ✓ |
C | ✓ | ✘ | ✓ | ✓ | ✓ |
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2024 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Pătrăușanu, A.; Florea, A.; Neghină, M.; Dicoiu, A.; Chiș, R. A Systematic Review of Multi-Objective Evolutionary Algorithms Optimization Frameworks. Processes 2024, 12, 869. https://doi.org/10.3390/pr12050869
Pătrăușanu A, Florea A, Neghină M, Dicoiu A, Chiș R. A Systematic Review of Multi-Objective Evolutionary Algorithms Optimization Frameworks. Processes. 2024; 12(5):869. https://doi.org/10.3390/pr12050869
Chicago/Turabian StylePătrăușanu, Andrei, Adrian Florea, Mihai Neghină, Alina Dicoiu, and Radu Chiș. 2024. "A Systematic Review of Multi-Objective Evolutionary Algorithms Optimization Frameworks" Processes 12, no. 5: 869. https://doi.org/10.3390/pr12050869