Comment faire un Calcul de Elo sans rien n'y connaitre
3 participants
Page 1 sur 1
Comment faire un Calcul de Elo sans rien n'y connaitre
En fait c'est très simple :
Le programme de la FESA est écrit dans un langage de programmation qui s'appelle lisp. Il te faut donc installer un interpréteur, par exemple clisp, disponible ici : https://sourceforge.net/projects/clisp/?SetFreedomCookie sur les distributions linux,il est possible de l'installer directement depuis le gestionnaire de paquets ou depuis un terminal (sudo apt install clisp)
Voilà, le plus gros est fait. Maintenant, il nous faut :
-un fichier qui s'appelle "turnering.txt" de résultat du tournoi avec une grille américaine sous ce format :
[Tournament title]
[2012-01-27]
1 [Nom1] [Prenom1] [5+ 3+ 2+]
2 [Nom2] [Prenom2] [6+ 8+ 1-]
3 [Nom3] [Prenom3] [7+ 1- 8+]
4 [Nom4] [Prenom4] [8- 6- 7-]
5 [Nom5] [Prenom5] [1- 7+ 6+]
6 [Nom6] [Prenom6] [2- 4+ 5-]
7 [Nom7] [Prenom7] [3- 5- 4+]
8 [Nom8] [Prenom8] [4+ 2- 3-]
-un fichier qui s'appelle "nye-spillere" sans extension, mais c'est un fichier texte à l'intérieur duquel on renseigne les nouveaux joueurs avec la syntaxe suivante :
(
("Nom6" "Prenom6" (#S(HOME :list #\E :nationality "FR" :residens "FR")) 0 "" 0 0 nil)
("Nom7" "Prenom7" (#S(HOME :list #\E :nationality "FR" :residens "FR")) 0 "" 0 0 nil)
("Nom8" "Prenom8" (#S(HOME :list #\E :nationality "FR" :residens "FR")) 0 "" 0 0 nil)
)
- un fichier qui s'appelle "ratingliste.pre" qui est un fichier texte à l'intérieur duquel on renseigne les informations sur les joueurs. Il est formaté de la manière suivante :
(
#S(PLAYER :LAST-NAME "Nom1" :FIRST-NAME "Prenom1"
:NATIONALITY-LIST (#S(HOME :LIST #\E :NATIONALITY "FR" :RESIDENS "FR" :LAST "2009-05-09"))
:GRADE-LEVEL 6 :GRADE-NAME "Kyu" :NSR-GRADE-LEVEL 0 :NSR-GRADE-NAME "" :ELO-NUMBER 1202
:GAMES 24 :LAST-PLAYED "2009-05-09" :LB-COUNT NIL :MP-COUNT NIL :BONUS-COUNT 12)
#S(PLAYER :LAST-NAME "Nom2" :FIRST-NAME "Prenom2"
:NATIONALITY-LIST (#S(HOME :LIST #\E :NATIONALITY "FR" :RESIDENS "FR" :LAST "2010-10-03"))
:GRADE-LEVEL 11 :GRADE-NAME "Kyu" :NSR-GRADE-LEVEL 0 :NSR-GRADE-NAME "" :ELO-NUMBER 953
:GAMES 11 :LAST-PLAYED "2010-10-03" :LB-COUNT NIL :MP-COUNT NIL :BONUS-COUNT 6)
#S(PLAYER :LAST-NAME "Nom3" :FIRST-NAME "Prenom3"
:NATIONALITY-LIST (#S(HOME :LIST #\E :NATIONALITY "FR" :RESIDENS "FR" :LAST "2010-10-03"))
:GRADE-LEVEL 14 :GRADE-NAME "Kyu" :NSR-GRADE-LEVEL 0 :NSR-GRADE-NAME "" :ELO-NUMBER 672
:GAMES 11 :LAST-PLAYED "2010-10-03" :LB-COUNT NIL :MP-COUNT NIL :BONUS-COUNT 6)
#S(PLAYER :LAST-NAME "Nom4" :FIRST-NAME "Prenom4"
:NATIONALITY-LIST (#S(HOME :LIST #\E :NATIONALITY "FR" :RESIDENS "FR" :LAST "2010-10-03"))
:GRADE-LEVEL 0 :GRADE-NAME "" :NSR-GRADE-LEVEL 0 :NSR-GRADE-NAME "" :ELO-NUMBER 603
:GAMES 6 :LAST-PLAYED "2010-10-03" :LB-COUNT NIL :MP-COUNT NIL :BONUS-COUNT 6)
#S(PLAYER :LAST-NAME "Nom5" :FIRST-NAME "Prenom5"
:NATIONALITY-LIST (#S(HOME :LIST #\E :NATIONALITY "FR" :RESIDENS "FR" :LAST "2010-10-03"))
:GRADE-LEVEL 0 :GRADE-NAME "" :NSR-GRADE-LEVEL 0 :NSR-GRADE-NAME "" :ELO-NUMBER 547
:GAMES 6 :LAST-PLAYED "2010-10-03" :LB-COUNT NIL :MP-COUNT NIL :BONUS-COUNT 6)
)
- il nous manque un dernier fichier : le programme de la FESA, disponible ici : https://www.fesashogi.eu/turnering.lisp si vous copiez collez le texte dans un fichier texte, n'oubliez pas de renommer le fichier texte sous "turnering.lisp"
Un fois qu'on a tout ça, on regroupe tous ces fichiers dans un même dossier. On ouvre un terminal dans ce dossier et on tape les commandes suivantes les une après les autres (pas de copier coller) :
clisp
-> cette commande va lancer le programme d'interprétation lisp
(load "turnering.lisp")
->cette commande va charger le programme
(run)
-> cette commande va exécuter le programme. On remarque alors que des informations s'affichent. Par exemple si il y a une faute d'orthographe sur un joueur, on va être informé que le joueur est inconnu. Il faudra modifier soit la grille américaine, soit le fichier ratingliste.pre. Si tout se passe bien, on voit les calculs s'effectuer et de nouveaux fichiers sont créés dans notre dossier : turnering.html et ratingliste.post qui sont respectivement la synthèse sous format html du tournoi et la liste des joueurs prenant en compte les nouvelles variation de Elo.
(quit)
-> cette commande permet de quitter le programme lisp.
et voilà... un vrai jeu d'enfant ^^ il me semblait avoir déjà publié ce genre d'info, mais je ne l'ai pas retrouvé.
Le programme de la FESA est écrit dans un langage de programmation qui s'appelle lisp. Il te faut donc installer un interpréteur, par exemple clisp, disponible ici : https://sourceforge.net/projects/clisp/?SetFreedomCookie sur les distributions linux,il est possible de l'installer directement depuis le gestionnaire de paquets ou depuis un terminal (sudo apt install clisp)
Voilà, le plus gros est fait. Maintenant, il nous faut :
-un fichier qui s'appelle "turnering.txt" de résultat du tournoi avec une grille américaine sous ce format :
[Tournament title]
[2012-01-27]
1 [Nom1] [Prenom1] [5+ 3+ 2+]
2 [Nom2] [Prenom2] [6+ 8+ 1-]
3 [Nom3] [Prenom3] [7+ 1- 8+]
4 [Nom4] [Prenom4] [8- 6- 7-]
5 [Nom5] [Prenom5] [1- 7+ 6+]
6 [Nom6] [Prenom6] [2- 4+ 5-]
7 [Nom7] [Prenom7] [3- 5- 4+]
8 [Nom8] [Prenom8] [4+ 2- 3-]
-un fichier qui s'appelle "nye-spillere" sans extension, mais c'est un fichier texte à l'intérieur duquel on renseigne les nouveaux joueurs avec la syntaxe suivante :
(
("Nom6" "Prenom6" (#S(HOME :list #\E :nationality "FR" :residens "FR")) 0 "" 0 0 nil)
("Nom7" "Prenom7" (#S(HOME :list #\E :nationality "FR" :residens "FR")) 0 "" 0 0 nil)
("Nom8" "Prenom8" (#S(HOME :list #\E :nationality "FR" :residens "FR")) 0 "" 0 0 nil)
)
- un fichier qui s'appelle "ratingliste.pre" qui est un fichier texte à l'intérieur duquel on renseigne les informations sur les joueurs. Il est formaté de la manière suivante :
(
#S(PLAYER :LAST-NAME "Nom1" :FIRST-NAME "Prenom1"
:NATIONALITY-LIST (#S(HOME :LIST #\E :NATIONALITY "FR" :RESIDENS "FR" :LAST "2009-05-09"))
:GRADE-LEVEL 6 :GRADE-NAME "Kyu" :NSR-GRADE-LEVEL 0 :NSR-GRADE-NAME "" :ELO-NUMBER 1202
:GAMES 24 :LAST-PLAYED "2009-05-09" :LB-COUNT NIL :MP-COUNT NIL :BONUS-COUNT 12)
#S(PLAYER :LAST-NAME "Nom2" :FIRST-NAME "Prenom2"
:NATIONALITY-LIST (#S(HOME :LIST #\E :NATIONALITY "FR" :RESIDENS "FR" :LAST "2010-10-03"))
:GRADE-LEVEL 11 :GRADE-NAME "Kyu" :NSR-GRADE-LEVEL 0 :NSR-GRADE-NAME "" :ELO-NUMBER 953
:GAMES 11 :LAST-PLAYED "2010-10-03" :LB-COUNT NIL :MP-COUNT NIL :BONUS-COUNT 6)
#S(PLAYER :LAST-NAME "Nom3" :FIRST-NAME "Prenom3"
:NATIONALITY-LIST (#S(HOME :LIST #\E :NATIONALITY "FR" :RESIDENS "FR" :LAST "2010-10-03"))
:GRADE-LEVEL 14 :GRADE-NAME "Kyu" :NSR-GRADE-LEVEL 0 :NSR-GRADE-NAME "" :ELO-NUMBER 672
:GAMES 11 :LAST-PLAYED "2010-10-03" :LB-COUNT NIL :MP-COUNT NIL :BONUS-COUNT 6)
#S(PLAYER :LAST-NAME "Nom4" :FIRST-NAME "Prenom4"
:NATIONALITY-LIST (#S(HOME :LIST #\E :NATIONALITY "FR" :RESIDENS "FR" :LAST "2010-10-03"))
:GRADE-LEVEL 0 :GRADE-NAME "" :NSR-GRADE-LEVEL 0 :NSR-GRADE-NAME "" :ELO-NUMBER 603
:GAMES 6 :LAST-PLAYED "2010-10-03" :LB-COUNT NIL :MP-COUNT NIL :BONUS-COUNT 6)
#S(PLAYER :LAST-NAME "Nom5" :FIRST-NAME "Prenom5"
:NATIONALITY-LIST (#S(HOME :LIST #\E :NATIONALITY "FR" :RESIDENS "FR" :LAST "2010-10-03"))
:GRADE-LEVEL 0 :GRADE-NAME "" :NSR-GRADE-LEVEL 0 :NSR-GRADE-NAME "" :ELO-NUMBER 547
:GAMES 6 :LAST-PLAYED "2010-10-03" :LB-COUNT NIL :MP-COUNT NIL :BONUS-COUNT 6)
)
- il nous manque un dernier fichier : le programme de la FESA, disponible ici : https://www.fesashogi.eu/turnering.lisp si vous copiez collez le texte dans un fichier texte, n'oubliez pas de renommer le fichier texte sous "turnering.lisp"
Un fois qu'on a tout ça, on regroupe tous ces fichiers dans un même dossier. On ouvre un terminal dans ce dossier et on tape les commandes suivantes les une après les autres (pas de copier coller) :
clisp
-> cette commande va lancer le programme d'interprétation lisp
(load "turnering.lisp")
->cette commande va charger le programme
(run)
-> cette commande va exécuter le programme. On remarque alors que des informations s'affichent. Par exemple si il y a une faute d'orthographe sur un joueur, on va être informé que le joueur est inconnu. Il faudra modifier soit la grille américaine, soit le fichier ratingliste.pre. Si tout se passe bien, on voit les calculs s'effectuer et de nouveaux fichiers sont créés dans notre dossier : turnering.html et ratingliste.post qui sont respectivement la synthèse sous format html du tournoi et la liste des joueurs prenant en compte les nouvelles variation de Elo.
(quit)
-> cette commande permet de quitter le programme lisp.
et voilà... un vrai jeu d'enfant ^^ il me semblait avoir déjà publié ce genre d'info, mais je ne l'ai pas retrouvé.
Lelorrain- Chariot Volant
- Nombre de messages : 571
Age : 39
Localisation : Besancon
Date d'inscription : 10/04/2010
François et Fritz Bobun aiment ce message
Re: Comment faire un Calcul de Elo sans rien n'y connaitre
Lelorrain a écrit:et voilà... un vrai jeu d'enfant ^^ il me semblait avoir déjà publié ce genre d'info, mais je ne l'ai pas retrouvé.
Merci Gilles. Je crois que c'est la première fois que je vois ce tuto mais ma mémoire de vieillard peut me jouer aussi des tours.
_________________
Fédération Française de Shogi (http://www.shogi.fr)
Association Shogi d'Alsace (https://shogialsace.wordpress.com/)
Re: Comment faire un Calcul de Elo sans rien n'y connaitre
si ça peut aider
Lelorrain- Chariot Volant
- Nombre de messages : 571
Age : 39
Localisation : Besancon
Date d'inscription : 10/04/2010
Re: Comment faire un Calcul de Elo sans rien n'y connaitre
super, merci pour le partage de ce tuto
Fritz Bobun- Chariot Volant
- Nombre de messages : 904
Age : 42
Localisation : Lyon
Date d'inscription : 30/12/2017
Sujets similaires
» Situation intéressante : comment faire pour éviter le mat ?
» Nouveaux joueurs, faites vous connaître !
» Calcul du Elo
» Calcul du elo
» Calcul de variation de Elo
» Nouveaux joueurs, faites vous connaître !
» Calcul du Elo
» Calcul du elo
» Calcul de variation de Elo
Page 1 sur 1
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum
|
|
Hier à 23:32 par Fritz Bobun
» MEIJINSEN 2024
Jeu 9 Mai 2024 - 11:39 par Fritz Bobun
» 2024 04 13 et 14 du shôgi à Geek Legends
Mar 7 Mai 2024 - 14:53 par Fritz Bobun
» 2024 04 28 : un maître d'échecs avec SDL
Mar 30 Avr 2024 - 9:59 par Fritz Bobun
» Championnat de france à Angers
Sam 27 Avr 2024 - 9:55 par kire
» Le plus jeune vainqueur du Tournoi des Candidats
Lun 22 Avr 2024 - 16:35 par jpages
» 2024 04 12 : vie du club
Jeu 18 Avr 2024 - 11:20 par Fritz Bobun
» 2024 03 29 - Obata and Co
Mer 10 Avr 2024 - 10:11 par Fritz Bobun
» 23 et 24 mars 2024 : open de Bruxelles
Mer 10 Avr 2024 - 9:48 par Fritz Bobun