mmos, еще вариант, отличный от предыдущего.
Канон.
Берем канон, разрезаем на кусочки, кусочек должен быть равен отступу одного голоса от другого.
Эти кусочки все прекрасно сочетаются друг с другом, причем в любой практически последовательности. При необходимости, дописываем еще такты в том же ключе.
Да, все-таки желательно, чтобы программка понимала, что одни такты более уместны в середине предложений, а другие - в каденции. Думаю, то несложно сделать, для любой комбинации два мотива - если это в 1-3 такт, то любые отрывки, если четвертый - то каденции.
Примерно так должно получиться:
Основа - популярнейший канон про брата Якоба. я только убрал повторения каждого такта, потому что для нас эти повторения никакой полезной информации не несут.
В результате осталось три "срединных" такта и один финальный. Маловато. я позволил себе дописать еще одну фразу, слегка разнообразя ритмические рисунки. Новые такты сохраняют тональный план, но совершенно не ставят целью мелодически соответствовать первоначальной мелодии. Но уверен, в каноне и новая мелодия вполне будет звучать.
А теперь последнее испытание - перемешиваем "срединные" такты, оставляя на местах каденции.
Примерно так может звучать музыка в Вашей программе.
Приложу-ка я миди файлик! =)) Звучит темка (4 такта), дописка (4 такта), такт паузы, и вариации.