首先下载后需要编译,我在这里编译好了直接下载就可以,下载后与py文件放在一个文件夹里(所有文件包括input_data)下载链接为cec17_test_func.so 等文件 https://www.aliyundrive.com/s/pif1SQKC7d9 点击链接保存,或者复制本段内容,打开「阿里云盘」APP ,无需下载极速在线查看,视频原画倍速播放。
其中cec2017的第二个函数不能使用
调用方法:
首先要调用库
from cec17_functions import cec17_test_func
再编写函数:
def fitness(popula):
f = [0]
cec17_test_func(popula, f, dimension, 1, func_num)
fitness_value = f[0] - 100 * func_num
return fitness_value
func_num为调用的函数序号,popula为自己输入的可行解,dimension为调用的维度。
一般来说每次调用都要计数达到最大次数后停止,最大次数为10000×dimension
while count < dim * 10000:
fitnessi = fitness(Popula)
count = count + 1