On Jan 2, 2008 3:29 PM, Don Dailey <[EMAIL PROTECTED]> wrote:

> I am considering to implement Fischer time on CGOS, but I would like it
> to be  painless.     I don't believe GTP has a provision to handle it -
> but I will check to see what it does have.   (I have no intentions of
> doing the byo-yomi stuff.)


The command kgs-time_settings is more flexible for adding new time
management methods.  If you do go down the road of updating the time
control, I'd request that you consider reporting fractional seconds similar
to what the CGOS client receives from the server.  This would allow me to
add better adaptive time control logic.  Instead of looking at the average
time lost between moves and assuming a distribution, it could examine
individual samples and estimate the distribution.

I agree that Fischer time is simpler to handle.  For those that don't think
byo yomi time is that different, below is my implementation for handling byo
yomi.

I split time management into 4 phases:
phase 1 - plenty of time left - use x% of time left
phase 2 - low on main time - use 2x byo yomi period
phase 3 - near end of main time
  Compute n = # of moves that can be done in
    (main time) + (one byo yomi period),
    assuming 2x byo yomi period per move.
  Use [(main time) + (one byo yomi period)]/ceiling(n)
phase 4 - in overtime - use entire byo yomi period, less buffer for lag

I'm typing up the behavior from memory, but that should be very close to how
it behaves.  This gives a nicely behaved monotonically decreasing time
usage.  For those that are not crazy enough to implement that, the code for
that is available under GPLv3.
_______________________________________________
computer-go mailing list
computer-go@computer-go.org
http://www.computer-go.org/mailman/listinfo/computer-go/

Reply via email to