system: [SYSTEM]

user: 3. 仿真结果及分析 3.1. 仿真测试设置 由于IWOMDE算法在DE算法的基础上改进的，并且引入了优秀个体进化概率 P 1 ，因此，首先对该引入参数对算法的影响进行仿真分析，然后对IWOMDE算法与其它算法进行比较分析。 采用5个典型的测试函数，与DE算法(DE/rand/1/bin模式)进行比较。 f 1 为Schaffer函数，该函数在全局极大点范围内有无限多的局部极大点，很难全局最优化。 f 2 为Ackley函数，该函数带有指数项，存在大量局部最优解。 f 3 为Rosenbrock函数，该函数是一个非凸病态函数，很难实现全局最优化。 为Rastrigin函数，该函数是一个多峰函数，在定义域内大约存在10n个局部极小点。 f 5 为Griewank函数，该函数是一个多峰函数，存在大量局部极小点。 f 1 = 0.5 − ( sin 2 x 1 2 + x 2 2 − 0.5 ) ( 1 + 0.001 ( x 1 2 + x 2 2 ) ) 2 − 100 ≤ x 1 ， x 2 ≤ 100 ， − 32.768 ≤ x i ≤ 32.768 f 3 = ∑ i = 1 29 ( 100 ( x i 2 − x i + 1 2 ) 2 + ( x i − 1 ) 2 ) − 2.048 ≤ x i ≤ 2.048 ， f 4 = ∑ i = 1 30 ( x i − 10 cos ( 2 π x i ) + 10 ) − 5.12 ≤ x i ≤ 5.12 ， 为了使算法的比较更公平，采用函数评价次数为终止条件。算法的其它参数设置如表1所示。 Table 1 Experimental parameter setting of algorith 函数 种群规模 F CR 评价次数 f 1 20 0.5 0.1 1e3 f 2 50 0.5 0.1 5e4 f 3 100 0.5 0.1 5e4 f 4 50 0.5 0.1 5e4 f 5 50 0.5 0.1 5e4 表1. 算法实验参数设置 3.2. 测试结果及分析 为避免仿真结果的随机性，IWOMDE算法对每个函数均独立运行30次。图1~图3为IWOMDE算法在取不同优秀个体进化概率 P 1 时，求解3个Benchmarks函数时30次运行的平均适应度及最优适应度的比较。其中横坐标为 P 1 的取值，纵坐标为适应度值。从图中可以看出，优化结果随着 P 1 值的增大，平均最优适应度越来越优，而最优适应度存在随机性，这主要原因是群体的进化过程由式(5)决定的成分越来越多，能够进化的个体越来越少，较差个体在群体中的作用逐渐被忽略，从而改变了群体原有的进化进程，尽管在 P 1 取值为1时，获得的平均适应度最优，但其最优适应度不全是最优，因此，在实验中建议设置 P 1 为较接近1.0的值，本文后面的实验中取该参数为0.9。 表2给出了IWOMDE算法与SMDE算法 [ 9 ] 的优化结果比较，从表中数据可以看出，IWOMDE算法除Ronsenbrock函数的优化结果要差于SMDE获得的结果之外，其余结果都要优于SMDE的优化结果。SMDE算法采用的是固定进化代数为终止条件，函数评价次数是未知的，而IWOMDE算法采用固定的 图1. 不同P 1 值时f 1 (x) 30次平均适应度及最优适应度比较 图2. 不同P 1 值时f 2 (x) 30次平均适应度及最优适应度比较 图3. 不同P 1 值时f 3 (x) 30次平均适应度及最优适应度比较 函数评价次数为终止条件，因此，IWOMDE算法在相同函数评价次数下，性能应优于SMDE算法的性能。 Table 2 Comparison of the optimization results of functions by IWOMDE and SMD 函数 方法 最优值 平均值 均方差 f 1 IWOMDE 1 0.9991 0.0021 SMDE 1 0.9987 0.0034 f 2 IWOMDE 8.1747e−7 6.2791e−6 9.4309e−6 SMDE 2.0971e−6 2.9977e−5 2.5258e−5 f 3 IWOMDE 27.2336 26.9906 0.1719 SMDE 2.5940e−4 0.0029 0.0019 f 4 IWOMDE 0 4.7294e−6 3.5937e−6 SMDE 6.9514e−7 2.0512e−5 2.5862e−5 f 5 IWOMDE 0 0 0 SMDE 2.0122e−9 1.7481e−7 2.4493e−7 表2. IWOMDE与SMDE函数优化结果比较 表3给出了IWOMDE算法与ADE算法 [ 7 ] 的优化结果比较，其中IWOMDE算法的最大函数评价次数对于f 4 和f 5 为2e4，而对于f 3 设置为2e5。由于ADE算法F的范围为[0.5， 1.0]，CR的范围为[0.5， 1.0]，因此IWOMDE设置F为0.5，CR设置为[0.5， 1.0]上的均匀分布的随机数。三个测试函数的维数均为20维。表3给出了IWOMDE与ADE算法的优化结果比较，从表中数据可以看出，对于Rosenbrock函数，ADE的优化结果要优于IWOMDE算法，但对于Rastrigin函数与Griewank函数，IWOMDE算法表现出了更好的优化性能，不仅获得了较好的函数优化结果，而且只用了ADE函数评价次数的1/10，表明收敛速度要远远优于ADE 算法。 Table 3 Comparison of the optimization results of functions by IWOMDE and AD 函数 方法 最优值 平均值 均方差 f 3 IWOMDE 11.6386 12.2816 0.3118 ADE 5.09 9.81 7.04 f 4 IWOMDE 0 0 0 ADE 82.88 1.07e2 97.72 f 5 IWOMDE 0 0 0 ADE 6.46e-09 9.98e-09 9.15e-09 表3. IWOMDE与ADE函数优化结果比较 表4给出了IWOMDE算法与ONDE算法 [ 12 ] 的优化结果比较，四个测试函数的维数设置为100维，函数评价次数设置为6e4。从表中数据可以看出，IWOMDE算法与ONDE算法的结果各有优劣，IWOMDE算法在f 2 与f 5 上的优化结果要优于ONDE算法，在f 4 的最优值上也要优于ONDE算法，但在f 3 上优化结果要比ONDE算法差很多。 Table 4 Comparison of the optimization results of functions by IWOMDE and OND 函数 方法 最优值 平均值 均方差 f 2 IWOMDE 2.8753e−6 7.8734e−6 6.5832e−6 ONDE 1.8659e−5 1.8667e−5 5.39e−9 f 3 IWOMDE 89.8923 93.2786 36.2768 ONDE 1.7941e−3 1.813e−3 1.592e−5 f 4 IWOMDE 1.578e−10 3.76e−9 2.53e−9 ONDE 2.217e−10 2.84e−10 5.0e−10 f 5 IWOMDE 8.1416e−10 7.6158e−9 2.794e−9 ONDE 1.222e−8 1.373e−8 1.208e−9 表4. IWOMDE与ONDE函数优化结果比较 综合以上分析可以发现，IWOMDE算法在多峰函数上的优化结果要优于比较算法，但对于单峰病态函数Rosenbrock函数，优化结果较差。这主要原因是对于多峰函数，由于群体进化过程中，优秀个体使群体能够快速收敛到较优点，而较差个体的停滞进化，使群体维持了较好的多样性，从而为优秀个体跳出局部最优点提供了较好的帮助。