Havannah

   

Rules

Havannah is a connection game. It is similar to the game Hex, however the winning condition is different.

The game starts on an empty board. Players move in turn to place one stone on an empty cell.

The game is won by the player who is able complete one of the following connections with his stones:

  • a ring or
  • a bridge or
  • a fork.
  • A ring is a chain of stones around at least one cell (empty or not does not matter).
  • A bridge is a chain of stones linking 2 corners.
  • A fork is a chain linking 3 sides (corners do not belong to sides).

http://www.mindsports.net/Arena/Havannah/pics/HavannahBoard.GIF


Playing Sites (mindsports.net)

This is the official site. It supports only turn based (=offline) play. Board size is 10.

Spectators:

Sample game:

http://img467.imageshack.us/img467/788/havannah1ap.png


Playing Sites (itsyourturn.com)

[ext] http://www.itsyourturn.com itsyourturn.com

Only turnbased play is possible. Board size is 8 here.


Playing Sites (havannah.vying.org)

[ext] http://havannah.vying.org/ havannah.vying.org

New, simple server for live playing, as java applet. Board sizes 4...10 supported. No registration is necessary (nor is it not possible, yet). Finished games are available.


Playing Sites (HTWK Leipzig; an university project: simple java applet)

This is simple java applet, supporting live playing. The server seems to be offline, currently.

  • new URL: [ext] http://141.57.11.163/havannah/ A simple java applet to play against each other, and a simple computer opponent
    • Port 1962 for very simple computer opponent,
    • Port 1964 size 4,
    • Port 1966 size 6,
    • Port 1970 size 10 (full size)
  • Both players have to press "Start Game" about at the same time (during 60 seconds). Wait a short moment. If it doesn't work reload the page containing the applet within the browser!
  • To chat while playing, you can use the public chat on [ext] http://www.mindsports.net
  • Download source (applet and server):
    • cvs -d:pserver:anonymous@141.57.11.163:/var/lib/cvs/havannah checkout havannah

Computer Opponents for Havannah

The Challenge

"The inventor has, in the summer 2002 issue of Abstract Games, put a $1000 prize money on a program that can beat him one out of ten games within the next decade."

  • hav-ai1, written in Java (same author as HavannahGui?, see download address there), still quite simple, only for demonstration of first moves (but does complete the game usually)

Definitions

Both Hex and Havannah have the concept of virtual connections (VCs): Two cells on the board, which can be considered connected for a certain player even if the opponent is allowed to move first locally.

The (minimal) area of empty cells where such a fight takes place is called the "carrier" of the VC (it does not include the two end points).

The smallest VC's are 2-VC's (where the carrier consists of only 2 empty cells).

Monte Carlo evaluation in Havannah/Hex?

Recent use of Monte Carlo methods/UCT in 9x9 Computer Go raises the question: can similar methods be applied to other games? (especially Hex and Havannah)

Monte Carlo Evaluation for Hex/Havannah would mean the board is filled with black and white stones until one player has a winning connection.

2 arguments, why it wouldn't work (without adaptions) for Hex/Havannah:

1) In a real game, before one player wins he usually has a "chain" of VC's, which he must then "only" connect to win.

If an MC-evaluation is done, the probability that the player who has such an (immediately winning) 2-VC actually gets to CONNECT it, is not 100% but only 75% - because the opponent may occupy both empty cells through the choice of the random move generator.

If the player has a chain of 2 or more 2-VC's which he must connect, the probability that the opponent can break at least one of them raises quickly (soon larger than 50%).

2) Another argument is (Havannah only), it is also not ensured, that the winning connection is made *FAST* enough, the opponent could make a connection elsewhere on the board, while player 1 makes useless random moves. In this case the initially "winning" player 1 has failed to materialize his win also.

It is thus not clear how random moves could help in the evaluation of Hex/Havannah positions.

hk: I don't think I agree. If you do a straightforward (no UCT) MC search in Hex until convergence, and play the best moves according to that, my hypothesis is that you'll get a player functionally identical to Shannon's Hex machine. And that wasn't at all bad - current top programs are based on the same concepts.

Another thing is that you can the all-moves-as-first heuristic - in Go it's a true heuristic, something that is usually true but not always. In games where pieces aren't moved or removed, however, it is a rock-solid principle.

For every N move win, there are N! other wins, just consisting of the same moves in a different order. When updating the winning percentages, you can act as if all these playouts were also made: add a win for all the winner's moves (as if they were first). MC playouts will converge much faster when you use this, and unlike in Go, in Hex and Havannah you know the heuristic is sound (it will converge to the same as if it had not been used).

For such games (no moving pieces, no removals) it's also much more feasible to take clever mathematical shortcuts, figuring out what random playouts would converge at without doing random playouts at all, like I believe Shannon's Hex machine is in effect doing.


HavannahGui?

  • HavannahGui? (hgui): a GUI for Havannah, based on GoGui, written in Java
    • loading/saving/editing of havannah games (.sgf-files) possible, variations are also possible
    • supports attaching a computer player (GTP protocol)
    • Download: [ext] http://mgame99.funpic.de/havannah.php hgui

http://img215.imageshack.us/img215/2972/hguijan20064mj.png


On Strategy, some observations

  • Some tactical structures are similar to Hex.
  • The strategic goal is connecting three sides, the other "goals" of connecting 2 corners or making a ring often exist only as tactical threats.
  • a "virtual" connection in the last phase of the game, in contrast to hex, is only winning if the opponent is not able to complete a connection faster. Thus players occasionally can end up racing to complete their own connections, rather than trying to block the other's.
  • Hex has the nice (mathematical) property, that in a certain board state, at most one player can have a winning connection; in Havannah both players could have a winning connection (if the game was not over, before, of course)


See also

Other Games Considered Unprogrammable
Connecting Techniques (in Go)
Connection Games


This is a copy of the living page "Havannah" at Sensei's Library.
(OC) 2008 the Authors, published under the OpenContent License V1.0.
[Welcome to Sensei's Library!]
StartingPoints
ReferenceSection
About