Learning classifier system

A learning classifier system, or LCS, is a machine learning system with close links to  reinforcement learning and genetic algorithms. First described by John Holland, an LCS consists of a population of binary rules on which a genetic algorithm altered and selected the best rules. Instead of using a fitness function, rule utility is decided by a reinforcement learning technique.

Learning classifier systems can be split into two types depending upon where the genetic algorithm acts. A Pittsburgh-type LCS has a population of separate rule sets, where the genetic algorithm recombines and reproduces the best of these rule sets. In a Michigan-style LCS there is only a single population and the algorithm's action focuses on selecting the best classifiers within that ruleset. Michigan-style LCSs have two main types of reinforcement learning, fitness sharing (ZCS) and accuracy-based (XCS).

Initially the classifiers or rules were binary, but recent research has focused on improving this representation. This has been achieved by using populations of neural networks and other methods.

Learning classifier systems are not well-defined mathematically and doing so remains an area of active research. Despite this, they have been successfully applied in many problem domains.