Skip to main content
Log in

Evolving optimum populations with XCS classifier systems

XCS with code fragmented action

  • Original Paper
  • Published:
Soft Computing Aims and scope Submit manuscript

Abstract

The main goal of the research direction is to extract building blocks of knowledge from a problem domain. Once extracted successfully, these building blocks are to be used in learning more complex problems of the domain, in an effort to produce a scalable learning classifier system (LCS). However, whilst current LCS (and other evolutionary computation techniques) discover good rules, they also create sub-optimum rules. Therefore, it is difficult to separate good building blocks of information from others without extensive post-processing. In order to provide richness in the LCS alphabet, code fragments similar to tree expressions in genetic programming are adopted. The accuracy-based XCS concept is used as it aims to produce maximally general and accurate classifiers, albeit the rule base requires condensation (compaction) to remove spurious classifiers. Serendipitously, this work on scalability of LCS produces compact rule sets that can be easily converted to the optimum population. The main contribution of this work is the ability to clearly separate the optimum rules from others without the need for expensive post-processing for the first time in LCS. This paper identifies that consistency of action in rich alphabets guides LCS to optimum rule sets.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Institutional subscriptions

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9

Similar content being viewed by others

Notes

  1. For a detailed review of different types and approaches in LCS refer to (Urbanowicz and Moore 2009).

  2. If the classifier population size grows larger than the specified limit, then one of the classifier rules has to be deleted so that the new rule can be inserted.

  3. Currently only single step problems are under investigation so the parameter updates being described here are for single step problems. For multi-step problems, parameter updation occurs on the previous action set [A]−1, as described in (Wilson 1995, 1998).

  4. S-expressions are list-based data structures that are suitable for representing arbitrary complex data. An S-expression is defined recursively as either a byte-string or a list of simpler S-expression. For a more detailed description of S-expressions refer to (Rivest 1997).

  5. Four methods to implement code fragmented actions in XCS were tested, but as the results of the other three methods were not illuminating for scaled learning, they are not presented here.

  6. It is assumed that the order of bits is A1A0D0D1D2D3.

  7. The generalized input 10##0# actually covers eight input combinations: 100000, 100001, 100100, 100101, 101000, 101001, 101100, and 101101.

  8. A few newly created classifiers may contain ‘#’ in the address bits due to mutation.

  9. This assumes binary classification with the complete mapping payoff of XCS being no longer explicitly required.

  10. If the code fragmented action tree is evaluated using the current environmental instance as input to the tree (instead of assigning randomly 0 or 1 to ‘#’ symbol in the classifier’s condition), then the final population of classifiers is similar to the population obtained using standard XCS.

  11. In the XCS system, accuracy of prediction is more important than the correctness of the prediction itself.

  12. In this schema ‘A’, the address bits, can be either 0 or 1 and ‘x’, the data bits, can be 0, 1, or ‘#’.

References

  • Acampora G, Cadenas JM, Loia V, Ballester EM (2011) A multi-agent memetic system for human-based knowledge selection. IEEE Trans Syst Man Cybern A Systems Humans 41(5):946–960

    Google Scholar 

  • Ahluwalia M, Bull L (1999) A genetic programming based classifier system. In: Proceedings of the genetic and evolutionary computation conference, pp 11–18

  • Alfaro-Cid E, Merelo JJ, de Vega FF, Esparcia-Alcázar AI, Sharman K (2010) Bloat control operators and diversity in genetic programming: a comparative study. Evol Comput 18(2):305–332

    Article  Google Scholar 

  • Altenberg L (1995) The schema theorem and Price’s theorem. In: Foundations of genetic algorithms, pp 23–49

  • Banzhaf W, Nordin P, Keller RE, Francone FD (1998) Genetic programming—an introduction: on the automatic evolution of computer programs and its applications. Morgan Kaufmann, Burlington

  • Bernad-Mansilla E, Garrell-Guiu JM (2003) Accuracy-based learning classifier systems: models, analysis and applications to classification tasks. Evol Comput 11(3):209–238

    Article  Google Scholar 

  • Beyer HG (1997) An alternative explanation for the manner in which genetic algorithms operate. BioSystems 41:1–15

    Article  Google Scholar 

  • Booker LB, Goldberg DE, Holland JH (1989) Classifier systems and genetic algorithms. Artif Intell 40(1-3):235–282

    Article  Google Scholar 

  • Burjorjee KM (2008) The fundamental problem with the building block hypothesis

  • Butz MV (2000) XCSJava 1.0: an implementation of the XCS classifier system in Java. Technical Report 2000027, Illinois Genetic Algorithms Laboratory

  • Butz MV (2007) Combining gradient-based with evolutionary online learning: an introduction to learning classifier systems. In: Proceedings of the seventh international conference on hybrid intelligent systems, pp 12–17

  • Butz MV, Kovacs T, Lanzi PL, Wilson SW (2001) How XCS evolves accurate classifiers. Technical Report 2001008, Illinois Genetic Algorithms Laboratory

  • 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–46

    Article  Google Scholar 

  • Butz MV, Pelikan M, Llorá X, Goldberg DE (2006) Automated global structure extraction for effective local building block processing in XCS. Evol Comput 14(3):345–380

    Article  Google Scholar 

  • Butz MV, Wilson SW (2002) An algorithmic description of XCS. Soft Comput A Fusion Found Methodol Appl 6(3-4):144–153

    MATH  Google Scholar 

  • Drugowitsch J (2008) Design and analysis of learning classifier systems: a probabilistic approach. Springer Berlin

  • Eiben AE, Smith JE (2003) Introduction to evolutionary computing, 1st edn. Natural Computing Series. Springer, Berlin

  • Goldberg DE (1989) Genetic algorithms in search, optimization and machine learning. Addison Wesley, Boston

  • Holland JH (1975) Adaptation in natural and artificial systems. University of Michigan Press, Ann Arbor

  • Holland JH (1986) Escaping brittleness: the possibilities of general-purpose learning algorithms applied to parallel rule-based systems. In: Machine learning: an artificial intelligence approach, vol II. Morgan Kaufmann, Burlington, pp 593–623

  • 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–2764

  • Jong KAD (2006) Evolutionary computation: a unified approach. MIT Press, Cambridge

  • Kinzett D, Johnston M, Zhang M (2009) Numerical simplification for bloat control and analysis of building blocks in genetic programming. Evol Intell 2(4):151–168

    Article  Google Scholar 

  • Kovacs T (1996) Evolving optimal populations with XCS classifier systems. Technical Report CSR-96-17 and CSRP-9617, University of Birmingham, UK

  • Koza JR (1992) Genetic programming: on the programming of computers by means of natural selection. MIT Press, Cambridge

  • Koza JR, Poli R (2005) Genetic programming. In: Search methodologies: introductory tutorials in optimization and decision support techniques, chap. 5. Springer, Berlin, pp 127–164

  • Lanzi PL (1999) Extending the representation of classifier conditions Part I: from binary to messy coding. In Proceedings of the genetic and evolutionary computation conference, pp 337–344

  • Lanzi PL, Loiacono D (2007) Classifier systems that compute action mappings. In: Proceedings of the genetic and evolutionary computation conference, pp 1822–1829

  • Lanzi PL, Loiacono D, Wilson SW, Goldberg DE (2005) XCS with computed prediction for the learning of Boolean functions. Technical Report 2005007, Illinois Genetic Algorithms Laboratory

  • Lanzi PL, Loiacono D, Wilson SW, Goldberg DE (2007) Generalization in the XCSF classifier system: analysis, improvement, and extension. Evol Comput 15(2):133–168

    Article  Google Scholar 

  • Lanzi PL, Perrucci A (1999) Extending the representation of classifier conditions Part II: from messy coding to S-expressions. In: Proceedings of the genetic and evolutionary computation conference, pp 345–352

  • Lanzi PL, Stolzmann W, Wilson SW (2000) Learning classifier systems: from foundations to applications. Springer, Berlin

  • Loiacono D, Marelli A, Lanzi P (2007) Support vector machines for computing action mappings in learning classifier systems. In: Proceedings of the congress on evolutionary computation, pp 2141–2148

  • Luke S, Panait L (2006) A comparison of bloat control methods for genetic programming. Evol Comput 14(3):309–344

    Article  Google Scholar 

  • Mhlenbein H, Paaß G (1996) From recombination of genes to the estimation of distributions I. Binary parameters. In: Parallel Problem Solving from Nature, pp 178–187

  • Orriols-Puig A, Bernadó-Mansilla E (2006) A further look at UCS classifier system. In: Proceedings of the ninth international workshop on learning classifier systems. Springer, Berlin

  • Pelikan M, Goldberg DE, Lobo FG (2002) A survey of optimization by building and using probabilistic models. Comput Optim Appl 21(1):5–20

    Article  MathSciNet  MATH  Google Scholar 

  • Poli R (2000) Why the schema theorem is correct also in the presence of stochastic effects. In: Proceedings of the congress on evolutionary computation, pp 487–492

  • Poli R, Langdon WB (1998) Schema theory for genetic programming with one-point crossover and point mutation. Evol Comput 6:231–252

    Article  Google Scholar 

  • Poli R, Langdon WB, McPhee NF (2008) A field guide to genetic programming. Lulu Enterprises, UK Ltd

  • Rivest RL (1997) S-expressions, Internet Engineering Task Force—Internet Draft. http://people.csail.mit.edu/rivest/Sexp.txt,1997

  • Robilliard D, Marion-Poty V, Fonlupt C (2009) Genetic programming on graphics processing units. Genet Program Evol Mach 10(4):447–471

    Article  Google Scholar 

  • Russell SJ, Norvig P (2011) Artificial intelligence: a modern approach, 3rd edn. Pearson Education, Boston

  • Smith SF (1980) A learning system based on genetic adaptive algorithms. PhD thesis

  • Sutton RS, Barto AG (1998) Reinforcement learning: an introduction. MIT Press, Cambridge

  • Tenne Y, Armfield S (2009) A framework for memetic optimization using variable global and local surrogate models. Soft Comput A Fusion Found Methodol Appl 13(8):781–793

    Google Scholar 

  • Thrun S (1996) Is learning the n-th thing any easier than learning the first? In: Advances in neural information processing systems. MIT Press, Cambridge, pp 640–646

  • Urbanowicz RJ, Moore JH (2009) Learning classifier systems: a complete introduction, review, and roadmap. J Artif Evol Appl 2009(1):1–25

    Article  Google Scholar 

  • Wilson SW (1994) ZCS: a zeroth level classifier system. Evol Comput 2(1):1–18

    Article  Google Scholar 

  • Wilson SW (1995) Classifier fitness based on accuracy. Evol Comput 3(2):149–175

    Article  Google Scholar 

  • Wilson SW (1998) Generalization in the XCS classifier system. In: Procedings of the third annual genetic programming conference, pp 665–674

  • Wilson SW (2002) Classifiers that approximate functions. Nat Comput 1:211–233

    Article  MathSciNet  MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Muhammad Iqbal.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Iqbal, M., Browne, W.N. & Zhang, M. Evolving optimum populations with XCS classifier systems. Soft Comput 17, 503–518 (2013). https://doi.org/10.1007/s00500-012-0922-5

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00500-012-0922-5

Keywords

Navigation