[computer-go] creating a "random" position

Erik van der Werf erikvanderwerf at gmail.com
Mon Jul 9 09:56:45 PDT 2007


On 7/9/07, George Dahl <george.dahl at gmail.com> wrote:
>
>
>
> On 7/9/07, Erik van der Werf <erikvanderwerf at gmail.com> wrote:
> >
> > On 7/9/07, George Dahl <george.dahl at gmail.com> wrote:
> > > I think this is what I want.  Thanks!  So I might have to repeat this
> > > a few hundred times to actually get a legal position?
> >
> > Are you aware that nearly all of these positions will be final positions?
> >
> > So I'll repeat my question: why do you need any of this? If you only
> > need final positions it's probably much better to take them from real
> > games, and if you actually need middle game positions you will have to
> > use a different procedure...
> >
> > E.
> > _______________________________________________
> > computer-go mailing list
> > computer-go at computer-go.org
> > http://www.computer-go.org/mailman/listinfo/computer-go/
> >
>
>
> Won't the final positions be much more likely to be rejected since they are
> much more likely to be illegal?

Sure, but that does not necessarily matter because there are many more
end- than middle-game positions. The reason I brought it up is that I
remembered a statement by someone (sorry forgot the source, maybe John
or Gunnar remembers) that from all legal positions nearly all can be
considered final. Of course one could argue about what makes a
position final, obviously not all borders will be nicely closed and
generally there will still be some points to be gained, but I think
the main idea was that at that point the winner is relatively easy to
determine (so one side would normally resign). This also makes sense
if you simply look at the expected number of stones on the board.


> What is your claim about the distribution
> of the number of stones on the board with this scheme?

Simply that for most interesting purposes you will have too many of
them on the board. Further, depending on the purpose, one might argue
that there are more interesting distributions to sample from (e.g.,
you could sample from all positions ever played by strong players on
KGS).


>  I am hoping to use this method to help generate training data for a
> learning system that learns certain graph properties of the board that can
> also be computed deterministically from the board position.  I know that
> might sound crazy,

Not to me ;-)

> but it is working towards the eventual goal of creating
> feature extractors for Go positions.  By learning to map Go positions as an
> array of stones to Go positions as graphs of strings (instead of just
> mapping them with a hand coded algorithm) I can take intermediate results in
> the learner's computation and use it as a feature for another learner.

Well, I'm not sure whether this way you will be able to beat hand
coded algorithms, but it's certainly interesting to try. In any case I
would still think that, to make a strong program, it's better to
sample from real games, or maybe do both to see if it makes much
difference.

Erik


More information about the computer-go mailing list