Zebra


Being a computer freak, I decided to start working seriously on an Othello playing program in June 1997. I decided to give the program the name "Zebra". I already had created such a program two years earlier, but its weak play made it necessary to discard almost all the old code. The program has since then improved a lot, and the only hopes I have of winning against it now is that I will discover some obscure search bug in the code... so when I do win against it, I know that there is some debugging to be done. Except for terribly buggy versions, I have never beaten Zebra. The closest I have come is a drawn position with 21 empty... which I (of course) failed to convert and lost 29-35 instead... bummer. Zebra is now strong enough that it is extremely unlikely that I get this close again; not that this is an overly strong statement - I get crushed by all strong human players as well...

A Windows version of Zebra can be downloaded from the download page. This is a joint project with Lars Ivansson who has created the GUI.

There is an Android version of Zebra written by Alex Kompel.

The Zebra source code is released under the GPL: Download (last updated on October 2, 2006)

Short facts

History

Performance

Zebra has played in some tournaments for computer programs. Here is how it has performed.

GGS open (April 2003)3rd/12
GGS rand open (March 2003)5th/16
GGS open (January 2003)3rd/16
GGS rand open (December 2002)3rd/19
GGS open (May 2002)5th/10
GGS Tamenori theme (March 2002)3rd-6th/13
GGS rand open (January 2002)4th/15
IOS rand open (August 1999)2nd-3rd/5
IOS open (May 1999)3rd/8
Princeton II (October 1998)3rd/13
IOS open (April 1998)3rd/15
IOS open (February 1998)2nd/15
Princeton I (October 1997)13th/15

Things to work on

  • Rare board configurations in some cases are not evaluated correctly due to lack of example positions in the game database which was used for creating Zebra's knowledge. This problem can in part be solved by developing an interpolation scheme to fill the knowledge gaps, Mark Brockington solved this problem in his program Keyano by using a neural net.
  • Credits

  • Michael Buro: For raising computer Othello to swindling heights.
  • Jan C. de Graaf: For giving me lots of computer time and inspiration.
  • Igor Durdanovic: For writing the Internet Othello Server.
  • Lars Ivansson: For much feedback and many interesting games.
  • Yves Lafon: For providing a rival program to keep up with when I started working on Zebra.
  • Fabien Letouzey: For many exciting games between Zebra and Turtle.
  • David John Summers: For letting me incorporate his stability code (which improved performance in lopsided endgames) and many weird ideas.
  • Ieuan Willisfor sharing many of his ideas.
  • Not to forget the numerous people who have played Zebra and its kid brothers and/or given comments and suggestions (OO1, zardoz, reveil, kenta and several others).


    Last modified July 18, 2011 by Gunnar Andersson

    gunnar@radagast.se