Abstract
Inductive Logic Programming (ILP) integrates the
techniques from traditional machine learning and logic
programming to construct logic programs from training
examples. Most existing systems employ greedy search
strategies which may trap the systems in a local
maxima. This paper describes a system, called the
Genetic Logic Programming System (GLPS), that uses
Genetic Algorithms (GA) to search for the best program.
This novel framework combines the learning power of GA
and knowledge representation power of logic programming
to overcome the shortcomings of existing paradigms.
A new method is used to represent a logic program as a
number of tree structures. This representation
facilitates the generation of initial logic programs
and other genetic operators. Four applications are used
to demonstrate the ability of this approach in inducing
various logic programs including the recursive
factorial program. Recursive programs are difficult to
learn in Genetic Programming (GP). This experiment
shows the advantage of Genetic Logic Programming (GLP)
over GP.
Only a few existing learning systems can handle noisy
training examples, by avoiding overfitting the training
examples. However, some important patterns will be
ignored. The performance of GLPS on learning from noisy
examples is evaluated on the chess endgame domain. A
systematic method is used to introduce different
amounts of noise into the training examples. A detailed
comparison with FOIL has been performed and the
performance of GLPS is significantly better than that
of FOIL by at least 5 percent at the 99.995 percent
confidence interval at all noise levels. The largest
difference even reaches 24 percent. This encouraging
result demonstrates the advantages of our approach over
existing ones.
Users
Please
log in to take part in the discussion (add own reviews or comments).