On May 24, 2009, at 8:47 AM, Don Dailey <[email protected]> wrote:
2009/5/24 Christian Nentwich <[email protected]>
Jason,
I used this time management code on CGOS and for off-line test
tournaments so far. I cannot claim that I have made additional
efforts to model/address network lag in it, so I don't yet know what
else I need to do with KGS, etc. Perhaps a percentage applied to the
result computed by the curve, for safety, or perhaps subtract two
seconds from the time estimate sent by the server?
The extra time in CGOS is designed so that you don't have to add
your own compensation for network lag, and so that you don't lose
a game purely on communication time with the server.
The amount of time currently configured is 3/4 second. You only get
the amount of this credit that you use. So if you have a fast
network and you take 1/4 second to move from the servers point of
view, you only get 1/4 second of that time, not the full 3/4.
Think of this like a Bronstein clock, which does exactly the same
thing.
It's not designed to be "fair" because if you have a fast network
you will still have an advantage over an opponent with a slow
network. It is designed to prevent programs with a slow network
from losing on time even though they are playing instantly.
I think the best way to deal with it using your algorithm is to
either ignore it and just use your algorithm as is, or if you are
confident that you have a fast network add an additional 3/4 second
to each move (or some fraction of that if you want to be safer.)
Add the time after you do your normal calculation.
- Don
Believe it or not, I had to do special coding to handle CGOS. my bot
tried to adapt to network lag. Because the average lag for CGOS is
negative, subtracting future network lag before allocating time is
incorrect. The time allocation math would plan to have no time left at
the end of the game, but since the final few moves are supposed to be
less than the gift, the planned allocation would hit zero before the
end of the game. _______________________________________________
computer-go mailing list
[email protected]
http://www.computer-go.org/mailman/listinfo/computer-go/