Desenvolvimento e Análise Experimental de Algoritmos Evolutivos para o Problema da Clusterização Automática

Tamanho: px
Começar a partir da página:

Download "Desenvolvimento e Análise Experimental de Algoritmos Evolutivos para o Problema da Clusterização Automática"

Transcrição

1 Desenvolvimento e Análise Experimental de Algoritmos Evolutivos para o Problema da Clusterização Automática Thiago de Souza Diogo, Daniel Peregrino Cavalcante Orientador: Luiz Satoru Ochi Instituto de Computação Universidade Federal Fluminense (UFF) Rua Passo da Pátria 156 Niterói RJ Brasil { tdiogo, dcavalcante, dcc.ic.uff.br RESUMO: Clusterização é o processo no qual elementos de um conjunto são alocados para grupos ou clusters de elementos similares. Nos algoritmos de clusterização, usualmente é assumido que o número ideal de clusters é previamente conhecido. Infelizmente em muitas aplicações reais, este número não pode ser definido antecipadamente. Estas versões são conhecidas como Problemas de Clusterização Automática (PCA). Neste trabalho, propomos versões de algoritmos evolutivos (AEs) para a solução do PCA. Resultados computacionais mostram uma maior eficiência e regularidade de versões híbridas incorporando módulos de busca local, reconexão de caminhos e diversificação de populações. Palavras chave: metaheurísticas, clusterização automática, algoritmos evolutivos Abstract Clustering is the process which elements of a set are assigned for groups or clusters of similar elements. In clustering algorithms, it is usually assumed that the number of clusters is known or given. Unfortunately, the optimal number of clusters is unknown for many application of this problem. These problems are known as Automatic Clustering Problems (ACP). In this work we propose versions of the Evolutionary Algorithms (EAs) for ACP. Computational results on a set of instances illustrate the effectiveness and the robustness of the hybrid versions including local search, path relinking and diversification procedures. Keywords: metaheuristics, automatic clustering, evolutionary algorithms 1. Introdução O Problema da Clusterização (PC) ou o Problema de k-clusterização, consiste em determinar o melhor agrupamento de n elementos de uma base de dados em k conjuntos disjuntos, denominados clusters, objetivando alocar em um mesmo cluster elementos altamente similares e alocar em clusters distintos, os elementos que possuem menor similaridade. O PC é considerado um problema NP-Difícil [6] e o número de soluções possíveis é determinado de acordo com a fórmula (1): (1) [2795]

2 Entretanto, em muitas aplicações, o número ideal de clusters não é conhecido previamente, ou seja, o algoritmo de clusterização tem que, determinar o número ideal de clusters e também descobrir a melhor configuração desses clusters. Esta variante do PC obviamente é ainda mais complexa e é conhecida como Problema de Clusterização Automática (PCA). No PCA o tamanho do espaço de busca também cresce exponencialmente como mostrado na fórmula (2): (2) Para dar uma idéia da complexidade deste problema, considere uma base de dados com apenas 10 elementos, a clusterização automática tem que considerar diferentes maneiras de combinar os elementos em um número de clusters que pode variar de 1 a 10. Observando-se a quantidade de soluções do espaço de busca concluímos que a utilização de métodos exatos de otimização não são viáveis na maioria das aplicações reais, incentivando com isso o desenvolvimento de métodos heurísticos eficientes para este problema [1, 2, 3, 4, 6, 8]. Atualmente na literatura são encontradas diversas propostas de heurísticas usando conceitos de Algoritmos Genéticos, GRASP, Busca Tabu entre outros. Entretanto observamos que a maioria destes trabalhos, resolve apenas o PC e não o PCA [1, 4]. A literatura tem mostrado que o uso de modelos tradicionais de Algoritmos Genéticos (sem busca local ou outros módulos adicionais) na solução de problemas NP-Completos não tem trazido resultados muito animadores quando confrontados com outras metaheuristicas [3, 4, 8]. Portanto, essa foi a nossa principal motivação: desenvolver versões eficientes de um algoritmo genético capaz de encontrar soluções de alta qualidade em um tempo de execução aceitável para o PCA. Nesse trabalho consideramos os elementos (objetos) como pontos do plano e para a análise de similaridade utilizamos a distância euclidiana entre os pontos. A determinação da qualidade das soluções é realizada através do uso do critério conhecido como Average Silhouette Width apresentado por Kaufman et al. [6]. A base dos algoritmos aqui propostos, é denotado por BClust que utiliza conceitos de um AG podendo ser acrescidos de módulos de busca local e processos adicionais de diversificação de uma população. O BClust é dividido em quatro etapas: a primeira etapa é a de construção da população inicial. A população representa o espaço de busca corrente do algoritmo e a cada iteração o algoritmo atualiza essa população, visando melhorar a qualidade dos indivíduos. Cada indivíduo representa uma solução para o problema. A segunda etapa, é a etapa em que o algoritmo realiza a evolução da população através da execução de três operadores genéticos de cruzamento e de três operadores de mutação. A terceira etapa consiste em uma busca local através da técnica de Reconexão por Caminhos (pathrelinking) [5] e, por fim, a quarta etapa é a de diversificação da população. Esse procedimento visa manter a heterogeneidade da população, evitando assim uma convergência prematura para um ótimo local ainda muito distante de um ótimo global. 2. Algoritmo BClust O BClust tem como principal objetivo resolver aproximadamente um PCA. Buscamos implementar o algoritmo de forma que pudéssemos acoplar novos módulos, operadores diferentes sem a necessidade de re-compilação, ou seja, nos beneficiamos por utilizarmos uma linguagem orientada a objetos, no caso a escolha foi a linguagem Java. [2796]

3 2.1. Método de construção da população inicial Nessa etapa, colocamos como objetivo não somente gerar uma população de soluções como nos AGs tradicionais, mas principalmente gerar soluções de boa qualidade e com isso tentar reduzir o espaço de busca através da eliminação de soluções iniciais consideradas de baixa qualidade. Dessa forma, podemos esperar que o algoritmo não só parta de soluções de boa qualidade como também que o tempo computacional para obter soluções alvos (solução ótima ou próxima desta) deve ser reduzido consideravelmente. A representação de cada indivíduo é feita através da codificação de um string onde a posição representa o elemento e o conteúdo representa o cluster onde o elemento se encontra. Por exemplo, o seguinte string: AAABBCA indica que os elementos 1,2,3 e 7 estão no cluster A, os elementos 4 e 5 estão no cluster B e o elemento 6 no cluster C. O BClust possui duas formas de criação de solução e a cada geração de um individuo da população, uma das duas formas é selecionada visando aumentar a diversidade da população inicial. A primeira forma (Geração tipo A) utiliza uma estratégia gulosa pois utiliza um fator de afinidade(µ) para todos os pontos ou um fator por ponto do grafo. Existe 50% de chance de um mesmo fator ser utilizado para todos os pontos e 50% de chance de que seja utilizado um fator de afinidade para cada ponto. Essa estratégia foi utilizada na tentativa de simular as relações entre os diferentes tipos de indivíduos que existem na natureza. Após essa definição a vizinhança de cada ponto é calculada buscando com isso detectar áreas de grande densidade. Por exemplo, o ponto a é considerado vizinho do ponto b caso a distância entre eles seja inferior ao produto do fator de afinidade pela distância média (dm) dentre todos os pares de pontos do conjunto, ou seja, a somente será vizinho de b caso a equação (3) seja satisfeita: ( a,b) < µ dm dist (3) Após as vizinhanças de cada ponto terem sido calculadas, os pontos que possuem as maiores vizinhanças são eleitos como embriões de um cluster, isto é, serão as bases dos clusters iniciais. Esse processo tem uma importância direta na determinação do número de clusters da solução gerada. Cada um destes pontos e seus pontos vizinhos são alocadas para um mesmo cluster até que todos os pontos tenham sido agrupados. Uma outra interpretação desta técnica é gerar uma aresta entre dois pontos (vértices) se eles atendem (3). Desta forma, serão formados ao final deste procedimento, conjuntos conexos de diferentes tamanhos e os de maior cardinalidade serão prioritários para serem os embriões dos futuros clusters. Na segunda etapa, as componentes conexas que não são embriões irão se juntar ao embrião mais próximo utilizando o conceito de centróide e vizinho mais próximo, ou seja, uma componente conexa será anexada a um embrião se a distancia entre seus respectivos centróides for mínimo. Este procedimento tem uma importância vital no PCA, pois ele tende a reduzir significativamente a dimensão do conjunto de entrada X. Por exemplo, se X = n e se forem formadas após o uso de (3), m componentes conexas, a dimensão de X será m, valor este normalmente menor que n. A segunda forma (Geração tipo B) é um pouco mais complexa e preza por aumentar a aleatoriedade da solução gerada da seguinte forma: escolhe-se aleatoriamente dois pontos do conjunto X, que chamamos de a e b, e se faz as seguintes verificações após calcular o produto() da distância média(dm) por um fator aleatório que varia de 0.1 a 1.0: Se a e b não estão alocados ainda em nenhum cluster e se a distância entre a e b for inferior a então a e b são inseridos em um novo cluster comum, caso a [2797]

4 segunda inferência não for satisfeita então a e b são inseridos cada um em um novo cluster; Se a está em inserido em um cluster e b ainda não e se a distância entre a e b for inferior a então b é inserido no cluster de a, caso a segunda inferência não for satisfeita então b é inserido em um novo cluster; Se a está em um cluster e b está em outro cluster e a distância entre a e b for inferior a então os dois clusters são reunidos num único cluster, se a segunda inferência não for satisfeita então nada é feito; Se a e b estão no mesmo cluster então nada é alterado; Esse processo prossegue até que todos os vértices sejam alocados em algum cluster. O procedimento de Geração B é mais complexo e, conseqüentemente, possui um tempo computacional maior quando comparado com o procedimento de Geração A. Em ambos os casos (A e B), o número de clusters de uma solução é escolhido de forma aleatória no intervalo [2, n]. Ainda prezando pela escalabilidade do BClust, utilizamos a seguinte estratégia para armazenamento das distâncias entre os elementos: cada elemento possui um identificador e a distância entre elementos diferentes deve ficar armazenada no elemento que possui o menor identificador. Essa idéia foi adotada uma vez que temos um problema de redundância das distâncias entre os elementos A evolução da população Como citado anteriormente, o método utilizado para determinação da qualidade(fitness) de uma solução é o Average Silhouette Width utilizado pela maioria dos autores em PC e PCA [6]. A cada iteração existe a possibilidade de acontecer o cruzamento dentre os indivíduos da população, segundo um parâmetro de entrada (P_CROSS). Caso em uma iteração o cruzamento seja iniciado; então dois indivíduos são selecionados segundo o Método da Roleta, onde os indivíduos mais aptos tem mais chance de serem selecionados. Após a seleção dos indivíduos reprodutores, é o momento de cruzamento entre os selecionados. O BClust possui três operadores de cruzamento, sendo eles definidos a seguir: Cruzamento Janela: Uma intervalo do vetor solução de tamanho aleatório é permutado entre os pais e são gerados dois novos indivíduos; Cruzamento GeneGene: São gerados dois indivíduos filhos escolhendo-se, aleatoriamente, cada gene de um dos dois pais; Cruzamento UmPonto : São gerados dois indivíduos filhos escolhendo-se apenas um ponto p, aleatoriamente, e trocando o DNA dos geradores a partir do ponto p; Os novos indivíduos provenientes do cruzamento são colocados na população que sofrerá a seleção natural. Portanto, a cada processo de cruzamento dois indivíduos podem ser substituídos por novos indivíduos. Isso faz com que a população tenda a evoluir a cada iteração Reconexão por Caminhos A Reconexão de Caminhos (RC) foi proposta originalmente para o Tabu Search e Scatter Search por Glover et al. [5] e apresenta-se como uma técnica de busca intensiva alternativa em relação às buscas tradicionais. Após a atualização da população do AE, caso o número de iterações seja um múltiplo do tamanho da população (N) então o módulo de RC entra em execução, recebendo como solução extrema base a melhor solução atual e como solução alvo uma das k melhores soluções da atual população [2798]

5 escolhidas aleatoriamente; onde k é um parâmetro de entrada. Por se tratar de um processo de intensificação de busca, a RC acaba se tornando a fase mais onerosa em uma execução do AE. Portanto, optamos por executar a RC enquanto as soluções intermediárias encontradas forem melhor que a pior solução extremo (no nosso caso, a solução alvo). Em contrapartida, no sentido de tentar buscar soluções de melhor qualidade, todas as soluções intermediárias de uma RC, sofrem uma busca local, denominada Estabilização da Solução. Este processo nada mais é do que numa dada solução, determinar o centróide de cada cluster e a cada vértice de cada cluster, verificar se ele está no cluster correto, ou seja se o centróide mais próximo a este vértice é o centróide do seu próprio cluster, caso não seja, é feito o remanejamento do vértice ao cluster adequado segundo este critério Diversificação da população Após um certo número de gerações a população de um AG ou AE tende a tornar-se homogênea e isso pode ser um sintoma de que o algoritmo está preso em um ótimo local muitas vezes ainda distante de um ótimo global. Num AG, o papel da diversificação é feito tradicionalmente pelo operador mutação, mas na prática este processo não tem se mostrado eficiente [3, 8]. Na diversificação aqui proposta, um histórico das últimas gerações do AE é armazenado com o intuito de informar ao BClust que a população está estagnada e que é o momento da execução da diversificação. Esse histórico é um contador () que é incrementado a cada iteração que a solução best (melhor solução encontrada até o momento) não é atualizada. Quando ultrapassa o número de indivíduos da população então a diversificação é ativada. A diversificação utiliza como base o conjunto elite da população composto por um grupo das 33% melhores soluções da população atual. A população corrente é totalmente descartada, sendo reconstruída em seguida incluindo inicialmente todo o conjunto elite, outros 33% por um processo denominado Criação por Janelas Aleatórias, onde janelas de DNA de tamanho aleatório são escolhidas de indivíduos elite, também escolhidos de forma aleatória. Neste caso, o restante dos genes de cada individuo (fora da janela), é inserido usando a geração tipo A ou B.Finalmente, os outros 34% dos indivíduos da nova população são gerados novamente como o processo inicial, Geração tipo A e Geração tipo B(Restart da população). A idéia deste processo de diversificação, é obter uma nova população heterogênea de indivíduos mas preservando informações das melhores soluções geradas até o momento. Neste contexto, são propostos neste trabalho quatro versões do algoritmo BClust, sendo elas AE1 (a versão básica); AE2 a versão com apenas a Reconexão por Caminhos; AE3 a versão com Reconexão por Caminhos com Busca Local acoplada nas soluções intermediárias e, finalmente, AE4 a versão com Reconexão por Caminhos e Busca Local acoplada e com o Operador de Diversificação da população. 3. Resultados computacionais Com o intuito de avaliar o desempenho empírico dos algoritmos aqui propostos, foram gerados diferentes tipos de instâncias do PCA. Devido à inexistência ou dificuldade de se obter instâncias da literatura, inicialmente foi desenvolvido uma ferramenta gráfica auxiliar que possibilita a visualização do resultado gerado e possibilita gravar estes num arquivo no formato XML. As instâncias analisadas possuem dimensão entre 50 e 1000 vértices. Para cada dimensão foram criadas 5 instâncias, exceto para a instância de 1000 vértices, onde foi criada uma instância. Essas instâncias foram nomeadas de acordo com o grau de dificuldade que adotamos, ou seja, a letra F no [2799]

6 nome representa uma instância que consideramos fácil (normalmente clusters esféricos e sem ruídos), M representa uma instância que consideramos de média dificuldade e, por fim, a letra D que representa as instâncias que acreditamos serem difíceis (normalmente clusters não esféricos e com ruídos). Os resultados da tabela 1, mostram como AEs podem ser beneficiados com a inclusão de módulos adicionais. Por exemplo, em termos de resultados médios, o AE1 não obteve nenhuma melhor média, enquanto AE2 obteve 3; AE3 com 4 e o AE4 obteve 13 melhores médias em 20 instâncias. Em relação aos tempos gastos, como era de se esperar, usando um critério de parada número máximo de iterações, os tempos exigidos pelas versões mais sofisticadas tendem a ser maiores, mas outros testes com diferentes critérios de parada que estão sendo implementadas tais como alcance de um valor alvo, mostram que versões como AE3 e principalmente o AE4, convergem muito mais rapidamente que as versões AE1 e AE2. Instância AE1 AE2 AE3 AE4 B QM TM B QM TM B QM TM B QM TM 50FA 0,894 0,743 1,130 0,894 0,712 0,984 0,894 0,671 1,060 0,894 0,761 1,260 50FB 0,889 0,772 1,223 0,904 0,780 1,113 0,904 0,747 0,922 0,889 0,778 1,330 50MA 0,727 0,617 1,276 0,760 0,645 0,798 0,757 0,633 1,035 0,740 0,631 1,041 50MB 0,913 0,772 1,099 0,913 0,766 1,298 0,943 0,704 1,241 0,913 0,812 1,397 50D 0,794 0,635 0,951 0,794 0,652 1,108 0,823 0,704 1,019 0,794 0,665 1, FA 0,603 0,569 3,070 0,618 0,575 3,052 0,623 0,574 3,523 0,623 0,577 3, FB 0,645 0,549 1,585 0,653 0,559 2,652 0,645 0,583 2,545 0,671 0,598 3, MA 0,626 0,609 1,969 0,626 0,617 2,256 0,626 0,614 2,097 0,626 0,618 2, MB 0,510 0,493 3,996 0,528 0,507 4,408 0,546 0,508 4,425 0,533 0,509 6, D 0,585 0,451 3,336 0,641 0,508 4,427 0,622 0,510 4,889 0,641 0,522 5, FA 0,549 0,462 11,001 0,567 0,497 55,344 0,572 0,500 73,176 0,563 0,496 71, FB 0,554 0,499 9,251 0,569 0,511 44,562 0,572 0,514 40,639 0,553 0,522 62, MA 0,403 0,332 9,266 0,466 0,381 71,233 0,525 0,396 66,176 0,490 0,395 63, MB 0,563 0,485 11,347 0,604 0,550 60,207 0,604 0,560 72,953 0,600 0,567 64, D 0,441 0,376 8,077 0,522 0,439 92,701 0,458 0,416 63,584 0,508 0,433 75, FA 0,585 0,460 21,906 0,549 0, ,091 0,538 0, ,268 0,545 0, , FB 0,365 0,317 22,567 0,534 0, ,489 0,506 0, ,840 0,539 0, , MA 0,343 0,308 22,937 0,402 0, ,581 0,411 0, ,652 0,414 0, , MB 0,387 0,315 22,231 0,474 0, ,408 0,458 0, ,670 0,476 0, , D 0,399 0,327 35,426 0,446 0, ,116 0,446 0, ,826 0,463 0, , D 0,425 0,409 97,402 0,486 0, ,350 0,487 0, ,003 0,477 0, ,284 Tabela 1: Resultados obtidos, onde B representa o valor da melhor solução encontrada pelo algoritmo; QM a qualidade média das soluções encontradas e TM o tempo médio em segundos de cada versão do algoritmo. Pelos resultados ilustrados na tabela 1, fica evidente que o AE3 e o AE4 possuem o melhor desempenho em termos da melhor solução alcançada e o AE4 é superior no tocante a média das soluções geradas em cada instância. Isso mostra a sua regularidade em gerar soluções de boa qualidade. Para ilustrar a diferença no desempenho entre o modelo mais simples (AE1) e o mais sofisticado (AE4), ilustramos algumas soluções geradas pelos mesmos como mostrado nas figuras 1 a 4. Nas figuras 1 e 2, podemos verificar o desempenho dos algoritmos AE1 e AE4 respectivamente numa instância considerada difícil (clusters não esféricos). Neste caso, o número ideal de clusters é 8 (cada cluster representa um número, e a idéia é cada algoritmo numerar os pontos de cada cluster com um mesmo número, exemplo: cluster 1 é formado por vários números 5 na figura 1). O AE1, embora tenha obtido uma boa solução, obtendo 8 clusters, não conseguiu identificar os clusters 2 e 3 corretamente. O AE4 por sua vez, obteve 8 clusters corretamente (figura 2). [2800]

7 Figura 1: Solução gerada pelo AE1 Figura 2: Solução gerada pelo AE4 As figuras 3 e 4 ilustram o resultado do AE4 em outras instâncias com clusters não esféricos. Os resultados mostram a eficiência do AE4 em localizar clusters densos de formas variadas, bem como identificar corretamente cada cluster. Figura 3: Solução gerada pelo AE4 [2801]

8 Figura 4: Solução gerada pelo AE4 4. Conclusões Este trabalho apresentou propostas e análise empírica de diferentes versões de um algoritmo evolutivo proposto para a solução do PCA. Neste contexto foram desenvolvidos desde versões básicas de AE1, e versões com módulos adicionais: AE2, AE3 e AE4. O que foi percebido, é que à medida que novos módulos são incluídos, os resultados em termos de qualidade são melhorados na média. E a melhor versão foi a AE4, que inclui os módulos de Reconexão de Caminhos com Busca Local sobre as soluções intermediárias além do Mecanismo de diversificação da população. Obviamente existe um aumento nos tempos computacionais, mas isso na prática pode ser bem absorvido se trabalharmos com outros critérios de parada tais como: tempo máximo de execução e/ou um valor alvo a ser alcançado. Em testes preliminares (ainda em desenvolvimento), já percebemos que apesar das versões mais sofisticadas como o AE4 ter o trabalho computacional por iteração mais onerosa, este necessita de um número bem menor que as versões mais simples como o AE1 e AE2, obtendo com isso uma convergência empírica mais rápida para um valor alvo. Além disso percebemos nestes testes que se colocarmos um valor alvo difícil versões mais simples tais como AE1 e AE2 não convergem enquanto AE4 sempre converge. Desta forma acreditamos que os métodos híbridos apresentados são boas alternativas para a solução de problemas de elevada complexidade computacional como é o caso do PCA. 5. Bibliografia [1] Berkhin, P. Survey of Clustering Data Mining Techniques. Accrue Software, [2] Chiun, Y. and, Lan, L. W. Genetic Clustering Algorithms. European Journal of Operational Research (135) 2, pp , [3] Dias, C. R. and Ochi, L. S. Efficient Evolutionary Algorithms for the Clustering Problem. In Proc. of the IEEE Congress on Evolutionary Computation (IEEE-CEC 2003) (em CD-ROM), Canberra, Australia, [4] Fasulo, D. An Analysis of Recent Work on Clustering Algorithms. Technical Report, Dept. of Computer Science and Engineering, Univ. of Washington, [5] Glover, F., Laguna, M., e Martí, R. Scatter Search. Publisher Springer-Verlag New York, Inc. New York, NY, USA, [6] Kaufman, L. and Rousseau, P. J. Finding Groups in Data - An Introduction to Cluster Analyses, Wiley Series in Probability and Mathematical Statistics, John Wiley and Sons, [7] Michalewicz, Z. Genetic Algorithms + Data Structures = Evolution Programs. Springer, [8] Trindade, A. R., e Ochi, L. S. Um algoritmo evolutivo híbrido para a formação de células de manufatura em sistemas de produção. Revista Pesquisa Operacional, 26(2), pp , [2802]

Aplicação da metaheurística GRASP com uso da técnica de reconexão por caminhos para o problema de Clusterização Automática em Grafos

Aplicação da metaheurística GRASP com uso da técnica de reconexão por caminhos para o problema de Clusterização Automática em Grafos Aplicação da metaheurística GRASP com uso da técnica de reconexão por caminhos para o problema de Clusterização Automática em Grafos Rodrigo de Carvalho (UFOP) rocarvalho@decea.ufop.br Geiza Cristina da

Leia mais

5 VNS com Filtro e Reconexão por Caminhos

5 VNS com Filtro e Reconexão por Caminhos 5 VNS com Filtro e Reconexão por Caminhos A metaheurística VNS (Variable Neighborhood Search) foi proposta por Mladenović e Hansen [40] e possui como idéia básica a mudança de vizinhanças realizada da

Leia mais

Desenvolvimento e Análise Experimental de Algoritmos Evolutivos para o Problema de Clusterização Automática em Grafos Orientados

Desenvolvimento e Análise Experimental de Algoritmos Evolutivos para o Problema de Clusterização Automática em Grafos Orientados Desenvolvimento e Análise Experimental de Algoritmos Evolutivos para o Problema de Clusterização Automática em Orientados C. Rodrigo Dias e Luiz S. Ochi Instituto de Computação, Universidade Federal Fluminense,

Leia mais

Uma Introdução à Busca Tabu André Gomes

Uma Introdução à Busca Tabu André Gomes Uma Introdução à Busca Tabu André Gomes Departamento de Ciência da Computação, Instituto de Matemática e Estatística, Universidade de São Paulo, SP, Brasil Novembro de 2009 INTRODUÇÃO Método de Busca Local

Leia mais

Problemas de otimização

Problemas de otimização Problemas de otimização Problemas de decisão: Existe uma solução satisfazendo certa propriedade? Resultado: sim ou não Problemas de otimização: Entre todas as soluções satisfazendo determinada propriedade,

Leia mais

3. Resolução de problemas por meio de busca

3. Resolução de problemas por meio de busca Inteligência Artificial - IBM1024 3. Resolução de problemas por meio de busca Prof. Renato Tinós Local: Depto. de Computação e Matemática (FFCLRP/USP) 1 Principais Tópicos 3. Resolução de problemas por

Leia mais

1. Computação Evolutiva

1. Computação Evolutiva Computação Bioinspirada - 5955010-1 1. Computação Evolutiva Prof. Renato Tinós Depto. de Computação e Matemática (FFCLRP/USP) 1 1.7. Outras Metaheurísticas Populacionais 1.7.1. Metaheurísticas Populacionais

Leia mais

Dalessandro Soares Vianna. Heurísticas híbridas para o problema da filogenia TESE DE DOUTORADO. Informática DEPARTAMENTO DE INFORMÁTICA

Dalessandro Soares Vianna. Heurísticas híbridas para o problema da filogenia TESE DE DOUTORADO. Informática DEPARTAMENTO DE INFORMÁTICA Dalessandro Soares Vianna Heurísticas híbridas para o problema da filogenia TESE DE DOUTORADO DEPARTAMENTO DE INFORMÁTICA ProgramadePós graduação em Informática Rio de Janeiro Fevereiro de 2004 Dalessandro

Leia mais

1. Computação Evolutiva

1. Computação Evolutiva Computação Bioinspirada - 5955010-1 1. Computação Evolutiva Prof. Renato Tinós Programa de Pós-Graduação Em Computação Aplicada Depto. de Computação e Matemática (FFCLRP/USP) 2 Computação Bioinspirada

Leia mais

4 Métodos Existentes. 4.1 Algoritmo Genético

4 Métodos Existentes. 4.1 Algoritmo Genético 61 4 Métodos Existentes A hibridização de diferentes métodos é em geral utilizada para resolver problemas de escalonamento, por fornecer empiricamente maior eficiência na busca de soluções. Ela pode ser

Leia mais

HEURÍSTICA BASEADA EM BUSCA LOCAL ITERADA PARA A RESOLUÇÃO DO PROBLEMA DE AGRUPAMENTO DE SISTEMAS ORIENTADOS A OBJETOS

HEURÍSTICA BASEADA EM BUSCA LOCAL ITERADA PARA A RESOLUÇÃO DO PROBLEMA DE AGRUPAMENTO DE SISTEMAS ORIENTADOS A OBJETOS HEURÍSTICA BASEADA EM BUSCA LOCAL ITERADA PARA A RESOLUÇÃO DO PROBLEMA DE AGRUPAMENTO DE SISTEMAS ORIENTADOS A OBJETOS Gustavo Silva Semaan Instituto de Computação Universidade Federal Fluminense (IC-UFF)

Leia mais

Algoritmos Genéticos e Evolucionários

Algoritmos Genéticos e Evolucionários Algoritmos Genéticos e Evolucionários Djalma M. Falcão COPPE/UFRJ PEE e NACAD falcao@nacad.ufrj.br http://www.nacad.ufrj.br/~falcao/ http://www.nacad.ufrj.br/~falcao/ag/ag.htm Resumo do Curso Introdução

Leia mais

Introdução aos Algoritmos Genéticos

Introdução aos Algoritmos Genéticos Introdução aos Algoritmos Genéticos Prof. Matheus Giovanni Pires EXA 868 Inteligência Artificial Não-Simbólica B Universidade Estadual de Feira de Santana 2 Algoritmos Genéticos: Introdução Introduzidos

Leia mais

Inteligência Artificial. Algoritmos Genéticos. Aula I Introdução

Inteligência Artificial. Algoritmos Genéticos. Aula I Introdução Universidade Estadual do Oeste do Paraná Curso de Bacharelado em Ciência da Computação Inteligência Artificial Algoritmos Genéticos Aula I Introdução Roteiro Introdução Computação Evolutiva Algoritmos

Leia mais

Organização. 1. Introdução 2. Medidas de Similaridade. hierárquicos, de partição) 4. Critérios numéricos para definir o número de clusters

