Reversi

I developed my first implementation of the Reversi game on BASIC 20 years ago. Since then, I ported it on each programming language I studied: Turbo Pascal with graphics library and Turbo Vision, C with the Windows API, C++ with the ClanLib, Java AWT applet, and Swing application with Java2D. Now I am ready to publish yet another implementation, on JavaFX Script.


Reversy 8×8

Reversy 10×10

This game allows to compete with one of the algorithms as well as to see how these algorithms compete with each other. The Sergey algorithm is based on the Minimax algorithm with a simple table of game piece weights where the calculation depth is 6. The Pavel algorithm is developed by my colleague, and I have got it from the official JavaFX site.

I run the algorithm competition during the past weekend. Below are the results:

  • Pavel versus Sergey: 5653 wins, 363 draws, 8605 losses;
  • Sergey versus Pavel: 8563 wins, 299 draws, 6612 losses.

In addition, I discovered that my algorithm is often wins, turning all the opponent’s pieces. The reason is that Pavel uses an algorithm to minimize available moves of the opponent. He promised to complete the evaluation function soon.

Would you like to join the battle of algorithms?

Filed under: game, graphics
Go to Source

Leave a Reply

You must be logged in to post a comment.