Computer chess via ham radio

My Morse code keyContinuing my list of "world firsts" (see Computer Camp), I think I was one of the first two people to ever use amateur radio (commonly called "ham radio") to play a chess game between two computers (the Morse code key I used at the time is shown to the left). Note 1

In 1968, I was a graduate student at MIT, doing a Ph.D. thesis in the field of Artificial Intelligence ("AI"), under the direction of Professor Marvin Minsky. An employee in the lab, Richard Greenblatt, had written a computer program to cause our PDP-6 mainframe computer (and later our PDP-10) to play chess, and it eventually became one of the most successful chess-playing programs of that era. The program was called "Mac Hack VI", and I've written about it in other entries, all of which have the keyword *CHESS. You can read all my stories about chess by starting with the entry "I resign". Then click on the keyword *CHESS in the footer, and continue to do that as you are taken from entry to entry in the keyword thread (this entry is the second). See the keyword list for other keywords you can use in a similar manner.

At some point, we received a letter from Dr. Gerald E. Tripard at the ETH (the "Eidgenössische Technische Hochschule"), in English the "Swiss Federal Institute of Technology", in Zürich, Switzerland (sort of the Swiss equivalent of MIT). Note 2 They had written their own chess-playing program, and having read reports of the Greenblatt program, they suggested that we play the programs against each other. Dr. Tripard, originally from Vancouver, BC (Canada) was doing a post-doc in the ETH Physics Department at the time (more about Dr. Tripard at the end of this entry).

I now need to back up a bit and describe the technology of the time, 1968. The Internet didn't exist. Its precursor, the ARPANET, didn't appear until the end of October, 1969, and at first, it covered only sites in the United States. An undersea cable allowed telephone calls to be made to Europe, but they were very expensive. Given that a chess game can last for hours, we could not afford to play these games by telephone. But ETH suggested that they might communicate with us via amateur radio, and Greenblatt discovered that I was a licensed amateur.

My ham radio rig - click to enlargeSo I brought my ham radio rig in to the lab. It's shown to the right (the Hallicrafters SX-100 short-wave receiver is on top, and the Heathkit Apache transmitter is on the bottom). Greenblatt and two others (Jack Holloway, and a third person who may have been Tom Knight) invested in a beam antenna for the 20-meter band, which they mounted atop a (nearly) 30 foot tower strapped to the side of the elevator-control-house on the roof of our ten-story building, 545 Technology Square (our lab was on the ninth floor, and the 10th floor was a machinery floor). The 20-meter band at that time was open to Europe (this varies with the 11-year sunspot cycle). Our CW (Continuous Wave, i.e. Morse code) power of 180 Watts, along with a highly directional antenna at that height, gave us quite a decent signal.

At the other end, the picture was not as pretty. The radio amateur at the ETH, whose radio call letters were HB9AFT, had only a 60 Watt transmitter, and their antenna was a fairly low-lying, relatively non-directional dipole. That meant that their signal, received at our end, would be pretty feeble. But even worse, they had access to the computer only on weekends, the worst possible time to try to establish radio contact. Weekends are when the largest number of radio amateurs get on the air, and the interference of powerful competing signals rises to a peak.

Amateur radio operators can modulate their voices onto the radio frequency "carrier" signal in various ways: AM ("Amplitude Modulation"), FM ("Frequency Modulation"), or SSB ("Single Sideband Supressed-carrier"). All of these support ordinary voice communication. But under difficult conditions, with weak signals and heavy interference, radio amateurs know that Morse code is much more intelligible, so that's how we chose to communicate. Hams call this "CW" (for "Continuous Wave"), or sometimes "A1" modulation.

In order to be able to locate the weak signal from Switzerland, we agreed on a particular frequency in the CW (Morse code only) section of the amateur "20 meter" band. We exchanged letters (a couple are shown below) to set up a communication methodology. Specifically, we chose 14.040 MHz, and we were able to briefly communicate with HB9AFT at 1354 GMT on Saturday, October 26, 1968 (9:54 AM Eastern Daylight Time). The log book notes that we were communicating with a student named "Helmut", but from the letters, we can see that his name was spelled "Helmuth". He was the licensed radio amateur on their end, and had to travel 150 Km to get to the ETH for these games. And since it takes two to communicate, I have to share with Helmuth the distinction of being the first to ever use amateur radio to play a chess game between two computers.

