Forum Shôgi France
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
Événements
Derniers sujets
» Shogi Piece sur Steam
Calcul du Elo  - Page 3 Icon_minitimeMer 23 Oct 2024 - 10:53 par bakashogi

» 2024 10 19 : Du shôgi + et des jeux :)
Calcul du Elo  - Page 3 Icon_minitimeSam 19 Oct 2024 - 23:37 par Fritz Bobun

» [Défi] Images sur ShogiWars !
Calcul du Elo  - Page 3 Icon_minitimeMar 8 Oct 2024 - 12:13 par Fritz Bobun

» 2024 10 05 : une famille japonaise en visite et des jeux
Calcul du Elo  - Page 3 Icon_minitimeDim 6 Oct 2024 - 18:58 par Fritz Bobun

» 2024 10 06 : NISHIYAMA vs YAMAKAWA exam pro partie 2
Calcul du Elo  - Page 3 Icon_minitimeDim 6 Oct 2024 - 18:37 par Fritz Bobun

» 2024 09 28 : 2 lyonnais à Colmar
Calcul du Elo  - Page 3 Icon_minitimeSam 5 Oct 2024 - 12:23 par Fritz Bobun

» OZASEN 2024
Calcul du Elo  - Page 3 Icon_minitimeSam 5 Oct 2024 - 12:05 par Fritz Bobun

» 28è Colmar Shogi Open - 28 & 29 septembre 2024
Calcul du Elo  - Page 3 Icon_minitimeJeu 3 Oct 2024 - 17:29 par bakashogi

» 2024 09 15 : FUJII vs NISHIYAMA NHK Cup
Calcul du Elo  - Page 3 Icon_minitimeSam 21 Sep 2024 - 22:27 par Fritz Bobun

Rechercher
 
 

Résultats par :
 

 


Rechercher Recherche avancée

Les posteurs les plus actifs du mois
Aucun utilisateur

Flux RSS


Yahoo! 
MSN 
AOL 
Netvibes 
Bloglines 


-38%
Le deal à ne pas rater :
Ecran PC gaming 23,8″ – ACER KG241Y P3bip à 99,99€
99.99 € 159.99 €
Voir le deal

Calcul du Elo

5 participants

Page 3 sur 3 Précédent  1, 2, 3

Aller en bas

Calcul du Elo  - Page 3 Empty Calcul du Elo

Message par Lelorrain Lun 16 Jan 2012 - 20:08

Rappel du premier message :

Ou comment devenir dingo...

Pour répondre à une demande locale (ici à Besançon) nous aurions aimé calculer des Elo... Mais je dois avouer que j'ai beau reprendre les formules du PDF officiel, rien n'y fait, je n'arrive pas à retomber sur les résultats officiels. Je m'explique. Etape 1, j'identifie tous les paramètres de la formule :
le maximum de d et de d'. Si je prends l'exemple suivant : http://www.shogi.net/fesa/index.php?mid=4&dateid=Fall+2010&tournamentid=Colmar10 je suis le joueur 13.
Mon elo au début du tournoi est de 755, donc k=36.
res = 1 quand je gagne, 0 quand je perds.
tr=755
or = le elo de mon adversaire (j'ai pris le elo de l'adversaire au début du tournoi. Doije prendre le Elo recalculé à la ronde considérée suivant les résultats ?)
d=k x (res-1/(1+10^((or-tr)/400))
d’=k x (or – tr) / 160

Et là, je me suis amusé à faire un petit tableau excel pour calculer tout ça... Ca m'a permi de trouver quelques anomalies (sauf si je n'ai rien compris).

