find local maximum/minima

14 views (last 30 days)
Muhammad Zahirul Mohd Rodzuan
Edited: Ameer Hamza on 2 Nov 2020
how do i find the local maxima and minima for f(x,y)=110*x-4.5*x^2+115*y-2*y^2. this is my first time using matlab and i am not familiar with the function of the solver.

Answers (1)

Ameer Hamza
Ameer Hamza on 2 Nov 2020
Edited: Ameer Hamza on 2 Nov 2020
Your function is Paraboloid, and it only has single minima or maxima.
If you have a symbolic toolbox, you can find the gradient and zero it to find the stationary point.
syms x y
f = 110*x-4.5*x^2+115*y-2*y^2;
df = gradient(f);
sol = solve(df)
Result
>> sol.x
ans =
110/9
>> sol.y
ans =
115/4
To check if it is minima or maxima, we can use hessian matrix
d2f = hessian(f)
Result
>> d2f = hessian(f)
d2f =
[-9, 0]
[ 0, -4]
The hessian is negative definite, therefore, the stationary point is maxima.
If you have optimization toolbox, then you can also try fmincon()
f = @(x,y) 110*x-4.5*x.^2+115*y-2*y.^2;
sol = fmincon(@(X) -f(X(1), X(2)), rand(2,1))

Products

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!