Clumpy

Use Clumpy to derandomize a playlist. Good for auto-DJ.
Download Clumpy
Version 2025.9.1
(4 kB download!)

Clumpy uses evolutionary programming to derandomize, or clumpify, a playlist for you. It evolves a playlist that has the same words in the filenames of consecutive songs. Clumpy also allows you to adjust the frequency of songs containing specific words. So you can eliminate or greatly reduce the frequency of seasonal songs, like Christmas songs, for example. No need to move your songs from folder to folder or manually edit playlists every season.

It creates a mutant playlist, scores it, and if better, the mutant becomes the parent of future generations of playlists. This evolutionary cycle repeats tens of thousands of times in five or ten seconds. Tens of thousands of changes to the playlist are considered.

I was concerned about how to handle common words like "of", "the", and "and". My first thought was to eliminate them from consideration by the program, but that's subject to human error. What if I forget one? Which ones should I include? And how about the Spanish-language songs? My second thought was to have each word's score depend on how common it is, so the most common words will matter less in scoring, as it should be. So that's what's used.

Words that are only seen once in the playlist are removed from consideration because they don't affect scoring, as they have nothing to match.

Instead of comparing strings thousands of times, the words are hashed using FNV-1 32-bit hash, so hashing and comparisons are fast and collisions are unlikely.

Clumpy is included in my audio streaming package, but it deserves its own page, so here it is.




Page generated in 0.052912 seconds.

© 2025 Ron Spain