In this report, I focused on my presentation for the upcoming ICAI ‘09 conference in Las Vegas.  It has currently 18 slides.

I am also viewing the video lectures from the Summer Schools in Logic and Learning from Video Lectures dot Net.  Thus, I have completed the Introduction to Logic video lectures.

I was also reading Michalski’s article on A Theory and Methodology of Induction Learning. Basically it was an article describing the induction process and some the issues associated with induction such as descriptive language, background information, examples, generalization, and hypothesis space.  All this sounded familar when I was reading the two books on ILP.  Induction is a common theme with the two books.  Various familar algorithms are discussed amongst this material.  It appears there are no easy answers in the induction of rules from examples.

Read More »

Back in 1990, since my goal back then was to develop a chess playing computer algorithm using prolog, as part of my research, I stumbled into Max Bramer’s book Computer Game Playing: Theory and Practice.  In that book there was a chapter by Ivan Bratko called Knowledge-based problem-solving in AL3, which according to the book the article appeared in Machine Intelligence 10.  In summary the AL3 system was basically a production system for chess problem using the Donald Michie Advice Language concept and utilizing Bratko’s IF condition THEN action rule concept.  At that moment of time, many of the concepts presented in the paper were foreign to me, and unbeknownst to me, many of the ideas are presented in Bratko’s AI book (1990).

Read More »

This month I submitted my paper A Brute Force Approach to Solving the Knight’s Tour using Prolog to the ICAI ‘09 conference, located at the Monte Carlo in Las Vegas, Nevada.  According to the conference chair, the conference acceptance rate was 27 percent.  This conference is in conflict the IJCAI conference in Pasadena, California.

Nevertheless, besides my research paper, much of my activity this month has been around logic programming and inductive logic programming (ILP).  I ordered from Amazon several books recently around this area, in particular The Art of Prolog and Inductive Logic Programming: From Machine Learning to Software EngineeringThe Art of Prolog has a gentle introduction to logic programming – it is very clear and instructive.  From this book I was able to understand early articles in Logic Programming.

Read More »

Another progress report on my AI journey.

The month begins with my receiving Dr. Ivan Bratko’s Prolog book (2nd ed.).  I saw the Advice Language section that he used to developed AL0.  So I typed all the code example for AL0.  However, I discovered a run time execution error.  This probably due to the changes between true Edinburgh Prolog to ISO Prolog used by SWI Prolog compiler.  As a result, I went to a site containing the ISO Prolog standard.  I have found some interesting differences.  In addition, I have reviewed three other sources for Expert Systems – Luger, U. Nilsson, and AMZI.  Basically, these sources do not use IF condition THEN action approach of Dr. Bratko; instead they use the standard prolog syntax for the production/knowledge-based rules.

Read More »

I have noticed there has been many searches for the wumpus world problem.  The LISP version is located at the AIMA website.  The Prolog version by Professor Larry Holder is located at this URL, which is written for Quintus Prolog.  Both versions are based on the analysis by Stuart and Norvig’s book.

Once again, I am looking the knight’s tour problem again.  Upon a google search of the knight’s tour and prolog, I discovered there are other prolog implmentations (one solution was written in Turbo Prolog as well as a Common LISP implementation).  As of this time I only have downloaded copies of the other implementations, and I am not certain how efficient these implementations are.

One observation about this puzzle is the use of a heuristic and magic squares.  One approach is to implement a version with the warnsdorf heuristic.  The heuristic requires a look a head procedure to maximize the good squares.  I have little knowledge about this heuristic since it was published in 1823.  The second approach is to use the concept of magic squares to fine solutions quickly and efficiently.  This is useful; however, the implementation of these solutions into logic programming is the question as well as the Prolog implementation.

I am reading the book Logic, Programming and Prolog (2nd ed).  After completing the preliminaries chapter, much of the material was familiar since it was defining predicate calculus and logical inferences.  The material is mathematically rigorous by authors Ulf Nilsson and Jan Maluszynski.  They develop a series of definitions to build the language of predicate calculus and inference.  The familiarity was due to my studies from the material presented in Luger and Stubblefield (1992), and Stewart and Norvig (1995).

The authors continue with the SLD-Resolution along with Unification.  They illustrate a unification algorithm as well as proof trees.  Afterwards negation is discussed; thus  they develop the SLDNF-Resolution.  The cut and mathematics is covered.  If used improperly, cuts can make programs unsound and yield false answers.  All this tied into logic programming theory.  The theorems and propostions come from various resources.  The goal of the book is teach programmers on how to write logic programs that are sound, correct, and finite.

I found this book interesting thus far and good introduction to logic programming and prolog.

Machine Learning is a sub-field of Artificial Intelligence.  Within Machine Learning there are subtopics:

  • Supervised Learning
  • Semi-Supervised Learning
  • Unsupervised Learning
  • Explanation Based Learning
  • Decision Tree Learning
  • Data Classification and Rule Induction
  • Inductive Logic Programming
  • Reinforcement Learning
  • Artificial Neural Networks
  • Conceptual Learning and General-to-Specific Learning (Version Space)
  • Statistical and Bayesian Learning
  • Computational Learning Theory
  • Genetic Algorithms and Evolutionary Computing
  • Belief Networks – Bayesian and Markov (Computational Uncertainty).

And there are other subfields not listed.  Please note that Support Vector Machines (SVM) are a form of supervised learning developed from Computational Learning Theory.

I have added a new reference page to track my reference materials that I mention in my blogs. It is a work in progress.