miniMardi - Messy Chess Program



This is a "oh no not another simple chess program" chess program.
It's written in C and works under Unix and Windows.

Features:
 - Opening book (small, limited by the simple search).
 - AlphaBeta search. 
 - Time management. 
 - Search heuristics (history moves).
 - Draw aware (3-fold repetition).
 - FEN support.
 - xboard compatible.
 - Zippy compatible.

Implementation Details:
 - 0x88 board representation.
 - zobrist keys for repetition detection.
 - moves encoded into an INT.
 - move sorting (mvv/lva), history moves.
 - AlphaBeta search with Quiescent.

News

 - Now available at sourceforge.
 - My work on MTD available here.
 - I'm working on Deep miniMardi! (OpenMP), results are still not very satisfying. 
 - Transposition table and Null move are now working with version 1.3. 
 - I made a hack of icsDrone that works with ICC and that uses algebraic notation when adjourning games.

Play now!

  1. Click here.
  2. When the applet has started click on "open connection".
  3. Login as "guest".
  4. Type "match minimardi 5 0".
Now you can play!

Note: The engine can be busy playing or offline.

Download

Source: 
 - minimardi.1.3.tgz

Binary:

 - Linux: minimardi.1.3.i386.tgz Updated!
 - For those having problems (now very likely fixed 100%): Updated!
   Windows: minimardi.1.3-final.zip

Interface

 - Linux i recommend xboard.
 - Windows i recommend Arena.

ToDo

 - Fix Transposition Table (currently disabled).
 - Better evaluation function.
 - Artifical Neural Network (TD learning) for "positional" evaluation.
 - Nullmove pruning.

miniMardi@ICC:

Statistics for minimardi(C)         On for: 1:07     Idle:    0
minimardi is currently involved in a match against Damn-IamGood.

          rating [need] win  loss  draw total   best
Bullet      2235        365    57    29   451   2371 (20-Jul-2003)
Blitz       2213        921   230    76  1227   2266 (17-Jul-2003)
Standard    1901        183    54    22   259   2048 (19-Jul-2003)