A novel aggregation-based dominance for Pareto-based evolutionary algorithms to configure software product lines

Abstract In software engineering, optimal feature selection for software product lines (SPLs) is an important and complicated task, involving simultaneous optimization of multiple competing objectives in large but highly constrained search spaces. A feature model is the standard representation of features of all possible products as well as the relationships among them for an SPL. Recently, various multi-objective evolutionary algorithms have been used to search for valid product configurations. However, the issue of the balance between correctness and diversity of solutions obtained in a reasonable time has been found very challenging for these algorithms. To tackle this problem, this paper proposes a novel aggregation-based dominance (ADO) for Pareto-based evolutionary algorithms to direct the search for high-quality solutions. Our method was tested on two widely used Pareto-based evolutionary algorithms: NSGA-II and SPEA2+SDE and validated on nine different SPLs with up to 10,000 features and two real-world SPLs with up to 7 objectives. Our experiments have shown the effectiveness and efficiency of both ADO-based NSGA-II and SPEA2+SDE: (1) Both algorithms could generate 100% valid solutions for all feature models. (2) The performance of both algorithms was improved as measured by the hypervolume metric in 7/9 and 8/9 feature models. (3) Even for the largest tested feature model with 10,000 features, it required under 40 s on a standard desktop to find 100% valid solutions in a single run of both algorithms.

[1]  H. Kita,et al.  Failure of Pareto-based MOEAs: does non-dominated really mean near to optimal? , 2001, Proceedings of the 2001 Congress on Evolutionary Computation (IEEE Cat. No.01TH8546).

[2]  Zibin Zheng,et al.  Configuring Software Product Lines by Combining Many-Objective Optimization and SAT Solvers , 2018, ACM Trans. Softw. Eng. Methodol..

[3]  Yuren Zhou,et al.  A Vector Angle-Based Evolutionary Algorithm for Unconstrained Many-Objective Optimization , 2017, IEEE Transactions on Evolutionary Computation.

[4]  Derek Rayside,et al.  Comparison of exact and approximate multi-objective optimization for software product lines , 2014, SPLC.

[5]  Zidong Wang,et al.  A Hybrid EKF and Switching PSO Algorithm for Joint State and Parameter Estimation of Lateral Flow Immunoassay Models , 2012, IEEE/ACM Transactions on Computational Biology and Bioinformatics.

[6]  Tim Menzies,et al.  Scalable product line configuration: A straw to break the camel's back , 2013, 2013 28th IEEE/ACM International Conference on Automated Software Engineering (ASE).

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

[8]  Eckart Zitzler,et al.  Indicator-Based Selection in Multiobjective Search , 2004, PPSN.

[9]  Shengxiang Yang,et al.  Bi-goal evolution for many-objective optimization problems , 2015, Artif. Intell..

[10]  Mark Fleischer,et al.  The measure of pareto optima: Applications to multi-objective metaheuristics , 2003 .

[11]  Zidong Wang,et al.  A Novel Particle Swarm Optimization Approach for Patient Clustering From Emergency Departments , 2019, IEEE Transactions on Evolutionary Computation.

[12]  Tim Menzies,et al.  On the value of user preferences in search-based software engineering: A case study in software product lines , 2013, 2013 35th International Conference on Software Engineering (ICSE).

[13]  Thomas Thüm,et al.  Reasoning about edits to feature models , 2009, 2009 IEEE 31st International Conference on Software Engineering.

[14]  Soon-Thiam Khu,et al.  An Investigation on Preference Order Ranking Scheme for Multiobjective Evolutionary Optimization , 2007, IEEE Transactions on Evolutionary Computation.

[15]  Kalyanmoy Deb,et al.  An Evolutionary Many-Objective Optimization Algorithm Using Reference-Point-Based Nondominated Sorting Approach, Part I: Solving Problems With Box Constraints , 2014, IEEE Transactions on Evolutionary Computation.

[16]  Jun Sun,et al.  Optimizing selection of competing features via feedback-directed evolutionary algorithms , 2015, ISSTA.

[17]  Shengxiang Yang,et al.  Shift-Based Density Estimation for Pareto-Based Algorithms in Many-Objective Optimization , 2014, IEEE Transactions on Evolutionary Computation.

[18]  Marco Laumanns,et al.  SPEA2: Improving the strength pareto evolutionary algorithm , 2001 .

[19]  Paul Clements,et al.  Software product lines - practices and patterns , 2001, SEI series in software engineering.

[20]  Kalyanmoy Deb,et al.  Muiltiobjective Optimization Using Nondominated Sorting in Genetic Algorithms , 1994, Evolutionary Computation.

[21]  Ivar Jacobson,et al.  Software Reuse: Architecture, Process And Organization For Business Success , 1998, Proceedings. Technology of Object-Oriented Languages. TOOLS 26 (Cat. No.98EX176).

[22]  Hisao Ishibuchi,et al.  Evolutionary many-objective optimization: A short review , 2008, 2008 IEEE Congress on Evolutionary Computation (IEEE World Congress on Computational Intelligence).

[23]  Kiyoshi Tanaka,et al.  Variable space diversity, crossover and mutation in MOEA solving many-objective knapsack problems , 2012, Annals of Mathematics and Artificial Intelligence.

[24]  Shengxiang Yang,et al.  A Grid-Based Evolutionary Algorithm for Many-Objective Optimization , 2013, IEEE Transactions on Evolutionary Computation.

