GMA
GMA or "The Go-Moku Apprentice" is a computerized go-moku player that learns playing the game entirely from its opponent. It was written for fun by Johan Walles (d92-jwa@nada.kth.se) in October 1998.
The goal of Go-Moku is to get five (or more) marks in a row (horisontally, vertically or diagonally). You get to put one mark each time it is your turn.
GMA currently becomes good after maybe twenty games or so (I haven't actually counted). It learns faster if you "train" it by taking its moves seriously than if you play just to whack it on the head.
To try it out, do the following from the gma directory:
$ ./configure
$ make install
$ gma-console
Note that I've only tried it on a Redhat Linux 5.2 system (Intel); if you have success on other configurations, do let me know!
GMA stores its knowledge in the (ASCII) file "~/gma-VERSION.data".
There's lots of room for improvments:
* It could be made much less user fiendish (like avoid crashing when
moves are made close to the board's border).
* A GUI front-end would be nice.
* Having it playing against Emacs' gomoku would be awesome!
* A PHP CGI frontend would be cool. This would require some extra work
for handling concurrent accesses to the knowledge database.
* Shold it really learn from itself if it wins?
Have fun! /Johan
