Version 1.03 of my chess engine Texel is now available for download from http://dl.dropboxusercontent.com/u/89684995/texel103.7z
The largest user visible changes are SMP support, MultiPV support and a re-tuned evaluation function which makes the engine play more aggressively.
There are 7 compiled versions included:
texel-arm : For the armv7-a architecture. Should work on most modern android devices.
texel32.exe : For 32-bit windows systems with SSE42 and POPCOUNT.
texel32old.exe : For 32-bit windows systems without SSE42 and POPCOUNT.
texel64 : For 64-bit linux intel systems with SSE42 and POPCOUNT.
texel64.exe : For 64-bit windows intel systems with SSE42 and POPCOUNT.
texel64amd.exe : For 64-bit windows systems with SSE42 and POPCOUNT.
texel64old.exe : For 64-bit windows systems without SSE42 and POPCOUNT.
Texel 1.03 scores about 66% (+112 elo) against Texel 1.02 on my linux computer at very fast time controls, using one core.
Changes meant to improve playing strength:
- Multi-threaded (SMP) search.
- Remove moves before the last zeroing move from the repetition history list before starting search.
- Removed bogus transposition table store in Search::iterativeDeepening().
- Disable aspiration window logic when searching for a faster mate.
- Added null move verification search.
- Prefetch entries from the main transposition table.
- Bonus for candidate passed pawns.
- Skip move ordering after enough moves to trigger LMP have been searched.
- Implemented pawn storm bonus for opposite castling positions.
- Removed the Botvinnik-Markoff extension.
- More aggressive LMR.
- Added knowledge for KBpKB, KNpKB, KBpKN and KNpK endgames.
- Store endgame flag in material hash table.
- Optimized lots of evaluation function parameters.
- More consistent evaluation of different classes of pawnless endgames. KQK, KRK, KQKM, KBBK, KBNK, KQKR, KQKMM, KMMKM (M = B or N).
- Mate distance pruning.
- Evaluation correction for 7 knights vs 3 queens.
- Display engine evaluation using "info string" when starting search in analysis mode.
- Changed internal parameter handling to make it easier to switch between UCI parameters and compile-time constants.
Peter Osterlund - firstname.lastname@example.org