• Nenhum resultado encontrado

Hiper-Heurística utilizando a técnica Upper Confidence Bound para otimização multiobjetivo baseada em decomposição

N/A
N/A
Protected

Academic year: 2021

Share "Hiper-Heurística utilizando a técnica Upper Confidence Bound para otimização multiobjetivo baseada em decomposição"

Copied!
88
0
0

Texto

(1)

PROGRAMA DE PÓS-GRADUAÇÃO EM ENGENHARIA ELÉTRICA E

INFORMÁTICA INDUSTRIAL

LUCAS PRESTES

HIPER-HEURÍSTICA UTILIZANDO A TÉCNICA UPPER

CONFIDENCE BOUND PARA OTIMIZAÇÃO MULTIOBJETIVO

BASEADA EM DECOMPOSIÇÃO

DISSERTAÇÃO

CURITIBA 2018

(2)

HIPER-HEURÍSTICA UTILIZANDO A TÉCNICA UPPER

CONFIDENCE BOUND PARA OTIMIZAÇÃO MULTIOBJETIVO

BASEADA EM DECOMPOSIÇÃO

Dissertação apresentada ao Programa de Pós-graduação em Engenharia Elétrica e Informática In-dustrial da Universidade Tecnológica Federal do Pa-raná como requisito parcial para obtenção do grau de “Mestre em Ciências” – Área de Concentração: Engenharia de Computação.

Orientadora: Myriam Regattieri Delgado Co-orientador: Richard Gonçalves

CURITIBA 2018

(3)

Dados Internacionais de Catalogação na Publicação

P936h Prestes, Lucas

2018 Hiper-heurística utilizando a técnica Upper Confidence Bound para otimização multiobjetivo baseada em decomposição / Lucas Prestes.-- 2018.

85 f.: il.; 30 cm.

Disponível também via World Wide Web. Texto em português com resumo em inglês.

Dissertação (Mestrado) - Universidade Tecnológica Federal do Paraná. Programa de Pós-Graduação em Engenharia Elétrica e Informática Industrial. Área de Concentração: Engenharia de Computação, Curitiba, 2018.

Bibliografia: f. 71-76.

1. Programação heurística. 2. Algoritmos. 3. Processo decisório por critério múltiplo. 4. Computação evolutiva. 5. Programação evolucionária (Computação). 6. Método de decomposição. 7. Otimização matemática. 8. Alocação de recursos - Modelos matemáticos. 9. Métodos de simulação. 10. Engenharia elétrica - Dissertações. I. Delgado, Myriam Regattieri De Biase da Silva, orient. II. Gonçalves, Richard, coorient. III. Universidade Tecnológica Federal do Paraná. Programa de Pós-Graduação em Engenharia Elétrica e Informática Industrial. IV. Título.

CDD: Ed. 23 -- 621.3

Biblioteca Central do Câmpus Curitiba – UTFPR Bibliotecária: Luiza Aquemi Matsumoto CRB-9/794

(4)

TERMO DE APROVAÇÃO DE DISSERTAÇÃO Nº 794

A Dissertação de Mestrado intitulada “Hiper-Heurística utilizando a Técnica Upper Confidence

Bound para otimização multiobjetivo baseada em decomposição” defendida em sessão pública

pelo(a) candidato(a) Lucas Prestes, no dia 13 de abril de 2018, foi julgada para a obtenção do título de Mestre em Ciências, área de concentração Engenharia de Computação, e aprovada em sua forma final, pelo Programa de Pós-Graduação em Engenharia Elétrica e Informática Industrial.

BANCA EXAMINADORA:

Prof(a). Dr(a). Myriam Regattieri de Biase da Silva Delgado – Presidente – (UTFPR) Prof(a). Dr(a). Sandra Mara Guse Scós Venske - (UNICENTRO)

Prof(a). Dr(a). Ricardo Lüders – (UTFPR)

A via original deste documento encontra-se arquivada na Secretaria do Programa, contendo a assinatura da Coordenação após a entrega da versão corrigida do trabalho.

(5)

Agradeço a Deus.

Agradeço a minha família e a Nicolle Meyer Fuchs Rodrigues, minha namorada, que sempre estiveram ao meu lado, me dando apoio.

Agradeço à professora Myriam e ao professor Richard, meus orientadores e a profes-sora Carolina Paula de Almeida.

Agradeço aos membros integrantes da banca avaliadora.

(6)
(7)

PRESTES, Lucas. HIPER-HEURÍSTICA UTILIZANDO A TÉCNICA UPPER CONFIDENCE BOUND PARA OTIMIZAÇÃO MULTIOBJETIVO BASEADA EM DECOMPOSIÇÃO. 86 f. Dissertação – Programa de Pós-graduação em Engenharia Elétrica e Informática Industrial, Universidade Tecnológica Federal do Paraná. Curitiba, 2018.

Muitos problemas reais de otimização têm sido formulados com mais de um objetivo. Re-centemente, vários algoritmos evolucionários multiobjetivo foram propostos e particularmente aqueles baseados em decomposição, como o MOEA/D-DRA (do inglês Multi-objective evoluti-onary algorithm based on decomposition with dynamic resource allocation), têm sido aplicados com sucesso na resolução desses problemas. Contudo, a literatura mostra que o desempenho dessa classe de algoritmos é profundamente afetado pela escolha de seus parâmetros. Métodos de configuração automática de parâmetros aparecem como uma alternativa pois têm apresen-tado bons resulapresen-tados na literatura. Portanto, o propósito deste trabalho é aperfeiçoar, através de uma hiper-heurística para configuração automática de parâmetros, um algoritmo baseado em de-composição voltado para problemas multiobjetivo. O ajuste de parâmetros via hiper-heurística é realizado tanto em modo off-line quanto online. O irace é utilizado na etapa off-line e deter-mina os parâmetros utilizados durante o warm-up do algoritmo, enquanto o Upper Confidence Bound (UCB) é utilizado na etapa online que ocorre após o warm-up. Na maioria dos trabalhos relacionados ao uso do UCB para melhorar o desempenho do MOEA/D e suas variantes, ape-nas a variante de mutação é ajustada, enquanto neste trabalho são ajustados além da variante de mutação, a taxa de cruzamento, o fator de mutação, a probabilidade de utilizar a vizinhança global ou local e o número máximo de atualizações na vizinhança. Buscando encontrar uma estrutura eficiente, os testes executados são divididos em estágios. A melhor variante é então comparada com métodos do estado-da-arte (NSGA-II, IBEA e MOEA/D-DRA). Os resultados indicam que a abordagem proposta é muito competitiva com a literatura. A análise estatística realizada mostra que o método proposto foi igual ou superior aos métodos do estado-da-arte em 38 de 51 instâncias dos benchmarks CEC2009, GLT, LZ, MOP, DTLZ e WFG.

Palavras-chave: Otimização Multiobjetivo; Evolução Diferencial; Algoritmos Evolucionários Baseados em Decomposição; MOEA/D-DRA; Hiper-Heurística; UCB.

(8)

PRESTES, Lucas. A HYPER HEURISTIC USING THE UPPER CONFIDENCE BOUND TECHNIQUE FOR MULTI-OBJECTIVE OPTIMIZATION BASED ON DECOMPOSITION. 86 f. Dissertação – Programa de Pós-graduação em Engenharia Elétrica e Informática Industrial, Universidade Tecnológica Federal do Paraná. Curitiba, 2018.

Many real optimization problems have been formulated with more than one objective. Recently, several multi-objective evolutionary algorithms were proposed and particularly those based on decomposition, such as the MOEA/D-DRA, have been successfully applied to solve these pro-blems. However, the literature demonstrates that the performance of this class of algorithms is severely affected by its parameter settings. Automatic parameter configuration methods emerge as an alternative as they have presented good results in the literature. Therefore, based on a Hyper-Heuristic for automatic parameter configuration we aim at improving the performance of an algorithm based on decomposition developed to solve multi-objective problems. The Hyper-heuristic parameter setting is performed in both offline and online modes. The irace al-gorithm is used at the offline stage to set the parameters used during the alal-gorithm warm-up while the Upper Confidence Bound (UCB) is used at the online stage which occurs after the warm-up. The majority of the works related to the use of UCB to improve the performance of the MOEA/D and its variants adjust only the mutation strategy, whereas the proposed approach adjusts, besides the mutation strategy, several other parameters like crossover rate, mutation factor, probability of choosing the global or local neighborhood and the maximum number of updates in the neighborhood. The experiments are divided into stages to find out an efficient structure. The best variant is then compared with state-of-the-art methods (NSGA-II, IBEA and MOEA / D-DRA). The results indicate that the proposed approach is very competitive with the literature. The performed statistical analysis shows that the proposed approach is equal or superior to the state-of-the-art methods in 38 of 51 instances of benchmarks CEC2009, GLT, LZ, MOP, DTLZ and WFG.

Keywords: Multi-objective Optimization; Differential Evolution; Evolutionary Algorithms ba-sed on Decomposition; MOEA/D-DRA; Hyper-Heurisitc; UCB.

(9)

FIGURA 1 Exemplo de trade-off em um problema multiobjetivo. . . 20 –

FIGURA 2 Exemplo de um objetivo multimodal. . . 21 –

FIGURA 3 Exemplo de um objetivo unimodal. . . 21 –

FIGURA 4 Exemplo de Espaço de Decisão e de Objetivos. . . 22 –

FIGURA 5 Exemplo de Espaço de Objetivos, soluções especiais. . . 22 –

