CN113688573A - 一种基于改进的黑寡妇蜘蛛算法的拉伸弹簧优化方法 - Google Patents
一种基于改进的黑寡妇蜘蛛算法的拉伸弹簧优化方法 Download PDFInfo
- Publication number
- CN113688573A CN113688573A CN202111004588.4A CN202111004588A CN113688573A CN 113688573 A CN113688573 A CN 113688573A CN 202111004588 A CN202111004588 A CN 202111004588A CN 113688573 A CN113688573 A CN 113688573A
- Authority
- CN
- China
- Prior art keywords
- algorithm
- population
- black widow
- widow spider
- individual
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
- G06F30/27—Design optimisation, verification or simulation using machine learning, e.g. artificial intelligence, neural networks, support vector machines [SVM] or training a model
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/004—Artificial life, i.e. computing arrangements simulating life
- G06N3/006—Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2111/00—Details relating to CAD techniques
- G06F2111/08—Probabilistic or stochastic CAD
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- Computer Hardware Design (AREA)
- Geometry (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提出了一种基于改进的黑寡妇蜘蛛算法的拉伸弹簧优化方法,用以解决现有的拉伸弹簧设计方法容易陷入局部最优解、收敛速度慢的问题。本发明的步骤如下:建立以重量为目标函数的拉伸/压缩弹簧问题的数学模型;构建基于差分进化算法和随机扰动的黑寡妇蜘蛛优化算法;采用改进的黑寡妇群优化算法对数学模型进行求解;根据求解数学模型的最佳决策变量输出弹簧的最佳结构设计方案。本发明基于差分进化算法,并加入了随机扰动策略,提高了算法的探索能力,避免算法陷入局部最优中。本发明具有更好的解质量、收敛精度和稳定性,提高了黑寡妇蜘蛛群优化算法在复杂优化问题上的表现。
Description
技术领域
本发明涉及拉伸弹簧优化的技术领域,尤其涉及一种基于改进的黑寡妇蜘蛛算法的拉伸弹簧优化方法。
背景技术
在如今竞争激烈的世界中,有限的资源日益枯竭,这迫使人们以最小的成本和资源获得最大化的利润。这些问题的数学模型演变为最大化和最小化问题,通常称为优化问题。
拉伸弹簧设计(Tension Spring Design,TCSD)是一种约束优化问题,广泛存在于工程机械设备优化中,如空调压缩机中的弹簧优化,工业内燃机中的弹簧优化等。因此,拉伸弹簧质量的优劣直接影响到机械设备的工作性能。质量优良的拉伸弹簧能提升机械设备运行效率,充分利用能源资源,以及节约生产成本。传统的优化方法在解决拉伸弹簧质量时往往陷入局部最优解,造成寻优精度差,收敛速度慢等问题。
随着电子计算机的发展使得以前不能实现的工程结构优化,在现在变得可能实现,而传统的优化方法由于实施上的限制不能够满足现代计算的要求,而群体智能算法的出现使得一些工程结构优化的应用变成可能。群智能算法不仅具有实现简单、鲁棒性强、易于扩展和自组织等优点,而且具备可以有效地结合某些独特的策略或其他算法来平衡全局搜索能力和本地搜索能力。近些年提出了许多群智能优化算法。例如,受到自然界蜜蜂行为启发的仿生群智能算法---人工蜂群算法;模拟飞蛾围绕火焰飞行行为,将个体随机游走行为替换成了螺线搜索,可以有效解决优化问题的飞蛾扑火算法;根据帝王蝶的迁徙行为,种群会被分布在两部分的一种新型的群体智能算法---帝王蝶算法;根据蚁狮挖制漏斗状陷阱进行捕食蚂蚁过程提出的蚁狮算法;根据灰狼群体的捕猎行为,向着种群最好的三个个体靠近的灰狼优化算法;根据鲸鱼群捕猎时,随机对猎物进行包围或汽包网驱逐不同选择的鲸鱼优化算法。这些算法因其较好的特性,已应用于人工智能、计算机科学和控制工程等领域。
黑寡妇算法(BWO)是Hayyolalam等在2020年提出的一种群智能算法,模拟黑寡妇蜘蛛交配规则,并结合进化计算的随机搜索而产生的新型搜索算法。黑寡妇算法受到自嗜行为的启发,通过竞争和繁殖机制,不断去除种群中的劣解,来寻找全局最优解。当前许多学者对该算法进行了进一步的研究,Agal等人提出了基于权重和特征飞行的黑寡妇蜘蛛算法(WLBWO),在互联网流式传输视频上,提高了带宽处理效率,降低了延迟。Micev等人提出了一种结合同步电机上突发短路测试数据的自适应黑寡妇优化方法。Premkumar等人用黑寡妇优化算法对PI控制器的比例和积分增益进行了优化,与粒子群、遗传等算法的优化结果进行比较,结果证明了黑寡妇优化算法的优越性。ATH等人使用黑寡妇优化算法与Ots(阀值分割法)方法结合,对图像进行多级阈值处理,增加了算法的准确性和效率,降低了计算的复杂度。Priyade等人提出了一种基于模糊的、结合蜘蛛猴优化算法的黑寡妇优化算法(BW-SMO),参数用模糊逻辑控制,有效的降低了成本、延迟。Sheriba等人提出一种混合布谷鸟算法和改进的黑寡妇优化算法(IHCBW),采用方向平均变异策略,提高算法的收敛性能,并将种群划分为多个子组,通过组合子群和形成新的种群来共享最好的个体,并可以防止过早收敛。Punithavathi等人提出将黑寡妇算法与改进的蚁群算法结合(BWO-IACO),用于WSN(无线传感器网络)中基于集群的路由,大大提高了能源效率和网络寿命。
BWO算法在51个现代的基准函数上测试,测试结果表明BWO算法比粒子群算法(Particle Swarm Optimization,PSO)、遗传算法(Genetic Algorithm,GA)、人工蜂群算法(Artificial Bee Colony Algorithm,ABC)、生物地理学优化算法(BiogeographicalDptimization,BBO)在解决高维数值优化问题时有更高的精度和鲁棒性。此外,与现有的优化算法相比,BWO算法原理、结构简单,需要调节的参数较少。基于这些优点,自从BWO算法被提出,已经被广泛应用于各种现实世界优化问题、工程优化领域,例如图像处理、无线网络、电机控制等。尽管BWO算法在很多领域都取得了成功,但算法本身仍面临一些不足。对于一些复杂的优化任务,传统的BWO算法存在早熟收敛或陷入局部最优的问题,此外BWO算法的收敛速度不够高,在复杂问题上无法获得高精度的解。
现有的比较流行的拉伸弹簧优化方法,例如基于动态力学分析(DMA)的综合方法或者基于预言机制惩罚函数方法等,用这些方法对拉伸弹簧进行优化,能够得到不错的结果,但使用起来所需参数较多、结构复杂。
发明内容
针对现有的拉伸弹簧设计方法容易陷入局部最优解,造成寻优精度差,收敛速度慢,所需参数较多的技术问题,本发明提出一种基于改进的黑寡妇蜘蛛算法的拉伸弹簧优化方法,提高了算法的整体优化能力,利用差分进化策略对黑寡妇蜘蛛算法的突变阶段进行改进,并在种群繁殖过程中加入了面向全局最优的策略,来避免不必要的探索以及快速收敛;同时引入随机扰动策略,提升算法在局部开发过程中的优势。
为了达到上述目的,本发明的技术方案是这样实现的:一种基于改进的黑寡妇蜘蛛算法的拉伸弹簧优化方法,其步骤如下:
步骤一:建立以弹簧重量为目标函数的拉伸弹簧问题的数学模型;
步骤二:将数学模型中弹簧的三个决策变量编码为黑寡妇蜘蛛个体的三个维度变量,得到编码后的数学模型;
步骤三:基于差分进化算法和随机扰动策略,构建改进的黑寡妇蜘蛛算法;
步骤四:利用步骤三得到的改进的黑寡妇蜘蛛算法对编码后的数学模型进行目标优化,将得到的最优的黑寡妇蜘蛛个体解码为弹簧的决策变量,得到拉伸弹簧的最佳结构设计方案。
进一步地,所述步骤一中拉伸弹簧问题的数学模型为:
设目标变量即黑寡妇蜘蛛种群的个体W=[w1 w2 w3]=[d D P];
四个优化约束条件分别为:
定义域:0.05≤w1≤2.0;0.25≤w2≤1.3;2.0≤w3≤15.0;
其中,d为线径,D为平均线圈直径,P为有效线圈数,w1、w2、w3为目标变量W的三个个体,目标函数f(W)为最小化弹簧的重量。
进一步地,所述编码和解码的实现方法为:将拉伸弹簧问题的数学模型中的三个决策变量编码为黑寡妇蜘蛛种群的个体的三个维度,各维度中的元素代表不同的决策变量;执行改进的黑寡妇蜘蛛优化算法,得到最优黑寡妇蜘蛛个体,将最优黑寡妇蜘蛛个体解码,得到最佳决策变量。
进一步地,所述利用改进的黑寡妇蜘蛛优化算法对编码后的数学模型进行求解的实现方法为:
S1:初始化种群规模N、繁殖率PR、突变率PM、自嗜率PC、缩放因子F、最优系数β、交叉系数CR和控制参数T;
S2:随机生成种群大小为N的初始种群pop1;
S3:当迭代次数t小于最大迭代次数T时,通过适应度函数计算黑寡妇蜘蛛个体的适应度值;所述适应度函数为拉伸弹簧问题中的目标函数f(W);
S4:黑寡妇蜘蛛个体根据面向全局最优策略进行繁殖,重复N/2次,得到种群规模为2N的种群;进行同类相食,通过适应度值选择黑寡妇蜘蛛的个体,得到种群规模为N的种群pop2;
S5:基于差分进化算法对初始种群pop1进行突变,得到种群规模为N的种群pop3;
S6:将种群pop2和种群pop3进行合并,对合并后的种群按适应度值进行排序,去除多余的个体,得到种群规模为N的种群pop4;
S7:根据随机扰动策略更新种群pop4,得到最健康的黑寡妇蜘蛛个体;
S8:迭代次数t=t+1,判断迭代次数是否达到最大迭代次数T1,若是,迭代结束,输出最优适应度值对应的黑寡妇蜘蛛个体;否则,返回步骤S4。
进一步地,所述步骤S4中黑寡妇蜘蛛个体根据面向全局最优策略进行繁殖的方法为:
其中,α为[0,1]间的随机数,β为最优系数,Wi,best表示种群中第i只黑寡妇蜘蛛在繁殖过程中的最优个体,W1和W2是随机选择的父母,Y1和Y2是繁殖的后代。
所述基于差分进化算法对初始种群pop1进行突变的方法为:随机选取种群pop1中两个不同的个体,将其向量差缩放后与待变异个体进行向量合成,得到变异后的个体;对变异后的个体进行交叉重组,随机交换个体中的两个元素,并以交叉概率选择是否保留;
所述向量合成的种群变异模型为:
Ai(t)=Wi(t)+F·[Wm(t)-Wn(t)];
其中,F为缩放因子,Wi(t)表示第t代种群第i个黑寡妇蜘蛛个体,Wm(t)和Wn(t)为初始种群pop1中随机的两个个体,且i≠m≠n;Ai(t)表示变异后的第i个个体;
对变异后的个体Ai(t)进行交叉重组,随机交换个体中两个元素,以交叉概率进行选择,得到第t代种群的第i个个体:
进一步地,所述随机扰动策略更新黑寡妇蜘蛛个体的方法为:结合概率突跳特性,在搜索空间中寻找目标的全局最优解,在局部最优解上概率性地跳出,并最终趋于全局最优;且随机扰动策略的模型为:
Wi(t+1)=Wi(t)+rand(-1,1)
其中,Wi(t)表示当前最优的个体,Wi(t+1)表示扰动后得到的个体。
进一步地,在局部最优解上以Metropolis准则概率性地跳出,即通过计算适应度函数,得到一个新的解,将新的解与原来的解进行比较,并依据Metropolis准则判断是否接受新解作为当前最优解;所述Metropolis准则的转移概率为:
其中,Wi(t+1)fitness表示第t代种群第i个个体经历扰动后的适应度值,Wi(t)fitness表示第t代种群第i个个体的适应度值,Δf表示扰动后和扰动前适应度值的差,T表示控制参数。
与现有的拉伸弹簧优化方法相比,本发明的有益效果:本发明基于差分进化算法,并加入了随机扰动策略,提高了算法的探索能力,避免算法陷入局部最优中;具有更好的解质量、收敛精度和稳定性,提高了黑寡妇蜘蛛群优化算法在复杂优化问题上的表现。本发明使用改进的黑寡妇蜘蛛优化算法,结构简单,需要调节的参数较少,同时在速度和精度上都能满足要求。在仿真测试中,结果显示,改进后的黑寡妇蜘蛛算法,不管是在收敛速度以及寻优精度上,都有了很好的提升。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明的结构示意图。
图2为本发明拉伸弹簧设计问题的示意图。
图3为本发明黑寡妇蜘蛛算法的突变环节示意图。
图4为本发明改进的黑寡妇蜘蛛算法的流程图。
图5为基准函数时的收敛曲线对比图,其中,(a)为f1基准函数,(b)为f2基准函数,(c)为f3基准函数,(d)为f4基准函数,(e)为f5基准函数,(f)为f6基准函数,(g)为f7基准函数,(h)为f8基准函数。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有付出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,一种基于改进的黑寡妇蜘蛛算法的拉伸弹簧优化方法,其步骤如下:
步骤S1:构建以弹簧重量为优化目标的拉伸弹簧的数学模型。
拉伸弹簧设计问题的目的是最小化张力或者压缩弹簧的重量,如图2所示,该问题的优化约束条件有四个,分别是:最小挠度、剪切应力、浪涌频率、外径。
这里有三个设计变量,如导线直径d、平均线圈直径D和有源线圈的数量P。拉伸弹簧设计问题的数学表示法描述如下:
设目标变量即黑寡妇蜘蛛种群的个体:W=[w1 w2 w3]=[d D P] (1)
需要满足的优化约束条件转化为下列不等式:
其中,d为线径,D为平均线圈直径,P为有效线圈数,w1、w2、w3为目标变量W的三个个体,目标函数f(W)为最小化弹簧的重量。且0.05≤w1≤2.0;0.25≤w2≤1.3;2.0≤w3≤15.0。
步骤S2:将数学模型中弹簧的三个决策变量编码为黑寡妇蜘蛛个体的三个维度变量,黑寡妇蜘蛛个体中各维度中的元素代表不同的决策变量,最后得到编码后的数学模型。
步骤S3:引入差分进化策略和随机扰动策略,构建改进的黑寡妇蜘蛛算法。
黑寡妇蜘蛛是一种雌性蜘蛛,黑寡妇蜘蛛算法是受到黑寡妇蜘蛛生活方式的启发而生成。算法在处理目标函数时,通过模拟黑寡妇蜘蛛的行为,分为种群初始化、繁殖、同类相食和突变四个步骤。在黑寡妇蜘蛛算法中,每只黑寡妇蜘蛛代表种群中1个候选解,假设黑寡妇种群规模为N,搜索空间为D维,第i只黑寡妇蜘蛛在D维空间中的位置可表示为黑寡妇蜘蛛进行种群繁殖的方程为:
其中,α为[0,1]间的随机数,W1和W2是随机选择的父母,Y1和Y2是繁殖的后代。
黑寡妇蜘蛛算法中,通过同类相食的方法,保持种群规模N不变,同时,用突变来提高算法的随机性。黑寡妇蜘蛛算法的基本步骤如下:
步骤1、初始化:随机初始化一个种群,并设置初始参数。
步骤2、种群繁殖和同类相食:根据繁殖率,在种群中随机的选取个体作为父母进行繁殖,繁殖后个体间进行竞争,来限制种群规模N的大小。
步骤3、突变:根据突变率,随机选择的个体数量,从选择到的个体中随机交换两个元素,产生新的个体。
步骤4;合并种群:将步骤2和步骤3中得到的种群进行合并,对种群按适应度值进行排序,按照种群原规模N,去除多余的个体,进行下一次迭代。
由种群繁殖的方程中可以看出,标准的黑寡妇蜘蛛算法在种群繁殖迭代更新过程中只考虑了个体生成的随机性,每一代个体,都由父代随机的生成,因此,该种群繁殖方程具有较好的探索能力,而忽略了算法的开发能力,导致算法的运行效率不高,并在求解多峰优化问题时,容易陷入局部最优。
为了增强黑寡妇蜘蛛算法的开发能力和加快算法的收敛速度。本发明在黑寡妇蜘蛛算法中加入个体的记忆功能,对每代个体最优解进行记忆保存,使其能够记忆种群自身进化过程中的最优解,因此,设计出一种修改的种群繁殖的方程:
其中,α为[0,1]间的随机数,β为最优系数,对种群按照适应度值进行排序,找到最优个体Wi,best,Wi,best为种群中第i个黑寡妇蜘蛛在繁殖过程中的最优个体,W1和W2是随机选择的父母,Y1和Y2是繁殖的后代,通过调节最优系数β的值,可以协调种群和个体记忆对黑寡妇蜘蛛算法搜索的影响。
与原种群繁殖方程相比,修改后的种群繁殖方程由两部分组成:第一部分为随机个体生成,增强种群的多样性和全局搜索能力;第二部分引入个体自身最优信息Wi,best,增强算法的开发能力和加快算法的收敛速度。通过调节最优系数β的值,从而平衡算法的开发和探索能力。
基本的黑寡妇蜘蛛算法中,为了增加种群的多样性,在突变环节,随机对个体中的两个元素进行交换。在局部极端情况下,突变规则被用来避免陷入局部最优解以及提高收敛速度,并且,对于产生最优收敛速度更为重要。黑寡妇蜘蛛算法在经历自嗜阶段,在算法中种群会有很强收敛性,基本的突变规则无法更好的满足这些条件。受到差分进化算法的启发,用N个维数为D的实数值参数向量作为每一代的种群,与初始种群规模保持一致,在搜索过程中,种群先进行变异操作,通过差分进化策略实现个体变异。随机选取种群中两个不同的个体,将其向量差缩放后与待变异个体进行向量合成,得到变异后的第i个个体:
Ai(t)=Wi(t)+F·[Wm(t)-Wn(t)] (9)
其中,F为缩放因子,Wi(t)表示第t代种群的第i个个体,Wm(t)和Wn(t)为种群中随机的第m和n个个体,且i≠m≠n。Ai(t)表示变异后的第i个个体。
如图3所示,对变异后的个体{Ai(t)}进行交叉重组,随机交换个体中两个元素,以交叉概率进行选择,得到第t代种群的第i个个体:
其中,CR为交叉概率,取值在[0,1]间,a和b为随机选择的两个个体,a≠b≠m≠n,当随机数小于交叉概率CR时,两个元素和进行交换;反之,保持变异后的个体。 分别表示变异后个体中从第1维到第D维的元素。
随机扰动搜索策略是结合概率突跳特性,在搜索空间中寻找目标的全局最优解,在局部最优解上进行随机的增减,以Metropolis准则概率性地跳出,并最终趋于全局最优。随机扰动策略表示为:
Wi(t+1)=Wi(t)+rand(-1,1) (11)
其中,Wi(t)表示当前最优的个体,Wi(t+1)表示扰动后得到的个体。
这个阶段将对接受到来自算法运行中得到的最优个体进行扰动,通过计算适应度函数,得到一个新的解,将两个解进行比较,并依据Metropolis准则,判断是否接受新解作为当前最优解。Metropolis准则的转移概率为:
其中,Δf表示扰动后和扰动前适应度值的差,T表示控制参数,Wi(t)fitness表示当先最优个体的适应度值,Wi(t+1)fitness表示当前个体经历随机扰动后得到的适应度值。
在迭代循环初期,转移概率p较大,会接受大部分相对较差的解,给算法更多机会探索以跳出局部最优。随着算法的运行,转移概率p渐渐降低,差解越来越难被接受,最终,得到的最优解将会趋于稳定。
标准的黑寡妇蜘蛛算法的主要步骤为种群初始化、繁殖、同类相食和突变几个部分。受算法自身的影响,尤其是算法在处理复杂函数问题时,容易陷入到局部最优中,开发和探索无法保持平衡。因此,本发明在繁殖过程中加入了面向全局最优策略,平衡开发和探索的过程;在突变过程中,使用交叉重组的方法实现差分进化策略,来提高算法收敛性能;并且,引入随机扰动策略,提高算法局部开发的能力,使算法整体性能得到提高。如图4所示,改进后的黑寡妇蜘蛛算法的的基本步骤如下:
步骤一:初始化。在算法中,每个问题的潜在解决方案都被认为是一种黑寡妇蜘蛛。每个黑寡妇蜘蛛都会表示问题变量的值。为了求解基准函数,应将该结构视为一个数组。因此,在一个种群规模为N,搜索空间为D维,第i只黑寡妇蜘蛛在D维空间中的位置可表示为最终生成一个种群大小为N×D的初始种群pop1。
步骤二:黑寡妇蜘蛛个体根据面向全局最优策略进行繁殖。黑寡妇蜘蛛在每次繁殖中都会产生很多的个体,但在后代中,仅会有很少的、强壮的个体生存下来。在算法中,复制这样的随机性,创建一个包含随机数的数组,个体间会随机的选择成对的父母,并通过加入个体的记忆功能,对每代个体最优解进行记忆保存,使其能够记忆种群自身进化过程中的最优解,通过式(8)来模拟种群的繁殖过程。这个过程会重复N/2次。最后,后代和父辈们会添加到一个数组中,并根据他们的适应度值进行升序排列,现在根据同类相食的等级,一些最好的个体被添加到新生成的种群中,种群规模是2N。改机的黑寡妇蜘蛛算法中加入个体的记忆功能,对每代个体最优解进行记忆保存,使其能够记忆种群自身进化过程中的最优解,以达到加快算法的收敛速度的目的。
步骤三:对步骤二中繁殖后的黑蜘蛛种群进行同类相食。这个阶段中,算法模仿黑寡妇蜘蛛的自嗜行为,存在3种情况:第一个是父母间的相食;另一种是同类相食,存在于后代中,强壮的蜘蛛吃它们较弱的兄弟姐妹;第三种同类相食,幼蜘蛛吃它们的母亲。算法通过相食行为引入竞争机制,控制种群的数目。这个阶段,使用适应度值来确定个体的好坏,即通过适应度值选择黑寡妇蜘蛛的个体,得到种群pop2,其种群规模是N。
步骤四:基于差分进化算法对初始种群pop1进行突变。这一阶段,用来避免陷入局部以及提高收敛速度。随机选取种群pop1中两个不同的个体,将其向量差缩放后与待变异个体由式(9)进行向量合成,得到变异后的个体,随机交换个体中的两个元素,并以交叉概率,选择是否保留,完成交叉重组过程,得到种群pop3,种群规模为N。所述黑寡妇蜘蛛突变过程中,采用对个体进行向量差缩放后,对种群个体进行变异,并以概率性的选择是否进行保存,用新的突变规则来避免陷入局部以及提高收敛速度。
步骤五:合并种群pop2和种群pop3。将通过繁殖、相食后的种群和经过基于差分进化算法突变的种群进行合并,并对合并后的种群按适应度值进行排序,去除多余的个体,保持种群规模,此时种群保存为Pop1,种群规模为N。
步骤六:随机扰动。对接受到来自算法运行中得到的最优个体通过式(11)进行扰动,在局部最优解上以概率性地跳出,并通过式(12)来判断是否接受扰动后得到的解,使种群以一定概率接受劣质的解,增加算法的局部开发能力。
步骤七:判断迭代次数是否达到最大迭代次数T,若是,迭代结束,输出最优适应度值对应的黑寡妇蜘蛛个体,否则重复步骤二到六。
为了验证改进的黑寡妇蜘蛛算法的整体优化性能,选用文献[Tang K,Yáo X,Suganthan P N,et al.Benchmark functions for the CEC’2008 special session andcompetition on large scale global optimization.Nature inspired computationand applications laboratory,USTC,China,2007,24:1-18.]中的8个30维度的基准测试函数进行实验分析,如表1所示。8个基准测试函数中,f1-f5是单峰函数,f6-f8是多峰函数。本发明改进的黑寡妇蜘蛛算法---IBWO以及原黑寡妇蜘蛛算法---BWO、粒子群优化算法---PSO、差分进化算法---DE的所有算法的控制参数如表2所示。
表1基准测试函数
对于每种算法,种群大小N设置为50,最大迭代次数tmax设置为1000,独立运行30次,取平均值作为最终结果。
表2所有算法的初始化参数
在表3中,对于测试函数f1-f8的结果可以看出,改进的黑寡妇蜘蛛算法都可以找到让人满意的结果。在单峰函数f1-f5中,对于基准函数f1和f2,可以看出改进的黑寡妇蜘蛛算法结果在精度上有了很明显的提升,对比于粒子群算法并没有得到令人满意的答案,可以说明改进的黑寡妇蜘蛛算法有很强的局部收敛性能,有很好的有寻找全局最优解的能力。在函数f3和f4的测试中,传统的黑寡妇蜘蛛算法、粒子群优化算法和差分进化算法得到的结果在最优值附近,或者找不到最优值所在的地方,而改进后的黑寡妇蜘蛛算法相对测试函数f1和f2来说精度有所下降,但仍然可以找到最优值,说明算法在开发和探索上,得到了很好的平衡。在函数f5的测试中,同比标准的黑寡妇蜘蛛算法,结果上有少许提升,类比粒子群算法和差分进化算法,精度较差,可看出,改进的黑寡妇蜘蛛算法的精度较高。
表3仿真结果
在多峰函数f6-f8中,测试函数f6是Rastrigin函数,常用于测试算法的全局搜索能力,从表3中可以看出,粒子群优化算法和差分进化算法均陷入到了局部最优中,而改进后的黑寡妇蜘蛛算法找到了精确的最优值。复杂的测试函数f7是Ackley函数,是一种连续、旋转且不可分割的多峰函数,常用于测试算法跳出局部极值的能力,结果测试也表明,改进后的黑寡妇蜘蛛算法具有很好的随机性,可以跳出局部最优,而对于差分进化算法以及传统的黑寡妇蜘蛛算法,在进行了多次运行之后,仍然找不到全局最优,陷入到了局部最优中,说明改进后的算法大大加强了抗“早熟”的能力。函数f8的测试中,标准的黑寡妇蜘蛛算法的精度较低,结果显示,改进后的黑寡妇蜘蛛算法在精度上有了明显的提高,而差分进化算法在此函数中也表现的较为优秀。
图5是求解基准函数时的收敛曲线,从图5中可以直观看出,本发明改进的黑寡妇蜘蛛算法在计算的速度、精确度以及收敛性能上有了很好的提升。在单峰测试函数f1-f5中,随着迭代次数的增加,所得到的结果的精度也随之增加。在多峰函数f1-f5中同样可以看到这样的结果,这说明改进后的黑寡妇蜘蛛优化算法具有很强的稳定性和鲁棒性。
针对黑寡妇算法中存在的探索和开发不平衡、容易陷入局部最优的问题,本发明通过引入差分进化策略,来避免不必要的探索;同时利用随机扰动策略,提升算法的局部开发能力,并通过面向全局最优的种群繁殖对个体增加了记忆功能以改善种群的繁殖策略,进一步降低了算法陷入局部最优的可能性,保证了开发和探索之间的平衡。通过在基准优化函数上进行测试,结果证明,改进的黑寡妇蜘蛛算法克服了标准黑寡妇蜘蛛算法的缺点,进一步增强了全局搜索能力,具有更快的收敛速度。本发明在算法的突变阶段引入差分进化策略,来避免不必要的探索;同时利用随机扰动因子,提升算法在局部开发能力,并对个体增加了记忆功能以改善种群的繁殖策,进一步降低了算法陷入局部最优的可能性,保证了开发和探索之间的平衡。在对测试函数上进行了算法性能的测试中,结果证明算法改进后,无论是在收敛速度上、在全局搜索能力上以及算法求解的精度上,均优于标准的黑寡妇算法,克服了标准黑寡妇蜘蛛算法的缺点。
步骤S4:利用步骤三得到的改进的黑寡妇蜘蛛算法对编码后的数学模型进行目标优化,将得到最优的黑寡妇蜘蛛个体解码为弹簧的决策变量,得到拉伸弹簧的最优方案。
将数学模型中的三个决策变量d、D、P编码为黑寡妇蜘蛛种群的个体的三个维度w1、w2、w3,执行改进后的黑寡妇蜘蛛算法,得到最优黑寡妇蜘蛛个体,将最优黑寡妇蜘蛛个体解码,得到最佳决策变量。在对各种优化算法进行拉伸弹簧的实验中,维度D设置为3,其余参数与测试函数中保持一致。
对张压弹簧设计的统计结果在表4中进行了比较。改进后的黑寡妇蜘蛛算法找到的最优代价是所有算法中最小的,且控制参数相对较好。结果表明,改进后的黑寡妇蜘蛛算法应用在拉伸弹簧优化中在寻找全局最优解时具有更高的收敛精度,不仅降低了弹簧设计问题的成本,而且提高了算法的优化效率。
表4统计结果
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (8)
1.一种基于改进的黑寡妇蜘蛛算法的拉伸弹簧优化方法,其特征在于,其步骤如下:
步骤一:建立以弹簧重量为目标函数的拉伸弹簧问题的数学模型;
步骤二:将数学模型中弹簧的三个决策变量编码为黑寡妇蜘蛛个体的三个维度变量,得到编码后的数学模型;
步骤三:基于差分进化算法和随机扰动策略,构建改进的黑寡妇蜘蛛算法;
步骤四:利用步骤三得到的改进的黑寡妇蜘蛛算法对编码后的数学模型进行目标优化,将得到的最优的黑寡妇蜘蛛个体解码为弹簧的决策变量,得到拉伸弹簧的最佳结构设计方案。
3.根据权利要求1或2所述的基于改进的黑寡妇蜘蛛算法的拉伸弹簧优化方法,其特征在于,所述编码和解码的实现方法为:将拉伸弹簧问题的数学模型中的三个决策变量编码为黑寡妇蜘蛛种群的个体的三个维度,各维度中的元素代表不同的决策变量;执行改进的黑寡妇蜘蛛优化算法,得到最优黑寡妇蜘蛛个体,将最优黑寡妇蜘蛛个体解码,得到最佳决策变量。
4.根据权利要求3所述的基于改进的黑寡妇蜘蛛优化算法的拉伸弹簧设计方法,其特征在于,所述利用改进的黑寡妇蜘蛛优化算法对编码后的数学模型进行求解的实现方法为:
S1:初始化种群规模N、繁殖率PR、突变率PM、自嗜率PC、缩放因子F、最优系数β、交叉系数CR和控制参数T;
S2:随机生成种群大小为N的初始种群pop1;
S3:当迭代次数t小于最大迭代次数T时,通过适应度函数计算黑寡妇蜘蛛个体的适应度值;所述适应度函数为拉伸弹簧问题中的目标函数f(W);
S4:黑寡妇蜘蛛个体根据面向全局最优策略进行繁殖,重复N/2次,得到种群规模为2N的种群;进行同类相食,通过适应度值选择黑寡妇蜘蛛的个体,得到种群规模为N的种群pop2;
S5:基于差分进化算法对初始种群pop1进行突变,得到种群规模为N的种群pop3;
S6:将种群pop2和种群pop3进行合并,对合并后的种群按适应度值进行排序,去除多余的个体,得到种群规模为N的种群pop4;
S7:根据随机扰动策略更新种群pop4,得到最健康的黑寡妇蜘蛛个体;
S8:迭代次数t=t+1,判断迭代次数是否达到最大迭代次数T1,若是,迭代结束,输出最优适应度值对应的黑寡妇蜘蛛个体;否则,返回步骤S4。
6.根据权利要求4所述的基于改进黑寡妇蜘蛛优化算法的拉伸/压缩弹簧设计方法,其特征在于,所述基于差分进化算法对初始种群pop1进行突变的方法为:随机选取种群pop1中两个不同的个体,将其向量差缩放后与待变异个体进行向量合成,得到变异后的个体;对变异后的个体进行交叉重组,随机交换个体中的两个元素,并以交叉概率选择是否保留;
所述向量合成的种群变异模型为:
Ai(t)=Wi(t)+F·[Wm(t)-Wn(t)];
其中,F为缩放因子,Wi(t)表示第t代种群第i个黑寡妇蜘蛛个体,Wm(t)和Wn(t)为初始种群pop1中随机的两个个体,且i≠m≠n;Ai(t)表示变异后的第i个个体;
对变异后的个体Ai(t)进行交叉重组,随机交换个体中两个元素,以交叉概率进行选择,得到第t代种群的第i个个体:
7.根据权利要求4所述的基于改进黑寡妇蜘蛛优化算法的拉伸弹簧设计方法,其特征在于,所述随机扰动策略更新黑寡妇蜘蛛个体的方法为:结合概率突跳特性,在搜索空间中寻找目标的全局最优解,在局部最优解上概率性地跳出,并最终趋于全局最优;且随机扰动策略的模型为:
Wi(t+1)=Wi(t)+rand(-1,1)
其中,Wi(t)表示当前最优的个体,Wi(t+1)表示扰动后得到的个体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111004588.4A CN113688573A (zh) | 2021-08-30 | 2021-08-30 | 一种基于改进的黑寡妇蜘蛛算法的拉伸弹簧优化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111004588.4A CN113688573A (zh) | 2021-08-30 | 2021-08-30 | 一种基于改进的黑寡妇蜘蛛算法的拉伸弹簧优化方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113688573A true CN113688573A (zh) | 2021-11-23 |
Family
ID=78584011
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111004588.4A Withdrawn CN113688573A (zh) | 2021-08-30 | 2021-08-30 | 一种基于改进的黑寡妇蜘蛛算法的拉伸弹簧优化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113688573A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114967823A (zh) * | 2022-06-07 | 2022-08-30 | 河北工程大学 | 基于改进黑寡妇的光伏最大功率点跟踪的控制方法及装置 |
CN115499916A (zh) * | 2022-11-15 | 2022-12-20 | 中国人民解放军海军工程大学 | 基于改进鲸鱼优化算法的无线传感器网络节点定位方法 |
CN116609672A (zh) * | 2023-05-16 | 2023-08-18 | 国网江苏省电力有限公司淮安供电分公司 | 一种基于改进的bwoa -fnn算法的储能电池soc估计方法 |
CN117892762A (zh) * | 2024-03-14 | 2024-04-16 | 临沂美联重工有限公司 | 一种滑移装载机用基本数据查询系统及方法 |
CN118228878A (zh) * | 2024-04-09 | 2024-06-21 | 长沙理工大学 | 一种应用于数据中心联产系统的双层协同优化方法、系统、设备以及介质 |
-
2021
- 2021-08-30 CN CN202111004588.4A patent/CN113688573A/zh not_active Withdrawn
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114967823A (zh) * | 2022-06-07 | 2022-08-30 | 河北工程大学 | 基于改进黑寡妇的光伏最大功率点跟踪的控制方法及装置 |
CN115499916A (zh) * | 2022-11-15 | 2022-12-20 | 中国人民解放军海军工程大学 | 基于改进鲸鱼优化算法的无线传感器网络节点定位方法 |
CN115499916B (zh) * | 2022-11-15 | 2023-01-20 | 中国人民解放军海军工程大学 | 基于改进鲸鱼优化算法的无线传感器网络节点定位方法 |
CN116609672A (zh) * | 2023-05-16 | 2023-08-18 | 国网江苏省电力有限公司淮安供电分公司 | 一种基于改进的bwoa -fnn算法的储能电池soc估计方法 |
CN116609672B (zh) * | 2023-05-16 | 2024-05-07 | 国网江苏省电力有限公司淮安供电分公司 | 一种基于改进的bwoa-fnn算法的储能电池soc估计方法 |
CN117892762A (zh) * | 2024-03-14 | 2024-04-16 | 临沂美联重工有限公司 | 一种滑移装载机用基本数据查询系统及方法 |
CN117892762B (zh) * | 2024-03-14 | 2024-05-24 | 临沂美联重工有限公司 | 一种滑移装载机用基本数据查询系统及方法 |
CN118228878A (zh) * | 2024-04-09 | 2024-06-21 | 长沙理工大学 | 一种应用于数据中心联产系统的双层协同优化方法、系统、设备以及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113688573A (zh) | 一种基于改进的黑寡妇蜘蛛算法的拉伸弹簧优化方法 | |
Xue et al. | A self-adaptive mutation neural architecture search algorithm based on blocks | |
Rakhshani et al. | Snap-drift cuckoo search: A novel cuckoo search optimization algorithm | |
Li et al. | Newly emerging nature-inspired optimization-algorithm review, unified framework, evaluation, and behavioural parameter optimization | |
Qu et al. | Chicken swarm optimization based on elite opposition‐based learning | |
Abd-Alsabour | A review on evolutionary feature selection | |
Irwin-Harris et al. | A graph-based encoding for evolutionary convolutional neural network architecture design | |
CN111832135A (zh) | 基于改进哈里斯鹰优化算法的压力容器结构优化方法 | |
CN111242281A (zh) | 一种深度卷积神经网络权值优化方法 | |
CN114662638A (zh) | 基于改进人工蜂群算法的移动机器人路径规划方法 | |
CN113963410A (zh) | 一种基于改进遗传算法的人脸识别优化方法 | |
CN116484933A (zh) | 一种基于改进布谷鸟搜索算法的bp神经网络优化方法 | |
CN113537439A (zh) | 改进的人工蜂群优化算法 | |
CN115963731A (zh) | 一种基于改进遗传算法的指挥控制体系网络结构优化方法 | |
Luttbeg et al. | Predator and prey habitat selection games: the effects of how prey balance foraging and predation risk | |
Zhou et al. | Efficient policy space response oracles | |
CN113361034B (zh) | 基于觅食策略的改进樽海鞘算法的拉压弹簧设计方法 | |
Xue et al. | Evolutionary architecture search for generative adversarial networks based on weight sharing | |
CN117540642A (zh) | 一种多目标优化方法及系统 | |
CN115222006A (zh) | 一种基于改进粒子群优化算法的数值函数优化方法 | |
Templier et al. | A geometric encoding for neural network evolution | |
CN116362286A (zh) | 一种基于Cubic映射和纵横交叉的花授粉算法 | |
CN112085144A (zh) | 自适应协方差学习引导人工蜂群的方法 | |
Foreback et al. | Using evolutionary computation to find parameters that promote egalitarian major evolutionary transitions | |
CN114239403A (zh) | 基于机器学习构建的社交网络影响最大化确定方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20211123 |
|
WW01 | Invention patent application withdrawn after publication |