Aller au contenu
FR

Tirage au Sort de Noms

Collez votre liste (un nom par ligne, ou séparés par des virgules) puis tirez un gagnant ou mélangez tout le monde dans un ordre aléatoire.

Collez depuis un tableur ou tapez-les : virgules et sauts de ligne fonctionnent.

Le mélange que presque tout le monde rate

Cherchez comment mélanger une liste et la première réponse venue sera de la trier avec une comparaison aléatoire : sort(() => Math.random() - 0.5). Une ligne, l’air malin, et cela ne produit pas un mélange équitable. Un algorithme de tri suppose que la comparaison qu’on lui donne est cohérente : que si A précède B et B précède C, alors A précède C. Un pile ou face n’est pas cohérent, donc l’algorithme prend des décisions fondées sur des comparaisons qu’il a lui-même déjà contredites, et l’arrangement où il s’arrête dépend des entrailles du tri. En pratique, certains ordres sortent plusieurs fois plus souvent que d’autres, et lesquels dépend du navigateur.

La méthode correcte est plus vieille que le bogue d’un bon siècle. Fisher-Yates parcourt la liste de la dernière position à la seconde et, à chaque étape, échange l’élément courant avec un autre choisi parmi les positions jusqu’à lui inclus. Ce dernier détail est toute l’affaire : la plage doit rétrécir à mesure. Choisir dans la liste entière à chaque fois est l’erreur classique, et elle est subtile parce que tous les ordres restent atteignables. Seules les probabilités sont fausses. Mélangez trois noms ainsi et trois des six ordres sortent deux fois plus souvent que les trois autres.

Ici cela compte plus qu’ailleurs, car un tirage de noms sert précisément quand l’équité est l’enjeu : qui présente en premier, qui obtient la place, qui fait la corvée. Un mélange qui favorise silencieusement certains arrangements est un tirage truqué que personne ne peut voir. Celui d’ici est un Fisher-Yates à plage rétrécissante, vérifié en comptant combien de fois chaque arrangement apparaît, un test qui échoue exactement sur l’erreur décrite ci-dessus.

Les noms sont séparés aux sauts de ligne et aux virgules, si bien que coller une colonne de tableur et les taper à la main fonctionnent aussi bien. Les lignes vides et les espaces superflus sont écartés. Rien de ce que vous collez ne quitte votre navigateur : le tirage se fait sur votre propre machine, et la liste n’est ni envoyée ni conservée nulle part.

Questions fréquentes

Comment saisir les noms ?

Un par ligne, séparés par des virgules, ou un mélange des deux. Collez une colonne directement depuis un tableur, cela marchera. Les lignes vides et les espaces en trop sont ignorés, si bien qu’une ligne blanche en fin de collage ne devient pas un participant fantôme.

Tout le monde a-t-il la même chance ?

Oui. Chaque nom a la même probabilité d’être tiré et, lors d’un mélange, chaque ordre possible est également probable. Ce n’est pas le cas du mélange qu’utilisent la plupart des sites. Voir ci-dessus.

Puis-je tirer plusieurs gagnants ?

Mélangez toute la liste et prenez les premiers. L’ordre produit est équitable jusqu’au bout, donc les trois premiers d’une liste mélangée forment un tirage équitable de trois gagnants, sans répétition par construction.

Les noms sont-ils envoyés quelque part ?

Non. Tout s’exécute dans votre navigateur. La liste n’est ni téléversée, ni stockée, ni visible par nous. Fermer l’onglet suffit à s’en débarrasser.

Un tirage dans le navigateur convient-il pour un vrai lot ?

Le tirage est équitable, mais il n’est pas démontrable à qui ne regardait pas. C’est vrai de tout tirage en navigateur, pas seulement celui-ci. Pour un jeu-concours informel, cela suffit ; là où le résultat pourrait être contesté, faites-le en visioconférence avec témoins ou enregistrez l’écran.

Autres outils