gnugo-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [gnugo-devel] changed board_hash after reading


From: Arend Bayer
Subject: Re: [gnugo-devel] changed board_hash after reading
Date: Sat, 3 Sep 2005 12:52:50 +0200 (CEST)

I wrote:
> Gunnar wrote:
> > Arend wrote:
> > > About the first: We could instead automatically reset komaster
> > > to EMPTY in do_trymove() when a ko is resolved (and remove the above
> > > code from komaster_trymove()). I am not sure what is best here.
> > 
> > This is also what Martin does. But is there actually any need for an
> > automatic reset? It seems to me that this check could be done in
> > komaster_trymove() after doing the move and that it's only meaningful
> > for non-ko moves.
> 
> In fact, it seems outright wrong to me in the case of ko moves: we don't
> want to reset the komaster in case of a two stage ko. (This may still
> happen with your patch further down the search tree, I think.)

I think I was confused here, as Gunnar pointed out to me. In the case of
a two stage ko, the code in komaster_trymove moves the kom_pos to the
position of the second ko, when we capture it (while we are komaster for
the first ko).

My conclusion is now:
1. I think Martin's patch is wrong on this point, as it does the check before
   komaster_trymove had a chance to update the ko position (this should
   also explain the increase in reading nodes).
2. I guess we should use Gunnar's latest patch.

To be pedantic, it may not be entirely correct in situation such as this
(white to move is komaster for *):
   A B C D E F G H J 
19 . . . . . . . . . 
18 . . X X O . . . . 
17 . . X O * O . . . 
16 . . . X O . . . . 
15 . . X O X . . . . 
14 . . X O . . . . . 
13 . . . . . . . . . 

Capturing D16 doesnt resolve the ko for all eternity if Black blocks at 
B16 and later recaptures D16.

(But the code was probably never correct for this situation.)


Arend

 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]