On the analysis of the (1+ 1) evolutionary algorithm
Theoretical Computer Science
Introduction to Algorithms
A study of drift analysis for estimating computation time of evolutionary algorithms
Natural Computing: an international journal
Search-based software test data generation: a survey: Research Articles
Software Testing, Verification & Reliability
Upper and Lower Bounds for Randomized Search Heuristics in Black-Box Optimization
Theory of Computing Systems
Proceedings of the 2007 international symposium on Software testing and analysis
ICSTW '08 Proceedings of the 2008 IEEE International Conference on Software Testing Verification and Validation Workshop
Insight knowledge in search based software testing
Proceedings of the 11th Annual conference on Genetic and evolutionary computation
SSBSE '09 Proceedings of the 2009 1st International Symposium on Search Based Software Engineering
On the brittleness of evolutionary algorithms
FOGA'07 Proceedings of the 9th international conference on Foundations of genetic algorithms
A Theoretical and Empirical Study of Search-Based Testing: Local, Global, and Hybrid Search
IEEE Transactions on Software Engineering
Formal analysis of the effectiveness and predictability of random testing
Proceedings of the 19th international symposium on Software testing and analysis
Test suite generation with memetic algorithms
Proceedings of the 15th annual conference on Genetic and evolutionary computation
Runtime analysis of the (1+1) EA on computing unique input output sequences
Information Sciences: an International Journal
Hi-index | 0.00 |
The field of search based software engineering lacks of theoretical foundations. In this paper we theoretically analyse local search algorithms applied to software testing. We consider an infinitely large class of software that has an easy search landscape. Although the search landscape is easy, the software can be arbitrarily complex and large.We prove that Hill Climbing asymptotically has a strictly better runtime than Random Search. However, we prove that a very fast variant of Hill Climbing on reasonable size of software actually does not scale up properly. Although that variant has an exponential runtime, we prove that asymptotically it is still better than Random Search. We show that even on the easiest software testing problems, more sophisticated algorithms than local search are still required to get better performance.