For instance, if your centipawn evaluation does not agree exactly for these four positions:
r3rk2/ppp1q1pp/2n5/5bN1/2B1pP2/Q7/PPP4P/1KR3R1 w - - bm Nxh7+;
2kr3r/pp1q1ppp/5n2/1Nb5/2Pp1B2/7Q/P4PPP/1R3RK1 w - - bm Nxa7+;
1r3rk1/p4ppp/7q/2pP1b2/1nB5/5N2/PP1Q1PPP/2KR3R b - - bm Nxa2+;
1kr3r1/ppp4p/q7/2b1Pp2/5Bn1/2N5/PPP1Q1PP/R3RK2 b - - bm Nxh2+;
then something is broken.
Is something really broken in one's engine or is it possibly the engine is not advanced enough?
Using the first position, it is around a ply of 11 or so in which on realizes Nxh7+ is the best move. The catch is, for my engine, this move is not realized within a minute. If I play the best move plus the following forced move, my engine then solves this within a few seconds.
I do not have pruning, just pvs, TT, and move ordering items which prove to be very efficient. My eval is plain (PSQ, pawn structure) and this is what I am working on now. Can I improve the eval to solve this and without obtaining those depths? Or, is the only way to really solve this by jumping into pruning and reductions to obtain more depth? What should the next step be?
Cheney wrote:In regards to these test positions and comments:
For instance, if your centipawn evaluation does not agree exactly for these four positions:
r3rk2/ppp1q1pp/2n5/5bN1/2B1pP2/Q7/PPP4P/1KR3R1 w - - bm Nxh7+;
2kr3r/pp1q1ppp/5n2/1Nb5/2Pp1B2/7Q/P4PPP/1R3RK1 w - - bm Nxa7+;
1r3rk1/p4ppp/7q/2pP1b2/1nB5/5N2/PP1Q1PPP/2KR3R b - - bm Nxa2+;
1kr3r1/ppp4p/q7/2b1Pp2/5Bn1/2N5/PPP1Q1PP/R3RK2 b - - bm Nxh2+;
then something is broken.
Is something really broken in one's engine or is it possibly the engine is not advanced enough?
Using the first position, it is around a ply of 11 or so in which on realizes Nxh7+ is the best move. The catch is, for my engine, this move is not realized within a minute. If I play the best move plus the following forced move, my engine then solves this within a few seconds.
I do not have pruning, just pvs, TT, and move ordering items which prove to be very efficient. My eval is plain (PSQ, pawn structure) and this is what I am working on now. Can I improve the eval to solve this and without obtaining those depths? Or, is the only way to really solve this by jumping into pruning and reductions to obtain more depth? What should the next step be?
thank you :
I'm certain that Dann will correct me if I am mistaken. But I believe he was stating that the STATIC evaluation of each position (from the side to move's perspective) should be identical. At least that should be verified. This is all on the assumption that you INTENDED to have a symmetrical evaluation. But, as others have posted, if you didn't intend that, then this test would obviously be invalid.
It's possible, I suppose, depending on various implementation factors, that the entire search could produce symmetrically identical results.
Dann Corbit wrote:
For instance, if your centipawn evaluation does not agree exactly for these four positions:
r3rk2/ppp1q1pp/2n5/5bN1/2B1pP2/Q7/PPP4P/1KR3R1 w - - bm Nxh7+;
2kr3r/pp1q1ppp/5n2/1Nb5/2Pp1B2/7Q/P4PPP/1R3RK1 w - - bm Nxa7+;
1r3rk1/p4ppp/7q/2pP1b2/1nB5/5N2/PP1Q1PPP/2KR3R b - - bm Nxa2+;
1kr3r1/ppp4p/q7/2b1Pp2/5Bn1/2N5/PPP1Q1PP/R3RK2 b - - bm Nxh2+;
then something is broken.
My engine "Nameless" gets same static evaluation (MGscore) but different PV's (after due reflections) at depth 19. I hope this is not unusual. Move ordering in search may not match in the four cases.