CN109800849A - 动态布谷鸟搜索算法 - Google Patents
动态布谷鸟搜索算法 Download PDFInfo
- Publication number
- CN109800849A CN109800849A CN201811528757.2A CN201811528757A CN109800849A CN 109800849 A CN109800849 A CN 109800849A CN 201811528757 A CN201811528757 A CN 201811528757A CN 109800849 A CN109800849 A CN 109800849A
- Authority
- CN
- China
- Prior art keywords
- bird
- value
- solution
- algorithm
- fitness
- 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
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
动态布谷鸟搜索算法,包括下述内容:对传统布谷鸟搜索算法的两个参数步长和发现概率进行了改进。在布谷鸟的位置更新公式中引入了适应度函数值的变化趋势,进而平衡了搜索速度和搜索精度之间的关系,算法初期较大步长全局搜索,算法后期较小步长局部搜索。同时在鸟蛋被发现的过程中,提高了解适应度好的后代保留概率,改善了偏好随机游走的不确定性,且随着搜索的进行减小发现概率,使得进化后期容易产生新个体。通过改进提高了布谷鸟搜索算法的收敛速度,避免算法陷入局部最优解,提升了算法的优化性能。
Description
技术领域
本发明属于一种新兴启发算法,具体涉及一种改进的布谷鸟搜索算法。
背景技术
传统的布谷鸟搜索算法把布谷鸟巢寄的行为与Lévy飞行的偏好游走相结合,而Lévy飞行步长取值由满足正态分布的u和v来决定,所以步长完全是随机的,虽然随机的步长可以满足解的多样性,避免算法陷入局部最优解,但是步长的大小的不确定性会影响算法的收敛速度。传统的布谷鸟搜索算法通过解被发现的机制,可以提高解的多样性,避免出现解陷入局部最小值的问题,被发现的解会被抛弃,并以偏好游走的方式通过位置更新公式生成新解,来替代掉被发现的解,通过这种机制可以提高算法全局搜索的性能。但是在这种机制中,解是随机被抛弃的,会导致适应度值好的解被抛弃,影响解的精度。因此设计一种平衡搜索速度和精度的改进的布谷鸟搜索算法具有重要意义。
发明内容
本发明的目的是针对上述问题,提供了一种动态布谷鸟搜索算法,该算法比传统布谷鸟搜索算法具有更快的收敛速度,能够避免算法陷入局部最优解,并且提升了算法的优化性能。
动态布谷鸟搜索算法,包括以下步骤:
步骤1:用f(x)来表示目标函数,其中x=(x1,x2,...,xn)T,初始化一个具有n个鸟巢的种群xi=(i=1,2,3,…n),设置鸟巢规模数量为n、算法维数为d、最大步长因子αmax为0.5、最小步长因子αmin为0.01、最大发现概率Pamax为0.5、最小发现概率Pamin为0.01及最大迭代次数Nmax等参数;
步骤2:用(x1,1,x1,2,...,x1,n)T这n个解表示随机初始化的n个鸟巢位置,对每一个解分别计算目标函数的值,用fbest记录适应度值最好的解(鸟巢位置),同时用fworse记录适应度值最差的解(鸟巢位置);
步骤3:根据当前迭代次数Niter,用公式(1)计算出步长因子α,保留上代适应度值最好的解(鸟巢位置)。
式中,αmax为最大步长因子,αmin为最小步长因子,αmax=0.5,αmin=0.01, Nmax为最大迭代次数,Niter为当前迭代次数。
式中,代表的是迭代第K次时最优解的值,fk代表的是迭代第K次时适应度函数的值。
根据计算出来的步长因子α和当前目标函数的值计算出下一步的步长,把步长代入到位置更新公式(2)中,对其余解(鸟巢的位置)进行更新,计算出更新之后的解(鸟巢的位置)对应的适应度函数值,分别和上代最好的适应度值进行比较,最后把最好的记录为当前最好的解(鸟巢位置);
步骤4:对每一个解(鸟巢位置)随机产生一个0到1之间的数r′,根据公式(3) 计算出对应的r。
式中,r′为[0,1]间的随机数,fiter为当前适应度函数值,fbest为当前最好的适应度函数值,fworse为当前最差的适应度函数值。
式中,Niter表示的是当前迭代的次数,Nmax表示迭代的最大次数,Pamax的值为0.5,Pamin的值为0.01。
同时把当前迭代的次数Niter代入到动态发现概率公式(4)中,从而计算出宿主鸟发现布谷鸟鸟蛋概率Pa,比较Pa和r的大小,如果r大于Pa,就把对应的解(鸟巢位置)随机改变,反之就不变。计算改变之后的解(鸟巢位置)对应的适应度函数的值,与上一代的解(鸟巢位置)进行比较,最后用记录下适应度值最好的解(鸟巢位置);
步骤5:计算步骤四中记录的适应度值最好的解(鸟巢位置)对应的目标函数值判断目标函数值是否满足终止条件,如果满足那么就是算法最终搜索的全局最优解,如果不满足就返回到步骤2;
步骤6:输出步骤5记录的适应度值最好的解(鸟巢位置)它就是全局最优解(鸟巢位置)。
本发明动态布谷鸟搜索算法,对传统布谷鸟搜索算法的步长和发现概率这两个参数进行了改进;在布谷鸟的位置更新公式中引入了适应度函数值的变化趋势,平衡了搜索速度和搜索精度之间的关系;同时在鸟蛋被发现的过程中,提高了适应度好的后代保留概率,改善了偏好随机游走的不确定性;且随着搜索的进行减小发现概率,使得进化后期容易产生新个体。该算法比传统布谷鸟搜索算法具有更快的收敛速度,能够避免算法陷入局部最优解,并且提升了算法的优化性能。
附图说明
图1是三种算法对Sphere函数寻优曲线图。
图2是三种算法对Rastrigin函数寻优曲线图。
图3是三种算法对Ackley函数寻优曲线图。
图4是DCS算法,CS算法和PSO算法的目标函数寻优测试结果表。
具体实施方式
为了实现对本文提出的动态布谷鸟搜索算法(DCS)的性能仿真测试,采用传统的布谷鸟搜索算法(CS)和粒子群算法(PSO)和其进行对比测试,比较三种优化算法对同一目标函数的迭代寻优性能。关于用于测试优化算法性能的目标函数选择,通常可以采用三个被广泛使用于数值问题的测试函数,利用优化算法对同一目标函数的极小值进行搜索,进而对三种优化算法的优化性能进行评估比较,三种测试函数中Ackley函数由于它更复杂相对较难寻找到极小值,所以目标函数为Ackley函数时迭代次数设置为2000,另外两个测试函数的迭代次数都是1000,三种算法寻优的目标函数值都是0。动态布谷鸟搜索算法(DCS)的鸟巢规模n设置为20,问题维度d设置为30。
三种被用于测试优化算法性能的目标函数的具体定义如下:
(1)Sphere函数
Sphere函数是一个较为简单的单峰值函数,易优化,x的平方和,搜索范围是-100到100;
(2)Rastrigin函数
Rastrigin函数的搜索范围是-50到50,它是具有较多局部最优值的多峰函数,较难找出全局最优解。
(3)Ackley函数
Ackley函数的搜索范围是-100到100,它是一个多峰值的函数,具有较多的局部极小值,不容易得到全局最优解。
三种算法对测试函数寻优迭代的曲线如图1-3所示。图4记录了三种优化算法对三种测试函数寻优迭代后,所得到的方差、最优目标函数值和最劣目标函数值。仿真结果表明改进的动态布谷鸟搜索算法(DCS)收敛速度快,最优解的精度高,在处理优化问题时具有明显的优势。
Claims (1)
1.动态布谷鸟搜索算法,其特征在于包括以下步骤:
步骤1:用f(x)来表示目标函数,其中x=(x1,x2,…,xn)T,初始化一个具有n个鸟巢的种群xi=(i=1,2,3,…n),设置鸟巢规模数量为n、算法维数为d、最大步长因子αmax为0.5、最小步长因子αmin为0.01、最大发现概率Pamax为0.5、最小发现概率Pamin为0.01及最大迭代次数Nmax等参数;
步骤2:用(x1,1,x1,2,…,x1,n)T这n个解表示随机初始化的n个鸟巢位置,对每一个解分别计算目标函数的值,用fbest记录适应度值最好的解(鸟巢位置),同时用fworse记录适应度值最差的解(鸟巢位置);
步骤3:根据当前迭代次数Niter,用公式(1)计算出步长因子α,保留上代适应度值最好的解(鸟巢位置);
式中,αmax为最大步长因子,αmin为最小步长因子,αmax=0.5,αmin=0.01,Nmax为最大迭代次数,Niter为当前迭代次数;
式中,代表的是迭代第K次时最优解的值,fk代表的是迭代第K次时适应度函数的值;
根据计算出来的步长因子α和当前目标函数的值计算出下一步的步长,把步长代入到位置更新公式(2)中,对其余解(鸟巢的位置)进行更新,计算出更新之后的解(鸟巢的位置)对应的适应度函数值,分别和上代最好的适应度值进行比较,最后把最好的记录为当前最好的解(鸟巢位置);
步骤4:对每一个解(鸟巢位置)随机产生一个0到1之间的数r′,根据公式(3)计算出对应的r;
式中,r′为[0,1]间的随机数,fiter为当前适应度函数值,fbest为当前最好的适应度函数值,fworse为当前最差的适应度函数值;
式中,Niter表示的是当前迭代的次数,Nmax表示迭代的最大次数,Pamax的值为0.5,Pamin的值为0.01;
同时把当前迭代的次数Niter代入到动态发现概率公式(4)中,从而计算出宿主鸟发现布谷鸟鸟蛋概率Pa,比较Pa和r的大小,如果r大于Pa,就把对应的解(鸟巢位置)随机改变,反之就不变,计算改变之后的解(鸟巢位置)对应的适应度函数的值,与上一代的解(鸟巢位置)进行比较,最后用记录下适应度值最好的解(鸟巢位置);
步骤5:计算步骤四中记录的适应度值最好的解(鸟巢位置)对应的目标函数值判断目标函数值是否满足终止条件,如果满足那么就是算法最终搜索的全局最优解,如果不满足就返回到步骤2;
步骤6:输出步骤5记录的适应度值最好的解(鸟巢位置)它就是全局最优解(鸟巢位置)。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811528757.2A CN109800849A (zh) | 2018-12-13 | 2018-12-13 | 动态布谷鸟搜索算法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811528757.2A CN109800849A (zh) | 2018-12-13 | 2018-12-13 | 动态布谷鸟搜索算法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109800849A true CN109800849A (zh) | 2019-05-24 |
Family
ID=66556609
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811528757.2A Withdrawn CN109800849A (zh) | 2018-12-13 | 2018-12-13 | 动态布谷鸟搜索算法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109800849A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110309983A (zh) * | 2019-07-09 | 2019-10-08 | 重庆大学 | 一种工业云服务资源调度匹配组合方法 |
CN111488991A (zh) * | 2020-02-19 | 2020-08-04 | 南京邮电大学 | 结合遗传和离散差分的布谷鸟算法的通信社区检测方法 |
CN111931899A (zh) * | 2020-07-31 | 2020-11-13 | 武汉烽火技术服务有限公司 | 改进布谷鸟搜索算法优化极限学习机的网络流量预测方法 |
CN112100824A (zh) * | 2020-08-26 | 2020-12-18 | 西安工程大学 | 一种改进的布谷鸟算法及优化机器人结构参数的方法 |
CN113032921A (zh) * | 2021-03-16 | 2021-06-25 | 山东科技大学 | 基于并行自适应参数布谷鸟搜索与最低水平线的排样算法 |
CN115018221A (zh) * | 2022-08-10 | 2022-09-06 | 浙江浩普智能科技有限公司 | 基于改进布谷鸟搜索算法的锅炉负荷分配方法及系统 |
-
2018
- 2018-12-13 CN CN201811528757.2A patent/CN109800849A/zh not_active Withdrawn
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110309983A (zh) * | 2019-07-09 | 2019-10-08 | 重庆大学 | 一种工业云服务资源调度匹配组合方法 |
CN111488991A (zh) * | 2020-02-19 | 2020-08-04 | 南京邮电大学 | 结合遗传和离散差分的布谷鸟算法的通信社区检测方法 |
CN111931899A (zh) * | 2020-07-31 | 2020-11-13 | 武汉烽火技术服务有限公司 | 改进布谷鸟搜索算法优化极限学习机的网络流量预测方法 |
CN112100824A (zh) * | 2020-08-26 | 2020-12-18 | 西安工程大学 | 一种改进的布谷鸟算法及优化机器人结构参数的方法 |
CN112100824B (zh) * | 2020-08-26 | 2024-02-27 | 西安工程大学 | 一种改进的布谷鸟算法及优化机器人结构参数的方法 |
CN113032921A (zh) * | 2021-03-16 | 2021-06-25 | 山东科技大学 | 基于并行自适应参数布谷鸟搜索与最低水平线的排样算法 |
CN113032921B (zh) * | 2021-03-16 | 2022-12-13 | 山东科技大学 | 基于并行自适应参数布谷鸟搜索与最低水平线的排样算法 |
CN115018221A (zh) * | 2022-08-10 | 2022-09-06 | 浙江浩普智能科技有限公司 | 基于改进布谷鸟搜索算法的锅炉负荷分配方法及系统 |
CN115018221B (zh) * | 2022-08-10 | 2022-11-11 | 浙江浩普智能科技有限公司 | 基于改进布谷鸟搜索算法的锅炉负荷分配方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109800849A (zh) | 动态布谷鸟搜索算法 | |
CN107169557A (zh) | 一种对布谷鸟优化算法进行改进的方法 | |
CN108805434A (zh) | 一种基于改进nsga-ⅲ的梯级水电站多目标优化调度方法 | |
CN106598849B (zh) | 一种基于ap-pso算法的组合测试用例生成方法 | |
CN112700060B (zh) | 站所终端负荷预测方法和预测装置 | |
CN103886396A (zh) | 一种人工鱼群与粒子群混合优化的确定方法 | |
CN112862380B (zh) | 一种基于混合算法的项目型产品装配车间人员调度方法、设备及存储介质 | |
CN108564592A (zh) | 基于动态多种群集成差分进化算法的图像分割方法 | |
CN111461385B (zh) | 一种基于Lévy飞行的粒子群算法的生产计划优化方法 | |
CN109086900A (zh) | 基于多目标粒子群优化算法的电力物资保障及调配平台 | |
CN106610656A (zh) | 一种改进的布谷鸟搜索算法求解作业车间调度问题 | |
CN107784353A (zh) | 一种基于布谷鸟搜索算法的函数优化方法 | |
Ma et al. | RETRACTED ARTICLE: An Improved dynamicself-adaption cuckoo search algorithm based on collaboration betweensubpopulations | |
CN108241887A (zh) | 一种灰狼优化算法中搜索阶段的优化方法及系统 | |
CN112085147A (zh) | 一种基于改进郊狼优化算法的特征选择方法 | |
Ye et al. | K-means clustering algorithm based on improved Cuckoo search algorithm and its application | |
CN115222006A (zh) | 一种基于改进粒子群优化算法的数值函数优化方法 | |
CN116108982A (zh) | 一种水库群多目标调度合作搜索方法及系统 | |
Chaib et al. | Improved crayfish optimization algorithm for parameters estimation of photovoltaic models | |
CN107274012B (zh) | 基于云进化粒子群算法的短期风电功率预测方法 | |
CN110113815B (zh) | 一种改进的基于iwo的无线传感器网络定位方法 | |
CN112633455A (zh) | 随机惯性权重粒子群优化方法 | |
CN109858606A (zh) | 一种改进粒子群算法的方法 | |
CN110135621A (zh) | 一种基于pso优选模型参数的短期电力负荷预测方法 | |
Zhang et al. | An improved hybrid whale optimization algorithm based on differential evolution |
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: 20190524 |
|
WW01 | Invention patent application withdrawn after publication |