[25]  Ye Tian,et al.  A Knee Point-Driven Evolutionary Algorithm for Many-Objective Optimization , 2015, IEEE Transactions on Evolutionary Computation.

[26]  Donald D. Cowan,et al.  S.P.L.O.T.: software product lines online tools , 2009, OOPSLA Companion.

[27]  Sergio Segura,et al.  Automated analysis of feature models 20 years later: A literature review , 2010, Inf. Syst..

[28]  Donald D. Cowan,et al.  Decision-making coordination in collaborative product configuration , 2008, SAC '08.

[29]  Kyo Chul Kang,et al.  Feature-Oriented Domain Analysis (FODA) Feasibility Study , 1990 .

[30]  Jun Zhang,et al.  Fuzzy-Based Pareto Optimality for Many-Objective Evolutionary Algorithms , 2014, IEEE Transactions on Evolutionary Computation.

[31]  Yves Le Traon,et al.  Combining Multi-Objective Search and Constraint Solving for Configuring Large Software Product Lines , 2015, 2015 IEEE/ACM 37th IEEE International Conference on Software Engineering.

[32]  Francisco Luna,et al.  MOCell: A cellular genetic algorithm for multiobjective optimization , 2009 .

[33]  E. Hughes Multiple single objective Pareto sampling , 2003, The 2003 Congress on Evolutionary Computation, 2003. CEC '03..

[34]  Marco Farina,et al.  A fuzzy definition of "optimality" for many-criteria optimization problems , 2004, IEEE Trans. Syst. Man Cybern. Part A.

[35]  Martin J. Oates,et al.  PESA-II: region-based selection in evolutionary multiobjective optimization , 2001 .

[36]  Jesús González,et al.  A new multi-objective wrapper method for feature selection - Accuracy and stability analysis for BCI , 2019, Neurocomputing.

[37]  Antonio Ruiz Cortés,et al.  Automated configuration support for infrastructure migration to the cloud , 2016, Future Gener. Comput. Syst..

[38]  Kalyanmoy Deb,et al.  Evaluating the -Domination Based Multi-Objective Evolutionary Algorithm for a Quick Computation of Pareto-Optimal Solutions , 2005, Evolutionary Computation.

[39]  Nicola Beume,et al.  Pareto-, Aggregation-, and Indicator-Based Methods in Many-Objective Optimization , 2007, EMO.

[40]  Jun Sun,et al.  IBED: Combining IBEA and DE for optimal feature selection in software product line engineering , 2016, Appl. Soft Comput..

[41]  Marco Laumanns,et al.  Combining Convergence and Diversity in Evolutionary Multiobjective Optimization , 2002, Evolutionary Computation.

[42]  Sergio Segura,et al.  Variability testing in the wild: the Drupal case study , 2017, Software & Systems Modeling.

[43]  Yu-Jun Zheng,et al.  Population Classification in Fire Evacuation: A Multiobjective Particle Swarm Optimization Approach , 2014, IEEE Transactions on Evolutionary Computation.

[44]  Evan J. Hughes,et al.  Many-objective directed evolutionary line search , 2011, GECCO '11.

[45]  Jinhua Zheng,et al.  A grid-based fitness strategy for evolutionary many-objective optimization , 2010, GECCO '10.

[46]  Evan J. Hughes,et al.  Evolutionary many-objective optimisation: many once or one many? , 2005, 2005 IEEE Congress on Evolutionary Computation.

[47]  Yinglin Wang,et al.  A genetic algorithm for optimized feature selection with resource constraints in software product lines , 2011, J. Syst. Softw..

[48]  Peter J. Fleming,et al.  An Overview of Evolutionary Algorithms in Multiobjective Optimization , 1995, Evolutionary Computation.

[49]  Zidong Wang,et al.  Image-Based Quantitative Analysis of Gold Immunochromatographic Strip via Cellular Neural Network Approach , 2014, IEEE Transactions on Medical Imaging.

[50]  Gunter Saake,et al.  SPL Conqueror: Toward optimization of non-functional properties in software product lines , 2012, Software Quality Journal.

[51]  Fernando Jiménez,et al.  Multiobjective Evolutionary Feature Selection for Fuzzy Classification , 2019, IEEE Transactions on Fuzzy Systems.

[52]  Xiaohui Liu,et al.  Evolutionary Multi-Objective Workflow Scheduling in Cloud , 2016, IEEE Transactions on Parallel and Distributed Systems.

[53]  Kalyanmoy Deb,et al.  A fast and elitist multiobjective genetic algorithm: NSGA-II , 2002, IEEE Trans. Evol. Comput..

[54]  Don S. Batory,et al.  Feature Models, Grammars, and Propositional Formulas , 2005, SPLC.

[55]  Qingfu Zhang,et al.  MOEA/D: A Multiobjective Evolutionary Algorithm Based on Decomposition , 2007, IEEE Transactions on Evolutionary Computation.

[56]  Sam Malek,et al.  GuideArch: Guiding the exploration of architectural solution space under uncertainty , 2013, 2013 35th International Conference on Software Engineering (ICSE).

[57]  Yu Wu,et al.  A multiobjective optimization-based sparse extreme learning machine algorithm , 2018, Neurocomputing.

[58]  Enrique Alba,et al.  On the Effect of the Steady-State Selection Scheme in Multi-Objective Genetic Algorithms , 2009, EMO.

[59]  Sergio Segura,et al.  SIP: Optimal Product Selection from Feature Models Using Many-Objective Evolutionary Optimization , 2016, ACM Trans. Softw. Eng. Methodol..