FIGURA 6 Relações entre soluções. . . 23 –

FIGURA 7 Exemplo de uma fronteira de Pareto. . . 24 –

FIGURA 8 Exemplo de Vetores Peso em um problema com dois objetivos. . . 28 –

FIGURA 9 Esquema básico da Evolução Diferencial. . . 31 –

FIGURA 10 Funcionamento da lista da janela deslizante do UCB. . . 37 –

FIGURA 11 Funcionamento do irace. . . 39 –

FIGURA 12 Diagrama do treinamento híbrido. . . 40 –

FIGURA 13 Fluxograma do algoritmo proposto. . . 41 –

FIGURA 14 Funções Peso associado aos valores da janela deslizante. . . 50 –

FIGURA 15 Exemplo dos treinamentos realizados. . . 52 –

FIGURA 16 Análise da instância WFG1. . . 61 –

FIGURA 17 Análise da instância WFG2. . . 62 –

FIGURA 18 Análise da instância WFG4. . . 62 –

FIGURA 19 Análise da instância WFG7. . . 63 –

FIGURA 20 Análise da instância DTLZ1. . . 63 –

FIGURA 21 Análise da instância DTLZ2. . . 64 –

FIGURA 22 Análise da instância DTLZ3. . . 64 –

FIGURA 23 Análise da instância DTLZ4. . . 65 –

FIGURA 24 Análise da instância DTLZ7. . . 65 –

FIGURA 25 Análise da instância ZDT1. . . 66 –

FIGURA 26 Análise da instância ZDT2. . . 66 –

FIGURA 27 Análise da instância ZDT3. . . 67 –

FIGURA 28 Análise da instância ZDT6. . . 67 –

FIGURA 29 Boxplot das instâncias do CEC2009 utilizando o hipervolume. . . 77 –

FIGURA 30 Boxplot das instâncias do GLT utilizando o hipervolume. . . 78 –

FIGURA 31 Boxplot das instâncias do LZ09 utilizando o hipervolume. . . 78 –

FIGURA 32 Boxplot das instâncias do MOP utilizando o hipervolume. . . 79 –

FIGURA 33 Boxplot das instâncias do DTLZ utilizando o hipervolume. . . 79 –

FIGURA 34 Boxplot das instâncias do WFG utilizando o hipervolume. . . 80 –

(10)

TABELA 1 Relações entre duas Soluções. . . 23 –

TABELA 2 Conjuntos de Parâmetros fixos utilizado. . . 46 –

TABELA 3 Instâncias dos benchmarks. . . 47 –

TABELA 4 Conjuntos de Parâmetros disponíveis para seleção na HH. . . 48 –

TABELA 5 Comparação das versões iniciais. . . 49 –

TABELA 6 Comparação das Funções de Peso . . . 51 –

TABELA 7 Comparação do tempo de warm-up. . . 51 –

TABELA 8 Comparação do Tamanho do SW. . . 52 –

TABELA 9 Espaço de Buscas. . . 53 –

TABELA 10 Parâmetros encontrados com o irace. . . 53 –

TABELA 11 Configuração do warm-up. . . 54 –

TABELA 12 Comparação com uma versão do MOEA/D-DRA configurada pelo irace. . 54

TABELA 13 Comparação com a literatura no benchmark CEC2009. . . 55 –

TABELA 14 Comparação com a literatura no benchmark GLT. . . 56 –

TABELA 15 Comparação com a literatura no benchmark LZ09. . . 56 –

TABELA 16 Comparação com a literatura no benchmark MOP. . . 57 –

TABELA 17 Comparação com a literatura no benchmark DTLZ. . . 57 –

TABELA 18 Comparação com a literatura no benchmark WFG. . . 58 –

TABELA 19 Comparação com a literatura no benchmark ZDT. . . 59 –

TABELA 20 Resumo dos testes de Kruskal-Wallis. . . 60 –

(11)

ALGORITMO 1 Cálculo do Credit Assignment (FRR) . . . 38 –

(12)

AEMO Algoritmo Evolucionário Multiobjetivo. BRACIS Brazilian Conference on Intelligent Systems.

CEC Congress on Computational Intelligence.

DRA Dynamical Resource Allocation.

ED Evolução Diferencial.

FIFO First In, First Out.

FIR Fitness Improvement Rate.

FRR Fitness Rate Rank.

IBEA Indicator based Evolutionary Algorithm.

IGD Inverted Generational Distance.

irace Iterated Race.

HH Hiper-Heurística.

HV Hipervolume.

MAB Multi Armed Bandit.

MOEA/D Multiobjective Evolutionary Algorithm based on Decomposition. NSGA-II Non-dominated Sorting Genetic Algorithm version II.

PMCMR Pairwise Multiple Comparisons of Mean Rank.

POM Problema de Otimização Multiobjetivo.

SaDE Self-adaptive differential evolution.

SPEA2 Strength Pareto Evolutionary Algorithm 2.

TD Tomador de Decisão.

(13)

x Solução para um problema de otimização.

n Número de variáveis de decisão em uma solução x.

x(L)i Restrição inferior para a i-ésima variável de decisão. x(U)i Restrição superior para a i-ésima variável de decisão.

Ω Conjunto finito de soluções factíveis.

M Número de funções objetivo.

fm(x) m-ésima função objetivo.

r Número de restrições de um problema de otimização.

Ri(x) i-ésima restrição de um problema de otimização. W Vetor com os limites superiores das funções objetivo.

di Distância euclidiana entre soluções consecutivas em um conjunto de soluções não dominadas.

df e dl Distâncias euclidianas entre as soluções extremas.

ND Número de soluções não dominadas.

F Fator de Mutação.

CR Taxa de Crossover.

NP Tamanho da População.

N Número de Subproblemas.

G Tamanho da vizinhança.

z∗ Ponto Ideal Empírico.

znad Limites superiores de cada objetivo.

δ Medida de probabilidade que define tipo de escopo.

λ Vetor peso.

nr Número máximo de inserções de um indivíduo no escopo.

MAX-AV Número máximo de avaliações da função objetivo.

τ Índice de distribuição.

pm Taxa de mutação polinomial.

πi Valor de utilidade do i-ésimo subproblema.

Δi Decremento relativo do valor da função objetivo do i-ésimo subproblema. WDRA Número de Avaliações para executar o DRA.

gtche1 Função de agregação Tchebycheff1. gtche2 Função de agregação Tchebycheff2.

gpbi Função de agregação PBI.

θ Uma configuração possível dentro do espaço de buscas do Irace. C Valor que controla o trade-off entre exploração e intensificação.

K Número total de operadores disponíveis.

op Operador selecionado pelo UCB.

vop Número de vezes que o operador op foi aplicado na janela de tempo. SW Sliding Window, onde os dados das execuções serão armazenados. SWsize Tamanho da janela SW .

(14)

Rewardop Valor da soma dos Fitness Rate Rank para operador op. TotalReward Valor da soma do Rewardopde todos os operadores. φReward Indicativo de uso de uma função peso.

h Índice normalizado da janela deslizante do UCB.

φQuad1 Função peso côncava da janela deslizante. φQuad2 Função peso convexa da janela deslizante. φLinear Função peso linear da janela deslizante.

(15)

1 INTRODUÇÃO . . . 14

1.1 OBJETIVOS . . . 16

1.2 CONTRIBUIÇÕES . . . 16

1.3 ORGANIZAÇÃO DO TRABALHO . . . 17

2 REVISÃO BIBLIOGRÁFICA . . . 19

2.1 PROBLEMAS DE OTIMIZAÇÃO MULTIOBJETIVO . . . 19

2.2 OTIMIZAÇÃO E DOMINÂNCIA DE PARETO . . . 22

2.3 INDICADORES DE QUALIDADE . . . 25

2.4 DIFERENTES ABORDAGENS DE ALGORITMOS EVOLUCIONÁRIOS MULTI-OBJETIVO . . . 27

2.5 ALGORITMO EVOLUCIONÁRIO MULTIOBJETIVO BASEADO EM DECOM-POSIÇÃO (MOEA/D) . . . 28

2.5.1 Decomposição com Alocação Dinâmica de Recursos (MOEA/D-DRA) . . . 30

2.6 EVOLUÇÃO DIFERENCIAL . . . 30

2.7 AJUSTE AUTOMÁTICO DE PARÂMETROS . . . 32

2.8 HIPER-HEURÍSTICA . . . 33

2.9 MULTI ARMED BANDIT (MAB) . . . 34

2.10 TESTES ESTATÍSTICOS . . . 35

3 ABORDAGEM PROPOSTA . . . 36

3.1 UPPER CONFIDENCE BOUND (UCB) . . . 36

3.2 ITERATED RACE (IRACE) . . . 38

3.3 ALGORITMO PROPOSTO: MOEA/D-DRA-UCB . . . 39

3.4 DIFERENÇAS PARA AS ABORDAGENS DA LITERATURA . . . 44

4 EXPERIMENTOS E RESULTADOS . . . 45

4.1 BENCHMARKS CONSIDERADOS . . . 45

4.2 CONFIGURANDO O ALGORITMO PROPOSTO . . . 47

4.2.1 Primeiro Estágio: Definir estrutura inicial MOEA/D-DRA-UCB . . . 48

4.2.2 Segundo Estágio: Aprimorar parâmetros da Hiper-Heurística . . . 49

4.2.2.1 Comparação entre Funções de Peso . . . 49

4.2.2.2 Configuração do Tempo de Warm-up . . . 50

