【问题标题】:Why solving Knapsack problem is not considered as linear programming?为什么解决背包问题不被视为线性规划?
【发布时间】:2012-07-22 13:06:17
【问题描述】:

为什么背包问题不属于线性规划算法的范畴,尽管背包问题陈述似乎与线性规划中的问题相似?

【问题讨论】:

  • @yes123 在线性规划中,约束是线性的,而不是时间。

标签: algorithm linear-programming knapsack-problem


【解决方案1】:

背包可以写成一个整数线性规划程序。与正常的线性规划不同,这个问题要求解中的变量是整数。众所周知,线性规划在多项式时间内是可解的,而整数线性规划是 NP 完全的。

读者练习:证明 3SAT 可以简化为整数线性规划。

琐事:有一些近似算法可以解决诸如 MAX-3SAT(3SAT 的一个变体,我们希望最大化满足子句的数量)等问题。首先你把 MAX-3SAT 写成一个整数线性程序。然后,通过删除整数限制,放松它到线性规划。然后,您在多项式时间内求解线性程序。最后,给定实数 xi ∈ [0,1],将它们四舍五入为整数,或生成随机整数解 yi 其中 yi 的概率sub> = 1 是 xi

【讨论】:

  • 值得注意的是,一般来说,将给定的 NP 问题归结为 ILP 通常相对容易。
猜你喜欢
  • 2011-07-27
  • 1970-01-01
  • 2015-05-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-02-27
相关资源
最近更新 更多