Organização. 1. Introdução 2. Medidas de Similaridade. hierárquicos, de partição) 4. Critérios numéricos para definir o número de clusters Organização. Introdução 2. Medidas de Similaridade 3. Métodos de Agrupamento (métodos hierárquicos, de partição) 4. Critérios numéricos para definir o número de clusters Métodos de Partição Cada exemplo

Leia mais

1. Computação Evolutiva

1. Computação Evolutiva Computação Bioinspirada - 5955010-1 1. Computação Evolutiva Prof. Renato Tinós Programa de Pós-Graduação Em Computação Aplicada Depto. de Computação e Matemática (FFCLRP/USP) 2 Computação Bioinspirada

Leia mais

Proposta e Avaliação Experimental de Heurísticas GRASP para um Problema de Escalonamento de Veículos

Proposta e Avaliação Experimental de Heurísticas GRASP para um Problema de Escalonamento de Veículos Proposta e Avaliação Experimental de Heurísticas GRASP para um Problema de Escalonamento de Veículos Viviane de Aragão Trindade Instituto de Computação Universidade Federal Fluminense Rua Passo da Pátria,

Leia mais

Algoritmos Genéticos. Pontos fracos dos métodos tradicionais. Características de alguns problemas. Tamanho do espaço de busca- Ex. caixeiro viajante:

Algoritmos Genéticos. Pontos fracos dos métodos tradicionais. Características de alguns problemas. Tamanho do espaço de busca- Ex. caixeiro viajante: Algoritmos Genéticos Prof. Luis Otavio Alvares INE/UFSC Características de alguns problemas Tamanho do espaço de busca- Ex. caixeiro viajante: 10 cidades: 181.000 soluções 20 cidades: 10.000.000.000.000

Leia mais

1. Computação Evolutiva

1. Computação Evolutiva Computação Bioinspirada - 5955010-1 1. Computação Evolutiva Prof. Renato Tinós Programa de Pós-Graduação Em Computação Aplicada Depto. de Computação e Matemática (FFCLRP/USP) 2 Computação Bioinspirada

Leia mais

Um Algoritmo de Otimização Aplicado ao Problema de Estratificação Univariada. José André de Moura Brito

Um Algoritmo de Otimização Aplicado ao Problema de Estratificação Univariada. José André de Moura Brito Um Algoritmo de Otimização Aplicado ao Problema de Estratificação Univariada José André de Moura Brito Escola Nacional de Ciências Estatísticas - ENCE Rua André Cavalcanti,106 - sala 403 -Santa Teresa,

Leia mais

Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação

Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Francisco A. Rodrigues Departamento de Matemática Aplicada e Estatística - SME Conceitos básicos Classificação não-supervisionada:

Leia mais

Computação Evolutiva Eduardo do Valle Simões Renato Tinós ICMC - USP

Computação Evolutiva Eduardo do Valle Simões Renato Tinós ICMC - USP Computação Evolutiva Eduardo do Valle Simões Renato Tinós ICMC - USP 1 Principais Tópicos Introdução Evolução Natural Algoritmos Genéticos Aplicações Conclusão 2 Introdução http://www.formula-um.com/ Como

Leia mais

Algoritmos Genéticos

Algoritmos Genéticos Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Algoritmos Genéticos Aluno: Fabricio Aparecido Breve Prof.: Dr. André Ponce de Leon F. de Carvalho São Carlos São Paulo Maio

Leia mais

Exemplo de Aplicação de Algoritmos Genéticos. Prof. Juan Moisés Mauricio Villanueva cear.ufpb.br/juan

Exemplo de Aplicação de Algoritmos Genéticos. Prof. Juan Moisés Mauricio Villanueva cear.ufpb.br/juan Exemplo de Aplicação de Algoritmos Genéticos Prof. Juan Moisés Mauricio Villanueva jmauricio@cear.ufpb.br cear.ufpb.br/juan Estrutura do Algoritmo Genético Algoritmo genético Inicio t = 0 inicializar P(t)

Leia mais

Computação Evolutiva. Computação Evolutiva. Principais Tópicos. Evolução natural. Introdução. Evolução natural

Computação Evolutiva. Computação Evolutiva. Principais Tópicos. Evolução natural. Introdução. Evolução natural Computação Evolutiva Eduardo do Valle Simões Renato Tinós ICMC - USP Principais Tópicos Introdução Evolução Natural Algoritmos Genéticos Aplicações Conclusão 1 2 Introdução Evolução natural http://www.formula-um.com/

Leia mais

CAP 254 CAP 254. Otimização Combinatória. Professor: Dr. L.A.N. Lorena. Assunto: Metaheurísticas Antonio Augusto Chaves

