面向多峰函数优化的PASFLI算法及应用
基于形状空间的克隆选择算法用于多峰值函数的优化

基于形状空间的克隆选择算法用于多峰值函数的优化
潘峰;丁云飞;汪为农
【期刊名称】《上海交通大学学报》
【年(卷),期】2004(38)12
【摘要】在简单描述免疫系统中克隆选择和形状空间理论的基础上,提出了一种新的、基于形状空间的克隆选择算法.将该算法用于对多峰值函数的寻优,能得到很好的结果;借用遗传算法的积木块假设对该算法的收敛性进行分析,证明了本算法在满足一定前提条件下,能够以趋近于1的概率收敛.
【总页数】5页(P2089-2093)
【关键词】克隆选择;多峰值函数;遗传算法;免疫算法
【作者】潘峰;丁云飞;汪为农
【作者单位】上海交通大学计算机科学与工程系;谢菲尔德大学自动控制和系统工程系
【正文语种】中文
【中图分类】TP18
【相关文献】
1.一种改进的克隆选择算法在多峰值函数优化中的应用 [J], 吴义虎;杨秋实
2.一种改进的用于多峰值函数优化的自适应克隆选择算法 [J], 靳宗信;郑良仁;樊红娟
3.基于改进克隆选择算法的函数优化问题 [J], 陈曦;贺建军;万力;丁跃浇
4.用于多峰值寻优的人工免疫克隆选择算法 [J], 徐静波
5.多峰值函数优化的改进克隆选择算法 [J], 李小勇;黄汉明;覃邦余;时丽娜
因版权原因,仅展示原文概要,查看原文内容请购买。
高频变异免疫算法在多峰函数优化中的应用

基 本 免疫 算 法 与遗 传 算法 相 似 , 含克 隆 、 叉 、 包 交 变 异 。 免疫 算 法 思 想 主要 是 在 合 理 提 取疫 苗 的基 础 上 , 过 免 疫选 择来 完成 防止 群 体 的退 化 , 到 优 化 通 得 解 。高 频变 异免疫 算法 , 只包 含克 隆和 变异 , 省略 交叉 环 节 。克 隆 目的是 保存 优 良的父 代信 息 , 法易 陷入 算
方 式产 生基 因序 列 X 。
1 . 免 疫选择 2
ቤተ መጻሕፍቲ ባይዱ
操 作 分三 步完 成 。 1 免 疫检 测 : ) 识别 并保 留优秀 精 英抗 体 。若 个体 适应 度优 于父代 , 保 留 , 行第 二 则 进
步处理 ; 若不如父代 , 用父代中所对应的个体所取代该 个 体 。2 克 隆选 择 : ) 即在 目前 的子 代 群 体 =f i , X
高频变异免疫算法在多峰函数优化中的应用术
何 兵
660) 4 0 5 ( 泸州职业技术学 院 机 电工程研究所 , 1 泸州 四川
【商 要】 介 绍 了基 于生物免 疫机 制的、 } 具有 良好 并行运 算特性 的人工免疫算 法原理 , 以及基本免疫算法的不足 ;
给 出 了 高频 变异 免 疫 算 法 的基 本 流 程 , 用一 个 多峰 函数 为例 说 明 了免 疫 算 法 在 函数 优 化 设 计 中的应 用 。 并
有 以下问题 :
非线性规划的遗传算法在多峰函数优化中的应用

优解 。 并 提 高 迭代 寻 优 效 率 .
1 算法简介
遗传算法 【 8 ] , 作为一种随机搜 索算法 , 基于随机产生的初始种群 , 通过选择 、 交叉 、 变异操作开始搜 索优
化 问题 的最 优 解 而产 生 新 种 群 . 经过逐步进化 , 遗传 算 法 准 确 或 大概 率 收 敛 于优 化 问题 的全 局 最优 解 。 从 而 获 得 优 化 问 题 的最 优 解 或 次 优 解 . 由于 遗传 算 法 具 有 良好 的全 局 搜 索 能力 和易 于 实 现 等 优 点 , 对 传 统 搜 索 算 法难 以解 决 的复 杂 和 非 线 性 优 化 问 题 , 遗 传 算 法 具 有 较 强 的处 理 能 力 . 目前该 算 法 已广 泛 应 用 于 组 合 优 化 等 领域 , 并 取 得 了 良好 的 应用 效 果 . 但在应用过程 中, 人 们 也 发 现 遗 传算 法 也具 有 局部 搜 索 能 力 较 差 和 收敛 速 度 缓 慢 等缺 点 . 特别 是 对 于 多 峰 函数 的优 化 问题 , 往往 不 能 得 到 问题 的 最 优解 . 为 了提 高算 法 的局
第2 4卷 第 2期 2 0 1 3年 6月
广 西 科 技 大 学 学 报
J OU RNAL OF GUANG XI U NI VERS I T Y OF S C I E NC E AN D I EC HNOL 0GY
多种群人工免疫算法在多峰函数上的优化

多种群人工免疫算法在多峰函数上的优化汪桂金;胡剑峰【摘要】针对人工免疫算法在多峰函数优化上存在优化精度低的缺点,提出了多种群人工免疫算法(MAIA)对多峰函数进行优化.MAIA包含多个独立的抗体种群,独立的抗体种群各自进行抗体选择、克隆和变异等免疫操作,在每个独立种群更新和评价完后选择每个种群中最好的抗体进行多种群评价,然后将当前的最佳抗体共享给每个单独种群最终生成各个种群新一代的抗体群.仿真实验结果表明:相比于人工免疫算法,MAIA求解精度更高,提高了多峰函数寻优的精度.【期刊名称】《南昌大学学报(工科版)》【年(卷),期】2018(040)003【总页数】5页(P299-302,306)【关键词】人工免疫算法;多种群;多峰函数优化;免疫操作;多种群评价【作者】汪桂金;胡剑峰【作者单位】南昌大学信息工程学院,江西南昌330031;南昌大学信息工程学院,江西南昌330031【正文语种】中文【中图分类】TP301.6人类对自然现象机制的研究和模拟促使了很多智能算法的产生和发展。
Kennedy 等[1]根据观察到的动物群体行为提出了粒子优化算法(particle swarmoptimization,PSO);Mitchell[2]根据生物学的遗传原理提出了遗传算法(genetic algorithm,GA);Dorigo等[3]通过研究蚂蚁发现食物的行为提出了蚁群优化算法(ant colony optimization,ACO);人工免疫算法(artificial immune algorithm,AIA)则是一种模拟动物的免疫系统防御机制而产生的一种相对较新的优化算法[4-5]。
AIA已经成功应用于许多理论研究和实际问题的解决,包括病毒清除和入侵检测[6]、数据分析和数据挖掘[7]、函数优化问题[8]、故障诊断问题[9-10]等。
多峰函数是在定义域内有多个极值的函数,很多现实中的实际问题在进行数学建模后,都可以将其抽象为一个多峰函数优化问题,这类问题不仅需要寻找到全局最优解,而且往往需要搜索和定位其他有价值的多个全局最优解或局部最优解,以供研究人员选出满意的解。
一种新的多峰值函数优化算法

