Is the iPod Shuffle Playing Favorites?
marksilverman writes "Steven Levy at Newsweek is reporting that his iPod Shuffle seems to favor certain songs. Is Apple receiving kickbacks to promote certain artists? Apple denies it, of course, and Levy had the good sense to ask a mathmatician and a cryptographer who explained that it's probably just humans finding patterns where there are none." Less neurotically, both CNet and PCWorld have discussions of the Shuffle's interior spaces.
...look for patterns, to at least internally provide an explanation. (whether it's true or accurate is irrelevant.) go to craps table - unless you are neurotic, everyone develops a pattern to how they roll the dice. no reasons, no explanations. we are just made to take emotional comfort in attributing some pattern, real or otherwise.
Maybe they just have a weak random number algorithm? Or as the blurb says, maybe they have a strong one and it's just all in people's heads.
Dare any of ya to come up with a way Apple could do the whole "kickbacks" thing and actually make the implementation work. It's just journalists wording things special to slant the facts and try to get a rise out of people.
On macslash.org, there was an Ask MacSlash about iTunes somehow figuring out what songs sounded good together using some crazy sonic algorithm. The guy was asking if it was plausible that iTunes analyzed the songs in the playlist to spit out the best mix possible.
The basic consensus in the discussion was either "dude, your entire playlist is songs you like, of course it's gonna be a good mix.," or, the option mentioned above about humans looking for patterns.
Although, throughout my history of having large (over 1000 song) playlists, I've found that no matter what mp3 player I used (hardware, software, or otherwise), there always seemed to be certain bands or artists that would get play more often. I've had weeks at a time where I'd hear Snoop Dogg's Lodi Dodi, Iron Maiden's Quest for Fire or In Flames' Clayman nearly every time I picked up my iPod
...spike
Ewwwwww, coconut...
I just can't resist adding one of my favorite computer science quotes from von Neumann:
Anyone who considers arithmetical methods of producing random digits is, of course, in a state of sin.
people need to understand that "even" distributions are not random. clusters exist when there is true randomness. learned this little snippet of knowledge from an episode of numb3rs when an algorithm was being devised to locate a serial rapist turned murderer based on his seemingly random series of attacks. so i guess people would prefer listening to a single song from a randomly selected artist from their collection, instead of a random song.
http://www.sledgehammercomputers.com
So before dismissing thousands of people, I'd entertain the idea that Apple's engineers simply stuffed up. It wouldn't be the first bug that slips through QA testing.
At least in iTunes however, it seems to be a bad number generator... I have 1832 songs in my library, and yet I get repeats of songs very often (the most common repeat is when the same song is listed 4 songs later on party shuffle... and I don't have any duplicates in my library), and some albums that never, ever play.
;)
I understand the concept of observer bias (I am a biochemist), but just on anecdotal evidence, the party shuffle feature seems mediocre at best...
(I've never been annoyed enough to analyse song frequencies though
This reminds me of the birthday paradox:
"The birthday paradox states that if there are 23 people in a room then there is a slightly more than 50:50 chance that at least two of them will have the same birthday. For 60 or more people, the probability is greater than 99%. This is not a paradox in the sense of it leading to a logical contradiction; it is a paradox in the sense that it is a mathematical truth that contradicts common intuition. Most people estimate that the chance is much lower than 50:50."
Applied here, suppose you have 365 songs. How many random selections must be played before you have about a 50:50 chance of hearing a repeat? Just 23 songs.
What most people want is not random selection, but random order.
I just chalk it up to a bad shuffle mechanism.
In fact, I already had Party Shuffle before Apple added it, and I like my verion better. I have a smart playlist set up as:
Match all of the following conditions:
My rating is greater than 3 stars
Last played is not in the last two weeks
Genre does not contain audiobook
Genre does not contain comedy
Genre does not contain television
Genre does not contain theme
Limit to seventy minutes selected by random (so I can burn a CD for the car quickly if I choose).
Live Updating.
The only downside is I can only skip tracks until I reach the bottom of the list, as new tracks don't fill in until a track is played and taken off the list for not meeting the "last played in" stipulation.
First, there is the possibility that Apple screwed up the shuffling algorithm -- although not entirely likely. If you ask an introductory programmer to write some code to shuffle an array, you'll most likely get something like this:
for i in range(array_length):
j = random() % array_length
temp = array[i]
array[i] = array[j]
array[j] = temp
This code does NOT produce all permutations with equal probability! Instead, you must use the following code:
for i in range(array_length):
j = i + (random() % (array_length - i))
temp = array[i]
array[i] = array[j]
array[j] = temp
}
This was cribbed from c2 -- see the full article text here for a more informative discussion.
Second, I see a lot of people saying "I have a 20GB iPod -- and I swear sometimes it just NEVER plays this one song." Okay, let's assume that a 20GB iPod holds 5000 mp3 files. What's the probability that you play 5000 songs in shuffle mode, and never hear a particular song?
It's the probability that 5000 times in a row, you hear some other song -- that is, one of the 4999 other songs. Calculating, we get:
(4999/5000)^5000 = 0.3678.
So we have a 36% probability of this happening -- which is not a negligible amount! This will further be compounded by two things: First, you have no way of recalling exactly it has been since you heard a particular song -- if your favorite song was played 1000 songs earlier, it probably feels like 2000. If it feels like 2000, it's probably 4000. Because it's a favorite song, your mind will exaggerate the amount. It's like if you crave nicotine, it can feel like days since you've had a cigarette when it's only been hours. Second, you probably have a lot of songs you would call a "favorite" -- with each having a 36% chance of not being played over the course of 5000 plays, your mind will probably register that at least one of them is "feeling neglected."
Probability is a strange and beautiful thing. Don't expect your average audiophile to understand it. (And I'm not claiming to understand it either, beyond a very cursory level.)
- shadowmatter
i agree. i have created 20-30 song playlists on my iPod and when i play that same playlist through multiple time, i find the songs ending playing in a similar order even though the songs should be playing randomly. For example, i did an experiment by playing a 21 song playlist through 6 times, and every single time one particular song was played first on the playlist... and i could closely predict the next 6 songs. Quite unrandom. I find it happening all the time.
> You're absolutely right!@ There's an array inside the iPod shuffle of about 150 artists that will take precedence over all other artists.
Back in late 2001, I wrote a simple program which learns which songs I press "Next(b)" before it completes. Finally after 8 weeks, I realized that I listen to- Eminem and other rap in the morning
- Pop music later into the afternoon
- Rock was for the 5-7 pm slots
- After 10 , it was usually playing Enigma and instrumentals
Was quite different on a weekend with no music on saturdays and often slow Elvis songs on sunday afternoonsQuidquid latine dictum sit, altum videtur
That way, you have a lot more control over what songs get selected and - to tell you the truth - it's a lot more flexible than the autofill feature (it's sort of like discovering perl for the first time -- yeah, it's a lot more clumsy than just whipping up a simple shell script but it's also so much more powerful).
Basically, what I have a bunch of custom smart playlists. The first randomly selects songs that are :
- longer than 1:20
- not comedy, spoken word or audio books (I enjoy listening to George Carlin's rants as much as the next guy but I really don't need to listen to them when I'm out running)
- not longer than 8:00 (this excludes all jam songs etc.)
- hasn't been played in three days (to keep things fresh)
- are not named intro, interlude or skit (for obvious reasons), plus some very custom stuff.
Then I have a second smart playlist select some my favorite songs that I haven't listened to in a while (5 days).I use the 1st playlist to fill my Shuffle up to 75% capacity. The second playlist gets to use the remaining 25%.
You know, I used to think of all these software jukeboxes as bloatware. And whilst iTunes is undoubtedly quite demanding ressource-wise, I really believe it's well worth it. It's powerful and fun to use at the same time.
I've noticed that iTunes must generate a "random" sequence once per startup of iTunes. If after listening for a while you go back and explicitly listen to one of the songs you already heard and then let it continue randomly then it replays the same song order as before. They must seed the random generator once at startup instead of using the clock to seed each time they go to select the next song. So while the playlist is generated randomly, its the same randomness every time until a restart :)
The skewing effect requires that RAND_MAX is not a multiple of num_songs, and is very tiny when RAND_MAX is very much larger than num_songs.
But to see how the skewing arises, imagine you have num_songs = 3 songs with id's 0, 1 and 2, with random() returning 0 to RAND_MAX = 9. Then for random() returning 0, 3, 6 or 9, song_id is 0, so there's a 40% chance of hearing song 0, which presumably is "In The Navy".
I almost hate to mention it, but Windows Media Player has several "smart" playlists that can do just this. I think that one of them is "Songs I listen to at night" and another one is "Songs I like but haven't listened to lately".
Do I have to hand in my geek membership card for admitting that I use WMP?
-Montag