Thursday, June 24, 2010

An update on current status

Nakshatra has been doing well on FICS. The current version is v0.4. It has few bug fixes and minor improvements over v0.3, though no measurable improvement in playing strength. v0.4 has been on and off playing on FICS for the past 3-4 months and its rating is hovering around 2300.

Nakshatra's finger:

ratingRDwinlossdrawtotalbest
Suicide230731.7299291211740212376 (24-May-2010)

Noticeably, nakshatra has crossed 4000 games with nearly 75% wins!



Sunday, February 7, 2010

v0.3 crosses 2300!

Nakshatra achieved yet another milestone by crossing 2300 rating points on FICS today! v0.3 had some major improvements over v0.2, the most important ones being the replacement of AlphaBeta with NegaScout algorithm for search, revamp of transposition table for better utilization of available space and some nasty tree pruning bug fixes. Cumulatively, these improvements led to an average of 100+ rating points improvement. The best part is that Nak managed to defeat two of the best active suicide engines on FICS - stayalive (2500+) and Plnik (2400+) in at least a couple of matches!

My goal now is to make Nakshatra the strongest suicide engine on FICS. Currently it is at #3 among the active suicide engines and probably much lower ranked if we take into consideration the inactive ones. Going further, Nakshatra will definitely require a bigger opening book (as I found that despite Nak's strength, it does play some losing opening lines occasionally!) and possibly an EGTB. Even the evaluation heuristics are in dire need of my attention as the one in v0.3 is almost the same as the one in v0.0! But testing changes in evaluation is rather tedious! I have also been experimenting with some new algorithms like forced line search; and though I am excited about this, I am not yet convinced that it could lead to a measurable improvement in the strength of the engine.

Friday, January 22, 2010

Nakshatra crosses 2200 briefly

Yesterday, v0.2 crossed 2200 briefly. It achieved a best of 2216 before it started plummeting down, thanks to many humans who managed to drag it into end games where it is known to perform poorly. At the moment, it is at 2120.

Wednesday, January 20, 2010

Nakshatra rating on FICS

www.ficsgames.com tracks the games played on FICS. Currently Nakshatra is doing quite well. The below image depicts rating variation over the last 1000 games played by Nakshatra. More stats can be seen here.



The latest rise above 2100 level is a milestone achieved by my latest v0.2 which contained a lot of performance improvements over previous versions. There are a lot more improvements to be done. Some very popular methods such as end game table bases, a big opening book, etc can easily push the rating above 2300 I believe.

How it began

I play Chess as well as a variant game called Antichess on the Free Internet Chess Server (FICS) quite frequently. Along with humans, there are quite a few engines which play on FICS. Ever since I started playing there in 2006, I was amused by these engines and sometimes fantasized of pitching my own against these other engines as well as human players. But I never got around to working on one for a very long time...

In May 2009, things changed. I do not know what exactly initiated me but it could have just been a way to kill boredom. I started reading some stuff on the web and one fine day decided to begin coding my own Antichess engine from scratch. In particular, I chose Antichess because I loved this variant and also it seemed there were too many normal Chess playing engines out there. The initial development took quite some time as I worked on it during weekends very sparsely over the next few months. Finally in September/October, the last remaining nuts and bolts were fixed into place and a very basic program that could barely play by the rules of the game emerged.

For the next month or so, I had to push myself harder to get it to play some decent antichess, something that could beat me often enough. This required addition of many optimization techniques, refinement of existing algos and of course, tonnes of bug fixes. Subsequently, I named my engine Nakshatra (meaning Star in Sanskrit). Around same time, I started working on extending the engine to play even Chess. But more importantly, I hooked Nakshatra v0.0 to FICS and got it playing against other engines and humans! Though I expected the engine's rating to go up to 1900, to my surprise it even surpassed 2000 after few days of play and drifted in the range of 1900-2050.

Now, after two major improvements, Nakshatra v0.2 has attained a top rating of 2140 and playing much stronger than ever before. In this blog, I will be posting about Nakshatra's progress as well as things I have learned over the past few months in relation to Chess, Chess engines, Chess programming and much more. Keep watching this space for some fun stuff.