move matching statistics

Discussion of chess software programming and technical issues.

Moderators: hgm, Dann Corbit, Harvey Williamson

User avatar
Don
Posts: 5106
Joined: Tue Apr 29, 2008 4:27 pm

move matching statistics

Post by Don »

Based on the discussions and controversies surrounding the cheating allegations in tournament chess, I decided to do my own study. I'm trying to document this here for your inspection and feedback.

First, here is the move matching procedure I am using and the rationale behind it:

Code: Select all

 

   I start matching at the 15 move - an attempt to avoid book. 

   I use Stockfish for pre-test.  If Stockfish plays the same move on
   depth 1-12 (without varying) and so does Houdini and the player - I
   ignore this move. It was probably an obvious recapture or other
   obvious move.

   Otherwise, I consider the move a match if Houdini would have played
   the move AT ANY POINT starting at depth 7.

   I tell Houdini the position and set it to play as if there were 30
   seconds + 0.6 second increment on the clock.  I must play at a fast
   pace to be able to feasily process thousands of games this way.

The reasoning for step 3 is as follows: 

   If I start matching at a low depth, even the computer can make a
   relatively shallow tactical blunder. So the human may not be using
   a computer, and yet blunder and still get a match if I accept
   shallow depth matches.

   Matching whatever is shown over a few iterations is better than
   matching the top N moves because it is typical for a program to be
   "torn" between two or three moves. If it appears as the first move
   in any PV it means Houdini might have played it given the right
   depth - and of course we cannot know what level the human used.


I am using the week in chess games and looking only at GM vs GM to get some sort of baseline - collecting statistics on individual games and players. I am focusing on issues 925-975 - I think this is most current 50 weeks of games and contains 143,225 games. I don't know how many of these are GM vs GM but these are the only ones I am considering for now.

I've currently process about 1,300 games. Here is some statistics:

There are 34 games that match 100 percent. However none of these games sampled more than 6 moves and 32 of them sampled 4 mores or less. If you consider all games, regardless of their sample count you would have to match 77.78 percent or more to be within the 95th percentile.

If you require at least 10 samples no player yet has matched Houdini's move 100% of the time. Here is the data of the top 10 matches given a sample of at least 10:

Code: Select all

    92.31        12        13  Gavrilov,Al1               23rd Czech Open A
     88.24        15        17  Edouard,R                  45th Biel Masters Open
     84.21        16        19  Vachier Lagrave,M          45th Biel Masters Open
     83.33        10        12  Bakre,T                    20th Montcada Open
     81.82         9        11  Svidler,P                  65th ch-RUS
     80.00         8        10  Shomoev,A                  Corporation Centre Cup A
     79.31        23        29  Yu Yangyi                  51st World Juniors
     78.57        11        14  Ganguly,S                  21st Kavala Open A
     76.92        10        13  Fridman,D                  2nd Riga Tech Open
     75.00         9        12  Berg,E                     Manhem GM 2012
If you change the requirement to 20 samples you get this:

Code: Select all

     79.31        23        29  Yu Yangyi                  51st World Juniors
     75.00        18        24  Kononenko,Dmitry1          23rd Czech Open A
     75.00        15        20  Wang Hao                   45th Biel GM
     75.00        15        20  Jansa,Vl                   23rd Czech Open A
     73.91        17        23  Wen Yang                   45th Biel Masters Open
     71.79        28        39  Kuzubov,Y                  81st ch-UKR 2012
     71.43        25        35  Vovk,Y                     81st ch-UKR 2012
     70.83        17        24  Vallejo Pons,F             CECLUB 1st Div GpB 2012
     70.00        14        20  Jakovenko,D                65th ch-RUS
     69.70        23        33  Ipatov,Alexander           51st World Juniors

Using this methodology it is clearly possible to get high match rates that are significantly above the median of about 47% in a single game. If you require at least 20 samples the median is 45.5 percent.

I want to next determine if certain players are stylistically inclined to match Houdini much more than others.
Capital punishment would be more effective as a preventive measure if it were administered prior to the crime.
User avatar
Don
Posts: 5106
Joined: Tue Apr 29, 2008 4:27 pm

Re: move matching statistics

Post by Don »

Here is some move matching statics for Houdini for the tournament Borislav played in and won the Veliko Tarnova tournament. Borislav of course is the player alleged to be using Houdini 3.

