处理epsilon-optimal解决方案

前一节中考虑多个(真正的)的情况下最优的解决方案。当我们有几个< span > < / span > \美元varepsilon < span > < / span >美元最优解决方案?更具体地说,考虑

< span > < / span > \美元开始{数组}{lrrl} \马克斯& \ varepsilon vec {c} = x + y & \ & (\ varepsilon, 1) \ s.t ....……3 \ \ leq 0 &现代{cdot} = & (0,1) \ & y \ leq 1 &现代{4 \ cdot} = & (0, 1)。结束\ \{数组}< span > < / span >美元
图形可以描绘成
\ scalebox {1.0} {\ includegraphics(宽度= 4){refman_misc / codedraw6.pdf}}
如果< span > < / span > \美元varepsilon < span > < / span >美元为零,那么我们在之前所描述的情况。但是请注意,一个小的扰动目标向量可能导致< span > < / span > x ^ 1美元< span > < / span >美元< span > < / span > x ^ 2美元< span > < / span >美元被报道为最优。和公差可以在这里扮演着重要的角色。如果< span > < / span > \美元varepsilon < span > < / span >美元是负的,例如,< span > < / span > x ^ 1美元< span > < / span >美元将数学优化的结果,但由于最优公差,单纯形可能得出这样的结论:< span > < / span > x ^ 2美元< span > < / span >美元是最优的。更准确地说,如果< span > < / span > \美元varepsilon < span > < / span >美元小于默认最优公差吗< span > < / span > 10美元^ {6}< span > < / span >美元,那么单纯形是免费申报方案最优(在公差内)。

上述声明是真实的时候距离之间的< span > < / span > x ^ 1美元< span > < / span >美元< span > < / span > x ^ 2美元< span > < / span >美元不是太大。看到这,我们考虑会发生什么改变的右边< span > < / span >美元现代{4 \ cdot} < span > < / span >美元从1到< span > < / span > 10 ^ 6美元< span > < / span >美元。然后可行域将很长矩形,顶点< span > < / span >美元(0,0)< span > < / span >美元,< span > < / span >美元(0,1)< span > < / span >美元,< span > < / span >美元(10 ^ 6,1)< span > < / span >美元< span > < / span >美元(10 ^ 6,0)< span > < / span >美元。也许有些令人惊讶的是,如果< span > < / span > \美元varepsilon < span > < / span >美元低于双宽容,单纯形可以考虑吗< span > < / span >美元(10 ^ 6,1)< span > < / span >美元最优,即使它的客观价值< span > < / span > 1 - 10 ^ 6美元\ varepsilon < span > < / span >美元,可以非常相关的最终目标价值。

注意,这两种情况下都共享一个主要成份:目标函数是(几乎)平行的一个可行域。在第一种情况下,这条边是相对较短,因此跳< span > < / span > x ^ 2美元< span > < / span >美元< span > < / span > x ^ 1美元< span > < / span >美元在客观价值转化为一个小变化。在第二种情况下,一边几乎平行于目标函数是很长,现在的跳< span > < / span > x ^ 2美元< span > < / span >美元< span > < / span > x ^ 1美元< span > < / span >美元可以产生重大影响最终的目标函数。

如果你拿出的这两个成分,即目标向量几乎平行于一个约束,或边缘这几乎平行约束引起的很长,那么这个问题就可以不出现。原因的讨论,本节的开始,是很常见的目标函数接近平行于一个或多个约束。因此,为了避免这种情况,最好的方法就是避免第二个条件。最简单的方法是确保你的变量的范围不太大。请参考扩展部分的指导。