Skip to content

Texel 1.06

Compare
Choose a tag to compare
@peterosterlund2 peterosterlund2 released this 10 Aug 07:13
· 807 commits to master since this release

2016-07-10: Texel 1.06 (ELO: +56)

Search:

  • Don't use ply-2 killers for move ordering.
  • Be more restrictive when extending losing (SEE<0) checks.
  • Don't do check extensions for moves that are reduced by LMR.
  • Don't do singular extensions if the unextended score is a mate score.
  • Don't do LMR for the first 2 pseudo-legal moves.
  • More aggressive LMR.
  • More aggressive null move searches.
  • Don't resolve a known loss score bound if there are other moves that are
    potentially not losing.

Parallel search:

  • Allow a helper thread that fails high to interrupt the master thread.
  • Changed MIN_SPLIT_DEPTH from 10 to 7 to make better use of multiple threads in
    short time control games.
  • Changed maximum number of search threads to 512.
  • Added support for windows NUMA systems having more than 64 cores.

Evaluation:

  • Evaluation term to encourage "pawn breaks".
  • Bonus for "latent" pawn attacks on enemy minor and major pieces.
  • Bonus for safe queen contact checks.
  • Only treat pawns on rank 2 and 3 as backwards pawns.
  • King safety bonus for pieces (except bishops) on the same side of the board as
    the king.
  • Parameter tuning.

Endgame:

  • More patterns for fortress detection in bishop endings.
  • On-demand tablebase generation for 4-men pawn-less positions.
  • Knowledge about KRKBNN endgame, which is generally a draw.
  • Better evaluation of KRBNKRB endgame.
  • Larger evaluation score in KRRMKRR endgames
  • Improved 50 move draw handling for TB probes.

Speed:

  • Reduced TB probe overhead.
  • Implemented a small (512KB) per-thread evaluation hash table.
  • Removed support for fractional depth.
  • Made the transposition table 4-way set associative.

Other:

  • Removed "64-bit" from the engine name. 64 bit is now considered standard.
  • UCI option to disable null moves.
  • Made "BufferTime" a UCI parameter to control time handling safety margin.
  • Don't start a new search iteration if it is unlikely that it can finish before
    the allocated thinking time is up.
  • In analysis mode, don't age transposition table entries when starting a new
    search.