slp error matlab function
9 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Ous Chkiri
am 8 Mär. 2021
Bearbeitet: Ous Chkiri
am 8 Mär. 2021
I have error on my code.This slp method to minimize function
clear;
clc;
x=[1;1];
dxlb=[-1;-1];
dxub=[1;1];
Tolx=0.01;
TolCon=0.01;
[f,g]=f_SLPclass(x);
[gradf,gradg]=g_SLPclass(x);
coverged=false;
iter=0;
while converged
c=gradf';
a=gradg';
b=-g;
dx=linprog(c,a,b,[],[],dxlb,dxub);
x=x+dx;
[f,g]=f_SLPclass(x);
[gradf,gradg]=g_SLPclass(x);
iter=iter+1;
converged=max(abs(dx)<Tolx)&& max(g)<TolCon;
end
fprintf('\n number of iteration %f\n',iter);
fprintf('\n Optimum Point: (%f,%f,%f,%f,%f)\n',x1,x2,x3,x4,x5);
2 Kommentare
Akzeptierte Antwort
Matt J
am 8 Mär. 2021
Bearbeitet: Matt J
am 8 Mär. 2021
Your functions f_ and g_SLPclass have missing parts.
function [f,g]=f_SLPclass(x) %return outputs
assert(length(x)==5, "x should be 5 elements long, but instead it is length " + length(x));
xcell=num2cell(x);
[x1,x2,x3,x4,x5]= deal(xcell{:});
f=0.0624*(x1+x2+x3+x4+x5);
g=-1+61/x1^3 +37/x2^3 +19/x3^3 +7/x4^3 +1/x5^3;
end
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Assembly finden Sie in Help Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!