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

Re: computer-go: Two ways to program a GO-engine




I just try to make a program that wins games.  I don't try to make
any part of it perfect, since that would take too long, and make
the program unbalanced.  I use perfect knowledge when it is
available (like ladder reading), but have to settle for heuristics in
many cases.  A program must have some knowledge in all areas, and perfection
is way too difficult.

I also don't study how humans play to try to model it in the program.  I
use whatever AI techniques seem useful to make good moves, without regard
for whether or not people use similar algorithms.

I just look at sample games and find the worst moves and find out why
the program made such a bad move, and fix it :)  A very unscientific,
engineering approach, but it gets the job done :)

So I think you need to add a third purpose, 

3.  Try to make a program that wins games.

-David Fotland (Many Faces of Go)

At 08:20 AM 10/3/00 +0200, you wrote:
>----- Original Message -----
>From: "Heikki Levanto" <heikki@xxxxxxxxxxxxxxxxx>
>> Vlad Dumitrescu <vladdu@xxxxxxxxxxxxxxxxx> wrote:
>> >> >   1. Try to make a program that achieves perfect or near perfect
>play.
>> >> >   2. Try to make a program that plays like the best human players.
>> >>
>> I, Heikki, proposed:
>> >>  3. Try to make a program that beats more and more of its opponents.
>> >>  4. Try  to make a program that learns to play go.
>
>I am sorry, I didn't express myself well enough. What I meant was that the
>main purpose for developing a Go program is one of the two: either to
>"solve" the game, or to study the human mind and its processes.
>
>