Borrar filtros
Borrar filtros

using GA to solve Multi objective function - Result to be 0 or 1

1 visualización (últimos 30 días)
hassan
hassan el 31 de Mayo de 2014
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.

Respuestas (0)

Categorías

Más información sobre Multiobjective Optimization en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by