Optimization of a unknown vector variable

1 Ansicht (letzte 30 Tage)
Soumili Sen
Soumili Sen am 27 Nov. 2020
Kommentiert: Soumili Sen am 29 Nov. 2020
Hello ,
I have a code
a,b -----> variables should be vector(like a=[a1,a2,a3,a4])
x=h1*a^2+h2*b^2+h3;------>objctive fun(h1,h2,h3 are constants let say which has 1*4 value)
---->constraints are also present here.. so I am writting the code like
for i=1:4
x(i)=h1(i)*a^2+h2(i)*b^2+h3(i)
end
obj=sum(x);----->(objective function is basically summation of x )
x0=[1,1];
lb = [];
ub = [];
Aeq = [];
beq =[];
A = [];
b = [];
fun=@(p) obj(p(1),p(2));
nonlcon =@constraintfcn;
opts = optimoptions('fmincon','Display','iter','Algorithm','sqp');
[x_value,fval] = fmincon(fun,x0,A,b,Aeq,beq,lb,ub,nonlcon,opts);
But I am not getting the ans,I want optimized value as vector .
  2 Kommentare
Matt J
Matt J am 27 Nov. 2020
Quite unclear, I'm afraid. What is the for-loop supposed to be doing? Do you have more than one objective to minimize? Why does the right hand side not depend on i?
Soumili Sen
Soumili Sen am 28 Nov. 2020
Bearbeitet: Soumili Sen am 28 Nov. 2020
yes, you are right. My objective function is summation of 'x' (I have modified my code), and the unknown optimized veriables are vector. so how can I continue to find the values?

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Matt J
Matt J am 28 Nov. 2020
Bearbeitet: Matt J am 28 Nov. 2020
H1=sum(h1);
H2=sum(h2);
H3=sum(h3);
obj=@(a,b) H1.*a.^2 +H2.*b.^2+H3;
x0=[1,1];
lb = [];
ub = [];
Aeq = [];
beq =[];
A = [];
b = [];
fun=@(p) obj(p(1),p(2));
nonlcon =@constraintfcn;
opts = optimoptions('fmincon','Display','iter','Algorithm','sqp');
[x_value,fval] = fmincon( fun,x0,A,b,Aeq,beq,lb,ub,nonlcon,opts);
  12 Kommentare
Matt J
Matt J am 29 Nov. 2020
You're welcome, but please Accept-click the answer if you consider the matter resolved.
Soumili Sen
Soumili Sen am 29 Nov. 2020
yah sure.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Community Treasure Hunt

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

Start Hunting!

Translated by