Monthly Archives: July 2008

Today the GECCO 2008 conference starts. Although I personally not at the conference, considering that I found out about last week from the SIGEVO web site, I would like to be there in Atlanta meeting with the leaders in the field. I am interesting in viewing the papers selected for the conference since there was a 44 percent acceptance rate overall as well as the Humies awards for 2008.

Since I started reading A Field Guide to Genetic Programming, I discovered that work has been done in the area of Chess and genetic programming. In addition to my previous blog entry discussing GP-Chess, Dr. Ami Hauptman and Dr. Moshe Sipper continue their work in their paper Evolution of an efficient search algorithm for the mate-in-N problem in chess. They continued their work and improved the search efficiency via GP in solving mate-in-N problems. The improvements were very significant since they used Crafty as the baseline measure. I include their results:

Mate-in 1 2 3 4 5
CRAFTY 600 7K 50K 138K 1.6M
Evolved 600 2k 28k 55K 850k

The work is a significant improvement over the previous 40 years of chess research.

What does this mean for me? There is plenty of areas of chess yet to investigate.

In this entry I am describing how I installed ECJ in my RedHat Linux environment, which is running virtual VMware session.

Downloading ECJ
Go to ECJ Website.
Get the ecj.tar.gz file and place in the ~/src directory.
Also, download the GUI libraries and place them in the ~/src directory.

Setting up
Create the java directory from the home directory.
Change directory into the java directory.
Extract ECJ via the tar zxf ~/src/ecj.tar.gz.
Change directory into ecj.
Extract the GUI library via unzip ~/src/libraries.zip.

Preparing for SUN Java
Remove the GCJ and GNU java packages.
Go to SUN Java Website and request java v1.6u6 for the Linux platform.
Download the self extracting file into ~/src directory.
Run the self extract file as root from the ~/src directory.

Building ECJ
Change directory to ~/java/ecj.
Edit the Makefile.
Remove the options for java 1.3 in JAVAFLAGS.
Save file.
Run make. This make ECJ.

I was able to reproduce these steps very easily in my second VMware RH Linux system. From here I was able to perform the first two tutorials.

SUN and Java are registered trademarks from SUN Microsystems. RedHat Linux is registered trademark for RedHat. VWware Virtualization is a registered trademark of VMware. The ECJ Genetic Programming platform is freely available under the Academic Free v3.0.

In the past two weeks I have downloaded the AIMA source code. After you extract the AIMA code, you need to edit the aima.lisp file and change the base directory to the source tree. Read the README.html file in the doc directory. Basically, after you compile the lisp code, you start the CMUCL lisp interpreter and run the as follows:

* (load "aima.lisp) (Press 0 for each error encountered).* (aima-load 'search)* (run-game (make-ttt-game) :agents '(human-game-agent alpha-beta-ttt-agent))

That should start a game of tic-tac-toe. There are other games as well too. My next challenge is to create an interface for Peter Norvig’s Othello game using the AIMA layout.