python进化算法工具箱_geatpy - 遗传和进化算法相关算子的库函数(python)

geatpy是一个Python进化算法工具箱,提供了改进的单目标编程模板,支持二进制和格雷编码。该模板包括精英保留机制,并允许自定义选择、重组算子。用户需提供目标函数和罚函数的规范定义,以及问题类型、最大遗传代数、种群规模等相关参数。
摘要由CSDN通过智能技术生成

本模板实现改进单目标编程模板(二进制/格雷编码),将父子两代合并进行选择,增加了精英保留机制

语法:

该函数除了参数drawing外,不设置可缺省参数。当某个参数需要缺省时,在调用函数时传入None即可。

比如当没有罚函数时,则在调用编程模板时将第3、4个参数设置为None即可,如:

sga_new_code_templet(AIM_M,'aimfuc', None, None, ..., maxormin)

输入参数:

AIM_M- 目标函数的地址,由AIM_M = __import__('目标函数所在文件名')语句得到

目标函数规范定义:[f,LegV]=aimfuc(Phen,LegV)

其中Phen是种群的表现型矩阵, LegV为种群的可行性列向量,f为种群的目标函数值矩阵

AIM_F : str-目标函数名

PUN_M- 罚函数的地址,由PUN_M = __import__('罚函数所在文件名')语句得到

罚函数规范定义: newFitnV=punishing(LegV, FitnV)

其中LegV为种群的可行性列向量, FitnV为种群个体适应度列向量

一般在罚函数中对LegV为0的个体进行适应度惩罚,返回修改后的适应度列向量newFitnV

PUN_F : str-罚函数名

FieldD : array- 二进制/格雷码种群区域描述器,

描述种群每个个体的染色体长度和如何解码的矩阵,它有以下结构:

[lens; (int) 每个控制变量编码后在染色体中所占的长度

lb

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值