NN evaluations are highly non-linear anyway, so if anything is "stupid" it is expecting NNUE to behave like HCE where terms are additive
and piece values dominate.
stockfish evaluates knight as more than rook
Moderators: hgm, Rebel, chrisw
-
- Posts: 4185
- Joined: Tue Mar 14, 2006 11:34 am
- Location: Ethiopia
-
- Posts: 10282
- Joined: Thu Mar 09, 2006 12:37 am
- Location: Tel-Aviv Israel
Re: stockfish evaluates knight as more than rook
The problem is not that the evaluation is not linear but that the evaluation does not evaluate positions with smaller distance to mate as better and I am sure the distance to mate is smaller when the weaker side is with less pieces.Daniel Shawul wrote: ↑Thu Jul 22, 2021 11:19 pm NN evaluations are highly non-linear anyway, so if anything is "stupid" it is expecting NNUE to behave like HCE where terms are additive
and piece values dominate.
I will be happy to see unproved mate in 30 and unproved mate in 60 that come from evaluation function and not from search by chess engines
when of course proved mate in 40 by tablebases is going to be evaluated as better than unproved mate in 30 so the engine is not going to miss some mate by search only because of unproved mate in the evaluation.
-
- Posts: 10282
- Joined: Thu Mar 09, 2006 12:37 am
- Location: Tel-Aviv Israel
Re: stockfish evaluates knight as more than rook
I can add that I have an idea how to calculate distance of unproved mate in the evaluation.
Give the engine to play against itself and if one side wins in 32 moves then you have unproved mate in 32.
It is better to use an engine that knows to mate the opponent fast so first step to decide which engine to use is to do a rating list based on winning position when the winner is the side that win faster against the opponents from obviously winning positions.
Unfortunately it seems that the way that stockfish use NN do not help in winning faster(did not test latest stockfish but tested some older version between stockfish13 and stockfish14 and found that in games with queen handicap it lose against engines in the meaning that it needs more moves to mate against opponents than the opponent needs).
Give the engine to play against itself and if one side wins in 32 moves then you have unproved mate in 32.
It is better to use an engine that knows to mate the opponent fast so first step to decide which engine to use is to do a rating list based on winning position when the winner is the side that win faster against the opponents from obviously winning positions.
Unfortunately it seems that the way that stockfish use NN do not help in winning faster(did not test latest stockfish but tested some older version between stockfish13 and stockfish14 and found that in games with queen handicap it lose against engines in the meaning that it needs more moves to mate against opponents than the opponent needs).
-
- Posts: 27793
- Joined: Fri Mar 10, 2006 10:06 am
- Location: Amsterdam
- Full name: H G Muller
Re: stockfish evaluates knight as more than rook
It is more interesting to see how a position where one side lacks a Knight and the other a Rook would be evaluated.
-
- Posts: 389
- Joined: Tue Oct 08, 2019 11:39 pm
- Full name: Tomasz Sobczyk
Re: stockfish evaluates knight as more than rook
That's expected. It's the reason why search is needed.Uri Blass wrote: ↑Fri Jul 23, 2021 7:27 amThe problem is not that the evaluation is not linear but that the evaluation does not evaluate positions with smaller distance to mate as better and I am sure the distance to mate is smaller when the weaker side is with less pieces.Daniel Shawul wrote: ↑Thu Jul 22, 2021 11:19 pm NN evaluations are highly non-linear anyway, so if anything is "stupid" it is expecting NNUE to behave like HCE where terms are additive
and piece values dominate.
dangi12012 wrote:No one wants to touch anything you have posted. That proves you now have negative reputations since everyone knows already you are a forum troll.
Maybe you copied your stockfish commits from someone else too?
I will look into that.