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

Re: computer-go: Most simple Go rules



>  "Superfast" is relative. I'm sure my ladder-search would be much slower if
>  it had to check for super-ko, so it only checks for simple ko. 

I'll  bet you are wrong.   Zobrist key overhead is absolutely minimal.
Not only  that, but you might   even gain a   few cutoffs in  a ladder
search that simple ko would miss.  You can store keys  in a hash table
for ko testing, you do not need to search linearly backwards.


>   Ironically,
>   the only place that would actually occasionally encounter a triple-ko
>   situation would be in ladder-search. Still it's rare, so limiting the
>   reading-depth prevents it too and the program only pays an occasional
>   penalty when it has to back-trace the recursions in a triple-ko (which can
>   take a while).


   As for suicide, do you count single-stone suicide as legal? Internally
   Goliath doesn't allow suicide, but it can accept a suicide move as long as
   more than one stone is involved. Single-stone suicide is pointless anyway, I
   consider it to be the same as passing.

>    BTW, in which way is Zobrist hashing different from normal hashing?


Zobrist is a "superfast" method of incrementally updating the hash key
for the position.  It's not really  a different hashing method, just a
way of computing a key.  It's based on a  table of random numbers that
you create offline.  It's strengths are many, it's not only very fast,
but it  also gives you high  quality keys (like excellent distribution
properties.)

Don