一种新的多峰值函数优化算法
新型多峰值函数优化算法
随着科技的不断发展,优化算法在各个领域中得到了广泛的应用。
在实际问题中,往往存在着多个最优解,这就需要我们使用多峰值函数优化算法来解决这个问题。
本文将介绍一种新型的多峰值函数优化算法。
传统的多峰值函数优化算法往往采用遗传算法、粒子群算法等方法,但这些算法存在着收敛速度慢、易陷入局部最优等问题。
为了解决这些问题,我们提出了一种新型的多峰值函数优化算法。
该算法的核心思想是将多峰值函数分解成多个单峰值函数,然后分别进行优化。
具体实现过程如下:
1. 将多峰值函数分解成多个单峰值函数。
2. 对每个单峰值函数进行优化,得到其最优解。
3. 将每个单峰值函数的最优解组合成多峰值函数的最优解。
该算法的优点在于,可以有效地避免陷入局部最优解,同时也能够提高收敛速度。
在实际应用中,该算法已经得到了广泛的应用。
新型多峰值函数优化算法是一种非常有效的优化算法,可以在实际
问题中得到广泛的应用。
我们相信,在未来的发展中,该算法将会得到更加广泛的应用和发展。
多峰函数优化的黄金分割斐波那契树优化算法

多峰函数优化的黄金分割斐波那契树优化算法张松海;施心陵;李鹏;董易;李孙寸【摘要】针对多峰函数优化问题,基于斐波那契树优化算法,结合黄金分割思想,提出一种黄金分割斐波那契树优化算法.该算法利用斐波那契树优化算法全局局部交替寻优特性,通过在寻优过程中对优化问题解空间进行黄金分割比例压缩,从而提高算法局部搜索能力与小峰值搜索能力.多峰函数优化的仿真结果表明,该算法多峰优化能力强、速度快、精度高.%A golden section Fibonacci tree optimization algorithm for multimodal function optimization is proposed,which is based on the Fibonacci tree optimization algorithm (FTO) and is combined with the golden section theory.By making full use of the features upon the global and local alternation optimization of Fibonacci tree optimization,the algorithm has improved and enhanced its local searching ability and small peak searching ability through the method of golden section ratio compression to optimize problems of solution space.Simulation result of typical test function shows that the algorithm owns strong optimization capacity,fast speed as well as high precision.【期刊名称】《电子学报》【年(卷),期】2017(045)004【总页数】8页(P791-798)【关键词】多峰优化;斐波那契树优化算法;黄金分割法;全局局部交替【作者】张松海;施心陵;李鹏;董易;李孙寸【作者单位】云南大学信息学院,云南昆明 650500;云南大学信息学院,云南昆明650500;云南大学信息学院,云南昆明 650500;云南大学信息学院,云南昆明650500;云南大学信息学院,云南昆明 650500【正文语种】中文【中图分类】TP18随着计算机技术的发展,智能优化算法在实际优化问题中取得了长足的进步和显著的成绩[1],新发展出例如量子禁忌搜索算法[2]、逻辑运算的离散人工蜂群算法[3]、自适应变异的粒子群优化算法[4]等一系列优化算法.一般的智能优化算法在实际优化问题中往往只注重问题的全局最优解而忽略其局部最优解.但在实际优化问题中,如复杂系统参数及结构优化、组合优化等,常存在着多个或一个全局最优解以及其他多个有价值的局部最优解,它们都可归为多峰函数优化问题或多模态函数优化问题(Multimodal Function Optimization,MFO)[5].因此,有效、快速的构造一种能求出全部全局最优解及尽可能多的局部解的优化算法成为优化领域的重要研究方向.对此,传统的收敛于全局的智能算法如遗传算法、蚁群算法、粒子群算法等,通过改进算法来实现多峰函数寻优.如面向多峰函数的小生境人工蜂群算法[6]、小生境遗传算法[7]、小生境人工鱼群算法[8]、基于小生境的粒子群算法[9,10]、改进的遗传算法[11~13]等.这些算法在一定程度上取得了较好的效果,但算法存在局部搜索能力弱的缺点,很难获得较多的峰值点.基于免疫机制与免疫网络理论提出的免疫克隆算法(CLONALG)[14]、人工免疫网络算法(opt-aiNet)[15]等算法具有较强的多峰寻优能力,但由于其算法本身的复杂性与寻优结果依赖于算法某些参数的设置,使得最终寻优结果求解精度不高、易早熟、应用场合受限.文献[16,17]提出一种多峰函数的多元优化算法,取得了不错优化效果,但由于算法结构的限制,导致多峰优化能力不强.斐波那契树优化算法(Fibonacci Tree Optimization,FTO)是基于斐波那契法的一种智能优化算法,该算法通过全局探索和局部寻优交替迭代来求解问题的最优解,同时在寻优过程中充分利用计算机内存记录下寻优过程.FTO具有很强的全局最优解搜索能力,其搜索结果在全局范围内只朝着全局最优点进化收敛,不易陷入局部最优.但由于全局范围内可能有不等高的山峰,在利用FTO进行寻优时,峰值小的山峰则可能被遗弃,从而影响FTO多峰寻优能力.对此,本文提出了基于黄金分割的FTO多峰函数优化算法.在FTO多峰寻优的每次迭代过程中,利用黄金分割法的最优性,对优化问题解空间进行黄金分割比例压缩,从而在保证算法全局寻优能力的同时提高其局部最优解寻优能力.利用多种多峰函数对算法进行测试,测试结果表明本文算法对多峰函数优化能力强、速度快、精度高.1953年Kiefer提出了单峰函数的优选问题,并证明了分数法即斐波那契法是最优的.黄金分割法作为斐波那契法的近似,华罗庚教授进行了其最优性的巧妙证明[18].文献[19]也给出了黄金分割法在无穷远处是最优的证明.最优化问题的极大化问题的一般形式为:其中x∈Rn是决策变量,f(x)为目标函数,X⊂Rn为约束集或可行域.特别地,如果约束集X=Rn,则最优化问题称为无约束最优化问题:本文中,算法求解的是无约束最优化问题.下面简要介绍一下利用斐波那契法与黄金分割法求解一维极大值问题.设:φ(α)是搜索区间[a1,b1]上的单峰函数.设在第k次迭代是搜索区间为[ak,bk].取两个试探点λk,μk∈[ak,bk]且λk<μk,计算φ(λk)和φ(μk),步骤如下:(a) 若φ(λk)≤φ(μk),则令ak+1=λk,bk+1=bk;(b) 若φ(λk)≥φ(μk),则令ak+1=ak;bk+1=μk.要求两个试探点λk和μk满足:(1)λk和μk到搜索区间[ak,bk]的端点等距,即:(2)每次迭代,搜索区间长度的缩短率相同,即:其中,Fi为斐波那契数列第i项,n是计算次数.当固定为0.618时,斐波那契法就变为黄金分割法.当利用黄金分割法来进行单峰寻优时,其寻优结果精度与寻优次数的关系如式(7)所示:其中σ为结果精度,n为寻优次数.如寻优结果精度为0.05,则利用黄金分割法只需要进行8次试验.3.1 FTO搜索元斐波那契树优化算法(Fibonacci Tree Optimization,FTO)是一种基于斐波那契法的计算智能优化算法,通过全局探索和局部寻优过程交替迭代来求解最优化问题.FTO算法的搜索元结构是由斐波那契数列组成的类三角形,如图1所示.斐波那契数列的通项为式(6)所示.搜索元的产生分为全局搜索和局部搜索两个阶段,在全局搜索阶段通过式(8)在全局范围内随机产生全局点G.式(8)中,d是问题的维度;min和max分别为问题空间第i维的下界和上界;unrand (mini ,maxi )函数返回一个均匀分布在mini和maxi之间的随机数.在局部搜索阶段,前一列适应度值最好的元素fitbest和新生成的全局点G分别与前一列其他元素按照式(9)生成新的局部点.其产生方法如图2所示.tfi=[tempf1,…,tempfd],(i=2,…,Fn-1)tGi=[tempG1,…,tempGd],(i=1,…,Fn-1)式(9)中,d是问题的维度;tfi为前一列适应度值最好的元素fitbest与前一列第i个元素新生成的局部点,tempfj为前一列适应度值最好的元素fitbest与前一列第i个元素的第j维的斐波那契试探点;tGi为当前新生成全局点G与前一列第i个元素新生成的局部点,tempGj为当前新生成全局点G与前一列第i个元素的第j维的斐波那契试探点.则新生成局部点与全局点总和为2Fi-1,前一列的数目与新生成局部点数目、全局点数目总和为3Fi-1,而Fi=Fi-2+Fi-1,所以按适应度值大小丢弃2Fi-1-Fi-2个点组成当前列的元素.由此可以看出,FTO的搜索元全局、局部交替进行搜索,从而保证不陷入局部最优解,向着全局最优解进化迭代.搜索元算法步骤如下:步骤1 随机生成一个全局点初始化搜索元第一列元素.步骤2 生成一个新的全局搜素元G.步骤3 用G与搜索元中的前一列的所有元素按比例生成新的局部点.步骤4 用搜索元中的前一列适应度值最好的元素fitbest与前一列其余的元素按比例生成新的局部点.步骤5 按适应度值大小删除2Fi-1-Fi-2个点,留下Fi-2+Fi-1作为当前列的元素. 步骤6 判断迭代条件,符合则当前列适应度值最好的元素fitbest.否则回到步骤2.3.2 FTO算法步骤每个搜索元最终得到的适应度值最好的元素fitbest将作为下一个搜索元的第一列的元素,即作为下一个搜索元的启发式信息,也把fitbest叫做芽点.每次迭代都把芽点装入一个后进先出的栈,组成芽点集.搜索元按照斐波那契数列生长,从而最终长成一棵斐波那契树.其结构如图3所示.FTO算法步骤为:步骤1 初始化.用一个全局搜索元作为芽点初始化芽点集.步骤2 取出芽点.在第i轮迭代,从芽点集中取出按斐波那契数列计数为Fi-1+Fi-2个芽点.芽点按栈结构的后进先出方式出栈.步骤3 生成新芽点.利用一个芽点,用搜索元生成算法生成一个新的芽点,本轮迭代共生成Fi-1+Fi-2个新芽点.步骤4 将新的芽点存入芽点集.芽点按栈结构的后进先出方式入栈.步骤5 判断迭代条件,符合则输出指定芽点,例如,输出适应度值最好的一个芽点.否则回到步骤2.从图3和FTO的算法步骤可以看出,斐波那契树的每个节点就是一个搜索元的最优值,搜索元在解空间内是利用斐波那契法在全局、局部交替进行寻优,保证了算法不易陷入局部最优,整个树每一代的节点又是基于前一代的最优节点进行生长.因此,FTO算法能快速、有效的向着全局最优点进化收敛.3.3 FTO算法收敛与时间复杂性分析3.3.1 FTO算法收敛性分析定理1 若yi为当前搜索元第i列适应度值最优的元素,则yi+1≥yi.FTO搜索元的生成步骤可证明其定理.定理2 若fitbest为当前搜索元适应度值最大的元素,则由当前搜索元生成的下一个搜索元的适应度值最大的元素fitbest-next大于等于fitbest.证明由FTO算法可知,每个搜索元最终得到的适应度值最好的元素fitbest将作为下一个搜索元的第一列的元素.又由定理1可知搜索元下一列适应度值最好的元素大于等于前一列适应度值最好的元素.因此:fitbest-next≥fitbest.定理3 FTO算法树结构中,下一代搜素元的最大适应度值大于等于上一代搜素元的最大适应度值.证明由FTO算法可知,算法树中下一代的搜索元是由上一代的搜索元生成的.由定理1与定理2可得下一代搜素元的最大适应度值大于等于上一代搜素元的最大适应度值.定理4 FTO算法是有效的、收敛的.证明设问题的全局最优解为xbest,fitbest(t)为算法第t代搜素元的最大适应度值.由定理2、定理3可得:由式(10)可知,算法是有效的、收敛的.3.3.2 FTO算法时间复杂性分析FTO算法主要包括搜索元的生成与搜索树的生成两部分.生成搜索元的计算复杂度为O(n*其中n为搜索元的列数,Nw为当前需要比较的元素个数,随n值线性增加.搜索树又由搜索元构成,算法迭代一次,树生长一层,设算法迭代M次,从而算法的时间复杂度为其中由上述分析可知,搜索元的大小和算法迭代次数影响着FTO的时间复杂性.3.4 黄金分割FTO算法由上述FTO算法的介绍可以看出,基于搜索元的斐波那契树的生长是基于前一代的最优节点进行的,同时搜索元的生成过程是一个竞争淘汰的过程,且全局点是在整个解空间内随机产生的.因此,在解空间内,如果有高低不同的山峰,那峰值小的山峰在寻优过程中就会被淘汰,从而影响FTO的多峰寻优能力.多峰函数的山峰在解空间里均匀或者不均匀的分布着,因此,如果能引导FTO算法向山峰分布的区域寻优,凭借FTO强大的全局搜索能力,算法将很快寻找到山峰,这样就可以把一个多峰问题转化为多个单峰的寻优问题,提高FTO的多峰寻优能力.为此,本文在FTO算法的基础上引入黄金分割思想,在FTO算法的斐波那契树的生长过程中,对树的每一层的解空间范围进行黄金分割比例压缩,则搜索元在树的不同层次有着不同的寻优范围,同时因为黄金分割法本身具有最优性,在寻优的过程中,还可以利用其最优性来判断该次迭代是否需要上一次节点的最优信息,如果上一次迭代的最优点在本次迭代的解空间内,则利用其最优信息,反之则放弃其启发信息.通过上述对FTO算法的变化,使得算法不仅能朝着全局最优点进化,同时增强了算法的局部搜索能力,提高了小峰值的寻优能力.例如,对于一维适应度函数的解空间为[0,1],则FTO与黄金分割FTO的区别如图4所示.从图4可以看出,引入黄金分割后,斐波那契树的节点寻优范围每次都是黄金分割比例压缩,从而不仅有利于多峰函数的优化,同时保证了寻优结果的精度.黄金分割FTO 算法只是在FTO算法寻优过程中适时变换寻优空间范围,因此,黄金分割FTO算法在具备多峰性能的同时,满足FTO算法的有效性与收敛性.3.5 同峰判断在利用黄金分割FTO算法进行多峰寻优时,判断新搜索到的极值点与已发现的极值点是否同峰,利用文献[20]所提出的基于适应度的同峰判断方法,设A为峰值点集合中的极值点,B为黄金分割FTO刚搜索到的极值点,在A,B之间插入x-1个点将AB 分成x等份,计算这x段的同峰算子,如式(11)所示:式中:xi+1,xi为A,B之间相邻两点,1≤i≤h,当i为1时,xi为点A.当f的值由正变为负,又由负变为正,则意味着A,B有山峰存在,是异峰值点,否则为同峰.当新产生的极值点与已有极值点集合里的极值点都判断完后,如果存在同峰,则将最优极值点替换原有极值点,反之则把新极值点加入峰值点集合.为了验证黄金分割FTO算法的多峰寻优能力,选取了测试常用的典型多峰函数进行仿真测试,寻找函数的极大值,利用峰值数、精度、平均适应度值检验算法的性能.本文实验基于MATLAB2012a进行仿真实验.由FTO算法时间复杂性可知,随着算法迭代次数的增加,斐波那契树将越长越大,从而导致算法的计算量越来越大,运算时间极长.为了提高本文算法的效率,式(7)已证明在满足0.05的结果精度下,黄金分割法只需8次试验.因此,本文算法的搜索元大小为5列,斐波那契树前8层的每层搜索元数量按斐波那契数列增长,8层以后按第8层的搜索元数量生长,且8层以后解空间范围不再压缩.每个搜索元中的节点总和为19.如式(12)所示:式中Nj为斐波那契树第j层搜索元个数,max gen为算法最大迭代次数.4.1 典型测试函数测试函数1[21]:式中,x∈[0,1],含有5个等高不等距的峰.测试函数2[21]:式中x∈[0,1],含有5个不等高等距的峰.测试函数3:式中x∈[0,4],含有9个不等高不同频率的峰.测试函数4[22]:式中x,y∈[-6,6],f4为线性不可分的二维多峰函数,其典型特点是峰值点等高、非等距.性能不佳的算法很难精确搜索到其全部4个峰值.测试函数5:式中x,y∈[-5.12,5.12],f5为大海捞针函数,其典型特点解空间范围内有1个全局最优解和4个局部最优解.性能不佳的算法容易陷入局部最优解,找不到全局最优解. 测试函数6:式中x,y∈[-2,2],f6为root函数,在0.5高度处有一个很难突破的平坦区域,要求算法具有较好的全局收敛能力,在[-2,2]上共有6个高度为1的全局最优解.测试函数7:式中x,y∈[0.25,10],f7在全局范围内分布着等高,变化频率不同的36个高度为1的峰.性能不佳的算法很难找到全部最优解.测试函数8[23]:式中x,y∈[-2,2],f4是非均匀分布多峰函数,一共有64个山峰和36个在边界上形成的优化点值.测试函数9[23]:式中x,y∈[-10,10],f7在全局范围内有9个全局最优解,760个极大值点,对算法的局部搜索能力要求较高.测试函数10[23]:式中x,y∈[-5.12,5.12],f10在全局范围内有1个全局最优解,在全局解周围有无穷局部解.针对测试函数f1~f3为1维多峰寻优问题.黄金分割FTO最大迭代次数maxgen=8,即斐波那契树最多长8层,所需搜索元个数最多为实验次数为30次,寻优结果如表1和表2所示.因测试函数1、2取自于文献[21],因此本文算法的寻优结果又与文献[21]的ANQEA(自适应小生境量子进化算法)寻优结果进行对比,如表3和表4所示,其计算量为寻优结束时“搜索元数量总和×每个搜索元的节点总和”.图5为本文算法的优化结果直观图.测试函数3的寻优结果如图5(a)所示.针对测试函数f4~f7为多维多峰值数寻优问题,黄金分割FTO最大迭代次数max gen=100,即斐波那契树最多长100层,实验次数为30次.测试函数f4~f7本文寻优结果如表5所示.针对测试函数f8~f10为多维多峰值数寻优问题,黄金分割FTO最大迭代次数max gen=200,即斐波那契树最多长200层,实验次数为30次.其寻优结果与SH(小生境技术的适应值共享算法)、opt-aiNet(人工免疫网络算法)、CLONALG(克隆算法)、ICNA(免疫混沌网络算法)、IAFSNA(免疫人工鱼群网络算法)的寻优结果进行比较,IAFSNA寻优结果来自文献[22],SH、CLONALG、opt-aiNet、ICNA的结果来自文献[23].测试函数f8~f10本文寻优结果与对比结果如表6所示.4.2 实验结果分析由表1、表2的结果可知本文算法找到了1维多峰值函数的全部峰值点,同时所得结果的精度高.由表3和表4可以看出,本文算法在得到同等结果条件下的迭代次数、计算量小于ANQEA算法,同时算法不需要过多设置参数,只需给出解空间范围、迭代次数即可.由表5可知,本文算法对多维、峰值数量较少函数的寻优能力同样很强.对f4~f7这些特殊测试函数的寻优,在保证多峰成功率的同时,算法还具有很高的全局寻优精度.由表6可知,本文算法对f8~f10这些具有多维、大量峰值数量特点的函数同样具有较强的寻优能力,寻优结果与其他算法相比较,在峰值数量、平均适应度值方面都有明显的优势,说明算法具有较强的多峰寻优能力.图6为一些测试函数的三维示意图.4.3 黄金分割FTO算法时间复杂度分析黄金分割FTO算法是由改进的FTO算法和同峰判断组成.同峰判断的时间复杂度为O(C*W),W为当前峰值集合中的元素数量.因此黄金分割FTO算法的时间复杂度为因此,黄金分割FTO算法的时间复杂度不仅与迭代次数、搜索元大小有关,也与函数峰值数量有关,函数的峰值数量越多,其寻优时间越长.由文献[23]可知,由于采用共享技术需比较种群个体适应度的大小,SH算法的计算复杂度为;CLONALG算法中种群需要克隆变异,它的计算复杂度为其中为NI初始种群设定值,不随代数增加而变化.l为抗体编码长度.opt-aiNet 算法采用克隆选择和网络抑制策略,ICNA 算法采用混沌搜索和网络抑制策略,ANQEA 算法采用量子进化算法和小生境技术,它们的计算复杂度都为O(N2),N为当前迭代次数下的种群数目,其值随迭代次数线性增加.由上述分析可知,黄金分割FTO算法的时间复杂度在表达式上高于其他算法,但当本文算法的搜索元大小固定时,时间复杂度中的将会是个定值,算法复杂度的最高级将只与迭代次数、函数峰值数量有关,即黄金分割FTO算法的时间复杂度可以表示为O(CW),O(CW)≤O(N2).在实际寻优过程中由于算法本身引入黄金分割法,从内在也加快了算法的收敛速度.由此可知,ANQEA、opt-aiNet、ICNA与本文算法等多峰寻优算法都是以牺牲更多时间在局部搜索上来提高局部搜索能力与多峰值能力. 综上所述,黄金分割FTO算法具有如下特点:(1)黄金分割FTO算法多峰优化精度高、速度快.FTO算法是基于斐波那契法形成的智能算法,其斐波那契法的最优性早已被证明,因此FTO算法是一种基于最优算法的优化算法,从而确定了算法本身的快速性与有效性.在利用FTO本身算法特性的同时,对优化问题解空间进行黄金分割比例压缩,在保证全局搜索能力的同时提高了算法局部搜索能力.因此,黄金分割FTO算法在斐波那契法和黄金分割法两种优化算法的驱使下,快速有效的逼近峰值点.此特点从表1~5、图5可知.(2)黄金分割FTO算法多峰优化能力强,不易陷入局部最优.FTO算法本身是一种全局、局部交替寻优的算法,其算法本身具有超强的全局搜素能力,不易陷入局部最优.在利用其全局搜索能力的同时,通过对解空间的黄金分割比例压缩提高了算法的局部搜索能力,保留了较小的峰值,提高了多峰寻优能力.此特点从表5~6、图5~6可知.本文提出的黄金分割FTO算法对多峰函数的优化能力强、速度快、精度高.算法利用FTO算法全局局部搜索特性的同时,引入对解空间的黄金分割比例压缩,提高了算法的局部搜索能力及对较小峰值的搜索能力,从而提高了算法的多峰优化能力.算法以斐波那契法与黄金分割法为基础,保证了算法的有效性与快速性.同时,与其它算法相比较,不需设置额外参数,使得算法的结果不依赖于参数的选择,便于实施.本文主要集中在以理论和实验来验证黄金分割FTO算法对于多峰函数优化的能力,进一步工作将集中在对更高维的多峰函数进行试验研究.张松海男,1991年生,云南大学信息学院硕士研究生.主要研究方向为智能优化算法,电网可靠性分析.E-mail:****************施心陵(通讯作者) 男,1956年生,云南大学信息学院教授,博士生导师.主要研究方向为智能优化算法,自适应信号处理与信息系统,医学电子学.E-mail:*************.cn李鹏男,1976年生,博士,云南大学信息学院副教授.研究方向为输变电系统安全诊断、预警与维护决策研究.董易男,1984年生,云南大学信息学院博士研究生.主要研究方向为智能优化算法. 李孙寸女,1990年生,云南大学信息学院硕士研究生.主要研究方向为智能优化算法.【相关文献】[1]李宝磊,吕丹桔,等.多元优化算法可达性分析[J].系统工程与电子技术,2015,37(7):1670-1675. LI Bao-lei,LÜ Dan-ju,et al.On accessibility of multivariant optimization algorithm[J].Systems Engineering and Electronics,2015,37(7):1670-1675.(in Chinese)[2]陈晓峰,姜慧研.量子禁忌搜索算法的研究[J].电子学报,2013,41(11):2161-2166. CHEN Xiao-feng,JIANG Hui-yan.Research of quantum tabu search algorithm[J].Acta Electronica Sinica,2013,41(11):2161-2166.(in Chinese)[3]朱冰莲,朱方方,等.基于逻辑运算的离散人工蜂群算法[J].电子学报,2015,43(11):2161-2166. ZHU Bing-lian,ZHU Fang-fang,et al.Discrete artificial bee colony algorithm based on logic operation[J].Acta Electronica Sinica,2015,43(11):2161-2166.(in Chinese)[4]吕振肃,侯志荣.自适应变异的粒子群优化算法[J].电子学报,2004,32(3):416-420. LU Zhen-su,HOU Zhi-rong.Particle swarm optimization with adaptive mutation[J].Acta Electronica Sinica,2004,32(3):416-420.(in Chinese)[5]DAS Swagatam,MAITY Sayan,et al.Real-parameter evolutionary multimodal optimization-A survey of the state of the art[J].Swarm and Evolutionary Computation,2011,1(2):71-78.[6]毕晓君,王艳娇.用于多峰函数优化的小生境人工蜂群算法[J].系统工程与电子技术,2011,33(11):2564-2568. BI Xiao-jun,WANG Yan-jiao.Niche artificial bee colony algorithm for multi-peak function function optimization[J].Systems Engineering and Electronics,2011,33(11):2564-2568.(in Chinese)[7]GOLDBERG D E,RICHARDSON J.Genetic algorithms with sharing for multimodal function optimization[A].Proceedings of the Second International Conference on Genetic Algorithms on Genetic Algorithms and Their Application[C].NJ,USA:Lawrence Erlbaum,1987.41-49.[8]张梅凤,邵诚.多峰函数优化的生境人工鱼群算法[J].控制理论与应用,2008,25(4):773-776. ZHANG Mei-feng,SHAO Cheng.Niche artificial fish swarm algorithm for multimodal function optimization[J].Control Theory & Applications,2008,25(4):773-776.(in Chinese) [9]MUHAMMAD R,ABDUL R B,et al.Niching with sub-swarm based particle swarm optimization[A].Proceedings of the International Conference on Computer Technology and Development[C].USA:IEEE,2009.18l-183.[10]LI X D.Adaptively choosing neighbourhood bests usingspecies in a particle swarm optimizer for multimodal func-tion optimization[A].Proceedings of the 2004 Genetic and Evolutionary Computation Conference[C].Berlin,Germany:Springer-Verlag,2004.105-116.[11]YAO Jie,KHARMA Nawwaf,et al.Bi-objective multipopulation genetic algorithm for multimodal function optimization[J].IEEE Transactions on EvolutionaryComputation,2010,14(1):80-102.[12]刘洪杰,王秀峰.多峰搜索的自适应遗传算法[J].控制理论与应用,2004,21(2):302-304. LIU Hong-jie,WANG Xiu-feng.Adaptive genetic algorithm for multi-peak searching[J].Control Theory & Applications,2004,21(2):302-304.(in Chinese)[13]李军华,黎明.噪声环境下多模态函数优化的遗传算法[J].电子学报,2012,40(2):327-330. LI Jun-hua,LI Ming.Genetic algorithm for multimodal function optimization in noisy environments[J].Acta Electronica Sinica,2012,40(2):327-330.(in Chinese)[14]DE CASTRO L N,VON ZUBEN F J.Learning and optimization using the clonal selection principle[J].IEEE Transactions on Evolutionary Computation,2002,6(3):239-251.[15]DE CASTRO L N,TIMMIS J.An artificial immune n-etwork for multimodal function optimization[A].Proceedings of IEEE Congress on EvolutionaryComputation[C].USA:IEEE,2002.699-704.[16]LI B L,SHI X L,et al.Mutivariant optimization algorithm for multimodaloptimization[J].Applied Mechanics Material,2014,(483):453-457.[17]SHI X L,GOU C X,et al.Mutivariant optimization algorithm with absorption for multimodal optimization[J].Applied Mechanics Material,2014,(483):458-464.[18]梁展东.黄金分割法在非无穷远之任意处的讨论[J].山西大学学报(自然科学版),1979,(Z1):127-131.[19]周云才.黄金分割法在无穷远处是最优的[J].江汉石油学院学报,1993,15(1):97-101. ZHOU Yun-cai.Golden section method is optimalat infinite[J].Jianghan PetroleumInstitute,1993,15(1):97-101.(in Chinese)[20]吴建辉,章兢,等.多峰函数优化的免疫云粒子群优化算法[J].仪器仪表学报,2013,34(8):1756-1764. WU Jian-hui,ZHANG Jing,et al.Immune cloud particle swarm optimization algorithm for multimodal function optimization[J].Chinese Journal of ScientificInstrument,2013,34(8):1756-1764.(in Chinese)[21]陈彦龙,张培林,等.面向多峰函数的自适应小生境量子进化算法[J].系统工程与电子技术,2014,36(2):403-408. CHEN Yan-long,ZHANG Pei-lin,et al.Adaptive niche quantum evolutionary algorithm for multimodal function[J].Systems Engineering and Electronics,2014,36(2):403-408.(in Chinese)[22]邓涛,姚宏,杜军.多峰函数优化的免疫人工鱼群网络算法[J].系统工程与电子技术,2013,35(2):452-456. DENG Tao,YAO Hong,DU Jun.Immune artificial fish swarm network algorithm for multimodal function optimization[J].Systems Engineering and Electronics,2013,35(2):452-456.(in Chinese)[23]薛文涛,吴晓蓓,等.多峰函数优化的免疫混沌网络算法[J].系统仿真学报,2010,22(4):915-920. XUE Wen-tao,WU Xiao-bei,et al.Immune chaotic network algorithm for multimodal function optimization[J].Journal of System Simulation,2010,22(4):915-920.(in Chinese)。
一种有效的多峰函数优化算法

20 0 8年 l 月 0
计 算 机 应 用 研 究
Ap l ai n R s a c fC mp t ̄ pi t e e rh o o ue c o
Vo . 5 No 1 12 . 0
0c 20 L o8
一
种 有效 的 多峰 函数优 化 算 法
i r v d ag rt m s fil fe tv mp o e lo ih i arye fcie.
K ywo d :p rce w r p m zt n P O ; u i o a fn t n ; i ig eh i e S b l e u n e e r s a i am o t i i ( S ) m hm d l u ci s nc n c nq ; o o sq e c tls i ao o h t u
李 莉 李洪 奇 谢 绍龙 , ,
Hale Waihona Puke ( 中国石油 大学 a 计算机科 学与技 术 系 ; . . b 资源信 息学院 , 北京 12 4 ) 0 2 9 摘 要 :针对 小生境粒 子群优化技 术 中小生境半径 等参数 选取 问题 , 出 了一种新 颖 的 小生境 方 法 , . 提 无须 小 生
境半 径等任何 参数。通过 监视粒 子正切 函数 值 的变化 , 断各个 粒子 是否 属 于 同一座 山峰 , 其 追踪 所在 山峰 判 使 的最优 粒子飞 行 , 而搜 索到每 一座 山峰 极值 。算法 实现简单 , 进 不仅 克服 了小生境使 用 中需要 参数 的弊 端 , 而且
解 决 了粒子群 算法 只能找 到一 个解的 不足。最后 通过对 多 值 函数的仿 真实验 , 峰 验证 了算法 可以准确 地找 到所
人工免疫算法matlab代码解决多峰函数极值优化问题

人工免疫算法matlab代码解决多峰函数极值优化问题引言人工免疫算法是一种基于生物免疫系统理论的人工智能算法,具有自适应性、自组织和自学习等特点,可以应用于各种优化问题。
多峰函数极值优化问题是工程和科学领域中常见的问题,需要找到函数在多个峰值中的最优解。
本文将介绍如何使用人工免疫算法解决多峰函数极值优化问题,并给出Matlab代码实现。
一、人工免疫算法原理人工免疫算法借鉴了生物免疫系统的基本原理,主要包括免疫识别、免疫选择、免疫记忆和免疫调节等步骤。
算法通过模拟免疫系统的识别、选择和记忆机制,结合优化理论,形成一种新型的优化方法。
其主要步骤包括:1. 抗原(目标函数)的表示和搜索空间的定义;2. 抗体(搜索策略)的生成;3. 抗体与抗原的结合和评价;4. 抗体群体的多样性评估;5. 抗体群体的选择和变异;6. 抗体群体的杂交和复制。
二、Matlab代码实现以下是一个简单的Matlab代码实现人工免疫算法解决多峰函数极值优化问题的示例:```matlab% 定义多峰函数和搜索空间fun = @(x) x.^2 - sin(x).^2; % 多峰函数定义x0 = -5:0.1:5; % 搜索空间定义% 初始化抗体群体num_particles = length(x0); % 粒子数量particles = x0; % 初始化粒子位置velocities = rand(num_particles, size(x0, 2)); % 初始化粒子速度masses = ones(num_particles, 1); % 粒子质量设为常数antibodies = zeros(num_particles, size(x0, 2)); % 抗体初始化为零向量fitnesses = zeros(num_particles, 1); % 适应度初始化为零向量% 免疫选择过程for iter = 1:max_iter % max_iter为最大迭代次数% 抗体与抗原结合和评价antibodies = antibodies + x0 .* (fun(particles) > threshold); %抗体为当前粒子位置与目标函数的积大于阈值时为真,否则为假fitnesses = fitnesses + (fun(particles) > threshold); %适应度为当前粒子位置对应的函数值大于阈值时为真,否则为假% 抗体群体多样性评估和选择num_positives = sum(antibodies > 0); %抗体为真的粒子数量total_particles = num_particles; %总粒子数量selection_rate = num_positives / total_particles; %选择率selected_indices = randperm(total_particles,num_positives); %随机选择抗体为真的粒子索引selected_particles =particles(selected_indices, :); %选中的粒子位置new_particles = selected_particles + velocities * randn(size(selected_particles)); %根据随机数变异粒子位置 particles = (masses * particles + new_particles) / sum(masses); %根据粒子质量进行杂交复制得到新的粒子群体 velocities = velocities * (1 - decay); %根据惯性权重更新粒子速度masses = masses + decay * (sum(masses) - 1); %根据个体权重更新粒子质量分布%阈值设定:目标函数最优解距离当前最优解小于epsilon时停止迭代[min_fitness, min_x] = min(fitnesses); %找到当前最优解和对应的适应度值epsilon = threshold - abs(min_fitness); %计算epsilon值,用于判断是否达到最优解的距离阈值if epsilon < threshold * error_threshold %error_threshold为误差阈值,可根据实际情况调整break; %达到阈值则停止迭代并输出结果endend```三、应用实例及结果分析使用上述Matlab代码,我们可以对一些多峰函数进行极值优化。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
面向多峰函数优化的PASFLI算法及应用李国平【摘要】针对基本混合蛙跳算法在高维多峰函数优化时早熟及难以找到所有全局极值的问题,提出了一种具有混合智能的多态子种群自适应混合蛙跳免疫算法,证明了算法以概率1收敛于全局最优解。
该算法采用双层进化模式,融合了混合蛙跳、免疫克隆选择技术。
在低层混合蛙跳操作中,加入了多态自适应子种群机制,提高了子种群多样性,有效抑制了早熟现象;在算法进化后期,提出了全局极值筛选策略,将子种群极值点提升到高层免疫克隆选择操作,进一步提高了全局寻优能力。
通过复杂多峰函数仿真实验,表明该算法能够快速有效地给出全部全局最优解。
%As basic Shuffled Frog Leaping Algorithm(SFLA)has many problems in the high dimensional multimodal function optimization such as premature and difficult to find all global extremes, a hybrid intelligent Polymorphic Adaptive Shuffled Frog Leaping ImmuneAlgorithm(PASFLIA)is presented. PASFLIA which combines the SFLA and immune Clonal Selection Algorithm (CSA)technology is convergent to the global optimal solution with probability 1. PASFLIA adopts a double-layer model evolu-tion:in the lower layer, the polymorphic adaptive population mechanism is joined to SFLA, which improves the diversity of the population, and effectively suppresses premature behavior of the convergence progress; in the higher layer, the global extreme screening strategy is proposed, which puts the population extreme points to high-level immune clonal selection operation, further enhancing the global optimization ability. The complex multimodal function simulationexperiments results show that the PASFLIA can quickly and efficiently give all the global optimal solution.【期刊名称】《计算机工程与应用》【年(卷),期】2013(000)021【总页数】6页(P199-203,229)【关键词】混合蛙跳算法;免疫算法;自适应;函数优化【作者】李国平【作者单位】湖南工学院,湖南衡阳 421002【正文语种】中文【中图分类】TP183混合蛙跳算法(Shuffled Frog Leaping Algorithm,SFLA)是Eusuff等人根据混合竞争进化思想,提出的一种新型智能启发式计算技术[1]。
由于该算法具有实现简单、前期收敛速度快、搜索能力强等特点,已被成功应用于复杂非线性函数优化以及车间流水调度、ΤSP等工程领域[2-3]。
目前,改善算法复杂问题优化性能已成为研究热点之一[4-9]。
针对基本SFLA求解复杂优化问题时存在后期收敛速度慢、早熟收敛等[6]缺陷,学者进行了大量研究,提出了相应的改进方法。
常见的改进策略是通过修改SFLA 参数以提高算法收敛性能,如采用线性递减调整惯性权重[4]、搜索加速因子[5]来协调全局和局部搜索能力;也有的通过引入其他智能算子,如自适应混沌变异算子[6]、领域正交叉算子[7]、多种群协同进化[8]等形成混合智能蛙跳算法;还有的通过增加子种群多样性,如EO-SFLA[9]来增强SFLA全局寻优能力。
这些改进策略不同程度地改善了算法性能,但是由于SFLA提出时间不长,相应理论分析较少,特别是对于复杂高维多峰函数优化问题,收敛效果不理想仍是SFLA面临的难题。
免疫克隆选择算法(Clonal Selection Algorithm,CSA)是生物免疫理论重要算法之一[10]。
CSA能够实现局部与全局同步搜索,有效地避免了早熟和陷入局部极值,特别是在算法运行后期,随着亲和度的提高,CSA能够很快地收敛于全局极值而且具有较高的精度[11]。
CSA的缺陷在于对初始值比较敏感,算法运算初期收敛效率不高。
文献[12]对CSA与SFLA协同进化进行了尝试,但是其组合方式仍属于多种群独立协同进化范畴。
针对基本SFLA在高维多峰函数优化时早熟及难以找到所有全局极值的缺陷,利用SFLA及CSA各自优势,提出了自适应混合蛙跳免疫算法(Polymorphic Adaptive Shuffled Frog Leaping Immune Algorithm,PASFLIA)。
算法采用双层进化模式,在低层混合蛙跳操作中,加入多态自适应子种群机制,将子种群动态地划分为精英群和扩散群;在算法进化后期,提出全局极值筛选策略,将子种群极值点提升到高层进行免疫克隆选择操作。
仿真结果表明PASFLIA在高维多峰函数优化方面取得了良好效果。
PASFLIA采用两层进化模型(如图1所示),低层为青蛙粒子种群集合SF={E1,E2,…,EM},SF又划分为M个子种(族)群;高层为免疫抗体种群C。
更新操作是指一方面将低层子种群个体极值提升到高层,另一方面将高层经过CSA操作后的个体极值更新低层中对应的个体极值。
1.1 多态子种群自适应SFLA操作基本SFLA工作过程可以描述为:由F只青蛙组成的种群SF,对于n维优化问题,每只青蛙代表优化问题的一个解,第k只青蛙位置为Xk={xk1,xk2,…,xkn}。
计算每只青蛙的适应度值f(Xk)[11]并按降序排列,然后平均分配到M个子种群Ei(1≤i≤M)中,每个子种群青蛙数为N。
Ei按式(1)进行划分。
SFLA对子种群Ei中适应度值最差的解Xi,w按式(2)进行更新。
其中,r∈[0,1]且为随机数,Xi,b为Ei当前适应度最好的解。
如果f[Xi,w(t+1)]优于f[Xi,w(t)],则用新位置替代旧位置,否则用Xg(Xg为当前青蛙群体中适应度最好的解)代替Xi,b执行更新策略(2),如果结果仍然不能优于旧位置,则生成随机青蛙取代Xi,w。
Ei重复执行局部搜索过程,直到局部搜索迭代次数为止。
当所有子种群完成搜索后,所有青蛙重新组合,然后重新划分族群,重新进行局部搜索,并更新群体最优解位置,直到满足终止条件。
研究表明,随着迭代次数增加,SFLA收敛效率明显降低。
这是因为,在算法运算后期,当某个青蛙粒子为当前最优位置时,其他青蛙会向其聚拢,特别是如果该位置为局部极值点,则算法就会很容易陷入局部极值,需要迭代较多次数才能跳出[9],并出现早熟现象。
为了提高基本SFLA算法收敛速度和避免早熟,本文提出了多态子种群机制:将子种群Ei按适应度值降序排列,适应度值较优的青蛙粒子划分到精英群,剩余的为扩散群。
精英群内的青蛙粒子具有较优的适应度值,因此对其采用精英学习机制,使得粒子能够以更大的概率跳出局部极值;扩散群内的青蛙粒子采用改进的粒子更新策略,充分利用了历史信息,扩大了样本多样性和搜索空间。
定义1(子种群划分规模确定因子D() t)其中,α为取值极小的正数。
当D(t)=0时表示进化停止。
定义D(t)之后,扩散群规模由式(4)确定。
其中,Ni,s(t)为Ei内的扩散群规模,ω为规模控制系数。
为了避免Ni,s(t)的数值过大或者过小,设定Nmin≤Ni,s(t)≤Nmax。
从式(3)、(4)可以看出,进化初期D(t)取值较大,扩散群规模较小。
随着迭代次数增加,D(t)取值逐渐减少,这表明种群样本多样性降低,Ni,s(t)规模变大,因此算法可以用更多的扩散粒子去增加样本多样性,提高搜索空间。
定义2(扩散群青蛙粒子更新策略)其中,Xi,e、Xi,f为Ei中随机抽取的个体(e≠f≠b≠w),式(5)在式(2)的基础上增加了其他个体信息,扩大了样本空间。
如果上式不能产生更优解,则生成随机青蛙替代旧粒子。
精英群Ni,L(t)规模可由式(6)确定。
定义3(精英群精英学习机制)其中,Tmax为算法最大迭代次数。
精英学习机制实质为具有自适应的高斯变异,随着迭代次数增加,σ逐渐减小。
采用式(7)更新方式,使得青蛙粒子在算法初期能够在较大学习空间内搜索,更容易跳出局部极值;在算法后期,青蛙粒子在较小的学习空间内进行较精细度搜索,有利于提高算法精度。
1.2 高层CSA操作定义4(同峰判断准则)对于多峰函数f(x),xa、xb为函数的两个全局极值点,在两点之间均匀插入l-1个点,得到l+1个点组成的集合L={xa,xa+1,…,xb}。
依次从L集合中取两两相邻的点xn、xn+1(a≤n〈b),若式(9)值出现由正变负,则说明xa、xb为异峰全局极值点,否则为同峰全局极值点。
全局极值筛选策略:设子种群Ei极值点集合为Pi= {Xj},j∈(i·N,(i+1)·N],全局极值点结合为Pi,min。
取Xi,b 为Pi,min第一点,然后依次从集合Pi中取点Xj,如果满足式(10),则Xj为全局极值点。
其中,f(a)为理论全局极值,ε为已设定常数。
如果Xj满足式(10),将其与Pi,min的点依次判断是否同峰。
如果同峰且适应度值优于已存在的点,则用Xj替代该点,若为异峰,则将Xj加入到Pi,min中。
定义5(亲和度)定义混合蛙跳算法的适应度函数为免疫克隆亲和度函数。
即高层CSA操作种群C={ai}由低层个子种群Pi,min组成。
高层CSA操作工作过程为:(1)克隆扩增:对于Pi,min中的抗体按照式(12)进行克隆扩增。
其中,aff(Ej)为低层Ej中最优个体亲和度值。
由式(12)可以看出,适应度值越优的子种群其克隆倍数越大,使得具有高亲和力的抗体获得了更多的克隆机会。
(2)自适应变异:克隆后的抗体按照式(13)进行高斯变异。