def test_recombine_weight(self):
     p1 = Individual([0, 5], self.f)
     p2 = Individual([3, 10], self.f)
     result = p1.recombine(p2, 0.1)
     self.assertAlmostEqual(result.x[0], 0.3, delta=1e-10)
     self.assertAlmostEqual(result.x[1], 5.5, delta=1e-10)
     self.assertAlmostEqual(result.get_y(), 5.8, delta=1e-10)
 def test_recombine(self):
     p1 = Individual([0, 6], self.f)
     p2 = Individual([3, 9], self.f)
     result = p1.recombine(p2, 0.5)
     self.assertAlmostEqual(result.x[0], 1.5, delta=1e-10)
     self.assertAlmostEqual(result.x[1], 7.5, delta=1e-10)
     self.assertAlmostEqual(result.get_y(), 9, delta=1e-10)