Maximizing an Objective - MATLAB & Simulink (original) (raw)

Main Content

All solvers attempt to minimize an objective function. If you have a maximization problem, that is, a problem of the form

maxxf(x),

then define g(x) = –f(x) and minimize g.

For example, to find the maximum of tan(cos(x)) near x = 5, evaluate

[x,fval] = fminunc(@(x)-tan(cos(x)),5)

Local minimum found.

Optimization completed because the size of the gradient is less than the value of the optimality tolerance.

The maximum is 1.5574 (the negative of the reported fval), and occurs at x = 6.2832. This answer is correct because, to five digits, the maximum is tan(1) = 1.5574, which occurs at x = 2π = 6.2832.

See Also

Topics