Comparison of two methods for computing action values in XCS with code-fragment actions
Muhammad Iqbal, Will Neil Browne, Mengjie Zhang · 2013
XCS is a learning classifier system that uses accuracy-based fitness to learn a problem. Commonly, a classifier rule in XCS is encoded using a ternary alphabet based condition and a numeric action. Previously, we implemented a code-fragment action based XCS, called XCSCFA, where the typically used numeric action was replaced by a genetic programming like tree-expression. In XCSCFA, the action value in a classifier was computed by loading the terminal symbols in the action-tree with the corresponding binary values in the condition of the classifier rule. This enabled accurate, general and compact rule sets to be simply produced. The main contribution of this work is to investigate an intuitive way, i.e. using the environmental instance, to compute the action value in XCSCFA, instead of the condition of the classifier rule. The methods will be compared in five different Boolean problem domains, i.e. multiplexer, even-parity, majority-on, design verification, and carry problems. The environmental instance based XCSCFA approach had better classification performance than standard XCS as well as classifier condition based XCSCFA and solved all the problems experimented here. In addition it produced more general and compact classifier rules in the final solution. However, classifier condition based XCSCFA has the advantage of producing the optimal classifiers such that they are clearly separated from the sub-optimal ones in certain domains.