Problème de scoring avancé
Olympiades mathématiques, énigmes et défis
-
marvin97139
- Messages: 3
- Enregistré le: 19 Déc 2016, 17:50
-
par marvin97139 » 02 Oct 2017, 08:28
Bonjour à tous,
Mon travail consiste à rendre des sites web plus rapide.
Pour évaluer les performances, le manager veut classer les agents pour distribuer les bonus.
Nous disposons du temps de chargement du site en millisecondes avant notre intervention.
Nous disposons du temps de chargement du site en millisecondes du site après notre intervention.
Problème: Plus un site est rapide au départ, et plus il est difficile de l'accélérer. Certains recoivent 70% de sites dit "difficiles" c'est à dire déjà rapides au départ, quand d'autres, n'en recoivent que "20%". Mais ceci est totalement hors de notre contrôle, et de celui des managers.
Comment pondérer les scores des agents pour tenir compte de cette réalité?
Je vous remercie mille fois pour votre aide. Je souhaiterais avoir vraiment le raisonnement et les explications pour me permettre de comprendre, plutôt que juste une "solution". Puisque les problèmes de scoring se posent souvent, et je suis curieux d'apprendre.
Bonne journée,
Modifié en dernier par
marvin97139 le 02 Oct 2017, 15:15, modifié 1 fois.
-
Pseuda
- Habitué(e)
- Messages: 3222
- Enregistré le: 08 Avr 2015, 12:44
-
par Pseuda » 02 Oct 2017, 09:16
Bonjour,
Au lieu de mesurer la performance par |T0-T1|, qui ne tient pas compte de l'impact de T0 initial, tu peux le faire par un rapport |T0-T1|/T0 : un gain de 2 millisecondes sur un temps de chargement initial de 4, sera mieux évalué qu'un gain 2 sur 10 initial.
Aprés, on peut peaufiner, mettre un coefficient au rapport, transformer le dénominateur en une fonction affine de T0 (aT0+b), ou mettre T0^2 ou racine carrée de T0 au dénominateur, etc... Il faut faire des simulations avec un tableur pour arriver à une solution qui vous convienne.
-
fatal_error
- Membre Légendaire
- Messages: 6610
- Enregistré le: 22 Nov 2007, 12:00
-
par fatal_error » 02 Oct 2017, 19:32
Hello,
très home made:
mais ce que je ferais c'est:
Je fais plein de "classes" représentées par des intervalles [a;b] (qui se chevauchent pas). où l'intervalle
est ici le temps du site __avant__
A chaque classe, j'ai fait une moyenne, idem genre les sites type [200ms;300ms] l'opti est de l'ordre de 30ms
Pour chaque site de l'agent, je peux associer la classe (de référence somme toute)
Je compare le résultat de l'agent par rapport au résultat dans la classe qui "matche". Idem si le site de l'agent est dans la classe [200ms;300ms] et qu'il a fait 20ms, c'est une chèvre.
Après on peut calculer par exemple la distance moyenne de l'agent par rapport à la référence de la classe donnée.
Puis mettre à jour la classe de référence en incorporant les résultats de l'agent!
L'idée étant que si l'agent est nul, sa valeur sera de plus en plus en dessous de la moyenne de la classe...
Pour construire les classes, j'aurais tendance à prendre un vieil algorithme de clustering (ca prend 15min à appliquer) et lui donner en entrée betement durée du site, temps optimisation (donc même pas relatif).
Ca reste très "en l'air", si t'as deux brouteurs et 5 sites, c'est pas très pertinent...
la vie est une fête

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 14 invités