4.2.2.3 Configuração do Tamanho da Janela Deslizante . . . 51

4.2.2.4 Configuração de Warm-up utilizando o irace . . . 52

4.3 COMPARAÇÃO COM A LITERATURA . . . 55

4.3.1 Resumo dos testes estatísticos . . . 58

4.3.2 Análise do pior desempenho para o algoritmo proposto . . . 61

5 CONCLUSÃO E TRABALHOS FUTUROS . . . 69

REFERÊNCIAS . . . 71

Apêndice A -- COMPARAÇÃO COM A LITERATURA . . . 77

Apêndice B -- TESTE DE WILCOXON . . . 81

Anexo A -- TESTE DE FRIEDMAN . . . 83

(16)
(17)

1 INTRODUÇÃO

Otimização é uma vasta área aplicável a inúmeros problemas (TAPIA; COELLO, 2007; PONSICH et al., 2013; JOZEFOWIEZ et al., 2008; COELLO; LAMONT, 2004; DE CASTRO, 2006). A otimização de processos é de essencial importância para a máxima eficácia dos recursos disponíveis, atendendo às restrições associadas. Em alguns processos, existem diferentes critérios (objetivos) a serem otimizados. Além de poderem estar em escalas diferen-tes (serem incomparáveis) esses critérios tendem a ser conflitandiferen-tes (ao se otimizar um objetivo perde-se qualidade em outro(s) objetivo(s)), problemas deste tipo são formulados como proble-mas de otimização com múltiplos objetivos. Tais probleproble-mas tendem a ter um conjunto de solu-ções ótimas ao invés de uma única solução, e isto torna a solução desses problemas complexa, muitas vezes não sendo possível a resolução de forma exata. Vários algoritmos evolucionários trabalham com uma população de soluções, o que permite buscar simultaneamente todo o con-junto de soluções de um problema multiobjetivo. Assim sendo, os algoritmos evolucionários são uma boa opção para a resolução de problemas de otimização multiobjetivo, pois eles são capazes de produzir boas aproximações para o conjunto de soluções em tempo computacional viável.

Há diversas formas de tratar Problemas de Otimização Multiobjetivo (POM). As três principais formas são através de dominância de Pareto, do uso de indicadores de qualidade e através de funções de escalarização. Os algoritmos que utilizam esta última forma são deno-minados algoritmos baseados em decomposição e, devido aos seus bons resultados, têm sido amplamente investigados na literatura de otimização multiobjetivo nos últimos anos (TRIVEDI et al., 2017). Este tipo de algoritmo utiliza um conjunto de pesos ou direções para guiar o processo de busca do conjunto de soluções. Um dos principais algoritmos dessa abordagem é o MOEA/D-DRA (do inglês, Multi-objective evolutionary algorithm based on decomposition with dynamic resource allocation) (ZHANG et al., 2009a). Sua popularidade se deve ao fato de tal algoritmo ter vencido a competição de otimização multiobjetivo do CEC 2009 e por ter bons resultados reportados na literatura. Seu bom desempenho se deve principalmente ao fato de

(18)

alo-car diferentes recursos computacionais para cada subproblema1, focando-se nos subproblemas que apresentam melhor tendência a serem melhorados.

Embora os resultados do MOEA/D-DRA sejam animadores, a literatura da área mostra que seu desempenho é fortemente influenciado pelo conjunto de parâmetros adotados e que esse conjunto varia de acordo com o problema a ser resolvido. O ajuste de tais parâmetros é uma tarefa árdua que envolve conhecimento tanto do algoritmo adotado quanto do problema tratado. Na prática, essa tarefa costuma ser delegada ao usuário final, visto que ele é o melhor conhe-cedor do problema; contudo ele tende a ter conhecimento limitado sobre o algoritmo. Visando mitigar este problema e ao mesmo tempo melhorar o desempenho do MOEA/D-DRA, neste trabalho pretende-se utilizar um método de seleção automática de parâmetros, em particular será adotada uma hiper-heurística para esta tarefa (BURKE et al., 2010).

Hiper-heurísticas visam prover metodologias generalizáveis de solução para proble-mas de otimização explorando o espaço das heurísticas ao invés do espaço das soluções, ou seja, elas buscam por heurísticas eficientes para resolver o problema base em questão (CHAKHLE-VITCH; COWLING, 2008). Utilizando hiper-heurística e informações de feedback da busca é possível selecionar os parâmetros do MOEA/D-DRA para se obter uma maior eficiência durante a otimização. Uma hiper-heurística pode ser de seleção ou de geração. A diferença entre elas é que as de seleção apenas escolhem entre as heurísticas disponíveis enquanto as de geração constroem novas heurísticas a partir dos componentes disponíveis (BURKE et al., 2013). Este trabalho focará nas hiper-heurísticas de seleção.

A busca por bons parâmetros deve balancear a intensificação (uso dos melhores valores para os parâmetros) com a exploração (aquisição de informações sobre os demais valores). Um algoritmo com potencial para realizar essa tarefa é o Upper Confidence Bound (UCB) que busca resolver o dilema do balanço entre exploração e intensificação (FIALHO et al., 2009). Portanto, neste trabalho, pretende-se investigar o uso de uma hiper-heurística de seleção utilizando o UCB para encontrar boas configurações de parâmetros para o MOEA/D-DRA.

Investigações preliminares neste trabalho mostraram que o uso do UCB para ajustar os parâmetros das gerações iniciais do MOEA/D-DRA era menos eficiente do que manter parâ-metros fixos durante tais gerações (período denominado de warm-up) (PRESTES et al., 2017). Para realizar a configuração automática desses parâmetros iniciais foi utilizado o irace, que é um algoritmo do estado-da-arte para configuração de parâmetros (LÓPEZ-IBÁÑEZ et al., 2011). Ou seja, o trabalho utiliza o irace para encontrar uma boa configuração inicial de parâmetros de 1Cada subproblema é um problema de otimização mono-objetivo derivado do problema multiobjetivo original

(19)

maneira off-line, fixa esses parâmetros durante o warm-up e depois faz uso do UCB online para melhorar os valores dos parâmetros ao longo do restante do processo de otimização.

Um ponto de fundamental relevância para a análise de desempenho de algoritmos em otimização multiobjetivo são as características das instâncias a serem solucionadas (este traba-lho utiliza os benchmarks CEC2009, GLT, LZ09, MOP, DTLZ, WFG e ZDT). Isso porque de acordo com Wolpert e Macready (1997) não há um único algoritmo capaz de solucionar todos os tipos de problema. Assim sendo, diferentes algoritmos tendem a ser mais eficientes em certos tipos de problemas. Portanto, a avaliação das características que favorecem ou desfavorecem determinados algoritmos é importante na análise de desempenho de algoritmos para a solução de problemas multiobjetivo, visto que tal análise não somente permite entender em quais situa-ções determinado algoritmo é desejável, mas também permite coletar informasitua-ções que podem ser relevantes na elaboração de novos algoritmos.

1.1 OBJETIVOS

O principal objetivo deste trabalho é investigar a configuração automática de alguns dos parâmetros do MOEA/D-DRA, tornando-o mais fácil de ser utilizado pelo usuário final que não precisará configurar seus parâmetros manualmente e ao mesmo tempo mais eficiente porque a probabilidade de que bons parâmetros sejam utilizados durante a resolução de um determinado problema de otimização multiobjetivo é aumentada.

Técnicas de configuração de parâmetros off-line e online são avaliadas e, portanto, um outro importante objetivo deste trabalho é investigar a sinergia entre o uso dessas duas categorias de ajuste de parâmetros.

Encontrar bons resultados é importante; contudo, do ponto de vista científico, tão ou mais importante é explicar que fatores levaram a tais resultados. Portanto, outro objetivo desse trabalho é tentar correlacionar as características dos problemas multiobjetivo com o desempe-nho da hiper-heurística proposta.

1.2 CONTRIBUIÇÕES

Este trabalho traz contribuições importantes em relação a literatura. Dentre elas, é possível destacar:

• Adaptação de vários parâmetros do MOEA/D-DRA. Além da variante da evolução dife-rencial (ED), também são configurados os parâmetros F, CR, δ e nr utilizando a técnica

(20)

Upper Confidence Bound (UCB). Na literatura, na maioria das vezes, apenas a variante da ED é adaptada;

• Análise da comparação do uso de um UCB específico para cada parâmetro versus a utili-zação de um único UCB para escolha de conjuntos pré-definidos.

Para realizar essa análise, a primeira etapa de experimentos concentra-se em definir a estrutura inicial da abordagem proposta, na qual, são investigadas três versões de como aplicar o UCB. A versão UCB-v3 apresentou bons resultados ao ser comparada com a versão original do MOEA/D-DRA, os quais foram publicados no 6oBrazilian Conference on Intelligent Systems (BRACIS) (PRESTES et al., 2017);

• Determinou-se que o uso do UCB para encontrar boas configurações de parâmetros nas etapas iniciais da busca não se mostrou muito eficiente e como isso buscou-se introduzir um tempo de warm-up do algoritmo, ou seja, um tempo no qual se utiliza uma única configuração cujos parâmetros foram determinados de maneira off-line;

• Avaliação de diferentes funções para ponderar a janela deslizante (SW ). A ideia é que diferentes funções tenham impactos distintos no uso das recompensas armazenadas na janela deslizante e, portanto, contribuam de maneira distinta na seleção das configurações de parâmetros;

• Análise de quais características dos problemas multiobjetivo afetam de maneira negativa o desempenho do algoritmo proposto;

