La lecture aléatoire sur les lecteurs de musique n'est pas réellement aléatoire : voici comment cela fonctionne

Alexis Tremblay
Alexis Tremblay

mode aléatoire (c'est-à-dire le lecture aléatoire) est une fonction disponible sur les principaux lecteurs de musique et services de streaming musical modernes qui permet de lire les chansons contenues dans un dossier ou une playlist de manière – apparemment – ​​aléatoire. Même si vous utilisez assidûment cette fonction, il se peut que vous n'ayez pas conscience de son fonctionnement complexe car ses algorithmes sont étroitement liés à la psychologie de la perception des modèles par nous, les êtres humains.

Les premiers algorithmes de lecture aléatoire faisaient exactement cela : ils répertoriaient les chansons à lire dans un ordre complètement aléatoire. Mais déjà au début des années 2000, de nombreux utilisateurs se plaignaient du fait que le résultat n'était pas si aléatoire, par exemple lorsque deux chansons du même artiste se succédaient. En réalité, c'est une éventualité attendue dans une liste parfaitement causale, comme le fait que lors du lancement d'une donnée, il peut arriver qu'un nombre apparaisse 2 fois de suite. Pour éviter ces « coïncidences », les grandes entreprises actives dans le secteur ont commencé à faire le des algorithmes moins aléatoires « forcer » une plus grande distance entre les chansons appartenant à un même groupe logique (même artiste, même album, même genre, etc.).

Comme il dit Steve Emplois Lors du lancement officiel de l'iPod Shuffle en 2005, le but ultime de ce changement était de « rendre le processus moins aléatoire ». sembler plus décontracté. » Ce principe a ensuite été également appliqué à d’autres algorithmes que nous utilisons quotidiennement.

Comment fonctionnent les algorithmes de lecture aléatoire

Un exemple classique d'algorithme aléatoire pour lire des chansons en mode aléatoire estAlgorithme de Fisher-Yates. Conceptuellement, cet algorithme prend une liste de tous les éléments de la séquence et détermine l'élément suivant dans la séquence mélangée en extrayant aléatoirement un élément de la liste, jusqu'à ce qu'il n'en reste plus d'autres.

Pour augmenter le sensation Mais par hasard, Fiedler a conçu un algorithme de lecture alternatif, dont une version est aujourd'hui utilisée par exemple par la plateforme de streaming musical. Spotify. En substance, l'algorithme divise la collection musicale en plusieurs groupes logiques, et répartit les chansons selon le principe de diffusion maximale pour chaque groupe logique. Fiedler explique :

Les pistes de chaque groupe sont mélangées pour obtenir un ordre de lecture aléatoire et, dans le cas où le groupe est toujours divisible en sous-groupes (par exemple, vous l'avez regroupé en genres, maintenant vous le sous-groupez en artistes), pour cette étape, l'algorithme Balanced Shuffle est utilisé. . De cette manière, l’algorithme est appliqué de manière récursive jusqu’à ce qu’aucune autre classification ne soit possible. Dans ce cas, les morceaux restants de ce sous-groupe sont considérés comme de style égal et peuvent donc être mixés selon une méthode conventionnelle. Une fois les listes de chansons de tous les groupes collectées, l'essentiel de l'algorithme commence : les playlists par groupe sont fusionnées en une seule, respectant le principe de diffusion maximale.

Comment cet algorithme résout-il le problème de la fausse perception du manque d’aléatoire ? Dans un article publié sur son blog officiel, Spotify l'explique avec cet exemple :

Supposons que nous ayons une liste de lecture contenant des chansons de The White Stripes, Le XX, Bonobos, Britney Spears Et Jaga Jazziste. Pour chaque artiste, nous prenons leurs chansons et essayons de les répartir aussi uniformément que possible sur l'ensemble de la playlist. Ensuite, nous collectons toutes les chansons et les trions en fonction de leur emplacement.

Algorithme Spotify |  Géopop
Crédits : Spotify.

L'algorithme prend en compte le durée d'une playlist il est né en nombre de chansons présentes pour chaque type. Ainsi, pour revenir à l'exemple précédent, s'il y a quatre chansons de White Stripes dans la liste, chacune d'elles devrait être proposée environ tous les 25 % de la durée de la playlist. De plus, l'algorithme introduit un décalage aléatoire au début, afin que toutes les premières chansons ne finissent pas en position 0 et, pour obtenir un résultat qui semble le plus aléatoire possible, les chansons du même artiste sont également mélangées.

Pourquoi les playlists aléatoires ne nous semblent pas aléatoires : le « sophisme du joueur »

S'il faut en mettre deux, on dit erreur du joueur, dans lequel la probabilité perçue d'un événement est modifiée par ce qui s'est passé dans le passé : par exemple, si 57 est tiré dans la roue de Naples cette semaine, nous aurons tendance à penser que la semaine prochaine, il sera très improbable que le même nombre sera tiré à nouveau dans la même roue, mais en réalité la probabilité est toujours la même, soit 1/90. De même, si nous écoutons une chanson d'un artiste donné, il nous semblera très peu probable que la chanson suivante soit du même artiste, c'est pourquoi lorsque cela se produit, nous ne le percevons pas comme un événement aléatoire – même si c'est le cas. .

Comme l'a dit l'ingénieur logiciel Martin Fiedler sur son blog, « le problème avec les algorithmes de shuffle classiques, c'est qu'ils sont trop aléatoires. Ils manquent d’équité et de répartition uniforme. » Notre cerveau adore rechercher des motifs et le hasard et c'est pour cette raison qu'il interprète le hasard comme n'étant pas vraiment aléatoire si le même artiste joue plus d'une fois à une distance trop rapprochée.