An issue with Play Music shuffling

Okay, I feel like I'm just ranting lately a lot, and I really don't mean to be.  Not my intention.

But, I have beefs and I don't mind sharing them when I can eloquently enough talk about them.

...says the guy pulling out a meme generator for his point...

I've noticed this problem for a while but really struggled with how to properly state it.

I love Google Play Music, I do.  I love uploading all my *ahem* properly acquired music to their server and then getting access to *my* music on whatever device I want.

Brilliant.

Plus, when I have no internet I can cache it... ya hear that YTM???!?!?!!

Issues with the app aside, I like it.

But here's the reason for today's discussion point.  Shuffling.  There's something about shuffling on Google Play Music when 'offline' that doesn't get you to shuffle through all the music on your phone.

Let me explain....

So, unless you don't care about data, then this is a bit of a moot point.

Typically, I'm a fairly cheap dude and want to keep myself from paying more, so I don't let GPM stream unless I'm on WiFi.  I have a 10GB plan, so I should be fine, ... buuuuuuut .... just in case.

So, when I'm on WiFi it'll predownload and cache some music on my phone so that when I'm not on WiFi I still have something to listen to.

If I go into the app and hit shuffle, it'll go through my songs and play them in a seemingly random way.

However, it seems to go through the list fairly quickly, because the tunes will repeat soon enough and I'll go through it all again ... and I know it didn't play songs I have on the phone yet it acts like it's gone through all of them and just starting over.

IF, I did this for just a single playlist, or I put the setting on for 'DOWNLOADED ONLY' I will get shuffling through all the stuff on my list or phone.

But its when I do 'all songs' and have not checked for just the downloaded.  It seems to make up a shuffled list of about 40-50 songs... even though I know I have way more than that.

I've checked.  I've gone through a 'routine' of songs... paused it, then clicked the 'downloaded only' list and can see songs that are cached, but the shuffle didn't hit.

Why?

I have a theory...

It works something like this.  I hit 'all songs shuffle' and instead of lining them up in some random order and playing sequentially, it must have some algorithm where it picks a number and then based on that number picks its next song.  If it can't play the next song, it goes to the next number.

Let's pretend I have 100 songs in my music library.

I hit all shuffle ... it selects 12.  It plays 12. 
It then selects next to be 39, but 39 isn't cached so it selects the next song to be 40.  40 plays.
It then selects the next song to be 17, but then it doesn't have 17, so it picks 38, 38 isn't cached either so it goes to 39, but 39 can't play so it picks 40.  40 plays...
and the process repeats; 12 then 40.

I'm just randomly making it up, but go a bit larger where my library is like 20k songs and I have a few hundred cached, the limited loop of songs seems to be like 40-50.  Seems like a lot, but definitely not all the songs it could.  And really noticeable when on a long drive.

You can see when I pull up the list, which songs are greyed out and inaccessible because they're not cached.

You can see when it goes to the next song, but, hey we just don't have it, go to another.  I can see having a lot of 'misses' messing with the algorithm so that it repeats sooner than it should.

Just wish it wasn't so.

I just did a couple quick tests here.

First time it got through 36 songs then started repeating.

I force closed the app and re did it and then got through 35 songs then it started to repeat.

do we have the same tastes in music?

Interestingly, in the 2nd run through only 5 songs were songs in the first experiment's loop.

SOO odd... c'mon Google.