假设我想编写应用程序来撰写音乐。
我想提供作曲家的一组乐谱 - 例如Bach's's's hotering clavier' - 以及计划应该以类似的方式准备新的分数。
这项任务是否已知算法甚至库?
WikiPedia提供了有关algorithmic music composition。
的页面答案 0 :(得分:5)
您可以使用Markov chains制作基本内容。原则是首先产生一些音乐单元(例如,单个音符),然后,基于最后产生的单元,随机选择下一个单元。
首先,通过输入音乐。每当您看到特定音符/其他音乐单元时,只需在表格中记录后面的内容。当您通过整个输入材料时,您将得到一个频率表,其中单位遵循哪个(在'A'之后,'B'出现29次,'C'出现12次而'A'出现两次;在'B之后'......等等。
现在选择一个初始音符。根据表中记录的频率随机选择下一个。重复直到满意为止。
如果应用于单个音符,这可能不会产生好的结果,而是尝试短语。此外,如果您可以访问大量源音乐,质量将会提高。