= Moves Generators = ---- == Move Generators for Binary Vectors == '''Common Operator Parameters:''' ||= Parameter =||= Description =|| || !BinaryVector || The !BinaryVector for which moves should be generated. || || !CurrentScope || The current scope where the moves should be added as subscopes. || || !OneBitflipMove || The moves that should be generated in subscopes. || || Random || The random number generator. || === !ExhaustiveBitflipMoveGenerator === Generates all possible one bitflip moves from a given binary vector. === !StochasticOneBitflipMultiMoveGenerator === Randomly samples n from all possible one bitflip moves from a given binary vector. === !StochasticOneBitflipSingleMoveGenerator === Randomly samples a single from all possible one bitflip moves from a given binary vector. ---- == Move Generators for Permutation Encoding == '''Common Operator Parameters:''' ||= Parameter =||= Description =|| || !CurrentScope || The current scope where the moves should be added as subscopes. || || !Permutation|| The permuation for which moves should be generated. || === !ExhaustiveInsertionMoveGenerator === Generates all possible insertion moves (3-opt) from a given permutation. '''Additional Operator Parameters:''' ||= Parameter =||= Description =|| || !InversionMove || The moves that should be generated in subscopes. || === !ExhaustiveInversionMoveGenerator === Generates all possible inversion moves (2-opt) from a given permutation. '''Additional Operator Parameters:''' ||= Parameter =||= Description =|| || !InversionMove || The moves that should be generated in subscopes. || === !StochasticInversionMultiMoveGenerator === Randomly samples n from all possible inversion moves (2-opt) from a given permutation. '''Additional Operator Parameters:''' ||= Parameter =||= Description =|| || Random || The random number generator. || || !SampleSize || The number of moves to generate. || || !InversionMove || The moves that should be generated in subscopes. || === !StochasticInversionSingleMoveGenerator === Randomly samples a single from all possible inversion moves (2-opt) from a given permutation. '''Additional Operator Parameters:''' ||= Parameter =||= Description =|| || !InversionMove || The moves that should be generated in subscopes. || || Random || The random number generator. || === !StochasticTranslocationMultiMoveGenerator === Randomly samples n from all possible translocation and insertion moves (3-opt) from a given permutation. '''Additional Operator Parameters:''' ||= Parameter =||= Description =|| || Random || The random number generator. || || !SampleSize || The number of moves to generate. || || !TranslocationMove || The moves that should be generated in subscopes. || === !StochasticTranslocationSingleMoveGenerator === Randomly samples one from all possible translocation and insertion moves (3-opt) from a given permutation. '''Additional Operator Parameters:''' ||= Parameter =||= Description =|| || Random || The random number generator. || || !TranslocationMove || The moves that should be generated in subscopes. || ---- == Move Generators for Real Vector Encoding == '''Common Operator Parameters:''' ||= Parameter =||= Description =|| || !AdditiveMove || The moves that should be generated in subscopes. || || Bounds || A 2 column matrix specifying the lower and upper bound for each dimension. If there are less rows than dimension the bounds vector is cycled. || || !CurrentScope || The current scope where the moves should be added as subscopes. || || Random || The random number generator. || || !RealVector || The real vector for which moves should be generated. || || !SampleSize || The number of moves that should be generated. || === !StochasticNormalMultiMoveGenerator === Generates normal distributed moves from a given real vector. '''Additional Operator Parameters:''' ||= Parameter =||= Description =|| || Sigma || The standard deviation of the normal distribution. (Default: 1) || === !StochasticPolynomialMultiMoveGenerator === Generates polynomial moves from a given real vector. '''Additional Operator Parameters:''' ||= Parameter =||= Description =|| || Contiguity || Specifies whether the manipulation should produce far stretching (small value) or close (large value) manipulations with higher probability. Valid values must be greater or equal to 0. (Default: 2) || || !MaximumManipulation || Specifies the maximum value that should be added or subtracted by the manipulation. If this value is set to 0 no mutation will be performed. (Default: 1) ||