MadChess 1.3 Released

I’ve added 50 to 90 Elo to MadChess, depending on the time control. I’ve finally broken the master barrier (2200 Elo)! I estimate MadChess’ playing strength is ~2200 Elo at blitz time control and ~2220 Elo at rapid time control. Source code and EXEs available on the Downloads page. Added parameters to weaken engine strength (Score Error and Max Nodes Per Second), though I did not test them thoroughly. Calculate piece location score in evaluation instead of incrementally during move generation. Replaced yield-based move selectors with state-machine move selectors due to poor performance of iterators in recursive search algorithm. More… Continue Reading

MadChess 1.2 Released

I’ve managed to add another 100+ Elo to MadChess. I estimate MadChess’ playing strength is ~ 2090 Elo at bullet time control. At blitz, I estimate its strength is ~ 2140 Elo. The strength improvement is mostly due to more efficient move generation and an improved principal variation search algorithm. Those and other more cosmetic changes are detailed below. Source code and EXEs available on the Downloads page. Implemented a check evasion move selector. Improved principal variation search algorithm. Improved efficiency of aspiration windows. Window is increased in configurable steps instead of doubling. Decreased positional bonuses. Added bonuses for backward… Continue Reading

MadChess 1.1 Released

I’ve made many changes to MadChess, detailed below. I tested at my usual bullet time control (2 min + 1 sec / move) and found only a 30 Elo gain, a bit disappointing for so many changes. However, informal testing at 40 moves in 4 min shows a much larger gain- potentially 60 Elo. This makes sense because my engine is a relatively slow searcher. Perhaps the CCRL testers can verify? I removed 174 lines of code and gained 30 Elo. At this rate, if I remove all the code my engine will play with super Grandmaster strength, ha ha!… Continue Reading

MadChess 1.0 Released

I have renamed my chess program. Considering my family name is Madsen, I went with the obvious: MadChess. MadChess 1.0 is 150 Elo stronger than its predecessor, RumbleMinze 1.0.33. MadChess 1.0 is nearly equal in strength to MicroMax 4.8 and Roce 0.0390 in bullet chess (2 min / game + 1 sec / move). It is slightly weaker than Faile 1.4. Most of the strength increase is due to incremental move generation (using the C# yield statement) and an incrementally updated list of attackers for any rank, file, upward diagonal, or downward diagonal. This speeds up capture generation and check… Continue Reading