Max(d et d') d' d k res or tr
118,125 118,125 34,32832219 36 1 1280 755
-2,1952202997 0 -2,1952202997 36 0 1230 755
-1,7276050085 0 -1,7276050085 36 0 1274 755
11,6985527625 -28,575 11,6985527625 36 1 628 755
101,475 101,475 33,5021161507 36 1 1206 755
-3,2727272727 0 -3,2727272727 36 0 1155 755
-------------------------------------------------------------------------------
224,1030001816 191,025 72,3334385223 Somme



Première surprise, lorsque l'on gagne face à qqn de moins bien classé que sois, la formule d' est négative. Ce qui se traduit par j'ai gagné donc je perds du Elo. C'est, j'imagine, la raison de l'existence de la règle de prendre le max entre d et d'. Mais si je procède comme suit, et que je calcul la somme des Max (d & d') j'arrive à 224 au lieu de 198. Du coup, j'imagine que j'ai tord dans les "tr" et "or", il ne faut pas laisser le tr fixe mais le faire évoluer à chaque ligne, et concernant les or, j’imagine que cela correspond au elo de l'adversaire au moment de sa ronde. Par exemple, pour calculer le résultat lors de la troisième ronde, il faut prendre le or et tr évolués en fonction des résultats des deux premières rondes, c'est bien ça ?

Si quelqu'un pouvait me confirmer, ce serait top. Je continuerai de chercher ce soir.

Nb : un petit soft tout rapide pour calculer tout ça serait bienvenu Very Happy je vais voir ce que je peux faire avec mes moyens elephant
Lelorrain
Lelorrain
Chariot Volant
Chariot Volant

Nombre de messages : 571
Age : 40
Localisation : Besancon
Date d'inscription : 10/04/2010

Revenir en haut Aller en bas


Calcul du Elo  - Page 3 Empty Re: Calcul du Elo

Message par nivlinch Lun 23 Jan 2012 - 8:12

Z'etes rigolo les gars Laughing !

Si je savais comment ça marche et programmer, ça ferait longtemps que je l'aurais fais, ce programme. Mais vu que je ne comprends pas plus que vous (je pose juste les questions à la source) et que je ne sais pas programmer (je vis très bien sans, merci), je vous laisse faire.

@Lelorrain
Je regarde pour exemple concret demain. Pour commencer, un exemple avec un non classé, c'est la lose.
Grosso modo, tu convertis ELO A en grade, tu soustrais à ça le grade équivalent au handicap, et tu obtiens A'. La différence en A et A' est appelé E. Quand tu calcules l'évolution de A, tu estimes que B = B+E, et quand tu calcules l'évolution de B, tu estimes que A=A-E.
Et paf, ça fait des chocapics !
nivlinch
nivlinch
Eisei forumeur
Eisei forumeur

Nombre de messages : 1737
Age : 37
Localisation : York, UK
Date d'inscription : 07/03/2007

Revenir en haut Aller en bas

Calcul du Elo  - Page 3 Empty Re: Calcul du Elo

Message par Lelorrain Lun 23 Jan 2012 - 9:00

héhéhé

Bon je vais essayer de trouver et de formaliser tout ça de manière logique :p j'aime bien les organigrammes. Une fois qu'on a ça, la prog ce n'est plus rien... mais tant qu'on ne comprends pas ce qu'on fait, c'est autre chose.

Pensez vous que Asle me répondrait si je lui demandais des précisions sur son fichier et sur comment l'exécuter ? Parce qu'en cherchant à le compiler et en débuggant ce matin, il semblerait que le fichier ne soit pas à jour... Plusieurs fonctions non définies sont utilisées et des paquets semblent manquer. J'aurais aimé savoir avec quoi il le compilait, et comment il s'utilisait. Quelqu'un a-t-il déjà vu ce fantôme fonctionner ? What a Face
Lelorrain
Lelorrain
Chariot Volant
Chariot Volant

Nombre de messages : 571
Age : 40
Localisation : Besancon
Date d'inscription : 10/04/2010

Revenir en haut Aller en bas

Calcul du Elo  - Page 3 Empty Re: Calcul du Elo

Message par nivlinch Lun 23 Jan 2012 - 9:12

Tu peux le contacter, mais perso, lis bien les échanges qu'il a déjà eu avec shogiban, histoire de ne pas lui poser des questions auxquelles il a déjà répondu ;-).
nivlinch
nivlinch
Eisei forumeur
Eisei forumeur

Nombre de messages : 1737
Age : 37
Localisation : York, UK
Date d'inscription : 07/03/2007