Code: Select all

match perc   matches   samples  games  player
----------  --------  --------  -----  -----------------
    100.00         3         3      2  Lewicki, Pawel
     67.31        35        52      6  Ivanov, Borislav
     57.89        22        38      9  Galunov, Todor
     53.97        68       126      7  Nikolov, Sasho
     52.83        84       159      9  Dimitrov, Radoslav
     51.06        48        94      5  Nikolovski, Nikola
     50.00        68       136      9  Nevednichy, Boris M
     50.00         6        12      2  Stefanov, Evtim
     50.00         3         6      1  Todorov, Petar G
     48.15        13        27      2  Ilijkov, Ivan
     48.15        13        27      1  Vasilev, Martin
     48.15        13        27      1  Sisoev, Robert
     48.04        49       102      9  Rombaldoni, Axel
     47.37        45        95      7  Dimitrov, Dejan
     46.81        22        47      4  Kazakov, Peter
     46.53        47       101      6  Petrov, Vladimir Sergeev
     46.15        66       143      9  Erwich, Frank
     45.99        63       137      8  Maciol, Ryszard
     45.12        37        82      4  Ivanova, Simoneta
     44.68        42        94      6  Petkov, Emil
     44.63        54       121      8  Kalchev, Stefan
     44.44        48       108      3  Ljangov, Petar
     44.05        37        84      8  Janev, Pavel
     43.90        18        41      5  Petrov, Martin
     43.75         7        16      3  Iliev, Nikolay
     43.37        36        83      6  Angelov, Angel Y
     43.18        19        44      3  Stoyanov, Ivaylo
     42.98        49       114      9  Tashkov, Rumen
     42.86        21        49      2  Mitev, Miroslav
     42.48        48       113      6  Veselinov, Dimcho
     42.31        33        78      4  Atanasov, Anatoli
     42.05        37        88      4  Romcovici, Victor
     42.03        29        69      6  Ninov, Dayan
     41.84        82       196      8  Dimitrov, Pavel
     41.00        41       100      9  Katov, Luboslav
     40.71        46       113      8  Drenchev, Petar
     40.58        28        69      5  Galunova, Tsveta
     40.54        15        37      5  Dereshki, Dario
     40.51        32        79      9  Stanojoski, Zvonko
     40.43        19        47      4  Nikolov, Nikolay Petrov
     40.00        40       100      9  Stamenkov, Vanco
     40.00         4        10      1  Nikolovska, Dragana
     40.00         4        10      1  Nancheva, Doroteya
     39.74        60       151      8  Samu, Sorin-Mihai
     39.62        42       106      8  Kukov, Velislav
     39.56        72       182      9  Gazis, Efstathios
     39.29        11        28      1  Lazarov, Janaki
     39.06        25        64      3  Milea, Florian
     38.46        15        39      2  Sotirov, Ilia
     36.73        18        49      5  Stoyanov, Valeri
     36.36         4        11      1  Atanasov, Viktor Atanasov
     35.94        46       128      9  Ivelinov, Hristo
     35.57        53       149      9  Senetia, Teodor
     34.52        29        84      4  Kamenov, Valentin
     33.72        29        86      5  Shentov, Petar-Delian
     33.33         8        24      2  Mahlev, Atanas
     33.33         7        21      3  Stoyanov, Tihomir
     33.33         1         3      1  Simeonov, Svetoslav
     32.69        17        52      2  Lim, Kian Hwa
     31.58         6        19      1  Pencheva, Iva
     31.25        10        32      3  Stefanov, Emil
     31.03        18        58      7  Bochev, Krasimir
     30.77         8        26      9  Angelov, Kosta
     30.56        11        36      3  Marjanovics, Annamaria
     29.63         8        27      3  Marjanovics, Gyorgy
     28.57         2         7      1  Mihtis, Theodoros
     28.57         2         7      1  Ivanov, Yordan Kr
     23.26        10        43      3  Kolev, Velio
     21.28        10        47      2  Apostu, Toader
     20.00         9        45      6  Ilchev, Plamen
     16.00         8        50      6  Tzouvelekis, Ioannis
      0.00         0         6      1  Ivanov, Oleg
      0.00         0         4      1  Malinov, Boyan
