通用优化工具#
- pygmo.sbx_crossover(parent1, parent2, bounds, nix, p_cr, eta_c, seed)#
此函数将对两个染色体parent1和parent2的连续部分进行二进制交叉,并对它们的整数部分进行两点交叉。交叉只会以概率p_cr发生。如果是这种情况,染色体的每个连续部分将以0.5的概率进行交叉。
- Parameters
- Returns
的
numpy.ndarray:包含两个交叉的染色体- Return type
- Raises
ValueError – 如果 bounds parent1 parent2 的长度不相等,如果下界不小于或等于上界,如果 nix 大于父代大小,或者在 bounds、p_cr 或 eta_c 中检测到无限值
未指定 – 任何由C++和Python之间的交互失败引发的异常(例如,类型转换错误、函数签名不匹配等)。
另请参阅C++类
pagmo::sbx_crossover的文档。
- pygmo.polynomial_mutation(dv, bounds, nix, p_m, eta_m, seed)#
此函数将对染色体dv的连续部分执行多项式变异,并对剩余的整数部分执行均匀变异。
- Parameters
- Returns
的
numpy.ndarray:包含两个交叉的染色体- Return type
- Raises
ValueError – 如果 bounds 和 dv 的长度不相等,如果下界不小于或等于上界,如果 nix 大于父级大小,或者在 bounds、p_m 或 eta_m 中检测到无限值
未指定 – 任何由C++和Python之间的交互失败引发的异常(例如,类型转换错误、函数签名不匹配等)。
另请参阅C++类
pagmo::polynomial_mutation的文档。