optuna.samplers.nsgaii.SPXCrossover
- class optuna.samplers.nsgaii.SPXCrossover(epsilon=None)[source]
NSGAIISampler
で使用されるシンプレックス交差操作。親個体が生成したシンプレックスと類似した単一シンプレックス内から 子個体を一様にサンプリングします。SPX 交差の詳細については、以下の論文を参照してください:
- Parameters:
epsilon (float | None) – 拡張率。指定しない場合、デフォルトは
sqrt(len(search_space) + 2)
です。
Note
v3.0.0 で実験的機能として追加されました。新しいバージョンでは予告なく インターフェースが変更される可能性があります。詳細は https://github.com/optuna/optuna/releases/tag/v3.0.0 を参照してください。
メソッド
crossover
(parents_params, rng, study, ...)Perform crossover of selected parent individuals.
属性
n_parents
- crossover(parents_params, rng, study, search_space_bounds)[source]
選択された親個体の交差を実行します。
sample_relative()
で呼び出されます。- Parameters:
parents_params (np.ndarray) –
numpy.ndarray
で次元はnum_parents x num_parameters
。 各親個体のパラメータ空間を表します。この空間は数値パラメータに対して連続的です。rng (np.random.RandomState) –
numpy.random.RandomState
のインスタンス。study (Study) – 対象のスタディオブジェクト。
search_space_bounds (np.ndarray) – 変換された探索空間から構築された数値分布の範囲を表す
numpy.ndarray
で次元はlen_search_space x 2
。
- Returns:
新しいパラメータ組み合わせを含む 1 次元
numpy.ndarray
。- Return type:
np.ndarray