TWIC’s Tromso Open Olympiad 2014 – FIDE id examination

TWIC (The Week in Chess), is a wonderful site which sets a high standard for collection and publishing chess tournaments in PGN form. It does a great job of normalizing the data – rationalizing the names, including FIDE id’s and countries for teams (in the Olympiad), etc.  As my recent explorations of the FIDE version of these games shows there is an awful lot of correcting to be done, especially for the player name fields.

TWIC does a good, but not complete job, of this. I have mentioned before that I have some issues with TWIC’s name corrections – when a corrected name disagrees with the FIDE card name. My issue here isn’t so much that TWIC correction is not correct, but rather that a certain measure of conformance is useful, and probably beneficial.

For example, does TWIC publish its name corrections? Does it try to propagate the corrections back to FIDE. FIDE is, after all, the central authority. I can obtain the data from FIDE allowing me to do a name <-> fide_id mapping. I don’t think I can do the same from TWIC.

More seriously, the TWIC correction PGN has some serious omissions itself for the recent Olympiad Open. For several of the games the FIDE id’s are missing for one or both of the players. Generally, I would prefer to have the FIDE id be the most correct tag in the data – allowing for the name to be corrected in subsequent releases of the FIDE playerlist data. Without the FIDE id I must use the TWIC name to look up the FIDE id.

Of course, on some of the TWIC games where an id is missing, other games can be used to map the name into an id. But there are other players whose FIDE id is never included. This should never be, since the original FIDE PGN (which I assume TWIC used as its primary source) always contains an ID for each player in every game (though that id is/was not always correct).

So, with this general discussion out of the way, let’s look at the details of the data. There are 151 players whose id is missing in the TWIC data for at least one game. Of those, there are 25 players without any FIDE id (0 entries in the following denote a TWIC game w/o a FIDE id):

>>> for n in NZ: print "%-35s" % n, ID[n][0], ' ', ID[n][1:]

