基于免疫计算的多峰值函数优化问题

更新时间:2024-01-28 作者:用户投稿原创标记本站原创 点赞:21465 浏览:95965

【摘 要】针对多峰值函数优化中,常规方法难以同时搜索出多个极值的问题,借鉴生物免疫系统机理,提出了基于人工免疫网络的多峰值函数优化算法,并在一些典型的测试函数上进行性能测试.结果表明,该算法有很好的全局和局部搜索能力,能较好地保持抗体的多样性,获得多峰值函数的全部或多个优化解.

【关 键 词 】人工免疫系统 免疫算法 收敛性 多峰值函数 优化

一、引言

免疫网络理论最初由美国科学家Jerne在1974年提出的,之后Farmer、Bersini等免疫理论学者分别于1986和1990年间发表了一系列免疫论文,为建立基于免疫原理的智能系统开辟了道路.

二、人工免疫算法

(一)基本原理

生物免疫系统是一个高度进化且复杂的功能系统,通过自我识别、相互刺激与制约而构成了一个动态平衡的网络结构.其中,抗原对应待优化的多峰值函数,抗体对应函数的解.抗体对抗原的识别程度称为亲和力,亲和力被定义为抗体对应的函数值.由函数决定抗原与抗体之间的亲和力,抗体与抗体间的亲和力由相应解的相似程度决定.

(二)步骤设计

初始化:在取值区间范围内,随机产生个初始抗体,得到抗体群,种群大小为.

循环:对群体中的每个抗体按以下步骤进行:Step1 计算适应值、浓度、抗体生存率和每个抗体和抗原的亲和度,也就是目标函数的适应值,以及抗体间亲和度;Step2 选择:选择和抗原亲和度最高的个抗体,记为;Step3 交叉:通过交叉算子生成新的个体,种群大小为m;Step4 变异:根据每个抗体的适应值,对抗体群中的个体进行变异,得到新的抗体群;Step5 更新群体:取中的个体,加入Baldwin效应后,进入记忆细胞的评价标准,得到新的记忆细胞抗体群,随机产生个新的父代抗体,形成新一代的抗体群;Step6 while(符合收敛条件)则结束.否则,重复Step2~4的操作.依次循环,直到满足条件为止.

三、函数优化问题

(一)问题描述.最优化问题由目标函数和约束条件构成,如下:

函数f4有四个全局最大值2.118,对称分布于(0.64,0.64),(-0.64,-0.64),(0.64,-0.64),(-0.64,0.64),它存在很多局部最大值,尤其在中间区域有一取值与全局最大值很接近的局部最大值(约为2.077)凸台.

(三)测试结果

下面应用人工免疫算法对上面4个函数在搜索区域内进行寻优测试.

测试结果表明:尽管测试函数各异,但人工免疫算法能以较快的速度搜索到全局最优解,而且所求最优解几乎就是所给的已知最优解.这说明用人工免疫算法对比较复杂的函数进行寻优测试,所取得的结果是令人满意的.


四、结论

本文提出了一种基于人工免疫网络的函数优化算法,该算法采用了生物免疫系统的克隆选择和免疫网络原理来实现对复杂函数的极值寻优,提高了全局与局部搜索能力,得到优化解.将该算法应用在比较复杂常见的多峰值函数,测试结果说明该算法具有较好的寻优效果.

相关论文范文