Abstract
XCS is an accuracy-based learning classifier system, which has been successfully applied to learn various classification and function approximation problems. Recently, it has been reported that XCS cannot learn overlapping and niche imbalance problems using the typical experimental setup. This paper describes two approaches to learn these complex problems: firstly, tune the parameters and adjust the methods of standard XCS specifically for such problems. Secondly, apply an advanced variation of XCS. Specifically, we developed previously an XCS with code-fragment actions, named XCSCFA, which has a more flexible genetic programming like encoding and explicit state-action mapping through computed actions. This approach is examined and compared with standard XCS on six complex Boolean datasets, which include overlapping and niche imbalance problems. The results indicate that to learn overlapping and niche imbalance problems using XCS, it is beneficial to either deactivate action set subsumption or use a relatively high subsumption threshold and a small error threshold. The XCSCFA approach successfully solved the tested complex, overlapping and niche imbalance problems without parameter tuning, because of the rich alphabet, inconsistent actions and especially the redundancy provided by the code-fragment actions. The major contribution of the work presented here is overcoming the identified problem in the wide-spread XCS technique.
Similar content being viewed by others
Explore related subjects
Discover the latest articles, news and stories from top researchers in related subjects.Notes
UCS (sUpervised Classifier System) [5] is a variant of XCS, which is specifically designed for supervised learning problems.
Here, * can be 0, 1, or #.
They also used a larger value for action set subsumption threshold, i.e. 100 instead of the commonly used value of 20.
These methods need larger population size to solve even-parity problems.
References
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
Behdad M, Barone L, French T, Bennamoun M (2012) On XCSR for electronic fraud detection. Evol Intell 5(2):139–150
Behdad M, French T, Barone L, Bennamoun M (2012) On principal component analysis for high-dimensional XCSR. Evol Intell 5(2):129–138
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
Brameier M, Banzhaf W (2007) Linear genetic programming. Springer, New York
Bull L (2004) Applications of learning classifier systems. Springer, New York
Bull L, Kovacs T (2005) Foundations of learning classifier systems: an introduction. Springer, New York
Bull L, O’Hara T (2002) Accuracy-based neuro and neuro-fuzzy classifier systems. In proceedings of the genetic and evolutionary computation conference, pp 905–911
Butz MV (2006) Rule-based evolutionary online learning systems: a principal approach to LCS analysis and design. Springer, New York
Butz MV, Goldberg DE, Lanzi PL (2007) Effect of pure error-based fitness in XCS. In learning classifier systems, vol 4399. Springer, New York, pp 104–114
Butz MV, Goldberg DE, Tharakunnel K (2003) Analysis and improvement of fitness exploitation in XCS: bounding models, tournament selection, and bilateral accuracy. Evol Comput 11(3):239–277
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
Butz MV, Wilson SW (2002) An algorithmic description of XCS. Soft Comput 6(3-4):144–153
Dam HH, Abbass HA, Lokan C, Yao X (2008) Neural-based learning classifier systems. IEEE Trans Knowl Data Eng 20(1):26–39
Dandamudi SP (2003) Fundamentals of computer organization and design. Springer, New York
Franco MA, Krasnogor N, Bacardit J (2012) Analysing BioHEL using challenging Boolean functions. Evol Intell 5(2):87–102
Goldberg DE, Korb B, Deb K (1989) Messy genetic algorithms: motivation, analysis, and first results. Complex Syst 3(5):493–530
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–32
Hurst J, Bull L (2006) A neural learning classifier system with self-adaptive constructivism for mobile robot control. Artif Life 12(3):353–380
Ioannides C, Barrett G, Eder K (2011) Improving XCS performance on overlapping binary problems. In proceedings of the IEEE congress on evolutionary computation, pp 1420–1427
Ioannides C, Barrett G, Eder K (2011) XCS Cannot learn all Boolean functions. In proceedings of the genetic and evolutionary computation conference, pp 1283–1290
Iqbal M, Browne WN, Zhang M (2012) Extracting and using building blocks of knowledge in learning classifier systems. In proceedings of the genetic and evolutionary computation conference, pp 863–870
Iqbal M, Browne WN, Zhang M (2012) XCSR with computed continuous Action. In proceedings of the Australasian joint conference on artificial intelligence, pp 350–361
Iqbal M, Browne WN, Zhang M (2013) Comparison of two methods for computing action values in XCS with code-fragment actions. In proceedings of the genetic and evolutionary computation conference (companion), pp 1235–1242
Iqbal M, Browne WN, Zhang M (2013) Evolving optimum populations with XCS classifier systems. Soft Comput 17(3):503–518
Iqbal M, Browne WN, Zhang M (2013) Learning overlapping natured and niche imbalance Boolean problems using XCS classifier systems. In proceedings of the IEEE congress on evolutionary computation, pp 825
Iqbal M, Browne WN, Zhang M (2013) Using building blocks of extracted knowledge to solve complex, large-scale Boolean problems. IEEE transactions on evolutionary computation. (to appear)
Iqbal M, Zhang M, Browne WN (2011) Automatically defined functions for learning classifier systems. In proceedings of the genetic and evolutionary computation conference (companion), pp 375–382
De Jong KA (2006) Evolutionary computation: a unified approach. The 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
Kovacs T (1996) Evolving optimal populations with XCS classifier systems. Technical report CSR-96-17 and CSRP-9617, University of Birmingham, UK
Kovacs T (2002) What should a classifier system learn and how should we measure it? Soft Comput 6(3–4):171–182
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 (2003) XCS with stack-based genetic programming. In proceedings of the IEEE congress on evolutionary computation, pp 1186–1191
Lanzi PL (2008) Learning classifier systems: then and now. Evol Intell 1(1):63–82
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
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
Loiacono D, Marelli A, Lanzi PL (2007) Support vector machines for computing action mappings in learning classifier systems. In proceedings of the IEEE 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
Miller JF, Smith SL (2006) Redundancy and computational efficiency in cartesian genetic programming. IEEE Trans Evol Comput 10(2):167–174
Miller JF, Thomson P (2000) Cartesian genetic programming. In proceedings of the European conference on genetic programming, pp 121–132
Poli R, Langdon WB, McPhee NF (2008) A field guide to genetic programming. Published via http://lulu.com and freely available at http://www.gp-field-guide.org.uk. (With contributions by Koza JR)
Shafi K, Kovacs T, Abbass HA, Zhu W (2009) Intrusion detection with evolutionary learning classifier systems. Nat Comput 8(1):3–27
Stalph PO, Rubinsztajn J, Sigaud O, Butz MV (2012) Function approximation with LWPR and XCSF: a comparative study. Evol Intell 5(2):103–116
Urbanowicz RJ, Moore JH (2009) Learning classifier systems: a complete introduction, review, and roadmap. J Artif Evol Appl 2009(1):1–25
Vijayakumar S, Schaal S (2000) Locally weighted projection regression: an o(n) algorithm for incremental real time learning in high dimensional space. In proceedings of the international conference on machine learning, pp 1079–1086
Wilson SW (1994) ZCS: A zeroth level classifier system. Evol Comput 2(1):1–18
Wilson SW (1995) Classifier fitness based on accuracy. Evol Comput (2):149–175
Wilson SW (1998) Generalization in the XCS classifier system. In proceedings of the genetic programming conference, pp 65–674
Wilson SW (2000) Get real! XCS with continuous-valued inputs. In learning classifier systems. Springer, New York, pp 209–219
Wilson SW (2000) Mining oblique data with XCS. In proceedings of the genetic and evolutionary computation conference (companion), pp 158–174
Wilson SW (2002) Classifiers that approximate functions. Nat Comput 1:211–233
Wilson SW (2008) Classifier conditions using gene expression programming. In learning classifier systems, Springer, New York, pp 206–217
Wong P, Zhang M (2006) Algebraic simplification of GP programs during evolution. In proceedings of the genetic and evolutionary computation conference, pp 927–934
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Iqbal, M., Browne, W.N. & Zhang, M. Learning complex, overlapping and niche imbalance Boolean problems using XCS-based classifier systems. Evol. Intel. 6, 73–91 (2013). https://doi.org/10.1007/s12065-013-0091-1
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s12065-013-0091-1