(免责声明:我也发帖到mathworks上,希望能尽快得到答复。我希望这不会被反对。)
我想从 R^I 中最小化一个表现良好的实值目标函数 $f$。可行点位于一组有限点 x^1 到 x^n 的凸包内。我只对找到 f(y) 最大化的点 y 感兴趣,而不关心允许我将 y 写为 x^i 的凸组合的 N 个权重(在 N 维单纯形中)。
当然,我可以简单地将优化写为:
popt = fmincon(@(p) f(x'*p),[],[],ones(1,N),1,zeros(N,1),[]);
y = x'*popt;
然而,如果跨越凸包的点几乎是多重共线的,那么这个复合函数(作为 p 的函数)在最优值附近非常平坦。我怀疑这会大大降低 fmincon 的速度,并且会帮助它在 R^I 空间而不是 N 维单纯形上“解决问题”。我可以采取哪些步骤来实现这一目标?