• A abordagem proposta integra um algoritmo baseado em decomposição (MOEA/D-DRA) com um método híbrido de configuração de parâmetros, utilizando o UCB e o irace (aprendizagem off-line, para definir a configuração de warm-up, treinado com os ben-chmarks WFG e ZDT). Esta abordagem se mostrou muito competitiva com algoritmos no estado-da-arte (NSGA-II, IBEA e MOEA/D-DRA). Os resultados desta etapa foram submetidos e aceitos para o CEC 2018 (IEEE World Congress on Computational Intelli-gence) (PRESTES et al., 2018, in press).

1.3 ORGANIZAÇÃO DO TRABALHO

Após essa seção inicial, a revisão bibliográfica está apresentada no Capítulo 2. Este capítulo descreve na Seção 2.2 os problemas de otimização multiobjetivo, bem como sua for-mulação teórica, além de introduzir o conceito de Pareto. O Capítulo 2 discute ainda os indi-cadores de qualidade que são uma forma de avaliação das soluções (Seção 2.3), e apresenta na

(21)

Seção 2.4 as abordagens que podem ser aplicadas em algoritmos multiobjetivo. O algoritmo MOEA/D-DRA é explicado na Seção 2.5, a Evolução Diferencial é descrita na Seção 2.6, e os conceitos de ajuste automático de parâmetros são apresentados na Seção 2.7. Finalmente, as hiper-heurísticas são discutidas na Seção 2.8.

O Capítulo 3 apresenta o algoritmo proposto (MOEA/D-DRA-UCB), o qual é uma hiper-heurística baseada no MOEA/D-DRA que utiliza o UCB para encontrar boas configura-ções online e o irace para encontrar de maneira off-line bons parâmetros para a etapa de warm-up do algoritmo proposto.

O Capítulo 4 descreve como foram realizados os experimentos. A Seção 4.1 descreve os benchmarks utilizados e a Seção 4.2 traz os resultados das versões preliminares, além da comparação da versão final com a literatura (Seção 4.3).

Finalizando, o Capítulo 5 apresenta as conclusões do trabalho, bem como, suas contri-buições na área e indicativos de trabalhos futuros.

(22)

2 REVISÃO BIBLIOGRÁFICA

Problemas de Otimização são muito comuns no mundo real. Embora a Pesquisa Opera-cional tenha desenvolvido métodos eficientes (especialmente no contexto de otimização linear), muitos problemas ainda não podem ser resolvidos de forma exata, sendo portanto necessá-rias outras abordagens para resolvê-los, tais como algoritmos evolucionários. Muitos destes algoritmos são inspirados em fenômenos da natureza, como os Algoritmos Genéticos (GOLD-BERG, 1989), Colônia de Formigas (DORIGO; GAMBARDELLA, 1997), Enxame de Par-tículas (EBERHART; KENNEDY, 1995) e Sistemas Imunológicos (DASGUPTA, 1993). Os algoritmos evolucionários usualmente possuem componentes como seleção natural (elitismo), mutação, cruzamento, dentre outros. Um destes algoritmos é a Evolução Diferencial (STORN; PRICE, 1997) que também pode ser incorporada ao framework MOEA/D para lidar com pro-blemas com múltiplos objetivos. Este Capítulo apresenta os conceitos básicos de otimização multiobjetivo necessários para o entendimento da proposta. Ele descreve ainda os principais algoritmos disponíveis na literatura para solucionar os POMs.

2.1 PROBLEMAS DE OTIMIZAÇÃO MULTIOBJETIVO

Um POM consiste basicamente em encontrar o mínimo ou o máximo de duas ou mais funções objetivo podendo ser definido formalmente como (DEB, 2001):

Minimizar ou Maximizar fm(x) m = 1,2,...,M;

sujeito a x ∈ Ω. (1)

Toda solução x minimiza (ou maximiza) os M componentes do vetor objetivo f(x) onde x é um vetor de variáveis de decisão n-dimensional x = (x1, ..., xn) ∈ Ω, sendo Ω um conjunto finito de soluções factíveis. Pode-se estabelecer queΩ possui limites inferiores x(L)i e superiores x(U)i para cada variável de decisão. Além disso, um POM também pode possuir r restrições descritas em funções Ri(x)i = 1,..,r.

(23)

de um carro, onde, além do custo a ser minimizado há também o conforto que deve ser ma-ximizado. O carro no ponto 1 tem um custo melhor que o carro no ponto 2, porém, com um conforto muito inferior. Portanto, um resultado para este problema pode ser um conjunto de escolhas (contendo 1, A, B, C e 2), no qual o usuário definirá a melhor opção de acordo com sua preferência.

Figura 1: Exemplo de trade-off em um problema multiobjetivo para escolha de um carro. Fonte: (DEB, 2001).

Os objetivos de uma instância podem ser classificados de acordo com sua modalidade sendo unimodal ou multimodal, como é representado nas Figuras 2 e 3. Os problemas mul-timodais são mais próximos aos problemas reais, portanto sendo mais complicados de serem resolvidos (HUBAND et al., 2006). Um critério importante é que o número de ótimos locais au-menta exponencialmente (de forma não regular) com o número de variáveis associadas (BÄCK et al., 1997).

A Figura 4 apresenta um exemplo, onde, no lado esquerdo há o espaço de decisão, cada soluçãox com três variáveis (x1, x2e x3) e no lado direito o espaço objetivo com dois objetivos f1e f2. Ainda na Figura 4, o pontoz corresponde aos valores dos objetivos para a solução x, e a região em cinza define a região de factibilidade.

A Figura 5 traz uma representação gráfica de uma região de factibilidade do espaço objetivo (região em cinza), ou seja, toda a região demarcada corresponde a possíveis soluções. A figura ilustra ainda diversas soluções em um problema de otimização com dois objetivos. Dentre as soluções contidas neste espaço, algumas podem ser destacadas z∗(1) e z∗(2) podem ser definidas como as melhores soluções factíveis nos objetivos f1 e f2, respectivamente. A solução z∗ é dita solução ideal, pois possui os melhores valores para as M funções objetivo, porém é uma solução infactível (exceto quando o problema não possui objetivos conflitantes),

(24)

Figura 2: Exemplo de um objetivo multimodal. Fonte: Adaptado de (HUBAND et al., 2006).

Figura 3: Exemplo de um objetivo unimodal. Fonte: (DEB et al., 2005).

usada somente como referência. A solução z∗∗ chamada de solução utópica, pois ela é melhor que z∗em todos os objetivos. O vetor solução znad é composto pelos limites superiores de cada objetivo, podendo ser factível ou não. E, por último, o ponto representado por W é o vetor que possui os limites superiores das funções objetivo.

Usualmente, múltiplos objetivos são conflitantes, como no caso do exemplo da compra do carro, não existindo uma única solução que seja ótima em todos os objetivos, então a solução de um POM é um conjunto de soluções. Conforme detalhado na próxima seção, este conjunto de soluções tem um significado matemático bem definido pelo conceito de dominância de Pareto (DEB, 2001).

(25)

Figura 4: Exemplo de Espaço de Decisão e de Objetivos. Fonte: (DEB, 2001).

Figura 5: Exemplo de Espaço de Objetivos, soluções especiais. Fonte: Adaptado de (DEB, 2001).

2.2 OTIMIZAÇÃO E DOMINÂNCIA DE PARETO

O conceito de Dominância de Pareto é comumente aplicado aos algoritmos de otimiza-ção multiobjetivo e baseia-se em comparar duas soluções para verificar se uma soluotimiza-ção domina a outra (DEB, 2001). A Tabela 1 apresenta as diversas possíveis relações entre duas soluções x,y ∈ Ω, considerando um problema de minimização com M funções objetivo.

(26)

Tabela 1: Relações Possíveis entre duas Soluções (KNOWLES et al., 2006). Relação Simbologia Interpretação no espaço dos objetivos domina estritamente x ≺≺ y x é melhor que y em todos os objetivos, ou seja,

∀i | 0 < i ≤ M ⇒ fi(x) < fi(y)

domina x ≺ y x não é pior que y em todos os objetivos e é melhor em ao menos um, ou seja ∀i | 0 < i ≤ M ⇒ fi(x) ≤ fi(y)

∧∃k | 0 < k ≤ M ⇒ fk(x) < fk(y)

domina fracamente x � y x não é pior que y em nenhum objetivo, ou seja, ∀i | 0 < i ≤ M ⇒ fi(x) ≤ fi(y)

incomparáveis x � y nemx�y e nem y�x

indiferentes x ∼ y x é igual a y em todos os objetivos, ou seja, ∀i | 0 < i ≤ M ⇒ fi(x) = fi(y)

os objetivos. Na Figura 6 é possível observar que para um problema de minimização a solução B domina estritamente a solução A. A solução B é dominada estritamente por D e C. As soluções que não estão nos retângulos cinzas são incomparáveis.

Figura 6: Relações entre soluções.

Fonte: Adaptado de (ZITZLER; THIELE, 1999).

Na ausência de informações relativas à preferência dos usuários com relação aos obje-tivos, o conceito de otimização por Pareto é usado para definir o conjunto de soluções ótimas, o qual é chamado de Conjunto de Pareto. Se uma solução não for dominada por nenhuma outra solução factível, esta solução pertence ao Conjunto de Pareto. Então, pode-se dizer que quanto mais próximo do Conjunto de Pareto o conjunto de soluções encontrado estiver, melhores são os resultados.

