Calcul des points : la faille
726 messaggio/i normal
Visualizzazione da 461 a 480 di 726 elementi
26/11/2010 02:23 UTC
Modificato il 16/05/2021 09:48 UTC
serialbuscontroler :
Le nombre d'égalité dans un classement, et ce, pour chaque place (traitement en O(n)), c'est la valeur \"e\" dans la formule de BS?
(...)
A l'époque(XD), la formule était bonne mais juste le \"e\" induisait des boucles et rallongait considérablement le temps d'affichage.
Si ce problème est résolu,c'est OK.
Effectivement, c'est bien ça, à l'époque, je n'étais pas au courant de la fonction php array_count_values qui renvoi très rapidement un tableau indiquant le nombre d'occurrences d'une valeur (plutôt qu'une boucle qui prendrait pas mal de temps), très utile pour svoir les égalités.
Mais effectivement, comme le dit lapogne, la formule n'est pas adaptée pour de gros classements...
Le problème des égalités n'en est plus vraiment un, dans le sens où pour en avoir parlé à pas mal de monde autour de moi, l'idée de prendre la moyenne des points d'un classement sans égalités est bien suffisante si la fonction est décroissante (or, elle doit l'être pour qu'un mec mal placé ne gagne pas plus de points qu'un mec bien placé)
28/11/2010 14:44 UTC
Modificato il 16/05/2021 09:48 UTC
28/11/2010 18:16 UTC
Modificato il 16/05/2021 09:48 UTC
28/11/2010 20:53 UTC
Modificato il 16/05/2021 09:48 UTC
niconoe :
l'idée de prendre la moyenne des points d'un classement sans égalités est bien suffisante si la fonction est décroissante (or, elle doit l'être pour qu'un mec mal placé ne gagne pas plus de points qu'un mec bien placé)
Si sur une épreuve à 20 joueurs, il y a 10 égalités en première place,
et que un 21ème joueur arrive et soit aussi à égalité avec les 10 en première place.
Le score de la 1ère place doit-il augmenter ou baisser ?
Personnellement, je serais d'avis de faire baisser le score, mais si tu fais une moyenne, je suis pas certain que l'effet \"plus il y a de joueurs plus il y a de points\" soit plus fort que la toute petite modification de la moyenne du top10 / top11
(bon j'ai pas tellement regardé la formule en vrai)
Autre question qualitative :
Si un joueur est 500ème sur 1000, devrait-il gagner environ autant de points qu'un joueur 50ème sur 100 ?
29/11/2010 00:34 UTC
Modificato il 16/05/2021 09:48 UTC
01/12/2010 03:15 UTC
Modificato il 16/05/2021 09:48 UTC
Ça me semble très dur de pouvoir faire plusieurs classement listant pour chacun d'eux le nombre de pointRecord à leur attribuer en fonction de leur rang qui soient cohérent...
Je cherche un générateur de graphique 3D qui me permettrait de modéliser la fonction que j'ai en tête afin que nos matheux se prennent la tête dessus :P mais en vain, ça n'a pas l'air d'exister sans payer une petite fortune...
Je continue tout de même mes recherches mais si j'arrive à rien, je ferai plusieurs courbes en 2D sur plusieurs graphs isométrique et orthonormé.
Je cherche un générateur de graphique 3D qui me permettrait de modéliser la fonction que j'ai en tête afin que nos matheux se prennent la tête dessus :P mais en vain, ça n'a pas l'air d'exister sans payer une petite fortune...
Je continue tout de même mes recherches mais si j'arrive à rien, je ferai plusieurs courbes en 2D sur plusieurs graphs isométrique et orthonormé.
02/12/2010 14:26 UTC
Modificato il 16/05/2021 09:48 UTC
02/12/2010 17:49 UTC
Modificato il 16/05/2021 09:48 UTC
Doraki :
Y'a un endroit où on peut voir le nombre de points rapportés par chaque score ?
Oui !
Sur le score lui même.
Place ton pointeur sur la position du membre (dans la liste de score, et un chiffre apparaitra.
Exemple :
1er Andrémanoukian 2sec 28
2e Mireillemathieu 3sec 33
Place ton pointeur sur \"1er\" ou \"2e\".
10/12/2010 04:48 UTC
Modificato il 16/05/2021 09:48 UTC
bon, j'ai pas réussis à faire de plan en 3D donc voici une image médiocre avec les explications qui vont avec :
"
Alors,
1èrement pour la faute énorme en vert (y=33 et y=75) désolé, j'ai fait ça un peu tard et j'avais la flemme de revenir en arrière... c'est bien sur x = 33 et x = 75, mais bref, on a compris...
L'axe des abscisses représente la position du joueur
L'axe des ordonnées représente le nombre de points gagnés (en dehors du contexte d'égalité)
La courbe en bleu symbolise la courbe de référence. On peut considérer cette courbe valide pour un z (nombre de personnes dans le classement) petit.
La courbe en rouge symbolise la courbe finale. On peut considérer cette courbe valide pour un z relativement grand.
Le principe est de créer une \"bosse\" dans la courbe bleue pour qu'elle rejoigne la courbe rouge de telle sorte que la décélération la plus petite soit à 33% du classement et que la décélération la plus forte soit à 75% (g'(33) ~= 0 et g'(75) = M)
Bien sûr, la vitesse de décroissement minimal et maximal dépends de z.
J'ai pris un jeu de test de 100 posts dans un classement pour dessiner cette courbe.
Sinon, en soit, la fonction bleue :
f(x,z) = (z+1-x)*(100/(x^(1/7))) avec x <= z me semble pas si mal...
Mais la rouge donne un peu plus de piment dans l'esprit de compétition et il peut être intéressant d'avoir ce genre de courbe car elle reprends la plus grande majorité des corrections théorique trouvé sur les problèmes actuels : écart entre les premiers entre-eux grand mais écart entre dernier entre-eux faible avec possibilité de gagner pas mal de point si l'on est dans les 33% premiers, classement pouvant atteindre 1.000.000 de posts sans atteindre le minimum de 10 points et avec toujours un écart intéressant entre le dernier et avant-dernier (et pas qu'un seul point...), etc etc...
L'approche par les courbes de Béziers est-il si compliqué à définir ? Car la courbe rouge pourrait facilement représenter une spline de Béziers je trouve
Bref, je passe le flambeau aux membres qui désirait avoir plus de \"points statiques\" dans la définition de la courbe
EDIT : je viens de me rendre compte qu'une fonction gaussienne composée à mon f(x) en bleu rendrait vraiment bien aussi... à étudier peut-être
"Alors,
1èrement pour la faute énorme en vert (y=33 et y=75) désolé, j'ai fait ça un peu tard et j'avais la flemme de revenir en arrière... c'est bien sur x = 33 et x = 75, mais bref, on a compris...
L'axe des abscisses représente la position du joueur
L'axe des ordonnées représente le nombre de points gagnés (en dehors du contexte d'égalité)
La courbe en bleu symbolise la courbe de référence. On peut considérer cette courbe valide pour un z (nombre de personnes dans le classement) petit.
La courbe en rouge symbolise la courbe finale. On peut considérer cette courbe valide pour un z relativement grand.
Le principe est de créer une \"bosse\" dans la courbe bleue pour qu'elle rejoigne la courbe rouge de telle sorte que la décélération la plus petite soit à 33% du classement et que la décélération la plus forte soit à 75% (g'(33) ~= 0 et g'(75) = M)
Bien sûr, la vitesse de décroissement minimal et maximal dépends de z.
J'ai pris un jeu de test de 100 posts dans un classement pour dessiner cette courbe.
Sinon, en soit, la fonction bleue :
f(x,z) = (z+1-x)*(100/(x^(1/7))) avec x <= z me semble pas si mal...
Mais la rouge donne un peu plus de piment dans l'esprit de compétition et il peut être intéressant d'avoir ce genre de courbe car elle reprends la plus grande majorité des corrections théorique trouvé sur les problèmes actuels : écart entre les premiers entre-eux grand mais écart entre dernier entre-eux faible avec possibilité de gagner pas mal de point si l'on est dans les 33% premiers, classement pouvant atteindre 1.000.000 de posts sans atteindre le minimum de 10 points et avec toujours un écart intéressant entre le dernier et avant-dernier (et pas qu'un seul point...), etc etc...
L'approche par les courbes de Béziers est-il si compliqué à définir ? Car la courbe rouge pourrait facilement représenter une spline de Béziers je trouve