Revenir en haut Aller en bas

Calcul du Elo  - Page 3 Empty Re: Calcul du Elo

Message par Lelorrain Lun 23 Jan 2012 - 9:21

hihi, voui c'est déjà fait :p
Lelorrain
Lelorrain
Chariot Volant
Chariot Volant

Nombre de messages : 571
Age : 40
Localisation : Besancon
Date d'inscription : 10/04/2010

Revenir en haut Aller en bas

Calcul du Elo  - Page 3 Empty Re: Calcul du Elo

Message par ezano Lun 23 Jan 2012 - 9:39

Pour le lisp y a rien de mieux qu'emacs normalement.
Le logiciel est lui même codé en lisp donc ils s'entendent très bien.
ezano
ezano
Général d'Or
Général d'Or

Nombre de messages : 242
Date d'inscription : 16/07/2008

Revenir en haut Aller en bas

Calcul du Elo  - Page 3 Empty Re: Calcul du Elo

Message par Lelorrain Lun 23 Jan 2012 - 10:06

@ezano
Emacs est juste un éditeur de texte qui va faire appel à un noyau (dans mon cas, sous linux, clisp). Il est en revanche très agréable, parce qu'il permet de mettre en évidence toute la syntaxe du programme !! Apparemment il en existe d'autres, mais je ne suis pas sur qu'il y ai qqch de très friendly... du coup, moi c'est éditeru de texte + terminal geek
Lelorrain
Lelorrain
Chariot Volant
Chariot Volant

Nombre de messages : 571
Age : 40
Localisation : Besancon
Date d'inscription : 10/04/2010

Revenir en haut Aller en bas

Calcul du Elo  - Page 3 Empty Re: Calcul du Elo

Message par Lelorrain Lun 23 Jan 2012 - 10:38

Pour info sur le message envoyé au programmeur du code :
les questions posées concernent lisp :
- 1) Au tout début de son programme il charge une fonction / outil qui vient d'un de ses fichiers. Par conséquent, dès le début du programme, il manque qqch => je lui ai donc demandé de m'en dire plus sur le sujet.

- 2) Je lui ai demandé ce qui n'allait pas dans ma manière de compiler son fichier, car à chaque fois il me manque qqch, ou alors des fonctions sont utilisées mais pas définies (elles sont sans doute issues de ce qui est chargé au départ, mais j'ai quand même demandé confirmation).

A l'occasion, si je fini par réussir à faire marcher le code, j'essaierai de l'intégrer à du java. J'aime bien java, on peut le mettre sur le net si on veut, et en plus c'est multi plateforme :p

Entre temps il faudra que je me mette un peu au java. Very Happy

nb, après avoir fait qq tuto sur lisp, ce n'est pas si compliqué. Je dirais même que ça se prends assez facilement en main. Si ça intéresse des gens, je pourrais vous retrouver qq liens.
Lelorrain
Lelorrain
Chariot Volant
Chariot Volant

Nombre de messages : 571
Age : 40
Localisation : Besancon
Date d'inscription : 10/04/2010

Revenir en haut Aller en bas

Calcul du Elo  - Page 3 Empty Re: Calcul du Elo

Message par Lelorrain Dim 29 Jan 2012 - 18:45

Tadadada da daaaa

Bon, ça y est, je fais marcher le code magique en lisp afro

Je vais donc commencer à faire tourner quelques cas test pour que nous puissions calibrer nos logiciels respectifs.

Je vous demanderai votre aide pour définir les différents paramètres à analyser (dites moi si j'oublie qqch) :
1) mode match unique / mode rondes
2) joueur NC / pas NC / première participation
3) joueur ayant joué plus de 100 matchs ou pas
4) partie à handicap ou pas

d'autes variations à envisager ?
Lelorrain
Lelorrain
Chariot Volant
Chariot Volant

Nombre de messages : 571
Age : 40
Localisation : Besancon
Date d'inscription : 10/04/2010

Revenir en haut Aller en bas

Calcul du Elo  - Page 3 Empty Re: Calcul du Elo