On our first try, we found that interference from strong local signals was intense. When another nearby radio signal came in on top of us, we attempted to change our frequency slightly to get away from it, but after numerous such frequency-shifting episodes, we lost their signal entirely. There seemed to be no possibility of completing an entire chess game under those conditions.

Greenblatt, however, had suggested that we fix the frequency of each transmitter, and never deviate from it. We could do so most accurately by using a quartz crystal to set the transmitter frequency at both ends, which would allow much greater accuracy than could be obtained with the dials of our transmitters' VFOs ("Variable Frequency Oscillators").

The transmitter's SPOTTING buttonIn addition, my Apache transmitter had a "spotting" button (shown to the left above the "Heathkit" logo and the band selection knob), which allowed me to feed a tiny bit of my own transmitter's signal back to my receiver. This allowed for accurately tuning the receiver to the transmitter frequency (when using the VFO, the transmitter frequency would slowly drift during the multiple hours it took to play a game). With matching crystals, our transmission frequency would be absolutely stable, and exactly the same as the frequency being transmitted in Switzerland. This would allow me to infallibly pick out their signal from all the interference. Greenblatt communicated this idea to Switzerland, and both ends eventually bought crystals at identical frequencies.

And it worked. At 1500 GMT on Sunday, October 27, 1968 (10:00 AM Eastern Standard Time), we successfully established contact with station HB9AFT, and in a 15-minute contact, determined to proceed with a chess game between our two computers. About an hour later, 1602 GMT (11:02 AM Eastern Standard Time), we began a game between the two machines that lasted about three and a half hours.

Here's how it worked. Moves were sent and received in Morse code, by me (I was the only person licensed to operate the transmitter). We used "algebraic" chess notation (e.g. "E2E4"), as opposed to the "descriptive" notation more commonly used in the United States at the time (e.g. "P-K4", "Pawn to King-4"). That meant that all moves were exactly four characters long, letter-number-letter-number. Each move, on whatever side, was sent in Morse code about ten times in succession, and then confirmed by being repeated multiple times by the receiving side.

We initially thought that if we were hit by strong local signals right on top of our own frequency, we would just have to wait them out. With no frequency changes, at least we wouldn't lose the other side, as they would be in the same place when the interfering signal ended. But in fact, with the above method of repeating each transmission multiple times, we found that we could work right through an interfering signal - we would hear pieces of the chess move in the gaps between the Morse characters of even a powerful interfering signal. We would often hear single characters - "that's an 'F', I think", "I've got a five", and so on, while scanning the chess board for legal moves using those fragments.

And so unrolled what I believe to be the first ever chess game played between two computers via amateur radio. When it was over, I typed out the game (which had been preserved by the computer) in a modified descriptive notation. Radio amateurs are required to keep a logbook of all transmissions, and I taped the game printout to the back of my logbook page.

The relevant page of my log is shown below. My own call letters at the time were WA2IHH, although operating in Massachusetts (not my home location), I used the call WA2IHH/1, indicated in the logbook by the notation "X/1". All dates and times in the log are in Greenwich Mean Time ("GMT"). Reading the log entries below, recall that the call letters of the ETH students in Switzerland were HB9AFT.

The columns in the logbook, left to right, are:


My log entries

Click to see the whole gameThe start of the game printout, taped to the back of the above page, is shown to the left. Click on that picture (or the next link) to see a printout of the entire historic game. You can see that I noted over each column which computer it represented, writing "ETH" over the left-hand column (we allowed them to move first), and "MAC HACK 6" over the right-hand column.

You might note that my spelling of the name of our program was inconsistent. In the log entry above, I spelled it "MACK HACK 6", and in the game printout to the left, I wrote "MAC HACK 6". I don't know if we ever standardized the spelling, but searches on the internet seem to show that the spelling "Mac Hack VI" is the most common. The game lasted about three and a half hours, and ETH resigned after 41 moves on each side.

Each of the programs made use of standard opening moves from "Modern Chess Openings" and other books of chess openings during the early part of the game, as opposed to computing its moves. Note 3 As a result, the game stayed in the "book" for 13 moves, considerably longer than usual. Click the next link to see a letter Greenblatt wrote to the ETH after the game. The ETH team was very happy with the performance of their program, which I think was a much "younger" program than Greenblatt's.

