play | collected games | download |
Reversi, commonly referred to by its trademark name "Othello", offers all that one could ask of a board game. The board and rules of play are quite simple, yet the game is complicated and strategically rich. A well played game of reversi can be, well, "elegant" for lack of a better word. The game's simple rule set is and open invitation to students, professors and programmers to try their hand at building an othello AI. There are hundreds of othello applets on the internet today. The vast majority play rather poorly, but a handful are quite strong. Medusa is one of the strongest, perhaps the strongest, browser based othello program.
Applet | Level | Wins | Losses | Draws | Average Result |
---|---|---|---|---|---|
Ajax | Master | 4 | 2 | 0 | +1 |
Booby Reversi | 3 | 5 | 1 | 0 | +14 |
Cyrano | Master | 4 | 2 | 0 | +15 |
Javello | 7 | 2 | 0 | 0 | +44 |
Marvin | Nightmare | 1 | 0 | 0 | +47 |
Nakagawa Othello | 4 | 2 | 0 | 0 | +15 |
Reversi-Othello | Expert | 2 | 0 | 0 | +35 |
Rabbit Reversi | Rabbit | 2 | 0 | 0 | +28 |
Rory | Madeline | 2 | 0 | 0 | +49 |
Wolf Applet | Expert | 2 | 0 | 0 | +22 |
The table above shows the results of play against the applets I use as a test suite to guage Medusa's playing strength. Among them, Ajax, Cyrano, and Booby quite strong, the others somewhat less so. Each applet was set to play at its highest level, with the exceptions of Rory, Reversi-Othello, and Rabbit, which were set to the highest level at which they still play somewhat quickly on my machine. I think some of these games turned out to be, well, elegant.
The table below displays the results of games played against two popular desktop othello programs, WZebra and Forest. Both played with opening books disabled, and no randomness.
(Note: All of these games were played before Medusa employed an opening library, and with a slightly shallower search depth than that used in the current version of the program. Some of the weaker applets have "retired". Cyrano, I believe, is stronger than when I first encountered it. The games are, therefore, a bit dated.)
Program | Level | Wins | Losses | Draws | Average Result |
---|---|---|---|---|---|
WZebra | 4ply, last 12 perfect | 2 | 0 | 0 | +16 |
WZebra | 6ply, last 14 perfect | 2 | 0 | 0 | +10 |
WZebra | 8ply, last 16 perfect | 1 | 1 | 0 | -3 |
Forest3.7c | Specialist | 1 | 1 | 0 | +11 |
Forest3.7c | Expert | 1 | 0 | 1 | +9 |
Forest3.7c | Master | 0 | 0 | 2 | 0 |
Should you be interested, Medusa
The components of Medusa's evaluation function were calibrated using a small database of games played between the world's strongest othello programs, a random number generator, and time. At 5 ply Medusa selects the same moves as these programs roughly 65 percent of the time.
Medusa employs an opening library derived from Logistello's opening book. Early library moves are selected in proportion to the frequency with which they occur in the library--my intention being that opening play be somewhat varied, not necessarily optimal. After move ten, book moves are intended to be the best ones possible. Opening names are based on the list compiled by Robert Gatliff.
Medusa has a minimum 9-ply mid-game lookahead, and solves the endgame at 16 empties. Estimated mid-game position values are displayed, but are not particularly accurate. This feature anticipates a revision of Medusa's evaluation function, which is not currently based on a numerical prediction of game outcome.
If you are trying to become a better Reversi player, I have two pieces of advise: 1) Play blitz games with human beings. Yahoo is a great place to find competition. 2) Download Gunnar Andersson's WZebra -- it is a masterpiece and it is free.
If you are working on your own Reversi program, I highly recommend you visit Thomas Wolf's site. It contains a wealth of information on how to go about writing a good Othello program. Mine (and I suspect others) would not exist without it.
Best of luck to you in your Othello pursuits, whatever they may be.
play | collected games | download |