Message par nivlinch Dim 29 Jan 2012 - 19:17

Les matchs nuls.
Les personnes ayant un grade non FESA (chinois, japonais, brésilen) ou ayant un grade d'avant le système ELO de la FESA.
Les personnes ayant un ELO, mais pas de grade (1028*, par exemple).

Si je pense à d'autres paramètres, je posterais à nouveau.
nivlinch
nivlinch
Eisei forumeur
Eisei forumeur

Nombre de messages : 1737
Age : 37
Localisation : York, UK
Date d'inscription : 07/03/2007

Revenir en haut Aller en bas

Calcul du Elo  - Page 3 Empty Re: Calcul du Elo

Message par Lelorrain Dim 4 Mar 2012 - 15:57

Bon, je me remets sur le code... Je ne vous cache pas que j'y comprends pas grand chose mouhahahaha, bonne surprise Very Happy

Ca ne veut pas dire que j'abandonne, mais bon... ça va me demander plus d'acharnement que prévu. Le code (pour un mécanicien) n'est vraiment pas évident... désolé de prendre autant de temps :s
Lelorrain
Lelorrain
Chariot Volant
Chariot Volant

Nombre de messages : 571
Age : 40
Localisation : Besancon
Date d'inscription : 10/04/2010

Revenir en haut Aller en bas

Calcul du Elo  - Page 3 Empty Re: Calcul du Elo

Message par ezano Dim 4 Mar 2012 - 19:39

Vu que t'es chaud pour le faire et que Oncle Ben m'a donné plein de taf, j'ai du arréter, mais je t'avance le travail.
J'ai localisé deux fonctions importantes et traduites en pseudo langage pour que n'importe qui puisse comprendre.
Il suffit de localisé les fonctions qui les appellent et essayer de les comprendre pour je pense comprendre ce qu'il se passe.

Code:
function innsats(point, list_elo_adv, &key, dummy=null, show=t):
    Si dummy:
        point = point + 0.5
    tr = list_elo_adv[0]
    limit = 0.001

    Boucle:
        a = 0
        b = 0
        Pour or dans list_elo_adv:
            k1 = 10^((or - tr) / 400)
            k2 = 1 / (1 + k1)
            a = a + k2
            b = b + (k1 * k2 * k2)
        modification = (point - a) / (b * (log 10 / 400))
        Si modification > 900:
            modification = 900
        Sinon si modification < -900:
            modification = -900

        Si valeur_absolue(modification) < limit + 0.0001:
            Si show:
                Affichage de message pour suivre l'évolution
            retourne arrondi(tr + modification)
        tr = tr + modification


function innsats2(adv_point_k_list, &key, show=t):
  tr = adv_point_k_list[0][0]
  limit = 0.001
  log = log(10) / 400

  Boucle:
        a = 0
        b = 0
        Pour m-p-k dans adv_point_k_list:
            u1 = 10^((m-p-k[0] - tr) / 400)
            u2 = 1 / (u1 + 1)
            a = a + (m-p-k[2] * (m-p-k[1] - u2))
            b = b + (m-p-k[2] * u1 * u2 * u2)
        modification = a / b / log
        Si modification > 800:
            modification = 800
        Sinon Si modification < -800:
            modification = -800

        Si valeur_absolue(modification) < limit + 0.0001:
            Si show:
                Affichage de message pour suivre l'évolution
            retourne arrondi(tr + modification)
        tr = tr + modification
   (return-from innsats2 (max (if *old-rule* 400 1)

Déjà la y a des truc louche genre les conditions à 800 et 900 je ne comprend pas pourquoi elles sont la.
ezano
ezano
Général d'Or
Général d'Or

Nombre de messages : 242
Date d'inscription : 16/07/2008

Revenir en haut Aller en bas

Calcul du Elo  - Page 3 Empty Re: Calcul du Elo

Message par Contenu sponsorisé


Contenu sponsorisé


Revenir en haut Aller en bas

Page 3 sur 3 Précédent  1, 2, 3

Revenir en haut

- Sujets similaires

 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum