• Nenhum resultado encontrado

3 MOSCA/D: Algoritmos Científicos Multiobjetivo baseados em

Decomposição

Este capítulo apresenta os Algoritmos Científicos Multiobjetivo baseados em Decom- posição, MOSCA/D. A primeira seção do capítulo descreve os elementos da abordagem proposta, usando a técnica de decomposição para expandir os Algoritmos Científicos para o contexto multiobjetivo. A segunda seção descreve a estatística TF-IDF, que será utili- zada para alimentar o modelo probabilístico para escolha do tema.

3.1

MOSCA/D

Esta seção apresenta uma versão multiobjetivo dos Algoritmos Científicos baseada em Decomposição (MOSCA/D). No MOSCA/D, o problema é dividido em subproblemas mono-objetivo menores e cada uma dessas instâncias é otimizada individualmente. As so- luções são inseridas em um arquivo de soluções externo e todas as soluções não-dominadas neste conjunto são usadas para criar a aproximação do conjunto de Pareto.

Uma das principais diferenças do MOSCA/D para a versão mono-objetivo dos Al- goritmos Científicos é que cada solução da população, ou pesquisador, tem por objetivo otimizar um subproblema diferente da decomposição. Além disso, o MOSCA/D utiliza um arquivo interno de soluções (comunidade_científica), representando a melhor solução de cada subproblema da decomposição, e um arquivo externo (estado_da_arte) repre- sentando o conjunto de aproximação. Apenas o arquivo interno é utilizado no processo de busca, enquanto o arquivo externo gera a saída do MOSCA/D.

O Algoritmo 3 apresenta a arquitetura genérica do MOSCA/D. As entradas do algo- ritmo são: um conjunto de decomposições do problema em subproblemas menores (λ); a população inicial de pesquisadores (comunidade_científica), com cada uma destas solu-

ções candidatas associada à otimização de um dos subproblemas; e a literatura. A saída do algoritmo é uma aproximação do conjunto de Pareto (estado_da_arte), que é repre- sentada por um arquivo externo de soluções, de tamanho ilimitado, iniciado com todas as soluções não-dominadas da população inicial.

A etapa 3 gera um tema. O tema é uma máscara de bits que seleciona um subconjunto das variáveis de decisão que serão o foco da busca para a solução atual. Ele limita o escopo a uma área restrita do espaço de decisão, fixando todas as outras variáveis de decisão para reduzir o custo computacional das iterações. Uma das tarefas mais importantes no MOSCA/D é escolher um tema relevante para cada iteração, maximizando a probabilidade de encontrar melhorias nas demais etapas do algoritmo. Em aplicações anteriores dos Algoritmos Científicos, o tema foi escolhido aleatoriamente. Este trabalho investiga o uso de um modelo probabilístico para escolher temas mais eficientes, baseado na estatística TF-IDF. Tal métrica está apresentada na seção 3.2.

A etapa 4 do algoritmo constrói uma nova solução (hipótese) reatribuindo os valores das variáveis do tema na solução atual (pesquisador), enviesado pela informação na litera- tura. A etapa 5 realiza uma busca localizada na solução, limitada pelo tema, explorando as soluções próximas no espaço de decisão e retornando a melhor solução naquela região (tese). A proximidade entre duas soluções no espaço de decisão é definida pela quanti- dade de variáveis de decisão com valores iguais. A etapa 6 envia a tese para o arquivo externo, filtrando as soluções não-dominadas. Adicionalmente, se a tese for uma melhor solução para o subproblema da decomposição do que o pesquisador, a população é atua- lizada, fazendo o pesquisador assumir sua configuração. A etapa 7 atualiza a literatura, armazenando informação útil do estágio atual da busca. Por exemplo, o tema utilizado, os valores das variáveis de decisão e se houve melhoria na solução. A etapa 10 retorna todas as soluções não-dominadas encontradas durante a execução do MOSCA/D para o tomador de decisão.

Apesar de também usar decomposição, o MOSCA/D não pode ser incluído na ca- tegoria do MOEA/D. Suas principais diferenças são o uso de histórico da busca para aprimorar a busca algorítmica, na forma da literatura, e o uso de tema para direcionar o esforço computacional a uma parte específica da solução em cada iteração. O MOSCA/D é uma extensão dos algoritmos científicos, usando o conceito de decomposição do MOEA/D para expandi-los ao contexto multiobjetivo.

Algoritmo 3 MOSCA/D

Entrada: λ // Conjunto de decomposições

Entrada: comunidade_cientif ica // População de soluções Entrada: literatura // Repositório de informação

Saída: estado_da_arte // Aproximação do conjunto de Pareto 1: repita

2: para todo pesquisador em comunidade_cientif ica faça

3: tema ← Selecionar_tema(pesquisador, λpesquisador, literatura)

4: hipotese ← Levantar_hipotese(pesquisador, λpesquisador, tema, literatura)

5: tese ← V erif icar_hipotese(hipotese, λpesquisador, tema, literatura)

6: Aprender(pesquisador, tese, λpesquisador, estado_da_arte)

7: P ublicar(pesquisador, tese, λpesquisador, literatura)

8: fim para

9: até que o critério de parada seja atingido 10: retorne estado_da_arte

3.2

TF-IDF

A medida estatística TF-IDF, ou frequência do termo - inverso da frequência nos documentos, é um valor que visa indicar a importância de uma palavra em um docu- mento contido em uma coleção (LARSON, 2010). Tal valor é frequentemente utilizado na mineração de dados e para ranquear resultados de motores de busca em sistemas de recomendação baseados em texto (RAJARAMAN; ULLMAN, 2011).

O TF-IDF é o produto de duas estatísticas complementares: a frequência do termo, TF, e o inverso da frequência nos documentos, IDF. A TF é proporcional à quantidade de vezes que o termo aparece no documento. O inverso da frequência nos documentos, IDF, é inversamente proporcional à quantidade de documentos em que o termo pode ser encontrado na coleção de documentos. O TF-IDF é calculado para cada termo de cada documento da coleção, permitindo ranquear os documentos pela relevância destes termos.

Seja t um termo, d um documento e ft,da quantidade de vezes em que t ocorre em d,

TF, pode ser definida pela equação 3.1.

T F (t, d) = P ft,d

t0∈dft0,d (3.1)

Seja D uma coleção de documentos, N a cardinalidade de D e nt,D a quantidade de

IDF (t, d) = log N nt,D

(3.2)

O TF-IDF, portanto, é definido pela equação 3.3.

T F -IDF (t, d, D) = T F (t, d) · IDF (t, D) (3.3)

A adaptação do TF-IDF para otimização pode ser realizada trivialmente mapeando os conceitos de um contexto para o outro. Por exemplo, em um problema de otimização combinatória, o TF-IDF pode ser usado para indicar a relevância de uma variável de decisão em uma solução usando o seguinte mapeamento:

• Termo: O valor de uma variável de decisão específica em uma solução.

• Documento: Uma solução do problema.

• Coleção: Um subconjunto de soluções, ou a configuração de uma solução em dife- rentes iterações do algoritmo.

O mapeamento do TF-IDF para o contexto de seleção de temas é realizado na seção 5.3.

Documentos relacionados