Classifier Systems & Genetic Algorithms: 3.1 Introducing The Classifier System
Classifier Systems & Genetic Algorithms: 3.1 Introducing The Classifier System
Robert A. Richards
Soon after the advent of the electronic computer, scientists envisioned its potential to exhibit learning
behavior. Since the early machine learning work by Samuel [1959], many machine learning systems have been
developed. One of these, the learning classifier system, introduced by Holland and Reitman [1978] is a machine
learning system which possesses the salient properties needed to learn in the shape optimization domain.
Though a complete review of machine learning field is beyond the scope of this work, two important
concepts need to be formalized. In machine learning, the machine is a software system running on a computer,
while learning is analogous to (some subset of) the human learning behavior. Furthermore, behavior is a product
of the interaction between an agent and its environment, where the agent is any entity, (biological, mechanical or
otherwise), that can perform actions, intelligent or not. The universe of possible behavioral patterns is therefore
determined by the structure and the dynamics of both the agent and the environment, and in particular by the
interface between the two (the sensors and the effectors).
Machine learning distinguishes between two important classifications for behavior; one is stimulus-response
and the other is dynamic. Stimulus-response (S-R) behavior is reflex behavior; that is, a stimulus to the agent
(via its sensors) causes a direct response by the agent (via its effectors). Dynamic behavior, is more complex
with there being an internal state which may perform multiple layers of computation before a response is
generated.
Learning has many denotations and connotations; the following two descriptions summarize learning for the
purpose of this study:
• An agent (machine learning system) learns (with respect to an environment) if its production of a
response alters the state of the environment in such a way that future responses of the same type tend to
be better.
• Systems that are capable of making changes to themselves over time with the goal of improving their
performance on the tasks confronting them in a particular environment [demonstrate learning].
(Kondratoff & Michalski [1990]).
The rest of this chapter introduces a simple Michigan Approach Classifier System (CS), as first described by
Holland and Reitman [1978]. The major components of the classifier system are detailed; one of these
components includes the genetic algorithm (GA). Since the genetic algorithm plays such a vital role in the
classifier system's learning ability, the significant aspects of the genetic algorithm are presented. With the
classifier system's components introduced, the holistic viewpoint is next presented demonstrating the interplay of
the newly described components. With the CS and GA developed, relevant past applications are reviewed. The
chapter closes with methods used to evaluate the learning performance of classifier systems. For a more in-depth
overview of genetic algorithms and classifier systems the interested reader is directed to Goldberg [1989], and
the seminal work by Holland [1975]. Much of the subsequent review is based on these works.
Figure 3.2 provides more detail on the classifier system's internal components. In Figure 3.2 the detectors,
effectors, and classifier population blocks are part of the rule and message sub-system; the auction and
reward/punishment blocks are part of the apportionment of credit sub-system; and the classifier discovery block
is part of the classifier discovery mechanisms. The following three sub-sections describe the components in more
detail as well as the information flow between the components.
Figure 3.2 Classifier System Modules & Interaction with Environment
IF <condition1>&<condition2>&...&<conditionN>
THEN <action> (3.1)
where,
011001
would match all of the following conditions
0110#1
011001
##100#
######
as well as others.
To illustrate, Table 3.1 shows samples of strings which are valid forms for classifiers, (with the ":" symbol
denoting the break between the antecedent and action, i.e. <antecedent>:<action>), in the first column, and their
associated strength in the second column.
Rule Strength
011:101 23.2
011001##10#110:11 17.3
10101000110011##100#:11100001 32.9
####:1 7.1
100##00100##0011##:011001 29.0
The alphabet is restricted to allow for the power of genetic algorithms to be applied to the rule set as
described below in Section 3.2, Genetic Algorithm. The alphabet in no way restricts the representational capacity
of the classifiers.
The form of a rule differs from those normally found in expert systems. In expert systems, the rules often
consist of sentences, for example,
Such syntax makes it very difficult for a computer system to be able to modify such a rule. Just as text is
stored on computer disks as 0’s and 1’s, any rule can be translated into 0’s, 1’s, and #’s, so that it is in the form of
a classifier. Once translated, rules can be manipulated more easily, and rule discovery and modification can
occur.
The messages from the environment, which match the antecedent of the classifiers, are filtered and converted
via input sensors. The sensors (called detectors in classifier system parlance) discriminantly select certain
aspects of the environment to sense and then translate the input to a binary form which can be processed by the
classifiers.
The actions of the classifiers modify the environment via the effectors (or output interface) see Figure 3.2.
The effectors translate the binary action into a form which is appropriate to modify the environment within an
envelope of allowable modifications.
(3.2)
where,
k0 Classifier Bid Coefficient: positive constant less than
unity that acts as an overall risk factor influencing
what proportion of a classifier’s strength will be bid
and possibly lost on a single step.
k1 Bid Coefficient 1: constant less than unity for
non-specificity portion of bid.
k2 Bid Coefficient 2: constant less than unity for
specificity portion of bid.
Si(t) Strength of classifier i at step t.
BidRatio Measure of the classifier’s normalized specificity. A
BidRatio of 1 means there is just one possible message
that matches each condition, while a BidRatio of zero
means the classifier would be matched by any message and
the antecedent would consist of all wildcard characters.
BRPow Parameter controlling the importance of the BidRatio in
determining a classifier’s bid (default is 1).
Figure 3.3 Auction in Classifier System
To promote exploration of the classifier space, the bids submitted by each competing classifier in Equation
3.2 are not used directly to determine the auction winner, random noise is added to the auction. Therefore the
effective bid, eBi(t), is calculated as the sum of the deterministic bid, Bi(t), and a noise term, N(σbid) as shown in
Equation 3.3:
. (3.3)
3.1.2.2 Reinforcement & Punishment
Since the pioneering work on machine learning by Samuel [1959], the credit assignment problem (Minsky
[1963]) has been known to be a key problem for any learning system in which many interacting parts determine
the system’s global performance. Credit assignment deals with the problem of deciding, when many parts of a
system are active over a period of time (or even at every time step), which of those parts active at some step t
contribute to achieving some desired outcome at step t+n, for n 0. This is a particularly challenging problem.
To solve the credit assignment problem in classifier systems, the bucket brigade algorithm, as defined by
Holland [1986], was developed, and has experienced limited success to date. An alternative and simpler solution
(when possible) is the implementation of the CS as a stimulus-response (S-R) system -- this solution has proven
successful as Table 3.5 in Section 3.5 exhibits. A S-R classifier system activates only one classifier each iteration
and the activated classifier effects the environment. Therefore the environmental modification can easily be
attributed to a single source.
A trainer is necessary to determine whether the environmental modification was beneficial or detrimental.
Some machine learning systems require a tutor trainer which knows the correct or best answer, enabling the
system’s actual response to be compared with the correct response. Fortunately, a classifier system requires only
the more flexible reinforcement trainer. Reinforcement learning requires only positive or negative feedback
from the reinforcement trainer as a consequence of a response.
When the victorious classifier creates a beneficial effect to the environment, the trainer sends positive
feedback causing an increase in the victorious classifier’s strength. Conversely, a detrimental effect leads to
punishment. Since the victorious classifier’s strength decreases when it wins the auction and pays its bid, (as
shown in Equation 3.2), punishment occurs implicitly anytime a reward is not provided. In addition, an adjunct
strength reduction may occur. If the trainer has the ability to rank environmental effects, then the rewards and
punishments can be scaled appropriately.
The strength Si(t+1) of a classifier i at the end of iteration t is:
, (3.4)
where,
Si(t) Strength of classifier i at beginning of iteration t.
Ri(t) Reward from the environment during iteration t.
Bi(t) Classifier’s bid during iteration t (as defined by Equation
3.2). Only paid if victorious.
Again, classifier i only makes a bid payment if victorious in the auction and effects the environment. The
reward factor, Ri(t), is only non-zero if the classifier won the auction on the previous iteration. The reward (or
punishment) for the action at iteration t will not be applied until iteration t + 1. Note that Ri(t) is less that zero for
punishment, and greater than zero for reward.
3.1.2.3 Taxes
Taxation occurs to prevent the classifier population from being cluttered with artificially high strength
classifiers of little or no utility. There are two types of taxes:
• life tax,
• bid tax.
The life tax, Taxlife, (also called head tax) is a fixed rate tax applied to every classifier on every iteration.
The purpose is to reduce the strength of classifiers that rarely or never are matched and therefore provide little or
no utility. Non-producing classifier’s strengths are slowly decreased, making them candidates for replacement
when the classifier discovery mechanisms (primarily the genetic algorithm) creates new classifiers. The bid tax,
Taxbid, is a fixed-rate tax that is applied to each classifier that bids during an iteration. One reason for a bid tax
is to penalize overly general classifiers, i.e., classifiers that bid on every step but perhaps seldom win because
they have a low specificity which leads to low bids and so a low chance of winning the auction to post effector
messages (Riolo [1988]).
The free-fall half life determines the order of magnitude of the life tax, and is determined by observing that
the strengths of inactive (non-matching) classifiers are only reduced by the life tax. Therefore after n iterations
of inactivity the strength of an inactive classifier has the strength:
.
(3.5)
The half life, n, of an inactive classifier may then be determined by Equation 3.6,
. (3.6)
If the half-life is specified, the tax rate may be found by Equation 3.7,
. (3.7)
As will be discussed in Section 3.1.3, new classifiers are inserted into the population at the average strength
of their parents, thus the tax rate must be set to ensure that inactive rules are degraded sufficiently before the
application of the genetic algorithm. If this is not done, relatively inactive rules can retain an unrealistically high
level of strength and ultimately reach reproduction disproportionately, thereby cluttering future populations with
large numbers of overrated inactive rules. However, the tax burden can not be so great that rules which have only
remained inactive by chance become so weak that they are essentially eliminated from any auction. Thus the life
tax should be set to yield a half life on the order of the application period of the genetic algorithm.
With all the apportionment of credit mechanisms defined, the complete strength equation is shown in
Equation 3.8:
. (3.8)
Recall that,
Ri(t) will only be non-zero if classifier i won the auction on iteration t-1.
Bi(t) is only paid if classifier i wins the auction.
is only paid if classifier i bids in the auction
(irrespective of whether classifier i wins the auction or not).
Genetic algorithms, as Goldberg [1989] states and demonstrates, are theoretically and empirically proven to
provide robust search in complex spaces. The GA performs its search balancing the need to retain population
diversity ‘exploration’, so that potentially important information is not lost, with the need to focus on fit portions
of the population, ‘exploitation’ (Whitley [1989]). Reproduction in GA theory, as in biology, is defined as the
process of producing offspring (Melloni et al. [1979]). However, mating may occur between any two
classifiers,[†6] as there is no male-female distinction.
Improvements come from trying new, risky things. Because many of the risks fail, exploration involves a
period of performance degradation. Deciding to what degree the present should be mortgaged for the future is a
classic problem for all systems that adapt and learn. The genetic algorithm's approach to this obstacle is
crossover (as discussed below).
In computational terms, genetic algorithms are distinguished from other search methods by the following
features:
• A population of structures[‡7] that can be interpreted as candidate solutions to the given problem.
• The competitive selection of structures for reproduction, based on each structure's fitness as a solution
to the given problem.
• Idealized genetic operators that recombine the selected structures to create new structures for further
testing.
The following discusses the operators of a basic genetic algorithm. A mathematical justification for the GA's
power is provided through the schema theorem (Holland [1975]). The schema theorem has developed from
earlier work by Holland [1968] and is under continuing development. For more information on the schema
theorem the interested reader is directed to, in addition to the references already cited, Bethke [1981], Fitzpatrick
and Grefenstette [1988]. Koza [1992], and Whitley [1994] provide both theoretical foundations, as well as lucid
descriptions of schema and schema theory.
Genetic Algorithm Operators
The basic genetic algorithm operators involved in reproduction are:
• Selection,
• Crossover,
• Mutation.
The placement of these operators in the overall genetic algorithm is shown in Figure 3.4.
Figure 3.4 Simple Genetic Algorithm Flowchart
In Figure 3.4 there is a box that reads, ‘Determine strength for all population members’, in the case of a
classifier system this determination can not occur during a single iteration. Classifier systems determine the
ranking among the population members via multiple interactions with the environment whereby strength changes
occur via the apportionment of credit sub-system of the classifier system. Only after multiple interactions with
the environment will the classifier strengths represent a measure of how well the classifier performs in the
environment. The number of iterations that occur between each application of the genetic algorithm is called an
epoch. Therefore in Figure 3.4 each loop represents one epoch.
1) Selection deals with the selection of classifiers of the population which will reproduce. The selection
algorithm allocates reproductive trials to classifiers as a function of their strength. Some selection strategies are
deterministic such as elitism where just a certain percentage of the strongest classifiers are selected. However,
most research has shown that stochastic selection biased by strength is more productive.
For stochastic selection, the selection probability is proportional to the individual’s strength. During
selection, high strength classifiers have a greater probability of producing offspring for the next generation than
lower strength classifiers. There are many different ways to implement the stochastic selection operator, with
most methods which bias selection towards high strength proving successful as Goldberg and Samtani [1986] as
well as others have shown.
Fitness proportionate reproduction is a simple rule whereby the probability of reproduction during a given
generation is proportional to the fitness of the individual. In this investigation, the probability that a classifier, i,
will be selected for mating is given simply by the classifier’s strength divided by the total strength of all the
classifiers:
, (3.9)
where,
Pi Probability of selection for classifier i.
Si Strength of the classifier i.
n Total number of classifiers.
This gives every member of the population a finite probability of becoming a parent, with stronger classifiers
having a better chance.
2) Crossover takes a portion of each parent (as described below) and combines the two portions to create
offspring. After selection, the strings are copied into a mating pool and crossover occurs on the copies.
First, panmictic pairs of parents are chosen from the copies in the mating pool. That is, the mate for each
individual which was chosen during selection is randomly bred with one of the other classifiers which was
chosen during selection. Techniques have been suggested which bias the mate to have certain characteristics but
none of these techniques were employed in the current work.
Second, each pair of copies undergoes crossing over as follows: an integer position k along the string is
selected uniformly at random on the interval (1, L-1), where L is the length of the string. Two new strings
(classifiers) are created by swapping all characters between positions L and k inclusively.
To visualize how this works, consider two strings A and B of length 7 mated at random from the mating
pool:
A = a1 a2 a3 a4 a5 a6 a7
B = b1 b2 b3 b4 b5 b6 b7.
Consider the random selection of k is four. The resulting crossover yields two new classifiers A’ and B’
following the partial exchange.
A’ = b1 b2 b3 b4 a5 a6 a7
B’ = a1 a2 a3 a4 b5 b6 b7.
The simple crossover described above is a special case of the n-point crossover operator. In the n-point
crossover operator, more than one crossover point is selected and several substrings from each parent are
exchanged. This study employs solely the single- point crossover operator.
Although the mechanics of the selection and crossover operators are simple, the biased selection and the
structured, though stochastic, information exchange of crossover give genetic algorithms much of their power.
3) Mutation, the random alteration of a string position, performs a secondary role in the reproduction
process. Mutation is needed to guard against premature convergence, and to guarantee that any location in the
search space may be reached. In the classifier’s tertiary code, a mutation could change,
0 to a 1 or #;
1 to a 0 or #;
or # to a 0 or 1.
By itself, mutation is a random walk through the classifier space. The frequency of mutation, by biological
analogy and empirical studies, is on the order of one mutation per ten thousand position transfers.
When learning is occurring, some form of an initial population must be created. As stated, one may
commence with many possible initial populations. To fully test the learning ability of the CS a tabula rasa is
used. Even if a randomly generated initial population is selected, many population parameters still must be set.
These include the number of conditions in the antecedent, the word length for each condition and the action and
the probability of selecting a # in the randomly generated population. These issues will be further discussed and
actual selections made for this study in the next chapter.
The basic interactions between an environment and a classifier system in learning mode as first shown in
Figure 3.1, is repeated in Figure 3.6.
Since the initial classifiers are randomly generated, they are most likely of low quality and should be
considered nothing more than guesses. The classifier system performs many iterations of interaction with the
environment receiving feedback allowing the guesses to be ranked. These iterations consist of the classifier
system’s major cycle; a flowchart of the major cycle is shown in Figure 3.7. The major cycle shown in Figure 3.7
extends the information provided in Figure 3.3, in Section 3.1.2.1. The earlier figure did not include the feedback
used by the apportionment of credit sub-system to reward or punish the responsible classifier.
Figure 3.7 Classifier System Major Cycle
After an epoch (of iterations) the genetic algorithm is applied mating the best guesses. As the iterations and
epochs increase the quality of the guesses increases. Since general guesses (i.e., classifier with many # symbols)
participate in auctions more than specific guesses, the initial learning will find some general guesses which are
correct more times than not. With the concept of major cycle and epoch defined, the genetic algorithm flowchart
shown in Figure 3.4 in Section 3.2 can be specialized for the classifier system, as shown in Figure 3.8.
With some learning behind it, the population of classifiers may be thought of as a population of hypotheses
(Holland [1992]). As always, a hypothesis (classifier) enters the auction when it is pertinent to the situation. A
hypothesis’ competitiveness is determined by its past performance and its specificity. For the victorious
hypothesis, its destiny is tied to the result of its actions. As epochs pass, successful hypotheses will exchange
information via the genetic algorithm. These offspring will replace disproved hypotheses with more plausible but
untested hypotheses.
Figure 3.9 shows more details of the classifier system’s structure, adding detail to Figure 3.1 from Section
3.1.
Figure 3.9 The Classifier System & Interaction with Environment: Learning Mode
With more epochs comes the evolution of more specific hypotheses which control behavior in their narrow
domains, overriding the more general default rules. This development of general (or default) hypotheses and
specific (or exception) hypotheses allows the classifier system to learn gracefully, permitting the handling of
novel situations by general hypotheses while providing for exception hypotheses when necessary. This hierarchy
of classifiers is known as default hierarchies and will be further explored in Section 3.4.1.
As epochs continue and most of the feedback becomes positive, the classifiers may be thought of as more
and more validated hypotheses. Furthermore, when the classifier system can pass criteria to be considered
learned, the classifiers may be considered heuristics and rules.
Figure 3.10 shows the detailed interactions of the major components of the classifier system and a detailed
view of the rule and message sub-system.
Figure 3.10 Detailed Classifier System & Interaction with Environment: Learning Mode
Description Reference
Dhingra [1990]
Optimal structures using genetic algorithm include work by Dhingra and Jensen
Jensen [1992]
The flow vectoring of supersonic exhaust nozzles using a genetic algorithm to define
King [1991]
optimally shaped contours was investigated by King
Callahan investigated the use of Genetic Algorithms for the strength-to-weight and
Callahan [1991]
stiffness-to-weight optimization of Laminates
The application of GA to the designing optimum welds has been investigated by Deb Deb [1990]
Baffes and Wang have investigated the use of GA in the path planning of a mobile Baffes and Wang
transporter [1988]
General Electric's Engineous helped design the engine for the Boeing 777 Ashley [1992]
VLSI cell placement Kling [1991]
Karr and Goldberg
Design of Air-Injected Hydrocyclone
[1990]
Composite material structures' design and optimization Punch et al. [1994]
Le Riche and
Composite laminate staking sequence optimization for buckling load maximization
Haftka [1993]
Table 3.5 presents some of the more successful classifier system applications. These examples are stimulus-
response (S-R) systems, searching the space of possible stimulus-response rules. Except for allocating payoffs
directly to the classifiers that produced results, the bucket brigade algorithm as defined by Holland [1986] did
not play a role in these systems.
Table 3.5 Applications of Classifier System
Description Reference
Dorigo has developed a robot path planning system utilizing many classifier systems Dorigo and Sirtori
simultaneously. [1991]
Utilized a classifier system to control a simulated creature in a simple two-
Booker [1982]
dimensional environment.
Demonstrated the application of a classifier system to the control of gas flow through
Goldberg [1983]
a national pipeline system.
Applied classifier systems to learning dynamic planning problems, such as
Roberts [1993]
determining plans of movement through artificial environments in search of food.
Used classifier systems to learn to categorize Boolean multiplexer functions. Wilson [1986]
The learning mode performance measures how well the classifier system is learning to perform the correct
behavior in an environment. The application mode performance measures the performance of the learned
classifier system in handling problems from the same domain (but different problems) from which it was taught.
Application mode performance is addressed in Chapter 7, where the application mode performance is
measured and compared to the performance of other techniques which solve problems in (a subset of) the
environment which the learned classifier can perform.
Pure random search provides a lower bound on the learning mode performance of genetic algorithms and
classifier systems; of course, substantial increases in performance over random search must ensue before
suggesting that the classifier system is learning.
The evidence for learning is an increase in the classifier system’s performance. Therefore, to know that the
classifier system is learning the target behavior, various performance metrics are employed.
The simplest measure of learning performance is the ratio of the number of correct responses to the total
number of responses produced:
. (3.11)
P1 will always be less than or equal to 1, and is defined as the cumulative measure, and gives an idea of the
whole learning process. A local measure portrays the present performance level, and is defined as follows:
. (3.12)
A different type of metric relates to multi-step goals. For example, if the classifier system’s actions are each
only a single step towards a larger goal, then the number of steps to attain the goal is an important metric. The
shape optimization environment is a situation where a classifier system cannot be expected to find the optimal
shape in a single design iteration. Thus for multi-step goals the performance metric P3 is defined as:
All these metrics should show an asymptotic improvement with increasing learning iterations, and thus reveal
not only the learning progress but also a point where the diminishing returns are so small that continued learning
is not justified. At such a point the learning regime must be deemed to have reached, a learned state, or a point of
failure.
Another set of metrics tries to explain some of the internal workings of the classifier system. One is a
histogram of the strength distribution for the classifier population. In this chart the classifier strengths are
grouped into sets with the following ranges;
0-1, 1-3, 3-5, 5-7, 7-9, 9-11, 11-13, 13-15, 15-17, 17-19, 19-20.
The number of classifiers in each set is plotted as a vertical bar, and the horizontal axis shows the strength
from 0 to 20. Initially the histogram will show just one bar with a height equal to the population size because all
classifiers are initialized with the same value. Figure 3.11 displays a hypothetical strength histogram.
The other metric in this set depicts the default hierarchies in the population. The specificity of a classifier is
equivalent to its level in the default hierarchies. Figure 3.12 displays a default hierarchy chart of a population of
1000 classifiers. The classifier strengths in this illustration range from 0 to 20, and there are 60 levels of
specificity. The strengths can be any real number between 0 and 20 inclusive, while a classifier’s specificity can
have only a certain number of fixed values. In this illustration there are 61 such values, a level 0 specificity in
Figure 3.12 represents having an antecedent consisting of all # symbols, and a level 60 specificity has no #
symbols in the antecedent. The overall chart reveals the level of specificity diversity in the population, while the
region with strengths greater than the population mean represents the default hierarchies of the best classifiers.
Figure 3.12 Example Default Hierarchy Snapshot at Learning Iteration t
A different set of metrics deals with taking a closer look at the multiple step goal attainment performance
(see P3 above) of the classifier system at various stages of learning. For these metrics, a property describing the
state of the environment is charted versus the iterations needed to solve a multi-iteration goal. Figure 3.13
provides an example, showing a chart with two properties that describe the state of a system which requires
multiple steps to reach a desired goal. In this example, the system may be thought of as already having Y
learning iterations behind it when this new goal is presented to the classifier system. The iterations in Figure 3.13
represent those required to accomplish the goal. This illustration took 55 iterations for the goal to be satisfied,
since learning continues with this problem, these 55 iterations occur on the learning iterations Y+1 through
Y+55. These metrics measure the efficiency and effectiveness as described in Chapter 2, Section 2.5 at different
stages of learning.
Figure 3.13 Example Multi-iteration Goal Plot from Learning Iteration Y to Y+55 Learning Times
The main drawback for the classifier system is the computational resources needed for the system to learn.
The results of this study demonstrate that these computational needs are not restrictive for shape optimization.
Furthermore, the CS benefits greatly from where these computational costs derive as the following attests. First,
the training is off-line, that is, training is performed not when real problems are being solved but prior on a suite
of appropriate examples. Second, in industry one would probably obtain a pre-trained system, thus avoiding the
computational and time costs of the training. The consumer then would perceive the acquisition as that of an
expert system.
Since the learning process is extensive, historical precedent provides beneficial cues to gauge what duration
of learning should be expected, and to know when to concede if learning does not manifest itself. For example,
the problems attacked by Riolo [1988] took between 50,000 and 100,000 cycles before achievement of adequate
performance. "Alecsys", which taught a simulated and real robot to find benefits and avoid dangers (Dorigo &
Schnepf [1991]) needed training on the order of 100,000 to 1 million cycles before the system was considered
learned. The current investigation’s environment possesses properties which should prove easier to solve than the
examples cited, therefore, the learning is expected to require less than 100,000 iterations for significant
manifestations of learning to evolve. Furthermore, if measurable learning has not appeared by 500,000 iterations,
serious reservations and re-evaluation are in order!
Recall that the genetic algorithm can solve the problems from the environment this study’s classifier system
is intended to (see Chapter 2, Section 2.5). However, as shown, the GA approach can take the same magnitude of
iterations to solve just one problem. Furthermore, the GA does not retain any knowledge from the effort, so
when a new problem is solved, the solution time is the same as if no prior solves had occurred. Therefore, the
classifier system shows the promise of learning to solve problems in this environment in the same magnitude of
iterations as the genetic algorithm takes to solve just one problem! Therefore, if the learned classifier system can
then solve additional problems in any significantly diminished number of iterations, the overhead of the learning
will be justified and the benefit of applying a GA directly will be nil.
3.7 Summary
This chapter provided a pedagogical treatment of the Michigan approach classifier system. Due to the
complex nature of the classifier system the review dealt most heavily with the aspects which have the most direct
impact on this study. The genetic algorithm discussion emphasized how the algorithm is applied in conjunction
with a classifier system. With the mechanisms of the classifier system discussed, some applications were
reviewed and the metrics used to measure its performance were introduced with empirical predictions for the
expected learning requirements. Table 3.6 summarizes the particulars of the classifier system mentioned in
regard to this study.
CS approach Michigan
Behavior classification Stimulus-Response (no bucket brigade)
Environment Structural Shape optimization with stress constraints
Selection Fitness proportionate reproduction
Pairing of parents Panmictic
Crossover Single point crossover
Initial population Tabula rasa
Population size Static
Replacement & Crowding Steady state genetic algorithm
Expected learning iterations < 100,000
References
Adeli, H. and K.V. Balasubramanyam, "A Novel Approach to Expert Systems for Design of Large Structures", AI Magazine,
Vol. 9, No. 4, Winter 1988, pp. 54-63.
Ali, Hosam, "Optimization for Finite Element Applications", Mechanical Engineering, Vol. 116, No. 12, December 1994, pp.
68-70.
Ashley, Steven, "Engineous Explores the Design Space", Mechanical Engineering, February 1992, pp. 49-52.
Baffes, Paul and Lui Wang, "Mobile Transporter Path Planning Using a Genetic Algorithm Approach", SPIE’s Cambridge
Symposium on Advances in Intelligent Robotics Systems, 1988.
Beightler, C.S., D.T. Phillips and D.J. Wilde, Foundations of Optimization, Prentice-Hall, Englewood Cliffs, 1979.
Belegundu, Ashok D., "Optimizing the Shapes of Mechanical Components", Mechanical Engineering, January 1993, pp. 46-
48.
Bethke, A.D., Genetic Algorithms as Function Optimizers, Ph.D. Dissertation. University of Michigan, Dissertations
Abstracts International 41(9), 3503B, (University Microfilms No. 8106101), 1981.
Booker, Lashon B., Intelligent Behavior as an Adaptation to the Task Environment, Ph.D. Dissertation, University of
Michigan, 1982.
Booker, Lashon B., D.E. Goldberg, and J.H. Holland, "Classifier Systems and Genetic Algorithms", Artificial Intelligence,
Vol. 40, 1989, pp. 235-282.
Botkin, M.E., "Shape Optimization of Plate and Shell Structures", AIAA Journal, Vol. 20, No. 2, February 1982, pp. 268-273.
Botkin, M.E. and R. J. Yang, "Three-Dimensional Shape Optimization with Substructuring", AIAA Journal, March 1991, pp.
486-488.
Braibant, V., "Shape Sensitivity by Finite Elements", Journal of Structural Mechanics, 14(2), 1986, pp. 209-228.
Braibant, V. and C. Fleury, "Shape Optimal Design Using B-Spline", Computer Methods in Applied Mechanics and
Engineering, Vol. 44, 1984, pp. 247-267.
Callahan, Kelvin J., Strength-to-Weight and Stiffness-to-Weight Optimization of Laminates Using a Genetic Algorithm, M.S.
Thesis, Department of Aerospace Engineering, University of Alabama, Tuscaloosa, Alabama, 1991.
Chargin, Mladin K., Ingo Raasch, Ralph Bruns, and Dawson Deuermeyer. "General Shape Optimization Capability", Finite
Elements in Analysis and Design, Vol. 7, 1991, pp. 343-354.
Charniak, E. and D. McDermott, Introduction to Artificial Intelligence, Addison-Wesley Reading, MA, 1985.
Coyne, R.D., "Design Reasoning Without Explanations", AI Magazine, Vol. 11, No. 4, Winter 1990, pp. 72-80.
Darwin, Charles Robert, The Origin of Species by Means of Natural Selection, D. Appleton and Company, NY, 1897.
Deb, K., "Optimal Design of a Class of Welded Structures via Genetic Algorithm", AIAA-990-1179-CP, Proceedings of the
31st Structures, Structural Dynamics and Materials Conference, April 1990, pp. 444-453.
DeJong, Kenneth A., Analysis of the Behavior of a Class of Genetic Adaptive Systems, Ph.D. Dissertation (C.C.S.),
University of Michigan, 1975.
DeJong, Kenneth A., Using Genetic Algorithms to Learn Task Programs: the Pitt Approach", Machine Learning, 1988.
Dhingra, Anoop K., A Unified Approach to Multiple Objective Design of Engineering Systems, Ph.D. Dissertation, Purdue
University, Lafayette, IN, 1990.
Doolitle, D.P., Population Genetics: Basic Principles, Springer-Verlag, Berlin, 1986.
Dorf, R.C., Modern Control Systems, 3rd Edition, Addison-Wesley, Reading, MA., 1983.
Dorigo, Marco and Enrico Sirtori, "Alecsys: A Parallel Laboratory for Learning Classifier Systems", Proceedings of Fourth
International Conference on Genetic Algorithms - July 13-16, 1991 - San Diego - California, Morgan Kaufmann , San Mateo,
CA.
Dorigo, Marco and Uwe Schnepf, "Organisation of Robot Behaviour Through Genetic Learning Processes", Proceedings of
Fifth International Conference on Advanced Robotics - June 19-22,1991 - Pisa - Italy. IEEE.
Eastman, Charles M., "Recent Developments in Representation in the Science of Design", Proceedings of the Eighteenth
Association for Computing Machinery and Institute of Electronics and Electrical Engineers Design Automation Conference,
1981, Institute for Electronics and Electrical Engineers, Washington, D.C.
Fitzpatrick, J.M. and Grefenstette, J.J., "Genetic Algorithms in Noisy Environments", Machine Learning, 1988, pp. 101-120.
Fleury, C., "Shape Optimal Design by Convex Linearization Method", Optimum Shape, Automated Structural Design, 1986.
Freeman, L.M., K.K. Kumar, C.L. Karr, and D.L. Meredith, "Tuning Fuzzy Logic Controllers Using Genetic Algorithms:
Aerospace Applications", Sixth Conference on Aerospace Applications of Artificial Intelligence, Dayton SigArt American
Computing Machinery, Dayton, OH, October 1990.
Fulton, Steven L. and Charles O. Pepe, "An Introduction to Model-Based Reasoning", AI Expert, January 1990, pp. 48-55.
Gage, Peter, New Approaches to Optimization in Aerospace Conceptual Design, Ph.D. Dissertation, Department of
Aeronautics and Astronautics, Stanford University, 1994.
Gero, John, "Design Prototypes: A Knowledge Representation Schema for Design", AI Magazine, Vol. 11, No. 4, Winter
1990, pp. 26-36.
Glasgow, Barry and Elizabeth Graham, "Rapid Prototyping using Core Knowledge Bases", AI Expert, April 1988, pp. 54-63.
Goel, Vinod and Peter Pirollo, "Motivating the Notion of Generic", AI Magazine, Vol. 10, No. 1, Spring 1989, pp. 18-36.
Goldberg, David E., Computer-Aided Gas Pipeline Operation Using Genetic Algorithms and Rule Learning Ph.D.
Dissertation, University of Michigan, 1983.
Goldberg, David E., and M.P. Samanti. "Engineering Optimization via Genetic Algorithm", Proceedings of the Ninth
Conference on Electronic Computation, IL, 1987, pp. 471-482.
Goldberg, D.D., Genetic Algorithms in Search, Optimization & Machine Learning, Addison-Wesley, NY, 1989.
Goldberg, D.D., and M. P. Samtani, "Engineering Optimization via Genetic Algorithm", Electronic Computation, 1986, pp.
471-482.
Greene, David Perry, and Stephen F. Smith, "Using Coverage as a Model Building Constraint in Learning Classifier
Systems", Evolutionary Computation, Vol. 2, No. 1, Spring 1994, pp. 67-91.
Haftka, R.T., and R.V. Grandhi, "Structural Shape Optimization - A Survey", Computer Methods in Applied Mechanics and
Engineering, Elsevier Science Publishers B.V., North-Holland, 1986, pp. 91-106.
Harris, Larry R., "Hypothetical Reasoning", AI Expert, June 1989, pp. 56-59.
Holland, J.H. "Hierarchical Descriptions of Universal Spaces and Adaptive Systems", Technical report ora projects 01252
and 08226, University of Michigan, Ann Arbor, MI, 1968.
Holland, J.H., Adaptation in Natural and Artificial Systems, The University of Michigan Press, Ann Arbor, MI, 1975.
Holland, J.H., "Studies of the Spontaneous Emergence of Self-replicating Systems using Cellular Automata and Formal
Grammars", Lindenmayer, A. & G. Rozenberg (eds.), Automata, Languages, Development, North-Holland, NY, 1976, pp.
385-404.
Holland, J.H. and J.S. Reitman, "Cognitive Systems Based on Adaptive Algorithms", in D.A. Waterman and F. Hayes-Roth
(eds.), Pattern-Directed Inference Systems, Academic Press, NY, 1978.
Holland, John H., "Escaping Brittleness: The Possibilities of General-Purpose Learning Algorithms Applied to Parallel Rule-
Based Systems", Machine Learning: An Artificial Intelligence Approach, Volume II, Michalski, Ryszard S., Carbonell, Jamie
G., and Mitchell, Tom M. (eds.), Morgan Kaufman Publishers, Inc., Los Altos, CA, 1986.
Holland, John H., "Genetic Algorithms", Scientific American, July 1992, pp. 66-72.
Horn, Jeffrey, David E. Goldberg, and Kalyanmoy Deb, "Implicit Niching in a Learning Classifier System: Nature’s Way",
Evolutionary Computation, Vol. 2, No. 1, Spring 1994, pp. 37-66.
Hsu, Y.L, Zeroth Order Optimization Methods of Two Dimensional Shape Optimization, Ph.D. Dissertation, Department of
Mechanical Engineering , Stanford University, 1992.
Jensen, Eric Dean, Topological Structural Design Using Genetic Algorithms, Ph.D. Dissertation, Purdue University,
Lafayette, IN, 1992.
Jones, Jerald E. and Willian Turpin, "Developing an Expert System for Engineering", Mechanical Engineering, November
1986, pp. 10-16.
Karr, C.L., and D.E. Goldberg, "Genetic Algorithm Based Design of an Air-Injected Hydrocyclone", Control 90, Mineral
and Metallurgical Processing, 1990, pp. 265-272.
King, Everett Gordon Jr., Flow Vectoring of Supersonic Exhaust Nozzles Using a Genetic Algorithm to Define Optimally-
Shaped Contours, M.S. Thesis, Department of Aerospace Engineering, University of Alabama, Tuscaloosa, Alabama, 1991.
Kirkpatrick, S., C.D. Gelatt Jr. and M.P. Vecchi, "Optimization by Simulated Annealing", Science, Vol. 220, No. 4598, May
13, 1983, pp. 671-680.
Kling, R.M. and P. Banerjee, "Empirical and Theoretical Studies of the Simulated Evolution Method Applied to Standard
Cell Placement", IEEE Transactions on CAD, Vol. 10, No. 10, October 1991.
Kodiyalam, Srinivas, Virendra Kumar and Peter M. Finnigan, "Constructive Solid Geometry Approach to Three-Dimensional
Structural Shape Optimization", AIAA Journal, Vol. 30, No. 5, May 1992, pp. 1408-1415.
Kondratoff, Y. and R. Michalski (eds.), Machine Learning, Volume III, Chapter 21, Morgan Kaufmann, San Mateo, CA,
1990, pp. 611-638.
Kothawala, Kant S., Sharad V. Belsare, Mostafa Haririan and Juag K. Paeng, "Shaping Up: Optimization of Structural
Designs", Mechanical Engineering, March 1988, pp. 52-55.
Koza, John R., Genetic Programming: On the Programming of Computers by Means of Natural Selection, MIT Press,
Cambridge, MA, 1992.
Lange, Mary (ed.), Working Smarter: Designing with Engineering Equations, Working Ideas, Milford, Ohio: SDRC, No.3,
1994, pp.1-7.
Le Riche, R. and R.T. Haftka, "Optimization of Laminate Stacking Sequences for Buckling Load Maximization by Genetic
Algorithm", AIAA Journal, Vol. 31, No 5, pp. 951-956, 1993.
Mettler, Lawrence E., Thomas G. Gregg and Henry E. Schaffer, Population Genetics and Evolution, 2nd ed., Prentice Hall,
Englewood Cliffs, NJ, 1988.
Melloni, B.J., G.M. Eisner, and I. Dox, Melloni’s Illustrated Medical Dictionary, The Williams & Wilkins Company,
Baltimore, MD, 1979.
Minsky, Marvin L., "Steps Toward Artificial Intelligence", Computers and Thought, Feigenbaum, E.A. and Feldman, J.
(eds.), McGraw-Hill, New York, NY, 1963.
Noel, F., J.C. Leon and P. Trompette, "Shape Optimization of Three-dimensional Parts based on a Closed Loop between
Structure Analysis and Geometric Modeling", Engineering with Computers, Vol. 11, 1995, pp. 114-121.
Parodi, A. and P. Bonelli, "A New Approach to Fuzzy Classifier Systems", S. Forrest (ed.), Proceedings of the Fifth
International Conference on Genetic Algorithms, Morgan Kaufmann, San Mateo, CA, 1993, pp. 223-230.
Pike, Ralph W., Optimization for Engineering Systems, Van Nostrand Reinhold Company, New York, 1986.
Prabhakar, Vallury, A Knowledge-based Approach to Model Geometry Idealization for Finite Element Analysis, Ph.D.
Dissertation, Department of Mechanical Engineering, Stanford University, 1994.
Punch, William F., Ronald C. Averill, Erik D. Goodman, Shyh-Chang Lin, and Ying Ding, "Design using Genetic
Algorithms--Some Results for Composite Material Structures", IEEE Expert, (in press).
Reddy, Giridhar and Jonathan Cagan, "Improved Shape Annealing Method for Truss Topology Generation", Design Theory
and Methodology ‘94, The American Society of Mechanical Engineers, 1994.
Richards, Robert A., "An Efficient Algorithm for Annealing Schedules in Boltzmann Machines", Proceedings of the
International Joint Conference on Neural Networks, Lawrence Erlbaum Associates, 1990.
Richards, Robert A. and Sheri D. Sheppard, "Learning Classifier Systems in Design Optimization", Design Theory and
Methodology ‘92, The American Society of Mechanical Engineers, 1992.
Richards, Robert A., Macro Language & Program File QuickStart Guide, Tensor Laboratories, Stanford, CA 1994.
Riolo, Rick L., Empirical Studies of Default Hierarchies and Sequences of Rules in Learning Classifier Systems, Ph.D.
Dissertation, Computer Science and Engineering Department, University of Michigan, 1988.
Roark, Raymond J. and Warren C. Young, Formulas for Stress and Strain, Fifth Edition, McGraw-Hill Book Company, New
York, 1982.
Roberts, G.R. "Dynamic planning for Classifier Systems", S. Forrest (ed.), Proceedings of the Fifth International Conference
on Genetic Algorithms, Morgan Kaufmann, San Mateo, CA, 1993, pp. 231-237.
Robertson, George G. and Rick L. Riolo, "A Tale of Two Classifier Systems", Machine Learning, 1988.
Rumelhart, David E., and James McClelland, Parallel Distributed Processing: Explorations in the Microstructure of
Cognition, MIT Press, Cambridge, MA, 1986.
Samuel, A. L., "Some Studies in Machine Learning Using the Game of Checkers", IBM Journal of Research and
Development, 3, 1959, pp. 211-232.
Sandgren, E., E. Jensen and J.W. Welton, "Topological Design of Structural Components Using Genetic Optimization
Methods", Proceedings of the 1990 Winter Annual Meeting of the American Society of Mechanical Engineers, Dallas, TX,
1991, pp. 31-43.
Schmidt, L.A., "Structural Design by Symmetric Synthesis", Proceedings of the Second ASCE Conference on Electronic
Computation, Pittsburgh, PA, 1960, pp. 105-122.
Shigley, Joseph E, and Larry D. Mitchell. Mechanical Engineering Design, Fourth Edition, McGraw-Hill Book Company,
New York, 1983.
Sriram, Duvvuru, George Stephanolpoulos, Robert Logcher, David Gossard, Nicolas Groleau, David Serrano and Dundee
Navinchandra, "Knowledge-Based System Applications in Engineering Design: Research at MIT", AI Magazine, Vol. 10,
No. 3, Fall 1989, pp. 79-96.
Stolfo, S.J., "Is CAD/CAM Ready for AI?", Proceedings of the 1984 Pressure Vessels and Piping Conference and
Exhibition, San Antonio, Texas, June 17-21, 1984, ASME, NY.
Suzuki, K., and N. Kikuchi, "A Homogenization Method for Shape and Topology Optimization of a Linear Elastic
Structure", Computer Methods in Applied Mechanics and Engineering, 1991.
Takeda, Hideaki, Paul Veerkamp, Tetsuo Tomiyama, and Hiroyuki Yoshikawa "Modeling Design Processes", AI Magazine,
Vol. 11, No. 4, Winter 1990, pp. 37-48.
Timoshenko, S.P. and James M. Gere, Mechanics of Materials, Van Nostrand Reinhold Company, NY, 1972.
Valenzuela-Rendon, M., "The Fuzzy Classifier System: A Classifier System for Continuously Varying Variables", R. Belew
& L. Booker (eds.), Proceedings of the Fourth International Conference on Genetic Algorithms, Morgan Kaufmann, San
Mateo, CA, 1991, pp. 346-353.
Vanderplaats, Garret N, and Kenneth D. Blakely, "The Best and the Lightest", Mechanical Engineering, February 1989, pp.
56-62.
Waterman, D.A., A Guide to Expert Systems, Addison-Wesley Publishing Company, Reading, MA., 1986.
Whitley, D., "The GENITOR Algorithm and Selection Pressure: Why Rank-based Allocation of Reproductive Trials is Best",
J. Schaffer (eds.), Proceedings of the Third International Conference on Genetic Algorithms, Morgan Kaufmann, San Mateo,
CA, 1989, pp. 116-121.
Whitley, D., "An Executable Model of a Simple Genetic Algorithm", D. Whitley (ed.), Foundations of Genetic Algorithms II,
Morgan Kaufmann, San Mateo, CA, 1993, pp. 45-62.
Whitley, D., "A Genetic Algorithm Tutorial", Statistics and Computing, 4, 1994, pp. 65-85.
Widmann, James Michael, Structural Shape Optimization with Intrinsic Geometry and Adaptive Model Refinement, Ph.D.
Dissertation, Mechanical Engineering Department, Stanford University, 1994.
Wilson, Stewart W., "Classifier System Learning of a Boolean Function", Research Memo RIS No. 27r, The Rowland
Institute of Science, Cambridge MA, 1986.
Wilson, Stewart W., "ZCS: A Zeroth Level Classifier System", Evolutionary Computation, Vol. 2, No. 1, Spring 1994, pp. 1-
18.
Yang, Ching-Yu, and Patrick A. Fitzhorn, "A Functional Design Model for Shape Optimization", 1992, pp. 755-760.
Yang, R. J., "A Three-Dimensional Shape Optimization System -- SHOP3D", Computers & Structures, Vol. 31. No. 6, 1989,
pp. 881-890.
Zadeh, Lofti A., "Syllogistic Reasoning in Fuzzy Logic and its Application to Usuality and Reasoning with Dispositions",
IEEE Transactions on Systems, Man, and Cybernetics, Vol. SMC-15, No. 6, November/December 1985, pp. 745-763.
Zhao, Z., "Shape Design Sensitivity Analysis and Optimization Using the Boundary Element Method", Springer-Verlag,
Berlin, 1991.
Zienkiewicz, O. C., and J.S. Campbell, "Shape Optimization and Sequential Linear Programming", Gallagher, R.H. and
Zienkiewicz, O.C. (eds.), Optimal Structural Design, Wiley, NY, 1973.
Zienkiewicz, O. C., The Finite Element Method in Structural and Continuum Mechanics, McGraw Hill, NY, 1980, p. 8.