如何在max-min优化中使用fminimax?我对必须在最小-最大公式中合并的外部负号感到困惑,以便可以使用“ fminimax”解决最大-最小优化问题。如何在我的代码中包含外部负号?可以通过使成本函数为负来解决内部的负号。但是外面的负号又如何在代码中包括呢?
答案 0 :(得分:1)
默认情况下,fminmax
尝试解决目标函数集的所有最大值中的“全局”最小值。但是,如果您要寻找所有最小值中的最大值,如文档中所述,则需要为输出和目标函数集添加一个负号。
这是一个最小的示例:
% Solve minmax:
fun = @(x)[sin(x);cos(x)];
x0 = 1;
x = fminimax(fun,x0)
还有
% Solve maxmin:
fun = @(x)-[sin(x);cos(x)]; %fun -> -fun
x0 = 1;
x = -fminimax(fun,x0) %x -> -x