• Nenhum resultado encontrado

NSGA-II (Elitist Non-dominated Sorting Genetic

3. MÉTODOS MULTIOBJETIVOS

3.2.3 Métodos Multiobjetivos Baseados em Algoritmos Evolucionários (MOAE)

3.2.3.2 Metodologias Multiobjetivo Evolucionárias

3.2.3.2.3 NSGA-II (Elitist Non-dominated Sorting Genetic

Algorithm)

O método NSGA-II (Algoritmo Gentético Elitista com Ordenação Não Dominada) foi proposto por Deb et al. (2000) e emprega alguns conceitos do método NSGA (SRINIVAS E DEB, 1994). Apesar de parecer ser uma segunda versão do NSGA, é uma metodologia diferente, e emprega o conceito de elitismo.

Elitismo

O elitismo é uma proposta original de DeJong (1975), que procura preservar, na população gerada Λt+1, os melhores indivíduos da população atual Λt. Em seus estudos, DeJong verificou que a adoção de alguma espécie de elitismo em algoritmos

genéticos causa um aumento da eficiência para funções unimodais, enquanto provocava uma convergência prematura em problemas multimodais (ZITZLER, 1998).

Ao contrário dos casos de objetivo simples, a incorporação do elitismo a problemas multiobjetivo é mais complexa, uma vez que a quantidade de indivíduos pertencentes à população de “elite” pode ser consideravelmente maior do que a população com que se está trabalhando, já que, para funções contínuas, a fronteira não dominada possui um número infinito de elementos.

Existem diferentes formas de se implementar o elitismo em otimizações multiobjetivos. A forma mais simples é copiar todos os indivíduos não dominados para a futura geração. Esse procedimento adiciona pouca vantagem ao processo evolucionário.

A escolha da razão entre o número de melhores indivíduos e o número apropriado de indivíduos de uma população (Θ) irá influenciar sobremaneira o sucesso da busca. Se um valor elevado de Θ for escolhido, haverá uma perda de diversidade da população, enquanto que se Θ for pequeno, a vantagem de se utilizar uma técnica elitista será perdida (DEB, 2001).

Verificou-se que um valor de Θ igual a 1, seria uma boa proporção para a quantidade de elementos da elite introduzidos na nova população (KNOWLES e CORNE, 2000). Ou seja, a nova população será composta pela mesma quantidade de indivíduos gerados e dos copiados da elite. Essa proporção é empregada na maioria das técnicas multiobjetivo baseadas em AGs elitistas.

Quando se trabalha com uma frente Pareto, os indivíduos da frente são iguais do ponto de vista matemático. Por esta razão, na escolha ou não de uma solução para compor a próxima população, leva-se em conta também fatores como a distribuição das alternativas ao longo da fronteira.

O método NSGA-II trabalha com duas populações distintas, uma população descendente (δ) que é obtida mediante a aplicação dos operadores dos AGs. A segunda população de elite (Λ) é formada pelos melhores indivíduos da geração anterior. Sendo que, essas duas populações possuem o mesmo número de indivíduos (P).

O método inicia com a geração de uma população inicial Λ0. Essa população

é então dividida em diferentes níveis ou fronteiras de não-dominância (Γi). A aptidão

Assim, 1 significa o melhor nível. Depois de se avaliar Λ0 aplicam-se os operadores: de

seleção por torneio, cruzamento e mutação, gerando-se a população “filha” δ0.

Z Z 1 2 1 1 1 1 1 2 3 3 3 3 2 2 4 4

Figura 3.7 Ordenação no método NSGA-II

Uma terceira população Ψ0 é criada como sendo:

U

0

0

o

Λ

δ

Ψ

= (3.11)

onde Ψo =2P. Para as demais gerações, o NSGA-II efetua as ordenações das soluções considerando

Ψ

p, conforme a disposição das soluções nas diversas frentes Γi.

O passo seguinte será a construção da população geradora Λn+1. Como

apenas P soluções podem compor Λn+1, P soluções de

Ψ

p serão descartadas. O preenchimento de

Ψ

p é feito inicialmente com as alternativas pertencentes à Γ1. segue-se o preenchimento com Γ2. Os conjuntos de soluções Γi são inseridos na sua

totalidade até que:

P i 1 j i

= Γ . (3.12)

Ao se inserir uma frente que não atenda (3.12), o algoritmo NSGA-II escolhe as soluções melhor distribuídas, empregando-se um critério denominado de distância

A distância de aglomeração (da) de uma solução reflete a densidade de alternativas localizadas à sua volta, e será igual ao perímetro do cubóide, no espaço das funções objetivos, que envolve uma solução i (Figura 3.8). Este cubóide tem em seus vértices as soluções mais próximas de sua vizinhança. Os elementos que se situarem nos extremos do nível, ou seja, aqueles que tiverem os maiores e menores valores para alguma função objetivo, terão sua distância de aglomeração igual a ∞.

Tendo a população Λn+1 sido definida, procede-se uma seleção para a geração de δ0. A seleção, segundo esta metodologia, é efetuada através da seleção por torneiro

de multidão. Esse torneio é realizado considerando que cada solução i possui dois

atributos: 1. ranking de não-dominância ri; 2. distância de aglomeração dai. Z Z 1 2 i-1 i i+1 cuboide

Figura 3.8 Esquema da definição de distância de multidão.

Baseado nessas duas características é realizado o torneio de seleção em que um candidato i vence um candidato j se uma das seguintes afirmações for verdadeira:

1. se a solução i numa frente (Γi) for menor (no caso de minimização) do que a

solução j.

2. se as duas possuem o mesmo ranking, mas a solução i tem um valor de dai

maior do que da solução j.

Excetuando-se o passo inicial, descrito acima, o método NSGA-II pode ser escrito seguindo-se a Figura 3.9 e/ou o Algoritmo 3.2:

δn δn+1 Λn Γ1 Λn+1 Γ2 Γ3 Γ1 Γ4 Γi ordenação

por dominância distância

de multidão retiradas seleção por torneio de multidão + crossover + mutalçao retiradas

Figura 3.9 Esquema do método NSGA-II

Algoritmo 3.2 - Método NSGA-II

1. combinação das duas populações criando-se

U

n

n

n Λ δ

Ψ = .

2. determinação dos diferentes níveis (Γi) não dominados de Ψn;

3. determinação da nova população Λn+1, obtida da seguinte forma:

Pt+1 = [φ] e i=1;

enquanto ⎢Λn+1 ⎢ + ⎢Γi⎢< P faça ;

Λn+1 = Λn+1 + Γi.; i=i+1

4. determinação dos P - ⎢Λn+1 ⎢ indivíduos restantes, utilizando a distância de

aglomeração, discutida anteriormente.

5. geração da população δn+1, a partir de Λn+1, utilizando a seleção por torneiro

de multidão, seguindo-se de cruzamento e mutação.

3.2.3.2.4

SPEA (Strength Pareto Evolutionary Algorithm)

O algoritmo SPEA, proposto por Zitzler e Thiele (1998), considera também o elitismo por meio de uma população externa (E) onde são guardadas as soluções não dominadas encontradas ao longo do processo. O tamanho dessa população (⎢E ⎢) é um parâmetro a ser fornecido.

Como todos os métodos baseados em AGs, o SPEA inicia gerando uma população interna (Λ0). As soluções geradas em Λ0 são avaliadas, e as que compõem a frente não dominada são copiadas para a população externa (E). Em seguida efetua-se o cálculo das aptidões das soluções pertencentes à cada população. Esse processo de avaliação do SPEA é composto de várias etapas que serão explicitadas a seguir.

O SPEA considera também o conceito de dominância dos métodos MOGA e NSGA-II, no entanto, a forma como é calculada a aptidão de cada indivíduo é diferente. O cálculo da aptidão dessa metodologia utiliza o valor de uma variável denominada força (strength) (S(i)). O valor de S(i) para um indivíduo i pertencente à população externa (E) é dado por:

{

}

1 P ) x ( Z ) x ( Z j / j ) i ( i j + ∧ ∈ =

Λ

f S (3.13)

ou seja, a força será igual ao número de soluções pertencentes à população dominada Λ que são dominadas pelo i, dividido pelo número de soluções mais um (Figura 3.1). Esse procedimento é realizado para garantir que todas as soluções da população externa tenham um valor de aptidão menor que um.

O cálculo da aptidão de uma solução pertencente à população interna (χj) é

feito somando-se o valor da força das soluções de E que a dominam:

+

=1 (i)

j S

χ

(3.14)

o valor 1 é adicionado de forma a garantir que todas as soluções tenham um valor de aptidão maior que um.

Após a avaliação das soluções dos dois grupos de populações, procede-se à seleção dos indivíduos, por meio de um torneio dois a dois, seguido da aplicação dos operadores de recombinação e mutação.

As melhores soluções pertencentes à população gerada Λn+1 são adicionadas à população externa (E). Em seguida, as alternativas desse conjunto dominadas pelas novas soluções inseridas são excluídas do processo. As soluções que sobram desse procedimento são as alternativas não dominadas resultantes da combinação das populações de "novas e velhas elites" (ZITZLER, 1999).

Z Z 1 2 1/10 4/10 7/10 7/10 5/10 17/10 23/10 29/10 28/10 28/10 17/10 21/10 33/10 29/10

Figura 3.10 Definição da aptidão no método SPEA

Se esse processo continuar por um grande número de iterações, o tamanho da população externa pode ficar muito grande, o que não é desejável pois acarreta uma série de dificuldades que minam a capacidade do método diversificar as suas soluções. Considerando esse aspecto, foi proposto um algoritmo de corte que deve ser aplicado sempre que o número de indivíduos da população externa for maior que um parâmetro P .

Algoritmo de Corte

O algoritmo de corte tem a função de reduzir o tamanho da população externa de P ' para P , quando P '> P (DEB, 2001). Inicialmente, cada solução

pertencente a E é considerada como localizada em um agrupamento (cluster) separado. Assim existirão P agrupamentos. Em seguida é calculada a distância de

agrupamento entre todos os pares de agrupamentos:

∈ ∈ = 2 1,j i 2 1 12 d(i,j) 1 d (3.15)

onde d12 indica a distância entre dois agrupamentos Cˆ1 e Cˆ2. E d(i,j) é a distância

entre duas soluções i, j pertencentes aos dois agrupamentos. Esta distância, geralmente Euclidiana, pode ser calculada no espaço de variáveis de decisão ou no espaço de objetivos, sendo que no algoritmo original, a segunda opção foi empregada.

Os dois agrupamentos com menor distância são então acondicionados em um novo agrupamento maior. Em seguida, recalculam-se as distâncias de agrupamento. Esse processo é repetido até que o número de aglomerações seja igual a P . Em seguida, para cada agrupamento, a solução com a menor distância média para as outras soluções é mantida na população externa, sendo que as demais alternativas pertencentes àquela aglomeração são descartadas (Figura 3.11)

Z Z 1 2 Agrupamentos Frente Pareto Soluções Retiradas

X

X

Figura 3.11 Esquema do algoritmo de corte do SPEA

3.3

Métodos Multiatributos

Todas as soluções pertencentes à frente Pareto encontradas são equivalentes do ponto de vista matemático. Entretanto, do ponto de vista da prática da Engenharia, é necessário escolher uma solução a ser implementada. Para isso, precisa-se de uma informação adicional além daquela contida nas funções objetivo. Essa informação é uma das principais diferenças dos métodos de um objetivo para os multiobjetivos.

A nova informação é adicionada ao problema pelo tomador de decisão (decision maker) que pode ser uma pessoa, ou grupos de pessoas, que se supõe ter uma maior percepção global do problema ou que pode melhor expressar as relações entre as diferentes soluções do problema (MIETTINEN, 1999). Geralmente, o tomador de decisão é o responsável pela decisão final ou, pelo financiamento do projeto.

Como já foi mencionado, para problemas com apenas dois objetivos existe certa facilidade na tomada de decisão, uma vez que as soluções podem ser dispostas graficamente. No entanto para problema maiores, não é simples por parte do decisor

escolher a solução que mais lhe compraz. Desta forma, recorre-se a metodologias que procuram extrair as preferências de quem decide tentando-se chegar à solução mais compatível com suas necessidades. Uma das formas de se chegar a essa solução é utilizando os chamados métodos multiatributos.

Entende-se por métodos multiatributos aqueles em que se escolhe a alternativa de maior preferência do tomador de decisões, a partir de um número finito de soluções. Existe na atualidade um número muito grande métodos multiatributo sendo empregados dentre os quais:

• AHP (Analytic Hierarchical Process) - Saaty (1977),

• CODASID (COncordance and Discordance Analyses by Similarity to Ideal Designs) - Sen et al. (1997);

• ELECTREs (ELimination Et Choix Tradusuant la REalité) - Roy (1968), Roy e Bertier, 1971;

• PROMETHEE (Preference Ranking Organization METHods for Enrichment Evaluations) - Brans e Vincke (1985);

• SMART (Simple MultiAttribute Ratting Techniche) - Edwards (1977);

• TOPSIS (Techniche for Order Preference by Similarity to Ideal Solution) - Hwang e Yoon (1981)

Os métodos multiatributos, em sua maioria utilizam conceitos como pesos para os critérios que buscam captar a preferência do decisor, apresentando, cada um em maior ou menor grau, adaptabilidade a diferentes tipos de problemas, decisores, grau de incerteza, etc (SALMINEN ET AL, 1998; ZANAKIS ET AL., 1998).

Uma classe de métodos multiatributos, que tem sido empregada com frequência em uma variada gama de problemas reais, é dos chamados métodos de

relação hierárquica (outranking relation). São exemplos desse tipo de métodos o

ELECTRE, o PROMETHEE e o CODASID. Tais metodologias se baseiam na chamada relação hierárquica de preferência entre duas alternativas a1 e a2 definida por Roy (1968) como sendo uma relação binária Š, em que a1Ša2 ocorre

,

se e somente se, dado o conhecimento das preferências do decisor, existem argumentos suficientes para decidir que a alternativa a1 é melhor ou igual á alternativa a2. (VINCKE, 1992). Nos próximos itens é feito um detalhamento das duas metodologias multiatributos empregadas neste trabalho

Documentos relacionados