知行编程网知行编程网  2022-09-27 01:30 知行编程网 隐藏边栏  125 
文章评分 0 次,平均分 0.0
导语: 本文主要介绍了关于python中的遗传算法库怎么使用?的相关知识,包括遗传算法的应用实例python实现,以及遗传算法教程这些编程知识,希望对大家有参考作用。


算法库小编提到的内容不多。并不是说这些内容不重要,而是想和大家一起把最实用、最简单的内容降级,一次给大家注入很多内容。相信大家已经头晕目眩了。现在,小编大致浏览了一下算法库,发现了一个大家必须学习的内容,就是关于遗传算法库的。有了解的朋友一定要看看


~详细内容见下文。




遗传算法库

——scikit-opt



一个封装了

7种启发式算法的 Python 代码库

(差分进化算法、遗传算法、粒子群算法、模拟退火算法、蚁群算法、鱼群算法、免疫优化算法)



安装

pip install scikit-opt



遗传算法




示例代码



第一步:定义你的问题


-> Demo code: examples/demo_ga.py#s1

import numpy as np
 
 
def schaffer(p):
    '''
    This function has plenty of local minimum, with strong shocks
    global minimum at (0,0) with value 0
    '''
    x1, x2 = p
    x = np.square(x1) + np.square(x2)
return 0.5 + (np.sin(x) - 0.5) / np.square(1 + 0.001 * x)



第二步:运行遗传算法


-> Demo code: examples/demo_ga.py#s2

from sko.GA import GA
 
ga = GA(func=schaffer, n_dim=2, size_pop=50, max_iter=800, lb=[-1, -1], ub=[1, 1], precision=1e-7)
best_x, best_y = ga.run()
print('best_x:', best_x, '\n', 'best_y:', best_y)




第三步:用

matplotlib 画出结果


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

import pandas as pd
import matplotlib.pyplot as plt
 
Y_history = pd.DataFrame(ga.all_history_Y)
fig, ax = plt.subplots(2, 1)
ax[0].plot(Y_history.index, Y_history.values, '.', color='red')
Y_history.min(axis=1).cummin().plot(kind='line')
plt.show()



运行效果:

如何在python中使用遗传算法库?


好了,以上都是关于遗传算法的。不知道大家有没有看懂?以上内容非常实用。以后写项目的时候肯定会遇到。因此,记住掌握它非常重要,这一点非常重要。


~

本文为原创文章,版权归所有,欢迎分享本文,转载请保留出处!

知行编程网
知行编程网 关注:1    粉丝:1
这个人很懒,什么都没写
扫一扫二维码分享