def test_get_candidate_fitness_returns_half(self): v1 = Variable('a') c1 = Clause([Literal(v1, positive=True)]) c2 = Clause([Literal(v1, positive=False)]) maxsat = MAXSAT([v1], [c1, c2]) valuation = Valuation.init_random_from_variables([v1]) ga = GA(maxsat) self.assertEqual(0.5, ga.get_candidate_fitness(valuation))
def test_get_candidate_fitness_returns_one(self): v1 = Variable('a') v2 = Variable('b') c1 = Clause([Literal(v1, positive=True)]) c2 = Clause([Literal(v2, positive=False)]) maxsat = MAXSAT([v1, v2], [c1, c2]) valuation = Valuation({v1: True, v2: False}) ga = GA(maxsat) self.assertEqual(1, ga.get_candidate_fitness(valuation))