Функции оптимизации Global Optimization Toolbox минимизируют цель (или фитнес) функция. Таким образом, они решают проблемы формы
Если вы хотите максимизировать f (x), минимизировать –f (x), потому что точка, в которой происходит минимум –f (x), совпадает с точкой, в которой происходит максимум f (x).
Например, предположите, что вы хотите максимизировать функцию
Запишите функцию, чтобы вычислить
и затем минимизируйте g (x). Запустите с точки x0 = [0 0].
f = @(x)exp(-(x(1)^2 + x(2)^2))*(x(1)^2 - 2*x(1)*x(2) + 6*x(1) + 4*x(2)^2 - 3*x(2)); g = @(x)-f(x); x0 = [0 0]; [xmin,gmin] = fminsearch(g,x0)
xmin =
0.5550 -0.5919
gmin =
-3.8683Максимум f является значением f (xmin), который является –gmin.
f(xmin)
ans =
3.8683