我们如何在数值优化算法中实现最大值原理的结果?

计算科学 凸优化 r
2021-12-11 11:57:02

我有一个算法(在 R 中),它在每次迭代中最大化紧凑凸集上的凸函数。基于最大值原理,我知道最大值只能在边界上达到。但是我当前的实现在整个空间中进行搜索,这是不必要且耗时的。为了提高时间效率,我想缩小搜索空间,但是我找不到任何只在边界上搜索的算法。任何帮助表示赞赏。

编辑:维度可以从 2 到 6。对于案例 2,紧凑集是一个矩形 [a, b]*[c, d] 并且边界是矩形的周长。该函数是非线性的。

PS 我有 R 代码,但是如果我在这里发布它,那么我的问题将被转移到 Stack Overflow,我认为这不是我的问题的正确位置。我正在寻找仅边界的算法或优化方法。

1个回答

检查 Rockafellars“凸分析”定理 32.2:如果在一组点的凸包上定义凸函数,则该函数在其中一个点处达到最大值。如果我的问题正确,您只需要检查角落的功能。对于您指定的尺寸,这似乎是可行的。