what is the proper depth search for the best computer move in chess [which depth would you consider minimum?]
thanks.
what is the proper depth search for the best computer move in chess [which depth would you consider minimum?]
thanks.
what is the proper depth search for the best computer move in chess [which depth would you consider minimum?]
thanks.
For the best move you need to complete the whole search: i.e. maximum depth. You would then find the best move for certain.
Hypothetically, if stockfish had unlimited time and did the standard adversarial search it could find the best move every single time and be unbeatable. Obviously, Stockfish does not have that much time.
Other than that, it's an analogue scale in between. Remember, AlphaGo can beat stockfish, so stockfish at the moment is not finding the defacto best move in reasonable time and it is searching a very decent depth, of 20+.
So if you asked the question, how deep does an algorithm need to search to beat someone who is rated 2800, 98% of the time, then maybe we could make a guess - around 22 nodes is enough probably.
For the best move, however, you have to search the whole tree.
AlphaGo vs Stockfish is a bit unfair, SF doesn't even know the rules of Go.
On a more serious note, the positions from top level chess are not a fair representation of how much time/depth one needs for a serious judgement of the position. Top level games often are very complex and take a lot of calculation to really understand while analyzing non-GM human games might take a lot less calculation.
Especially to analyze lichess blitz games depth 20 should usually be enough. (though in some rare positions that might actually overlook something; but then, how likely is it that you or your opponent would have found a that deep variation in a blitz game?!)
Basically there's no proper depth, but rather a depth when the position is stable; and that's what stockfish is doing now.
A famous chess player (I can't remember which) was once asked how many moves ahead he thinks and his reply was "one, the right one". What he meant was each time it's your turn, you only have to find the right move.
Here you can see how I play with a fixed search depth of 6.
At short time controls you will beat me on time. At long time controls you will out-think me.
Sweet point is around 1 billions node( about 3 mins per position). Stockfish strength is bell shape, its strength sharply increase with doubling search nodes until it goes quite plateau like bell at 1 billion. There is small increase in elo/ better search result between 1 billion vs 100 billion.
The complexity in a position is obviously the same whether the position arises in a fast game or a slow game, and whether it arises in a grandmaster game, engine game, or game by novices.
However deep search can reveal complexities in a position that are not evident with a shallow search.
In fast games and novice games, blunders are more likely and clearly winning positions are likely to appear sooner in a game. Once a position is clearly winning, you can perhaps say its less complex. Really it also depends on what you mean by complexity. If you look for the absolute fastest route to checkmate, many of those clearly winning positions might be considered very complex. If you are looking for a simple winning move they might not be considered too complex.
=
Back to the original question: engine search depth. If an engine predicts the game might last another 60 moves then perhaps it should spend 1/60 of its remaining time analyzing the current position, e.g. 5 seconds if it has 5 minutes on the clock. Then search as deep as you can in those 5 seconds.
@IvanUrwin @Allonautilus That's not true, games between stronger players really are (if they are trying to win and not make a quick draw at least) more complex. If you look at some actual games you will see that.
I am not sure why it is though, maybe weaker players tend to simplify the position more. (also there usually isn't a long strategy struggle in weaker players games) It might also be that they in general play more "direct" be it to try and checkmate the opponent instead of slowly outplaying him or be it to try and make tactics work that the opponent might overlook. (which at the lower level is quite effective)
@Vetinari_Computer I am sure we are in agreement but I seem to have explained myself badly.
The complexity in a position is obviously the same whether THAT SAME position arises in a fast game or a slow game, and whether THAT SAME position arises in a grandmaster game, engine game, or game by novices.
"games between stronger players really are...more complex...I am not sure why it is though,..."
I think because of the lack of short sighted blunders, the mistakes need a higher depth of search in order to be seen. Also, the mistakes that are made might lead to a strategical advantage (e.g. superior pawn structure) rather than a material advantage (more or better pieces). Or they may involve a material sacrifice that requires a large search depth to see where it pays off.
Also, as you say, weaker players will simplify positions, e.g. exchange an attacked piece, defend it, or retreat it. The more experienced player will have a bigger arsenal of counter measures: pin an attacker, exchange off an attacker, create a new defender by unpinning a pinned defender, create a fork that could be used to recapture, allow the capture and then pin the assailant, etc.
So players are using complexity as a tool, constantly hoping to see something at a depth which the opponent misses.
Also, higher level games might appear to be closer to equal for longer and correct moves therefore less obvious.
@/Sidonia-ChessEngine
This topic has been archived and can no longer be replied to.