Originally posted by: DaveSimmons
^ it's definitely possible. Atari had a decent chess program for the 800 back in 1978 (1.79 MHz 6502 CPU) and games like Battle Chess and Chessmaster ran well on 8 MHz 80286 PCs.
I'm not a chess expert, and in fact don't play often or well, but I did a ton of research on the subject back in the early 90's when I was writing a neural net-driven backgammon program (a much harder problem domain than chess, imo). Popular chess programs that run or ran on Windows, Mac, etc., were/are able to challenge decent players. I'm characterizing here, because I don't recall the actual numbers, but let's say that a decent player is able to see 2-3 moves ahead on the board. By comparison a grand master can foresee 5-8 moves forward, or further. That's why you need supercomputer bandwidth to beat a grand master. The curve falls off pretty steeply, and I don't think Battlechess or any PC-based program like that will pose much challenge to a "good" player. Those programs cannot search more than 2-4 moves forward in reasonable time. Since they can't, they employ evaluation shortcuts, which I'm no longer equipped to discuss in detail, but which probably include ideas like those Cogman mentioned.
So you can optimize the search algorithms, data structures, reduce the subset of the tree that needs to be searched, etc., but it basically comes down to how fast you can build and search positions.
Backgammon, as a side note, has several orders of magnitude more possible positions than chess due to the randomizing factor of the die at each turn. We could never make searching work for backgammon. Heuristics worked but could only win at the beginner level. We turned to a neural network that was built and trained at USC and CMU by Justin Boyan and Marc Ringuette. It was pretty decent, but programs like TD-Gammon soon beat us using approaches based on genetic algorithms.