Le Forum de l'Alliance Francophone

Nouvelles:

Auteur Sujet: Réflexions sur un type de stats harmonisées  (Lu 22246 fois)

0 Membres et 1 Invité sur ce sujet

Hors ligne Sébastien

  • Gentil admin
  • Boinc'eur devant l'éternel
  • *******
  • Messages: 2455
  •   

Suite à la lecture du sujet sur l'avenir de BOINC en Zone 51, j'ai commencé à réfléchir à un nouveau type de classement interne à l’AF.

Au départ, un simple constat : une différence de rémunération des projets pour une machine donnée.
Cette différence s’explique par le type de calcul (CPU ou GPU), le type d'OS (GNU / Mac / Windows ; 32 / 64 bits) ou les optimisations en fonction du type de processeur.
A titre d’exemple, aujourd’hui avec une machine de base, il est possible de faire par jour, 2000 points sur Rosetta, 4000 points sur ABC (en 64 bits), 10 000 points sur GPUGrid (calcul GPU NVidia) ou 80000 points sur Milkyway (GPU ATI)

Voici la solution que j’ai envisagé pour essayer d’harmoniser les statistiques des différents projets.
Sur 30 jours glissants, pour chaque projet, la production moyenne par membre est calculée. Ensuite, pour chaque membre, on détermine le ratio entre sa production et la production moyenne par membre.
Pour un classement général de tous les projets, il suffit alors d’additionner tous les ratios.

Pour être plus clair, voici un exemple avec 2 membres X et Y qui calculent sur 2 projets A et B.
Pour les 30 derniers jours, 50 membres ont participés au projet A (projet CPU) pour un total de 1 000 000. La production moyenne par membre est donc de 2 0000.
Pour la même période, le membre A a crédité 30 000 points. Son ratio à la production moyenne par membre est donc de 1.5 ou 1500 ‰.
Le membre B a crédité 10 000 points. Son ratio est de 0.5 soit 500 ‰.

Pour les 30 derniers jours, 100 membres ont participés au projet B (projet CPU et GPU) pour un total de 50 000 000. La production moyenne par membre est donc de 500 000.
Pour la même période, le membre A a crédité 10 000 points. Son ratio à la production moyenne par membre est donc de 0.02 ou 20 ‰.
Le membre B a crédité 500 000 points. Son ratio est de 1 soit 1000 ‰.

Si on fait la somme des projets, le membre A obtient 1520 points et le membre B 1500 points.


J’envisage donc de proposer ce type de classement sur mon site, en complément du classement général classique. Avant de le mettre en service, je souhaiterais avoir votre avis sur la pertinence de ce type de classement. Vous pouvez aussi proposer d’autres méthodes.

Petite précision : ce sujet n’a pas pour but de débattre de la disparité des rémunérations des projets mais d’une méthode pour essayer d’harmoniser les statistiques des différents projets.



Hors ligne tristesire

  • Boinc'eur devant l'éternel
  • *****
  • Messages: 3646
  •   
Réponse #1 le: 15 June 2009 à 10:33
Je n'ai pas encore regardé les incidences mais j'ai une question qui me saute aux lèvres : tu parles de rac/membre mais qu'en est-il du nombre de postes? En effet, tu semble partir du principe que chacun dispose d'un matos uniforme, hors c'est loin d'être le cas. Et d'autre part, les ressources ne sont pas formcément allouées h24 sur le même projet?



Hors ligne [AF>Libristes] Dudumomo

  • Boinc'eur devant l'éternel
  • *****
  • Messages: 6104
  •   
    • Find your home in Saigon
    • E-mail
Réponse #2 le: 15 June 2009 à 10:37
Merci Sebastien de ta créativité et de ta rapidité ^^

