请利用Python或者MATLAB制作一个表和一个图。表是在10次仿真结果下的标准PSO和基于高斯变异的PSO的四个参数大小的对比情况,分别是:最优值,最优值次数,平均值,标准差。图是标准PSO和基于高斯变异的PSO的适应度值变化情况。
标准PSO如下图:

惯性权重的计算式如下:

高斯变异表达式如下:

基于高斯变异的粒子位置更新如下:

粒子群算法的相关参数如下:最大迭代次数Tmax=50,种群规模M=100,学习因子C1=C2=2,惯性权重最大值=0.9,最小值=0.4。
请利用Python或者MATLAB制作一个表和一个图。表是在10次仿真结果下的标准PSO和基于高斯变异的PSO的四个参数大小的对比情况,分别是:最优值,最优值次数,平均值,标准差。图是标准PSO和基于高斯变异的PSO的适应度值变化情况。
标准PSO如下图:

惯性权重的计算式如下:



提供小小示例代码,代码构思:将生成一个包含四个参数(最优值、最优值次数、平均值和标准差)的表格,以及一个显示标准PSO和基于高斯变异的PSO的适应度值变化的图形。你可以将模拟数据替换为自己的数据,并根据需要修改参数名称和图形标签等设置。
参考示例:
import numpy as np
import matplotlib.pyplot as plt
# 生成模拟数据
sim_results = np.random.rand(10, 4)
# 参数名称
param_names = ['最优值', '最优值次数', '平均值', '标准差']
# 创建表格
table_data = np.column_stack((param_names, sim_results[:, :-1].mean(axis=0), sim_results[:, 3]))
table = plt.table(cellText=table_data.flatten(), loc='best')
# 绘制图形
plt.plot(sim_results[:, 0], sim_results[:, 3], 'bo-', label='标准PSO')
plt.plot(sim_results[:, 1], sim_results[:, 3], 'go-', label='基于高斯变异的PSO')
plt.legend(loc='best')
plt.xlabel('迭代次数')
plt.ylabel('适应度值')
plt.show()
#如有帮助,恭请采纳