How does Shuffle Play Feature Selections in Playlists?
You are listening to mixed music and an artist appears twice in a row. Do you think this is more than a coincidence? Perhaps your music player is a game it plays to you. In shuffle play, the music must be played in random order. And a truly random algorithm; selects any song from any album. This can cause the same artist to play two or three songs in a row. Especially if we have a lot of content from that artist. But this situation is not random to the user!
This is why most mixing algorithms try to ensure that consecutive songs are from different artists and albums. Some algorithms go even further. And it just chooses from the last 100 songs you’ve listened to, to deliver more than your favorite songs. If you keep listening you can see that this ‘random’ list will repeat exactly!
The sense that the playlists are played comes partly from The Gambler’s Delusion.
It makes you think that if nothing has happened for a long time, it is more likely to happen again. This is a trick of the brain. For example, if a coin is tossed into the air and it turns three times, we instinctively think that tails should come this time. But there is an equal chance for him to come back heads.
A playlist means artists, songs or genres feel wrong if they are repeated. If the shuffle is indeed random, Gambler’s Delusion makes us think. Then the songs should be more spaced. However, these songs have an equal chance of repeating.
These patterns have caused many users to complain, Babar Zafar, one of Spotify’s lead developers, told the BBC last week. Some angry users have said that there are conspiracy theories at work: for example, record labels are making deals with Spotify so that their artists are stolen more than others… But the company is working hard to make Spotify play randomly.
When Spotify was released, the company explained in a blog post: Using the “Fisher-Yates shuffle” feature, it created random playlists. This; is an efficient algorithm that generates random playlists without using too much computational power, taking only three lines of code to do “optimum amount of processing and optimum amount of randomness”.