Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
onde:<br />
δ =<br />
<br />
(2r) 1/(ηm+1) − 1, se r < 0.5<br />
1 − [2(1 − r)] 1/(ηm+1) , se r ≥ 0.5 , (3.7)<br />
e r é um número aleatório de distribuição uniforme no intervalo 0 ≤ r < 1.<br />
3.2 Algoritmos Evolucionários de Múltiplos Objetivos<br />
Algoritmos Evolucionários de Múltiplos Objetivos (Multi-Objective Evolutionary Algorithms<br />
MOEA), de acordo com Coello (2006), surgiram pela primeira vez em 1983 por David <strong>Sc</strong>ha-<br />
efer através de seu Vector Evaluated Genetic Algorithm (VEGA), Algoritmo 3. Este MOEA<br />
consiste de um GA com um mecanismo de seleção modificado: A cada geração sub-populações<br />
são criadas para cada objetivo e sobre estas sub-populações é aplicada seleção proporcional. Estas<br />
sub-populações são embaralhadas após a seleção e então aplica-se cruzamento e mutação de modo<br />
usual. VEGA possui a habilidade de reter soluções acima da média e boas candidatas à Fronteira<br />
de Pareto, mas conforme GOLDBERG as solucões extremas de cada objetivo são perdidas, restando<br />
somente as soluções próximas ao centro da Fronteira de Pareto. Nesta crítica ao VEGA, Goldberg<br />
(1989, p. 199–201) propõe originalmente a utilização de dominância Pareto para MOEAs aplicados<br />
a problemas de múltiplos objetivos.<br />
Algoritmo 3: Vector Evaluated Genetic Algorithm (SCHAFFER, 1984 apud DEB, 2001, p. 179–<br />
184)<br />
início<br />
t = 0<br />
para cada i,1 ≤ i ≤ n faça<br />
/* n = 〈tamanho da populaç~ao〉 */<br />
inicialize xi ∈ P(t)<br />
q = n/m /* m = 〈número de objetivos〉 */<br />
enquanto ¬ término faça<br />
embaralhe P(t)<br />
divida P(t) em q subpopulações<br />
para cada j,1 ≤ j ≤ q faça<br />
para cada i,1 ≤ i ≤ q faça<br />
avalie a aptidão f j<br />
i (xi)<br />
faça seleção proporcional em P j (t) armazenenando em O j (t)<br />
O(t) = q<br />
j=1 O j (t)<br />
aplique cruzamento e mutação em O(t)<br />
P(t + 1) = O(t)<br />
t = t + 1<br />
29