optuna.samplers.nsgaii.SPXCrossover
- class optuna.samplers.nsgaii.SPXCrossover(epsilon=None)[source]
NSGAIISampler使用的单纯形交叉操作。从与父代个体产生的单纯形相似的单个单纯形内均匀采样子代个体。关于 SPX 交叉的更多信息,请参阅以下论文:
- 参数:
epsilon (float | None) – 扩展率。如果未指定,则默认为
sqrt(len(search_space) + 2)。
注意
在 v3.0.0 中作为实验性功能添加。接口在后续版本中可能在没有事先通知的情况下发生更改。请参阅 https://github.com/optuna/optuna/releases/tag/v3.0.0。
方法
crossover(parents_params, rng, study, ...)执行选定的父代个体的交叉操作。
属性
n_parents- crossover(parents_params, rng, study, search_space_bounds)[source]
执行选定的父代个体的交叉操作。
此方法在
sample_relative()中调用。- 参数:
parents_params (np.ndarray) – 一个维度为
num_parents x num_parameters的numpy.ndarray。表示每个父代个体的参数空间。对于数值参数,此空间是连续的。rng (np.random.RandomState) –
numpy.random.RandomState的一个实例。study (Study) – 目标研究对象。
search_space_bounds (np.ndarray) – 一个维度为
len_search_space x 2的numpy.ndarray,表示从转换后的搜索空间构建的数值分布边界。
- 返回:
一个包含新参数组合的一维
numpy.ndarray。- 返回类型:
np.ndarray