In the tournament Borislav performed poorly in, the 18th Zadar B section we get this:

Code: Select all

Games processed 90

pos  match perc   matches   samples  games  player
---  ----------  --------  --------  -----  -----------------
  1       61.90        13        21      1  Maroja, Slobodan
  2       53.57        15        28      1  Sindija, Filip
  3       50.00        42        84      8  Jelecevic, Ivo
  4       50.00        10        20      1  Mihalinec, Damir
  5       50.00         3         6      1  Jablon, Stephen
  6       50.00         1         2      1  Ivankovic, Marko
  7       48.92        91       186      8  Kristovic, Marijan
  8       48.39        15        31      2  Bajlo, Kristijan
  9       47.62        40        84      5  Dugandzic, Boris
 10       47.37         9        19      2  Berke, Ana
 11       46.60        48       103      7  Vlashki, Nino
 12       45.83        11        24      1  Klaric, Miro
 13       45.45        30        66      3  Bozinovic, Bogdan
 14       44.68        42        94      9  Medancic, Rikard
 15       44.44         4         9      1  Brkic, Ivica
 16       44.33        43        97      7  Ribicic, Mate
 17       43.75         7        16      1  Sljivar, Slavko
 18       40.79        31        76      5  Stipic, Marko
 19       40.41        59       146      9  Ciganovic, Nikola
 20       40.32        25        62      7  Ljubic, Juro
 21       40.00        38        95      4  Soric, Romeo
 22       39.68        25        63      5  Kljako, Damir
 23       39.44        28        71      8  Bozanic, Ivica
 24       39.29        22        56      3  Valkovic, Kristian
 25       39.22        40       102      8  Saric, Kristina
 26       37.93        11        29      5  Vrhovnik, Damir
 27       37.21        16        43      3  Levar, Nenad
 28       36.56        34        93      8  Deur, Zrinka
 29       35.71        15        42      4  Ivanov, Borislav
 30       35.29         6        17      1  Seferovic, Relja
 31       33.33        12        36      2  Tomljanovic, Goran
 32       33.33         8        24      1  Martinovic, Ferdo
 33       33.33         7        21      1  Batinic, Josip
 34       33.33         4        12      1  Zezelj, Vladislav
 35       32.43        12        37      6  Vidovic, Ante
 36       31.82        21        66      7  Petrusic, Toni
 37       30.39        31       102      5  Glavicic, Tino
 38       26.15        17        65      5  Fucak, Emilijo
 39       25.00        20        80      5  Savic, Miroslav
 40       25.00        13        52      4  Stocko, Josip
 41       25.00         3        12      8  Medic, Miljenko
 42       25.00         3        12      1  Petkovic, Nenad
 43       21.05         4        19      1  Cavusoglu, Yildiz
 44       20.00         1         5      2  Wieser, Rupert
 45       20.00         1         5      2  Kukina, Mario
Capital punishment would be more effective as a preventive measure if it were administered prior to the crime.
mwyoung
Posts: 2727
Joined: Wed May 12, 2010 10:00 pm

Re: move matching statistics

Post by mwyoung »

I want to next determine if certain players are stylistically inclined to match Houdini much more than others.
That is a myth worth confirming or busting. Does playing style have more to do with a computer hit rate then a players rating?
"The worst thing that can happen to a forum is a running wild attacking moderator(HGM) who is not corrected by the community." - Ed Schröder
But my words like silent raindrops fell. And echoed in the wells of silence.
User avatar
Don
Posts: 5106
Joined: Tue Apr 29, 2008 4:27 pm

Re: move matching statistics

Post by Don »

mwyoung wrote:
I want to next determine if certain players are stylistically inclined to match Houdini much more than others.
That is a myth worth confirming or busting. Does playing style have more to do with a computer hit rate then a players rating?
Playing style is multi-dimensional, which is why you cannot assign a single number to it as you do to ELO ratings. But you can compare 2 players to get a kind of similarity measure.

I ran the tournament Borislav won against Komodo too - and from a casual look it appears that the move match statistics are correlated - although certainly not identical. Borislav also has the highest match percentages in this test of all the players with more than 2 or 3 moves sampled.

So my best guess at the moment is that this is also a crude test of computer matching statistics.

But I agree that testing players over many games will be pretty interesting. This is very simple - I will do so after I get another thousand samples or so.

