Category Archives: Agents

As part of my ongoing agent training, I re-read the agent environment algorithm in Chapter 2 of AIMA (Russell and Norvig, 1995). The key challenge is how to convert an algorithm with repeat and for loops into viable Prolog code. At first inspection, the implementation is best suited for a language with control loops built into the programming language (e.g., LISP). My primary Prolog books [Bratko 1990] and [Sterling and Shapiro 1994] did not provide the required help. However, upon rereading Prolog Programming In Depth (Covington, Nute, and Vellino 1997), I was able to figure out how to write loops.

Read More »

In this progress report, I attended the ICAI 09 conference in Las Vegas (the IJCAI 2009 is located in Pasadena).  I presented my work on A Brute Force Approach to Solving the Knights Tour Using Prolog.  One thing that I learned is the participants are proud to share their work with others.  Another lesson is to make your presentation within the time allotted.  A few presenters did not finish their presentations in the 20 minutes time slot.  I rehearsed my presentation a few times to have the timing within 20 minutes.  I also learned that I need to get more training with MS Power Point.

I am also continue to view the video lectures from the Summer Schools in Logic and Learning from Video Lectures.  Thus, I have completed the Intelligent Agents video lectures by John Lloyd.  Read More »

Part VI of the AIMA book covers learning and various techniques on agents can learn.  The material covers Learning from Observations, Neural Networks, Reinforcement Learning, and Knowledge in Learning.  In the second edition, the chapter in Neural Networks is replaced with Statistical Learning Methods.

I read Chapter 18 of the AIMA book called Learning from Observations.  The Chapter focuses on decision trees and decision lists as some computational learning theory.  The main classification algorithm is the ID3 algorithm for classifying examples and generating decision trees.  The ID3 algorithm is based on Hunt’s Concept Learning System (CLS).  The ID3 algorithm uses information theory for obtaining the decision tree covering most the examples.  I have studied the ID3 algorithm quite extensively since the original application was to classify the winning position in the king and rook versus the king and knight endgame (Quinlan 1983).

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 »

The month began by reviewing my college Probability and Statistics book (Devore 1991).  I needed to review standard probability concepts mentioned in articles and the Stanford machine learning class.  For example, the article Learning with a Mixture of Trees (Meila and Jordan 2000) the authors explain the new algorithm by using Joint Probabilities and probabilistic mathematics to describe the algorithm – a similar used by Dr. Ng in his machine learning lectures.

Read More »

This week I downloaded the WISE software from University of Texas, Arlington (UTA). According to the build instructions it was developed using Java 1.3.0; however, that is not available and the latest is Java v1.6 u11. After installing the JDK in my Linux environment, I started to compile the program ran into 73 warnings and 1 one error. Two changes are to the dialog box show() and hide() functions; they were replaced by setVisible(true) and setVisible(false), respectively. There are other errors, but I am still reviewing them.