安装
pip install scikit-opt
使用
from sko.PSO import PSO
import matplotlib.pyplot as plt
def demo_func(x):
x1, x2, x3 = x
return x1 ** 2 + (x2 - 0.05) ** 2 + x3 ** 2
pso = PSO(func=demo_func, n_dim=3, pop=40, max_iter=150, lb=[-1,-1,-1], ub=[1,1,1])
fitness = pso.run()
print('best_x is ', pso.gbest_x)
print('best_y is ', pso.gbest_y)
plt.plot(pso.gbest_y_hist)
plt.show()
PS:用来机器学习调参还是挺好用的