(c) 2004-2009 Piotr Cichy

NanoSzachy (nanoChess) is a chess engine created with latest nanotechnologies.
It is a very small program - it has only 30.5 KB, but it's playing strength is about 2600 ELO.
NanoSzachy supports WinBoard protocol.

PikoSzachy (picoChess) is the simplified version of nanoSzachy.
The size of program is only 10 KB and it's playing strength is about 2400 ELO.
Older version pikoSzachy 2.3 has only 8 KB and it's playing strength is about 2200 ELO.



NanoSzachy is the winner of the 8th International Open Polish Computer Chess Championships
(26-27.09.2009, Computer Engineering Department of Technical University in Lodz).




Download:

nanoSzachy 3.8
pikoSzachy 3.3
pikoSzachy 2.3
opening book for nanoSzachy and pikoSzachy [317 KB]



Options:

You can change the size of transposition table used by nanoSzachy by adding it in command line parameter.
For example: to set the size to 16 MB use:

nanoSzachy.exe 16

Note: the size of transposition table must be power of 2.
If you omit the parameter, default value 64 MB will be used.

In pikoSzachy the size of transposition table is set to 64 MB and can't be changed.



History:

nanoSzachy 3.8 (2009-09-30):
  • added recognition of some drawish pawnless endings
  • some speed optimizations

    nanoSzachy 3.7 (2009-09-20):
  • improved evaluation

    nanoSzachy 3.6 (2009-08-31):
  • added IID (Internal Iterative Deepening)
  • some cosmetic changes

    nanoSzachy 3.5 (2009-07-19):
  • improved evaluation
  • optimisations for speed and size

    nanoSzachy 3.4 (2008-06-12):
  • added LMR (Late Move Reduction)

    nanoSzachy 3.3 (2008-05-30):
  • added tablebases for KQK, KRK and KPK endings

    nanoSzachy 3.2 (2008-04-28):
  • added killers heuristic
  • more aggressive null-move pruning
  • added null-move verification
  • fixed bug in time management

    nanoSzachy 3.1 (2008-01-31):
  • some cosmetic changes

    nanoSzachy 3.0 (2007-11-09):
  • added ETC (Enhanced Transposition Cutoff)
  • added one-reply extension
  • changes in implementation of transposition table
  • more aggressive null-move pruning
  • small changes in evaluation
  • small changes in time management

    nanoSzachy 2.9 (2007-07-03):
  • some cosmetic changes

    nanoSzachy 2.8 (2007-02-21):
  • changes in time management for pondering
  • small changes in evaluation

    nanoSzachy 2.7 (2007-01-02):
  • small changes in search and evaluation

    nanoSzachy 2.6 (2006-09-15):
  • small changes in search and evaluation

    nanoSzachy 2.5 (2006-08-08):
  • added SEE (Static Exchange Evaluation)
  • small changes in evaluation

    nanoSzachy 2.4 (2006-06-24):
  • more aggresive time management, dependent on actual score
  • changes in sorting of moves in root node
  • showing selective depth and number of analysed moves
  • some speed optimizations
  • fixed 2 bugs

    nanoSzachy 2.3 (2006-05-16):
  • some speed optimizations

    nanoSzachy 2.2 (2005-10-14):
  • small changes in time managment
  • some speed optimizations

    nanoSzachy 2.1 (2005-08-26):
  • small changes in search and evaluation
  • some speed optimizations

    nanoSzachy 2.0 (2005-07-25):
  • implemented version 2 of WinBoard protocol
  • implemented new commands: setboard, analyze
  • removed MPC (MultiProbCut)
  • some small optimizations
  • program size increased to 27.5 KB but is still small

    nanoSzachy 1.9 (2005-06-18):
  • lazy evaluation

    nanoSzachy 1.8 (2005-05-29):
  • improved time management
  • small changes in evaluation
  • implemented WinBoard's "?" command (move now)
  • many small optimizations

    nanoSzachy 1.7 (2005-02-23):
  • improved time management
  • added knowledge about KBNK ending
  • move limit increased from 200 to 400
  • some small optimizations and bugfixes

    nanoSzachy 1.6 (2004-12-18):
  • bitboards
  • added command line parameter for hashtable size (must be power of 2), example: to set 16MB use nanoSzachy.exe 16
  • program size increased to 27 KB but is still small

    nanoSzachy 1.5 (2004-10-31):
  • some small optimizations
  • program size decreased from 30 to 26 KB!

    nanoSzachy 1.4 (2004-10-28):
  • some small optimizations
  • added draw on 50 move rule
  • commands like quit are now processed immediately (waiting for end of thinking caused occasional hangs after game)

    nanoSzachy 1.3 (2004-10-06):
  • added null move heuristic
  • added incremental time control

    nanoSzachy 1.2 (2004-09-27):
  • added MPC (MultiProbCut)
  • small changes in time control

    nanoSzachy 1.1 (2004-09-26):
  • pondering available in WinBoard mode

    nanoSzachy 1.0 (2004-09-20):
  • NegaScout
  • QSearch
  • iterative deepening
  • refutation table
  • history table
  • transposition table
  • check extension
  • delayed check detection (pseudolegal move generator)
  • precalculated move tables (no bitboards)
  • pondering (note: works only in text mode, do not use it under WinBoard)




    pikoSzachy 3.3 (2009-08-31):
  • added IID (Internal Iterative Deepening)
  • some cosmetic changes

    pikoSzachy 3.2 (2009-07-19):
  • improved evaluation

    pikoSzachy 3.1 (2008-12-27):
  • added LMR (Late Move Reduction)
  • added killers heuristic
  • added null-move verification
  • simplified evaluation function

    pikoSzachy 3.0 (2008-05-19):
  • improved search and evaluation
  • program size increased from 8 to 10 KB

    pikoSzachy 2.3 (2008-04-28):
  • program size decreased from 9 to 8 KB

    pikoSzachy 2.2 (2007-06-26):
  • some cosmetic changes

    pikoSzachy 2.1 (2007-01-02):
  • small changes in evaluation

    pikoSzachy 2.0 (2006-07-03):
  • program size decreased from 10 to 9 KB
  • 20% speedup
  • simplified evaluation function
  • many small improvements

    pikoSzachy 1.0 (2005-01-25):
  • NegaScout
  • QSearch
  • null move heuristic
  • MPC (MultiProbCut)
  • iterative deepening
  • refutation table
  • history table
  • transposition table
  • check extension
  • delayed check detection (pseudolegal move generator)
  • precalculated move tables (no bitboards)
  • pondering




    Contact:
    If you have any comments or suggestions, you can send them to: pic@mm.pl