Si j'ai bien compris, c'est un systeme de stats basé sur la moyenne des cruncheurs sur le projet. Et plus on se différencie de la moyenne et plus on est un gros cruncheur ou petit dans le cas inverse. Ca semble sympa en effet.
Par contre...n'y a t'il pas un éternel débat entre moyenne et medianne dans ce genre de calcul ? (Ou on s'en fiche un peu pour lầ)
Et en tant de RAID sur un projet, comment ca va réagir niveau stats... celui qui faisait 1000pts avant par jour et était bien classé dessus, va se retrouver dans le fond via l'afflux des gros cruncheurs sur un raid (Bien que les petits aussi se ramène)

News & Tutorial on how to host your server: http://freedif.org


Hors ligne tristesire

  • Boinc'eur devant l'éternel
  • *****
  • Messages: 3646
  •   
Réponse #3 le: 15 June 2009 à 11:02
En relisant à trois reprises ton explication Seb, j'ai fini par saisir le principe. Tu n'exprimeras pas des crédits absolus mais relatifs, c'est assez intéressants.



Hors ligne Sébastien

  • Gentil admin
  • Boinc'eur devant l'éternel
  • *******
  • Messages: 2455
  •   
Réponse #4 le: 15 June 2009 à 11:06
Je n'ai pas encore regardé les incidences mais j'ai une question qui me saute aux lèvres : tu parles de rac/membre mais qu'en est-il du nombre de postes? En effet, tu semble partir du principe que chacun dispose d'un matos uniforme, hors c'est loin d'être le cas. Et d'autre part, les ressources ne sont pas formcément allouées h24 sur le même projet?

Je ne peux évidemment pas tenir compte de l'allocation des ressources de chaque membre, mais à mon sens, avec cette méthode, on peut gommer une partie des disparités.

Merci Sebastien de ta créativité et de ta rapidité ^^

Si j'ai bien compris, c'est un systeme de stats basé sur la moyenne des cruncheurs sur le projet. Et plus on se différencie de la moyenne et plus on est un gros cruncheur ou petit dans le cas inverse. Ca semble sympa en effet.
Par contre...n'y a t'il pas un éternel débat entre moyenne et medianne dans ce genre de calcul ? (Ou on s'en fiche un peu pour lầ)
Et en tant de RAID sur un projet, comment ca va réagir niveau stats... celui qui faisait 1000pts avant par jour et était bien classé dessus, va se retrouver dans le fond via l'afflux des gros cruncheurs sur un raid (Bien que les petits aussi se ramène)

Dans ce cas, la moyenne me semble plus appropriée que la médiane, mais je suis pas expert en statistiques.

Effectivement, en temps de RAID, le classement sur le projet va évoluer de la même façon que le classement classique. Par contre, le classement général ne devrait pas évoluer puisque les membres qui affluent ne calculeront plus sur les autres projets.



Hors ligne RLDF

  • Boinc'eur devant l'éternel
  • *****
  • Messages: 4687
  •   
    • avatar ?
Réponse #5 le: 15 June 2009 à 13:49
pourquoi ne pas partir sur le système de calcul type "world cup" de boincstats ?
ça a l'air de privilégier les personnes qui crunchent sur un maximum de projets plutôt que beaucoup sur un seul :)

il y a aussi la méthode du : "on ne compte que les points des projets qui n'utilisent pas du gpu pour garder l'équilibre"
donc tous les projets sauf gpugrid, seti, aqua, milkyway  :gniak:

d'un autre coté, je ne vois pas qui on veut satisfaire avec les stats...
« Modifié: 15 June 2009 à 13:52 par RLDF »



Hors ligne frederic

  • Boinc'eur devant l'éternel
  • *****
  • Messages: 2367
Réponse #6 le: 15 June 2009 à 19:49
Le principe "world cup" est calculé de la même façon que ce que tu propose Seb .

Le truc que je vois :
GPUGRID : que des CG donc moyenne par users disont 5K/J donc si je fait 15K j'ai 3 Pts
SETI : fourre tout donc moyenne par users disons 1000K/J donc si je fait 10K j'ai 10 Pts

Même carte !!! Moralité je laisse tomber GPUGRID qui peut servir pour aller sur SETI ..........  :(

Tout cela dans l'hypothèse où je m'intéresse aux stats .... mais si je ne m'y intéresse pas ... pas besoin de changer  :pt1cable:



Hors ligne Hildor

  • DROITS - Journalistes
  • Boinc'eur devant l'éternel
  • *
  • Messages: 6046
  •   
    • flickr
Réponse #7 le: 15 June 2009 à 20:12
Ton idée est très intéressante Seb  :jap:
Ce système a l'avantage que tout les projets sont égaux, ils distribuerons chacun un même nombre de points aux membres !

C'est bien la moyenne qu'il faut prendre, la médiane n'a aucun sens dans ce cas !
Pourquoi prendre les 30 dernier jour ? je serais plus pour prendre le total des points depuis le début.
Ce sera plus facilement comparable aux stats "normaux" par points.


J'insiste prend plutôt le nombre total de points par projet et par membre et pas seulement les 30 jours glissants.
Le classement changera assez vite comme cela, selon les projets que l'on crunchera !
et cela donnera un bonus au cruncheurs persévérant !
« Modifié: 15 June 2009 à 20:17 par Hildor »



Hors ligne Sébastien

  • Gentil admin
  • Boinc'eur devant l'éternel
  • *******
  • Messages: 2455
  •   
Réponse #8 le: 15 June 2009 à 21:04
Le principe "world cup" est calculé de la même façon que ce que tu propose Seb .

Le truc que je vois :
GPUGRID : que des CG donc moyenne par users disont 5K/J donc si je fait 15K j'ai 3 Pts
SETI : fourre tout donc moyenne par users disons 1000K/J donc si je fait 10K j'ai 10 Pts

Même carte !!! Moralité je laisse tomber GPUGRID qui peut servir pour aller sur SETI ..........  :(

Tout cela dans l'hypothèse où je m'intéresse aux stats .... mais si je ne m'y intéresse pas ... pas besoin de changer  :pt1cable:

Je connaissais pas la "world cup" de Boincstats. J'ai réinventé la roue   :desole:

Tu viens de mettre le doigt sur un problème, d'autant plus que l'écart de production entre SETI et GPUGrid est beaucoup plus important que ce que tu as supposé.
Bref, ce type de classement ne résout en rien le problème qu'il est censé résoudre.
Idée à oublier.  :(
 
Ton idée est très intéressante Seb  :jap:
Ce système a l'avantage que tout les projets sont égaux, ils distribuerons chacun un même nombre de points aux membres !

C'est bien la moyenne qu'il faut prendre, la médiane n'a aucun sens dans ce cas !
Pourquoi prendre les 30 dernier jour ? je serais plus pour prendre le total des points depuis le début.
Ce sera plus facilement comparable aux stats "normaux" par points.


J'insiste prend plutôt le nombre total de points par projet et par membre et pas seulement les 30 jours glissants.
Le classement changera assez vite comme cela, selon les projets que l'on crunchera !
et cela donnera un bonus au cruncheurs persévérant !

Si tu prends en compte le total des points depuis le début, les projets anciens vont être favorisés du fait d'un plus grand nombre de membres inactifs.
Sinon, il ne faut prendre en compte que les membres actifs.

Mais il reste toujours le problème soulevé par Fred.
Donc comme dit plus haut, je crois pas que ce classement soit une bonne idée.



Hors ligne Hildor

  • DROITS - Journalistes
  • Boinc'eur devant l'éternel
  • *
  • Messages: 6046
  •   
    • flickr
Réponse #9 le: 15 June 2009 à 21:23
Oui, il y a une faille ! mais j'ai la solution, plus simple

En faite, il ne faut pas prendre la moyenne des membres, mais seulement la contribution en % (x10000 par exemple) des membres au projet.

Par exemple je contribue à 0,2% a Seti et 1% a GPUGrid, j'ai donc 12000pts.
Cela me semble plus simple et beaucoup plus juste et correspond bien à notre contributions aux projets.

Les petit projets sont en effet avantagé car il est plus facile de contribuer à hauteur de 1% sur un petit projet que sur Seti.

Dans ce cas chaque projets distribue bien 1 000 000 pts à tous ses membres et cela reste indépendant du nombre de membres !
« Modifié: 15 June 2009 à 21:29 par Hildor »



Hors ligne xipehuz

  • Animateur fanatique
  • Boinc'eur devant l'éternel
  • *****
  • Messages: 1672
  •   
    • Les Xipéhuz
Réponse #10 le: 15 June 2009 à 22:57
Et pourquoi ne pas faire ça sur l'année, comme avec FB mais pour les membres, pas les teams, ou même le semestre.  Comme ça, on aura deux classement par an et on pourra se tirer la bourre plus souvent.

Par contre, le système World cup de Boincstat, je dois dire que j'y comprends rien, et en plus ça change tous les mois, ça dure pas assez longtemps   :/

Je prends les compliments comme des reproches d'hypocrites (Palinka)


Hors ligne [AF>Libristes] Guepi

  • Boinc'eur devant l'éternel
  • *****
  • Messages: 1888
  •   
Réponse #11 le: 15 June 2009 à 23:00
Ton idée de stats est bonne Seb !
Le truc, c'est que ça doit rester cantonné au classement général de la team, sans avoir le détail.  :siflotte:

Et bien sûr, ça devrait reposer sur le total de points des membres par projet, à moins que tu ne mettes un classement mensuel, ce qui permettrait peut-être aux nouveaux arrivants de se retrouver aux premières positions assez facilement.



Hors ligne Hildor

  • DROITS - Journalistes
  • Boinc'eur devant l'éternel
  • *
  • Messages: 6046
  •   
    • flickr
Réponse #12 le: 15 June 2009 à 23:09
Je pense, que pour commencer, il faut rester le plus simple possible.

De plus en prenant les points total et pas les points sur une période, on peut espérer évoluer dans le classement sur la durée et
de faire un parallèle avec les autres stats en points combinés.

Ensuite, il est possible d'ajouter des coupes annuelles, par exemple.



Hors ligne Extra Ball

  • Boinc'eur Respectable
  • ****
  • Messages: 609
  •   
Réponse #13 le: 15 June 2009 à 23:57
ça a l'air de privilégier les personnes qui crunchent sur un maximum de projets plutôt que beaucoup sur un seul :)
Pour le peu que j'en ai vu et compris d'apres mon propre classement qui oscille tous les jours, ca m'a plutot l'air de booster pas mal les cruncheurs qui se cantonnent aux projets ou ils sont super bien classes



Hors ligne Sébastien

  • Gentil admin
  • Boinc'eur devant l'éternel
  • *******
  • Messages: 2455
  •   
Réponse #14 le: 16 June 2009 à 18:23
Oui, il y a une faille ! mais j'ai la solution, plus simple

En faite, il ne faut pas prendre la moyenne des membres, mais seulement la contribution en % (x10000 par exemple) des membres au projet.

Par exemple je contribue à 0,2% a Seti et 1% a GPUGrid, j'ai donc 12000pts.
Cela me semble plus simple et beaucoup plus juste et correspond bien à notre contributions aux projets.

Les petit projets sont en effet avantagé car il est plus facile de contribuer à hauteur de 1% sur un petit projet que sur Seti.

Dans ce cas chaque projets distribue bien 1 000 000 pts à tous ses membres et cela reste indépendant du nombre de membres !

Ton idée est intéressante, même si elle risque de fortement désavantager les membres qui calculent sur les gros projets anciens (SETI, Rosetta, Einstein ou WCG).

Si elle est appliquée, il faudrait définir des critères pour la sélection des projets :
  • Projets non recommandés exclus ?
  • Seuil minimum en nombre de membres ?
  • Seuil minimum en nombre de points totaux ?

« Modifié: 16 June 2009 à 18:26 par sebastien »



Hors ligne RLDF

  • Boinc'eur devant l'éternel
  • *****
  • Messages: 4687
  •   
    • avatar ?
Ton idée est intéressante, même si elle risque de fortement désavantager les membres qui calculent sur les gros projets anciens (SETI, Rosetta, Einstein ou WCG).

Si elle est appliquée, il faudrait définir des critères pour la sélection des projets :
  • Projets non recommandés exclus ?
  • Seuil minimum en nombre de membres ?
  • Seuil minimum en nombre de points totaux ?
projets gpu exclus, on garde que les projets old-school  :sun:
pas de minimum, mais on exclu les inactifs
pour moi les inactifs sont les membres qui ne font plus aucun crédit boinc total depuis 1 semaine
en revanche, s'ils ont des crédits totaux sur cette période, ils sont visibles dans les projets où ils ont déjà crunché :)

en gros, tu pars en vacances plus d'une semaine et on ne te voit plus dans les stats :)
dès que tu reviens, tu réapparais et tu dois remonter la pente :)
« Modifié: 16 June 2009 à 19:12 par RLDF »



Hors ligne Hildor

  • DROITS - Journalistes
  • Boinc'eur devant l'éternel
  • *
  • Messages: 6046
  •   
    • flickr
Réponse #16 le: 16 June 2009 à 20:08
Dans mon idée tous les projets on la même valeur, donc forcement il sera plus facile d'avoir des points sur
les petits projets, c'est en faite exactement comme le FB !

On peut reprendre les conditions du FB

Mais je préfererais des conditions un peu différentes étant donné que c'est un classement interne à l'AF
 - Je suis pour exclure les projets non-recommandé par l'AF (dans ce cas cela me semble évident)
 - Ne pas forcement demander aux administrateurs des projets pour les inclure (cf Hydrogen) car l'AF cela concerne quand même moins de monde
 - Il faut forcément éliminer les projets en phase pré-alpha, pour cela le plus simple bien que ce n'est pas l'idéal, c'est de ne pas accepter les projets n'ayant pas encore obtenue 1 000 000 pts ou peut-être en fonction du nombre de membre (AF ou mondial).
 - Exclure les projets en test permanent ? (ça peut se discuter)

Je ne suis pas trop d'accord avec RDLF :
 - il ne faut pas exclure les projets GPU, il auront autant d'importance que les autres, ni plus, ni moins.
 - Je ne suis pas non plus pour exclure les projets inactifs, ceux qui auront eu le courage d'y participer seront donc récompensé.
 - Ne pas excule non plus les membres inactifs, il descendrons dans le classement c'est tout ! comme n'importe qu'elle stats !

Il faut rester le plus simple et le plus universelle possible.
« Modifié: 16 June 2009 à 20:27 par Hildor »



Hors ligne Hildor

  • DROITS - Journalistes
  • Boinc'eur devant l'éternel
  • *
  • Messages: 6046
  •   
    • flickr
Réponse #17 le: 16 June 2009 à 20:19
De mon points de vue ces stats, ne sont que des stats complémentaires aux autres stats comme SetiBZH par exemple.

Les stats de SetiBZH récompense ceux qui fournisse beaucoup de GFlops à Boinc est elles sont totalement légitime et même seront tj prédominentes !

Ces nouveaux stats récompenserons plutôt les aventuriers des petits projets (mais pas trop petit, quand même) qui ont tendance à être délaisser à cause de divers raisons (bp de RAM, Wu en erreurs, peu de crédits, deadline courte, etc...)

Ce seront donc deux stats complémentaires et dans les deux cas la persévérance à Boinc est récompensé !  

Après, mais je ne suis pas très pour, on peut envisager de pondérer l'importance des projets en fonction du nombre de membres, le nombre de crédits, le temps d'existence ou autre....
« Modifié: 16 June 2009 à 20:28 par Hildor »



Hors ligne RLDF

  • Boinc'eur devant l'éternel
  • *****
  • Messages: 4687
  •   
    • avatar ?
Réponse #18 le: 16 June 2009 à 20:59
Ce seront donc deux stats complémentaires et dans les deux cas la persévérance à Boinc est récompensé !

attention, ce que j'ai marqué au dessus à l'air dur mais il y a une raison
avec ce que j'ai mis, les personnes qui ont très peu de points auraient une chance de se voir dans un top10
en y réfléchissant il faudrait même aller plus loin : récompenser l'assiduité plutôt que la persévérance
en ce sens, les projets gpu n'ont aucun intérêt, et mieux, plus le projet est petit et plus ça paye !

on peut même ajouter que cela apporte un avantage pour le FB, les membres vont se répartir plus efficacement sur les petits projets pour faire gagner des points au FB, il suffira de faire des raids ou commandos sur les gros projets pour récupérer des points aux autres équipes

ou alors on passe à de toutes autres stats, pondérer les projets en fonction du nombres de points FB potentiels a gagner, plus les membres cruncheront sur ces projets et plus ils auront de points AF :)
bien sûr c'est entièrement dynamique en fonction du classement quotidien   :gniak:

on pourra appeler cela le top des contributeurs au FB puisqu'il récompensera celui qui aura le mieux lu les opportunités par projets et par jour :)
« Modifié: 16 June 2009 à 21:09 par RLDF »



Hors ligne Hildor

  • DROITS - Journalistes
  • Boinc'eur devant l'éternel
  • *
  • Messages: 6046
  •   
    • flickr
Réponse #19 le: 16 June 2009 à 23:33

Ok ! mais cela devient un peu une machine à gaz ! mais pourquoi pas !

Le système que je propose, favorise déjà beaucoup les petits projets et donc le classement FB.
Il a même aussi tendance à favoriser les projets délaissés par l'AF car c'est sur les projets ou il y a le moins de crédits
total (de l'AF) où il sera plus facile à prendre des points !

Et ce sera plus facile de s'y retrouver, sans que le classement change de tout au tout d'un jour à l'autre.



Hors ligne Sébastien

  • Gentil admin
  • Boinc'eur devant l'éternel
  • *******
  • Messages: 2455
  •   
Réponse #20 le: 17 June 2009 à 09:20
Je pense qu'il ne faut pas exclure les projets GPU, car avec ce système tous les projets ont le même poids.

Pour les critères, j'aurais plutôt vu :
- une exclusion des projets non-recommandés
- un minimum de 100 membres de l'AF avec crédits sur le projet
- un minimum de 100000 points faits par l'AF sur le projet

Par contre, je suis plutôt du même avis que RLDF en ce qui concerne les membres inactifs.
Je verrais bien un classement sur 30 jours glissants.



Hors ligne RLDF

  • Boinc'eur devant l'éternel
  • *****
  • Messages: 4687
  •   
    • avatar ?
Réponse #21 le: 17 June 2009 à 10:13
Je pense qu'il ne faut pas exclure les projets GPU, car avec ce système tous les projets ont le même poids.

Pour les critères, j'aurais plutôt vu :
- une exclusion des projets non-recommandés
- un minimum de 100 membres de l'AF avec crédits sur le projet
- un minimum de 100000 points faits par l'AF sur le projet

Par contre, je suis plutôt du même avis que RLDF en ce qui concerne les membres inactifs.
Je verrais bien un classement sur 30 jours glissants.

je suis d'accord avec tes critères, si c'est pas trop compliqué, peux-tu nous faire une page qui évoluera en fonction des améliorations histoire de comprendre concrètement le classement ?


Hors ligne Sébastien

  • Gentil admin
  • Boinc'eur devant l'éternel
  • *******
  • Messages: 2455
  •   
je suis d'accord avec tes critères, si c'est pas trop compliqué, peux-tu nous faire une page qui évoluera en fonction des améliorations histoire de comprendre concrètement le classement ?

Voilà la page : https://statseb.boinc-af.org/test_classement.py



Hors ligne RLDF

  • Boinc'eur devant l'éternel
  • *****
  • Messages: 4687
  •   
    • avatar ?

Hors ligne Sébastien

  • Gentil admin
  • Boinc'eur devant l'éternel
  • *******
  • Messages: 2455
  •   
Réponse #24 le: 17 June 2009 à 15:21
J'ai ajouté la possibilité de choisir entre le classement sur les 30 derniers jours et le classement sur la totalité des points comme le proposait Hildor.