Effacer les filtres
Effacer les filtres

How I can impliment my objective function inside this GA?

1 vue (au cours des 30 derniers jours)
Sourasis Chattopadhyay
Sourasis Chattopadhyay le 11 Déc 2022
Commenté : Star Strider le 13 Déc 2022
How I can impliment my objective function inside this GA?

Réponse acceptée

Star Strider
Star Strider le 11 Déc 2022
Since ‘objective function’ implies curve fitting, try something like this —
x = 1:0.1:10;
y = 2.5*exp(-(x-5).^2/2)+randn(size(x))*0.25;
objfcn = @(b,x) b(1).*exp(-(x-b(2)).^2*b(3));
fitnessfcn = @(b) norm(y-objfcn(b,x));
Parms = 3;
[B,fval] = ga(fitnessfcn, Parms)
Optimization terminated: average change in the fitness value less than options.FunctionTolerance.
B = 1×3
2.6924 4.9718 0.6663
fval = 2.7118
figure
plot(x, y, '.')
hold on
plot(x, objfcn(B,x), '-r')
hold off
grid
The parameter estimates here (2.69, 4.97, 0.666) are reasonably accurate when compared to the actual parameters (2.5, 5.0, 0.5) in this relatively simple problem. The norm of the residuals is 2.71.
.
  2 commentaires
Sourasis Chattopadhyay
Sourasis Chattopadhyay le 13 Déc 2022
Thank you for your valuable help.
Star Strider
Star Strider le 13 Déc 2022
As always, my pleasure!

Connectez-vous pour commenter.

Plus de réponses (0)

Community Treasure Hunt

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

Start Hunting!

Translated by