蟻群優(yōu)化算法、免疫算法、人工魚群算法、差分進(jìn)化……)
開源地址:https://github.com/guofei9987/scikit-opt
裝好Python后,在命令行輸入以下指令即可安裝:
pip install scikit-opt
粒子群算法為例
第一步,定義問題-> Demo code: examples/demo_pso.py#s1
def demo_func(x):x1, x2, x3 = xreturn x1 ** 2 + (x2 - 0.05) ** 2 + x3 ** 2
第二步,做粒子群算法-> Demo code: examples/demo_pso.py#s2
from sko.PSO import PSO
pso = PSO(func=demo_func, n_dim=3, pop=40, max_iter=150, lb=[0, -1, 0.5], ub=[1, 1, 1], w=0.8, c1=0.5, c2=0.5)pso.run()print('best_x is ', pso.gbest_x, 'best_y is', pso.gbest_y)
第三步,畫出結(jié)果-> Demo code: examples/demo_pso.py#s3
import matplotlib.pyplot as plt
plt.plot(pso.gbest_y_hist)plt.show()
*博客內(nèi)容為網(wǎng)友個人發(fā)布,僅代表博主個人觀點,如有侵權(quán)請聯(lián)系工作人員刪除。