Don
Capital punishment would be more effective as a preventive measure if it were administered prior to the crime.
Hood
Posts: 657
Joined: Mon Feb 08, 2010 12:52 pm
Location: Polska, Warszawa

Re: move matching statistics

Post by Hood »

It is looking as reasonable way of checking. Many times unreasonable persons does have right.

That study should have been done before making allegations. :(
Polish National tragedy in Smoleńsk. President and all delegation murdered or killed.
Cui bono ?

There are not bugs free programs.
There are programs with undiscovered bugs.




Ashes to ashes dust to dust. Alleluia.
User avatar
Don
Posts: 5106
Joined: Tue Apr 29, 2008 4:27 pm

Re: move matching statistics

Post by Don »

mwyoung wrote:
I want to next determine if certain players are stylistically inclined to match Houdini much more than others.
That is a myth worth confirming or busting. Does playing style have more to do with a computer hit rate then a players rating?
Here is some data by player over many games. I only am including players with at least 100 moves to sample. The error margin with 100 samples is fairly large - so take this with a grain of salt. When I have processed a few thousand games I will run this again - requiring larger samples. The median here is about 47.

I have seen Wang Hao, the top guy on the list, match Houdini 75% or more in a single game - so he does appear to have a style that is much like Houdini's. I wonder if he trains using Houdini perhaps?

Note that the highest rated player in the world, Magnus Carlsen, is pretty close to the median and well down in the list.

Code: Select all

   57.65    98 out of 170    10 games  Moiseenko,A1
   55.36    93 out of 168    10 games  Wang Hao
   54.39    62 out of 114     6 games  Hammer,J
   54.01    74 out of 137     9 games  Volokitin,And
   53.95   116 out of 215    11 games  Saric,Iv
   53.85    56 out of 104     6 games  Shirov,A
   53.33   144 out of 270    15 games  Vachier Lagrave,M
   53.31   137 out of 257    11 games  Vovk,Y
   52.23    82 out of 157     9 games  Wojtaszek,R
   52.00    78 out of 150     8 games  Gavrilov,Al1
   51.85    56 out of 108     7 games  Ding Liren
   51.60    97 out of 188    13 games  Karjakin,Sergey
   51.24    62 out of 121    10 games  Ganguly,S
   51.22    63 out of 123    12 games  Andreikin,D
   51.18    65 out of 127     7 games  Cebalo,M
   51.02   125 out of 245    17 games  Bacrot,E
   51.00   102 out of 200     9 games  Harikrishna,P
   50.93   109 out of 214    10 games  Grischuk,A
   50.76   100 out of 197    10 games  Efimenko,Z
   50.34    75 out of 149    11 games  Nisipeanu,LD
   50.29    86 out of 171     8 games  Fressinet,L
   50.00    80 out of 160     8 games  Okhotnik,V
   50.00    64 out of 128     9 games  Barcenilla,R
   50.00    64 out of 128     7 games  Laznicka,V
   50.00    50 out of 100     6 games  Maletin,P
   49.78   112 out of 225    11 games  Bauer,Ch
   49.66    74 out of 149     9 games  Carlsen,M
   49.65    71 out of 143     7 games  Grachev,B
   49.62    65 out of 131     9 games  Fedorov,Alex
   49.55    55 out of 111     7 games  Timofeev,Arty
   49.47    93 out of 188    10 games  Kuzubov,Y
   49.11    55 out of 112    10 games  Meier,Geo
   49.04    77 out of 157    10 games  Korobov,A
   48.97    95 out of 194    14 games  Svidler,P
   48.92    68 out of 139     9 games  Sadorra,J
   48.51    65 out of 134     7 games  Illescas Cordoba,M
   48.46    63 out of 130     9 games  Torre,E
   48.43    77 out of 159    10 games  Miroshnichenko,E
   48.41    76 out of 157    11 games  Neelotpal,D
   48.15    52 out of 108     8 games  Ipatov,Alexander
   48.08    75 out of 156     9 games  Jobava,Ba
   48.08    75 out of 156     9 games  Eljanov,P
   48.08    75 out of 156     8 games  Vaisser,A
   48.03    73 out of 152    10 games  Areshchenko,A
   47.93   139 out of 290    15 games  Jakovenko,D
   47.73    63 out of 132    10 games  Burmakin,V
   47.54   116 out of 244    12 games  Maze,S
   47.49    85 out of 179     9 games  Ponomariov,R
   47.29    61 out of 129    10 games  Sandipan,C
   47.13    74 out of 157     6 games  Howell,D
   47.03    87 out of 185     8 games  Narciso Dublan,M
   46.64   125 out of 268    15 games  Alekseev,Evgeny
   46.39    90 out of 194    13 games  Potkin,V
   46.37    83 out of 179     9 games  Khismatullin,D
   46.37    83 out of 179     8 games  Hamdouchi,H
   46.21    67 out of 145     8 games  Cori,J
   46.09    59 out of 128     8 games  Wen Yang
   46.00    46 out of 100     4 games  Mastrovasilis,D
   45.97    57 out of 124     6 games  Danin,A
   45.90    84 out of 183    10 games  Nakamura,Hi
   45.87   100 out of 218    10 games  Zubov,A UKR
   45.77    65 out of 142     8 games  Kabanov,N
   45.41    84 out of 185     9 games  Panchanathan,M
   45.31    58 out of 128     9 games  Dubov,Danii
   45.08    55 out of 122     6 games  Cuartas,Ja
   44.97    85 out of 189     8 games  Georgiev,Ki
   44.87   105 out of 234    12 games  Fedorchuk,S
   44.80    99 out of 221     9 games  Bologan,V
   44.76    64 out of 143     8 games  Postny,E
   44.68    63 out of 141    10 games  Barbosa,O PHI
   44.64    75 out of 168     9 games  Sjugirov,S
   44.53    57 out of 128     8 games  Kokarev,Dm
   44.35    51 out of 115     6 games  Medvegy,Z
   43.78    95 out of 217    13 games  Edouard,R
   43.45    63 out of 145     9 games  Giri,A
   43.44    53 out of 122     4 games  Kamsky,G
   43.35    75 out of 173     9 games  Vitiugov,N
   43.31    55 out of 127     4 games  Romanov,E
   43.06    90 out of 209    12 games  Shankland,S
   42.86    51 out of 119     6 games  Smirnov,P
   42.74    50 out of 117     6 games  Iskusnyh,S
   42.28    52 out of 123     7 games  Melkumyan,H
   41.91   101 out of 241    11 games  Rakhmanov,Ale
   41.80    51 out of 122     5 games  Rasmussen,A
   41.46    51 out of 123     4 games  Arkell,K
   41.32    50 out of 121     6 games  Van Kampen,R
   41.18    63 out of 153     9 games  Gomez,Joh
   40.00    48 out of 120     9 games  Antonio,R
   40.00    44 out of 110     7 games  Golod,V
   39.13    63 out of 161     7 games  Quesada Perez,Yu
   38.78    76 out of 196    10 games  Spraggett,K
   38.10    72 out of 189     9 games  Cordova,E
   38.00    38 out of 100     5 games  David,Alb
   37.74    80 out of 212    11 games  Istratescu,A
   37.67    55 out of 146     9 games  Salvador,R
   37.67    55 out of 146     6 games  Kovalenko,I
   36.97    44 out of 119     7 games  Kurnosov,I
   34.84    54 out of 155     9 games  Laylo,D
   34.45    41 out of 119     6 games  Mirzoev,A
   34.31    35 out of 102     4 games  Janev,E
Last edited by Don on Tue Jul 23, 2013 8:44 pm, edited 2 times in total.
Capital punishment would be more effective as a preventive measure if it were administered prior to the crime.
mwyoung
Posts: 2727
Joined: Wed May 12, 2010 10:00 pm

Re: move matching statistics

Post by mwyoung »

Hood wrote:It is looking as reasonable way of checking. Many times unreasonable persons does have right.

That study should have been done before making allegations. :(
It takes time to setup a process like this. And it is not a easy process, first you must setup and test what is a normal range of move matching. This takes time. Before you can flag what is not in the normal range.

You can't do as fm Lilov did and scan one persons game and say BI moved match such percentage in the top 3 move selection of a program and claim this shows cheating. Because many player move match under this protocol.
If fm Lilov had tested his protocol fm Lilov would have seen this flaw in his method.

Don maybe able to find a formula that can formulate a probability of a player cheating. And show such grade as a percentage of probability.
Dons move filter seems to work at this point. Now Don needs to find what is the normal deveations in many player play.

Then the process can be tested with know games of cheating to see if the protocol can flag suspect games from normal games.
"The worst thing that can happen to a forum is a running wild attacking moderator(HGM) who is not corrected by the community." - Ed Schröder
But my words like silent raindrops fell. And echoed in the wells of silence.
User avatar
Don
Posts: 5106
Joined: Tue Apr 29, 2008 4:27 pm

Re: move matching statistics

Post by Don »

Hood wrote:It is looking as reasonable way of checking. Many times unreasonable persons does have right.

That study should have been done before making allegations. :(
You should take this to a different sub-forum, this is the "Programming and Technical Discussion forum", not one for pushing an agenda or making your moral judgments.

I moved the discussion of move matching over here for a reason. You can make a post on the other thread and I will respond, but not here.
Capital punishment would be more effective as a preventive measure if it were administered prior to the crime.
User avatar
Don
Posts: 5106
Joined: Tue Apr 29, 2008 4:27 pm

Re: move matching statistics

Post by Don »

Using the criteria of my move matcher the average GM can be expected to match the moves of Houdini 3 46.79% of the time.

This is based on the sample of 3431 games, and 27398 matches out of 58556 moves sampled.
Capital punishment would be more effective as a preventive measure if it were administered prior to the crime.
User avatar
Don
Posts: 5106
Joined: Tue Apr 29, 2008 4:27 pm

Re: move matching statistics

Post by Don »

This is the top 20 list of Houdini move matchers who have a sample of at least 200 moves. There were 56 players here:

Code: Select all

   54.47   134 out of 246    14 games  So,W
   54.17   143 out of 264    14 games  Moiseenko,A1
   53.47   108 out of 202    14 games  Movsesian,S
   53.31   137 out of 257    11 games  Vovk,Y
   53.23   173 out of 325    18 games  Wang Hao
   52.78   190 out of 360    22 games  Vachier Lagrave,M
   52.17   168 out of 322    16 games  Volokitin,And
   52.11   185 out of 355    20 games  Saric,Iv
   51.95   120 out of 231    14 games  Shirov,A
   51.93   121 out of 233    11 games  Avrukh,B
   51.81   186 out of 359    18 games  Harikrishna,P
   51.68   123 out of 238    15 games  Torre,E
   51.46   123 out of 239     9 games  Sargissian,G
   51.41   146 out of 284    18 games  Wojtaszek,R
   51.33   116 out of 226    10 games  Gavrilov,Al1
   51.32   155 out of 302    21 games  Karjakin,Sergey
   51.10   116 out of 227    15 games  Laznicka,V
   51.02   125 out of 245    17 games  Bacrot,E
   50.77   164 out of 323    18 games  Grischuk,A
   50.20   123 out of 245    13 games  Fressinet,L
You can compare the above list with this top 20 list of players with samples of at least 100 moves.

237 players:

Code: Select all

   58.59    75 out of 128     6 games  Socko,M
   57.04    81 out of 142     5 games  Belozerov,A
   55.94    80 out of 143     8 games  Lahno,Kateri
   54.47   134 out of 246    14 games  So,W
   54.39    62 out of 114     6 games  Hammer,J
   54.30    82 out of 151     7 games  Maiorov,N1
   54.25    83 out of 153    10 games  Onischuk,Al
   54.17   143 out of 264    14 games  Moiseenko,A1
   54.01    74 out of 137     9 games  Navara,D
   53.91    62 out of 115     7 games  Amonatov,F
   53.59    82 out of 153     9 games  Ragger,M
   53.52    76 out of 142     7 games  Granda Zuniga,J
   53.49    92 out of 172    11 games  Vallejo Pons,F
   53.47   108 out of 202    14 games  Movsesian,S
   53.31   137 out of 257    11 games  Vovk,Y
   53.23   173 out of 325    18 games  Wang Hao
   52.99    62 out of 117     9 games  Naiditsch,A
   52.78   190 out of 360    22 games  Vachier Lagrave,M
   52.70    78 out of 148     8 games  Topalov,V
   52.17   168 out of 322    16 games  Volokitin,And
Capital punishment would be more effective as a preventive measure if it were administered prior to the crime.