Fmincon solution is same as initial guess
1 vue (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Samy Alkhayat
le 14 Juil 2021
Commenté : Sulaymon Eshkabilov
le 15 Juil 2021
Hello,
My Fmincon function does not minimize the cost function, instead, it reports the same initial guess provided to it. Please help with recommendations to the piece of code below:
function J=cost_function(y)
for i=1:size(a,1)
AA = y0*b(i,:)';
BB = y0*c(i,:)';
CC = (y0(1).*c(i,1)/BB)*c(i,1) + (y0(2).*c(i,2)/BB)*c(i,2);
DD = y0*d(i,:)';
EE = y0*e(i,:)';
all(i,:)=[AA, BB, CC, DD, EE];
end
J=sum(abs(all(1,:) - x(1:5)') ./ x(1:5)')^2;
The script calculates the a, b, c, d, e,....... and passes them to the function along with "y0".
Please advise, and thanks in advance
0 commentaires
Réponse acceptée
Sulaymon Eshkabilov
le 14 Juil 2021
Modifié(e) : Sulaymon Eshkabilov
le 14 Juil 2021
THere are a couple of errs oin your fcn, i.e. y0, a,b,c,d not defined. Moreover, x is not defined.
function J=cost_function(y0, a, b, c, d, e, x)
for i=1:size(a,1)
AA = y0*b(i,:)';
BB = y0*c(i,:)';
CC = (y0(1).*c(i,1)/BB)*c(i,1) + (y0(2).*c(i,2)/BB)*c(i,2); % Check: multiplied and divided by c(i,1) and c(i,2)
DD = y0*d(i,:)';
EE = y0*e(i,:)';
all(i,:)=[AA, BB, CC, DD, EE];
end
J=sum(abs(all(1,:) - x(1:5)') ./ x(1:5)')^2;
4 commentaires
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Solver Outputs and Iterative Display dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!