Soft Computing

, Volume 19, Issue 7, pp 1863–1880 | Cite as

Improving genetic search in XCS-based classifier systems through understanding the evolvability of classifier rules

  • Muhammad IqbalEmail author
  • Will N. Browne
  • Mengjie Zhang
Methodologies and Application


Learning classifier systems (LCSs), an established evolutionary computation technique, are over 30 years old with much empirical testing and foundations of theoretical understanding. XCS is a well-tested LCS model that generates optimal (i.e., maximally general and accurate) classifier rules in the final solution. Previous work has hypothesized the evolution mechanisms in XCS by identifying the bounds of learning and population requirements. However, no work has shown exactly how an optimum rule is evolved or especially identifies whether the methods within an LCS are being utilized effectively. In this paper, we introduce a method to trace the evolution of classifier rules generated in an XCS-based classifier system. Specifically, we introduce the concept of a family tree, termed parent-tree, for each individual classifier rule generated in the system during training, which describes the whole generational process for that classifier. Experiments are conducted on two sample Boolean problem domains, i.e., multiplexer and count ones problems using two XCS-based systems, i.e., standard XCS and XCS with code-fragment actions. The analysis of parent-trees reveals, for the first time in XCS, that no matter how specific or general the initial classifiers are, all the optimal classifiers are converged through the mechanism ‘be specific then generalize’ near the final stages of evolution. Populations where the initial classifiers were slightly more specific than the known ‘ideal’ specificity in the target solutions evolve faster than either very specific, ideal or more general starting classifier populations. Consequently introducing the ‘flip mutation’ method and reverting the conventional wisdom back to apply rule discovery in the match set has demonstrated benefits in binary classification problems, which has implications in using XCS for knowledge discovery tasks. It is further concluded that XCS does not directly utilize all relevant information or all breeding strategies to evolve the optimum solution, indicating areas for performance and efficiency improvement in XCS-based systems.


