using GA to solve Multi objective function - Result to be 0 or 1
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
Hi I have a Multi-Objective function problem, and i want to solve it using Genetic algorithm. There are set of instruments (x(i))range from x(1) to x(6).
By using GA, we want to know how out of all these instruments (x(1:6)) which ones should be chosen so that constraints are met and cost is minimized.
Our result should only give us out put of {0} or {1}. {0} if x(i) is not used {1} if x(i) is used.
Those x(i) which have result of {1} are our best optimal with its corresponding minimum cost.
I have my functions as:
min F(x) = [objective1(x(i)); objective2(x(i))]
objective1(x(i)) = (d(i))*(t(i))*x(i)
objective2(x(i)) = (t(i))*2*(q(i)/C)*x(i)
subject to: -
sum d((i(1:6)))> 1500
q(i)/C < 30
-q(i)/C < -2
x(i)={0,1}
My (x) comes from following list:
i=1:6;
x(1) is instrument 1
x(2) is instrument 2
x(3) is instrument 3
x(4) is instrument 4
x(5) is instrument 5
x(6) is instrument 6
My other data are fixed for each x(i)
d(1) = 12
d(2) = 30
d(3) = 20
d(4) = 10
d(5) = 8
d(7) = 7
t(1) = 5
t(2) = 3
t(3) = 4
t(4) = 2
t(5) = 4
t(6) = 5
q(1) = 50
q(2) = 20
q(3) = 40
q(4) = 25
q(5) = 45
q(6) = 35
C=60;
For example for above objective function calculation is as follow:
objective1(x(1)) = (d(1))*(t(1))*x(1)+(d(2))*(t(2))*x(2)+(d(3))*(t(3))*x(3)+(d(4))* (t(4))*x(4)+(d(5))*(t(5))*x(5)+(d(6))*(t(6))*x(6)
objective2(x(1)) = (t(1))*2*(q(1)/C)*x(1)+(t(2))*2*(q(2)/C)*x(2)+(t(3))*2*(q(3)/C)*x(3)+(t(4))*2*(q(4)/C)*x(4)+(t(5))*2*(q(5)/C)*x(5)+(t(6))*2*(q(6)/C)*x(6)
can someone tell me how, to write fitness function so that GA only gives me result of {0} or {1} and minimum cost. {1} means instrument should be used. {0} means instrument should be used.
0 Kommentare
Antworten (0)
Siehe auch
Kategorien
Mehr zu Genetic Algorithm 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!