This is a temporary, read-only recovery of the chessprogrammingwiki while a longer-term plan is worked out. Editing is not possible right now, but will be again soon.
Chess Programming Wiki All pages Other namespaces

MadChess

Home * Engines * MadChess

Me Worry? 1Me Worry? 1


  1. A postcard with the public domain "me worry?" face that later inspired Mad magazine's Alfred E. Neuman, ca. 1910s, Alfred E. Neuman from Wikipedia↩︎

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 1, and features adjustable playing strength with improved algorithms since MadChess 1.4 2 3. 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 4 5.

Contents
  1. Description
    1. Move Generation
    2. Search
    3. Evaluation
  2. See also
  3. Forum Posts
    1. 2012
    2. 2013
    3. 2014
    4. 2015 ...
    5. 2020 ...
  4. Blog Posts
  5. External Links
    1. Chess Engine
    2. Misc
  6. References

Description

Move Generation

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

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 ...

2020 ...

Blog Posts

Chess Engine

MadChess - User Guide

Misc

References

Up one level [[Category:Mac]


  1. MadChess 1.0 Released (C# .NET Engine) by Erik Madsen, CCC, October 25, 2012↩︎

  2. MadChess UCI_LimitStrength Algorithm by Erik Madsen, CCC, April 12, 2014↩︎

  3. MadChess - User Guide↩︎

  4. MadChess 2.1 Released – MadChess, February 22, 2017↩︎

  5. MadChess 2.1 Released - Supports Windows, Linux, Mac by Erik Madsen, CCC, February 23, 2017↩︎

  6. Re: Question About CPP-C#, Performance, and Square Representation by Erik Madsen, CCC, October 03, 2012↩︎

  7. yield - MSDN C# Reference↩︎

  8. Behind the scenes of the C# yield keyword | Struggles by Lars Corneliussen, June 9, 2008↩︎

  9. Generator (computer programming) from Wikipedia↩︎

  10. Coroutine from Wikipedia↩︎

  11. Engine Crash Detective Story by Erik Madsen, CCC, August 29, 2020↩︎

  12. Are Aspiration Windows Worthless? by Erik Madsen, CCC, December 20, 2020 » Aspiration Windows↩︎

Categories: Disease · UCI · Open Source · GPL · C sharp · Windows · Linux · PC · X86 · X64 · Chess Suffix

What links here

Contributors: GerdIsenberg.