Learning classifier systems XCS XCSCFA Genetic algorithms Evolvability 


  1. Altenberg L (1994) The evolution of evolvability in genetic programming. In: Advances in genetic programming. MIT Press, Massachusetts, pp 47–74Google Scholar
  2. Behdad M, Barone L, French T, Bennamoun M (2012) On XCSR for electronic fraud detection. Evol Intell 5(2):139–150CrossRefGoogle Scholar
  3. Bull L (2004) Applications of learning classifier systems. Springer, HeidelbergGoogle Scholar
  4. Bull L, Kovacs T (2005) Foundations of learning classifier systems: an introduction. Springer, BerlinGoogle Scholar
  5. Butz MV (2006) Rule-based evolutionary online learning systems: a principal approach to lcs analysis and design. Springer, BerlinGoogle Scholar
  6. Butz MV, Kovacs T, Lanzi PL, Wilson SW (2004) Toward a theory of generalization and learning in XCS. IEEE Trans Evol Comput 8(1):28–46CrossRefGoogle Scholar
  7. Butz MV, Wilson SW (2002) An algorithmic description of XCS. Soft Comput 6(3–4):144–153zbMATHCrossRefGoogle Scholar
  8. Carreira J, Li F, Sminchisescu C (2012) Object recognition by sequential figure-ground ranking. Int J Comput Vision 98(3):243–262MathSciNetCrossRefGoogle Scholar
  9. Drugowitsch J (2008) Design and analysis of learning classifier systems: a probabilistic approach. Springer, BerlinGoogle Scholar
  10. Galván-López E, Poli R (2006) An empirical investigation of how and why neutrality affects evolutionary search. In: Proceedings of the genetic and evolutionary computation conference, pp 1149–1156Google Scholar
  11. Hart E, Ross P (2001) GAVEL—a new tool for genetic algorithm visualization. IEEE Trans Evol Comput 5(4):335–348CrossRefGoogle Scholar
  12. Hemberg E, Berzan C, Veeramachaneni K, O’Reilly UM (2013) Introducing graphical models to analyze genetic programming dynamics. In: Proceedings of the twelfth workshop on foundations of genetic algorithms, pp 75–86Google Scholar
  13. Holland JH, Booker LB, Colombetti M, Dorigo M, Goldberg DE, Forrest S, Riolo RL, Smith RE, Lanzi PL, Stolzmann W, Wilson SW (2000) What is a learning classifier system? In: Learning classifier systems, from foundations to applications. Springer, New York, pp 3–32Google Scholar
  14. Hu T, Banzhaf W, Moore JH (2013) Robustness and evolvability of recombination in linear genetic programming. In: Genetic programming. Springer, New York, pp 97–108Google Scholar
  15. Hu T, Payne JL, Banzhaf W, Moore JH (2012) Evolutionary dynamics on multiple scales: a quantitative analysis of the interplay between genotype, phenotype, and fitness in linear genetic programming. Genetic Program Evolv Mach 13(3):305–337CrossRefGoogle Scholar
  16. Ioannides C, Browne WN (2007) Investigating scaling of an abstracted LCS utilising ternary and S-expression alphabets. In: Proceedings of the genetic and evolutionary computation conference, pp 2759–2764Google Scholar
  17. Iqbal M, Browne WN, Zhang M (2012) XCSR with computed continuous action. In: Proceedings of the Australasian joint conference on artificial intelligence, pp 350–361Google Scholar
  18. Iqbal M, Browne WN, Zhang M (2013a) Evolving optimum populations with XCS classifier systems. Soft Comput 17(3):503–518Google Scholar
  19. Iqbal M, Browne WN, Zhang M (2013b) Extending learning classifier system with cyclic graphs for scalability on complex, large-scale boolean problems. In: Proceedings of the genetic and evolutionary computation conference, pp 1045–1052Google Scholar
  20. Iqbal M, Browne WN, Zhang M (2013c) Learning complex, overlapping and niche imbalance Boolean problems using XCS-based classifier systems. Evol Intell 6(2):73–91Google Scholar
  21. Iqbal M, Browne WN, Zhang M (2013d) Reusing building blocks of extracted knowledge to solve complex, large-scale Boolean problems. IEEE Trans Evol Comput. doi: 10.1109/TEVC.2013.2281537
  22. Izquierdo EJ, Fernando CT (2008) The evolution of evolvability in gene transcription networks. Artif Life 11:265–273Google Scholar
  23. Kovacs T (1996) Evolving optimal populations with XCS classifier systems. Technical Report CSR-96-17 and CSRP-9617, University of Birmingham, UKGoogle Scholar
  24. Poli R, Langdon WB, McPhee NF (2008) A field guide to genetic programming. and freely available at (with contributions by J. R. Koza)
  25. Shafi K, Kovacs T, Abbass HA, Zhu W (2009) Intrusion detection with evolutionary learning classifier systems. Nat Comput 8(1):3–27zbMATHMathSciNetCrossRefGoogle Scholar
  26. Stanley KO, Miikkulainen R (2002) Evolving neural networks through augmenting topologies. Evol Comput 10(2):99–127CrossRefGoogle Scholar
  27. Wagner A (2008) Robustness and evolvability: a paradox resolved. Proc R Soc B 275(1630):91–100CrossRefGoogle Scholar
  28. Wilson SW (1995) Classifier fitness based on accuracy. Evol Comput 3(2):149–175CrossRefGoogle Scholar
  29. Wilson SW (1998) Generalization in the XCS classifier system. In: Proceedings of the genetic programming conference, pp 665–674Google Scholar
  30. Xie H, Zhang M (2013) Parent selection pressure auto-tuning for tournament selection in genetic programming. IEEE Trans Evol Comput 17(1):1–19CrossRefGoogle Scholar
  31. Xie H, Zhang M, Andreae P (2006) A study of good predecessor programs for reducing fitness evaluation cost in genetic programming. In: Proceedings of the IEEE congress on evolutionary computation, pp 2661–2668Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2014

Authors and Affiliations

  • Muhammad Iqbal
    • 1
    Email author
  • Will N. Browne
    • 1
  • Mengjie Zhang
    • 1
  1. 1.Evolutionary Computation Research Group, School of Engineering and Computer ScienceVictoria University of WellingtonWellingtonNew Zealand

Personalised recommendations