ribs.emitters.operators.IsoLineOperator¶
- class ribs.emitters.operators.IsoLineOperator(lower_bounds, upper_bounds, iso_sigma, line_sigma, seed=None)[source]¶
Adds Isotropic Gaussian noise and directional noise to parents.
This operator was introduced in Vassiliades 2018.
- Parameters
iso_sigma (float) – Scale factor for the isotropic distribution used to generate solutions.
line_sigma (float) – Scale factor for the line distribution used when generating solutions.
sigma (float or array-like) – Standard deviation of the Gaussian distribution. Note we assume the Gaussian is diagonal, so if this argument is an array, it must be 1D.
lower_bounds (array-like) – Upper bounds of the solution space. Passed in by emitter
upper_bounds (array-like) – Upper bounds of the solution space. Passed in by emitter
seed (int) – Value to seed the random number generator. Set to None to avoid a fixed seed.
Methods
ask
(parents)Adds Isotropic Guassian noise and directional noise to parents.
Attributes
Parent Type to be used by selector.
- ask(parents)[source]¶
Adds Isotropic Guassian noise and directional noise to parents.
- Parameters
parents (array-like) – (2, batch_size, solution_dim) parents[0] array of solutions selected by emitter parents[1] array of second batch of solutions passed by emitter. Used for calculating directional correlation.
- Returns
(batch_size, solution_dim)
array that containsbatch_size
mutated solutions.- Return type