optuna.samplers.nsgaii.UNDXCrossover
- class optuna.samplers.nsgaii.UNDXCrossover(sigma_xi=0.5, sigma_eta=None)[源代码]
由
NSGAIISampler
使用的单峰正态分布交叉(UNDX)。使用多元正态分布从三个父代个体生成子代个体。
- 参数:
注意
在 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)[源代码]
对选定的父代个体进行交叉。
此方法在
sample_relative()
中调用。- 参数:
parents_params (np.ndarray) – 维度为
num_parents x num_parameters
的numpy.ndarray
。表示每个父代个体的参数空间。此空间对于数值参数是连续的。rng (np.random.RandomState) –
numpy.random.RandomState
的实例。study (Study) – 目标 study 对象。
search_space_bounds (np.ndarray) – 维度为
len_search_space x 2
的numpy.ndarray
,表示从转换后的搜索空间构建的数值分布边界。
- 返回:
一个包含新参数组合的 1 维
numpy.ndarray
。- 返回类型:
np.ndarray