对圆的优化:

对圆的优化:

现在我们提供我们的第一个思想实验:考虑在由约束定义的可行区域上优化线性函数的问题

{displaymath} \ \开始罪(2 \π\压裂{我}{10 ^ 6})x + \ cos(2 \π\压裂{我}{10 ^ 6})y \ leq 1,给所有我\ \ \ {1 \ ldots 10 ^ 6 \}, {displaymath} \结束

即可行区域本质上是一个单位圆< span > < /美元跨度> \ mathbb {R} ^ 2 < span > < / span >美元.注意,对于所有目标函数,相应的最优点将由两个非常接近于并行的线性约束定义。这个问题的数值解会怎样?你能猜到吗?情况如下图所示:
图像codedraw1

为了执行这个实验,我们执行代码circleOpt.py,我们随机选择一个目标向量,找到得到的优化问题的最优解,并计算几个相关的量:

  • 最糟糕的距离在原始解和理论解之间,在一个完美圆上进行优化,在之前的所有运行中。
  • 这是古洛比在之前所有跑步中最严重的违规。
  • gu罗比在所有之前的运行中报告的最严重的约束违反。
  • 这是古洛比在之前所有跑步中最严重的双重违规。
  • 之前实验的次数。
  • 累计的单纯形迭代次数。
  • < span > < / span > \ kappa美元美元< span > < / span >KappaExact属性)为当前最优基的值。

示例输出如下所示:

在19.19秒内增加了2个var和1048576约束:8.65535e-08 0 2.94137e-07 2.77556e-17 Iter 0 21 Kappa 3150.06错误:4.81978e-07 0 3.22359e-07 2.77556e-17 Iter 1 21 Kappa 3009.12错误:4.81978e-07 0 3.4936e-07 1.11022e-16 Iter 2 33 Kappa 2890.58错误:1.53201e-06 0 9.78818e-07 1.11022e-16 Iter 6 79 Kappa 1727.89错误:1.61065e-06 0 8.26005e-07 1.11022e-16 Iter 46 536 Kappa 1880.73错误:1.61065e-06 0 8.84782e-07 1.11022e-16 Iter 52 602 Kappa 1817.27错误:1.61065e-06 0 9.4557e-07 1.11022e-16 Iter 64 742 Kappa 1727.89错误:1.69167e-06 0 3.8268e-07 1.66533e-16 Iter 88 1022 Kappa 2761.99错误:1.69167e-06 0 9.04817e-07 1.66533e-16 Iter 92 1067 Kappa 1797.06错误:1.69167e-06 0 2.94137e-07 2.22045e-16 Iter 94 1089 Kappa 3150.06错误:1.69167e-06 0 3.29612e-07 2.22045e-16 Iter 95 1101 Kappa 2975.84错误:1.69167e-06 0 3.4936e-07 2.22045e-16 Iter 98 1137 Kappa 2890.58错误:1.69167e-06 0 9.25086e-07 2.22045e-16 Iter 107 1147 Kappa 1777.3错误:1.69167e-06 0 9.78818e-07 2.22045e-16 Iter 107 1237 Kappa 1727.89错误:1.69167e-06 0 9.99895e-07 2.22045e-16 Iter 112 1293 Kappa 1709.61错误:1.84851e-06 0 9.78818e-07 2.22045e-16 Iter 132 1523 Kappa 1727.89错误:1.96603e-06 0 9.99895e-07 2.22045e-16 Iter 134 1545 Kappa 1709.61

令人惊讶的是,报告的错误相当小。这是为什么呢?至少有两个贡献因素:模型有一个有界可行区域(在这种情况下,两个变量的范围为< span > < / span >美元美元[1]< span > < / span >)。此外,从一个极值点(两个相邻约束的交点)到它的相邻点的距离也相对较小,因此< span > < / span > \ varepsilon美元美元< span > < / span >-最优解彼此接近。

我们鼓励您尝试一下这段代码,修改一些输入数据,然后分析结果。你会看到理论和数值最优解之间的差异将与摄动的大小相当。