def solutions_similarity(solutions, instance): binary_similarities = [] partial_similarities = [] for s1 in solutions: for s2 in solutions: binary_similarities.append(similarity.binary_solution_similarity(s1, s2)) partial_similarities.append(similarity.partial_solution_similarity(s1, s2, instance)) return binary_similarities, partial_similarities
def test_partial_solution_similarity(self): expected = (1.0 + 1.0 / 18.0 + 4.0 / 30.0) / 3.0 actual = similarity.partial_solution_similarity(self.s1, self.s2, self.i2) self.assertAlmostEqual(actual, expected)
def test_partial_solution_similarity_identical3(self): expected = 1.0 actual = similarity.partial_solution_similarity(self.s1, self.s3, self.i2) self.assertEqual(actual, expected)