[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: computer-go: Scoring
> Tom, I'm confused to say the least.
> Your description is detailed enough to catch my attention, yet not detailed
> enough to enlighten me.
Whoops!
I was trying to describe a simple scoring algorithm,
but ended up making it sound horribly complicated.
Ive had a bit of a rethink, and come up with a better explaination
of the algorithm.
Although the definitions of 'score area' and 'intersect' have been
changed it will give the same results, and I think is much better worded.
> great result. Would you please better explain your proposal? Or probably it
> would be most unambiguous if you allowed a glimpse at the code that you
> tested.
My code is very messy and would certainly confuse more than anything else.
(Though your welcome to take a look if you really want)
Hopefully the new definition will make things clearer.
> Then in general I'm wondering how could such thing score accurately if it
> doesn't make distinction between alive and dead stones.
My aim was to make a scoring algorithm that doesnt know about
life or death. As soon as you start think about life or death
the scoring problem becomes unbounded.
Some assumptions are made about the state of the board in
a finished position, and in most cases they hold true.
Im hoping that the algorithm is simple enough that
it could be an alternative to tromp/taylor, which
(almost always) requires playing on past the end to get the correct score.
I think this algorithm would only require playing on past
the end in some 20% of cases, and the players are
always assured the correct score. (So long as they play on
when they are in disagrement with the algorithm's score)
So, here is the redefined algorithm...
a black score area is a string of [white OR empty] intersections
a white score area is a string of [black OR empty] intersections
two score areas can be said to intersect iff:
they share an intersection OR
there is an intersection in one score area that is
immediatly adjacent to an intersection in the other score area
1. the status of all score areas is initially CONTESTED
2. any score area that intersects with one and only one
opposing score area has it's status set to SCORING
3. any score area that intersects with a SCORING score area
has its status set to NON-SCORING
4. any score area that only intersects with NON-SCORING score areas
has its status set to SCORING
calculating the final score:
6. any stone in a SCORING score area is removed as a prisoner
7. white scores 1 for each intersection contained by a SCORING white score
area, plus 1 for each white intersection (Chinese) OR 1 for each
prisoner (Japanese).
8. black scores 1 for each intersection contained by a SCORING black score
area, plus 1 for each black intersection (Chinese) OR 1 for each
prisoner (Japanese).
9. add komi to white's score if necessary
a fix, to cope with seki:
any score area consisting of exactly 2 empty intersections,
and at least one coloured intersection is always CONTESTED,
and may not be changed by steps 2, 3 or 4.
dame filling can be added by:
1. any empty intersection that is in a white NON-SCORING score area,
AND a black NON-SCORING score area becomes a dame intersection.
2. all dame points are set to black
3. if there are any black strings with only one liberty, then that
empty intersection may not be scored by black
4. all dame points are set to white
5. if there are any white strings with only one liberty, then that
empty intersection may not be scored by white
6. all dame points are set to empty
Hopefully this will help clear up the confusion.
oh.. your point about seki
> What if the battling groups that are in seki aren't quite there yet?
> Maybe they contain more then two isolated dames between them, but the
> players didn't bother to fill those in? Doesn't this still qualifies as
> seki?
>
> Top left corner:
> .000.x0
> xx.xxx0
> 0xxx000
> 00000
It does not qualify as seki under this algorithm,
so white should play on one move further to ensure his stones
are not deemed captured by the algorithm.
under chinese rules white will have wanted to play this move
before passing anyway, as it gives white one point more.
tom