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 : 40
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.
Re: Comment faire un Calcul de Elo sans rien n'y connaitre
si ça peut aider
Lelorrain- Chariot Volant
- Nombre de messages : 571
Age : 40
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 : 944
Age : 43
Localisation : Lyon
Date d'inscription : 30/12/2017
Page 1 sur 1
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum
Mer 23 Oct 2024 - 10:53 par bakashogi
» 2024 10 19 : Du shôgi + et des jeux :)
Sam 19 Oct 2024 - 23:37 par Fritz Bobun
» [Défi] Images sur ShogiWars !
Mar 8 Oct 2024 - 12:13 par Fritz Bobun
» 2024 10 05 : une famille japonaise en visite et des jeux
Dim 6 Oct 2024 - 18:58 par Fritz Bobun
» 2024 10 06 : NISHIYAMA vs YAMAKAWA exam pro partie 2
Dim 6 Oct 2024 - 18:37 par Fritz Bobun
» 2024 09 28 : 2 lyonnais à Colmar
Sam 5 Oct 2024 - 12:23 par Fritz Bobun
» OZASEN 2024
Sam 5 Oct 2024 - 12:05 par Fritz Bobun
» 28è Colmar Shogi Open - 28 & 29 septembre 2024
Jeu 3 Oct 2024 - 17:29 par bakashogi
» 2024 09 15 : FUJII vs NISHIYAMA NHK Cup
Sam 21 Sep 2024 - 22:27 par Fritz Bobun