Stumbled upon this site and this paper. Talks about generating beats and such using Euclid's algorithm and how it relates to world music:
I wanted to implement this in MAXMSP but I have a feeling I will need to just call in some external Java or C code. Below is what I have so far, all you do is select the number of HITS you want in a certain time frame (beats) and hit compute...all it does so far is generate a list of 1's (the hits) followed by 0's (the rests). The real algorithm is supposed to go from there, but I'm not sure how to implement it using MAX objects. Anyone care to look into this? I can easily do any combination by hand, but the whole point would be to automate it and let the user decide all the parameters.