CAP 254 CAP 254. Otimização Combinatória. Professor: Dr. L.A.N. Lorena. Assunto: Metaheurísticas Antonio Augusto Chaves CAP 254 CAP 254 Otimização Combinatória Professor: Dr. L.A.N. Lorena Assunto: Metaheurísticas Antonio Augusto Chaves Conteúdo C01 Simulated Annealing (20/11/07). C02 Busca Tabu (22/11/07). C03 Colônia

Leia mais

Inteligência Artificial

Inteligência Artificial Inteligência Artificial Aula 6 Algoritmos Genéticos M.e Guylerme Velasco Roteiro Introdução Otimização Algoritmos Genéticos Representação Seleção Operadores Geneticos Aplicação Caixeiro Viajante Introdução

Leia mais

Busca Guiada por Agrupamentos aplicada à Alocação de Berços em Portos com Restrições de Navegabilidade

Busca Guiada por Agrupamentos aplicada à Alocação de Berços em Portos com Restrições de Navegabilidade Busca Guiada por Agrupamentos aplicada à Alocação de Berços em Portos com Restrições de Navegabilidade Moisés R. dos Santos 1, Marcelo B. do Nascimento 2, Alexandre C. M. de Oliveira 3 1 Curso de Ciência

Leia mais

Algoritmos Genéticos

Algoritmos Genéticos Algoritmos Genéticos Roteiro Introdução Algoritmos Genéticos Otimização Representação Seleção Operadores Genéticos Aplicação Caixeiro Viajante Introdução Algoritmos Genéticos (AGs), são métodos de otimização

Leia mais

INSTITUTO DE PÓS GRADUAÇÃO ICPG GESTÃO DA TECNOLOGIA DA INFORMAÇÃO

INSTITUTO DE PÓS GRADUAÇÃO ICPG GESTÃO DA TECNOLOGIA DA INFORMAÇÃO INSTITUTO DE PÓS GRADUAÇÃO ICPG GESTÃO DA TECNOLOGIA DA INFORMAÇÃO Prof. Msc. Saulo Popov Zambiasi (saulopz@gmail.com) Informação - ICPG - Criciuma - SC 1 Características Gerais, operadores, algoritmo.

Leia mais

Um Algoritmo Genético com Aprendizado por Reforço Simples aplicado ao problema do Mundo de Grid

Um Algoritmo Genético com Aprendizado por Reforço Simples aplicado ao problema do Mundo de Grid 1 Um Algoritmo Genético com Aprendizado por Reforço Simples aplicado ao problema do Mundo de Grid Luciana Conceição Dias Campos Resumo Este trabalho consiste da aplicação de um algoritmo genético ao método

Leia mais

Introdução ao Algoritmo Genético

Introdução ao Algoritmo Genético Introdução ao Algoritmo Genético Sadao Massago Agosto de 2013 1 Introdução O algoritmo genético é um método de otimização bio insperado, desenvolvida por John Henry Holland em 1975. Segundo a teoria evolucionária

Leia mais

Modelo de Algoritmo Genético para o Escalonamento de Tarefas em uma Arquitetura Multiprocessadora

Modelo de Algoritmo Genético para o Escalonamento de Tarefas em uma Arquitetura Multiprocessadora Modelo de Algoritmo Genético para o Escalonamento de Tarefas em uma Arquitetura Multiprocessadora Autor: Adilmar Coelho Dantas 1, Orientador: Márcia Aparecida Fernandes 1 1 Programa de Pós-Graduação em

Leia mais

Apresentado e Publicado nos Anais do XXXV Simpósio Brasileiro de Pesquisa Operacional

Apresentado e Publicado nos Anais do XXXV Simpósio Brasileiro de Pesquisa Operacional MELHORANDO O DESEMPENHO DE METAHEURÍSTICAS GRASP E ALGORITMOS EVOLUTIVOS : UMA APLICAÇÃO PARA O PROBLEMA DE ÁRVORE DE CUSTO MÍNIMO COM GRUPAMENTOS Bruno Bastos Lima, Fernando Lourenço Pinho Costa, Luiz

Leia mais

Avaliação de Heurísticas de Melhoramento e da Metaheurística Busca Tabu para Solução de PRV

Avaliação de Heurísticas de Melhoramento e da Metaheurística Busca Tabu para Solução de PRV Avaliação de Heurísticas de Melhoramento e da Metaheurística Busca Tabu para Solução de PRV Eliseu Celestino Schopf 1, Claudio Schepke 1, Marcus Lucas da Silva 1, Pablo Furlan da Silva 1 1 Centro de Eletrônica

Leia mais

Um Algoritmo Genético para o Problema de Roteamento de Veículos com Janelas de Tempo

Um Algoritmo Genético para o Problema de Roteamento de Veículos com Janelas de Tempo Um Algoritmo Genético para o Problema de Roteamento de Veículos com Janelas de Tempo Francisco Henrique de Freitas Viana Pontifícia Universidade Católica do Rio de Janeiro PUC-Rio Departamento de Informática

Leia mais

Universidade Federal Fluminense

Universidade Federal Fluminense Universidade Federal Fluminense Um GRASP com Reconexão de Caminhos para a Solução do Problema da Maximização da Diversidade Marcos Ribeiro Quinet de Andrade Niterói, RJ BRASIL Dezembro de 2004 Marcos Ribeiro

Leia mais

3 Algoritmos Genéticos

3 Algoritmos Genéticos Técnicas de Inteligência Computacional 33 3 Algoritmos Genéticos Este capítulo resume os principais conceitos sobre o algoritmo evolucionário empregado nesta dissertação. É apresentada uma breve explicação

Leia mais

Universidade Federal do Paraná UFPR Curso de Ciência da Computação CI801 Tópicos em Inteligência Artificial. Algoritmo Memético

Universidade Federal do Paraná UFPR Curso de Ciência da Computação CI801 Tópicos em Inteligência Artificial. Algoritmo Memético Universidade Federal do Paraná UFPR Curso de Ciência da Computação CI801 Tópicos em Inteligência Artificial Algoritmo Memético aplicação para o problema do caixeiro viajante Kelly Rodrigues Abreu Federico

Leia mais

ALGORITMO GENÉTICO PARA O PROBLEMA DA ÁRVORE GERADORA MÍNIMA GENERALIZADO

ALGORITMO GENÉTICO PARA O PROBLEMA DA ÁRVORE GERADORA MÍNIMA GENERALIZADO ! "#$ " %'&)(*&)+,.- /10.2*&4365879&4/1:.+58;.2*=?5.@A2*3B;.- C)D 5.,.5FE)5.G.+ &4- (IHJ&?,.+ /?=)5.KA:.+5MLN&OHJ5F&4E)2*EOHJ&)(IHJ/)G.- D - ;./);.& ALGORITMO GENÉTICO PARA O PROBLEMA DA ÁRVORE GERADORA

Leia mais

Pós-Graduação em Engenharia de Automação Industrial SISTEMAS INTELIGENTES PARA AUTOMAÇÃO

Pós-Graduação em Engenharia de Automação Industrial SISTEMAS INTELIGENTES PARA AUTOMAÇÃO Pós-Graduação em Engenharia de Automação Industrial SISTEMAS INTELIGENTES PARA AUTOMAÇÃO AULA 06 Algoritmos Genéticos Sumário Introdução Inteligência Artificial (IA) Algoritmos Genéticos Aplicações de

Leia mais

CAP 254 CAP 254. Otimização Combinatória. Professor: Dr. L.A.N. Lorena. Assunto: Metaheurísticas Antonio Augusto Chaves

CAP 254 CAP 254. Otimização Combinatória. Professor: Dr. L.A.N. Lorena. Assunto: Metaheurísticas Antonio Augusto Chaves CAP 254 CAP 254 Otimização Combinatória Professor: Dr. L.A.N. Lorena Assunto: Metaheurísticas Antonio Augusto Chaves Conteúdo C01 Simulated Annealing (20/11/07). C02 Busca Tabu (22/11/07). C03 Colônia

Leia mais

3 Metaeurísticas e Resolvedores MIP

3 Metaeurísticas e Resolvedores MIP 3 Metaeurísticas e Resolvedores MIP A combinação entre metaeurísticas e resolvedores MIP é uma estratégia relativamente recente, tendo seus primeiros estudos realizados ao longo da última década. O survey

Leia mais

Pesquisa Operacional Aplicada à Mineração

Pesquisa Operacional Aplicada à Mineração Pesquisa Operacional Aplicada à Mineração Módulo de Otimização Parte II-b Prof. Marcone J. F. Souza Prof. Túlio A. M. Toffolo marcone.freitas@yahoo.com.br tulio@toffolo.com.br Departamento de Computação

