Finding the minimum value

86 views (last 30 days)
M
M on 14 Jun 2022
Edited: Sam Chak on 26 Oct 2023
Hi.I have a function f(x,y)=2.62./2.62+(x-y).^4, based on the attached figure, the minimum value for this function is 1. I want to know among all of the value for x and y that makes f(x,y)=1, what is the minimum of x-y? I mean how can I find the minimum value of x-y from all of the values that make f(x,y)=1.
Thanks in advance for any help
openfig('xy.fig');
  4 Comments
Walter Roberson
Walter Roberson on 14 Jun 2022
Edited: Walter Roberson on 14 Jun 2022
For real x and y, (x-y)^4 is always non-negative. 2.62 plus a non-negative value will always be minimum 2.62 or larger. 2.62 divided by a value that is 2.62 or larger, has a maximum value of 1 and cannot be greater than 1. Imagine for example x=1000 y=0 giving 2.62+1e12 as the denominator, the division is going to give near 1e-11
The plot cannot be for the formula you give. The plot could, however, be for the version of the formula missing the ()
M
M on 14 Jun 2022
yes that's true and I don't want the plot, I want the minimum value of "x-y" that make f=1. The answer that @Image Analyst gave is true, while it is not given the value of x and y, it just determined its column and row

Sign in to comment.

Accepted Answer

Image Analyst
Image Analyst on 14 Jun 2022
Compute your f matrix, then try this
% Find the overall minimum value of f.
minValue = min(f(:)) % Hopefully 1 but maybe not exactly.
% Find where that min value occurs
[minRow, minCol] = find(f == minValue)
Note if the min occurs in more than one element minRow and minCol will be vectors giving all the places where minValue occurs.
  8 Comments
Walter Roberson
Walter Roberson on 14 Jun 2022
sympref(FloatingPointOutput=false);
syms x y
f(x,y) = 2.62./(2.62+(x-y).^4)
f(x, y) = 
dfx = diff(f, x)
dfx(x, y) = 
critx = solve(dfx, x)
critx = 
%so every y is a triple critical point for x
dfy = diff(f, y)
dfy(x, y) = 
crity = solve(dfy, y)
crity = 
%so every x is a critical point for some y
d2f = simplify(diff(dfx, x))
d2f(x, y) = 
[N, D] = numden(d2f)
N(x, y) = 
D(x, y) = 
xsaddle = solve(N == 0, x)
xsaddle = 
vpa(simplify(subs(f, x, xsaddle)))
ans(x, y) = 
vpa(simplify(subs(f, x, xsaddle - 1/1000)))
ans(x, y) = 
vpa(simplify(subs(f, x, xsaddle + 1/1000)))
ans(x, y) = 
So the first two critical point xsaddle are maximums, the second and third critical points are places where greater or lower would lead to imaginary outputs; the last two are again maxima.
fsurf(f, [-2 2 -2 2])
Looks to me as if there is a "crease".
M
M on 15 Jun 2022
Many thanks @Walter Roberson, it is very helpful and I also learned something new through your code

Sign in to comment.

More Answers (2)

Walter Roberson
Walter Roberson on 14 Jun 2022
For the revised formula over real numbers the minimum value is when x and y differ as much as possible, in particular if the difference between them is infinite, which would give you an output of 0.
The maximum value occurs when (x-y)^4 is minimal which occurs when x == y exactly, which gives you 2.62/2.62 == 1
  2 Comments
M
M on 14 Jun 2022
I should mention that x and y have this feature that x is larger than y, which means they are never equal. So may be someone says with this condition "f" can't be 1 in this case, but very close to 1 is also acceptable.
Torsten
Torsten on 14 Jun 2022
Choose x as close to y as you can - then f will be as close to 1 as it can.

Sign in to comment.


tharun
tharun on 26 Oct 2023
Find the minimum value f(x,y) = x3 + y 3 subject to the constraints x + y = 20
  3 Comments
Walter Roberson
Walter Roberson on 26 Oct 2023
When you have an equality constraint relating x and y, solve the constraint for one of the variables, getting a formula for it in terms of the other variable. Then substitute that formula into the main function. You now have a function of a single variable to be optimized. Proceed by way of calculus.
Sam Chak
Sam Chak on 26 Oct 2023
Edited: Sam Chak on 26 Oct 2023
Minimize a bivariate function
subject to constrained ,
can be transformed into an unconstrained optimization problem by taking the substitution method:
This yields ,
and the minimum of the quadratic function can be found at
.
From the equality constraint, we can find .

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!