I have an optimization problem with nonlinear inequality.I write the MATLAB code using fmincon given below. Now,i want to run the code for different initial point using a loop for check the value..How can i do it?
r=1;
d=80;
a=2.0944;
c = @(x)[(a.*x(1).^2./(4*r)) + ((a/2 + 2).*x(1))- x(2);
-(a.*x(1).^2./(4*r))- ((a/2 + 2).*x(1))+((2*d)+((a*d)/2)+(a*d.^2)/(4*r)-(4*r))-x(2)];
ceq = @(x)[ ];
nonlinfcn = @(x)deal(c(x),ceq(x));
obj = @(x)x(2);
opts = optimoptions(@fmincon,'Algorithm','interior-point');
[x,fval,exitflag] = fmincon(obj,[10;100],[],[],[],[],[10;100],[500;100000],nonlinfcn,opts);

 채택된 답변

Torsten
Torsten 2015년 7월 13일
편집: Walter Roberson 2015년 7월 13일

1 개 추천

for j=1:n
x0=[x10(j);x20(j)];
[x,fval,exitflag] = fmincon(obj,x0,[],[],[],[],[10;100],[500;100000],nonlinfcn,opts);
disp(x);
end
where x10 and x20 are predefined arrays of initial values for x1 and x2.
Best wishes
Torsten.

댓글 수: 3

rumpa dasgupta
rumpa dasgupta 2015년 7월 13일
Thank you for your reply...
Torsten, If i want to run the code for random initial value instead of predefined array of initial values for x1 and x2,then how can i do it?

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

도움말 센터File Exchange에서 Programming에 대해 자세히 알아보기

태그

질문:

2015년 7월 13일

댓글:

2015년 7월 14일

Community Treasure Hunt

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

Start Hunting!

Translated by