Tuesday, January 11, 2011

Idiosyncrasies of Swiss Manager program

I saw some comments regarding the recently concluded 17th Chess Club Rapid. Three players tied for the first three places. Some wondored how Abdullah could have been awarded the first prize on tie-breaks. If you look at his opponents you will see that he actually has the worst Buchholz tie-break amongst the three players.

The majority of tournaments are run using a software called Swiss Manager. This piece of software works out the round by round pairings making the tournament director job much simpler and allows pairings to be posted much quicker. The software also works out the final standings and tie-breaks if needed (as well as a lot of other functions which I do not need to go into here).

Description of common tie-break systems
The TD chooses the tie-break systems that he/she wants to use when creating the tournament. There are many tie-break systems available. The most commonly used are the Buchholz (SK) and Sonneborn-Berger (SB) and the Progress or Cumulative . The Buchholz computes a score using the sum of the score of each of the opponents of a player. The Sonneborn-Berger is similar to Buchholz but uses a weighting, a win takes the full score of the opponent, a draw half of that and a loss is zero. The Progressive system takes the players current score at the end of each round and sums it.

There are weaknesses in the Buchholz and SB systems. If you are paired (usually in the first round) with an opponent who subsequently drops out or worse, never started the tournament, your tie-break will be negatively affected. You will be unfairly penalized through no fault of your own. There are attempts to address this by modifying the method of calculating the tie-break score in cases of unplayed games such as forfeits or walk-over. This variations are selected in Swiss Manager at the beginning of the tournament. They are refered to as Buchholz Tie-Breaks (variabel with parameter) and Sonneborn-Berger-Tie-Break variable.

These variables describe how unplayed games are computed for tie-break purpose. There are three variations -