Leia mais

Análise da Performance de um Modelo de Escalonamento Baseado em Pesquisa Tabu Aplicado em um Sistema de Manufatura Flexível

Análise da Performance de um Modelo de Escalonamento Baseado em Pesquisa Tabu Aplicado em um Sistema de Manufatura Flexível Análise da Performance de um Modelo de Escalonamento Baseado em Pesquisa Tabu Aplicado em um Sistema de Manufatura Flexível Antonio G. RODRIGUES, Leandro T. HOFFMANN e Arthur T. GÓMEZ Universidade do Vale

Leia mais

7 Experimentos Computacionais

7 Experimentos Computacionais 7 Experimentos Computacionais Este capítulo objetiva validar a estratégia de paralelização hierárquica distribuída e o middleware de gerenciamento metaeasygrid propostos nesta tese. Ambos foram integrados

Leia mais

3 Algoritmos Genéticos

3 Algoritmos Genéticos Algoritmos Genéticos Algoritmos Genéticos (AGs) constituem um mecanismo de busca adaptativa que se baseia no princípio Darwiniano de seleção natural e reprodução genética [101]. AGs são tipicamente empregados

Leia mais

Algoritmo Evolutivo para o Problema de Corte de Estoque Unidimensional com Redução do Número de Padrões de Corte

Algoritmo Evolutivo para o Problema de Corte de Estoque Unidimensional com Redução do Número de Padrões de Corte Algoritmo Evolutivo para o Problema de Corte de Estoque Unidimensional com Redução do Número de Padrões de Corte Henrique A. Kobersztajn 1, Kelly C. Poldi 2, Instituto de Ciência e Tecnologia, Unifesp

Leia mais

Buscas Informadas ou Heurísticas - Parte III

