How Does Program Structure Impact the Effectiveness of the Crossover Operator in Evolutionary Testing?

  • Authors:
  • Phil McMinn

  • Affiliations:
  • -

  • Venue:
  • SSBSE '10 Proceedings of the 2nd International Symposium on Search Based Software Engineering
  • Year:
  • 2010

Quantified Score

Hi-index 0.00

Visualization

Abstract

Recent results in Search-Based Testing show that the relatively simple Alternating Variable hill climbing method outperforms Evolutionary Testing (ET) for many programs. For ET to perform well in covering an individual branch, a program must have a certain structure that gives rise to a fitness landscape that the crossover operator can exploit. This paper presents theoretical and empirical investigations into the types of program structure that result in such landscapes. The studies show that crossover lends itself to programs that process large data structures or have an internal state that is reached over a series of repeated function or method calls. The empirical study also investigates the type of crossover which works most efficiently for different program structures. It further compares the results obtained by ET with those obtained for different variants of hill climbing algorithm, which are found to be effective for many structures considered favourable to crossover, with the exception of structures with landscapes containing entrapping local optima.