• Nenhum resultado encontrado

6.2

AEMTs para o FJSP

No trabalho de [dos Santos 2009], o AEMT foi utilizado para o problema de recon- figuração de redes de energia e os resultados apresentados mostraram que o mesmo é capaz de explorar o espaço de busca, pois encontrou soluções de alta qualidade, em um espaço de tempo pequeno. Outra característica do AEMT é a capacidade de trabalhar com múltiplos objetivos conflitantes utilizando uma estratégia de baixo custo computa- cional [dos Santos 2009]. Esses fatos motivaram o estudo do AEMT associado ao FJSP. Nos estudos realizados, foram considerados os mesmos objetivos antes analisados com o PSO: minimização do makespan (Equação 2.2), da carga de trabalho total (Equação 2.3) e da carga de trabalho máxima (Equação 2.4).

6.2.1

Aplicando o AEMT ao FJSP

Como apresentado no Capítulo 3, o AEMT usa subpopulações para lidar com os vários objetivos do problema. Portanto, aplicando os objetivos do problema e, como definido no AEMT, utilizando uma função de agregação, teremos quatro subpopulações:

• Makespan: os melhores indivíduos, considerando apenas o makespan;

• Carga de trabalho total: os melhores indivíduos, considerando apenas a carga de trabalho total;

• Carga de trabalho máxima: os melhores indivíduos, considerando apenas a carga de trabalho máxima;

• Função de agregação: os melhores indivíduos, considerando o resultado da função de soma ponderada, definida na Equação 6.3;

A representação do indivíduo, os dois operadores de cruzamento e o operador de mutação aplicados foram os mesmos daqueles utilizados no DIPSO, ou seja, definidos respectivamente nas figuras, 5.1, 5.3, 5.4, 5.5 e 5.6. A Equação 6.3 mostra a função de soma ponderada aplicada.

F (c) = w1· F1(c) + w2· F2(c) + w3· F3(c) (6.3)

onde, c é um indivíduo, F (c) é a função de aptidão, w1e F1(c) são, respectivamente, o peso

do makespan na soma ponderada e seu valor, w2 e F2(c) são, respectivamente, o peso da

carga de trabalho total na soma ponderada e seu valor e, w3 e F3(c) são, respectivamente,

6.2.2

Aplicando o AEMT

N D

ao FJSP

O AEMTN D é uma variação do AEMT, como pode ser visto no Capítulo 3, e foi apre-

sentado por [Brasil 2012]. A diferencia entre o AEMTN D e o AEMT é que o primeiro

possui uma subpopulação a mais. Essa subpopulação, denominada ND, armazena os in- divíduos da população que participam do conjunto F1 (Definição 2.1), ou seja, as soluções

não dominadas, representando o conjunto ótimo de Pareto (Definição 2.3). Portanto, as subpopulações participantes do AEMTN D são:

• Makespan: os melhores indivíduos considerando apenas o makespan;

• Carga de trabalho total: os melhores indivíduos considerando apenas a carga de trabalho total;

• Carga de trabalho máxima: os melhores indivíduos considerando apenas a carga de trabalho máxima;

• Função de agregação: os melhores indivíduos considerando o resultado da função de soma ponderada, definida na Equação 6.3;

• ND: soluções não dominadas da população.

A representação do indivíduo e os operadores de cruzamento e mutação utilizados são os mesmos presentes no DIPSO e AEMT.

6.2.3

Desenvolvendo um AG multiobjetivo em tabelas para o

FJSP

O AEMT apresenta uma técnica diferenciada para lidar com os múltiplos objetivos de um problema, em que a avaliação multiobjetivo utiliza subpopulações. Após o es- tudo realizado com o FJSP, utilizando AG, PSO e AEMT, a possibilidade de utilizar o processo de avaliação multiobjetivo do AEMT em outras técnicas foi analisada. Assim, implementamos um algoritmo genético multiobjetivo em tabelas (AGMT), que é um AG tradicional, que utiliza o tratamento multiobjetivo do AEMT. No Algoritmo 8, o AGMT é apresentado.

O AGMT é um algoritmo multiobjetivo e a avaliação dos indivíduos é caracterizada pela formação de subpopulações, como no AEMT. Assim como no AG, a população inicial é criada com um tamanho determinado e em seguida os indivíduos são avaliados (linhas 2 e 3). Com a população inicializada, as subpopulações são criadas com os melhores in- divíduos, considerando cada objetivo individualmente e com os melhores na avaliação da função de agregação (linhas 4 e 5). Com as principais estruturas inicializadas, a evolução da população é iniciada com a seleção dos pares para reprodução (linha 7), em que o parâmetro percRepr é uma porcentagem aplicada à quantidade total de indivíduos pre- sentes em todas subpopulações. A seleção é feita utilizando as subpopulações e não existe

6.2. AEMTs para o FJSP 89

Algoritmo 8: Algoritmo AGMT

1 início

2 inicializar população pop com tamP op indivíduos;

3 avaliar todos indivíduos de pop, considerando todos os objetivos; 4 seja no o número de objetivos considerados no problema;

5 gerar (no + 1) subpopulações sbpop a partir de pop, com os y melhores

indivíduos de cada objetivo e com y melhores indivíduos considerando a função de agregação;

6 while não atingir critério de parada do

7 selecionar percRepr indivíduos de sbpop (de qualquer subpopulação),

formando pares de indivíduos para reprodução;

8 para cada par de indivíduos, escolher aleatoriamente o operador de

cruzamento a ser utilizado e executar, formando dois novos indivíduos;

9 aplicar operador de mutação aos novos indivíduos, considerando a

probabilidade probMut;

10 avaliar novos indivíduos, considerando todo os objetivos; 11 seja ne o conjunto dos novos indivíduos gerados;

12 fazer sbpop[noa] = sbpop[noa] ∪ ne, para 1 ≤ noa ≤ no + 1;

13 redefinir sbpop[noa] selecionando os y melhores indivíduos de sbpop[noa],

para 1 ≤ noa ≤ no + 1 ;

14 end

15 fim

nenhuma regra que determine em qual subpopulação deve ser feita a seleção, ou seja, a escolha da subpopulação é aleatória. Nas linhas 8 e 9, os operadores de cruzamento e mu- tação são executados e, na linha 10, os novos indivíduos são avaliados em todos objetivos do problema. Na sequência, esses novos indivíduos são adicionados em todas as subpo- pulações e, em seguida, os melhores indivíduos de cada subpopulação são selecionados, de modo que o tamanho de cada subpopulação permaneça o mesmo que o determinado inicialmente (linhas 11, 12 e 13). Ao fim, entende-se como resposta os indivíduos que estiverem presentes em todas subpopulações.

Assim como no AEMT e no AEMTN D, o AGMT utiliza dois operadores de cruzamento

e a escolha para determinar qual operador executar é feita aleatoriamente. A represen- tação do indivíduo e os operadores de cruzamento e mutação utilizados são os mesmos presentes no DIPSO, AEMT e AEMTN D.

Além do AGMT, outro AG implementado foi o AGMTN D, que possui a mesma lógica

do AGMT, porém possui uma subpopulação a mais, assim como o AEMTN D em relação

ao AEMT. Essa subpopulação armazena os indivíduos não dominados, ou seja, o conjunto F1.

Documentos relacionados