Esempio n. 1
0
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()
Esempio n. 2
0
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
Esempio n. 3
0
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()
Esempio n. 4
0
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()