Bitboard enthusiasts may be interested in the latest change in the bitboard implementation of OliThink.
Finally, only 6 bits are used instead of 7. I am expecting a 5 ELO gain from this.
https://github.com/olithink/OliThink/co ... a22e6c0dcf
Note: When I first implemented this move generator in OliThink (OliPerft) in 2007, I had never heard of "Kindergarten Bitboards". It was a completely detached development on my own:
You can see the first implementation here:
https://github.com/olithink/OliThink/co ... 5d44848a26
OliThink 5.9.5 is very small
Moderators: hgm, Rebel, chrisw
-
- Posts: 725
- Joined: Tue Dec 18, 2007 9:38 pm
- Location: Munich, Germany
- Full name: Dr. Oliver Brausch
-
- Posts: 266
- Joined: Fri Jul 10, 2015 9:23 pm
- Location: Russia
Re: OliThink 5.9.5 is very small
bits or bitboards(U64)?
Eugene Kotlov
Hedgehog 2.1 64-bit coming soon...
Hedgehog 2.1 64-bit coming soon...
-
- Posts: 725
- Joined: Tue Dec 18, 2007 9:38 pm
- Location: Munich, Germany
- Full name: Dr. Oliver Brausch
Re: OliThink 5.9.5 is very small
6 bits. You only need to know the inner 6 bits of a file/rank in order to calculate the possible sliding moves.
Including 5.9.8 OlIThink is precomputing 7 bits which is more than necessary. This shows that OliThink's move generator had been independently developed.
-
- Posts: 725
- Joined: Tue Dec 18, 2007 9:38 pm
- Location: Munich, Germany
- Full name: Dr. Oliver Brausch
Re: OliThink 5.9.5 is very small
OliThink 5.9.9 has been released.
Finally it features half-sized bitboards and some minor changes that improved the engine a little while being even smaller.
The original targets of OliThink are still valid:
- Just mobility evaluation.
- No pre-calculated data.
- Compact and efficient.
OliThink 5.9.9 has an ELO of about 2950 on Linux. It has been developed on MacOSX and tested on Linux, so it may be perform better there than on Windows.
As a result of its nature (small and efficient) it is stronger on very fast time controls like 40/1 (one second for 40 moves).
There is a 1:1 Java port, which has the exact same calculation, but needs about 50% more time. (and more memory).
Notable mention to two engines being also quite compact (but larger and much stronger): Xiphos and Weiss.
Thanks to two sparring partners featuring hundreds of thousands of games: Halogen 8.1 and Drofa 3.0.0
Time Control 40/16:
Time Control 40/1:
Finally it features half-sized bitboards and some minor changes that improved the engine a little while being even smaller.
The original targets of OliThink are still valid:
- Just mobility evaluation.
- No pre-calculated data.
- Compact and efficient.
OliThink 5.9.9 has an ELO of about 2950 on Linux. It has been developed on MacOSX and tested on Linux, so it may be perform better there than on Windows.
As a result of its nature (small and efficient) it is stronger on very fast time controls like 40/1 (one second for 40 moves).
There is a 1:1 Java port, which has the exact same calculation, but needs about 50% more time. (and more memory).
Notable mention to two engines being also quite compact (but larger and much stronger): Xiphos and Weiss.
Thanks to two sparring partners featuring hundreds of thousands of games: Halogen 8.1 and Drofa 3.0.0
Time Control 40/16:
Code: Select all
# PLAYER : RATING ERROR POINTS PLAYED (%) W D L D(%) CFS(%)
1 Halogen 8.1 : 55 5 8333.0 14487 57.5 6833 3000 4654 20.7 100
2 OliThink 5.9.9 : 2 5 6735.0 14489 46.5 4100 5270 5119 36.4 80
3 OliThink 5.9.8b : 0 ---- 6664.0 14488 46.0 4021 5286 5181 36.5 ---
White advantage = 39.23 +/- 1.98
Draw rate (equal opponents) = 31.83 % +/- 0.32
Code: Select all
# PLAYER : RATING ERROR POINTS PLAYED (%) W D L D(%) CFS(%)
1 OliThink 5.9.9 : 68 8 3575.5 6008 59.5 3162 827 2019 13.8 100
2 Halogen 8.1 : 0 ---- 2432.5 6008 40.5 2019 827 3162 13.8 ---
White advantage = 6.12 +/- 4.50
Draw rate (equal opponents) = 14.07 % +/- 0.46