IntroductionAbout 15 years after my first attempt to write a computer chess program on my first computer, an Atari ST, I finally wrote my very own chess program! Unfortunately, I had to give up on it again, since it was taking too much of my time.
My program is called Muse and sometimes it plays on ICC - check out it's
finger notes to see how it's doing.
Muse is written in C, is built around bitboards and is about 13'000 lines of code.
I wrote the first version of Muse in July 2003, and since then I've been busy with the things chess programmers are
busy with: adding knowledge to the evaluation, eliminating bugs, optimizing the code for speed, and so on.
Muse supports both UCI and winboard protocols. However,
it has made some progress and is now a decent amateur engine - clearly weaker than the top amateurs, but quite competitive compared
to the average amateur out there.
Muse is optimized for clarity, not for speed. I am not using any clever tricks to make it fast, and I hope I can resist the temptation of speeding it up at the cost of complexity and readability. The current version of Muse (0.899) does most of the usual stuff:
- Alpha-Beta scout-style search with transposition tables
- Quiescence search with SEE (static exchange evaluator)
- Check and recapture extensions
- Move ordering with killer and history moves
- Adaptive null-move pruning
- Pawn hashing
- Opening Book (Courtesy of Berniman, author of Chesspresso) - thanks!
- More knowledge in the evaluation - a never-ending topic
- The laws of chess (at the moment, 50-move-rule, and 3-fold repetition are not supported)
- Endgame tablebase access
- ....and much more!
Download and Installation
- Download the Muse 0.899b engine and .ini file as a zipfile(117 KB).
- Download a small opening book as zipfile (575 KB).
Muse.iniThere are only a few options you can set in muse.ini. These are:
- hash X -- sets the hashtable size to X MB.
- resign 0/1 -- allows Muse to resign (1) or not (0)
- book 0/1 -- will make Muse use the book (1) or not (0)
- ponder 0/1 -- will allow Muse to ponder or not, only works under UCI for now!
- easymove 0/1 -- will allow Muse to play "easy" moves faster than normal moves
Test ResultsI used to test Muse with the help of Arena and Winboard, free GUIs for chess engines. With Arena, I have it play tournaments with other engines, and solve test suites; mostly ECM98. With Winboard, I have Muse play on ICC.
- Muse 0.821 in ECM98: 495/770 solved at 5s/move on a 1.3GHz Pentium M
- Muse 0.821 playing on ICC on a P4 1.4GHz had a blitz rating of around 2400
- Muse 0.872 in ECM98: 538/770 solved at 5s/move on a 1.3GHz Pentium M
- Muse 0.872 was mostly above 2500 blitz rating on ICC (best: 2581), sometimes it drops below 2500 when it's abused or when good (C) accounts beat it up.
- Muse 0.888 in ECM98: 574/770 solved at 5s/move on a 1.4GHz Pentium M (my 1.3GHz laptop was stolen, so I have a faster one now...)
- Muse 0.888 on ICC was still usually somewhere between 2500 and 2600 (best: 2674).
- Muse 0.898 in ECM98: 577/770 solved at 5s/move on 1.4GHz Pentium M
- Muse 0.899 on ICC on an Athlon64 3000+ is usually somewhere between 2600 and 2700.
- Muse 0.899 in ECM98: 590/770 solved at 5s/move on a 1.4GHz Pentium M
- Muse 0.898 - Frenzee 1.46: 22.5-17.5
- Muse 0.898 - Gothmog 1.0 beta 10: 10.5-29.5
- Muse 0.899 - Frenzee 1.46: 24-16
- Muse 0.899 - Gothmog 1.0 beta 10: 16.5-23.5
I would like to thank all testers for their efforts. Their tests give me an idea where I stand, and if/when I have a new version, their tests will tell me whether it is an improvement or not! I run my own tests, sure, but they produce a "bigger picture" and also find bugs that I might not find because I always test in the same environment.
- Patrick Buchmann: UCI engines league
- Leo Dijksman: WBEC Ridderkerk
- Heinz van Kempen and co: AEGT
- Francois Dubois: Le systeme du suisse
- Olivier Deville: Chess War
Muse is not an impressive chess program. But it has improved from a weak program to a decent amateur program. The current version of Muse (0.899) has a 2450 rating on the WBEC scale.
CreditsI wrote Muse all by myself, but there are many people who helped in some way or other. Here's an incomplete list of people I'd like to thank:
This page was last updated on June 5th, 2006 using Arachnophilia