(27)

desconectada ou alguma combinação/mistura dessas geometrias. A Figura 7 exemplifica a geo-metria do conjunto de Pareto desconectado que contém componente misto (côncavo e convexo), ponto e outro componente convexo. Uma geometria desconectada reduz a probabilidade de en-contrar boas soluções (HUBAND et al., 2006).

Fronteiras de Pareto com formato convexo também têm uma complicação extra para algoritmos que criam um ranking de soluções baseado no número de soluções que dominam (HUBAND et al., 2006). As soluções no meio do conjunto de Pareto tendem a dominar mais soluções, obtendo um melhor rank.

Figura 7: Exemplo de uma fronteira de Pareto. Fonte: Adaptado de (HUBAND et al., 2006).

Um algoritmo que resolve um problema multiobjetivo deve encontrar uma fronteira o mais próximo possível da fronteira de Pareto e o mais espalhada possível, para obter bons resultados com diferentes tomadores de decisão, ou seja, deve ser capaz de atender diferentes preferências à posteriori com relação aos objetivos. Para esta análise do desempenho de um algoritmo evolucionário multiobjetivo, existem várias metodologias, dentre elas destacam-se os diferentes indicadores de qualidade da aproximação de fronteira de Pareto (ZITZLER; THIELE, 1999; ZITZLER et al., 2000), os quais são descritos na seção a seguir.

(28)

2.3 INDICADORES DE QUALIDADE

Usualmente um AEMO (Algoritmo Evolucionário Multiobjetivo) retorna não uma so-lução, mas sim, uma aproximação do Conjunto de Pareto. Isto torna difícil o trabalho de com-parar as soluções dos algoritmos e verificar o seu desempenho. Portanto, é necessário utilizar técnicas e algoritmos que calculem a distância que cada algoritmo está do conjunto de Pareto (ou um conjunto referência quando este não está disponível) e também a diversidade do conjunto de soluções. Há dezenas de técnicas para medir a qualidade de uma aproximação (RIQUELME et al., 2015), as técnicas mais utilizadas na literatura são os indicadores de qualidade: Hiper-volume, indicador ε-Unário, IGD (Inverted Generational Distance), R2 e o SPREAD. Estes indicadores transformam um conjunto de solução em um valor escalar que serve como base de comparação entre os algoritmos. Tais indicadores são descritos a seguir:

• Indicador Hipervolume

O indicador Hipervolume (ZITZLER; THIELE, 1999) deve ser maximizado. Este indi-cador mede o hipervolume de uma porção do espaço de objetivos em que, pelo menos, uma solução do conjunto de aproximação domina. A Equação (2) apresenta formalmente o cálculo do hipervolume.

IH(A,znad) =

RT1H(A,znad)(z)dz (2)

sendo que IH(A,znad)é o valor do hipervolume, considerando o conjunto de aproxima-ção A e o ponto znad. RT é um hiperespaço real de dimensão T. A função 1

H(A,znad)(z)

é igual a 1 caso z ∈ H(A,znad), 0 caso contrário. A função H(A,znad) é definida como H(A,znad) =z ∈ Z|∃a ∈ A : a � z � nad. A maior desvantagem deste indicador é a com-plexidade computacional, a qual cresce exponencialmente com o número de objetivos (WHILE et al., 2005).

• Indicador ε-Unário aditivo

Este indicador foi proposto por Zitzler et al. (2003), e deve ser minimizado. O seu cálculo envolve a determinação do menor valor de ε (unário) que quando somado por todas as soluções do conjunto de referência R, faz com que este passe a ser fracamente dominado. Sua maior vantagem é o baixo custo computacional, o que o torna uma excelente opção ao tratar de problemas com muitos objetivos.

• Indicador IGD

(29)

conjunto de aproximação (X) e a fronteira de Pareto. Distâncias menores indicam melho-res aproximações, portanto este indicador deve ser minimizado. A Equação (3) apmelho-resenta uma possível formulação do indicador IGD (LI; ZHANG, 2009).

IGD(X,Y ) = ∑NSx∈Xdist(x,Y )

|X| (3)

sendo X é a fronteira de referência e Y a fronteira aproximada, dist é a distância euclide-ana mínima entre x e o ponto mais próximo no conjunto Y e NS é o número de soluções na Fronteira de Pareto.

• Indicador R2

Proposto por Hansen e Jaszkiewicz (HANSEN; JASZKIEWICZ, 1998), o qual utiliza uma série de funções de utilidade, para calcular várias possíveis preferências do tomador de decisões e então analisar o quão bem elas estão sendo atingidas. A Equação (4) apre-senta como é feito o cálculo do indicador R2(TRAUTMANN et al., 2013), o qual utiliza a função Tchebycheff e o ponto ideal z∗, um conjunto de soluções A e um conjunto de vetores de pesosΛ = (λ1, ...,λN).

R2(A,Λ,z∗) = 1

|Λ|λ∈Λ

mina∈A{maxj∈1,..,N{λj|z ∗

j− aj|}} (4)

• Indicador Spread

O indicador Spread (espalhamento) (ISHIBUCHI; SHIBATA, 2004) é uma boa alterna-tiva para a medida da diversidade das soluções. A Equação (5) apresenta como é feito o calculo do Spread (DEB et al., 2002).

Spread =df+dl+∑ND−1i=1 |di− d|

df+dl+ (ND − 1)d (5)

di é a distância euclidiana entre soluções consecutivas em um conjunto de soluções não dominadas, df e dl são as distâncias euclidianas entre as soluções extremas, d é a média entre todas as distância di e ND número de soluções não dominadas. Esse indicador mede o quão disperso os pontos estão com relação a uma dispersão ideal (considerando que todos os pontos estivessem igualmente espaçados). Desta forma este indicador ganha a noção de espalhamento (RIQUELME et al., 2015), pelo fato da equação estar sendo dividida pelo valor médio da distância entre todas as soluções não dominadas, ou seja, a distância da população de estar uniformemente distribuida, portanto, o indicador deve ser minimizado (DEB et al., 2002).

(30)

De acordo com o levantamento feito por Riquelme et al. (2015) o indicador de qua-lidade mais utilizado na literatura é o Hipervolume, por medir tanto o espalhamento quanto a qualidade das soluções, logo, este será o indicador utilizado nos procedimentos iniciais deste trabalho, e posteriormente, na comparação com a literatura, também serão utilizados o IGD, ε-unário e o Spread.

Tanto a otimização por Pareto como os indicadores de qualidade podem ser utilizados como inspiração para abordagens de AEMOs, o que abre a possibilidade de diferentes classes e categorias de AEMOs, as quais são apresentadas na seção seguinte.

2.4 DIFERENTES ABORDAGENS DE ALGORITMOS EVOLUCIONÁRIOS MULTIOBJE-TIVO

Esta seção apresenta brevemente os diferentes paradigmas de AEMO (BEZERRA et al., 2015). Cada abordagem possui diferentes características, o que faz com que abordagens distintas sejam mais ou menos vantajosas para resolver certos tipos de POMs.

• Abordagem usando Pareto: embora utilizem diversos mecanismos, basicamente a po-pulação converge favorecendo soluções não dominadas, mantendo a diversidade. Exem-plos de algoritmos desta categoria são: NSGA-II (DEB et al., 2002) e SPEA2 (ZITZLER et al., 2001);

• Abordagem usando Indicador de Qualidade: esta categoria utiliza indicadores de qua-lidade (Hipervolume, R2, ε-Unário, dentre outros indicadores) para guiar a busca pela fronteira de Pareto. Desta forma o processo de evolução é guiado pelo valor do indicador. Alguns exemplos desta abordagem são: IBEA (ZITZLER; KUNZLI, 2004), SMS-EMOA (BEUME et al., 2007) e R2-EMOA (TRAUTMANN et al., 2013);

• Abordagem usando Decomposição: técnicas recentes exploram a possibilidade de de-compor um problema multiobjetivo em problemas mono-objetivo. O exemplo mais co-nhecido e explorado desta abordagem é o MOEA/D (ZHANG; LI, 2007), o qual em mui-tos casos, é utilizado como base para outros algoritmos e modificações como o MOEA/D-DRA (ZHANG et al., 2009a), que utiliza diferentes recursos computacionais para cada subproblema.

(31)

Este trabalho utiliza a abordagem de decomposição (como base o MOEA/D-DRA) uma vez que essa abordagem tem demonstrado bom desempenho em diversas aplicações. A análise da configuração automática dos parâmetros do MOEA/D (na Subseção 4.3) é o prin-cipal objetivo desse trabalho. Nos experimentos a abordagem proposta será comparada a um representante de cada grupo descrito anteriormente (NSGA-II, IBEA e MOEA/D-DRA para baseado em Pareto, indicador e decomposição, respectivamente).

2.5 ALGORITMO EVOLUCIONÁRIO MULTIOBJETIVO BASEADO EM DECOMPOSI-ÇÃO (MOEA/D)

O MOEA/D é baseado em abordagens convencionais de agregação (EHRGOTT, 2006) e decompõe um POM em N subproblemas de otimização mono-objetivo, de acordo com N veto-res pesos, como, por exemplo na Figura 8 que exemplifica um problema de dois objetivos. Cada subproblema corresponde a um problema de otimização linear (ou não linear), e as regiões em cinza correspondem à vizinhança. As relações entre vizinhança nesses subproblemas dependem da distância entre seus vetores de pesos de agregação (ZHANG et al., 2009b; GONÇALVES, 2010).

