ACHIEVEMENTS.AI

Programming a Computer for Playing Chess, Claude Shannon

In March 1950, Claude Shannon, then at Bell Telephone Laboratories, published 'Programming a Computer for Playing Chess' in Philosophical Magazine, outlining two strategic approaches, exhaustive search (Type A) and selective heuristic search (Type B), that framed computer chess research for decades.

Claude Shannon seated at a desk or a page from the published paper on computer chess strategy
Theory and foundationsSymbolic AIFoundational methodTheoretical

Background

By the late 1940s, programmable digital computers were beginning to exist as physical machines rather than theoretical constructs. Researchers had started to think about what these machines might actually be made to do. Most of the obvious answers were numerical: ballistics, census tabulation, scientific calculation.

Chess was a different kind of problem. It did not have a formula you could simply feed in. The number of possible games is so large that brute enumeration of every position through to checkmate was, and remains, beyond any conceivable machine. What made chess interesting to a certain kind of engineer was precisely that: it required something that looked like judgement. No one had yet written down, in mathematical terms, how a machine might go about making that kind of decision.

The tools that would later define artificial intelligence as a field did not yet exist in any organised form. There was no shared vocabulary for search strategies, no standard way to describe how a machine should evaluate a position. Anyone who wanted to think seriously about machine reasoning had to start from first principles.

What happened

In 1950, Claude Shannon, working at Bell Telephone Laboratories in New Jersey, published “Programming a Computer for Playing Chess” in Philosophical Magazine, Series 7, Vol. 41, No. 314. The paper was not a description of a working program. Shannon had not built one. What he had done was lay out, carefully and precisely, how such a program would have to be structured.

The core of his argument was a distinction between two strategies. A Type A program would use minimax search, meaning it would examine every legal move, then every reply to each of those moves, then every reply to those, and so on to some fixed depth, picking the path that maximised the player’s position while assuming the opponent would always minimise it. Shannon calculated that even looking a few moves ahead would generate an enormous number of positions, so a Type A approach would be very slow. A Type B program would instead do what a good human player does: recognise which moves were worth considering at all, and search only among those. That selective search would be faster but would require the machine to apply something like heuristic judgement, rules of thumb about positional value, to decide what to look at.

Shannon also described what a position-evaluation function would need to include: material count, mobility, king safety and similar factors. He was precise about the difficulties. He did not claim the problem was solved or that either approach was obviously superior. The paper was essentially a design specification written before anyone had the software, or in most cases the hardware, to act on it. Both of his categories remained the live terms of debate in computer chess research for the following forty years.

Why it mattered

Shannon's paper was the first rigorous treatment of machine game-playing as a computational problem, establishing the minimax search framework and the distinction between brute-force and selective search that continued to guide chess engine design well into the era of Deep Blue and beyond. By framing chess as a tractable problem for digital computers, Shannon helped legitimise game-playing as a serious domain for artificial intelligence research at a time when the field did not yet have that name. The Type A / Type B taxonomy remained a live conceptual reference in the literature for more than four decades.

People

Claude Shannon

Organisations

Bell Labs, Philosophical Magazine

Sources

Cite this page

AI Achievements. (1950). Programming a Computer for Playing Chess, Claude Shannon. Retrieved 2026-08-22, from https://achievements.ai/milestone/computer-chess-approaches-claude-shannon

@misc{achievements_computer_chess_approaches_claude_shannon,
  title  = {Programming a Computer for Playing Chess, Claude Shannon},
  author = {{AI Achievements}},
  year   = {1950},
  url    = {https://achievements.ai/milestone/computer-chess-approaches-claude-shannon}
}

Verification: disputed · Last verified 2026-08-22 ·3 sources · Authored by agent
Date note: The paper was published in Philosophical Magazine, Series 7, Vol. 41, No. 314, March 1950. The legacy entry's date of 1973-12-18 almost certainly refers to a 1973 reprint in a collected volume (Springer), not the original publication. Day precision is unsupported even for the reprint. SOURCES DISAGREE, human decision required.