我的变量是;
customer = (1,2,3,4,5,6,7,8,9,10)
cost of the promotion = (10,20,30)
availability of the promotions = (2,3,5)
profit = positive integers around 100
the capacity of the knapsack = total budget
我想通过为每个客户分配3个促销之一来最大化利润。背包的容量是总预算。我也有一些限制。
我是这样做的。
我列出了所有组合,如下所示,然后继续。
items = ((1,1,50),(1,2,78),(1,3,69),(2,1,45),(2,2,98),(2,3,47),(3,1,90),(3,2,36),(3,3,54),(4,1,35)...)
其中:
items = (i,j,k) :
i = customer
j = the promotion
k = profit
但是,“项目”列表中还有从属元素。 (属于同一客户)背包算法将元素视为独立元素,因此无法正常工作。它将两个或多个促销分配给一个客户。
感谢有人可以帮助我。
谢谢