尽管背包问题陈述似乎与线性规划中的问题类似,但为什么不把背包问题包含在线性规划算法的类别下?为什么要解决背包问题。不被视为线性编程?
7
A
回答
10
背包可以写成整数线性规划程序。与一般的线性规划不同,这个问题要求解决方案中的变量是整数。已知线性规划在多项式时间是可解的,而整数线性规划是NP完全的。
读者练习:显示3SAT可以简化为整数线性规划。问题:MAX-3SAT(我们希望最大化满意子句数量的3SAT变体)存在近似算法。首先你写一个整数线性程序MAX-3SAT。然后,你放松它去线性化程序,通过删除整数限制。然后,你用多项式时间求解线性程序。最后,给定的实X 我∈[0,1],将它们舍入到整数,或产生随机整数解y 我其中y 我 = 1的概率为x 我。
+1
作为补充:http://stackoverflow.com/q/3128001/395857 – 2012-07-22 13:33:24
+0
值得注意的是,总的来说,将给定的NP问题减少到ILP通常相对容易。 – 2014-12-20 13:20:13
相关问题
- 1. Peaberry为Guice解决了什么问题?
- 2. java.lang.NoClassDefFoundError - 为什么?如何解决问题?
- 3. JaCoP:解决0/1背包问题
- 4. StringBuilder解决什么问题?
- 5. Maven解决什么问题?
- 6. NHibernate解决什么问题?
- 7. 常春藤为什么不解决我的依赖问题?
- 8. 为什么要在struct之前添加标识符?我看不出为什么,如何解决这个问题?
- 9. 为什么'视图'需要被复制?
- 10. 为什么*不被视为MathSymbol?
- 11. 为什么“strcat”被视为“不安全”?
- 12. 依赖性不使用包被解决(包不被尊重?)
- 13. 什么样的数学将帮助我解决编程问题?
- 14. 为什么GDI +线性渐变包装?
- 15. 为什么用对象编程不被认为是程序性的?
- 16. 通过C中的动态编程解决背包问题的麻烦
- 17. 为什么OCaml的线程被认为是“不够”?
- 18. 为什么不能使用UI线程访问视图的线程?
- 19. 为什么不能解决此参考?
- 20. 为什么不解决这些方法?
- 21. 为什么解决不了的类型
- 22. 解决QT线程运行时问题
- 23. 如何解决线程问题在块
- 24. 跨线程问题仍未解决()
- 25. 为什么pip如此SLOW下载? (如何解决问题?)
- 26. 为什么在@ font-face中删除woff2解决了IE11问题
- 27. 为什么我的3n + 1问题解决方案错误?
- 28. 为什么这会解决Flash中的双显示器问题?
- 29. 解决了jQuery泄漏问题,但为什么?
- 30. 为什么我的NSNetServiceBrowser没有解决任何问题?
@ yes123在线性规划中,约束是线性的,而不是时间。 – fgb 2012-07-22 13:15:46