The Weights can be Harmful: Pareto Search versus Weighted Search in Multi-Objective Search-Based Software Engineering
arXiv:2202.03728 · doi:10.1145/3514233
Abstract
In presence of multiple objectives to be optimized in Search-Based Software Engineering (SBSE), Pareto search has been commonly adopted. It searches for a good approximation of the problem's Pareto optimal solutions, from which the stakeholders choose the most preferred solution according to their preferences. However, when clear preferences of the stakeholders (e.g., a set of weights which reflect relative importance between objectives) are available prior to the search, weighted search is believed to be the first choice since it simplifies the search via converting the original multi-objective problem into a single-objective one and enable the search to focus on what only the stakeholders are interested in. This paper questions such a "weighted search first" belief. We show that the weights can, in fact, be harmful to the search process even in the presence of clear preferences. Specifically, we conduct a large scale empirical study which consists of 38 systems/projects from three representative SBSE problems, together with two types of search budget and nine sets of weights, leading to 604 cases of comparisons. Our key finding is that weighted search reaches a certain level of solution quality by consuming relatively less resources at the early stage of the search; however, Pareto search is at the majority of the time (up to 77% of the cases) significantly better than its weighted counterpart, as long as we allow a sufficient, but not unrealistic search budget. This, together with other findings and actionable suggestions in the paper, allows us to codify pragmatic and comprehensive guidance on choosing weighted and Pareto search for SBSE under the circumstance that clear preferences are available. All code and data can be accessed at: https://github.com/ideas-labo/pareto-vs-weight-for-sbse.
arXiv commentThis paper has been accepted by the ACM Transactions on Software Engineering and Methodology (TOSEM); DOI: 10.1145/3514233
References in corpus (9)
- How to Evaluate Solutions in Pareto-based Search-Based Software Engineering? A Critical Review and Methodological Guidance
- A Survey and Taxonomy of Self-Aware and Self-Adaptive Cloud Autoscaling Systems
- Self-Adaptive Trade-off Decision Making for Autoscaling Cloud-Based Services
- Multi-Objectivizing Software Configuration Tuning (for a single performance concern)
- Hyperparameter Optimization for Effort Estimation
- DATESSO: Self-Adapting Service Composition with Debt-Aware Two Levels Constraint Reasoning
- Synergizing Domain Expertise with Self-Awareness in Software Systems: A Patternized Architecture Guideline
- Search-Based Software Engineering for Self-Adaptive Systems: Survey, Disappointments, Suggestions and Opportunities
- MMO: Meta Multi-Objectivization for Software Configuration Tuning