Case-Initialized Genetic Algorithms for Knowledge Extraction and Incorporation Case-Initialized Genetic Algorithms
Judy Johnson
Sushil J. Louis
This paper investigates case-initialized genetic algorithms for
extracting knowledge from past problem solving to solve subsequent
problems. We develop a test problem class with similar solutions and
the genetic algorithm is run for randomly chosen problems from the
class. As the algorithm runs on a particular problem, solution
strings are stored in a case-base and on subsequent problems,
solutions from the case-base are used to initialize the population of
a genetic algorithm. We investigate the effect of selection strategy
and choice of appropriate cases for injection. Scaled roulette and
scaled elitist selection both show improvement over a randomly
initialized GA and elitist selection performs better than
roulette. Over
problems the case-initialized genetic algorithm
system shows a statistically significant decrease in the time taken to
the best solution and solutions are of higher fitness. Several
strategies for choosing cases from the case base for injection all
provide measurable improvement over random initialization.
Problems seldom exist in isolation. Any useful system must expect to
confront many related problems over its lifetime and we would like
such a system to be able to improve its performance with
experience. Such a learning system requires memory; a place for
storing past experiences to guide future operations. The storage area
may be distributed or localized, but a system without a memory is
forced to start from scratch in trying to solve every given problem.
Genetic algorithms (GAs) are randomized parallel search algorithms
that search from a population of points [6,4].
Current genetic algorithm based machine learning systems, such as
classifier systems, use rules to store past experience in order to
improve their performance over
time [6,4,18,8,5]. However,
many application areas are more suited to a case-based storage of past
experience [14,7,19,3].
We investigate a system that uses a case-base as a long term knowledge
store in a new genetic algorithm based machine learning
system. Constructing a well understood test problem, we investigate
the effect of selection strategy and algorithms to choose cases from
the case base for injection. Results on the test problem show that our
system, with experience, takes less time to solve new problems and
produces better quality solutions. To combat premature convergence due
to biasing the initial population we use linear scaling with both
roulette wheel and the CHC elitist selection strategy [2].
We show that scaled roulette and scaled elitist selection both show
improvement over a randomly initialized GA and elitist selection
performs better than roulette. Over
problems the case-initialized
genetic algorithm system shows a statistically significant decrease in
the time taken to the best solution and solutions are of higher
fitness. Several strategies for choosing cases from the case base for
injection all provide measurable improvement over random
initialization.
A computer program is said to learn from experience E with respect to some class of tasks T and performance measure P, if its performance at tasks in T, as measured by P, improves with experience E [13].
Although we cater to the definition of machine learning in Mitchell's book, unlike classifier systems and many other machine learning algorithms, we do not explicitly induce patterns (generalize) from experiencing data nor do we expect to obtain concept descriptions from exposure to exemplars, or to learn weights, or rules. Instead think of repeated searches using the system as exploring a domain, gleaning useful information about the domain, storing this in a long term memory, then retrieving and using this information to bias future searches in the domain. More specifically, we use cases to store domain information in a case-base, then retrieve a subset of these cases from the case-base and inject them into the genetic algorithm's population to bias future searches in the domain. Note that cases stored in long term memory may in fact implicitly embody a domain model. It must be pointed out that our system differs significantly from classifier systems [6]. One way that classifier systems differ is that they use rules to represent domain knowledge; our system uses cases.
Although we only consider using genetic algorithms and a case-base of past experience, we believe that our approach is not limited to either genetic algorithms or to case-based memory. We conjecture that properly combining a robust search algorithm with some implementation of an associative memory can result in a learning system that learns, with experience, to solve similar problems quickly. What we mean by similarity and how to identify similar problems and solutions will be discussed at length in subsequent sections.
A Genetic Algorithm (GA) is a randomized parallel search algorithm that searches from a population of points [6]. GAs provide an efficient tool for searching large poorly understood spaces, and have been applied successfully to many NP-hard problems [4]. The genetic algorithm works with a population of potential solutions encoded in some way, usually as bit strings. It proceeds by evaluating and modifying the strings using the genetic operators of selection, crossover, and mutation. The classical genetic algorithm begins with a random population of strings. Evaluation of each solution string is based on a fitness function that is problem dependent and this fitness function determines which of the individuals are better. The classical genetic algorithm uses roulette wheel selection, which is a probabilistic method of choosing the fittest individuals for mutation and crossover; the most fit strings will be chosen more often in direct correspondence to their relative fitness.
Crossover allows for information exchange between two strings. One point crossover is implemented by randomly choosing a crossover point in the selected strings and exchanging complementary substrings as shown in figure 1.
Selection according to fitness combined with crossover provides the main power behind the GA. The selection operator can cause the loss of genetic material, thus decreasing the exploration of the search space and causing premature convergence. Mutation guards against this loss of genetic material by periodically, with low probability, flipping a bit position in the string [4].Although GAs work well for finding solutions to large, poorly understood problems, they don't learn from previous problem solving attempts and their performance with each new attempt remains the same. We often apply GAs in poorly understood domains, thus, it is desirable to learn from previous attempts and be able to store the knowledge gained from them.
The idea is that systems in an application setting expect to confront similar problems. When using a genetic algorithm based system the process of running the GA extracts and uses knowledge of the search space in converging to a solution. When members of the population are stored in a case-base this knowledge of the search space for the solved problems is available for future problem solving attempts. Our premise in this paper is that this knowledge can be extracted and stored in a memory or case-base and used to initialize the population of the GA to solve the new problem. The GA will be given a head start in finding a solution, since it can make use of information previously gleaned by running the GA on the earlier problem. If the solutions to these problems are similar, seeding a genetic algorithm with the solutions to previously solved problems should produce better results in a shorter period of time, thus improving the efficiency of the GA.
In this paper, a case is a member of the population (a candidate solution) together with other information including its fitness and the timestep at which this case was generated [12]. During GA search, we periodically store the best individual in the population to the case-base.
Our GA starts with no case-base and saves cases to memory as it solves
more problems. Finding cases to store causes no difficulty. A GA with
a population of
running for
generations creates
possible cases for the case-base. Choosing which of these potential
cases to save poses a greater problem. Our CBR-GA system uses the
stored cases to initialize it's population when a new problem is
attempted. Cases are chosen for injection based on an index of
similarity between the new problem and the problems stored in the
case-base. As the GA proceeds, these solutions are changed by the GA
operators of crossover and mutation to adapt to become solutions to
the new problem.
The schema theorem of genetic algorithms says that short, low order, above-average schemata are given exponentially increasing trials in subsequent generations. These schemata are sampled, recombined, and sampled again to form potentially higher fitness strings; they become building blocks to form strings with higher fitness [4]. We hope that, by storing solutions to similar problems in a case-base, we will be storing building blocks common to solutions to our new problems. When we inject these stored solutions into our initial population for the new problem, we will already have some of the schemata that are needed to build the solution we want.
Early work in this field was done by Ramsey and Grefenstette [15]. They used a case-base to initialize populations for a GA finding the best strategies in a tracker/target simulation with a periodically changing environment. Solution strategies for similar environments were used to initialize the population each time the environment changed. Improvements in results with the case-base were observed both when compared to the GA running with no knowledge of the change in environment and when the GA was restarted when the environment was altered.
Louis, McGraw [12] and Wyckoff used a similar approach to explain the process of generating solutions using a genetic algorithm. Their approach was more concerned with using the case-base to gather information about the development of the solutions over the intermediate generations of the genetic algorithm. This study also had initial promising results from seeding their populations with promising schema generated early in the GA run and later lost [12]. Later work by Louis dealt with the open-shop scheduling problem and with circuit design. The thrust of this work involved research into selecting appropriate cases to inject and the number of cases to use in seeding the population. Again, results were promising, with better solutions being found in a shorter time period [9] and [20].
Work in using solution similarity metrics for choosing cases to inject shows that solution similarity metrics work well for improving performance [10,11] with experience. This paper investigates the properties of case-initialization for problem sets for which a problem similarity metric exists and studies injection of appropriate cases into the initial population of a genetic algorithm.
In section 2 we look at two selection algorithms, roulette and a modified version of CHC or elitist selection to test the feasibility of our system and to choose a selection operator. In this section we study only one limited set of problems, and we index based on a simple linear problem distance calculation. Section 3 looks at an expanded version of the problem set from section two, using only an elitist selection strategy. We examined the time taken to find the best solutions as the system solves more problems to test how well our system learns. Section 4 discusses different methods of indexing to choose solutions for injection from the case-base. We studied the effect of changing the problem distance calculation from linear to quadratic, exponential, random, and misleading which adds a random integer to the linear problem distance for a specified proportion of the problems in the case-base. We also looked at a hamming distance based method of choosing solutions. This allows us to draw some conclusions about how well our system will work with other sets of problems where the similarity of solutions may not be strictly linear or may be unknown. Section 5 contains our conclusions and some suggestions for future work.
We considered several problems before choosing a variation of One-Max. One-Max is the problem of maximizing the number of ones in a string consisting of ones and zeros [1]. One variation we looked at was the set of problems consisting of counting the number of ones in a binary string. The number of possible problems in the class is the length of the string plus one. Some examples of possible problems and solutions are shown in table 1.
|
This set of problems fulfilled properties
and
but, as can be
seen in table 1 solutions to problems which are close
(in problem space) are not necessarily close to each other (in
solution space). Even for the same problem, it is possible to have two
widely different solution strings. For example, the strings
1001111000 0110000111
both solve problem number
but the the two strings don't share any bit
positions; they are complements.
The other set of problems we looked at was the set of problems consisting of a
string of ones followed by a string of zeros. Here the number of possible
problems in the class is also the length of the string plus one. If the
string length is ten, there are eleven possible problems
whose solutions are shown in table 2.1. This set is a subset of
the previous, unordered set of problems.
We first tested our system on the SOM problem set with the usual
roulette selection operator and one point crossover described in Section 1 to
try out the case-base with the classical GA. The GA was run for
generations. In the initial run there is no case-base and it is built as more
problems are solved.
The best solution from the population is saved at regularly chosen intervals
of
generations. The best string found over all generations was also
saved; thus six solutions were saved to the case-base.
As more problems are solved, the case-base grows and solutions to more
problems are available. The GA is able to take advantage of the information
saved in the case-base in solving subsequent problems.
The GA was first run using a scaled roulette selection scheme. Scaling
was used to prevent premature convergence with a scaling factor of
.
String length was set to
and
we used a population size of
. This provided for
possible problems
in the class. For this initial test of our system, we restricted the problem
set to the problems between
and
or eleven possible problems. The GA
was run for
problems with the
possibility that the same problem could be attempted by the GA more than once.
Probability of crossover was set to
, probability of
mutation was
and the percent of the population initialized
from the case-base was
%, with the first run always randomly
initialized since the case-base did not contain any stored solutions.
Choosing the correct cases to inject is an important parameter. Liu found the following general trends in case selection [9].
The solutions to problems that are distance one apart
have solutions that are one bit different using the SOM
problem set, therefore we initially attempted to use only mutation with a
probability of crossover of
. The expectation was that mutation would
change the one bit and thus find a solution. This had poor
results. When probability of mutation is .01, one bit in each
string will be changed in each generation. The probability
of changing the wrong bit and decreasing the fitness of the
seeded string is
%. In the next generation, the number of bits
that need to be changed to arrive at the solution is
with
%
probability that the wrong bits are changed. With each succeeding generation,
the number of incorrectly placed bits increases and the probability of
finding the correct solution using only mutation decreases.
We believe that using the crossover operator is the correct approach. Solutions to similar problems contain schemata which are building blocks for the solution to the new problem. The building block hypothesis says that short, low-order, highly fit schemata are recombined to form strings of potentially higher fitness (Goldberg, 1989). The premise here is that our seeded individuals will become the building blocks for solutions to the new problems.
Using the above parameters, average fitness, is approximately the
same with and without the Case Initialized Genetic AlgoRithm (CIGAR) in the
early generations
and displays a gradual increase in fitness (Figure 2 left).
The run of
problems using CIGAR shows a higher average fitness and
maintains a fairly stable advantage over the unseeded run but does not show
a great improvement in fitness.
Maximum fitness, shown in Figure 2 (right), displays a
different behavior. Initial generations have much higher maximum
fitness with CIGAR than without and then dip to lower fitness before
climbing again, though fitness never drops below the random GA. This
dip can be explained by the nature of the initialized cases. The
strings are close to the correct solution and are made up of schemata
of long defining length and high order. These schemata appear in the
early generations when the population has not converged. Therefore,
the probability that the schemata will be disrupted is high. This
accounts for the dip in fitness displayed in Figure 2
(right). Maximum fitness increases after this dip as the schemata of
shorter length are recombined to find better solutions of longer
length. In later generations, the maximum fitness for the unseeded run
approaches that of the seeded run but does not overtake it.
Roulette selection did not offer a large improvement for the
case-base over random initialization. We tried an elitist selection
scheme next, attempting to see a greater improvement in performance than we
achieved with the classical GA. We used a modified version of CHC selection
[2] where,
if N is the population size, the best N individuals in the combined pool of
parents and offspring make up the next generation.
Elitist selection emphasizes exploitation over exploration; therefore, to
increase exploration we increased the probability
of crossover to
% and probability of mutation to
%. The GA was
run for
generations with population size of
and string
length of
. Maintaining the number of cases saved to the case-base,
we stored the best solution every
th generation
instead of every
th generation plus we also stored the best overall
solution.
The average fitness with this type of selection was higher with seeded individuals than without. Elitist selection got better results in less time with this problem than roulette selection either with or without CIGAR. Initializing the population from the case-base, average fitness starts out approximately the same as random initialization, but it takes a sharp upward curve as shown in Figure 3 (left).
Figure 4 shows that elitist selection generates higher maximum and higher average fitness than roulette selection when both are used with case-based injection. The average fitness for elitist selection is higher than the maximum fitness for roulette selection after the initial generations. There is an even larger disparity in the maximum fitness of the solutions found with elitist selection over the maximum fitness found using roulette.
Further comparing roulette selection with elitist, we looked at the maximum fitness in the zero generation. We saw that the beginning maximum fitnesses for both types of selection rose as more problems were solved. Elitist selection showed consistently higher maximum fitnesses with each problem solved, while roulette selection displayed beginning maximum fitnesses that varied more. With an elitist selection method, the best strings are not lost over generations. This guarantees that the best strings will be saved to the case-base and used to initialize new populations for the GA. and accounts for the sharp increase in the initial maximum fitness manifested in Figure 5 (left) using elitist selection.
Roulette selection can and often does lose the best individuals over generations, thus, the cases saved are more varied than with elitist selection. Even though the absolute best string is saved to the case-base, other strings with high fitness may be lost if they do not appear in the generations in which solutions are stored. This accounts for the larger variance in fitness among the seeded individuals (Figure 5 left).The maximum fitnesses at the last generation of each GA run were also higher with seeded populations than with random populations. This result was consistently true with elitist selection, with the maximum fitness increasing steadily as more problems were solved. The solution was found for the last two problems when the population was seeded from the case-base (Figure 5 right). Elitist selection had higher maximum fitness at the final generation with or without CIGAR than roulette selection was able to find. The ending maximum fitness for roulette selection was higher for seeded populations in all but two cases, one of which was the second problem to be solved, when the case-base contained the fewest cases available for injection. Maximum fitness did not rise as consistently as more problems were solved as it did with elitist selection, but it was higher in most cases with seeding than without (Figure 5 right).
The hamming distance between two strings is the number of bit positions
which are different from one string to the other. The average hamming distance
of the population is the average of the hamming distance between each pair of
strings in the population. As more cases are input to the case-base,
we expected the average hamming distance between strings in the case-base to
decrease. With each problem attempted, the GA generates higher fitness
solutions to be stored to the case-base. High fitness solutions
are strings that have a block of ones followed by a block of zeros.
These strings are close to each other in hamming distance, therefore, as
the case-base stores more of these high fitness strings, the average hamming
distance within the case-base decreases. The injected strings
become more alike, since the case-base has converged upon similar strings,
thus, the initial population hamming distance is
expected to decrease. Assuming the hamming distance between the
seeded individuals approaches zero, the population hamming
distance should approach:
Both roulette and elitist selection had lower hamming distance in the first
generation for seeded populations than random populations.
Elitist selection displayed decreasing hamming distance as more
problems were solved. Random initialization had an
initial hamming distance of approximately
for both types of selection.
This is the expected value of
for a random
population (Figure 6 left).
The ending hamming distances are also lower with seeded populations for both types of selection with elitist again being lower than roulette selection. By the last generations of the GA run the population has converged more with CIGAR than without. (Figure 6 right).
We also studied the performance of the descendants of seeded individuals.
Table 3 shows the percentage of the population descended from
injected individuals in the last generation divided into segments of the
population based on fitness. For all segments of the population, more than
% of its members are descendants of injected individuals. This indicates
that the injected strings were of higher fitness than random strings and
thus reproduced more often. Once again elitist selection performed better than
roulette. When we looked at the strings that composed
the top 10% of the population in terms of fitness, almost half were
descendants of seeded individuals as compared to 17% descendants using
roulette selection.
|
Figure 7 (left) shows the number of generations taken
to find the best solution, plotted on the y-axis, for each problem
attempt, plotted on the x-axis. Using injected cases, we see a
decrease in the number of generations taken to arrive at the best
solution. Without injected cases the time taken to the best solution
remains approximately constant. By the time approximately
of the
problems have been attempted, there is a statistically significant
decrease in the time take to solve a new problem.
When we look at the quality of solutions generated, it can be seen in Figure 7 (right) that the best fitness found with injected cases is higher than without. The maximum fitness found is fairly constant without injection. Using CIGAR the maximum fitness increases sharply as more problems are solved.
We next ran the GA for
problems using the same set of problems in the same
order for both
the case-based initialized GA and the random GA and for each of the
runs of the GA. It was still possible to repeat a problem during any of the
runs. Once again, the time taken to the best solution
was shorter with our case-base injection than without (Figure 8 left). The best fitness found was also better with the injected
cases than without (Figure 8 right).
Looking at the set of
problems where each problem is only attempted once
and the same problems are evaluated in the same order in each of the
runs,
we get similar results again. Time taken to best
solution is shorter (Figure 9 left) and best fitness found is
higher (Figure 9 right). In this case the quality of the solutions
found using CIGAR was approximately the same as when repetition
of problems was allowed. The time taken to the best solutions was slightly
longer on average without repetition than when repetition was allowed, but
once again there was a statistically significant decrease in time to best
solution once approximately
of the problems were solved.
These are the results we want from a learning system; the system improves with experience, taking less time to arrive at better solutions. Our system conforms to our earlier definition of a learning system as one in which an improvement in information processing ability results from it's information processing activity.
We tested our system on the unordered One-Max problem class, described in
section
. The first thing we noted was that this
problem was much easier for the GA alone to solve. To make the
problem harder for the GA, we used the problem ranges
to
and
to
. The same problems were
solved by the case-base initialized and the random GA in each of the
runs,
with the possibility of repeated problems.
Looking at figure 10 it is clear that, while the best solutions
are found more quickly with cases injected than without, the difference in time
to best solution is not as dramatic as with the earlier problem. This can be
explained by the nature of the new problem. The indexing scheme outlined
earlier chooses solution strings to inject based on the distance between the
problem to be solved and the problems stored in the case-base. For the SOM
problem set, a small problem distance implies a small hamming distance between
solution strings. Injecting strings with this small hamming distance to the
solution
string provides the GA with building blocks to a solution for the new problem.
In the new set of problems, a low problem distance does not imply small hamming
distance to the solution that the GA ultimately finds. The strings
1001111000 0110000111
both solve problem number 5 but the hamming distance between them is 10; as
far apart as possible. The injected cases do not provide as
much improvement in performance for this problem, because of this
difference in the solution strings.
Our system does generate better results in less time using the SOM set of problems. Real world problems, however, don't usually have the properties of this problem set that allowed us to use a linear problem distance indexing scheme. To test our system on other types of problem distances we changed the method we used to choose cases for injection.
The linear indexing method that we had been using was based on a
probabalistic or roulette type selection. We next tested simply
choosing solutions that solved problems in the case-base that were
closest in distance to the new problem. We sorted the cases based on
their distance to the new problem. Again, distance was measured as
where
is a problem
stored in the case-base. The best solution from each of the closest
problems in the case-base was chosen regardless of the problem
distance. This is different from the previous indexing method, where
the cases chosen for injection were selected from generations in
inverse proportion to the problem distance. Again both methods
outperform random initialization, with neither one clearly
outperforming the other with respect to the time taken
(Figure 11 left).
refers to the indexed method of
choosing cases and
corresponds to choosing the
best solutions to the closest available problems. Take best
initialization also produces higher fitness solutions than random,
getting similar results to the linearly initialized GA
(Figure 11 (right). This similarity to the indexed type of
initialization seems to contradict earlier work that got better
results by using lower fitness cases when problem distance is high and
higher fitness cases when problem distance is low. Take best
initialization simply takes the best solution to the closest problems
in the case-base. It is possible that the case-base contained problems
close enough to the new problem that taking the best solution did not
cause premature convergence.
We studied the cases where the distance was not linear next. First we looked
at a randomized case, where the problems were randomly inserted into an
array and the array indices were used to calculate problem distance.
Distance was calculated as
As can be seen from Figure 12 (left) the linear array arrived at the best fitness faster than the random array based injection, but, the random injection still reaches it's best fitness faster than a purely random initialization. Figure 12 (right) shows the best fitness found is higher with a linear distance calculation than with random distance, but both are better than a purely random initialization. This is the expected behavior, since using the random array to choose cases for injection creates a situation where cases are chosen randomly with no respect to problem distance. We expect that using the true measure of problem distance to choose cases for injection will result in selecting more appropriate cases than a system which merely chooses them at random. The random case injection still has better performance than random initialization because, even though the cases injected are randomly chosen, they are still solutions to a problem which requires a block of ones in a row and then a block of zeros. These blocks of ones and zeros become building blocks to solutions for problems which require similar blocks of ones and zeros, therefore they help the GA to find a solution faster than a random population.
Quadratic and exponential problem distances were studied by creating
functions which returned the
and
. For this test, we used a population of
and ran the GA
for
generations. In Figure 13 (left) it can be seen
that the quadratic distance gets to it's best fitness in the least
time, with linear indexing producing similar results Exponential
distances get poor improvement in the time to best solution, producing
similar results to random initialization.
Looking at Figure 13 (right), both linear and quadratic indexing achieve similar best fitnesses with exponential indexing generating lower fitness solutions. Changing the distance function to a quadratic rather than a linear function, places more emphasis on choosing cases from those problems in the case-base that are close to the new problem. This additional emphasis helps with this problem set, and similar results are achieved in less time than with a linear distance function. However, when we increase this emphasis on closeness even more by using an exponential distance function, we decrease the fitness of the solutions we generate and increase the time taken to arrive at those solutions. For this problem, exponential distances place too much emphasis on the cases closer to the new problem, causing too much exploitation and not enough exploration.
Misleading problem distances were tested by adding a randomly chosen number
between
and
to the actual problem distance. This was studied for a
,
or
% probability of adding the random factor. With respect to
the time taken to the best solution, basing injection on a misleading
distance calculation produced results similar to linear distance injection.
There was a downward trend in the time taken as more problems were solved
When we looked at the best fitness found, the misleading distances generated
better fitness solutions than both the random initialization and the strictly
linear distance indexing. The different probabilities did not make a great
difference in results. Figure 14 shows random initialization,
linear injection and misleading injection with a probability of
%. In this
figure
is linear indexing injection,
is misleading injection
with
% of the problem distances being misleading and
is the
randomly
initialized GA. Here again we see a tradeoff between exploration and
exploitation. The linear injection is able to exploit the closeness of the
injected solutions to the new problem solution and arrive at the best fitness
in less time than the GA using the misleading injection technique.
Misleading injection, however, was able to achieve better fitness solutions
because of increased exploration of the search space.
We proposed and evaluated a new technique for combining genetic algorithms with case-based reasoning for learning from experience. In our system, while a genetic algorithm is solving a problem, the system saves members of the population to a case-base. Simultaneously, appropriate cases from previously solved problems in the case-base are injected into the initial population of the genetic algorithm. This paper investigated the properties of our case-initialized genetic algorithm and showed that the combined system learns to improve performance with experience.
The results show an elitist selection strategy getting better performance than the classical roulette strategy. Both maximum and average fitness increased as the case-base grows and individuals are injected into the population. Hamming distances decrease as the population of the case-base converges more tightly around better solutions. Descendants of seeded individuals make up a large proportion of the best individuals in the population with an elitist selection strategy and injected individuals tend to survive and multiply at high rates. This result is not as pronounced with roulette selection, but the descendants of seeded individuals still make up a greater percentage of the population than their original 5% share.
The time taken to find the best solution decreases as more problems are solved and more solutions are saved to the case-base. Better performance is achieved when problems are allowed to repeat, but improvement is statistically significant with and without repetition.
Changing the means of choosing cases still provides measurable improvement in performance. Even a random or misleading selection of cases to inject produces improvement over the randomly initialized GA run. This seems to indicate that using a case-base will improve performance even among problems where the similarities in solutions are not clearly understood and an indexing measure is not readily apparent. Our current work in using this technique on a more significant set of problems than SOM considers variations of this technique and shows wide applicability on real world problems [10,11]. We believe that this fairly straightforward addition to a genetic algorithm can pay dividends in many industrial settings.
Much work remains to be done. The effect of different recombination operators was not considered in this paper. Also, individuals can be injected into the population at generations other than the initial generation. This may be effective when using a roulette wheel selection strategy. Injecting individuals into later generations when the population has had time to converge may prevent some of the loss in fitness observed when cases are injected into the initial population. Later injection of individuals may also improve performance using the hamming distance method of selecting cases for injection. Selecting cases that are close to the best individual in a later generation should inject strings that are closer to the solution of the problem than the strings that we selected based on their nearness to the best individual in generation zero.
This document was generated using the LaTeX2HTML translator Version 2002-2-1 (1.71)
Copyright © 1993, 1994, 1995, 1996,
Nikos Drakos,
Computer Based Learning Unit, University of Leeds.
Copyright © 1997, 1998, 1999,
Ross Moore,
Mathematics Department, Macquarie University, Sydney.
The command line arguments were:
latex2html -split 1 chapter
The translation was initiated by Sushil Louis on 2005-01-06