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

Re: computer-go: FPGA



>This reminds me of a question I've been meaning to ask.  How important
>is  the  speed of  hardware nowadays as   far as modern  or typical go
>programs are concerned?
>
>If one of the top   programs got to use   a computer 100X faster  than
>everyone elses in  a tournament, would its chances  of winning  go way
>up?

Many Faces would not get smarter unless I changed, since the levels are
set to do a certain amount of work, not search for a certain amount
of time.  If I changed it, it would get somewhat stronger, since it would read
life and death and local tactics more accurately.  But since I do very
selective
full board searches, it won't get much stronger without changing the
move generators and evaluation function.  There are still plenty of
positions that I misevaluates horribly, and making the computer faster
won't help this.

David


>
>
>Don
>
>



David,

That's a good understandable answer.  

I have always believed that  any program should be  designed in such a
way  that  it is   GUARANTEED  to  improve with   increasing computing
resources.  I think you accomplish  this indirectly by simply changing
your program over  time to adopt to the  latest and greatest hardware.
If you are not  doing this, then your  program must be returing a move
more quickly as computers get faster.

But I do  think this is  a desirable characteristic  for a  program to
have, if only we can figure  out how to do it.   But I concede that it
may be very difficult to do this well.

The most obvious way  is to add to the  search, but it's not clear how
to  do this effectively in  go.   Still it might be  useful  to take a
quick look at what happened in computer chess:

In the early days  of computer chess,  no one believed that looking  a
little deeper would  make any  difference,  it just seemed counter  to
intuition.   The very  first computers were  happy to  do  2  or 3 ply
searches and when they made bad moves  people laughed their heads off.
It was "easy" to see that looking a ply  deeper just wouldn't make any
difference because chess  was "just  way too  strategic."   But it was
soon  proven  that this was actually  a   totally false assumption.  A
computer doing 4 ply would totally crush a computer doing 3 ply!

What was  being  overlooked was that  a   single extra  ply  presented
numerous opportunities to avoid bad  moves, opportunities the previous
versions were oblivious to.  But human observers still focused on what
it couldn't do, and when  a bad move  invariably came along, it seemed
like absolute proof  that nothing had  "really"  or fundamentally been
improved.  And  yet that extra  ply really put the  machine in a whole
new playing class which  was discovered when people actually attempted
to measure the improvement!

Does any of this apply  to go?  I suspect  that one extra ply of  full
width depth would    improve the program, perhaps   significantly even
though it  might  appear that nothing   happened because this wouldn't
come close  to solving the  most laughable problems.   But  even if it
did, this is very  expensive considering the enormous branching factor
of go.

But in the early days of computer chess, we  very often identified the
wrong  problems to solve first and  actually chose  the ones that were
the hardest to solve   and   returned the   least benefit.  The    big
"breakhrough" was to simply do an efficient full width search and this
turned  out to be  extremely effective  because it addressed important
core problems, instead of worrying  about the romantic notions of deep
positional insight which we were foolishly focused on back then. 

I know a full width search is not feasible in this domain  and I am by
no means suggesting it.  I just wonder if there is something simple we
are  overlooking (in the same  way we missed  the "obvious" full width
search in computer chess and denounced it for years before discovering
it's power.)  If there is something like this  in go, it's not obvious
at all, just as it wasn't back then in chess.


Don