ribs.emitters.operators.IsoLineOperator

class ribs.emitters.operators.IsoLineOperator(iso_sigma: float | floating, line_sigma: float | floating, seed: int | integer | None = None)[source]

Adds Isotropic Gaussian noise and directional noise to parents.

This operator was introduced in Vassiliades 2018.

Parameters:
iso_sigma: float | floating

Scale factor for the isotropic distribution used to generate solutions.

line_sigma: float | floating

Scale factor for the line distribution used when generating solutions.

seed: int | integer | None = None

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

Parent Type to be used by selector.

ask(parents: numpy.typing.ArrayLike) ndarray[source]

Adds Isotropic Guassian noise and directional noise to parents.

Parameters:
parents: numpy.typing.ArrayLike

(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 contains batch_size mutated solutions.

property parent_type : int

Parent Type to be used by selector.