Assets 7

This version contains many improvements in search, a few in eval, and technical optimizations and is about 175 ELO better than the previous released version 0.3.0 in self play.

The binaries are for Win32, Win64 with/without SSE4.2, and Linux 64 with/without SSE4.2.

Changes since version 0.3.0 (in reverse order):,, Barbarossa-NB.tex added
Cabal file new formatted
TT in QS: read-only
Simplify search code:

  • Fen collection controlled by a flag
  • Delete the indent functionality
  • Delete unnecessary GHC extensions
  • Delete unnecessary comments

Correct eval of en prise
QS delta: simplified + constant margin
QS delta cut level: best piece of the opponent
Search: leaner node state
Purify some functions used in search
Position is part of node state
Eval: space nonlinear
Add space evaluation inspired by Stockfish
History: smaller cache footprint with Word32
Array of Structure for slider move generation
Passed pawn distance to kings: advance square, non-linear
Changes in search statistics
Search: no pv continuation in node state
Simplify search: a/b just integers (not paths)
Small optimisations: doMove, mvBit, uBit
Redefine center for eval, small parameter changes
Eval: king openness modified
Modified variable futility scheme
Eval: some pawn related params adjusted
History sort: max 128 moves, smaller history index
History: use unboxed vectors to sort moves
History sort: direct sort for depth 1
Eval: king/passed proximity tuned
Eval: pawn proxy different from king placement
Eval: King placement rescaled & more aggresive
Dynamic history sort: later lookup => later scores
TT score/move: history for beta cut
Small correction in search: timeout abort
Futility reduction: 4 for zero window
Eval: higher king bonus for promo squares
White space & comments, viztree functionality is deleted
Variation in futility pruning margins
Null move only in cut nodes, node type change in re-search
QS: check escapes reduced
Faster pos update, no eval in QS when check
Lazy bitboards of position separated
Eval change: mobility knight & bishop (tuned)
Correct TT store when failed low in zero window search
Switch build tools to GHC 7.10.2 & stack

@nionita nionita released this Oct 6, 2015 · 68 commits to master since this release

Assets 7

This version contains many improvements in search and eval (see below) and is about 200 ELO better than the previous released version 0.2.0 (in self play).

The binaries are for Win32, Win64 with/without SSE4.2, and Linux 64 with/without SSE4.2.

Changes from version 0.2.0 in reverse order:
- Piece values & advanced pawns inspired by a HGM comment
- King safety shift (more weight)
- Variable LMR, more aggressive, LMR table: smoother with doubles
- King safety only when attacking queen present, small speedup
- Square attacks in opponent half get bonus; tuned
- Less time for beginning plys
- Correct castles: only squares passed by the king can't be in check
- Correct promotion captures: were generated twice
- Correct 32 bin overflow in passed pawn evaluation
- Small king safety change, few compile warnings
- Eval rewrite for faster calculation
- State monad changes: state is strict
- Eval tuned by self play
- Smaller time factor
- Variable null move reduction
- Material values "inspired" by a comment of Larry Kaufman
- Simplify futility pruned moves
- Futility pruning with variable margin
- Futility prunning also in the alpha-beta part (last 2 plys)
- Correct killer move when null move threat
- Moves sort all time
- Loosing captures last
- Correct node types
- Bad captures at the end
- Backward pawns implemented & tuned
- No pre-sorting of the capture fields in MVVLVA
- Correct capture sorting (MVVLVA)
- Technical optimisation of SEE + some cleanup
- Further compiler warnings

@nionita nionita released this Feb 22, 2015 · 128 commits to master since this release

Assets 5

Many improvements in evaluation and search.
This version is about 250 ELO better than previous released version 0.1.0.

The precompiled binaries are 64 bit with popcount (SSE4.2) for Windows and Linux, and 32 bit for Windows.

@nionita nionita released this Nov 24, 2013

Assets 5

Barbarossa 0.1.0 release:

  • corrected en-passant capture generation
  • corrected play in some simple finals (could not give mate when in advantage)
  • small speed improvements

I attached a windows 32 binary and 2 linux versions (compiled on ubuntu): one generic and one for cpus with popcount.