Figura 8: Exemplo de Vetores Peso em um problema com dois objetivos.

Algoritmos baseados em decomposição geralmente usam um conjunto de N vetores de peso uniformemente espalhados (isso pode ser observado na Figura 8). Cada subproblema é simultaneamente otimizado usando principalmente informações sobre a vizinhança. Existem várias versões do MOEA/D, incluindo o MOEA/D-DRA (MOEA/D with Dynamical Resource Allocation) (ZHANG et al., 2009a). Essas versões podem usar qualquer abordagem de de-composição para definir seus subproblemas como Tchebycheff1 (Equação (6)), Tchebycheff2 (Equação (7)) (MIETTINEN, 1999; CARLOS et al., 2007), PBI (Penalty-based Boundary In-tersection, Equação (8)) (MOHAMMADI et al., 2015), dentre outras.

(32)

Min gtche1(x | λ,z) = max

1≤ j≤M{λj| fj(x) − z ∗

j |} (6)

Min gtche2(x | λ,z) = max

1≤ j≤M{|

fj(x) − z∗j |

λj } (7)

tal que gtche1 e gtche2 identificam, respectivamente, a função Tchebycheff1 e Tchebycheff2,

f(x) = ( f1(x),..., fM(x)) é uma função multiobjetivo a ser minimizada, z∗ é o ponto empírico ideal e λi = (λi1, ..., λ1M) é o vetor de pesos associado com o subproblema i. A Equação (8) apresenta uma formulação da função de agregação PBI.

Min gpbi(x | λ,z∗) =d1+θd2 (8)

subject tox ∈ Ω

tal que gpbi é a função PBI,θ determina a intensidade da penalidade associada com o vetor de pesos, e d1e d2são definidos na Equação (9).

d1= �(z∗−F(x))

Tλ�

�λ� (9)

d2= �F(x) − (z∗− d1λ)�

Um problema que emerge com o uso do ponto empírico ideal é a possibilidade de con-centrar as soluções em uma região específica da fronteira de Pareto (SATO, 2014). Este trabalho utiliza somente a função Tchebycheff1, as demais funções são apresentadas por serem as mais utilizadas na literatura e para demonstrar como o algoritmo MOEA/D pode ser modificado.

O Algoritmo do MOEA/D será apresentado juntamente com o algoritmo proposto, pseudocódigo 2 na subseção 3.3.

Cabe salientar que os algoritmos investigados nesse trabalho retornam uma aproxima-ção para a fronteira de Pareto e que o usuário ainda deve selecionar uma soluaproxima-ção particular para utilizar. Para isso, ele pode utilizar um processo posterior com um Tomador de Decisão (TD) que retorna uma única solução dentre as soluções que compõem o conjunto retornado pelo algoritmo de otimização multiobjetivo.

(33)

2.5.1 DECOMPOSIÇÃO COM ALOCAÇÃO DINÂMICA DE RECURSOS (MOEA/D-DRA) A diferença do MOEA/D-DRA (ZHANG et al., 2009a) para o MOEA/D original é que sabendo que os subproblemas podem requerer diferentes quantidades de recursos computacio-nais, os recursos são alocados de acordo com a utilidade (πi) de cada subproblema. O valor de utilidade do i-ésimo subproblema é calculado conforme a Equação (10).

πi=

1, seΔi>0,001

(0,95 + 0,05 ∗ Δi/0,001)πi, caso contrário (10)

tal queΔié a diminuição relativa do valor da função objetivo do subproblema i. Os subproble-mas com os maiores valores deΔitêm mais chances de serem selecionados.

2.6 EVOLUÇÃO DIFERENCIAL

Algoritmos evolucionários têm apresentado bons resultados em otimização em espe-cial otimização multiobjetivo. A Evolução Diferenespe-cial (ED) é um algoritmo de busca estocástica proposto por Storn e Price (STORN; PRICE, 1997), que utiliza uma população de soluções (ve-tores), e foi projetado para trabalhar em espaços contínuos. A ED tem obtido bons resultados em todas as recentes competições do CEC (DAS et al., 2016).

A ED tem três parâmetros principais de controle: NP, F e CR. NP é o tamanho da população. O fator de escalabilidade F é usado para fazer a diferença entre as variáveis de dois ou mais vetores e então o resultado é somado ao vetor alvo x1. Este processo é chamado de mutação.

O vetor resultado da mutação, chamado de vetor experimental, na operação de Crosso-ver é combinado com um vetor paixp, de acordo com sua taxa de cruzamento (CR). E por fim, o vetor filho é comparado com o vetor pai para decidir quem sobreviverá para próxima geração. Esta escolha é baseada na aptidão (fitness) dos vetores.

Existem diversas variações para a ED, especialmente em diferentes formas de seleci-onar o vetor alvo (x1), número de vetores diferença usados (y), a forma de determinação do ponto de crossover (z). A notação adotada para caracterizar essas variações é ED/x/y/z. Uma das variações adotadas neste trabalho foi ED/rand/1/bin (STORN, 1996). Essa mutação pode ser matematicamente representada pela Equação (11).

(34)

u = x1+F(x2− x3) (11) sendo queu é o vetor experimental. Utilizando essa notação são selecionados um par de dife-rentes vetores (x2,x3) e o vetor alvo (x1). A diferença entre as duas soluções é calculada (x2-x3), o valor obtido é multiplicado pelo fator de mutação F e adicionado ao vetor alvo (x1), obtendo o vetor experimental. Essa variante é ilustrada na Figura 9, sendo que após ser calculado o cruzamento do vetor pai com o vetor descendente (experimental) é feita a seleção (baseada no fitness) de qual vetor continuará na população.

Figura 9: Esquema básico da Evolução Diferencial. Fonte: Adaptado de Storn e Price (STORN; PRICE, 1997).

Existem outras variantes da ED e as mais citadas e utilizadas são (DAS et al., 2016): • DE/best/1: u = xbest+F(x1− x2); • DE/rand/2: u = x1+F(x2− x3) +F(x4− x5); • DE/current-to-rand/1: u = xi+F(xrand− xi) +F(x1− x2).

(35)

• DE/current-to-rand/2:

u = xi+K(x1− xi) +F(x2− x3) +F(x4− x5).

sendo quexrand é um vetor escolhido aleatoriamente na população. Este trabalho aborda so-mente DE/rand/1, DE/rand/2, DE/current-to-rand/1 e DE/current-to-rand/2.

Este trabalho pretende explorar o fato de que o algoritmo MOEA/D-DRA, assim como a Evolução Diferencial tem vários parâmetros que devem ser analisados e ajustados, ao longo da busca e que esses parâmetros possuem desempenhos diferentes.

Há também técnicas adaptativas da ED, como o SaDE (QIN; SUGANTHAN, 2005), JaDE (ZHANG; SANDERSON, 2009) e ADEMO/D (VENSKE et al., 2012). O foco deste trabalho está em aplicar uma técnica para configurar os parâmetros automaticamente, particu-larmente, uma hiper-heurística com o método UCB, facilitando a configuração para o usuário e também visando melhorar o desempenho do algoritmo.

2.7 AJUSTE AUTOMÁTICO DE PARÂMETROS

Em algoritmos de otimização baseados em computação evolutiva, o alto custo compu-tacional e o tempo demandado são dois dos principais problemas para uma configuração manual dos parâmetros, o que implica que apenas um número limitado de configurações podem ser tes-tadas e, portanto, existe uma dificuldade de se encontrar uma boa configuração. Desta forma, uma alternativa é a utilização de um ajuste automático de parâmetros. Há duas abordagens principais para configuração automática:

• Configuração Online: Nesta abordagem, os parâmetros são modificados durante a exe-cução, baseado no feedback durante a busca. Isto é, à medida que o algoritmo procura a solução de um problema de otimização e executa diferentes configurações para encontrar a melhor alternativa.

No contexto multiobjetivo, há diversas abordagens para tratar a configuração desta forma, tais como: ADEMO/D (VENSKE et al., 2012), SaDE (QIN; SUGANTHAN, 2005) e MOEA/D-UCB (GONÇALVES et al., 2015).

• Configuração Off-line: Nesta abordagem, a configuração ocorre antes da execução. Por-tanto, passa a ser necessário um conjunto de instâncias para treino, para que a informação obtida através dessa etapa seja utilizada para a solução de um determinado problema com certa similaridade com as instâncias utilizadas na etapa de treinamento.

(36)

