我正在研究列生成算法。在对新变量定价并计算了降低的成本之后,如何根据CPLEX来添加新变量并检查计算出的降低成本是否正确?
当我将新变量添加到模型中并重新优化RMP(精简主问题)时,新变量将作为基础,因此其精简成本为0,这是可以的。但是,我想在添加变量之前检查CPLEX计算得出的降低的成本。
答案 0 :(得分:2)
我不确定您使用的是CPLEX的许多API中的哪一个,但是我认为您应该使用的方法大致相同。即,在重新优化RMP之前,将迭代限制设置为0,并使用添加的新列来优化RMP。在这一点上,您大概可以从先前的RMP解决方案中获得最佳的基础。因此,在迭代限制为0的情况下,CPLEX不会将任何新列带入基础。相反,它们将是非基本的,但是迭代限制为0的优化将为您提供CPLEX的所有非基本缩减成本的计算,包括新生成的列的成本。