Norbert Gábor Papp wrote:
Thanks for your fast reply,but sorry, I don't really understand this...

The situation -> both player pass, end of the game, I need the score.

I want to remove dead-stones which means :
There is no known perfect algorithm for doing this in every case and it's a function of how good your program is. So if you figure out how to do it, please let us know.

Typically, some kind of local search is done and the details of how to do that vary from program to program. Some do it better than others. It's not trivial. Search the web, there are papers and articles about it.

If you use tromp/taylor scoring you don't worry about it. After 2 passes EVERY stone is considered alive. If there are dead stones then the opponent should not have passed. If you are asking because you want to implement monte carlo, you just play until there are no legal eye filling moves, then you pass. Then you score the board as is with no consideration of dead stones. It's very simple. Sometimes one side has no moves that fit this criteria but the other side does, so you just play until both players run out of non-eye filling moves, which gives 2 consecutive passes.

A reasonable but slow algorithm for identifying dead stones is to play a few hundred random games (without filling eyes) and if existing stones rarely or never survive they are dead with a high probability. This covers most of the simple and visually intuitive cases.


- Don


if (IsGameEnded) {
for (int i=0, int ,j=0; i<table.sizeX,y<table.sizeZ;i++,j++){
if dead(i,j)
  {

    table.remove(i,j);
  }
}
countterritories();
.
.
.

}
I'm interested in the function dead(), which is true when a stone is dead
after both player pass,and the game is ended.


2008/5/14 Jason House <[EMAIL PROTECTED]>:

That's a function of how smart your bot is. If you play until you only have
eye-filling moves, you can safely assume all of your opponent's stones are
alive, all your groups with two eyes are alive, and everything else is dead.
Note the asymetry - your opponent may use a different strategy.

If you use random playouts, you could compute the probability of specific
points being owned by each player, and use that for both passing and marking
dead stones.

There are many other variants that use life and death modules, but I'll
assume you don't have them yet

Sent from my iPhone


On May 14, 2008, at 9:10 AM, "Norbert Gábor Papp" <
[EMAIL PROTECTED]> wrote:

 Thanks! How can I identify dead stones?
I haven't seen algorithm for this, and it is a very important part of
a go program
2008/5/14, Don Dailey <[EMAIL PROTECTED]>:

This probably explains it better than I could:

 http://senseis.xmp.net/?TrompTaylorRules

- Don



Norbert Gábor Papp wrote:

Hi!

Can you tell me some algorithm to compute the score ? (Both players
pass,
and who is the winner...)

Thanks, Norbert


------------------------------------------------------------------------

_______________________________________________
computer-go mailing list
computer-go@computer-go.org
http://www.computer-go.org/mailman/listinfo/computer-go/

_______________________________________________
computer-go mailing list
computer-go@computer-go.org
http://www.computer-go.org/mailman/listinfo/computer-go/

 _______________________________________________
computer-go mailing list
computer-go@computer-go.org
http://www.computer-go.org/mailman/listinfo/computer-go/

_______________________________________________
computer-go mailing list
computer-go@computer-go.org
http://www.computer-go.org/mailman/listinfo/computer-go/


------------------------------------------------------------------------

_______________________________________________
computer-go mailing list
computer-go@computer-go.org
http://www.computer-go.org/mailman/listinfo/computer-go/
_______________________________________________
computer-go mailing list
computer-go@computer-go.org
http://www.computer-go.org/mailman/listinfo/computer-go/

Reply via email to