Difference between revisions of "MadChess"

From Chessprogramming wiki
Jump to: navigation, search
Line 39: Line 39:
 
* [http://www.talkchess.com/forum/viewtopic.php?t=63248 MadChess 2.1 Released - Supports Windows, Linux, Mac] by [[Erik Madsen]], [[CCC]], February 23, 2017
 
* [http://www.talkchess.com/forum/viewtopic.php?t=63248 MadChess 2.1 Released - Supports Windows, Linux, Mac] by [[Erik Madsen]], [[CCC]], February 23, 2017
 
* [http://www.talkchess.com/forum/viewtopic.php?t=64504 MadChess 2.2 Released] by [[Erik Madsen]], [[CCC]], July 04, 2017
 
* [http://www.talkchess.com/forum/viewtopic.php?t=64504 MadChess 2.2 Released] by [[Erik Madsen]], [[CCC]], July 04, 2017
 +
* [http://www.talkchess.com/forum3/viewtopic.php?f=7&t=69035 Particle Swarm Optimization Code] by [[Erik Madsen]], [[CCC]], November 24, 2018 » [[Automated Tuning]]
  
 
=External Links=
 
=External Links=

Revision as of 13:11, 25 November 2018

Home * Engines * MadChess

Me Worry? [1]

MadChess,
an UCI compliant open source chess engine by Erik Madsen, written in C# to run under the Windows .NET framework. It was first released under the GNU General Public License Version 3 as successor of Erik's former C# engine RumbleMinze in October 2012 [2], and features adjustable playing strength with improved algorithms since MadChess 1.4 [3] [4]. MadChess 2.1, released in February 2017 is using .NET Core, Microsoft’s cross-platform free and open-source managed software framework to support not only Windows, but Linux, and Mac [5] [6].

Description

Move Generation

MadChess applies an incremental move generation, using the C# yield statement [7] [8] [9] [10] [11] using incrementally updated list of attackers for any rank, file, diagonal, or anti-diagonal.

Search

MadChess performs a principal variation search along with transposition table, killer and history heuristic, null move pruning and late move reductions inside an iterative deepening framework with aspiration. It eliminates all reductions and lazy evaluation along the principal variation.

Evaluation

The evaluation might be lazy with respect to bounds, and otherwise uses a tapered evaluation on game phase between speculative computed middlegame and endgame scores, considering piece-square tables, mobility, pawn structure, and king safety and various piece evaluation terms.

See also

Forum Posts

2012

2013

2014

2015 ...

External Links

Chess Engine

MadChess - User Guide

Misc

References

Up one level