Inducing logic programs with genetic algorithms: the Genetic Logic Programming System

Man Leung Wong, Kwong Sak Leung
1995 IEEE Expert  
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
more » ... 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% at the 99.995% confidence interval at all noise levels. The largest difference even reaches 24%. This encouraging result demonstrates the advantages of our approach over existing ones.
doi:10.1109/64.464935 fatcat:k5ka55sfivcf3bfznderhu5l7a