In March 1950 Claude Shannon of Bell Labs published “Programming a Computer for Playing Chess” in the Philosophical Magazine (Series 7, Volume 41, pp. 256-275). Written before any working chess program existed, it was the first technical paper to set out how a machine could play the game, and almost every chess engine since has been built on the framework it described.
Shannon proposed that a program represent the board, generate legal moves, and assign each resulting position a numerical score using an evaluation function that weighed material, mobility, pawn structure, and king safety. To choose a move, the program would look ahead several moves and assume the opponent plays its best reply at each step, a procedure now called minimax. Shannon estimated that a complete game tree contained on the order of 10 to the 120th power variations, far too many to search exhaustively, which is why an approximate evaluation function and limited look-ahead were essential.
He distinguished two strategies. A “Type A” program examines every move to a fixed depth by brute force; a “Type B” program prunes the search to a handful of plausible moves and looks deeper along promising lines, more as a human does. The tension between these two approaches ran through the next half century of computer chess and was finally settled when Deep Blue’s brute-force descendant beat Garry Kasparov in 1997.
The Computer History Museum hosts a scan of the original paper as part of its “Mastering the Game” chess collection.