Bref, je passe le flambeau aux membres qui désirait avoir plus de \"points statiques\" dans la définition de la courbe

EDIT : je viens de me rendre compte qu'une fonction gaussienne composée à mon f(x) en bleu rendrait vraiment bien aussi... à étudier peut-être
10/12/2010 14:33 UTC
Modificato il 16/05/2021 09:48 UTC
10/12/2010 14:40 UTC
Modificato il 16/05/2021 09:48 UTC
11/12/2010 01:21 UTC
Modificato il 16/05/2021 09:48 UTC
serialbuscontroler :
Juste une question: au delà de 100 joueurs, la courbe évolue comment?
Plus il y a de joueurs dans le classement plus la courbe sera haute, donc plus la \"bosse\" sera de plus en plus décalée par rapport à la courbe bleue. C'est pour cette raison que j'utilise des pourcentages pour définir les asymptotes...
Je pense qu'à partir du moment où la dérivée au point x = z/3 est très proche de 0 (car il faut que la courbe soit strictement décroissante, donc pas 0 pile) la \"bosse\" arrête de grandir.
11/12/2010 20:56 UTC
Modificato il 16/05/2021 09:48 UTC
En clair tu as une courbe qui a pour xmax=nb de joueur, et plus le nbe de joueur augmente, plus y est grand pour x=1 ? sachant que y doit etre assez grand pour xmax, et ensuite tu fais..l'opposé de la dérivée, je sais plus comment ça s'appelle, et tu as une courbe qui a des ecart de plus en plus faibles, tout en gardant de l'ecart en fond de classement
Je sais pas si c'est realisable ni comment mais je me debrouille pour aider avec mon peu de connaissance x)
Je sais pas si c'est realisable ni comment mais je me debrouille pour aider avec mon peu de connaissance x)
11/12/2010 22:08 UTC
Modificato il 16/05/2021 09:48 UTC
En clair, pas du tout...
Tu peux essayer d'imaginer la courbe s'étandant en profondeur...
Au premier plan, on aura la courbe bleu qui définira le nombre de points.
Tout au fond, tu aura la courbe rouge étendue à son maximum, c'est à dire de telle manière qu'au point x = 33% * z (où z est le nombre de posts et x la position du joueur), la courbe soit \"presque\" horizontale et au point x = 75% * z, la courbe rouge soit \"presque\" verticale.
Mais effectivement, y représente bien le nombre de point gagnés
On parle ici d'une condition de classement sans égalités, puisque les égalités seront gérées par le calcul de moyenne.
Tu peux essayer d'imaginer la courbe s'étandant en profondeur...
Au premier plan, on aura la courbe bleu qui définira le nombre de points.
Tout au fond, tu aura la courbe rouge étendue à son maximum, c'est à dire de telle manière qu'au point x = 33% * z (où z est le nombre de posts et x la position du joueur), la courbe soit \"presque\" horizontale et au point x = 75% * z, la courbe rouge soit \"presque\" verticale.
Mais effectivement, y représente bien le nombre de point gagnés
On parle ici d'une condition de classement sans égalités, puisque les égalités seront gérées par le calcul de moyenne.
12/12/2010 02:06 UTC
Modificato il 16/05/2021 09:48 UTC
12/12/2010 15:09 UTC
Modificato il 16/05/2021 09:48 UTC
12/12/2010 15:30 UTC
Modificato il 16/05/2021 09:48 UTC
Ok, merci pour la fonction polynomial, d'essayer du trouver un truc...
J'ai personnellement du mal à essayer de trouver une fonction polynomiale qui ressemble à la rouge, mais la principale difficulté c'est de trouver une fonction qui, pour f(x,1) ressemble à la bleu et pour f(x,100) ressemble à la rouge...
J'ai personnellement du mal à essayer de trouver une fonction polynomiale qui ressemble à la rouge, mais la principale difficulté c'est de trouver une fonction qui, pour f(x,1) ressemble à la bleu et pour f(x,100) ressemble à la rouge...
12/12/2010 17:13 UTC
Modificato il 16/05/2021 09:48 UTC
Ce que je comprends sur le graphique de Niconoe, c'est une fonction qui permettrait d'obtenir des points sans toucher l'axe des X comme une inversement proportionnelle.
Est-ce que plus on est de joueurs, plus le joueur qui est premier va atteindre presque 100 points sans y toucher? Je suis en train de me demander si on va suivre la même méthode que sur Cyberscore.
Est-ce que plus on est de joueurs, plus le joueur qui est premier va atteindre presque 100 points sans y toucher? Je suis en train de me demander si on va suivre la même méthode que sur Cyberscore.
12/12/2010 20:48 UTC
Modificato il 16/05/2021 09:48 UTC
13/12/2010 01:38 UTC
Modificato il 16/05/2021 09:48 UTC
Visualizzazione da 461 a 480 di 726 elementi
You must be logged in to reply to this topic.