def test_attributes_gene_impl(): # Create the Genetic algorithm ga = GA() # Set necessary attributes ga.population_size = 3 ga.chromosome_length = 5 ga.generation_goal = 1 # Set gene_impl ga.gene_impl = lambda: random.randint(1, 10) # Evolve the genetic algorithm ga.evolve()
def test_chromosome_length(): """ Test to see if the actual chromosome length is the same as defined.""" # Test from 0 to 100 chromosome length for i in range(1,100): # Create the ga to test ga = GA() ga.generation_goal = 10 # Set the upper limit of testing ga.chromosome_length = i # Evolve the ga ga.evolve() # If they are not equal throw an error assert len(ga.population.chromosome_list[0]) == ga.chromosome_length
def test_attributes_chromosome_impl_lambdas(): # Create the Genetic algorithm ga = GA() # Set necessary attributes ga.chromosome_length = 3 ga.generation_goal = 1 # Set gene_impl to None so it won't interfere ga.gene_impl = None # Set chromosome_impl ga.chromosome_impl = lambda: [ random.randrange(1,100), random.uniform(10,5), random.choice(["up","down"]) ] # Evolve the genetic algorithm ga.evolve()
def test_attributes_chromosome_impl_functions(): # Create the Genetic algorithm ga = GA() # Set necessary attributes ga.chromosome_length = 3 ga.generation_goal = 1 # Create chromosome_impl user function def user_chromosome_function(): chromosome_data = [ random.randrange(1,100), random.uniform(10,5), random.choice(["up","down"]) ] return chromosome_data # Set the chromosome_impl ga.chromosome_impl = user_chromosome_function # Evolve the genetic algorithm ga.evolve()