Archive for April 19th, 2007

Computer Go

April 19th, 2007

I found an utility online that wraps java apps with a Windows executable called Launch4j. I used it to make an executable for the Computer Go program I programmed for my AI (CS 486) project. I’m very interested to see how the program would fair against different people. Download the program using this direct link!

If you don’t know how to play go, here’s a website to get you started. The rules are very simple and it doesn’t take long to learn how to play. But it does take a while to get good at it.

My program does no tree searches at all, and has VERY limited pattern matching on the game board. When I say limited I mean less than 10 patterns exist in my program — compared to thousands in most go programs. As I mentioned previously, my program determines moves almost entirely using influence and evaluation functions. One thing I did use that help a lot is machine learning. For my demo I ran 30 simulations and had the computer try out different parameters for its evaluation function and pick out the best configuration it has encountered so far. When my prof played it it did manage to beat her, but it had some obvious flaws. After that I decided to run it an additional 100 times, and it made a HUGE difference. It’s still not super intelligent, but I do think it fairs pretty well. Of course, once you’ve played it for a few rounds you might notice some weaknesses that you can exploit… this is unavoidable in almost all AI game playing programs.