Hi all,
I think I broke something in my engine, but I'm not sure what. Maybe someone has a clue.
When I go towards the endgame, the percentage first fail high drops to below 80% ( normally above 90%)
I'm not sure how to test/ where to look. I switched off bitbases (thought they were corrupt), switched off lazy eval. No improvement.
anybody had this before ?
Cheers,
Tony
First fail high drops in endgame
Moderators: hgm, Rebel, chrisw, Ras, hgm, chrisw, Rebel, Ras
-
- Posts: 28268
- Joined: Fri Mar 10, 2006 10:06 am
- Location: Amsterdam
- Full name: H G Muller
Re: First fail high drops in endgame
Did you ever measure this quantity before (with different result)? It seems normal to me that it is more difficult to find cut-moves in an end-game, as the information that distinguishes the winning from the losing moves is much more distant. In the middle game it is often decided by what is on the to-square, but in end-games it is what is on the square you are heading to in a number of moves.
Re: First fail high drops in endgame
Yes,hgm wrote:Did you ever measure this quantity before (with different result)? It seems normal to me that it is more difficult to find cut-moves in an end-game, as the information that distinguishes the winning from the losing moves is much more distant. In the middle game it is often decided by what is on the to-square, but in end-games it is what is on the square you are heading to in a number of moves.
otoh, in the endgame, you accidently choose the right (good enough) move more often.
But in fine 70 , 78% is way too low. that should be 98% or something. (No nullmove, no lmr)
I've never seen it that low. It almost looks like a random choice. I'm overlooking something obvious, but I haven't got a clue.
Tony
-
- Posts: 2251
- Joined: Wed Mar 08, 2006 8:47 pm
- Location: Hattingen, Germany
Re: First fail high drops in endgame
You may count fail high % for depth left > N, > 0, <= 0 to eventually get a better picture of what happens. If you cut late, log the moves tried before.Tony wrote:Hi all,
I think I broke something in my engine, but I'm not sure what. Maybe someone has a clue.
When I go towards the endgame, the percentage first fail high drops to below 80% ( normally above 90%)
I'm not sure how to test/ where to look. I switched off bitbases (thought they were corrupt), switched off lazy eval. No improvement.
anybody had this before ?
Cheers,
Tony
Gerd
Re: First fail high drops in endgame
Hi Gerd,Gerd Isenberg wrote:You may count fail high % for depth left > N, > 0, <= 0 to eventually get a better picture of what happens. If you cut late, log the moves tried before.Tony wrote:Hi all,
I think I broke something in my engine, but I'm not sure what. Maybe someone has a clue.
When I go towards the endgame, the percentage first fail high drops to below 80% ( normally above 90%)
I'm not sure how to test/ where to look. I switched off bitbases (thought they were corrupt), switched off lazy eval. No improvement.
anybody had this before ?
Cheers,
Tony
Gerd
problem is that the first 8 plies still give a decent percentage. So logging kind of blows up. I don't seem to be able to find a specific position that goes wrong immediatly.
I'll try with splitting the counters, that might give some more information.
Thanks,
Tony
-
- Posts: 2251
- Joined: Wed Mar 08, 2006 8:47 pm
- Location: Hattingen, Germany
Re: First fail high drops in endgame
The professional approach would be to get your older sources from CVS or similar repositories to find the changes that cause the damage
Good luck,
Gerd
Good luck,
Gerd
Re: First fail high drops in endgame
Unfortunately, that would be about my complete source codeGerd Isenberg wrote:The professional approach would be to get your older sources from CVS or similar repositories to find the changes that cause the damage
Good luck,
Gerd
I made quite a few really big changes.
Tony
-
- Posts: 588
- Joined: Thu Mar 09, 2006 4:47 pm
- Location: Singapore
Re: First fail high drops in endgame
Hello,
Best Regards,
Rasjid
For me, the cause of most bugs seems to be traceable to a "direct" source. In your case it may be hashing a wrong move, failure to order / retrieve the proper moves front. Is there any related endgame specific routines? Is your printf % corrupted?I think I broke something in my engine, but I'm not sure what. Maybe someone has a clue.
When I go towards the endgame, the percentage first fail high drops to below 80% ( normally above 90%)
Best Regards,
Rasjid
-
- Posts: 151
- Joined: Wed Mar 08, 2006 10:09 pm
- Location: Murcia (Spain)
Re: First fail high drops in endgame
I think that's normal behaviour due to hashing. If you prune much more due to hashing (like in Fine 70), you have less good-and-easy moves to search that would otherwise rise the FH at fist move rate.Tony wrote:Yes,hgm wrote:Did you ever measure this quantity before (with different result)? It seems normal to me that it is more difficult to find cut-moves in an end-game, as the information that distinguishes the winning from the losing moves is much more distant. In the middle game it is often decided by what is on the to-square, but in end-games it is what is on the square you are heading to in a number of moves.
otoh, in the endgame, you accidently choose the right (good enough) move more often.
But in fine 70 , 78% is way too low. that should be 98% or something. (No nullmove, no lmr)
I've never seen it that low. It almost looks like a random choice. I'm overlooking something obvious, but I haven't got a clue.
Tony
__________________________
José Carlos Martínez Galán
José Carlos Martínez Galán
Re: First fail high drops in endgame
I seem to have found it.
I have created a function that converts the hashtable score to a search score (basicly adjusting for checkmates)
Unfortunately, I didn't send in the found hashtablescore, but a value initialised to +/- inf (depending on upper or lower bound), meaning it would get a hashtable cutoff with a checkmate score, any time the depth was sufficient (but never when in PV).
That will wreck your search. The only thing I don't understand is that it was able to play something resembling chess at all.
Thanks all,
Tony
I have created a function that converts the hashtable score to a search score (basicly adjusting for checkmates)
Unfortunately, I didn't send in the found hashtablescore, but a value initialised to +/- inf (depending on upper or lower bound), meaning it would get a hashtable cutoff with a checkmate score, any time the depth was sufficient (but never when in PV).
That will wreck your search. The only thing I don't understand is that it was able to play something resembling chess at all.
Thanks all,
Tony