Existem vários métodos de configuração off-line na literatura, como: ParamILS (HUT-TER et al., 2009), gender − basedGA (ANSóTEGUI et al., 2009), SMAC (HUT(HUT-TER et al., 2011), irace (LÓPEZ-IBÁÑEZ et al., 2011).

Não há como afirmar que uma configuração será adequada durante toda a busca, por-tanto uma abordagem online tende a ser uma boa opção. Entrepor-tanto, no início da busca os métodos de configuração online não possuem informações suficientes para realizar boas esco-lhas e, como a probabilidade de melhorar uma solução é muito alta, escoesco-lhas imprecisas nessa etapa tendem a ocorrer com frequência. Nessa etapa inicial, parâmetros fixos tendem a gerar melhores resultados.

Esse padrão de alteração ao longo da otimização pode favorecer uma abordagem hí-brida, na qual, há um período inicial na busca (warm-up) que utiliza uma configuração fixa, para só depois iniciar o processo de configuração online.

Este trabalho utiliza a abordagem híbrida, mas com foco principal na configuração online de parâmetros a partir de uma hiper-heurística utilizando o UCB. Para melhorar os resul-tados foi utilizado o irace para configurar previamente os parâmetros (abordagem off-line), na fase de warm-up, pois o mesmo utiliza métodos estatísticos para a configuração, sendo assim bem fundamentado, e por obter bons resultados práticos (PÉREZ et al., 2014).

2.8 HIPER-HEURÍSTICA

Hiper-Heurísticas são técnicas de busca de alto nível, as quais operam no espaço de heurísticas, ao invés do espaço de soluções, portanto, buscam a melhor heurística para resolver o problema. De acordo com Burke et al. (2010), é possível classificar hiper-heurísticas em duas classes principais:

• Seleção: Nesta classe, uma hiper-heurística escolhe ou seleciona uma heurística exis-tente. Ou seja, escolhe uma heurística de baixo nível (heurística que trabalha diretamente com o problema) tendo por base alguma medida de desempenho. Pesquisas neste tipo de hiper-heurística têm crescido recentemente (MAASHI et al., 2014).

• Geração: Nesta classe uma hiper-heurística gera um novo componente a partir de com-ponentes que já existem. Ou seja, procura construir uma heurística por meio de compo-nentes, ao invés de procurar por heurísticas pré-definidas (BURKE et al., 2010).

(37)

acordo a natureza das heurísticas adotadas. Tais heurísticas podem ser construtivas ou perturba-tivas. As perturbativas geram soluções completas em passo único enquanto as construtivas vão montando os componentes de uma solução utilizando passos intermediários, ou seja, constroem soluções parciais antes de chegar em uma solução completa.

Uma hiper-heurística pode ter algumas forma de feedback da busca para aprender como selecionar ou gerar uma nova heurística. Assim como um ajuste automático de parâmetros, há as abordagens online e off-line (BURKE et al., 2013), há também hiper-heurísticas que não utilizam nenhuma forma de feedback, utilizando apenas regras pré-definidas (BURKE et al., 2010).

2.9 MULTI ARMED BANDIT (MAB)

Multi Armed Bandit (também chamado de k-armed bandit) é um problema de decisão (alocação de recursos) e segundo Mahajan e Teneketzis (2007) foi originalmente formulado em 1940.

Um MAB pode ser entendido como um problema de alocação de recursos entre es-colhas cujas propriedades são parcialmente conhecidas a cada passo de alocação. Utiliza uma forma de feedback à medida que são feitas as escolhas, sendo que a estratégia de seleção ideal maximiza a recompensa ao longo do tempo.

O MAB é muitas vezes utilizado em métodos adaptativos por confrontar o dilema de Exploração versus Intensificação. Trata-se de um problema onde há vários braços representando múltiplas possibilidades de escolha (com diferentes probabilidades de recompensas entre os diferentes braços) e o objetivo é ter a maior recompensa possível. Portanto é necessário explorar os braços para obter informações sobre os comportamentos dos mesmos e intensificar a busca (utilizando os melhores braços) para maximizar a recompensa.

Mahajan e Teneketzis (2007) descrevem 4 características que um MAB pode possuir: • 1: Somente um braço pode ser escolhido por vez;

• 2: Braços que não foram selecionados permanecem congelados;

• 3: Os braços são independentes (diferentes probabilidades de recompensas);

(38)

O MAB utilizado neste trabalho possui as características 1,3 e 4, e não possui a ca-racterística 2 pelo fato de que durante a busca, os braços (neste caso as configurações) podem alterar sua recompensar.

O algoritmo mais utilizado para lidar com este tipo de problema é o Upper Confidence Bound (UCB) o qual garante um ótimo assintótico (AUER et al., 2002; AUER, 2002; LI et al., 2014; GONÇALVES et al., 2015).

2.10 TESTES ESTATÍSTICOS

Com base em teoria de probabilidade, é possível determinar/inferir e tomar decisões com relação a informações observadas de conjuntos de amostras. Este trabalho utiliza testes estatísticos nos resultados empíricos dos algoritmos para fundamentar as conclusões.

Os testes estatísticos que devem ser aplicados neste trabalho são testes não-paramétricos, ou seja, não dependem a priori da distribuição dos dados. Algumas opções são: teste de Fri-edman (FRIEDMAN, 1937) (descrito no Anexo A) , Mann-Whitney-Wilcoxon (CONOVER, 1999) (descrito no Anexo B) e Kruskal-wallis (KRUSKAL; WALLIS, 1952). O teste estatístico usado é o Kruskal-wallis (KRUSKAL; WALLIS, 1952) (descrito no Anexo C), pelo fato que este teste é indicado para mais de três amostras. O teste aplicado é associado com o teste post-hoc de Dunn-Sidak (DUNN, 1958) com 95% de confiança, que tem como objetivo mostrar se duas ou mais amostras, independente do tamanho, são provenientes de uma mesma distribuição (KRUSKAL; WALLIS, 1952) (SIEGEL; CASTELLAN, 1988).

(39)

3 ABORDAGEM PROPOSTA

Esse trabalho foca na proposta de uma hiper-heurística de seleção para buscar dife-rentes configurações de parâmetros de forma a melhorar a eficiência do MOEA/D-DRA sendo considerada portanto uma hiper-heurística baseada no MOEA/D-DRA. A hiper-heurística uti-liza tanto configuração online quanto off-line dos parâmetros. A parte online usa conceitos de Multi Armed Bandit através do algoritmo UCB enquanto a parte off-line utiliza o irace para configurar os parâmetros da etapa de warm-up. Este capítulo descreve o funcionamento da abordagem proposta (iniciando com o funcionamento do UCB e do irace), assim como salienta as principais diferenças com a literatura.

3.1 UPPER CONFIDENCE BOUND (UCB)

A escolha das melhores configurações de um AEMO requer elevados recursos com-putacionais. O fato do desempenho de cada configuração poder variar durante o processo de evolução torna o desafio dessa escolha ainda mais complexo. Desse modo, um método de adaptação de parâmetros e em especial um método online mostra-se uma alternativa bastante interessante.

Estes métodos adaptativos podem ser baseados em problemas multi-armed bandit (MAB) (LI et al., 2014). O MAB considera um conjunto independente de braços, cada um associado a uma probabilidade desconhecida de ganho de recompensa (reward). Uma seleção ótima maxi-miza o ganho de recompensas em sequência ao longo do tempo.

Upper Confidence Bound (UCB) tem esse nome pelo fato do algoritmo escolher o li-mite superior de confiança para maximizar a recompensa. É considerado o melhor algoritmo da literatura para resolver problemas que envolvem múltiplas escolhas como o MAB. Formal-mente, ao k-ésimo braço no UCB associa-se:

• um intervalo de confiança, que depende do número de vezes que o k-ésimo braço foi testado (FIALHO et al., 2009);

(40)

• o Fitness-Rate-Rank (FRR), que é a média da recompensa obtida por um braço especí-fico (operador) durante algum tempo de observação. Neste trabalho o cálculo do FRR é baseado no procedimento credit assigment cujos passos são descritos no Algoritmo 1 e cada braço representa um operador específico em uma das versões testadas ou uma combinação de operadores em outras versões.

Neste trabalho, utiliza-se uma janela deslizante para o cálculo da média armazenada no FRR e que tem por base o valor de Fitness Improvement Rate (FIR). A Equação (12) calcula o FIR, ou seja, o valor que será utilizado posteriormente no cálculo do FRR.

FIRi= g

tche(x|λ,zˆ)− gtche(yi|λ ,z)

gtche(x|λ,zˆ) (12)

tal que ˆx é a solução presente no escopo, yi é a nova solução gerada a partir da configuração opi,λ é o vetor de peso que está sendo aplicado.

A Figura 10 ilustra a lista FIFO (acrônimo para First In, First Out, Primeiro que entra Primeiro que sai), onde os dados mais antigos estão no início da lista, e os novos são inseridos ao final, após a remoção dos dados iniciais. Esta é mesma estrutura que Li et al. (2014) utiliza em seu trabalho e todos os operadores são armazenados na mesma lista.

Figura 10: Funcionamento da lista da janela deslizante do UCB. Fonte: Adaptado de (LI et al., 2014)

O Algoritmo 1 descreve o método usado para calcular o FRR para cada operador. K é o número total de operadores disponíveis, vop é o número de vezes que o operador op foi previamente aplicado, SW é a janela deslizante. Nos Passos 7 e 9 são visitados todos os dados da janela deslizante, e o valor do FIR do i-ésimo registro armazenado é multiplicado pela função pesoφReward.

De acordo com Fialho et al. (2009) e Li et al. (2014), o UCB seleciona, a cada passo, o braço com o intervalo de confiança superior, descrito na Equação (13).

op = argmaxop=1,..,K�FRRop+C � 2ln∑Ki=1vi vop � (13) sendo que C é um fator de escala, usado para controlar o compromisso (trade-off ) entre

(41)

in-Algoritmo 1 Cálculo do Credit Assignment (FRR) 1: para op ∈ K faça 2: Rewardop= 0.0 3: vop= 0 4: fim para 5: TotalReward = 0.0

6: para i ∈ SW.Size faça

7: op = SW .getOperator(i)

8: h = i / SWsize

9: Rewardop+= SW .getFIR(i) *φReward(h)

10: TotalReward += Rewardop 11: vop++ 12: fim para 13: para op ∈ K faça 14: FRRop= Rewardop/ TotalReward 15: fim para

tensificação (primeiro termo na Equação (13) favorecendo os braços com melhores FRR) e exploração (segundo termo na Equação (13) favorecendo os demais braços). O valor vop é o número de vezes em que o operador op foi usado, na janela deslizante. O termo ∑Ki=1vi é a soma do número de aplicações de cada operador vi, ou seja, se refere ao total de configurações realizadas.

Conforme será visto na Seção 4, os experimentos consideram diferentes estágios para os testes com o UCB no MOEA/D-DRA. Há também uma etapa de configuração off-line do MOEA/D-DRA baseada no irace, um algoritmo estado-da-arte em ajuste automático de parâ-metros e que será brevemente descrito na seção a seguir.

3.2 ITERATED RACE (IRACE)

O Iterated Race (irace) é uma ferramenta off-line de configuração de parâmetros con-siderada estado-da-arte 1 (LÓPEZ-IBÁÑEZ et al., 2011). Conforme ilustrado na Figura 11, seu funcionamento inicia com a definição das instâncias de treinamento, espaço de buscas, a definição dos parâmetros do irace e na sequência ocorrem as várias iterações da corrida (race). Cada iteração tem um conjunto de candidatos gerados, cada candidato θ (o qual é uma configuração possível dentro do espaço de buscas) na instância de treino i então executa o hookRun, ou seja, executa o algoritmo de busca configurado com o candidatoθ. Ao final de cada busca há o retorno da medida de qualidade deθ (medida associada a um indicador de 1implementada na linguagem R a versão do irace utilizada neste trabalho é a 2.3.1807, disponível gratuitamente

(42)

qualidade e conforme mostrado na Figura 11, identificada pelo termo c(i,θ)).

A cada passo (race) as configurações que sobrevivem são testadas em uma nova ins-tância, e os candidatos inferiores são descartados. Uma configuração pode ser eliminada caso seu desempenho seja pior em algum critério, neste caso algum indicador de qualidade utilizado.

Figura 11: Funcionamento do irace. Fonte: Adaptado de (LÓPEZ-IBÁÑEZ, 2012).

Um ponto importante a ser considerado é o overfitting de configuração, isto é, quando o treino faz um ajuste específico para a instância treinada e ocorre uma grande perda de eficiência ao generalizar a configuração. Para isso, utiliza instâncias de validação as quais são diferentes das instâncias de treino.

3.3 ALGORITMO PROPOSTO: MOEA/D-DRA-UCB

A Figura 12 ilustra o processo de configurações que foi utilizado, onde, previamente o MOEA/D-DRA-UCB é treinado pelo irace e a configuração encontrada na fase off-line é utilizada de forma fixa durante o período de warm-up da fase online. É importante ressaltar que em algumas versões o UCB é executado também no processo de treinamento off-line.

Desta forma tem-se um processo híbrido, onde há uma fase de treinamento off-line via irace que ocorre antes da execução e define uma configuração inicial para o MOEA/D-DRA-UCB. Na etapa de teste, estes parâmetros são utilizados até um certo ponto da busca (warm-up), então, inicia-se o segundo processo de configuração (online) realizado durante a busca utilizando o UCB.

(43)

auto-Figura 12: Diagrama do treinamento híbrido.

mática proposta é apresentado na Figura 13 e detalhado no Algoritmo 2 que é a base para as diferentes versões investigadas. O fluxograma resume os passos do algoritmo e apresenta são usados os parâmetros configuráveis.

Os primeiros passos do MOEA/D (Algoritmo 2) inicializam as várias estruturas de dados (Passos 1 até 5). O vetor de pesos λi, i = 1,...,N, representa os coeficientes associados a cada objetivo e é gerado a partir de uma distribuição uniforme. A vizinhança (Bi= {i1,··· ,iG}) do vetor de peso λié composta pelos índices dos G vetores de pesos mais próximos a λi.

A população é inicializada aleatoriamente e na sequência é avaliada com consequente atualização do número de avaliações para N. Cada indivíduo (xi) é associado ao i-ésimo vetor peso λi. O ponto ideal empírico (z) é iniciado com o valor mínimo de cada objetivo encontrado na população inicial. A partir deste ponto as estruturas já estão prontas para iniciar o algoritmo. Na abordagem proposta, o passo 6 inicia o UCB, criando as suas estruturas internas como por exemplo a janela deslizante (SW). Nos passos 10 ao 24 ocorre a seleção propriamente dita dos parâmetros do algoritmo. Os parâmetros selecionados vão se manter fixos durante Pf ix avaliações (passo 16). Esse processo é necessário tendo em vista que, diferente das recompensas em um jogo real, a influência dos parâmetros selecionados sobre os algoritmos não pode ser verificada imediatamente necessitando de um período para a definição da recompensa, período

(44)

Figura 13: Fluxograma do algoritmo proposto.

este definido pelo valor de Pf ix. A etapa que utiliza o UCB tem como possibilidade de escolha algumas combinações específicas de parâmetros (exemplo na Tabela 4 a qual foi utilizada neste trabalho). Cada uma das linhas da tabela, apresenta uma combinação de parâmetros que pode ser utilizada.

Após os passos de inicialização (estruturas e UCB), o algoritmo entra no laço princi-pal (passo 7 até 47). Nesta etapa, calcula-se (passo 8) o valor de utilidade (πi), que é o valor utilizado para alocar os recursos computacionais para os vetores pesos. O processo de geração de uma nova solução pode ser feito com qualquer técnica, entretanto neste trabalho, a versão do MOEA/D que utiliza a Evolução Diferencial foi escolhida pois tem obtido bons resultados na literatura (HUANG; LI, 2010). Os operadores da Evolução Diferencial (ED) (os quais são descritos na Seção 2.6) são aplicados considerando individualmente o escopo selecionado (es-colha aleatória realizada nos passos 25 a 28). Neste trabalho, o escopo pode corresponder à vizinhança ou a toda a população ao longo do processo de evolução do MOEA/D. Portanto, o escopo é composto pelos índices dos indivíduos da vizinhança Bi(com probabilidadeδ) ou da população inteira (com probabilidade 1 − δ). Aplicando os operadores da ED, a modificação

(45)

Algoritmo 2 Pseudocódigo do MOEA/D-DRA-UCB.

1: Gerar N vetores pesosλi= (λi

1,λ2i, ....λMi ),i = 1,....,N

2: Para i = 1,··· ,N, Bi={i1,··· ,iG} onde {λi1, ..,λiG}

3: Gerar a população inicial P0={x1,··· ,xN}, xi= (xi

1,xi2, ....xin)

4: Avaliar cada indivíduo da população inicial P0e associarxicomλi

5: Inicializarz∗= (z

1,··· ,z∗M)sendo z∗j=min1≤i≤Nfj(xi)e Avaliações= N

6: UCB.count = 0;

7: repita

8: DRA. I = p-torneio utilizando πi

9: para cada vetor xi∈ I faça

10: se Avaliações≤ PWarmU p% MAX-AVentão

11: SelectedOperator = Con fwarmup //warm-up: Versões 1 e 2 ignoram este passo;

12: senão

13: se Sliding Window (SW) estiver incompleta então

14: SelectedOperator = Aleatório entre [1,K]

15: senão

16: se count < Pf ix então

17: SelectedOperator = último operador selecionado;

18: count++;

19: senão

20: count = 1;

21: UCB. SelectedOperator utilizando a Equação (13);

22: fim se

23: fim se

24: fim se

25: se rand < δ então //Determinar o escopo (rand in U[0,1])

26: escopo = Bi

27: senão

28: escopo = {1,··· ,N} 29: fim se

30: Gerar uma nova soluçãoy usando ED

31: Aplicar mutação polinomial para produziry�

32: Atualizarz∗, z

j =min(z∗j,fj(y�))

33: para cada subproblema k aleatoriamente selecionado pelo escopo faça

34: se f (y�| λk,z) < f (xk| λk,z) então

35: se uma nova substituição pode ocorrer então

36: substituirxkporye incrementar nr

37: fim se

38: fim se

39: fim para

40: UCB. Atualizar Sliding Window, Equação (12);

41: UCB. Calcular Credit Assignment, Algoritmo 1;

42: Avaliações ++;

43: fim para

44: se Avaliações modulo WDRA== 0então

45: DRA. Calcular Δi

46: fim se

Referências

Documentos relacionados

Nesse sentido, o livro de Mary Del Priori Sobreviventes e guerreiras: Uma breve história da mulher no Brasil de 1500 a 2000 convida seus leitores a refletir sobre a história

O CES é constituído por 54 itens, destinados a avaliar: (a) cinco tipos de crenças, a saber: (a1) Estatuto de Emprego - avalia até que ponto são favoráveis, as

Portanto, mesmo percebendo a presença da música em diferentes situações no ambiente de educação infantil, percebe-se que as atividades relacionadas ao fazer musical ainda são

• The definition of the concept of the project’s area of indirect influence should consider the area affected by changes in economic, social and environmental dynamics induced

libras ou pedagogia com especialização e proficiência em libras 40h 3 Imediato 0821FLET03 FLET Curso de Letras - Língua e Literatura Portuguesa. Estudos literários

Detectadas as baixas condições socioeconômicas e sanitárias do Município de Cuité, bem como a carência de informação por parte da população de como prevenir

Convênio de colaboração entre o Conselho Geral do Poder Judiciário, a Vice- Presidência e o Conselho da Presidência, as Administrações Públicas e Justiça, O Ministério Público

Os dados experimentais de temperatura na secagem da pêra em estufa a 40 o C estão apresentados na Figura 6, assim como os valores calculados pelo modelo