Instructions for this version of Othello

  • First of all, you need to know how to play Othello (also called Reversi)...

  • In this version, Black always moves first.  You can choose whether you or the computer moves first (with black).

  • Touchscreens: using touch seems to work on laptops at all magnifications as well as Android phones.  However, it works only if you do not magnify the screen on an iPhone and iPad.

  • The Check program button should reveal who wrote the computer player and its title.

  • The Difficulty drop-down tells the computer player how deep (in "plies") to search maximally.  In other words, if this is set to, say "Medium-hard (ply=3)" then the computer player will look no deeper than 3 moves ahead.  Even if "ply=3" is set, the computer may not have enough time to search that deeply, since that is dependent upon how much CPU time you allow the computer to spend on its searches.

  • The Max CPU-time drop-down sets the maximum amount of CPU time (in seconds) that you will allow the computer player to use in its searches.  The computer player program will be terminated if a) it exceeds the maximum set CPU-time, or b) it exceeds, in clock (elapsed) time, twice that amount.  In other words, if this drop-down is set to, say, 5 seconds, then the program will be terminated after 10 seconds from the beginning of its execution, or after consuming 5 seconds of CPU time, whichever comes first.  If the computer running the program is busy running other programs, you are indicating that you do not want to wait more than twice the time set (in this case: 10 seconds) to receive the computer's move.

  • The computer program will execute the following steps to insure that it has a move, no matter how long you give it. First, it will calculate its best move as if the maximum ply was set to 0.  This takes a very short amount of time, and it will send back this move as its best guess so far.  Then it will try ply=1 and if it hasn't run out of time, it will send that move, and then try to get to ply=2, and ply=3 until the maximum ply that you allow it.  Each deeper ply attempt will take it longer.  The Othello system -- the GameDriver program -- will use (transmit to your screen) the latest answer it gets from the computer player before it finished successfully or was terminated for exceeding time limits.

  • Notice the trade-off between Difficulty and Max CPU-time:  You may allow the computer to search up to ply=6, but unless you give it enough time, it may only be able to search to, say, ply=4.

  • Ply?  What does ply mean?  Setting "Easy (ply=0)" means allowing the computer to choose a random move from amongst the currently legal moves it has available, without any evaluations.  Setting "ply=1" means evaluating each of the computer player's current possible moves, but without looking at any of your countermoves.  Setting "ply=2" means looking at every one of its possible moves, and then every countermove you can make, and choosing the best if its moves from the evaluation of each of the resulting boards.  Etc.  If there are 4 possible moves for the computer player, then ply=1 means just evaluating those 4 boards without looking at any future countermoves.  If for each of the 4 possible moves, there are 7 countermoves, then ply=2 means evaluating 4 x 7 = 28 boards.  And this number rises very quickly as the depth is increased.

  • Something to notice: After the computer has made a move, scroll down to the "Last Message" area, some results from the latest computer move will be displayed there.

  • Please send bug reports to: pbrooks@stuy.edu