Optimization 列生成是精确算法还是启发式算法?

Optimization 列生成是精确算法还是启发式算法?,optimization,Optimization,我知道列生成提供了一个最佳解决方案,它可以与其他启发式方法一起使用。但这是一个精确的算法吗?提前感谢。传统CG处理轻松问题。虽然它找到了最佳的LP解决方案,但这可能不会直接转化为最佳的MIP解决方案。对于某些问题(例如1d下料),有证据表明该间隙很小,我们仅将为松弛问题找到的列集合应用于最终MIP,知道这是一个好的解决方案,但必然是最优的。因此,这是一种启发 通过一些努力,您可以在分支和绑定算法(称为分支和价格)中使用列生成。这提供了经验证的最佳解决方案 a精确算法意味着该算法能够全局求解优化问

我知道列生成提供了一个最佳解决方案,它可以与其他启发式方法一起使用。但这是一个精确的算法吗?提前感谢。

传统CG处理轻松问题。虽然它找到了最佳的LP解决方案,但这可能不会直接转化为最佳的MIP解决方案。对于某些问题(例如1d下料),有证据表明该间隙很小,我们仅将为松弛问题找到的列集合应用于最终MIP,知道这是一个好的解决方案,但必然是最优的。因此,这是一种启发


通过一些努力,您可以在分支和绑定算法(称为分支和价格)中使用列生成。这提供了经验证的最佳解决方案

a精确算法意味着该算法能够全局求解优化问题,即给出了全局最优解

列生成技术通常应用于松弛LP问题,并试图通过借助对偶乘法器不断改进当前解来优化松弛LP问题。给出了松弛线性规划问题的精确线性规划解。但在现实问题中,松弛线性规划问题的精确解有时是不可行的,需要将其转化为整数解才能使用。现在如果问题规模很小,那么有很多精确的MIP算法(比如分支和定界)可以精确地解决问题并给出整数解。但是如果问题是大规模的,即使是精确的MIP算法也可能需要更长的运行时间,因此,我们使用一些特殊的/智能的启发式算法来降低MIP问题的难度


摘要:列生成是解决松弛LP问题的精确技术,而不是原始IP问题。

首先,严格来说,所有算法都是启发式的,包括单纯形法。 第二,我认为列生成是一种启发式算法,因为它解决了主问题的LP松弛。它不能保证IP最优。实际上CG并不总是很好地收敛