人工免疫算法在演化音乐创作的应用

前言:寻找写作灵感?中文期刊网用心挑选的人工免疫算法在演化音乐创作的应用,希望能为您的阅读和创作带来灵感,欢迎大家阅读并分享。

人工免疫算法在演化音乐创作的应用

摘要:近年来,在音乐创作中引入了演化音乐形式,通过将人工智能算法中的人工免疫算法运用到演化音乐编码中,并使用免疫算法中的交叉、变异算子来对音乐编码序列进行配对,以达到提高音乐谱曲的效率的目的,最终实现计算机自动谱曲。

关键词:演化音乐;人工智能;人工免疫;谱曲

一、引言

近年来,国内外学者对一代又一代的音乐演化进行了初步的研究,而音乐演化是通过演化计算来实现的。利用人工智能算法对演化计算进行研究,已经成为当今研究的一个趋势。将人工免疫算法应用到音乐创作中是音乐演化的一种新的发展方向。人工免疫的概念是在20年前提出的,一经提出就受到了人工智能领域专家的关注。人工免疫算法是模拟人体自身的免疫系统,在自然免疫系统中,分别有抗原、抗体、细胞的再生、分化与抑制,而人工免疫算法抽象出问题最优解,以及问题解的保持、清除等。本文提出利用人工免疫算法构造适应度函数,确定相应基因所对应的编码策略,经过交叉,变异得到新的音乐编码初始种群。

二、演化音乐编码与免疫算子

(一)演化音乐编码

数字化音乐中编码形式有二进制编码、十进制编码等。二进制编码较为简单,采用0,1来构成编码序,通过相关的免疫算子操作,结合适应度函数计算形成二进制解码值。十进制编码从0~9随机构成编码序列,并借助人工免疫算法的交叉变异等免疫操作,对数值进行优化,提高算法效率。

(二)免疫算子和免疫操作

人工免疫算法是近年来提出的新的人工智能算法,是模拟生物自身的免疫系统并结合遗传算法而解决实际问题而形成的新算法。1.人工免疫中的疫苗形成。免疫疫苗序列的形成需要对种群进行重新分配,依据其问题解的相关性,分为可利用疫苗和不可利用疫苗,可利用疫苗通常情况下可以使优秀种群保留下来,也就是优秀问题解的保留。不可利用疫苗的作用则是去除非优秀种群的问题解。2.交叉算子。交叉算子的作用是使所有的音乐编码序列进行重新组合,从而找出概率相差较大的编码序列,从而保持了人工免疫算法中音乐编码序列种群的多样性。按概率P选择一段音乐编码序列与D1配对,就完成了音乐编码序列配对操作。完成配对后,对于每一对音乐编码序列,原则上采用两点交叉,其中交叉点的位置随机确定。3.变异算子。变异算子的概念是借鉴遗传算法,在基因进行交叉过程中,会出现基因变异,虽然变异概率较小,但是基因变异有利于音乐编码序列的重新组合。在免疫疫苗形成过程中,可以根据确定的亲和度函数,适当提高其变异算子概率。与交叉算子相同的一点是变异算子也会对音乐编码序列的多样性起到积极的作用。

三、新的演化音乐作曲步骤

Step1:构造适应度函数,确定二进制编码作为相应编码策略,相应基因组成编码元素。Step2:优化策略确定,得到新的音乐编码序列。Step3:进行选择操作。Step4:初始音乐编码种群产生。Step5:计算每个音乐编码种群的适应值,其代表了音乐种群中个体位串解码后的值。Step6:根据人工免疫进化策略,通过选择算子作用于音乐编码种群,经过每一轮的交叉、变异得到新的音乐编码序列。当新的音乐编码序列符合作曲者的要求,直到迭代次数结束为止。

四、实验结果分析

免疫算法中的交叉、选择算子可以使复杂的适应度函数简单化,从而更好地适应音乐创作。每一种交叉、变异操作都可以高效地改变音符顺序,使作曲者可以更迅速地得到自己想要的音乐旋律。第一小节是原始音符97057FF0,第二小节是经过转化后的音符0FF75079,第三小节是经过免疫算法操作后得到的音符FF097057,可以看出,经过交叉、变异算子后,得到第二小节内容,再经过选择算子,以及根据编码种群计算出的适应值,最后得到的音乐片段旋律明显优于原始片段。

五、结论

将人工免疫算法应用到演化音乐当中是将人工智能算法运用到艺术创作领域的一次有益探索,该算法的核心是模拟免疫进化原理,通过计算机数字化谱曲。本文提出的算法,通过疫苗的形成,交叉算子操作,变异算子操作,选择算子操作可以使演化音乐通过免疫算法达到自动谱曲的目的,从而极大地提高作曲者的音乐谱曲效率。

参考文献:

[1]刘明良.遗传算法在演化音乐中的应用研究[J].汉江师范学院学报,2017,37(6):74-78.

作者:陈贞 单位:陕西工运学院艺术教育系