BimmerBass / Loki

C++17 chess engine
GNU General Public License v3.0
9 stars 2 forks source link

Add SEE #6

Closed BimmerBass closed 3 years ago

BimmerBass commented 3 years ago

Static Exchange Evaluation (SEE) is a way of examining capture sequences statically which allows for better move ordering, reductions of very bad, late captures and pruning in quiescence. On top of that, it also makes LMR more effective.

BimmerBass commented 3 years ago

SEE has been added (with much inspiration/copying from stockfish) and seems to work ok. It hasn't been implemented in search/move ordering yet, but this will be done soon.

BimmerBass commented 3 years ago

I just tested a very (VERY) minimalistic move ordering scheme with SEE, and it seems that there is a bug in the pinned_pieces() method which causes Loki to crash. I will investigate this and make SEE working in the following days.

BimmerBass commented 3 years ago

SEE has now been added and implemented in move ordering (~0 elo - will improve upon this) and pruning in quiescence search (~56 elo).