SENEJan 27, 2017

Beyond Evolutionary Algorithms for Search-based Software Engineering

arXiv:1701.07950v328 citations
Originality Incremental advance
AI Analysis

This addresses the efficiency issue for software engineers performing optimization tasks, though it is incremental as it improves on existing methods rather than introducing a new paradigm.

The paper tackled the problem of evolutionary algorithms requiring many evaluations in search-based software engineering by proposing a method that builds a large initial population and culls it with recursive bi-clustering, achieving comparable results to state-of-the-art evolutionary algorithms using under 100 evaluations.

Context: Evolutionary algorithms typically require a large number of evaluations (of solutions) to converge - which can be very slow and expensive to evaluate.Objective: To solve search-based software engineering (SE) problems, using fewer evaluations than evolutionary methods.Method: Instead of mutating a small population, we build a very large initial population which is then culled using a recursive bi-clustering chop approach. We evaluate this approach on multiple SE models, unconstrained as well as constrained, and compare its performance with standard evolutionary algorithms. Results: Using just a few evaluations (under 100), we can obtain comparable results to state-of-the-art evolutionary algorithms.Conclusion: Just because something works, and is widespread use, does not necessarily mean that there is no value in seeking methods to improve that method. Before undertaking search-based SE optimization tasks using traditional EAs, it is recommended to try other techniques, like those explored here, to obtain the same results with fewer evaluations.

Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes