Font Size: a A A

Evolutionary Many-objective Solution Method For Software Product Line Configuration Combined With Satisfiability Constraints

Posted on:2022-11-19Degree:MasterType:Thesis
Country:ChinaCandidate:Y M HouFull Text:PDF
GTID:2518306761959809Subject:Information and Post Economy
Abstract/Summary:PDF Full Text Request
A software product line is a group of software products that share a manageable set of functions,meet the specific needs of a specific market segment or mission,and are developed in a prescribed manner from a common set of core assets.Software engineers use software product lines to reduce software costs,increase software reusability,and facilitate software maintenance.In software product line configuration problems,a key task is to obtain an optimal product that meets the specific needs of stakeholders.Software product line configuration is a typical manyobjective optimization problem.Software product line configuration problems often involve multiple conflicting objectives,exploring a limited search space for feasible solutions,and simultaneously finding an optimal solution that balances multiple competing objectives.Since the search space is large and highly constrained,and the target space is high-dimensional,automated techniques are needed to select the optimal efficient software product.Software product lines can be represented by feature models.The number of features in feature models obtained from real industrial reverse engineering is often large,and accurate methods perform well on small models,but are often powerless for large models,which not only require a lot of running time,but the final results are also disappointing.In recent years,the concept of combining evolutionary algorithms with satisfiability(SAT)solvers has attracted increasing attention.However,most computational methods tend to suffer from model instability and poor performance.Therefore,this paper combines the smart mutation strategy and SATVaEA algorithm to obtain a new algorithm SMS-EMO.The smart mutation operator,which has higher performance than the conventional genetic operator,passes a part of the features of the invalid solution that do not violate the constraints to the solver to obtain an efficient solution.This paper conducts experiments on 10 feature models with the number of features ranging from 544 to 31012.The experimental results show that the SMS-EMO algorithm is far superior to the SATVaEA algorithm.In addition,this paper also studies the effects of other genetic operators.On the basis of SMS-EMO algorithm,two new strategies(multisolution processing strategy and maximum-constraint-violation-first strategy)are incorporated in this paper,and a new algorithm MySPLC is proposed.The multisolution processing strategy balances the time of environment selection and processing invalid solutions,making each environment selection more efficient and meaningful.The maximum-constraint-violation-first strategy makes the population evolve towards a more diverse direction.Experimental results show that the proposed algorithm can find more diverse solutions than existing algorithms.In addition,this paper also studies the relevant parameters,convergence and scalability of the algorithm,and further expands the application scenarios of the algorithm.The algorithm proposed in this paper can provide more diverse solutions for stakeholders to choose from.Software engineers and users can use the solution obtained by the algorithm in this paper to conduct more useful communication,meet the more diverse needs of users,shorten the software development cycle,and improve economic benefits.The algorithm proposed in this paper has practical guiding significance for software product line configuration problem.
Keywords/Search Tags:Software product line configuration, multi-objective optimization, evolutionary algorithms, satisfiability solvers, feature models
PDF Full Text Request
Related items