[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: brute force and knowledge
Hi
> i don't mean to start any bad karma in this group, but could we all just
> agree that john clarke has not made a strong point yet, and just move on?
> this talk of parallelism has hardly been forwarded well enough to make a
> good counter-argument.
OK - I'll summarise my argument and we can leave it there.
1) By "search" I mean "looking for the best move". I know that there are
plenty of chess programs that partition the game tree and parcel out the
work to n processors (e.g. Deep Blue). Some people want to reserve "search"
for minimax search, which seems a bit stingy to me.
2) Humans do not evaluate the entire board by minimax - even any kind of
parallelised minimax. This has been widely established by measuring
performance vs. time to make move. People just play too fast.
3) Humans do manage to choose good moves.
4) Humans are known to use massive parallelism e.g. for vision. (Remember your
vision processing uses the same mips as 10000 400MHz PIIs)
5) Humans excel at (visual) pattern matching.
6) Most "low-level" brain activity runs sub-consciously. In Jonathan
Schaeffer's book on Chinook (the world champion checkers program) he recounts
the story of a very strong checkers player who was in a car accident.
The player no longer has any recognisable consciousness - completely unable
to carry on a conversation, no longer able to do calculus, recognise old
friends, etc. but when the nurses sit him up in bed and put a game of
checkers in front of him he still beats all comers.
7) Ignore for now the slow conscious reading (tree search) of only a few
moves. How are those few good moves chosen? It seems there are two
possibilities:
a) Some simple processing (pattern matching?) repeated over the whole
board ( - brute force, my favoured option because it has a conceptual
simplicity.)
or
b) Some (presumably) hugely intricate whole board evaluation function
*not divisible into simple repeated units as in (a)*. This strikes me as
wildly unlikely, simply beacause such a function would be so hard
to learn, and because the go board is so symmetrical.
OK, that's it.
Regards
John Clarke
johnc@xxxxxxxxxxxxxxxxx
PS. As to Jeremy's question about "local maxima" from pattern matching
(i.e. patterns sometimes suggesting incorrect moves). Obviously this can't
happen if you store whole board patterns - but that will take up too much
memory. It's not clear to me that any more local pattern *always* suggests
a single -- always correct -- move. If there is such a pattern I'd love to
know it.
PPS. I have always suspected that a lot of people expected chess programs
to point the way to human level intelligence and were a bit disappointed
when they only turned out to be good at chess. I wonder if those same
expectations aren't being forced onto go -- "the branching factor is too high
so this time it'll show us what cleverness really is"? This time I believe we
need a different kind of dumb search, not cleverness.
PPS. I'll happily carry on this discussion, but OFF the list.