After some work on both programs, two more games were played via ham radio on November 16, 1968. Click the next link to see a scan of games 2 and 3, as they are taped into my amateur radio log. As the comments show, in game 2, both programs were allowed to use their books of openings. In game 3, the ETH program (which was apparently called "Charly") was allowed to use its opening book, while the use of the book was turned off in the MIT program, which nevertheless still won the game.

Our ability to communicate using Morse code in an environment of low signal strength and extremely high noise was very interesting. It supported the idea that with proper encoding, one can communicate under the worst possible conditions of Signal-to-Noise ratio ("SNR"), although the communication will be at a low bit rate. And indeed, although we had plenty of free time while the computers were "thinking" (the first game took three and a half hours), we got in very little extraneous conversation with the ETH side during the games. Even at a code rate of perhaps ten words per minute, and counting each move (e.g. "E2E4") as a "word", it took a minute to communicate one move (remember, we sent each move ten times, due to the low SNR).

Since there are eight possibilities for each rank and row (distinguished by exactly three binary bits), each move can be considered to require 12 binary bits of information. From that point of view, our effective data rate was about 120 bits per minute, or about 2 bits per second. This does not compare favorably with a modern 56 kilobits/second modem.

But actually, our data rate was even worse than that. Since in the mid game there are typically only about 30-40 or so legal moves, really only about five or six bits are needed to convey a move, on the average, as opposed to the 12 bits needed to convey all possible combinations of source and destination square. That's why we were able to hear the move in single-character fragments, and assemble the pieces into only one possible legal move. But it also means that our effective data rate was only about one bit per second!

I was very impressed that Greenblatt, who was not a ham radio operator, was the one who thought of the idea of fixing both our frequencies with crystals, and working through the interference. It was what made the games possible, and I didn't think of it myself. In fact, when he proposed the idea to me, I didn't think it would work. Note 4

The Morse code keyer interfaceOne final note of interest: Greenblatt was also the primary author of the multi-user operating system we used on our computer, called "ITS" (for "Incompatible Time Sharing"). Since he controlled the operating system, he was able to add support for an automated Morse code keyer to it. This required programming at the lowest level of the operating system (the clock interrupt level), and adding an I/O instruction that keyed a relay. This came out at an interface point mounted to the right of my transmitter. There's a picture of it to the right, and you can see it in context, to the right of the transmitter, in the picture above. Note 5

Thus, I didn't even have to send my own morse code. I just typed in whatever I wanted to transmit, and it was sent out by the computer, with perfect timing. I even wrote "macros" that enabled me to send pre-canned text with a single keystroke. For instance, transmissions start with the call letters of the station you are calling, followed by "DE" ("from"), and then your own call letters. Thus, all our chess moves started with the fixed string:


But we did have to receive the code by ear. In that high noise environment, an automatic receiver could not have worked. We were picking a faint signal of one particular pitch out of a host of much stronger signals of similar (and sometimes even identical) pitch.

As I noted at the beginning of this entry, I've already written other stories about the "Mac Hack VI" program, about games it played against human opponents in chess tournaments (which was how it was given a numerical ranking), and about games it played against opponents in the lab. You can trace through all of them by starting with the entry "I resign". Then click on the keyword *CHESS in the footer, and continue to do that as you are taken from entry to entry in the keyword thread (this entry is the second).

My chess board display on the DEC 340My only direct involvement as a programmer was to create a graphical chessboard image for the DEC 340 display (shown to the left). The 340 was a point-by-point display, and initial attempts to show an entire chess board flickered rather badly. I pointed out that the image would be improved by driving the display in its so-called "incremental" mode, in which it made mostly very short (and hence fast) motions from display point to display point.

Having made the suggestion, I coded it up myself, and Greenblatt incorporated it into his program. The display still flickered, especially when it included a long game listing along with the board display, but it was better than before.

Having no other involvement in the actual creation of the program, I was very pleased to be able to provide my services as an amateur radio operator, and I think the games we played against "Charly" at the ETH were among the many historic firsts attained by Greenblatt's program.

