Daniel Bump, a mathematics professor at Stanford, works on a program called GNU Go in his spare time. “You can very quickly look at a chess game and see if there's some major issue,” he said. But to make a decision in Go, he said, players must learn to combine their pattern-matching abilities with the logic and knowledge they have accrued in years of playing.
One measure of the challenge the game poses is the performance of Go computer programs. The past five years have yielded incremental improvements but no breakthroughs, said David Fotland, a programmer and chip designer in San Jose, California, who created and sells The Many Faces of Go, one of the few commercial Go programs.
Part of the challenge has to do with processing speed. The typical chess program can evaluate about 300,000 positions in a second, and Deep Blue was able to evaluate some 200 million positions in a second. By mid-game, most Go programs can evaluate only a couple of dozen positions each second, said Anders Kierulf, who wrote a program called SmartGo.
In the course of a chess game, a player has an average of 25 to 35 moves available. In Go, on the other hand, a player can choose from an average of 240 moves. A Go-playing computer would need about 30,000 years to look as far ahead as Deep Blue can with chess in three seconds, said Michael Reiss, a computer scientist in London. But the obstacles go deeper than processing power. Not only do Go programs have trouble evaluating positions quickly; they have trouble evaluating them correctly. Nonetheless, the allure of computer Go increases as the difficulties it poses encourages programmers to advance basic work in artificial intelligence.
“We think we have the basics of what we do as humans down pat,” Bump said. “We get up in the morning and make breakfast, but if you tried to program a computer to do that, you’d quickly find that what’s simple to you is incredibly difficult for a computer.”
The same is true for Go. “When you’re deciding what variations to consider, your subconscious mind is pruning,” he said. “It’s hard to say how much is going on in your mind to accomplish this pruning, but in a position on the board where I’d look at 10 variations, the computer has to look at thousands, maybe a million positions to come to the same conclusions, or to wrong conclusions.”
Reiss, an expert in neural networks, compared a human being’s ability to recognize a strong or weak position in Go with the ability to distinguish between an image of a chair and one of a bicycle. Both tasks, he said are hugely difficult for a computer. For that reason, Fotland said, “writing a strong Go program will teach us more about making computers think like people than writing a strong chess program.”
参考资料:百度搜索