Buscas Informadas ou Heurísticas - Parte III Buscas Informadas ou Heurísticas - Parte III Prof. Cedric Luiz de Carvalho Instituto de Informática - UFG Mestrado em Ciência da Computação / 2006 BUSCA SMA* (Simplified Memory-Bounded A*) BUSCA SMA* (Simplified

Leia mais

Algoritmos Genéticos. Princípio de Seleção Natural. Sub-áreas da Computação Evolutiva. Idéias básicas da CE. Computação Evolutiva

Algoritmos Genéticos. Princípio de Seleção Natural. Sub-áreas da Computação Evolutiva. Idéias básicas da CE. Computação Evolutiva Computação Evolutiva Algoritmos Genéticos A computação evolutiva (CE) é uma área da ciência da computação que abrange modelos computacionais inspirados na Teoria da Evolução das Espécies, essencialmente

Leia mais

Breve Avaliação de Parâmetros básicos de Algoritmos Genéticos

Breve Avaliação de Parâmetros básicos de Algoritmos Genéticos https://eventos.utfpr.edu.br//sicite/sicite17/index Breve Avaliação de Parâmetros básicos de Algoritmos Genéticos RESUMO Stéfanie Caroline Pereira Dekker stefanie.c.dekker@gmail.com Universidade Tecnológica

Leia mais

RESOLUÇÃO DO PROBLEMA DAS P-MEDIANAS POR MEIO DE ALGORITMOS BASEADOS EM GRASP, ILS E MULTI-START

RESOLUÇÃO DO PROBLEMA DAS P-MEDIANAS POR MEIO DE ALGORITMOS BASEADOS EM GRASP, ILS E MULTI-START RESOLUÇÃO DO PROBLEMA DAS P-MEDIANAS POR MEIO DE ALGORITMOS BASEADOS EM GRASP, ILS E MULTI-START Gustavo Marques Zeferino, Flaviana M. de S. Amorim, Marcone Jamilson Freitas Souza, Moacir F. de F. Filho

Leia mais

GRASP COM MEMÓRIA ADAPTATIVA PARA O PROBLEMA DA ÁRVORE DE COBERTURA MÍNIMA GENERALIZADO

GRASP COM MEMÓRIA ADAPTATIVA PARA O PROBLEMA DA ÁRVORE DE COBERTURA MÍNIMA GENERALIZADO GRASP COM MEMÓRIA ADAPTATIVA PARA O PROBLEMA DA ÁRVORE DE COBERTURA MÍNIMA GENERALIZADO Cristiane Maria Santos Ferreira Instituto de Computação - Universidade Federal Fluminense Rua Passo da Pátria 156

Leia mais

Um Estudo Empírico de Hiper-Heurísticas

Um Estudo Empírico de Hiper-Heurísticas Flávio Soares Corrêa da Silva (Orientador) Instituto de Matemática e Estatística Universidade de São Paulo Julho de 2007 Definição de Hiper-Heurística Para Que Servem Dois Exemplos Definição Uma hiper-heurística

Leia mais

Análise de Desempenho de Estratégias de Particionamento de Grafos

Análise de Desempenho de Estratégias de Particionamento de Grafos Análise de Desempenho de Estratégias de Particionamento de Grafos Diogo T. Murata, Rodrigo M. Martins, Vanderson M. do Rosario, Anderson F. da Silva 1 Departamento de Informática - Universidade Estadual

Leia mais

Igor Ribeiro Sucupira (Aluno de Mestrado)

Igor Ribeiro Sucupira (Aluno de Mestrado) Busca Dispersa e Reconexão de Caminhos Igor Ribeiro Sucupira (Aluno de Mestrado) Departamento de Ciência da Computação Instituto de Matemática e Estatística Universidade de São Paulo São Paulo - 2005 Sumário

Leia mais

Introdução aos Problemas de Roteirização e Programação de Veículos

Introdução aos Problemas de Roteirização e Programação de Veículos Introdução aos Problemas de Roteirização e Programação de Veículos PNV-2450 André Bergsten Mendes HEURÍSTICA DE INSERÇÃO DE SOLOMON (VRPTW) Exercício Para o problema de roteirização com janela de tempo

Leia mais

Problema do vendedor: uma abordagem via algoritmos genéticos

Problema do vendedor: uma abordagem via algoritmos genéticos Problema do vendedor: uma abordagem via algoritmos genéticos Dandara de Almeida Machado 1, Juliana Verga Shirabayashi 1 1 Universidade Federal do Paraná (UFPR) Campus Jandaia do Sul dandaraalmeidaa@gmail.com;

Leia mais

DETERMINAÇÃO DE FUNÇÕES DE TRANSFERÊNCIA DE PROCESSOS QUÍMICOS ATRAVÉS DO MÉTODO DE EVOLUÇÃO DIFERENCIAL UTILIZANDO O SCILAB

DETERMINAÇÃO DE FUNÇÕES DE TRANSFERÊNCIA DE PROCESSOS QUÍMICOS ATRAVÉS DO MÉTODO DE EVOLUÇÃO DIFERENCIAL UTILIZANDO O SCILAB DETERMINAÇÃO DE FUNÇÕES DE TRANSFERÊNCIA DE PROCESSOS QUÍMICOS ATRAVÉS DO MÉTODO DE EVOLUÇÃO DIFERENCIAL UTILIZANDO O SCILAB A. H. R. REZENDE 1, D. L. SOUZA 1 1 Universidade Federal do Triângulo Mineiro,

Leia mais

CRIVO QUADRÁTICO: IMPLEMENTAÇÃO DA OBTENÇÃO DE UM CONJUNTO DE NÚMEROS COMPLETAMENTE FATORADOS SOBRE UMA BASE DE FATORES

CRIVO QUADRÁTICO: IMPLEMENTAÇÃO DA OBTENÇÃO DE UM CONJUNTO DE NÚMEROS COMPLETAMENTE FATORADOS SOBRE UMA BASE DE FATORES CRIVO QUADRÁTICO: IMPLEMENTAÇÃO DA OBTENÇÃO DE UM CONJUNTO DE NÚMEROS COMPLETAMENTE FATORADOS SOBRE UMA BASE DE FATORES Alex Zanella Zaccaron1; Adriana Betânia de Paula Molgora2 1Estudante do Curso de

Leia mais

Otimização por Colônia de Formigas (Ant Colony Optimization - ACO)

Otimização por Colônia de Formigas (Ant Colony Optimization - ACO) Otimização por Colônia de Formigas (Ant Colony Optimization - ACO) Eros Moreira de Carvalho Gabriel Silva Ramos CI209 - Inteligência Artificial BCC - Bacharelado em Ciência da Computação DInf - Departamento

Leia mais

IF-705 Automação Inteligente Algoritmos Evolucionários

IF-705 Automação Inteligente Algoritmos Evolucionários IF-705 Automação Inteligente Algoritmos Evolucionários Aluizio Fausto Ribeiro Araújo Universidade Federal de Pernambuco Centro de Informática - CIn Departamento de Sistemas da Computação aluizioa@cin.ufpe.br

Leia mais

Por que atributos irrelevantes são um problema Quais tipos de algoritmos de aprendizado são afetados Abordagens automáticas

Por que atributos irrelevantes são um problema Quais tipos de algoritmos de aprendizado são afetados Abordagens automáticas Por que atributos irrelevantes são um problema Quais tipos de algoritmos de aprendizado são afetados Abordagens automáticas Wrapper Filtros Muitos algoritmos de AM são projetados de modo a selecionar os

Leia mais

Computação Bioinspirada PROF. PAULO SALGADO

Computação Bioinspirada PROF. PAULO SALGADO Computação Bioinspirada AULA 1 APRESENTAÇÃO DA DISCIPLINA PROF. PAULO SALGADO Aula de hoje Falar sobre Objetivos Ementa Avaliação Roteiro Proposto (Cronograma) Referências Periódicos da Área Objetivos

Leia mais

OTIMIZAÇÃO FUNÇÕES UTILIZANDO ALGORITMOS GENÉTICOS NO APLICATIVO MS EXCEL RESUMO INTRODUÇÃO

OTIMIZAÇÃO FUNÇÕES UTILIZANDO ALGORITMOS GENÉTICOS NO APLICATIVO MS EXCEL RESUMO INTRODUÇÃO OTIMIZAÇÃO FUNÇÕES UTILIZANDO ALGORITMOS GENÉTICOS NO APLICATIVO MS EXCEL Miquéias Augusto Ferreira Nantes 1, Douglas Peixoto de Carvalho 1 (Alunos do Curso de Matemática da Universidade Anhanguera - Uniderp)

Leia mais

4 Implementação Computacional

4 Implementação Computacional 4 Implementação Computacional 4.1. Introdução Neste capítulo é apresentada a formulação matemática do problema de otimização da disposição das linhas de ancoragem para minimizar os deslocamentos (offsets)

Leia mais

Métodos de pesquisa e Optimização

Métodos de pesquisa e Optimização Métodos de pesquisa e Optimização Victor Lobo Importância para os SAD Definir o caminho a tomar depois de se ter trabalhado os dados 1ª Fase: Analisar os dados disponíveis Visualização OLAP, relatórios

Leia mais

ANEXO II MINISTÉRIO DA EDUCAÇÃO UNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE

ANEXO II MINISTÉRIO DA EDUCAÇÃO UNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE ANEXO II MINISTÉRIO DA EDUCAÇÃO UNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE Departamento de Informática e Matemática Aplicada Campus Universitário, Lagoa Nova, Natal RN. CEP: 59.078-970 Fone: (84) 3215-3814

Leia mais

Palavras-chave: Algoritmos Genéticos. Otimização. Variância. Seleção Sexual.

Palavras-chave: Algoritmos Genéticos. Otimização. Variância. Seleção Sexual. ALGORITMO GENÉTICO COM SELEÇÃO SEXUAL Lucas Vale F. da Silva 1 Allan Vilar de Carvalho 1 Alisson Patrick Medeiros de Lima 1 Ygor Alcântara de Medeiros 1 Wellington Candeia de Araujo 2 RESUMO Algoritmos

Leia mais

Aprimorando o Corte Peças com Forma Irregular em Chapas Retangulares

Aprimorando o Corte Peças com Forma Irregular em Chapas Retangulares Aprimorando o Corte Peças com Forma Irregular em Chapas Retangulares Leandro Resende Mundim, leandroresendemundim@gmail.com Thiago Alves de Queiroz, th.al.qz@catalao.ufg.br Resumo: Esta pesquisa lida com

Leia mais

UMA METAHEURÍSTICA HÍBRIDA GRASP+TABU PARA O PROBLEMA DE ROTEAMENTO PERIÓDICO DE UMA FROTA DE VEÍCULOS

UMA METAHEURÍSTICA HÍBRIDA GRASP+TABU PARA O PROBLEMA DE ROTEAMENTO PERIÓDICO DE UMA FROTA DE VEÍCULOS A pesquisa Operacional e os Recursos Renováveis 4 a 7 de novembro de 2003, Natal-RN UMA METAHEURÍSTICA HÍBRIDA GRASP+TABU PARA O PROBLEMA DE ROTEAMENTO PERIÓDICO DE UMA FROTA DE VEÍCULOS Aloísio Carlos

Leia mais

GRASP com Memória Adaptativa na solução de um Problema de Roteamento de Veículos com Múltiplas Origens

GRASP com Memória Adaptativa na solução de um Problema de Roteamento de Veículos com Múltiplas Origens GRASP com Memória Adaptativa na solução de um Problema de Roteamento de Veículos com Múltiplas Origens Tiago Araújo Neves Instituto de Computação Universidade Federal Fluminense Niterói Rio de Janeiro

Leia mais

Utilização de Algoritmos Genéticos para Otimização de Altura de Coluna da Matriz de Rigidez em Perfil no Método dos Elementos Finitos

Utilização de Algoritmos Genéticos para Otimização de Altura de Coluna da Matriz de Rigidez em Perfil no Método dos Elementos Finitos Utilização de Algoritmos Genéticos para Otimização de Altura de Coluna da Matriz de Rigidez em Perfil no Método dos Elementos Finitos André Luiz Ferreira Pinto Pontifícia Universidade Católica do Rio de

Leia mais

UM ALGORITMO EVOLUTIVO HÍBRIDO APLICADO AO PROBLEMA DE CLUSTERIZAÇÃO EM GRAFOS COM RESTRIÇÕES DE CAPACIDADE E CONTIGUIDADE

UM ALGORITMO EVOLUTIVO HÍBRIDO APLICADO AO PROBLEMA DE CLUSTERIZAÇÃO EM GRAFOS COM RESTRIÇÕES DE CAPACIDADE E CONTIGUIDADE Anais do IX Congresso Brasileiro de Redes Neurais /Inteligência Computacional (IX CBRN) Ouro Preto 5-8 de Outubro de 009 Sociedade Brasileira de Redes Neurais UM ALGORITMO EVOLUTIVO HÍBRIDO APLICADO AO

Leia mais

Anais do IX Congresso Brasileiro de Redes Neurais / Inteligência Computacional (IX CBRN)

Anais do IX Congresso Brasileiro de Redes Neurais / Inteligência Computacional (IX CBRN) DESENVOLVIMENTO E ANÁLISE EXPERIMENTAL DE HEURÍSTICAS GRASP PARA O PRO- BLEMA DO CAIXEIRO VIAJANTE COM GRUPAMENTOS MÁRIO MESTRIA, LUIZ SATORU OCHI, SIMONE DE LIMA MARTINS Instituto de Computação - Universidade

Leia mais

Relatório Técnico: Busca Tabu Aplicada ao Problema do Caixeiro Viajante

Relatório Técnico: Busca Tabu Aplicada ao Problema do Caixeiro Viajante Relatório Técnico: Busca Tabu Aplicada ao Problema do Caixeiro Viajante André Britto de Carvalho, Rodolfo Barriveira, Carlos Tavares, Kelly Rodrigues, Frederico Losco Resumo. Este relatório apresenta uma

Leia mais

CAP 254 CAP 254. Otimização Combinatória. Professor: Dr. L.A.N. Lorena. Assunto: Metaheurísticas Antonio Augusto Chaves

CAP 254 CAP 254. Otimização Combinatória. Professor: Dr. L.A.N. Lorena. Assunto: Metaheurísticas Antonio Augusto Chaves CAP 254 CAP 254 Otimização Combinatória Professor: Dr. L.A.N. Lorena Assunto: Metaheurísticas Antonio Augusto Chaves Conteúdo C Simulated Annealing (2//7). C2 Busca Tabu (22//7). C3 Colônia de Formigas

Leia mais

Computação Evolutiva. Aula 4 Usando AEs Prof. Tiago A. E. Ferreira

Computação Evolutiva. Aula 4 Usando AEs Prof. Tiago A. E. Ferreira Computação Evolutiva Aula 4 Usando AEs Prof. Tiago A. E. Ferreira Roteiro Exemplos: Problema das 8 rainhas Comportamentos Típicos dos AE CE no contexto da Otimização Global Relembrando Na Aula Passada,

Leia mais

Thiago Christiano Silva

Thiago Christiano Silva Thiago Christiano Silva Conteúdo Conceitos Relevantes Problemas de Otimização Conceitos de Estabilidade e Convergência Teoremas de Lyapunov Rede Neural de Hopfield Aplicações do modelo de Hopfield Clusterização

Leia mais

Inteligência nos Negócios (Business Inteligente)

Inteligência nos Negócios (Business Inteligente) Inteligência nos Negócios (Business Inteligente) Sistemas de Informação Sistemas de Apoio a Decisão Aran Bey Tcholakian Morales, Dr. Eng. (Apostila 7) Fundamentação da disciplina Analise de dados Decisões

Leia mais

Modelos Evolucionários e Tratamento de Incertezas

Modelos Evolucionários e Tratamento de Incertezas Ciência da Computação Modelos Evolucionários e Tratamento de Incertezas Aula 01 Computação Evolucionária Max Pereira Motivação Se há uma multiplicidade impressionante de algoritmos para solução de problemas,

Leia mais

UM ALGORITMO EVOLUTIVO COM MEMÓRIA ADAPTATIVA PARA O PROBLEMA DE CLUSTERIZAÇÃO AUTOMÁTICA Marcelo Dib Cruz 1, Luiz Satoru Ochi 2

UM ALGORITMO EVOLUTIVO COM MEMÓRIA ADAPTATIVA PARA O PROBLEMA DE CLUSTERIZAÇÃO AUTOMÁTICA Marcelo Dib Cruz 1, Luiz Satoru Ochi 2 UM ALGORITMO EVOLUTIVO COM MEMÓRIA ADAPTATIVA PARA O PROBLEMA DE CLUSTERIZAÇÃO AUTOMÁTICA Marcelo Dib Cruz 1, Luiz Satoru Ochi 2 1 departamento de Matemática Universidade Federal Rural do Rio de Janeiro

Leia mais

Um Estudo Empírico de Métodos Hiper-Heurísticos

Um Estudo Empírico de Métodos Hiper-Heurísticos Um Estudo Empírico de Métodos Hiper-Heurísticos Igor Ribeiro Sucupira (Aluno de Mestrado) Flávio Soares Corrêa da Silva (Orientador) Departamento de Ciência da Computação Instituto de Matemática e Estatística

Leia mais

5 Resultados Experimentais

5 Resultados Experimentais 5 Resultados Experimentais Neste capítulo são apresentados alguns testes realizados tendo em vista julgar a aplicação desenvolvida em algumas das situações em que ela possa vir a ser utilizada, assim como

Leia mais

Algoritmos Evolutivos para Otimização

Algoritmos Evolutivos para Otimização Algoritmos Evolutivos para Otimização A área de aplicação que tem recebido mais atenção é a otimização. Uma das razões é que existem uma variedade de problemas de otimização e a maioria deles sem solução

Leia mais

Metahuerísticas: Algoritmos Genéticos. Sistemas de Informação/Ciências da Computação UNISUL Aran Bey Tcholakian Morales, Dr. Eng.

Metahuerísticas: Algoritmos Genéticos. Sistemas de Informação/Ciências da Computação UNISUL Aran Bey Tcholakian Morales, Dr. Eng. Metahuerísticas: Algoritmos Genéticos Sistemas de Informação/Ciências da Computação UNISUL Aran Bey Tcholakian Morales, Dr. Eng. (Apostila 8) Meta-heurísticas Classificação de métodos heurísticos: os métodos

Leia mais

INTRODUÇÃO À INTELIGÊNCIA COMPUTACIONAL. Aula 06 Prof. Vitor Hugo Ferreira

INTRODUÇÃO À INTELIGÊNCIA COMPUTACIONAL. Aula 06 Prof. Vitor Hugo Ferreira Universidade Federal Fluminense Escola de Engenharia Departamento de Engenharia Elétrica INTRODUÇÃO À INTELIGÊNCIA COMPUTACIONAL Aula 06 Prof. Vitor Hugo Ferreira Representação por cromossomos Codificação

Leia mais

Teoria da Complexidade Computacional

Teoria da Complexidade Computacional Teoria da Complexidade Computacional Letícia Rodrigues Bueno UFABC Motivação Motivação I can t find an efficient algorithm, I guess I m just too dumb. Fonte: GAREY, M. R. e JOHNSON, D. S. Computers and

Leia mais

NOTAS DE AULA 1 METAHEURÍSTICA 13/10/2016

NOTAS DE AULA 1 METAHEURÍSTICA 13/10/2016 NOTAS DE AULA 1 METAHEURÍSTICA 13/10/2016 Metaheurística: São técnicas de soluções que gerenciam uma interação entre técnicas de busca local e as estratégias de nível superior para criar um processo de

Leia mais

ALGORITMOS GENÉTICOS. Adair Santa Catarina Curso de Ciência da Computação Unioeste Campus de Cascavel PR

ALGORITMOS GENÉTICOS. Adair Santa Catarina Curso de Ciência da Computação Unioeste Campus de Cascavel PR ALGORITMOS GENÉTICOS Adair Santa Catarina Curso de Ciência da Computação Unioeste Campus de Cascavel PR Fev/2018 Introdução Algoritmos Genéticos são algoritmos heurísticos de busca, que utilizam regras

Leia mais

Formulação de Programação Linear Inteira para o Problema de Particionamento em Conjuntos Convexos

Formulação de Programação Linear Inteira para o Problema de Particionamento em Conjuntos Convexos Formulação de Programação Linear Inteira para o Problema de Particionamento em Conjuntos Convexos Teobaldo L. Bulhões Júnior a a Instituto de Computação, Universidade Federal Fluminense, Niterói, RJ, Brazil

Leia mais

3 Otimização Evolucionária de Problemas com Restrição

3 Otimização Evolucionária de Problemas com Restrição 3 Otimização Evolucionária de Problemas com Restrição 3.1. Introdução Este capítulo resume os principais conceitos sobre os algoritmos evolucionários empregados nesta dissertação. Primeiramente, se fornece

Leia mais

ESTIMAÇÃO DE PARÂMETROS DE SISTEMAS NÃO LINEARES UTILIZANDO ALGORITMOS GENÉTICOS

ESTIMAÇÃO DE PARÂMETROS DE SISTEMAS NÃO LINEARES UTILIZANDO ALGORITMOS GENÉTICOS Anais do IX Congresso Brasileiro de Redes Neurais /Inteligência Computacional (IX CBRN) Ouro Preto 25-28 de Outubro de 2009 Sociedade Brasileira de Redes Neurais ESTIMAÇÃO DE PARÂMETROS DE SISTEMAS NÃO

Leia mais

Estrutura comum dos AEs

Estrutura comum dos AEs Estrutura comum dos AEs Os algoritmos estudados seguem o seguinte padrão para modelagem dos sistemas evolutivos: Uma população de tamanho constante m evolui sobre o tempo A população atual é utilizada

Leia mais

Aplicação de uma Metaheurística GRASP para o Problema da Árvore de Steiner em Grafos Direcionados

Aplicação de uma Metaheurística GRASP para o Problema da Árvore de Steiner em Grafos Direcionados Aplicação de uma Metaheurística GRASP para o Problema da Árvore de Steiner em Grafos Direcionados Marcelo Lisboa Rocha, Sóstenes Pereira Gomes Departamento de Ciência da Computação Fundação UNIRG Alameda

Leia mais

Construção de uma Ferramenta para Evoluir Estratégias e Estudar a Agressividade/Cooperação de uma População submetida ao Dilema dos Prisioneiros

Construção de uma Ferramenta para Evoluir Estratégias e Estudar a Agressividade/Cooperação de uma População submetida ao Dilema dos Prisioneiros Construção de uma Ferramenta para Evoluir Estratégias e Estudar a Agressividade/Cooperação de uma População submetida ao Dilema dos Prisioneiros generalizá-lo para várias outras situações, como em problemas

Leia mais

UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ ALGORITMOS GENÉTICOS. Metaheurísticas de Buscas

UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ ALGORITMOS GENÉTICOS. Metaheurísticas de Buscas PR UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ ALGORITMOS GENÉTICOS Metaheurísticas de Buscas ALGORITMOS GENÉTICOS (AG) Popularizados por John Holland podem ser considerados os primeiros modelos algorítmicos

Leia mais

XLVI Pesquisa Operacional na Gestão da Segurança Pública

XLVI Pesquisa Operacional na Gestão da Segurança Pública DESENVOLVIMENTO DE UM MODELO HÍBRIDO BASEADO EM ALGORITMO GENÉTICO E BUSCA TABU PARA RESOLUÇÃO DO PROBLEMA DE QUADRO DE HORÁRIOS ESCOLAR Marcus V. da S. Cassemiro Depto de Computação, CEFET-MG 30510-000,

Leia mais