a) using opponents actual points (this is the original Buchholz)
b) the game is treated as a draw for tie-break purpose but still using the opponent's points
c) the game is treated as a draw against the player himself (please note the italics because this will really surprise you later.

Analysis of 17th Chess Club top three players tie-break

TB1 is first tie break and TB2 is the second tie break. The tie breaks taken from chess results  (not shown in the picture but they are at the bottom of the web page) are -
Tie Break1: Buchholz Tie-Breaks (variabel with parameter)
Tie Break2: Sonneborn-Berger-Tie-Break variable

There is no way to tell which variable that the TD selected based on the posted results. We can deduce it with a little analysis on how Abdullah got his tie-break score since he had a walk-over in the first round.

The results of top three by round
Abdullah Che Hassan
 Rd Opponent  Opp Score Result
 1  Muhd Taufik Azman  0 1 (walkover)
 2  Razali Hamzah 4  1
 3  Muhd Syazwan Zulkifli  5 1
 4  Norizzudin Afendi Norazman  4 1
 5  Ahmad Fadzil Nayan  6 0
 6  Nor Ilhamuddin Shaikh Ali  4 1
 7  Mohd Saprin Sabri  5 1
Ian Udani
 Rd Opponent  Opp Score Result
 1  Nge Jia Xuan 4  1
 2  Saharuddin Mappa  4 1
 3  Nor Ilhamuddin Shaikh Ali  4 1
 4   Nik Ahmad Farouqi Nik Abdul Aziz 4  1
 5  Mohd Saprin Sabri  5 0
 6  Kamaluddin Yusof  5 1
 7  Ahmad Fadzil Nayan  6 1
Ahmad Fadzil Nayan
 Rd Opponent  Opp Score Result
 1  Kabir Singh 2  1
 2  Izuddin Ahayat 4  1
 3  Abdul Aziz Abdul Shukor  5 1
 4  Ismail Ahmad 5  1
 5  Abdullah Che Hassan  6 1
 6  Mohd Saprin Sabri  5 1
 7  Ian Udani 6  0

The tie-breaks works out like this -

 Player SK  SB SK (variable)  SB(variable)
 Abdullah Che Hassan 28   22  33.5  27.5 
 Ian Udani 32  27   32  27 
 Ahmad Fadzil Nayan 33   27  32  26 

SK and SB is worked out by me while the SK (variable) and SB(variable) are taken from the chess-results as in the link I given above. Note that Fadzil opponent's results must be wrongly reported. because there is a one point difference between my computations and the published one.

For Abdullah the difference between the normal and variable SK are a massive 5.5 points. This can tell us what the TD selected as the variable which I worked out to be (c) above. Here is my analysis. His first round game is treated as a draw (irrelevant in Buchholz) against himself. So his first round Buchholz score is 6-0.5 which is 5.5. Total Buchholz (5.5+4+5++4+6+4+5) giving the total 33.5 which is consistent with the score published in chess results.

This is outrageous. Not only did he not have to exert himself in the first round to get the full point, he benefitted tremendously in the tie-breaks. If his opponent had turned up to play, Abdullah would have been third in the tie-breaks by the rules. I for one, find that extremely ironic.


SomeDaysLikeThese said...

Hi Jimmy
Thanks for the explanation on calculating the tie break.

The default variable for the tie break (37) in Swiss Manager is "forfeit and bye games is counted as draw against the player himself". And as you have mentioned, this is to eliminate unfavorable tie break for players who - not due to his own fault - is paired against player who did not show up or "retired" in the middle of a tournament.

However, from another perspective, we should also take into account that the "massive 5.5 points he (Abdullah) earned" was from his own effort to play well in the event finishing with 6 points. If he had finished with 5 points and landed on 4th or 5th place, this may not be an issue at all. There was also another player who had a first round forfeit game but he did not benefit much from the "forfeited score".

Agreed there are flaws and weakness in the system and the real tie break variable used in the system needs to be made known to everyone early in the game to avoid, eliminate or reduce such "idiosyncrasies" and "irony".

In all honesty, I prefer using "manual calculation" to calculate the tie break and the best tie break that I feel we should use is the SB Tiebreak where if you win against a player, you get his full points, half of his points for a draw and none for a loss as it provides "real" weightage on the score. Unfortunately, by using the system, everything is left at the mercy of the application (and the "rules" that has been programmed into it) ergo, we trust that the system does not (and will not) make any "calculation error".

Please refer to www.chess-result.com as Mr Heinz Herzog has provided an excel spread sheet that explains the calculation of each tie break variable. Whilst it seems that you have come to the same sum/total, your method calculating is a bit flawed. Believe me as I too had the same difficulty but after reading his excel spread sheet, I understood the method of calculation better. Like I said, it is not as easy and straight forward as it seem to be because calculation of BH in Swiss Manager involves some kind of 2-tier calculation :)


Rationality said...

Jimmy has a point with tie-break (c). While it's true that a player is placed at a disadvantage for winning the first round via walkover, it's not logical to overcompensate by giving him a higher TB1 for that round compared to his competitors. While this is only true when the player concerned is close to the top...it's also the only time when it actually matters.

It's ridiculous when you think of it; receiving the easiest opponent but having the system treat him like the strongest. Pretty ridiculous how such a stupid resolution to this problem can exist in the program that runs almost every major chess tournament in the world.

In a tournament with such a huge spread of ratings, a better resolution would have been just to use Median-Buchholz, which in my opinion is truly underrated and under...known-about TB.

Jimmy Liew said...

Of course I am not saying that Abdullah did not deserve his prize or casting any negative connotations on him.

I think Rationality understands my point. This particular tie break is flawed and as Rationality put it so elegantly , "Over-compensates". I prefer the one where the lowest opponent's score is dropped.

SomeDaysLikeThese said...

Noted and agreed.
Thanks for those feedback and the ideas on alternative tie breaks that can be used.

vio said...

Of course, Jimmy is perfectly right.
But it's not only the two players affected by the "draw against himself".
All the other Abdullah opponents were affected by the FIDE regulation on Bucholz calculation. The walkover counts as 1/2 points instead of 1 full point (like in the time forfeit) All his opponents will have their bucholz reduced by 1/2 point because his walkover win is calculated as a draw for their bucholz.

In the same way all the walkover looser opponents are rewarded 1/2 point with their bucholz. That's not fair. It's happening these days to my son and both me and him can't understand it.

Thinking hard, it just came to my mind a possible solution for these kind of problems.

