Surrogate Model Assisted Multi-objective Differential Evolution Algorithm for Performance Optimization at Software Architecture Level

This paper proposes a surrogate model assisted differential evolutionary algorithm for performance optimization at the software architecture (SA) level, which is named SMDE4PO. In SMDE4PO, different strategies of crossover and mutation are adopted to enhance the algorithm’s search capability and speed up its convergence. Random forests are used as surrogate models to reduce the time of performance evaluation (i.e., fitness evaluation). Our comparative experiments on four different sizes of cases between SMDE4PO and NSGA-II are conducted. From the results, we can conclude that (1) SMDE4PO is significantly better than NSGA-II according to the three quality indicators of Contribution, Generation Distance and Hyper Volume; (2) By using random forests as surrogates, the run time of SMDE4PO is reduced by up to 48% in comparison with NSGA-II in our experiments.

[1]  Iman Avazpour,et al.  Robust ArcheOpterix: Architecture optimization of embedded systems under uncertainty , 2012, 2012 Second International Workshop on Software Engineering for Embedded Systems (SEES).

[2]  Heiko Koziolek,et al.  PerOpteryx: automated application of tactics in multi-objective software architecture optimization , 2011, QoSA-ISARCS '11.

[3]  Michel R. V. Chaudron,et al.  Quality-driven optimization of system architecture: Industrial case study on an automotive sub-system , 2013, J. Syst. Softw..

[4]  Richard N. Taylor,et al.  Software architecture: foundations, theory, and practice , 2009, 2010 ACM/IEEE 32nd International Conference on Software Engineering.

[5]  Michael T. M. Emmerich,et al.  An evolutionary multiobjective optimization approach to component-based software architecture design , 2011, 2011 IEEE Congress of Evolutionary Computation (CEC).

[6]  Arvind S. Mohais,et al.  DynDE: a differential evolution for dynamic optimization problems , 2005, 2005 IEEE Congress on Evolutionary Computation.

[7]  Yiannis Papadopoulos,et al.  Automatic optimisation of system architectures using EAST-ADL , 2013, J. Syst. Softw..

[8]  R. Grissom,et al.  Effect sizes for research: A broad practical approach. , 2005 .

[9]  Heiko Koziolek,et al.  Automatic, Model-Based Software Performance Improvement for Component-based Software Designs , 2009, Electron. Notes Theor. Comput. Sci..

[10]  Raffaela Mirandola,et al.  Hybrid multi-attribute QoS optimization in component based software systems , 2013, J. Syst. Softw..

[11]  Bogdan Filipic,et al.  DEMO: Differential Evolution for Multiobjective Optimization , 2005, EMO.

[12]  Edgar Tello-Leal,et al.  A Review of Surrogate Assisted Multiobjective Evolutionary Algorithms , 2016, Comput. Intell. Neurosci..

[13]  Lothar Thiele,et al.  Multiobjective evolutionary algorithms: a comparative case study and the strength Pareto approach , 1999, IEEE Trans. Evol. Comput..

[14]  Liborio Cavaleri,et al.  Prediction of the Fundamental Period of Infilled RC Frame Structures Using Artificial Neural Networks , 2015, Comput. Intell. Neurosci..

[15]  Steffen Becker,et al.  Quantitative Evaluation of Model-Driven Performance Analysis and Simulation of Component-Based Architectures , 2015, IEEE Transactions on Software Engineering.

[16]  Wilfrido Gómez-Flores,et al.  On the selection of surrogate models in evolutionary optimization algorithms , 2011, 2011 IEEE Congress of Evolutionary Computation (CEC).

[17]  Xin Yao,et al.  An evolutionary algorithm for performance optimization at software architecture level , 2015, 2015 IEEE Congress on Evolutionary Computation (CEC).

[18]  Laurent Pautet,et al.  Automatic selection and composition of model transformations alternatives using evolutionary algorithms , 2015, ECSA Workshops.

[19]  Anne Koziolek,et al.  Automated Improvement of Software Architecture Models for Performance and Other Quality Attributes , 2011 .

[20]  Lars Grunske,et al.  Software Architecture Optimization Methods: A Systematic Literature Review , 2013, IEEE Transactions on Software Engineering.