Home Site Map About The Site Contact Us Interact with other visitors!

CONSIDERING MOVES

People have been designing machines and programs to play games almost as long as computer code has been written. In 1946 British mathematician Alan M. Turing began designing a chess player on a souped-up code-breaking machine used by Britain during World War II. The computer became the first machine to play a full game of chess, albeit at an extremely slow beginner level.

Since then, many people have designed different types of programs and computers with varying degrees of success. The most recent and best game programs are interesting because they generally play their games quite well. But perhaps more interesting is that they achieve this level of performance by using techniques very different from those used by their human counterparts. In games such as chess, a human player will consider some tens (or perhaps hundreds) of positions when selecting a move. A machine, on the other hand, will consider billions, searching through many possible lines of play in the process of selecting an action.

Considering the far greater computational capacity of computers, how is it that humans can win at all? The answer is that although we look at a relative handful of successor positions, we look at the right handful. Emanuel Lasker, world chess champion from 1894 to 1920, was once asked how many moves he considered when analyzing a chess position. "Only one," he replied. "But it's always the best move."

A Computer calculates the best positions to consider by a process known as pattern matching. It is how we immediately identify the four-legged platform in a room as a table or the images in a police mug shot as those of the same person despite the different orientations of the front and profile views. An expert chess player compares a given chess position to the tremendous number of such positions that he has seen over the course of his career, using lessons learned from analyzing those other positions to identify good moves in the current game.

Pattern matching is a parallel process; if you had n computers, you could do it n times faster. For example, suppose you are trying to compare a particular chess position to the 100,000 positions that you have seen previously. Each comparison is in some sense independent: given 100,000 computers, you could do the overall comparison 100,000 times more quickly.

Searching is not an inherently parallel process; problems cannot be split up, because what you want to do next depends on what you just did. For Deep Blue, there is no preexisting list of positions that it evaluates. Rather it can examine a position only after it has constructed its predecessor

.......................................................................................

COMPUTER GAMES