Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/algorithm/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Algorithm 整数线性规划能给出最优解吗?_Algorithm_Optimization_Linear Programming_Np Hard - Fatal编程技术网

Algorithm 整数线性规划能给出最优解吗?

Algorithm 整数线性规划能给出最优解吗?,algorithm,optimization,linear-programming,np-hard,Algorithm,Optimization,Linear Programming,Np Hard,我正在尝试使用整数线性规划(ILP)实现一个问题的解决方案。由于这个问题是NP难问题,我想知道单纯形法提供的解是否是最优的?任何人都可以用单纯形法对ILP的最优性进行评论,或者指出一些来源。是否有其他算法可以为ILP问题提供最佳解决方案 编辑:我正在寻找通过ILP的任何算法(单纯形法、分枝定界和剖切面)获得的解的最优性的是/否答案。线性规划问题的解集根据定义是最优的 线性规划是一类被称为“约束满足”的算法。一旦您满足了约束,您就解决了问题,没有“更好”的解决方案,因为根据定义,最好的结果就是满足

我正在尝试使用整数线性规划(ILP)实现一个问题的解决方案。由于这个问题是NP难问题,我想知道单纯形法提供的解是否是最优的?任何人都可以用单纯形法对ILP的最优性进行评论,或者指出一些来源。是否有其他算法可以为ILP问题提供最佳解决方案


编辑:我正在寻找通过ILP的任何算法(单纯形法、分枝定界和剖切面)获得的解的最优性的是/否答案。

线性规划问题的解集根据定义是最优的

线性规划是一类被称为“约束满足”的算法。一旦您满足了约束,您就解决了问题,没有“更好”的解决方案,因为根据定义,最好的结果就是满足约束

但是,如果您没有完全建模问题,那么显然其他类型的解决方案可能会更好



澄清:当我在上面写“满足约束”时,我包括了目标函数的最大化。割平面算法本质上是单纯形算法的扩展

单纯形法不处理需要整数的约束。简单地将结果四舍五入并不能保证给出最佳解决方案

使用单纯形法解决ILP问题时,如果约束矩阵为


解决ILP(不受完全对偶积分约束矩阵的约束)的一些算法是,如果成本合理一致(非常不一致的成本使其尝试了许多起初看起来有希望但结果却不是这样的尝试),那么这些算法易于实现,并且通常效果良好,老实说,我对它了解不多,但它可能很好,因为人们正在使用它。

具体一点。如果你问一个模糊的问题,你会得到一个模糊的答案。但是,如果你给我们提供细节和背景,我们可以提供一个有用的答案。如果你的ILP是你问题的正确公式,你将得到一个与你的优化约束相对应的解决方案。如果你有足够的耐心等待,这可能需要很长时间。对于图形布局的np难问题,我去年使用了基于一般约束的编程;对于一些顶点不超过50个、边不超过250个的图,花了一天多的时间。@RobertHarvey恕我直言,这个问题并不含糊。哈罗德有正确的答案。这个问题可能有点超前,更多地与数学算法有关,而不是编程;但不需要背景来理解所问的问题。哈罗德的答案既准确又正确——尽管它只回答了“单纯形是否解决了ILP问题?”的问题,而不是额外的问题“什么算法可以解决ILP问题?”@StackUnderflow for a general integer线性规划:单纯形方法:否。分支和界限:是,在有限的时间和有限的内存中,但对于一台典型的计算机来说,快速或在没有内存耗尽的情况下解决这个问题可能太难了。切割平面:经典的Gomory切割最终将使您获得最佳解决方案。由于数值的不稳定性,它们的实际实现是非常不平凡的(从它们的开发到实际实现之间有30多年的时间)。由于这个答案是错误的,所以被否决。在线性规划中,您正在搜索既满足约束又优化(最小化或最大化)给定目标函数的解决方案。它也没有回答什么算法可以解决整数规划的问题。答案是“一旦你满足了约束,你就解决了问题,没有“更好”的解决方案,因为根据定义,最好的结果是满足约束。”这在一般情况下是不正确的。你不只是想满足约束条件,你还想最小化(或最大化)目标函数。OP询问的是整数LP方法,经验表明,与删除仅整数要求相比,该方法产生的最优解可能更少。你的回答似乎忽略了这一点。此外,关于最大化或最小化受约束的目标函数的@raoulcousins观点也得到了很好的采纳。如果使用单纯形法解决ILP问题,那么(1)约束将得到满足,(2)目标函数将达到最大。因此,答案将是最优的。箱子关上了。可能OP真的是想问,对于ILP,有没有比单纯形法更好的方法?这个问题的答案并不是真的(如果我们考虑切割平面法是单纯形法的变体)。