This is one of the ways that I know I'm a geek. When I put my music onto Random Repeat, I often find myself musing on how that might actually be implemented to strike a balance between randomness and getting a balance between the songs that you hear. It's like this.
First song is easy. I pick a random song from the list, call it A, and play it.
Now I have to pick another song, and here's where the options come in. I can just repeat the first step. However, that would give us the possibility that we'd just play A again, which would be a bit dull. So, I assume that I don't want to pick the same song twice and I pick a random song from [playlist - A] - call it B.
Now in my ideal implementation, you could just iterate over that. It does contain a tiny possibility of playing ABABABAB for infinity (or indeed ABBA :) ), but it's much closer to what I intuitively think of when I think random repeat should do. What actually seems to happen though in nearly all my devices is that when I get to the end of B, the device picks another track from [playlist - AB] and iterates over this until [playlist - songs played] is empty. Then it starts again, possibly with the constraint that A cannot be the same as Z (the last song played in the previous round). Which just seems ... less random to me. Still, it's a pleasant way to while away the time while you're waiting for the bus or whatever. I wonder what my iRiver will do...
First song is easy. I pick a random song from the list, call it A, and play it.
Now I have to pick another song, and here's where the options come in. I can just repeat the first step. However, that would give us the possibility that we'd just play A again, which would be a bit dull. So, I assume that I don't want to pick the same song twice and I pick a random song from [playlist - A] - call it B.
Now in my ideal implementation, you could just iterate over that. It does contain a tiny possibility of playing ABABABAB for infinity (or indeed ABBA :) ), but it's much closer to what I intuitively think of when I think random repeat should do. What actually seems to happen though in nearly all my devices is that when I get to the end of B, the device picks another track from [playlist - AB] and iterates over this until [playlist - songs played] is empty. Then it starts again, possibly with the constraint that A cannot be the same as Z (the last song played in the previous round). Which just seems ... less random to me. Still, it's a pleasant way to while away the time while you're waiting for the bus or whatever. I wonder what my iRiver will do...
no subject
Date: January 9th, 2004 05:08 am (UTC)From:no subject
Date: January 9th, 2004 05:45 am (UTC)From:no subject
Date: January 9th, 2004 08:43 am (UTC)From:no subject
Date: January 9th, 2004 06:05 am (UTC)From:And it doesn't do this randomly, either. At least, my stereo doesn't. A few months after I first got it, I spent a morning generating random sequences and comparing them. Given 5 12-track album with 100 or so sequences generated from each, the percentage distribution for the first track played was something like:
1 15%
2 5%
3 5%
4 5%
5 5%
6 20%
7 15%
8 5%
9 5%
10 10%
11 5%
12 5%
(numbers not exact because I'm going from memory here. Point is, it wasn't random.)
I always meant to do a more thorough analysis of the full sequences (particularly because I'm almost sure that there's some kind of 'if the previous track is 7, the next track is more likely to be 2' effect going on), or at least give the dataset to someone who was capable of doing so, but I never got around to it...
no subject
Date: January 9th, 2004 08:43 am (UTC)From:no subject
Date: January 9th, 2004 06:17 am (UTC)From:So you're getting an iRiver then?
no subject
Date: January 9th, 2004 08:44 am (UTC)From:no subject
Date: January 9th, 2004 10:38 am (UTC)From:no subject
Date: January 9th, 2004 06:47 am (UTC)From:Of course, it's not actually random then, except that at each stage, you'd be drawing from some distribution to chose a track. But you could do some neat things like increasing the probability of picking tracks with a similar mood or tempo, if you mark up your tracks accordingly.
Erm, there's also at least one paper I've seen presented recently that has something to do with picking tracks and artists and organising that kind of database, but I can't find a link to it at the moment :-( There's active academic research into track-choosing, though! There are also things like HPDJ which are even more clever, though may well require a bit more computation than the iriver could manage.
no subject
Date: January 9th, 2004 08:47 am (UTC)From: