(完整版)基于优化问题的多目标布谷鸟搜索算法毕业设计

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

基于优化问题的多目标布谷鸟搜索算法

关键字:布谷鸟搜索、元启发式算法、多目标、最优化

摘要:在工程设计方面,很多问题都是典型的多目标问题,而且,都是复杂的非线性问题。现在我们研究的优化算法就是为了解决多目标化的问题,使得与单一目标问题的解决有明显的区别,计算结果和函数值有可能会增加多目标问题的特性。此时,元启发式算法开始显示出自己在解决多目标优化问题中的优越性。在本篇文章中,我们构造了一个新的用于解决多目标优化问题的算法——布谷鸟搜索算法。我们通过一系列的多目标检验函数对其的有效性已经做出来检验,发现它可以应用于解决结构设计等问题中去,例如:光路设计、制动器设计等。另外,我么还对该算法的主要特性和应用做了相关的分析。

1.简介

在设计问题中经常会考虑到很多多重的复杂问题,而且这些问题往往都具有很高的非线性性。在实际中,不同的目

标之间往往会有分歧和冲突,有时候,实际的最优化解决方案往往不存在,而一些折中的和近似的方案往往也可以使用。除了这些挑战性和复杂性以外,设计问题还会受到不同设计目标的约束,而且还会被设计代码、设计标准、材料适应性、和可用资源的选择,以及设计花费等所限制,甚至是关于单一目标的全局最优问题也是如此,如果设计函数有着高度的非线性性,那么全局最优解是很难达到的,而且,很多现实世界中的问题经常是NP- ,为整数时,我们有

当图2表明他们在100步之内的飞行路线时,图1则表示他们飞行100个步长所遵循的levy分布图。这一情况指出levy飞行比布朗随机游动在发现事物方面的能力要有效的多,以内其有着较大的搜索范围。对于他的有效性,又很多原因可以作为解释,其中一种是由于levy的方差比布朗运动的线性关系有着更快的增长率。

(10)

2.3 多布标布谷鸟搜索算法

在最初由杨新社教授和Deb教授提出的单一目标的布谷鸟优化算法中使用了三条基本的准则:

(1)每一只布谷鸟一次只产一个蛋,然后会将你这一只蛋丢到随机选择的一个巢穴中。

(2)在一个最佳的巢中,有着质量最优的蛋,这会使下一代更好的繁殖下去。

(3)可供选择的寄主巢穴的数量是有限的,而且寄主也会发现异种蛋,这样的几率为,也会扔掉这些异种的蛋,或者直接丢弃自己原本的巢穴而去建一个新的巢。

对于k个不同目标的多目标优化问题,我们可以将以上规则做以修改,使得此规则可以同时用于多目标的需要。(1)每一个布谷鸟一次只产一个蛋,然后将这些蛋放入随机选择的巢中,第k个蛋代表第k个目标。

(2)每一个巢中的蛋都会以的几率被遗弃,同样一个有k 个蛋的巢也会根据蛋的相似性和区别以的几率被重建。有时,随机的混合也会用于其中。

简单的说,这个最后的假设可以近似的看成一个分数,而且这n个巢也会被新的巢所取代,对于目标的最大化,一个解决方法的适应性和可行性可以简单地归结为一些目标

函数的求解问题,而且不受限制的方法也应该被广泛的发现。

用数学的语言来说,第一条规则可以修改为一个随机过程,这样的话,一个新的算法策略就可以随机的由随机游走或者levy飞行来总结得出。同时,有局限性的数字序列可以由算法决定,也可以想象为一个交叉的过程,对于每一个巢,可以有k种如(11)式的解决方法,本质上说,第二条规则则可以被修改为精英策略,这样最佳的解决策略就可以用于下一代中,而且,这样的选择也可以帮助我们确认此算法过程的正确性。除此之外,第三条规则可以被类似的考虑为变异,这样最差的解决方法就可以以一定几率被丢弃,新的解决策略就可以根据解决策略之间的相似性被我们发现。这样也就可以将levy飞行与不同结果的解决策略相结合,从而使得这样的变异变得向量化。这种独特的结合过程可以很好的确认算法的有效性。

基于这三种规则,多目标布谷鸟搜索算法的基本步骤可以总结为如表3的一系列伪代码,

当我们发现新的可以用于解决策略时,用i表示布谷鸟,那么一个levy飞行就可以用以下式子来表示

(11)

此时是一个步长,在大多数情况下,我们可以使用。为了使不同的解决策略可以有很好的适应性,我们也可以使用如下式子:

(12)这里的为一个常数,当两个不同的随机解决策略在一个时期内相一致时,这种模拟就可以看出巢中的蛋被发现的几

率就会很小。

这里的表示被选择的目标,当其中的随机步长由levy 分布中的最大步长决定时,levy 飞行有效的提供了一个随机游走的模型:

(13)

此式有一个无穷大的方差,且有无限种可能,在这里,有着连续的跳跃点或步长的布谷鸟的本质,其实是一个遵循规定步长的分布。

另外,最差巢穴会以比率被遗弃,所以新的巢穴可以通过随机的游走和混合来被重新建立,被混合的蛋可以通过一些数字序列与寄主的蛋之间的相似性和区别来给出。

显然,步长大小s 的决定不是通过levy 飞行给出的一般值,一个应经被杨新社教授研究过的一个设计问题可以简单的总结如下:

)(||01.0~)()()()(1)()(0t i t j t i t j x x v u levy x x s -⊕-=ββα

(14)

当u 和v 都服从正交的分布时,即:

(15)

1,2]2/)1[()2/sin)()1(/12/)1(=⎭⎬⎫⎩⎨⎧+Γ+Γ=-v u σββπββσββ

此时,为标准的伽马分布函数。

3. 数值结果

3.1 参数研究

现在被提及的多目标布谷鸟搜索是用Matlab 来实现的,其计算时间在一到两分钟之内,我们已经通过一系列变化的参数对其进行了测试,例如:种群规模n 、levy 飞行参数、发现几率。=0.1.0.2...,0.5...,0.9,我们可以发现应用到实际中的最佳参数值分别是:n=25-50, =0.25-0.5, =1或1.5.另外参数可以去0.01到0.5之间的值,且最佳的取值为0.1。

3.2 多目标测试函数

我们对于多目标优化问题,有很多不同的测试函数,但是,我们仍需要建立一个更为广泛的函数使得其可以包含Pareto front 分布和Pareto 优化问题。为了得到多目标布谷鸟搜索算法,我们需要在这些函数中选择的建立一个凸函数、非凸函数和非连续的Pareto front 分布函数。我们也需要建立一个包含复杂的Pareto 函数,为了更为具体的说明本文的问题,我们测试了如下的五个函数:

相关文档
最新文档