一个Python智能算法开源库(遗传算法、粒子群优化、模拟退火、蚁群优化算法、免疫算法、人工鱼群算法、差分进化……)...

1db7c5296413bad4d33df2b3c7043f17.png

来源:数字中国
本文约300字,建议阅读3分钟
附安装pip指令及示例代码。

这个库总共封装了遗传算法(GA)、粒子群算法(PSO)、蚁群算法(ACA)、模拟退火算法(SA)、免疫优化算法(IA)、人工鱼群算法(AFSA)。

开源地址:

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 = x
return 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)

第三步,画出结果

-> Demo code: examples/demo_pso.py#s3

import matplotlib.pyplot as plt


plt.plot(pso.gbest_y_hist)
plt.show()

f320f2e49c587ade02589006a1b32eea.png

2c71c7128d204f8d71fbfaaeebcfa2df.gif

编辑:黄继彦

c2120986cba24603a76d2cbfc3d1c18a.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值