文章目录

  • 一、理论基础
  • 二、仿真实验及分析
  • 三、参考文献


一、理论基础

请参考文献[1]。

二、仿真实验及分析

为了检验正弦算法的有效性,下面用了10个经常用到的测试函数,对该算法进行测试,具体表达式见文献[1]。

本文把标准正弦余弦算法记为SCA(怎么用python把正余弦函数图画在一张图表上_标准差采用线性递减方式计算),把正弦算法记为SA(怎么用python把正余弦函数图画在一张图表上_标准差采用线性递减方式计算),文献[2]指出如果标准正弦余弦算法怎么用python把正余弦函数图画在一张图表上_标准差采用指数递减形式,如怎么用python把正余弦函数图画在一张图表上_标准差_04效果会更佳。本文实验测试时把标准正弦余弦算法中怎么用python把正余弦函数图画在一张图表上_标准差采用式(1)计算的算法记为e-SCA,把正弦余弦算法中怎么用python把正余弦函数图画在一张图表上_标准差采用式(1)计算的算法记为e-SA,也作比较。四个算法参数设置如下:怎么用python把正余弦函数图画在一张图表上_标准差_07怎么用python把正余弦函数图画在一张图表上_标准差_08怎么用python把正余弦函数图画在一张图表上_参考文献_09

本文中为了防止算法的偶然性带来的误差。将SCA、SA、e-SCA和e-SA四个算法进行独立实验20次,取其各个算法20次的最优值的最佳值、最差值、平均值。f1~f5由SCA和SA测试,f6~f10由e-SCA和e-SA测试。

对比结果显示如下:

怎么用python把正余弦函数图画在一张图表上_标准差_10

怎么用python把正余弦函数图画在一张图表上_参考文献_11

怎么用python把正余弦函数图画在一张图表上_matlab_12

怎么用python把正余弦函数图画在一张图表上_标准差_13

怎么用python把正余弦函数图画在一张图表上_标准差_14

怎么用python把正余弦函数图画在一张图表上_简化正弦余弦算法_15

怎么用python把正余弦函数图画在一张图表上_5e_16

怎么用python把正余弦函数图画在一张图表上_参考文献_17

怎么用python把正余弦函数图画在一张图表上_参考文献_18

怎么用python把正余弦函数图画在一张图表上_matlab_19

函数:F1
SCA:最差值: 1.2754e-29,最佳值:8.2063e-40,平均值:9.9181e-31,标准差:3.1123e-30
SA:最差值: 6.562e-30,最佳值:5.2397e-38,平均值:8.4579e-31,标准差:2.0654e-30
函数:F2
SCA:最差值: 3.1945e-29,最佳值:1.4305e-38,平均值:1.7218e-30,标准差:7.1198e-30
SA:最差值: 6.7417e-32,最佳值:4.8154e-40,平均值:8.6311e-33,标准差:1.9102e-32
函数:F3
SCA:最差值: 1.8752e-14,最佳值:2.3633e-34,平均值:9.3767e-16,标准差:4.193e-15
SA:最差值: 0.00011098,最佳值:1.1877e-31,平均值:5.549e-06,标准差:2.4816e-05
函数:F4
SCA:最差值: 28.661,最佳值:26.4861,平均值:27.373,标准差:0.56378
SA:最差值: 28.8495,最佳值:26.6438,平均值:27.5813,标准差:0.66348
函数:F5
SCA:最差值: 66.852,最佳值:0,平均值:3.6502,标准差:14.9378
SA:最差值: 1.0174e-05,最佳值:0,平均值:5.0871e-07,标准差:2.275e-06
函数:F6
e-SCA:最差值: 0.0024466,最佳值:0,平均值:0.00012233,标准差:0.00054707
e-SA:最差值: 0,最佳值:0,平均值:0,标准差:0
函数:F7
e-SCA:最差值: -0.9993,最佳值:-0.99999,平均值:-0.99978,标准差:0.00019516
e-SA:最差值: -0.99967,最佳值:-0.99999,平均值:-0.99985,标准差:0.00010042
函数:F8
e-SCA:最差值: 4.1151,最佳值:3.0389,平均值:3.627,标准差:0.30393
e-SA:最差值: 4.3119,最佳值:3.2829,平均值:3.6169,标准差:0.29651
函数:F9
e-SCA:最差值: 1.8551e-40,最佳值:3.9876e-70,平均值:9.2824e-42,标准差:4.1479e-41
e-SA:最差值: 4.45e-49,最佳值:1.1196e-72,平均值:2.2882e-50,标准差:9.9378e-50
函数:F10
e-SCA:最差值: -1,最佳值:-1,平均值:-1,标准差:5.6953e-17
e-SA:最差值: -1,最佳值:-1,平均值:-1,标准差:2.547e-17

仿真结果表明正弦算法的搜索效率和标准正弦余弦算法相当。

三、参考文献

[1] 曲良东, 何登旭. 一个简化的正弦余弦算法:正弦算法[J]. 计算机应用研究, 2018, 35(12): 3694-3696+3728.
[2] 刘勇, 马良. 转换参数非线性递减的正弦余弦算法[J]. 计算机工程与应用, 2017, 53(2): 1-5.