Al Amri, Salim                      OMA   [0, 0, 0, 0, 0, 0, 0, 0]
Amba, Marius Claude Oyon            CMR   [0, 0, 0, 0, 0, 0]
Bittaye, Momodou Lamin              GAM   [0, 0, 0, 0, 0, 0, 0, 0, 0]
Caluag, Joseph                      GUM   [0, 0, 0, 0]
Capella, Rurik                      AHO   [0, 0, 0, 0, 0, 0, 0]
Castro Bekithemba, Sibanda          ZIM   [0, 0, 0]
Chalemba, Joseph                    MAW   [0]
Gerrard, Mphungt                    MAW   [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
Hale, Andrew                        GCI   [0, 0, 0, 0, 0, 0, 0, 0, 0]
Hussain, Nimal                      MDV   [0, 0, 0, 0, 0, 0, 0, 0, 0]
Jallow, Jalamang                    GAM   [0, 0, 0, 0, 0]
Jamena, Joseph Mensah               GHA   [0, 0, 0, 0, 0, 0, 0, 0]
Kaituu, Don                         SOL   [0, 0, 0, 0, 0, 0, 0, 0, 0]
Kate, Timothy                       SEY   [0, 0, 0]
Khalema, Sechaba                    LES   [0, 0, 0, 0, 0, 0, 0, 0, 0]
Mavuso, Lunga                       SWZ   [0, 0, 0, 0, 0, 0, 0, 0]
Meluleki, Mdluli                    SWZ   [0, 0, 0, 0, 0, 0, 0]
Mhone, Thobisela                    SWZ   [0, 0, 0, 0, 0, 0, 0]
Mziyako, Sobhi                      SWZ   [0, 0, 0, 0, 0, 0, 0, 0]
Ndjelle, Abby Edah                  TOG   [0, 0]
Pimentel De Sousa, Felisberto       STP   [0, 0, 0, 0, 0]
Rai, Binod                          BHU   [0, 0, 0, 0, 0, 0, 0, 0]
Sbonelo, Dlamini                    SWZ   [0, 0, 0, 0, 0, 0]
Singh, Jasvindar                    FIJ   [0, 0, 0, 0]
Webb, Michael                       BER   [0, 0, 0, 0, 0, 0, 0, 0, 0]

Here is the remaining 151-25 entries, where TWIC missed adding the FIDE id  at least one of the games, despite having it for others (generally only one game is missed – seemingly at random):

>>> for n in [ n for n in N if n not in NZ ]: print "%-35s" % n, ID[n][0], ' ', ID[n][1:]

# Just ten representative records shown

Latorre, Matias                     PAR   [0, 3701107, 3701107, 3701107, 3701107, 3701107, 3701107, 3701107, 3701107]
Jean Louis, Marckens                HAI   [11900270, 0, 11900270, 11900270, 11900270, 11900270, 11900270, 11900270, 11900270]
Duran Vega, Sergio                  CRC   [6501311, 6501311, 0, 6501311, 6501311, 6501311, 6501311]
Maccapani, Massimiliano             SMR   [11800089, 11800089, 11800089, 0, 11800089, 11800089, 11800089, 11800089, 11800089]
Ngiumoana, Leslie                   SOL   [17900280, 17900280, 17900280, 17900280, 17900280, 0, 17900280, 17900280, 17900280, 17900280]
Sisimia, Simister                   SOL   [17900301, 17900301, 17900301, 0, 17900301, 17900301]
Angiki, Jowie                       SOL   [17900271, 17900271, 17900271, 17900271, 0]
Valenta, Vit                        IPCA   [307440, 307440, 307440, 307440, 307440, 0, 307440, 307440]
Al Nhier, Hamoud                    KSA   [21500045, 21500045, 21500045, 21500045, 21500045, 21500045, 21500045, 21500045, 21500045, 0, 21500045]
Ntagasigumwami, Deo                 BDI   [20300034, 20300034, 20300034, 20300034, 20300034, 20300034, 20300034, 20300034, 20300034, 20300034, 0]

Of course, I maybe should just show the unique id’s found, which makes it easier to read:

>>> for n in [ n for n in N if n not in NZ ]: print "%-35s" % n, ID[n][0], ' ', L_unique(ID[n][1:])

Latorre, Matias                     PAR   [0, 3701107]
Guerra Tulcan, Lenin                ECU   [0, 3601382]
Jean Louis, Marckens                HAI   [11900270, 0]
Shrestha, Keshav                    NEP   [12300055, 0]
Bouaziz, Mehdi                      TUN   [5500311, 0]
Jose Queralto, Daniel               AND   [6900089, 0]
Giron, Jorge Ernesto                ESA   [0, 6702309]
Johnson, Joshua                     TTO   [7700768, 0]
Duran Vega, Sergio                  CRC   [6501311, 0]
Merritt, Mario                      TTO   [0, 7700148]
Michel Yunis, Christian D.          PLE   [3400085, 0]
Knowles, Kendrick                   BAH   [10400451, 0]
Niyibizi, Alain Patience            RWA   [16000072, 0]
Grassi, Enrico                      SMR   [0, 11800046]
Mwaisumbe, Emmanuel                 TAN   [0, 10001875]
Cheda                               BHU   [17500052, 0]
Wangchuk, Tandin                    BHU   [17500460, 0]
Sabar, Ethmane Daouda               MTN   [19600097, 0]
Lee, Jun Hyeok                      KOR   [13202340, 0]
Whyms, Chappell                     BAH   [10400125, 0]
Fancy, Stuart                       PNG   [9100024, 0]
Jones, Rupert                       PNG   [9100121, 0]
Maccapani, Massimiliano             SMR   [11800089, 0]
Ramasindraibe, Girard               MAD   [13100254, 0]
Mihajlov, Sebastian                 NOR3   [1512110, 0]
Deras Flores, Rodolfo               HON   [8400490, 0]
Oberholzer, Rex                     NAM   [15200035, 0]
Su, Haifeng                         GUY   [19700202, 0]
Koster, Jeroen Louis                MRI   [9700161, 0]
Creswell, Reece                     ISV   [6800262, 0]
Leye, Mamadou Mbaye                 SEN   [19900090, 0]
Ruzigura, Alexis                    RWA   [16000250, 0]
Santos Flores, Alberto              ECU   [3601234, 0]
Kabilov, Amin                       TJK   [14700859, 0]
Rwamavubi, Jean Bosco               BDI   [20300042, 0]
Mwanyika, Geoffrey                  TAN   [10002294, 0]
Ngiumoana, Leslie                   SOL   [17900280, 0]
Sisimia, Simister                   SOL   [17900301, 0]
Watanabe, Akira                     JPN   [7000227, 0]
Wong, Kit                           MAC   [15400379, 0]
Pesqueira, Jose                     ARU   [15900037, 0]
Wong, Brian                         HKG   [6001394, 0]
Gueye, Elhadji Gorgui               SEN   [19900058, 0]
Sy, Abdoulaye                       SEN   [19900139, 0]
Jhon, Samuel                        IVB   [2700069, 0]
Simoes, Joao ANG                    ANG   [10100520, 0]
Rakotoniaina, Antsiva               MAD   [13100173, 0]
Meier, Kurt                         SEY   [1307398, 0]
Murara, Maxence                     RWA   [16000013, 0]
Lettsome, Maurice                   IVB   [2700093, 0]
Potter, Simon                       IVB   [2700115, 0]
Gator, Mosab                        LBA   [1312383, 0]
Noah, A .H. Al-Ali                  IRQ   [4800249, 0]
Al-Khattab, Ghassan M. Ali Ajmed    IRQ   [4800168, 0]
Altaye, Girum Teklewold             ETH   [15700356, 0]
Mongiello, Anthony                  ISV   [6800173, 0]
Warren, Jamel                       BER   [8800650, 0]
Angiki, Jowie                       SOL   [17900271, 0]
Valenta, Vit                        IPCA   [307440, 0]
Al Nhier, Hamoud                    KSA   [21500045, 0]
Van Rensselaer, William             ISV   [6800165, 0]
Kaituu, Chris                       SOL   [17900182, 0]
Liao, Jo-Kai                        TPE   [16300343, 0]
Hashem, Khaled                      KUW   [10300201, 0]
Soriano, Rudolph P.                 GUM   [31000142, 0]
Ndikumana, Yves                     BDI   [20300018, 0]
Ntagasigumwami, Deo                 BDI   [20300034, 0]

In all cases only one game was missed, a clear oversight imo. The country codes, in case you were wondering, come from TWIC’s {White|Black}Team tags in the PGN. I have yet to check the consistency of that usage, maybe next post.

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s