How to use function file

3 Ansichten (letzte 30 Tage)
Jeffrey Eiyike
Jeffrey Eiyike am 13 Jul. 2016
Kommentiert: Jeffrey Eiyike am 25 Jul. 2016
%Fitness function
function y=myFitness(u)
y=0.004*u(1)-0.0031*u(2)+0.0075*u(3)+0.0015*u(4)-0.0086*u(5)+0.0077*u(6)+0.0060*u(7)-0.0060*u(8)-0.0011*u(9)+0.0093*u(10);
end
I have a code that calculate the co-efficient of u(1) to u(10). i want to change the co-efficient of u(1) to u(10) at every time steps before executing the main.m
main.m
ObjFcn=@myFitness;
nvars=10;
LB= [0 0 0 0 0 0 0 0 0 0];
UB=[500 600 120 180 60 80 30 50 30 50];
[u,fval]=ga(ObjFcn,nvars,[],[],[],[],LB,UB);

Akzeptierte Antwort

Jan
Jan am 13 Jul. 2016
Bearbeitet: Jan am 13 Jul. 2016
function y = myFitness(u, c)
y = c * u(:);
end
function main
c = [0.004, -0.0031, 0.0075, 0.0015, -0.0086, 0.0077, 0.0060, -0.0060, ...
-0.0011, 0.0093];
ObjFcn = @(u) myFitness(u, c);
nvars = 10;
LB = [0 0 0 0 0 0 0 0 0 0];
UB = [500 600 120 180 60 80 30 50 30 50];
[u, fval] = ga(ObjFcn, nvars, [], [], [], [], LB, UB);
c = c + 0.01; % Or what ever the change should look like
ObjFcn = @(u) myFitness(u, c);
[u, fval] = ga(ObjFcn, nvars, [], [], [], [], LB, UB);
... etc
  2 Kommentare
Jeffrey Eiyike
Jeffrey Eiyike am 13 Jul. 2016
thanks for the help.
Jeffrey Eiyike
Jeffrey Eiyike am 25 Jul. 2016
Minimize e
subject to
e+x_{i} -0.5 >= 0 , i member of {1,2,3}
e+x_{1}+ x_{i} -1.25 >= 0 , i member of {2,3}
e+x_{2}+ x_{3}-1 >= 0 ,
x_{1}+x_{2}+x_{3}= 1.75
x_{i}- 0.5 >= 0 i member of {1,2,3}
I want to compute x_{1},x_{2} and x_{3} when is at its minimum e=0
Can you help me with this

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Loops and Conditional Statements finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by