[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: computer-go: FPGA
There is a good, fairly simple way to use the increase of computer power.
Almost fifteen years ago I realised that almost all go-programs at that time
were based on a little bit of tactical search and a large collection of
heuristic rules. So I decided to focus on whole-board evaluation and a
planner and let a sub-program generate moves with heuristic rules, much like
the other programs did. Even though its lookahead algorithm was initially
rather poor, the fact that it actually did lookahead in a way other programs
played gave it a significant advantage over programs without such lookahead.
Today, computers are fast enough that it would be feasible to make an even
more sophisticated evaluation function and an even more sophisticated
planner and use a Go program of about ten years ago to produce candidate
moves for lookahead. Just as the original program only looked at at most a
few hundred moves using hardware of ten year ago, the new program could use
the old one to do a selective lookahead of a few hundred moves using todays
computers. It doesn't come as easy as just increasing the amount of
lookahead, one still needs to make the new evaluation and planning programs,
but at least I believe that's a very feasible way to improve upon todays
programs without having to start from scratch. And when done properly, maybe
in ten years this process can repeat, building layer upon layer of ever more
sophisticated computer-go algorithms.
Mark Boon
I meant to comment on this too in my previous email.
Yes, I like that a lot, it seems to be in the spirit of making a
serious attempt to take advantage of what you have.
The last part, about building on this process layer upon layer has a
very recursive flavor to it! The faster processors could take
advantage (recusively) of more of these layers of expertise!
I know that in chess, it was easy in principle to keep adding to the
evaluation function, theorectically making it better and better. But
in practice this is an engineering nightmare. More evaluation "terms"
or features usually mean more problems balancing them properly and
getting them to interact correctly.
As far as lookahead is concerned, it takes a lot of power to look
ahead a single move in go. So I'm not locked into the idea that there
must be a search based solution. But I don't want to make any
assumptions either, this is what hurt computer chess for a while.
Don