def test_1(self): weight = 10 values = [120, 100, 90, 80, 70, 60, 50] random.shuffle(values) # the order should not matter max_weight = np.infty bank = SameWeightBank() bank.setup(weight=weight, values=values) values_solution = bank.values weights_solution = bank.weights values_robbed, weights_robbed = bank.rob(max_weight=max_weight, knapsack_alg=method) self.assertCountEqual(zip(values_robbed, weights_robbed), zip(values_solution, weights_solution))
def test_8(self): weight = 10 values = [120, 100, 90, 80, 70, 60, 50] random.shuffle(values) # the order should not matter max_weight = 72 bank = SameWeightBank() bank.setup(weight=weight, values=values) values_greedy_solution = [120, 100, 90, 80, 70, 60, 50] weights_greedy_solution = [10, 10, 10, 10, 10, 10, 10] values_robbed, weights_robbed = bank.rob(max_weight=max_weight, knapsack_alg='greedy') self.assertCountEqual(zip(values_robbed, weights_robbed), zip(values_greedy_solution, weights_greedy_solution))
def test_8(self): weight = 10 values = [120, 100, 90, 80, 70, 60, 50] random.shuffle(values) # the order should not matter max_weight = 72 bank = SameWeightBank() bank.setup(weight=weight, values=values) values_solution = [120, 100, 90, 80, 70, 60, 50] weights_solution = [10, 10, 10, 10, 10, 10, 10] values_robbed, weights_robbed = bank.rob(max_weight=max_weight, knapsack_alg=method) self.assertCountEqual(zip(values_robbed, weights_robbed), zip(values_solution, weights_solution))
def test_1(self): weight = 10 values = [120, 100, 90, 80, 70, 60, 50] random.shuffle(values) # the order should not matter max_weight = np.infty bank = SameWeightBank() bank.setup(weight=weight, values=values) values_greedy_solution = bank.values weights_greedy_solution = bank.weights values_robbed, weights_robbed = bank.rob(max_weight=max_weight, knapsack_alg='greedy') self.assertCountEqual( zip(values_robbed, weights_robbed), zip(values_greedy_solution, weights_greedy_solution))