Re: Regarding options ponder flag
Posted: Wed Dec 06, 2017 11:58 pm
I keep missing your point: why the go-command always looks like that if it is useless?Ras wrote: Because the go-command just always looks like that?
I keep missing your point: why the go-command always looks like that if it is useless?Ras wrote: Because the go-command just always looks like that?
Because the GUI doesn't have to care which side it is sending the go-command to.Fulvio wrote:I keep missing your point: why the go-command always looks like that if it is useless?
Man, I give up: can you imagine a GUI sending the same go-command to both sides? When the GUI will receive the bestmove will it pick a random clock to be updated?Ras wrote: Because the GUI doesn't have to care which side it is sending the go-command to.
Joker used it. The point is that in sudden-death-type games (i.e. increment contributes negligibly) the optimal time allocation is to use a time close to what your opponent uses. Even if in your own judgement he uses twice as much time as is healthy, you should not stick to what you consider optimal yourself. Because it is very dangerous to be out-searched by such a factor, and by the time the opponent will get in time trouble, the game will be decided in his advantage with plenty of (now useless) time left on your own clock. So you better not think, say, less than 90% of what he thinks. (E.g. target time = 0.1*optimal time use + 0.9*average opponent time use).Ras wrote:Taking a look at WB engines: which engine does actually use this piece of information? Especially, does Kingslayer evaluate it? And for what purpose?
In any actual implementation, you assemble the string token-wise.Fulvio wrote:can you imagine a GUI sending the same go-command to both sides?
The issue with "fixes" and "enhancements" is that they create standard diversity, which is pretty much the opposite of a standard.to think that a small mistake may be simply fixed.
Ras wrote:wtf man, W-T-FFulvio wrote: The issue with "fixes" and "enhancements" is that they create standard diversity, which is pretty much the opposite of a standard.
You add a:
option PonderWTF type check
and for engines that supports it you replace ponderhit with:
ponderhitWTF i_want_the_correct_clock_because_there_is_no_reason_not_to
done, fixed
This assumes that the opponent knows better which positions need what amount of time. It becomes interesting if both sides make this assumption, then we have a feedback loop.hgm wrote: the optimal time allocation is to use a time close to what your opponent uses.
Actually, you can just send the timing after ponderhit. UCI engines are supposed to ignore unknown additional things. From the UCI spec:Fulvio wrote:You add a:
Since UCI also allows arbitrary whitespaces anywhere, engines cannot just expect the ponderhit line to beif the engine or the GUI receives an unknown command or token it should just ignore it and try to parse the rest of the string in this line.
Code: Select all
"ponderhit\n"
Code: Select all
" ponderhit \n"
This is not done on a per-positition basis, but based on average time use. Nevertheless, it is suspect if the oppoent suddenly thinks very much longer than average. He must have see a complication at large depth that invalidated what you ca see at lower depth. So should you really stick to a lower depth in that case?Ras wrote:This assumes that the opponent knows better which positions need what amount of time. It becomes interesting if both sides make this assumption, then we have a feedback loop.
No, it doesn't. But KingSlayer is an extremely simple engine, just one step up from micro-Max.Next question, this time allocation scheme doesn't sound too complicated - does Kingslayer use it?
Probably in the last iteration that would be normal at this depth, and this takes much more time because the PV is changing early on, maybe even at root. But so what? First, that can be anything because I can't know how the opponent made up his PV anyway, and second, whatever it is - it will be one ply closer to me when it's my turn then it was to him.hgm wrote:He must have see a complication at large depth