You could try this approach(I also attached a patch with it):
48 = 4 * 10 + 1 * 8
so you use
n1=random(10)
n2 = 10 - n1
n3 = random(10)
n4 = 10-n3
.
.
n9 = random(8)
n10 = 8 - n9

But this makes the odd-ordered chords to start at every 10 seconds. I believe that Caio wants something more random than that.


Yes that's right. And another problem is that all the durations are integers. I want something without the feeling of (regular) pulsations.

 
BTW I have another idea :

initialise all of them to equal or almost equal amounts, then modify the delays gradully : pick a donor randomly among delays that aren't already minimum ; pick a acceptor randomly among delays that aren't already maximum ; give one unit of delay from the donor to the acceptor.


I was trying to figure out something like that. Now that I think about it, is more important to have a minimum duration than a maximum because depending on the minimum I chose, the probability of a chord too long is low (and bottom line I can always change the result to fit in what I want to hear).

I'll need to experiment a bit. If I have the time to make a cool patch with general paramethers I'll share with the list. Unfortunately today I could not compose.

Caio Barros