【发布时间】:2014-09-22 00:10:43
【问题描述】:
我在 INITSOLVE 阶段阅读了原始问题空间中的解决方案。一些多聚合变量被忽略。我想这没关系,因为一旦其他变量的值固定,就可以推断出它们的值。但是,读取解决方案的目标值现在已关闭..因为不包括来自这些多聚合变量的目标.. 有没有围绕这个?
【问题讨论】:
我在 INITSOLVE 阶段阅读了原始问题空间中的解决方案。一些多聚合变量被忽略。我想这没关系,因为一旦其他变量的值固定,就可以推断出它们的值。但是,读取解决方案的目标值现在已关闭..因为不包括来自这些多聚合变量的目标.. 有没有围绕这个?
【问题讨论】:
多聚合变量的目标系数被添加到主动表示的变量中,因此解的目标值通常应该仍然是正确的。
但是,多重聚合可能是由对偶参数完成的,即,可能存在将多重聚合变量设置为不同值的解决方案,但您仍然可以将其设置为由在不破坏目标的情况下进行多重聚合。此外,预求解也可能会根据此类参数更改界限或修复变量。
在这种情况下,您的解决方案可能不“适合”预先解决的问题,但会“调整”到价值不低于原始解决方案的解决方案。是这样吗?解决方案的客观价值是否更好?
此外,您应该使用 SCIPgetSolOrigObj() 检查解的目标函数值,以获得原始空间中的目标值,因为在预求解期间可以更改目标偏移量和因子。 另外,请检查原始问题中变量的值,以了解解决方案与您阅读的解决方案有何不同。
【讨论】: