I have differnt coodinate after use fmincon

1 Ansicht (letzte 30 Tage)
jong eun kim
jong eun kim am 4 Dez. 2022
Kommentiert: jong eun kim am 4 Dez. 2022
i want to get a coordinate for maximum distance which form is distance =10.361+0.40125.*a-0.34875.*c-0.78375.*a.*c i plot this surface, and i have (1,-1) is the best coordinate and the maximum is 11.8947 but when i do this for fmincon, x0=[0 0]; lowerbound=[-1 -1]; upperbound =[1 1]; function f = distance(x) A=x(1); C=x(2); f= (-1).*(10.361+0.40125.*A-0.34875.*C-0.78375.*A.*C); end function [c ceq]=const(x) A=x(1); C=x(2); c=A+C-2; ceq=[]; end the answer is x=1 y=1 , not a x=1 y=-1!!!!!! plz help me
  5 Kommentare
jong eun kim
jong eun kim am 4 Dez. 2022
nono i mistake the question i set lower=[-1 -1] upper=[1 1]
Torsten
Torsten am 4 Dez. 2022
Both Matt J and I already changed the settings.
And the result is as you expect: A = 1 and C = -1.

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Matt J
Matt J am 4 Dez. 2022
x0=[0 0]; lb=[-1 -1]; ub =-lb;
fmincon(@distance,x0,[1,1],2,[],[],lb,ub)
Local minimum found that satisfies the constraints. Optimization completed because the objective function is non-decreasing in feasible directions, to within the value of the optimality tolerance, and constraints are satisfied to within the value of the constraint tolerance.
ans = 1×2
1.0000 -1.0000
function f = distance(x)
A=x(1); C=x(2); f= (-1).*(10.361+0.40125.*A-0.34875.*C-0.78375.*A.*C);
end
  4 Kommentare
jong eun kim
jong eun kim am 4 Dez. 2022
i reupload my question by more specificly. i think u dont understand my question. but thank you for your help
jong eun kim
jong eun kim am 4 Dez. 2022
plz check my new question sir

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Torsten
Torsten am 4 Dez. 2022
Bearbeitet: Torsten am 4 Dez. 2022
x0=[0 0];
lowerbound =[-1 -1];
upperbound = [1 1];
sol = fmincon(@distance,x0,[1 1],2,[],[],lowerbound,upperbound)
Local minimum found that satisfies the constraints. Optimization completed because the objective function is non-decreasing in feasible directions, to within the value of the optimality tolerance, and constraints are satisfied to within the value of the constraint tolerance.
sol = 1×2
1.0000 -1.0000
function f = distance(x);
A=x(1);
C=x(2);
f= (-1).*(10.361+0.40125.*A-0.34875.*C-0.78375.*A.*C);
end

Kategorien

Mehr zu Nonlinear Optimization finden Sie in Help Center und File Exchange

Produkte


Version

R2022b

Community Treasure Hunt

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

Start Hunting!

Translated by