带有要考虑约束的物品的背包
Posted
技术标签:
【中文标题】带有要考虑约束的物品的背包【英文标题】:Knapsack with items to consider constraint 【发布时间】:2010-10-19 23:34:42 【问题描述】:我有重量为 W1...W4 和值 V1...V4 的项目 I1、I2、I3、I4。我想用最小的权重最大化值。这是一个传统的背包。然而,有些项目不能放在一起有一个小的限制。因此,可以说 I2 和 I3 不能一起使用。任何人都可以提供动态编程解决方案或任何其他解决方案。
【问题讨论】:
互联网上(或教科书)上没有其他地方可以提供解决方案吗?有点难以置信…… 【参考方案1】:有了这个约束,问题就变得非常强(与离散背包相反,它只是弱 NP-hard)NP-hard。假设所有物品的重量为 1,价值为 1。
决定能否实现价值k(假设背包容量>=k)相当于找到k个之间没有约束的物品他们。这是一个已知的 NP 难题:independent set。
如果您对约束的性质有一些额外的了解,这可能会更容易。
【讨论】:
以上是关于带有要考虑约束的物品的背包的主要内容,如果未能解决你的问题,请参考以下文章