What does bucholz says? the strength of the opponents. So be it. Abdullah walkover opponent final score should be the same as his strength: an average of the same rated players scores. Let's say the next 5 higher rated players and the next 5 lower rated players.
This way the player is treated like he played his tournament and had a normal result and a normal.

Isn't this the bucholz idea?

Jesper Norgaard said...

I complete agree about the comments that Abdullah was given the apparently easiest opponent and the highest Buchholz in return. As a matter of fact FIDE has now gone ahead and changed the unfair unplayed games rule seen in action above. This rule should not be used after July 1, 2012 according to http://www.fide.com/component/handbook/?view=article&id=20. Instead a virtual opponent should be used according to these pages. I'm still not completely convinced about the fairness of these rules, because as pointed out when you play against a player that has 4 points but had an unplayed game (won by forfeit) you will only get 3.5 in Buchholz - that is not good. Still the newer rules are fairer. In fact with the newer rules Abdullah ends up in third place:

2 Ian Udani 2171 MAS 20w1 19b1 16w1 14b1 5w0 4b1 3b1 6.0 32.0 27.00 Norg: 73.2300 place : 1 6 Buch: 32.00 Berg: 27.00 Win: 0.23 1111011
3 Ahmad Fadzil Nayan 1899 MAS 46b1 17w1 7b1 6w1 1b1 5b1 2w0 6.0 32.0 26.00 Norg: 73.0771 place : 2 6 Buch: 32.00 Berg: 26.00 Win: 0.22 1111101
1 Abdullah Che Hassan 1915 MAS 55w+ 24w1 8b1 15b1 3w0 16b1 5w1 6.0 33.5 27.50 Norg: 72.6486 place : 3 6 Buch: 31.00 Berg: 25.00 Win: 0.22 1111101
4 Kamaluddin Yusof 1985 MAS 23b1 9w1 6b1 5w0 18b1 2w0 8b1 5.0 34.0 23.00 Norg: 62.9657 place : 4 5 Buch: 33.50 Berg: 22.50 Win: 0.18 1101110
5 Mohd Saprin Sabri 1906 MAS 42w1 27b1 18w1 4b1 2b1 3w0 1b0 5.0 32.5 21.00 Norg: 62.4557 place : 5 5 Buch: 32.50 Berg: 21.00 Win: 0.17 1111001
6 Ismail Ahmad 1893 MAS 35w1 13b1 4w0 3b0 23w+ 7w1 18b1 5.0 32.0 21.00 Norg: 61.6700 place : 6 5 Buch: 30.50 Berg: 19.50 Win: 0.17 1110110
7 Abdul Aziz Abdul Shukor 1682 MAS 44w1 12b1 3w0 20b1 21w1 6b0 14w1 5.0 29.5 19.00 Norg: 61.2929 place : 7 5 Buch: 29.50 Berg: 19.00 Win: 0.15 1111100
8 Muhd Syazwan Zulkifli 1790 MAS 48b1 30w1 1w0 13b1 15w1 14b1 4w0 5.0 28.5 18.00 Norg: 60.6500 place : 8 5 Buch: 28.00 Berg: 17.50 Win: 0.15 1111100
10 Mohd Fairin Zakaria 1800 MAS 31w½ 22b1 15w0 25b1 26w½ 33b1 19w1 5.0 26.0 18.50 Norg: 60.2714 place : 9 5 Buch: 26.00 Berg: 18.50 Win: 0.20 ½10½111
9 Kenneth Choong Wee Chin 1666 MAS 47w1 4b0 37w1 23b1 14w0 26b1 16w1 5.0 26.5 17.50 Norg: 60.0371 place : 10 5 Buch: 26.00 Berg: 17.00 Win: 0.18 1101110
11 Foo Chee Kin 1712 MAS 32b1 45w1 14w0 12b½ 22w½ 15b1 20w1 5.0 25.0 16.75 Norg: 59.6757 place : 11 5 Buch: 25.00 Berg: 16.75 Win: 0.14 110½11½

Any comments on this can be sent to jnorgard@prodigy.net.mx

Post a Comment