Coko

Home * Engines * Coko

Coko, (COKO III) a chess program by Dennis Cooper and Ed Kozdrowicki which competed the first four ACM North American Computer Chess Championships, ACM 1970, ACM 1971, ACM 1972 (Coko III) and ACM 1972 (Coko IV). Coko, the Cooper-Kozdrowicki chess program was written in Fortran as a highly selective tree searcher in the spirit of a Shannon Type B program using a tree pruning system (TPS) consists of a set of commands designed for programming heuristic tree searches.

=Descriptions=

Abstract
COKO III: The Cooper-Koz Chess Program, Communications of the ACM, Vol. 16, 7

COKO III is a chess player written entirely in Fortran. On the IBM 360-65, COKO III plays a minimal chess game at the rate of .2 sec cpu time per move, with a level close to lower chess club play. A selective tree searching procedure controlled by tactical chess logistics allows a deployment of multiple minimal game calculations to achieve some optimal move selection. The tree searching algorithms are the heart of COKO's effectiveness, yet they are conceptually simple. In addition, an interesting phenomenon called a tree searching catastrophe has plagued COKO's entire development just as it troubles a human player. Standard exponential growth is curbed to a large extent by the definition and trimming of the Fisher set. A clear distinction between tree pruning and selective tree searching is also made. Representation of the chess environment is described along with a strategical preanalysis procedure that maps the Lasker regions. Specific chess algorithms are described which could be used as a command structure by anyone desiring to do some chess program experimentation. A comparison is made of some mysterious actions of human players and COKO III.

Board Representation
Figure 2 from COKO III: The Cooper-Koz Chess Program explains COKO's 10x12 Board Chess environment : Chess environment representation: minimal game board. (a) The chessboard represented by a linear array. (b) Representation of pieces, empty squares and border squares. (c) Move directions for King and Queen. (d) The Knight dictates that two rows of border squares surround the 8 X 8 game board. Columns 10 and 1 are considered adjacent.

Search
As described by Cooper in the 1971 Panel, Coko III does not use Alpha-Beta: Although the alpha-beta procedure is a great time saving method, it is unclear at this stage of program development what the full significance of applying such a method to a tactical-strategical game tree would be. Coko III does save the chess tree with periodic pruning to allow for the addition of more branches.

Man-Machine Studies
International Journal of Man-Machine Studies

The performance capabilities of the best computer chess programs are compared with their human counterparts with emphasis being placed on machine behavior limits. A grandmaster usually spends a lifetime collecting knowledge or information about the game. Some of this knowledge is given to COKO in the form of a 12 000-line FORTRAN program. Using this knowledge COKO plays very poorly but at the super rate of approximately one move/see. The use of a brute-force selective tree-searching procedure yields an order of magnitude improvement in performance at the standard rate of 3 min/move. Perhaps three orders of magnitude additional improvement is needed to defeat the world champion, a gap which must be bridged, if ever, by programming more chess knowledge into the machine. This paper discusses the “tree-searching catastrophe” as a natural phenomenon that plagues selective tree searching for both man and machine. In addition so-called “interminimal-game communication” is considered as a natural, powerful procedure frequently used by humans to guide their selective search and as a point of emphasis for future development. It is concluded that COKO's development is just beginning, with no immediate barriers to progress, and no lack of ideas for improvement. At present COKO combines brilliant solutions to individual board position puzzles with unimaginable blunders.

=Mate in one?= During the ACM 1971, Coko III offered a pawn versus Genie which, if accepted, would permit a mating sequence 17 plies deep. The pawn was taken, mate was announced, and the predicted line was followed, until ... 8/pp6/2p2p2/6p1/1P6/2Q1P3/k1K2PPP/5B1R 8/pp6/2p2p2/6p1/1P6/2Q1P3/k1K2PPP/5B1R w - - 0 38

Apparently due to a bug, Coko III found other moves better than mate in one and threw the win ... [Event "ACM 1971"] [Site "Chicago"] [Date "1972.08.03"] [Round "2"] [White "Coko III"] [Black "Genie"] [Result "0-1"]

1.d4 d5 2.Nf3 Nf6 3.Bg5 Bg4 4.Nc3 Ne4 5.Ne5 Be6 6.Nxe4 dxe4 7.c4 Nd7 8.Nxd7 Bxd7 9.e3 f6 10.Bf4 Be6 11.Qh5+ Kd7 12.d5 Bg8 13.Qf5+ e6 14.dxe6+ Bxe6 15.Qxe4 c6 16.Rd1+ Ke8 17.Rxd8+ Kxd8 18.Qxe6 Bb4+ 19.Ke2 Re8 20.Qg4 g6 21.Qh4 g5 22.Qxh7 Be7 23.Qd3+ Kc8 24.Bd6 Kd7 25.Bxe7+ Kxe7 26.Qh7+ Ke6 27.Qe4+ Kd6 28.c5+ Kxc5 29.Qd4+ Kb5 30.Kd1+ Ka5 31.b4+ Ka4 32.Qc3 Rad8+ 33.Kc2 Rd2+ 34.Kxd2 Rd8+ 35.Kc2 Rd2+ 36.Qxd2 Ka3 37.Qc3+ Kxa2 38.Kc1 f5 39.Kc2 f4 40.Kc1 g4 41.Kc2 f3 42.Kc1 fxg2 43.Kc2 gxh1=Q 44.Kc1 Qxf1+ 45.Kd2 Qxf2+ 46.Kc1 Qg1+ 47.Kc2 Qxh2+ 48.Kc1 Qh1+ 49.Kc2 Qb1+ 50.Kd2 g3 51.Qc4+ Qb3 52.Qxb3+ Kxb3 53.e4 Kxb4 54.e5 g2 0-1

=Mater= According to Monroe Newborn in 1975, the chess mating combinations program Mater by George Baylor and Herbert Simon, initially written in IPL V, was ported to Fortran and incorporated into Coko :

MATER is written by George Baylor and Simon in FORTRAN. It is able to search to great depths for checkmates. MATER is presently part of the Cooper-Kozdrowicki program. While MATER is an interesting program in its own right, the opportunity to checkmate one's opponent plays a relatively small computational part of the game of chess, and its inclusion in the Cooper-Kozdrowicki program does not seem to add measurably to the program's strength.

=Publications=
 * Edward W. Kozdrowicki, John S. Licwinko, Dennis W. Cooper (1971). Algorithms for a minimal chess player: A blitz player. International Journal of Man-Machine Studies, Vol 3, 2
 * Edward W. Kozdrowicki, Dennis W. Cooper (1973). COKO III: The Cooper-Koz Chess Program. Communications of the ACM, Vol. 16, 7
 * Edward W. Kozdrowicki, Dennis W. Cooper (1973). COKO III and the future of inter-snap judgment communication. Proceedings of the ACM annual conference
 * Paul Rushton, Tony Marsland (1973). Current Chess Programs: A Summary of their Potential and Limitations. INFOR Journal of the Canadian Information Processing Society Vol. 11, No. 1, pdf
 * Edward W. Kozdrowicki, Dennis W. Cooper (1974). COKO III: The Cooper-Kozdrowicki chess program. International Journal of Man-Machine Studies Vol. 6, 6

=External Links=
 * ACM COMPUTER CHESS by Bill Wall
 * Classic Computer Chess - ... The programs of yesteryear by Carey, hosted by the Internet Archive

=References= Up one level