class EnumGene
Enumeration gene class
Attributes
enum_values[RW]
Public Class Methods
new(enum_values)
click to toggle source
# File lib/gene.rb, line 59 def initialize(enum_values) unless enum_values.is_a? Array raise 'EnumGene initialization require an Array' end raise 'EnumGene require at least two values' unless enum_values.size > 1 @enum_values = enum_values end
Public Instance Methods
mutate(previous_value)
click to toggle source
# File lib/gene.rb, line 71 def mutate(previous_value) new_value = random_allele_value new_value = random_allele_value while new_value == previous_value new_value end
random_allele_value()
click to toggle source
# File lib/gene.rb, line 67 def random_allele_value @enum_values[rand @enum_values.size] end