投影牛顿法中的活动元素?

计算科学 算法 数值分析 约束优化 牛顿法 投影
2021-11-26 06:17:50

对于那些熟悉投影牛顿法或投影梯度法的人...

我们考虑具有简单边界的约束优化问题。特别是,根据 L <= x <= U 最小化 f(x),其中 f 将 R^n 映射到 R。x、L 和 U 是 R^n 中的向量。在用于解决这个问题的投影牛顿法中,搜索方向是通过求解线性系统(约简 Hessian)*(搜索方向)= - 梯度得到的。基于此,迭代的活动元素在这些元素处沿负梯度方向移动。根据活动集的定义,活动元素的梯度必须为负(对于上限)和正(对于下限)。因此,投影后,活动元素将移回边界。

我的第一个问题是,如果 x_i 在迭代 1 中是一个活动元素,它会在收敛之前成为一个活动元素吗?换句话说,活动集是否只会变大而不是变小,并且活动集的成员只会被添加而不是被移除?

我的第二个问题是如果我们使用 epsilon 活动集而不是活动集怎么办?它会改变什么吗?

如果您需要活动集的定义或任何其他说明/背景,请随时告诉我。非常感谢您的想法和讨论。这对我来说非常重要。

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

编辑:我们考虑问题:

minf(x)subject toaxb
其中是连续可微的。f:RnR

活动集定义为

A:={i|(xi=aiand(f(x))i>0)or(xi=biand(f(x))i<0)}

假设我们的初始迭代在边界上,例如,那么可能有一些非活动元素,其中,对吗?x0x0=a(f(x))i<0

在投影牛顿法中,首先在步长的情况下,活动元素沿负梯度方向移动,这将指向可行区域之外。然后,这些元素被投射回边界。非活动元素沿牛顿方向移动。然后我们测试是否有足够的减少......但即使我们减少,活动元素仍然会移回边界,并且这些元素在下一次牛顿迭代中仍然符合“活动”标准?α=1α

我知道主动集会缩小……我的想法一定有问题……

1个回答

第一个问题的答案是否定的——即使你的目标函数是凸的,活动集不仅会增长,还会缩小。一个例子是,如果您从边界上的某个点开始,那么第一步沿着一个活动约束移动以找到沿该段的目标函数的最小值;但是随后,第二步可能会远离边界,因为在前一点,梯度将指向(通常,除非您在解决方案中)进入域。

你的第二个问题的答案我不清楚。我会说这取决于epsilon的大小。如果 epsilon 足够小,我最好的猜测是没关系,但足够小将相对于目标函数的曲率。

如果你想了解更多关于活动集方法的知识,我最喜欢的关于优化的书是 Nocedal 和 Wright 的《数值优化》——其中对活动集方法进行了广泛的讨论。