Soft Computing

, Volume 15, Issue 9, pp 1675–1687 | Cite as

Crossover can be constructive when computing unique input–output sequences

Focus

Abstract

Unique input–output (UIO) sequences have important applications in conformance testing of finite state machines (FSMs). Previous experimental and theoretical research has shown that evolutionary algorithms (EAs) can compute UIOs efficiently on many FSM instance classes, but fail on others. However, it has been unclear how and to what degree EA parameter settings influence the runtime on the UIO problem. This paper investigates the choice of acceptance criterion in the (1 + 1) EA and the use of crossover in the \((\mu+1)\) Steady State Genetic Algorithm. It is rigorously proved that changing these parameters can reduce the runtime from exponential to polynomial for some instance classes of the UIO problem.

Keywords

Finite state machines Unique input–output sequences Evolutionary algorithms Runtime analysis Crossover operator 

References

  1. Clarke J, Dolado JJ, Harman M, Hierons R, Jones B, Lumkin M, Mitchell B, Rees K, Roper M, Shepperd MJ (2003) Reformulating software engineering as a search problem. IEE Proc Softw 150(3):161–175CrossRefGoogle Scholar
  2. Cormen TH, Leiserson CE, Rivest RL, Stein C (2001) Introduction to algorithms, 2nd edn. McGraw Hill, New YorkMATHGoogle Scholar
  3. Derderian KA, Hierons RM, Harman M, Guo Q (2006) Automated unique input output sequence generation for conformance testing of fsms. Comput J 49(3):331–344CrossRefGoogle Scholar
  4. Dietzfelbinger M, Naudts B, Van Hoyweghen C, Wegener I (2003) The analysis of a recombinative hill-climber on h-iff. IEEE Trans Evol Comput 7(5):417–423CrossRefGoogle Scholar
  5. Doerr B, Happ E, Klein C (2008) Crossover can provably be useful in evolutionary computation. In: Proceedings of the 10th annual conference on genetic and evolutionary computation (GECCO’2008), New York, NY, USA. ACM, pp 539–546Google Scholar
  6. Doerr B, Theile M (2009) Improved analysis methods for crossover-based algorithms. In: Proceedings of the 11th annual conference on Genetic and evolutionary computation (GECCO’2009), New York, NY, USA, ACM, pp 247–254Google Scholar
  7. Droste S, Jansen T, Wegener I (2002) On the analysis of the (1 + 1) evolutionary algorithm. Theor Comput Sci 276:51–81MathSciNetMATHCrossRefGoogle Scholar
  8. Fischer S, Wegener I (2005) The one-dimensional Ising model: Mutation versus recombination. Theor Comput Sci 344(2–3):208–225MathSciNetMATHCrossRefGoogle Scholar
  9. Friedrich T, Oliveto PS, Sudholt D, Witt C (2008) Theoretical analysis of diversity mechanisms for global exploration. In: Proceedings of the 10th annual conference on Genetic and evolutionary computation (GECCO’2008), New York, NY, USA, ACM, pp 945–952Google Scholar
  10. Guo Q, Hierons RM, Harman M, Derderian KA (2004) Computing unique input/output sequences using genetic algorithms. In: Proceedings of the 3rd international workshop on formal approaches to testing of software (FATES’2003), vol 2931 of LNCS, pp 164–177Google Scholar
  11. Guo Q, Hierons RM, Harman M, Derderian KA (2005) Constructing multiple unique input/output sequences using metaheuristic optimisation techniques. IEE Proc Softw 152(3):127–140CrossRefGoogle Scholar
  12. He J, Yao X (2004) A study of drift analysis for estimating computation time of evolutionary algorithms. Nat Comput 3(1):21–35MathSciNetMATHCrossRefGoogle Scholar
  13. Jansen T, Wegener I (1999) On the analysis of evolutionary algorithms—a proof that crossover really can help. In: Proceedings of 7th annual European symposium on algorithms (ESA’99), vol 1643 of LNCS, pp 700Google Scholar
  14. Jansen T, Wegener I (2001) Evolutionary algorithms—how to cope with plateaus of constant fitness and when to reject strings of the same fitness. IEEE Trans Evol Comput 5(6):589–599CrossRefGoogle Scholar
  15. Jansen T, Wegener I (2002) The analysis of evolutionary algorithms—a proof that crossover really can help. Algorithmica 34(1):47–66MathSciNetMATHCrossRefGoogle Scholar
  16. Lee D, Yannakakis M (1996) Principles and methods of testing finite state machines-a survey. Proc IEEE 84(8):1090–1123CrossRefGoogle Scholar
  17. Lehre PK, Yao X (2007) Runtime analysis of (1 + 1) EA on computing unique input output sequences. In: Proceedings of 2007 IEEE congress on evolutionary computation (CEC’2007). IEEE Press, pp 1882–1889Google Scholar
  18. Lehre PK, Yao X (2008) Crossover can be constructive when computing unique input output sequences. In: Proceedings of the 7th international conference on simulated evolution and learning (SEAL’2008). Springer, Heidelberg, pp 595–604Google Scholar
  19. Motwani R, Raghavan P (1995) Randomized algorithms. Cambridge University Press, CambridgeGoogle Scholar
  20. Oliveto PS, He J, Yao X (2008) Analysis of population-based evolutionary algorithms for the vertex cover problem. In: Proceedings of IEEE world congress on computational intelligence (WCCI’2008), Hong Kong, June 1–6, 2008, pp 1563–1570Google Scholar
  21. Oliveto PS, Witt C (2008) Simplified drift analysis for proving lower bounds in evolutionary computation. In: Proceedings of parallel problem solving from nature (PPSN’X), number 5199 in LNCS, pp 82–91Google Scholar
  22. Storch T, Wegener I (2004) Real royal road functions for constant population size. Theor Comput Sci 320(1):123–134MathSciNetMATHCrossRefGoogle Scholar
  23. Sudholt D (2005) Crossover is provably essential for the Ising model on trees. In: Proceedings of the genetic and evolutionary computation conference (GECCO’2005), pp 1161Google Scholar

Copyright information

© Springer-Verlag 2010

Authors and Affiliations

  1. 1.The Centre of Excellence for Research in Computational Intelligence and Applications (CERCIA), School of Computer ScienceThe University of BirminghamBirminghamUK

Personalised recommendations