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