Transposition table based pruning idea

Discussion of chess software programming and technical issues.

Moderators: hgm, Rebel, chrisw

AndrewGrant
Posts: 1750
Joined: Tue Apr 19, 2016 6:08 am
Location: U.S.A
Full name: Andrew Grant

Re: Transposition table based pruning idea

Post by AndrewGrant »

Ill note that after making the return value changes to Ethereal, I tried making them to SF

http://tests.stockfishchess.org/tests/v ... 0d945d57bb

Did quite poorly. I imagine it has to do with the fact that SF is probably very accurate in what it prunes from the search tree -- Ethereal not so much.

One additional question -- When you set your flag to skip TT pruning when doing the depth-1 search, do you also skip all other early pruning?
#WeAreAllDraude #JusticeForDraude #RememberDraude #LeptirBigUltra
"Those who can't do, clone instead" - Eduard ( A real life friend, not this forum's Eduard )
jd1
Posts: 269
Joined: Wed Oct 24, 2012 2:07 am

Re: Transposition table based pruning idea

Post by jd1 »

AndrewGrant wrote:Ill note that after making the return value changes to Ethereal, I tried making them to SF

http://tests.stockfishchess.org/tests/v ... 0d945d57bb

Did quite poorly. I imagine it has to do with the fact that SF is probably very accurate in what it prunes from the search tree -- Ethereal not so much.

One additional question -- When you set your flag to skip TT pruning when doing the depth-1 search, do you also skip all other early pruning?
Thanks for that info. I'm running the test now.

No, I don't skip all other early pruning. That is something else that could be tested I suppose.

It never ceases to amaze me how some things work well in one engine but fail clearly in others, despite mostly using similar algorithms.
jd1
Posts: 269
Joined: Wed Oct 24, 2012 2:07 am

Re: Transposition table based pruning idea

Post by jd1 »

AndrewGrant wrote:Ill note that after making the return value changes to Ethereal, I tried making them to SF

http://tests.stockfishchess.org/tests/v ... 0d945d57bb
Too early to say anything definitive here, but this change has certainly started well 35-28-37 (+24) ... at the moment, will run to 8000 games.

Also I wonder if even in Stockfish perhaps it could be worth trying each return value individually rather than all together. Perhaps, for example, it's safe to return the "accurate" values from a null move search but not the static eval in beta /static null pruning or the quiescent value in razoring.
AndrewGrant
Posts: 1750
Joined: Tue Apr 19, 2016 6:08 am
Location: U.S.A
Full name: Andrew Grant

Re: Transposition table based pruning idea

Post by AndrewGrant »

I plan on submitting each of those individually when the framework is low on tests again.

Maintainers may not like it however, as it creates a sort of 'inconsistency' with the alpha beta logic.
#WeAreAllDraude #JusticeForDraude #RememberDraude #LeptirBigUltra
"Those who can't do, clone instead" - Eduard ( A real life friend, not this forum's Eduard )
AndrewGrant
Posts: 1750
Joined: Tue Apr 19, 2016 6:08 am
Location: U.S.A
Full name: Andrew Grant

Re: Transposition table based pruning idea

Post by AndrewGrant »

I was not able to find any success after a couple dozen attempts.

Individual return value changes failed in Stockfish testing as well.

How did the rest of those 8,000 games playout?
#WeAreAllDraude #JusticeForDraude #RememberDraude #LeptirBigUltra
"Those who can't do, clone instead" - Eduard ( A real life friend, not this forum's Eduard )
jd1
Posts: 269
Joined: Wed Oct 24, 2012 2:07 am

Re: Transposition table based pruning idea

Post by jd1 »

AndrewGrant wrote:I was not able to find any success after a couple dozen attempts.

Individual return value changes failed in Stockfish testing as well.

How did the rest of those 8,000 games playout?
Unfortunately returning alpha/beta also failed here as well, -3 Elo after 8000 games. I haven't tried individually.
Cardoso
Posts: 362
Joined: Thu Mar 16, 2006 7:39 pm
Location: Portugal
Full name: Alvaro Cardoso

Re: Transposition table based pruning idea

Post by Cardoso »

Don (may I call you Don?),

could you do me a favor?
Could you please count both cases?
1 - trans_value >= beta + margin
2 - trans_value <= alpha - margin

I think case 1 is what occurs the most.
Case 2 is rare.
This is what happens in my case.
Jus trying to figure out all properties and/or if there is some bug in my engine.
thanks,
Alvaro
Cardoso
Posts: 362
Joined: Thu Mar 16, 2006 7:39 pm
Location: Portugal
Full name: Alvaro Cardoso

Re: Transposition table based pruning idea

Post by Cardoso »

Here's a typical output after 5.5 billion nodes:
alpha cut =3,792,896
beta cut =54,403,072