Just below are links to some of the letters we exchanged with the ETH in order to set up the games discussed above.

ETH spec on how to attempt communication

July 18, 1968 letter from G. Tripard

October 16, 1968 letter from G. Tripard

Letter from Richard Greenblatt after the initial game

While writing this blog entry, I searched for, found, and contacted Dr. Gerald Tripard, whose post-doctoral research at the ETH involved designing the magnets for a cyclotron they were building. His group had the computer on weekends to do the necessary calculations, and they used some extra weekend computer time for their work on chess. Dr. Tripard wrote the tree-search logic in the program, which was also worked on by Gerhard Rudolf and Werner Joho.

Click here to see a July, 2010 letter from Dr. Tripard.


Next in blog     Blog home     Help     Next in memoirs
Blog index     Numeric index     Memoirs index     Alphabetic index
© 2010 Lawrence J. Krakauer   Click here to send me e-mail.
Originally posted July 1, 2010
Updated July 14, 2010 with information received from Richard Greenblatt
Slightly updated January 13, 2011, to link to other stories with the *CHESS keyword
Chess board display image added June 16, 2011

Footnotes (click [return to text] to go back to the footnote link)

Note 1:   The "amateur radio" part of this claim is critical. It is claimed that the first chess game between two computers was played over nine months in 1966-67, by telegraph. It was played between the Kotok-McCarthy progam at Stanford University, and a program at Alexander Kronrod’s laboratory at the Moscow Institute for Theoretical and Experimental Physics (ITEP). See http://en.wikipedia.org/wiki/Kotok-McCarthy   [return to text]

Note 2:   The sister institution of the ETH is the École Polytechnique Fédérale de Lausanne (EPFL).

I love the way the the name of the Eidgenössische Technische Hochschule rolls off my tongue. Despite German not usually being a particularly smooth language, the name is to my ear more euphoneous than the rather staccato "Massachusetts Institute of Technology".

The word "Hochschule" (literally, "high school") is feminine, so the definite article (the version of "the") used is "die" (pronounced "dee"). Thus "the Swiss Federal Institute of Technology" is "die Eidgenössische Technische Hochschule". With the German language "case" system (see my blog entry German article and adjectival inflections), the endings of the parts of the name vary with case. Thus in, for instance, the genitive case, to say "of the Swiss Federal Institute of Technology", you'd say der Eidgenössischen Technischen Hochschule" (note the different article and the boldfaced endings). The first time I saw this I was rather startled - I had thought that a name was a name, and never varied. Not in German.   [return to text]

Note 3:   In an e-mail message of July 6, 2010, Richard Greenblatt wrote, "The Book for Mac Hack VI was prepared by Larry Kaufman, then a national master (and student at MIT) and who has been a chess journalist for these many years to the present. The book was very much prepared with the idea of trying to get the machine into the kind of positions it would play well (normally 'open' ones). So, except for one line which the machine would play with either color, all other lines carried an implicit knowledge of which side the machine was playing and therefore required only one move (the move it is to play). This vastly cuts down the size of the book required; as I recall there were about 8K moves in the book, total. This is very similar to the way the alpha-beta algorithm cuts down the number of moves the program has to look at in the search (assuming selection of a 'good' alternative first or at least early)."   [return to text]

Note 4:   It turns out that Richard Greenblatt had more of a background in amateur radio than I recalled. He wrote, "Although I was not a licensed Amateur Radio operator, I actually had quite a bit of experience in Amateur Radio and related fields, having built (with my friend from high school) components like transmitters and amplifiers from parts of old TV sets, having had a Hallicrafters Communication Receiver thru high school, and having spent a lot of time in a particularily well endowed radio repair shop reading various literature. So it's not too surprising that I had a basic feel for bandwidth vs. noise."   [return to text]

Note 5:   Again, from Richard Greenblatt: "The 'code' device was motivated by the desire to really learn Morse code and get an official license as well as being used for playing chess by ham radio, so we had it hooked to a low power FM transmitter and you could take code practice via any FM radio. I got my code speed up into at least the thirties, but unfortunately, did not program numbers and punctuation into the stream initially. Once I corrected this, it was too much trouble to learn them up to speed, so I never got an official amateur license to the present day."   [return to text]