Copyright © 2014
Download the current version and try yourself.
"MacMahon" needs Java 6 (latest Java version is recommended) and will run on any computer that has Java, like Windows, Linux, Mac, ... I strongly recommend to only use the Sun/Oracle Java implementation with my program.
Version 3.4 (Zip-Archive, released 2012-02-24, ~420 KByte)
This software is provided as is with no warranty. Licence is granted to use MacMahon at tournaments of all kinds without charge. Anyway, if I attend your tournament you have to let me participate without charging me an entry fee.
If you find my program usefull, you are welcome to make a donation to my Paypal account --> with an amount chosen by you.
MacMahon is the most spread pairing program for Go tournaments in the world. It has a long history of being used in Europe and the new 3.x version will also be used by the Korean Baduk Association from 2011-09.
The pairings are generated in two steps. The first evaluates the matches between each pair of players. The evaluation-function (cost-function) is equivalent to the MacMahon-System (not exact in any case; e.g. the seeding of players within one group is a heuristic - not in all situations this part of the cost-functions will have it's minimum where it should be according to the MacMahon-System, but this is more or less a theoretical result - I didn't find many examples for this in reality). This first step is more or less the same as in most of the other pairing programs. The second step is the optimization. And here the "maximum weight perfect matching algorithm" by Edmonds (invented at the end of the sixties) guarantees the optimum pairing according to the evaluation in the first step. The optimization algorithm is mathematically proved to be correct in any case.
The first version of MacMahon was part of my thesis in computer science at the University of Hildesheim/Germany.
In my thesis you will find a description of the MacMahon-System and a detailed explanation of the optimization algorithm.
There will be 3.x versions adding more functions that are useful running Go tournaments. There will also be maintainance releases fixing bugs.
Old 2.xx program:
You can find the old program here.
Contact me if you have questions/remarks about my program:
In der Steinriede 3