Esempio n. 1
0
def test_if_returns_best_phenotype():
	pop = Population(mock_params, mock_judge, 1, 5)
	ph1 = Phenotype(3)
	ph2 = Phenotype(3)
	ph3 = Phenotype(3)
	
	ph1.genes = [True, True, True]
	ph2.genes = [True, False, False]
	ph3.genes = [False, False, False]

	mock_judge.goal_eval(1, 5, ph1)
	mock_judge.goal_eval(1, 5, ph2)
	mock_judge.goal_eval(1, 5, ph3)

	pop.push_phenotype(ph1)
	pop.push_phenotype(ph2)
	pop.push_phenotype(ph3)
	
	assert pop.get_the_best_error() == [True, False, False]
Esempio n. 2
0
def test_if_correctly_evals_zero_on_perfect_match():
    judge = Judge([1, 2, 3])
    ph1 = Phenotype(3)
    ph1.genes = [True, True, True]
    assert judge.goal_eval(6, 0, ph1) == 0
Esempio n. 3
0
def test_if_correctly_evals_error():
    judge = Judge([1, 2, 3])
    ph1 = Phenotype(3)
    ph1.genes = [True, False, False]
    assert judge.goal_eval(6, 0, ph1) == 50