A Comparison of Algorithms for Solving Multicomponent Optimization Problems

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

Download "A Comparison of Algorithms for Solving Multicomponent Optimization Problems"

Transcrição

1 A Comparison of Algorithms for Solving Multicomponent Optimization Problems D. K. S. Vieira and M. H. S. Mendes 1 Abstract Real-world problems are often composed of multiple interdependent components. In this case, benchmark problems that do not represent that interdependency are not a good choice to assess algorithm performance. In recently literature, a benchmark problem called Travelling Thief Problem (TTP) was proposed to better represent real-world multicomponent problems. TTP is a combination of two well-known problems: 0-1 Knapsack Problem and the Travelling Salesman Problem. This paper presents a comparison among three optimization approaches for solving TTP. The comparisons are performed on 60 representative small TTP instances available in the literature. Keywords Travelling Thief Problem, Genetic Algorithm, Optimization, Combinatorial Problem. P I. INTRODUÇÃO ROBLEMAS clássicos da computação foram propostos e atualmente são estudados para que se definam estratégias que obtenham uma boa solução de forma eficiente para problemas do mundo real (em que estes problemas clássicos são inspirados). Muitos desses problemas pertencem a classe NPdifícil, assim, não é possível encontrar a solução ótima em tempo polinomial. Dessa forma, a utilização de metaheurísticas é salutar, uma vez que pode encontrar boas soluções em um tempo aceitável. De acordo com Bonyadi et al. [1], problemas do mundo real geralmente possuem componentes interdependentes e estes não devem ser resolvidos separadamente. Esta correlação deve ser levada em consideração para que se possa obter uma solução adequada para o problema como um todo. Com o objetivo de melhor abranger a complexidade de um problema do mundo real, um novo problema de referência foi proposto chamado de Travelling Thief Problem (TTP) [1], que é uma junção de dois problemas muito conhecidos na computação que são o Knapsack Problem (KP) e o Travelling Salesman Problem (TSP). Várias estratégias foram propostas com o objetivo de obter soluções satisfatórias no TTP de forma eficiente. Faulkner et al. [2] apresentam uma série de algoritmos que focam em manipular a componente KP do problema com a componente TSP sendo obtida pela heurística Chained Lin-Kernighan [3]. Bonyadi et al. [4] utilizam uma abordagem co-evolucionária chamada de CoSolver em que módulos distintos são responsáveis pelos componentes do TTP e estes se comunicam e combinam soluções para obter uma solução geral aproximada do problema. Desta maneira o CoSolver tenta resolver o problema TTP trabalhando com as duas componentes (KP e TSP) simultaneamente e não sequencialmente como em [2]. Mei et al. [5] focam em instâncias de larga escala propondo estratégias de redução de complexidade para o TTP com esquemas de aproximação de fitness e aplica estas técnicas em um Algoritmo Memético (AM) que supera Busca Local Aleatória e o Algoritmo Evolucionário proposto por Polyakovskiy et al. [6]. Oliveira et al. [7] desenvolveram uma abordagem baseada em Busca-Tabu (BT) com uma busca local chamado 2-OPT que se mostrou ter um desempenho competitivo para instâncias de tamanho reduzido do TTP. Recentemente Vieira D.K.S et al. [8] propuseram um algoritmo genético chamado Multi-Component Genetic Algorithm (MCGA) que obteve excelente resultado em instâncias de tamanho médio do TTP. Este artigo apresenta a aplicação do MCGA para resolver instâncias pequenas do TTP e compara os resultados obtidos com duas abordagens existentes na literatura. O MCGA possui 4 etapas básicas em cada iteração: avaliação da solução (individual) para saber quão boa é esta solução; seleção dos indivíduos baseada no fitness dos mesmos; cruzamento dos indivíduos para criar novas soluções (filhos) baseados nas características (cromossomo) das soluções existentes (pais); perturbação das soluções por meio de algum operador de mutação que altera suas características (alguns alelos dos genes de seus cromossomos). Depois de algumas iterações o algoritmo tende a obter boas soluções para o problema em um tempo aceitável. O artigo é dividido da seguinte forma. A Seção II descreve o TTP e suas especificações que foram utilizadas neste trabalho. Na Seção III descreve-se o MCGA. A Seção IV apresenta a metodologia utilizada para os testes e avaliação dos algoritmos juntamente com os resultados obtidos nas instâncias definidas. Por fim é apresenta a conclusão e as possibilidades para trabalhos futuros na Seção V. II. TRAVELLING THIEF PROBLEM Com base em Polyakovskiy et al. [6], o TTP é definido como tendo um conjunto de cidades ={1,,} em que a distância entre cada par de cidades e é conhecida, com,. Toda a cidade exceto a primeira possui um conjunto de itens ={1,, }. Cada item existente em uma cidade é caracterizado pelo seu valor e peso. A solução candidata deve visitar todas as cidades sem repetir nenhuma e retornar para a cidade de partida. 1 D. K. S. Vieira, Universidade Federal de Minas Gerais, Belo Horizonte, MG, danielv@dcc.ufmg.br 1 M. H. S. Mendes, Universidade Federal de Viçosa, Florestal, MG, marcus.mendes@ufv.br

2 Itens podem ser coletados pelas cidades respeitando-se a restrição de capacidade máxima da mochila. Uma taxa de aluguel deve ser paga por cada unidade de tempo que se utiliza para finalizar o percurso. e descrevem a velocidade máxima e mínima permitida ao longo do percurso, respectivamente. Seja {0,1} uma variável binária igual a 1 caso o item fosse coletado na cidade. Sendo o peso total dos itens coletados quando se deixa a cidade. Portanto, a função objetivo para um percurso Π =(,, ), e um plano de coleta =(,, ) é definida como: (Π, ) = + em que =. O objetivo é maximizar (Π, ). A equação 1 consiste em penalizar os lucros obtidos pelos itens coletados com um valor que representa o tempo total que se leva para completar o percurso Π multiplicado pela taxa de aluguel R. A Figura 1 mostra um exemplo do TTP no qual se tem o mesmo número de itens para cada cidade assim como nas instâncias de teste fornecidas por Polyakovskiy et al. [6]. Neste caso, tem-se 2 itens para cada cidade (exceto a primeira cidade, que não possui itens) e 3 cidades ao todo. Cada item (, ) é descrito como sendo o item da cidade que possui um valor e um peso. Assumindo a capacidade máxima da mochila como sendo =10, a taxa de aluguel =1, =1 e =0.1. Logo, uma solução possível é = (0,1,0,1) e Π = (1,2,3), descrevendo que serão coletados os itens, que estão nas cidades 2 e 3, respectivamente, fazendo uma rota que partindo da cidade 1 vai para a cidade 2, depois para a 3 e por fim retornando à cidade 1. Isso resulta em (Π, ) Início I 31 (15,2) I 32 (10,1) 8 Figura 1. Exemplo do TTP. 3 2 Note que, no exemplo fornecido anteriormente, caso apenas o componente TSP do problema for considerado, todas as possibilidades possuem custos iguais uma vez que que todas as conexões entre as cidades serão utilizadas de qualquer forma. No entanto, caso leve-se em consideração o problema como um todo, é possível notar que a ordem da rota percorrida passa a influenciar no custo da solução devido à variação de tempo que 4 2 I 21 (30,5) I 22 (65,9) (1) um item é mantido na mochila. Em outras palavras, um item pesado coletado no começo do percurso influencia a velocidade por um período de tempo maior se comparado com o mesmo item coletado no final do percurso, tornando a solução mais lenta e aumentando o custo. III. MULTI-COMPONENT GENETIC ALGORITHM (MCGA) O MCGA (Código fonte disponível em ThiefProblem) possui um tipo de codificação diferente para cada componente do TTP. O componente TSP é codificado enumerando o índice das cidades em ordem começando da cidade 1 e terminando o percurso na mesma cidade. O componente KP é codificado usando um vetor de valores binários possuindo um tamanho igual ao número de itens existentes, os itens são ordenados de acordo com a cidade que eles pertencem. Se o problema possui 5 itens por cidade os cinco primeiros genes fazem referência aos itens da cidade dois (já que a primeira cidade, por definição, não possui itens). A Figura 2 mostra uma representação gráfica dos cromossomos que compõe o indivíduo. x 1 y Figura 2. Representação gráfica da codificação do indivíduo. A solução inicial é obtida usando o Chained Lin-Kernighan (CLK) para o componente TSP e todos os itens não coletados para o componente KP. Depois de gerar a população inicial um processo iterativo começa com a seleção dos indivíduos que passarão por um processo evolucionário baseado em seus valores de fitness. Nesta etapa, utiliza-se a seleção por torneiro, que consiste em dado um tamanho de torneio, indivíduos são selecionados para serem comparados entre si, sendo o melhor selecionado para a próxima etapa. Este procedimento se repete até que o tamanho da população selecionada alcance o tamanho da população original. O Algoritmo 1 mostra um k-torneio em que indivíduos são selecionados a partir da população. Algoritmo 1 Torneio (,,) Cromossomo do componente TSP... y nm i x n Cromossomo do componente KP 1: para 0 até 1 faça 2: indivíduos aleatórios de Indivíduo x 1

3 3: adicionar em o melhor indivíduo de 4: fim 5: retorna A etapa de cruzamento realiza a criação de novos indivíduos (filhos) baseados nos cromossomos dos indivíduos existentes (pais). Devido à característica multicomponente do TTP, um método de cruzamento diferente foi usado para cada componente do problema. Para o componente KP um operador de cruzamento chamado de N-point foi usado. Este operador combina o plano de coleta de dois pais em dois filhos de forma que um filho receba os alelos de um pai até que um ponto de corte seja alcançado, depois disso este passa a receber os alelos do outro pai. No cruzamento, enquanto o filho recebe os alelos do pai, o filho recebe os alelos do pai, em que, {1,2,, }, com sendo o número de pais. O Algoritmo 2 mostra o operador de cruzamento N-point. Algoritmo 2 N-point (, ) 1: tamanho do cromossomo. 2: diferentes loci (posições) no cromossomo ordenados em ordem crescente 3: 0 4: para 0 até 1 faça 5: se < e =[] então 6: +1 7: fim 8: se j é um número par então 9: [] [] 10: [] [] 11: se não 12: [] [] 13: [] [] 14: fim 15: fim 16: retorna, Para o componente TSP operador de cruzamento Orderbased é utilizado para combinar os percursos de dois pais se gerar percursos inválidos. Este operador usa uma máscara binária gerada aleatoriamente. Quando o valor de uma posição desta máscara é igual a 1 os genes que estão naquela posição dos filhos 1 e 2 são preenchidos com os genes dos pais 1 e 2, respectivamente. Os genes restantes do pai 1 (que possuem o valor da máscara igual a 0) são ordenados na mesma ordem que aparecem no pai 2 e o alelos destes são usados para preencher os genes do filho 1 que ainda estão vazios. O mesmo ocorre para o filho 2, embora neste caso os genes do pai 2 são ordenados de acordo com a ordem do pai 1. Este operador é detalhado no Algoritmo 3. Algoritmo 3 Order-based (Π,Π ) 1: tamanho do cromossomo. 2: vetor aleatório de bits com tamanho 3: para =0 até 1 faça 4: se [] =1 então 5: Π [] Π [] 6: Π [] Π [] 7: fim 8: fim 9: lista de genes em Π que estão na posição em que [] =0 10: lista de genes em Π que estão na posição em que [] =0 11: Ordenar de forma que os genes apareçam na mesma ordem que em Π 12: Ordenar de forma que os genes apareçam na mesma ordem que em Π 13: Preencher os genes ainda vazios de Π com 14: Preencher os genes ainda vazios de Π com 15: retorna Π,Π Depois da aplicação dos operadores de cruzamento, o tamanho da população dobra devido à criação de dois filhos para cada casal. Por isso um procedimento de seleção é aplicado para diminuir a população para seu tamanho original. Esta segunda etapa de seleção também utiliza o método do torneio como mostrado no Algoritmo 1, neste caso, o tamanho da população é o número de indivíduos antes da etapa de cruzamento como tamanho da população. Assim como a etapa de cruzamento, a etapa de mutação também possui um operador para cada componente do problema. Para mutar o componente PM um operador simples chamado de Bit-flip é utilizado, o qual dado um item i e um valor aleatório [1,0], =0 se =1 e, sendo a probabilidade do item ser removido ou adicionado na mochila. Para cada item um r i diferente é gerado. Utiliza-se o 2-OPT para mutar o componente TSP. Este operador de mutação troca um par de arestas do percurso. Uma forma de se fazer isto é dado dois vértices e (não sendo o primeiro ou o último vértice, que referenciam a mesma cidade), é feita uma cópia do percurso até, então o sub-percurso [, ] é copiado na ordem inversa, após isto o resto do percurso é copiado. O Algoritmo 4 mostra o que foi descrito assumindo que o valor do índice do primeiro gene do cromossomo seja igual a 0. Algoritmo 4 2-OPT (Π ) 1: tamanho do cromossomo. 2: número inteiro aleatório [1, 3] 3: número inteiro aleatório [ +1, 2] 4: para =0 até 1 faça 5: Π [] Π [] 6: fim 7: para = até faça

4 8: Π [] Π [ ( )] 9: fim 10: para = +1 até 1 faça 11: Π [] Π [] 12: fim 13: retorna Π No PCV a ordem do percurso não impacta no custo da solução já que a distância da cidade para a cidade é igual à distância de para. Entretanto, no TTP esta mudança afeta o tempo que um item será carregado, consequentemente alterando o custo. Portanto o operador 2-OPT pode causar uma grande mudança no indivíduo. Por esta razão, os operadores de mutação não são aplicados sempre para todos os indivíduos. O Bit-flip possui uma probabilidade 65% de ser aplicado, 2-OPT possui 17,5% e há 17,5% de chance de os dois operadores serem aplicados. O MCGA utiliza elitismo para manter um conjunto dos melhores indivíduos (também chamados de elites) em cada geração para a próxima. Na etapa de mutação os melhores indivíduos não incluídos no procedimento. Na etapa de cruzamento, antes do procedimento iniciar, um conjunto com os melhores indivíduos é assegurado de fazer parte de. Note que estes melhores indivíduos são incluídos no torneio. A equação 1 é utilizada para avaliar os indivíduos. Se um indivíduo é infactível (soma dos pesos dos itens coletados ultrapassa a capacidade da mochila) um procedimento de correção é aplicado o qual remove os piores itens do indivíduo até que este se torne factível. Os piores itens são caracterizados como tendo os menores valores de, em que é o valor do item e seu peso. O MCGA combina todos estes operadores como mostrado no Algoritmo 5 em que e armazenam as configurações do MCGA e as condições de parada, respectivamente. Dentro de é especificado o tamanho da população ; dois diferentes tamanhos de torneio,, para a etapa de seleção e o torneio depois do cruzamento, respectivamente; três tamanhos de conjunto de soluções elites diferentes,,, para a etapa de seleção, torneio depois do cruzamento e a etapa de mutação, respectivamente; um número de pontos de corte para o operador de cruzamento N-point; a probabilidade para o operador de mutação Bit-flip. Algoritmo 5 MCGA (, ) 1: GerarPopulaçãoInicial(. ) 2: AvaliarIndivíduos() 3: enquanto faça 4: Seleção(,.,.,. ) 5: Cruzamento(,. ) 6: AvaliarIndivíduos() 7: {,} 8: Seleção(,.,.,. ) 9: Mutação(,.,. ) 10: AvaliarIndivíduos() 11: fim 12: retorna MelhorIndivíduo() IV. METODOLOGIA E RESULTADOS Um subconjunto de 9720 instâncias representativas, propostas por Polyakovskiy et al. [6], foi utilizado nos experimentos. Estas 9720 instâncias possuem o número de cidades variando de 51 até (81 quantidades de cidades); o número de itens por cidade {1,3,5,10}, 10 categorias de capacidades (variando a capacidade da mochila); 3 tipos de Problema da Mochila: uncorrelated (os valores dos itens não são correlacionados aos seus pesos), uncorrelated with similar weights (mesmo que o não correlacionado mas os itens possuem pesos similares) e bounded strongly correlated (itens com valores altamente correlacionados com seus pesos e é possível existir múltiplos itens com as mesmas características). O MCGA foi configurado da seguinte forma: (i) 150 indivíduos, tamanho do torneio de ambos procedimentos de seleção igual a 2, número de soluções de elite para ambas etapas de seleção e etapa de mutação igual a 15, número de pontos para o N-point igual a 1, e a probabilidade p para o Bit-flip igual a 0.5%. As condições de parada são 10 minutos de execução ou gerações sem melhora. A heurística CLK não possui limitação em seu tempo execução. Note que o tempo de execução do MCGA inclui a geração da população inicial. Portanto, o tempo gasto pelo CLK é levado em conta. Os experimentos foram conduzidos em um computador com CPU Intel Core i7 4810MQ, 8 GB de memória RAM e sistema operacional Windows 8.1. O MCGA foi implementado na linguagem de programação C++. A Tabela I mostra a média dos valores da função objetivo considerando 30 execuções dos algoritmos: Algoritmo Evolucionário (EA) apresentado por Polyakovskiy et al. [6]; MCGA[8]; heurística baseada em BT proposta por [7] que de acordo com os autores possui uma característica determinística, em outras palavras, os resultados de diferentes execuções serão sempre os mesmos. As instâncias usadas são de um tamanho relativamente menor, com o número de cidades () variando de 51 até 100, com 1, 3, 5 e 10 itens por cidade. Todos os tipos de Problema da Mochila e capacidade da mochila sempre são da categoria 10, totalizado 60 instâncias. TABELA I DESEMPENHO DO MCGA COMPARADO COM A HEURÍSTICA BT [7] E O EA [6]. AS INSTÂNCIAS COM 100 CIDADES SE REFEREM ÀS INSTÂNCIAS kroa100 n m t MCGA EA BT bsc unc usw bsc unc usw

5 bsc unc usw bsc unc usw bsc unc usw bsc unc usw bsc unc usw bsc unc usw bsc unc usw bsc unc usw bsc unc usw bsc unc usw bsc unc usw bsc unc usw bsc unc usw bsc unc usw bsc unc usw bsc unc usw bsc unc usw bsc unc usw Os resultados mostram que o MCGA supera o BT em 40% e o EA em 98.3% das instâncias testadas. BT obteve um desempenho notável nas instâncias com 52 cidades, entretanto, mostrou um comportamento inesperado em algumas instâncias com 99 cidades. Nesse último caso, nas instâncias com 98 itens BT obteve resultados significativamente melhores (média de 7,477 vezes se comparado com o MCGA) enquanto teve um desempenho significativamente pior em instâncias com 490 e 980 itens (MCGA alcançou resultados 5,092 vezes melhor em média). Um coeficiente, para cada algoritmo, foi calculado a fim de comparar seus resultados nas 60 instâncias apresentadas da Tabela 1. O cálculo deste coeficiente foi feito de forma a evitar a influência das variações de magnitude entre diferentes instâncias de TTP na comparação. O coeficiente é definido por =, em que é o valor da função objetivo obtido pelo algoritmo dado uma instância e é o melhor (maior) valor da função objetivo obtido para aquela instância. Isso faz com que [,1], em que a é o coeficiente do pior (menor) valor da função objetivo comparando os três algoritmos. será negativo se <0. Por exemplo, na instância com 51 cidades, 20 itens e o componente PM sendo do tipo bounded strongly correlated, os resultados obtidos foram , e para o MCGA, EA e BT, respectivamente. Portanto, o coeficiente nesta instância para o MCGA é =. =1,. =. 0,843 no caso do EA e para o BT é. =.. 0,981. A Tabela II mostra a média dos coeficientes c (considerando todas as 60 instâncias) para cada algoritmo. Pode-se notar que o MCGA obteve um desempenho mais consistente nos experimentos (valor médio de c para o MCGA foi mais próximo de 1). TABELA II MÉDIA DOS COEFICIENTES CALCULADOS A PARTIR DOS RESULTADOS APRESENTADOS NA TABELA I MCGA EA BT Coef. médio V. CONCLUSÃO A interdependência existente em um problema multicomponente se mostra uma característica desafiadora devido a solução ótima de uma componente não implicar em uma boa solução para o problema como um todo. Neste trabalho comparou-se três algoritmos para resolver o TTP. As comparações foram realizadas considerando-se 60 instâncias representativas e pequenas (número de cidades entre 51 e 100) para o TTP. Os experimentos mostraram que, numa visão holística, o MCGA obtém soluções mais competitivas para instâncias pequenas do TTP quando comparado com outros dois algoritmos na literatura. Futuramente, pretende-se realizar um estudo exaustivo das configurações dos parâmetros do MCGA para verificar a influência de cada um deles no processo de otimização. E até mesmo, tentar realizar o ajuste mais adequado dos parâmetros visando as pequenas instâncias do TTP. Pode ser que tal ajuste leve a obtenção de valores da função objetivo significativamente maiores em instâncias com um intervalo de tamanho ou tipo específico. REFERÊNCIAS [1] Bonyadi, M. R., Michalewicz, Z., Barone, L. (2013, June). The travelling thief problem: the first step in the transition from theoretical problems to realistic problems. In Evolutionary Computation (CEC), 2013 IEEE Congress on (pp ). IEEE. [2] Faulkner, H., Polyakovskiy, S., Schultz, T., Wagner, M. (2015, July).

6 Approximate Approaches to the Traveling Thief Problem. In Proceedings of the 2015 on Genetic and Evolutionary Computation Conference (pp ). ACM. [3] Applegate, D., Cook, W., Rohe, A. (2003). Chained Lin-Kernighan for large traveling salesman problems. INFORMS Journal on Computing, 15(1), [4] Bonyadi, M. R., Michalewicz, Z., Przybylek, M. R., Wierzbicki, A. (2014, July). Socially inspired algorithms for the travelling thief problem. In Proceedings of the 2014 conference on Genetic and evolutionary computation (pp ). ACM. [5] Mei, Y., Li, X., Yao, X. (2014). Improving efficiency of heuristics for the large scale traveling thief problem. In Simulated Evolution and Learning (pp ). Springer International Publishing. [6] Polyakovskiy, S., Bonyadi, M. R., Wagner, M., Michalewicz, Z., Neumann, F. (2014, July). A comprehensive benchmark set and heuristics for the traveling thief problem. In Proceedings of the 2014 conference on Genetic and evolutionary computation (pp ). ACM. [7] Oliveira, M. R., dos Santos, A. G., de Freitas Araujo, M. (2015) Uma heurística busca tabu para o problema do mochileiro viajante. In: Simpósio Brasileiro de Pesquisa Operacional. Ser. SBPO 15, [8] Vieira D.K.S., Soares G.L., Vasconcelos J.A., Mendes M.H.S. (2017) A Genetic Algorithm for Multi-component Optimization Problems: The Case of the Travelling Thief Problem. In: Hu B., López-Ibáñez M. (eds) Evolutionary Computation in Combinatorial Optimization. EvoCOP Lecture Notes in Computer Science, vol Springer, Cham. Daniel Kneipp de Sá Vieira é graduado em Ciência da Computação pela Universidade Federal de Viçosa (2015). Atualmente está cursando mestrado em Ciência da Computação pela Universidade Federal de Minas Gerais e faz parte do Laboratório de Nano Computação e Nanotecnologia Computacional (NanoComp). Os tópicos de seu interesse incluem Aprendizado de Máquina, Deep learning, Computação de Alto Desempenho, Computação Evolutiva, Meta-heurísticas e Visão Computacional. Marcus Henrique Soares Mendes possui doutorado em Engenharia Elétrica pela Universidade Federal de Minas Gerais (2013) com estágio de doutoramento no Laboratório do Evolutionary and Complex Systems Group - ECOS localizado no Departamento de Engenharia Informática da Universidade de Coimbra em Portugal, mestrado em Economia Aplicada pela Universidade Federal de Viçosa (2004) e graduação em Ciência da Computação pela Universidade Federal de Viçosa (2002). Desde 2005 é docente da Universidade Federal de Viçosa - Campus Florestal. Tem interesse nos seguintes temas: Otimização Mono e Multiobjetivo, Computação Evolutiva, Análise Intervalar, Otimização Robusta, Meta-heurísticas, Programação Genética, Regressão Simbólica e Surrogate Models.

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. 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

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

UMA HEURÍSTICA BUSCA TABU PARA O PROBLEMA DO MOCHILEIRO VIAJANTE

UMA HEURÍSTICA BUSCA TABU PARA O PROBLEMA DO MOCHILEIRO VIAJANTE UMA HEURÍSTICA BUSCA TABU PARA O PROBLEMA DO MOCHILEIRO VIAJANTE Matheus R. R. Oliveira Universidade Federal de Viçosa Viçosa - MG - Brasil matheus.roberti@ufv.br André Gustavo dos Santos Universidade

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

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

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

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

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

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

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

Algoritmo Genético: um experimento comparativo entre a execução paralela com troca de indivíduos de populações e a não paralela.

Algoritmo Genético: um experimento comparativo entre a execução paralela com troca de indivíduos de populações e a não paralela. Algoritmo Genético: um experimento comparativo entre a execução paralela com troca de indivíduos de populações e a não paralela. Marlos A. S. Lima 1, Davi Magalhães 2, F. C. de Lima Júnior 3, Rommel W.

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

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

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

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

Algoritmos Genéticos. Estéfane G. M. de Lacerda DCA/UFRN Outubro/2008

Algoritmos Genéticos. Estéfane G. M. de Lacerda DCA/UFRN Outubro/2008 Estéfane G. M. de Lacerda DCA/UFRN Outubro/2008 Introdução São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada pelo Fisiologista e Naturalista inglês Charles Darwin.

Leia mais

Análise de Desempenho da Paralelização do Problema de Caixeiro Viajante

Análise de Desempenho da Paralelização do Problema de Caixeiro Viajante Análise de Desempenho da Paralelização do Problema de Caixeiro Viajante Gabriel Freytag Guilherme Arruda Rogério S. M. Martins Edson L. Padoin Universidade Regional do Noroeste do Estado do Rio Grande

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

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

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

Algoritmos Genéticos. Texto base: Stuart Russel e Peter Norving - Inteligência Artificial

Algoritmos Genéticos. Texto base: Stuart Russel e Peter Norving - Inteligência Artificial Algoritmos Genéticos Texto base: Stuart Russel e Peter Norving - Inteligência Artificial junho/2007 Algoritmo Genético Uma variante da busca em feixe estocástica Estado sucessor gerado pela combinação

Leia mais

Aprendizado por Reforço usando Aproximação

Aprendizado por Reforço usando Aproximação Aprendizado por Reforço usando Aproximação de Funções Fabrício Olivetti de França Universidade Federal do ABC Tópicos 1. Aproximação de Funções 2. Do the evolution 1 Aproximação de Funções Função Utilidade

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

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

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

IN-1131 Computação Evolucionária. Aluizio Fausto Ribeiro Araújo Universidade Federal de Pernambuco Centro de Informática

IN-1131 Computação Evolucionária. Aluizio Fausto Ribeiro Araújo Universidade Federal de Pernambuco Centro de Informática IN-1131 Computação Evolucionária Aluizio Fausto Ribeiro Araújo Universidade Federal de Pernambuco Centro de Informática aluizioa@cin.ufpe.br Objetivos Este curso visa oferecer introdução abrangente em

Leia mais

UMA INTRODUÇÃO AOS ALGORITMOS GENETICOS

UMA INTRODUÇÃO AOS ALGORITMOS GENETICOS UMA INTRODUÇÃO AOS ALGORITMOS GENETICOS Uma visão geral dos GAs Um algoritmo genético é uma classe de algoritmo de busca. O algoritmo procura uma solução dentro de um espaço para um problema de otimização.

Leia mais

Fundamentos de Inteligência Artificial [5COP099]

Fundamentos de Inteligência Artificial [5COP099] Fundamentos de Inteligência Artificial [5COP099] Dr. Sylvio Barbon Junior Departamento de Computação - UEL Disciplina Anual Assunto Aula 19 ACO - Ant Colony Optimization 2 de 15 Sumário Problema do Caixeiro

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

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

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

2 Algoritmos Genéticos Heurística Premissa: Localidade Fraca Conclusões Estrutura de um Algoritmo Genético 26

2 Algoritmos Genéticos Heurística Premissa: Localidade Fraca Conclusões Estrutura de um Algoritmo Genético 26 v Sumário Prefácio x 1 Introdução 1 1. Otimização 1 2. Heurística 8 3. Computação Evolutiva 13 4. Premissa: Localidade Fraca 16 5. Conclusões 20 I Métodos Bio-Inspirados 2 Algoritmos Genéticos 25 1. A

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

Otimização com Algoritmos Evolutivos

Otimização com Algoritmos Evolutivos Otimização com Algoritmos Evolutivos Francisco Pereira (xico@dei.uc.pt) ELBCE 2016 (Setembro 2016) Resumo Problem Optimization Method Solution } Algoritmos Evolutivos } Propriedades e funcionamento } Exemplos

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

Introdução a Algoritmos Genéticos

Introdução a Algoritmos Genéticos Introdução a Algoritmos Genéticos Tiago da Conceição Mota Laboratório de Inteligência Computacional Núcleo de Computação Eletrônica Universidade Federal do Rio de Janeiro Outubro de 2007 O Que São? Busca

Leia mais

Sistemas de Apoio à Decisão Optimização V 2.0, V.Lobo, EN/ISEGI, 2011

Sistemas de Apoio à Decisão Optimização V 2.0, V.Lobo, EN/ISEGI, 2011 V.0, V.Lobo, EN/ISEGI, 0 ópicos Métodos modernos de pesquisa e Optimização Victor Lobo Introdução Métodos matemáticos clássicos Método de Monte Carlo Hill- Climbing Simulated Annealing Algoritmos Genéticos

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

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

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

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

Algoritmo Genético. Inteligência Artificial. Professor: Rosalvo Ferreira de Oliveira Neto

Algoritmo Genético. Inteligência Artificial. Professor: Rosalvo Ferreira de Oliveira Neto Algoritmo Genético Inteligência Artificial Professor: Rosalvo Ferreira de Oliveira Neto Estrutura 1. Introdução 2. Conceitos Básicos 3. Aplicações 4. Algoritmo 5. Exemplo Introdução São técnicas de busca

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

COMPARAÇÃO ENTRE FROTA HOMOGÊNEA E HETEROGÊNEA EM PROBLEMAS DE ROTEAMENTO DE VEÍCULOS CAPACITADOS

COMPARAÇÃO ENTRE FROTA HOMOGÊNEA E HETEROGÊNEA EM PROBLEMAS DE ROTEAMENTO DE VEÍCULOS CAPACITADOS COMPARAÇÃO ENTRE FROTA HOMOGÊNEA E HETEROGÊNEA EM PROBLEMAS DE ROTEAMENTO DE VEÍCULOS CAPACITADOS Rosiana da Silva Lopes Danilo César Rodrigues Azevedo rosianalopes16@gmail.com danilo.azevedo@ufpi.edu.br.com

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

Estratégias Evolutivas EEs. Prof. Juan Moisés Mauricio Villanueva

Estratégias Evolutivas EEs. Prof. Juan Moisés Mauricio Villanueva Estratégias Evolutivas EEs Prof. Juan Moisés Mauricio Villanueva jmauricio@cear.ufpb.br www.cear.ufpb.br/juan Estratégias Evolutivas Desenvolvidas por Rechenberg e Schwefel, e estendida por Herdy, Kursawe

Leia mais

Otimização por Enxame de Partículas (PSO) e Otimização por Colônias de Formigas (ASO) aplicadas ao Problema do Caixeiro Viajante (TSP)

Otimização por Enxame de Partículas (PSO) e Otimização por Colônias de Formigas (ASO) aplicadas ao Problema do Caixeiro Viajante (TSP) Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Otimização por Enxame de Partículas (PSO) e Otimização por Colônias de Formigas (ASO) aplicadas ao Problema do Caixeiro Viajante

Leia mais

Métodos de Busca. Inteligência Artificial. Algoritmos Genéticos. Algoritmos Evolucionários. Prof. Ms. Luiz Alberto Contato:

Métodos de Busca. Inteligência Artificial. Algoritmos Genéticos. Algoritmos Evolucionários. Prof. Ms. Luiz Alberto Contato: Inteligência Artificial Prof. Ms. Luiz Alberto Contato: lasf.bel@gmail.com Métodos de Busca Busca Cega ou Exaustiva: Não sabe qual o melhor nó da fronteira a ser expandido. Apenas distingue o estado objetivo

Leia mais

Métodos modernos de pesquisa e Optimização

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

Leia mais

Otimização por Colônia de Formigas (ACO)

Otimização por Colônia de Formigas (ACO) Otimização por Colônia de Formigas (ACO) Inspiração Biológica Proposto por Dorigo e Gambardella em 1997 ACO (Ant Colony Optimization) Principal aplicação no PCV Programação do algoritmo Inspiração Biológica

Leia mais

Otimização. Algoritmos Genéticos. Teoria da Evolução. Otimização

Otimização. Algoritmos Genéticos. Teoria da Evolução. Otimização Algoritmos Genéticos Otimização São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada pelo Fisiologista e Naturalista inglês Charles Darwin. Desenvolvido por John

Leia mais

INF 1771 Inteligência Artificial

INF 1771 Inteligência Artificial INF 1771 Inteligência Artificial Aula 06 Algoritmos Genéticos Edirlei Soares de Lima Algoritmos Genéticos Método de busca local. Boa abordagem para lidar com espaços de busca muito

Leia mais

Aprendizado de Máquinas. Seleção de Características

Aprendizado de Máquinas. Seleção de Características Universidade Federal do Paraná (UFPR) Departamento de Informática (DInf) Seleção de Características David Menotti, Ph.D. web.inf.ufpr.br/menotti Introdução Um dos principais aspectos na construção de um

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

Tópicos Especiais em Informática Fatec Indaiatuba

Tópicos Especiais em Informática Fatec Indaiatuba Prof. Dilermando Piva Jr. ((Compilação de diversas fontes na Internet)) Principal motivação para o estudo da computação evolutiva Otimização de processos complexo e que possuem um grande número de variáveis

Leia mais

Aplicação da Metaheurística Algoritmos Genéticos na solução do problema das n Rainhas

Aplicação da Metaheurística Algoritmos Genéticos na solução do problema das n Rainhas Aplicação da Metaheurística Algoritmos Genéticos na solução do problema das n Rainhas Resumo Gardiego Luiz da Silva 1 Henrique Faria de Oliveira 2 Faculdade

Leia mais

Sistemas de Apoio à Decisão Optimização V 1.0, V.Lobo, EN/ISEGI, 2005

Sistemas de Apoio à Decisão Optimização V 1.0, V.Lobo, EN/ISEGI, 2005 Métodos modernos de pesquisa e Optimização Victor Lobo Introdução Problema de optimização Dada uma função f(x) encontrar o seu óptimo (máximo ou mínimo) Cada um faz a sua pesquisa!!! Problema de pesquisa

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

Um AG Baseado em Ordem para o Problema do Ladrão de Jóias com Múltiplas Restrições

Um AG Baseado em Ordem para o Problema do Ladrão de Jóias com Múltiplas Restrições > REVISTA DE INTELIGÊNCIA COMPUTACIONAL APLICADA (ISSN: XXXXXXX), Vol. X, No. Y, pp. 1-10 1 Um AG Baseado em Ordem para o Problema do Ladrão de Jóias com Múltiplas Restrições Jarbas Silva Abstract Neste

Leia mais

Técnicas de Inteligência Artificial

Técnicas de Inteligência Artificial Universidade do Sul de Santa Catarina Ciência da Computação Técnicas de Inteligência Artificial Aula 9 Algoritmos Genéticos Max Pereira Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e

Leia mais

Algoritmo Aproximação. Prof. Anderson Almeida Ferreira [DPV]9.2 [ZIV]9.2.2 e 9.2.3

Algoritmo Aproximação. Prof. Anderson Almeida Ferreira [DPV]9.2 [ZIV]9.2.2 e 9.2.3 Algoritmo Aproximação Prof. Anderson Almeida Ferreira [DPV]9.2 [ZIV]9.2.2 e 9.2.3 Heurísticas para Problemas NP- Completo Heurística: algoritmo que pode produzir um bom resultado (ou até a solução ótima),

Leia mais

Inteligência Artificial

Inteligência Artificial Figura: Capa do Livro Hamburger, H., Richards, D. Logic and Language Models for Computer Science, Prentice Hall. Universidade Federal de Campina Grande Departamento de Sistemas e Computação Curso de Pós-Graduação

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

Palestra COPPE Elétrica. Dezembro de 2010

Palestra COPPE Elétrica. Dezembro de 2010 Palestra COPPE Elétrica Dezembro de 2010 Aplicações de Computação Evolutiva e Otimização Multi-objetivo em Sistemas Elétricos de Potência Oriane Magela Neto Depto. De Engenharia Elétrica da UFMG Sistemas

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

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

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

4 Modelos Propostos para Otimização de Planejamentos com Restrições de Precedência 4.1 Representação com Algoritmos Genéticos

4 Modelos Propostos para Otimização de Planejamentos com Restrições de Precedência 4.1 Representação com Algoritmos Genéticos 46 4 Modelos Propostos para Otimização de Planejamentos com Restrições de Precedência 4.1 Representação com Algoritmos Genéticos Para definir a representação de um modelo para problemas de planejamento

Leia mais

Caixeiro Viajante. Estruturas de Dados II. Prof. a Mariella Berger. 1. Objetivo

Caixeiro Viajante. Estruturas de Dados II. Prof. a Mariella Berger. 1. Objetivo Estruturas de Dados II Prof. a Mariella Berger Caixeiro Viajante 1. Objetivo O objetivo deste trabalho é implementar diferentes soluções para o problema clássico do Caixeiro Viajante. 2. Introdução O Problema

Leia mais

Tópicos Especiais em Otimização

Tópicos Especiais em Otimização Tópicos Especiais em Otimização ivo.junior@ufjf.edu.br Juiz de Fora, 05 de Maio de 2016 Introdução Qual a diferença entre inteligência: ARTIFICIAL E COMPUTACIONAL? ARTIFICIAL: É a ciência que tenta compreender

Leia mais

APLICAÇÃO DE ALGORITMOS BIO-INSPIRADOS EM CONTROLE ÓTIMO

APLICAÇÃO DE ALGORITMOS BIO-INSPIRADOS EM CONTROLE ÓTIMO APLICAÇÃO DE ALGORITMOS BIO-INSPIRADOS EM CONTROLE ÓTIMO Profa. Mariana Cavalca Baseado em: Material didático do Prof. Dr. Carlos Henrique V. Moraes da UNIFEI Curso de verão da Profa. Gisele L. Pappa Material

Leia mais

Optimização Não-linear

Optimização Não-linear Optimização Não-linear Problemas de optimização não-linear A função a minimizar (maximizar) não é linear Exemplo: Z=43x 2 +log(x 2 )*sin(x x3 ), com x 3 -x 2! < 0 Não existem métodos universais para este

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

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

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

EVOLUÇÃO DIFERENCIAL APLICADA AO PROBLEMA DO DESPACHO ECONÔMICO ROBUSTO DE ENERGIA ELÉTRICA

EVOLUÇÃO DIFERENCIAL APLICADA AO PROBLEMA DO DESPACHO ECONÔMICO ROBUSTO DE ENERGIA ELÉTRICA EVOLUÇÃO DIFERENCIAL APLICADA AO PROBLEMA DO DESPACHO ECONÔMICO ROBUSTO DE ENERGIA ELÉTRICA Samuel José Jardim da Silva Universidade Federal de Viçosa - Campus Florestal Rodovia LMG 818, km 6, 35690-000

Leia mais

ALGORITMO GENÉTICO COMO REPRESENTAÇÃO DAS MUTAÇÕES NA BIOLOGIA

ALGORITMO GENÉTICO COMO REPRESENTAÇÃO DAS MUTAÇÕES NA BIOLOGIA Patrocínio, MG, outubro de 2016 ENCONTRO DE PESQUISA & EXTENSÃO, 3., 2016, Patrocínio. Anais... Patrocínio: IFTM, 2016. ALGORITMO GENÉTICO COMO REPRESENTAÇÃO DAS MUTAÇÕES NA BIOLOGIA Igor Acassio Melo

Leia mais

DESENVOLVIMENTO DE UM ALGORITMO PARALELO PARA APLICAÇÃO EM CLUSTER DE COMPUTADORES

DESENVOLVIMENTO DE UM ALGORITMO PARALELO PARA APLICAÇÃO EM CLUSTER DE COMPUTADORES DESENVOLVIMENTO DE UM ALGORITMO PARALELO PARA APLICAÇÃO EM CLUSTER DE COMPUTADORES João Ricardo Kohler Abramoski (PAIC/FUNDAÇÃO ARAUCÁRIA), Sandra Mara Guse Scós Venske (Orientadora), e-mail: ssvenske@unicentro.br

Leia mais

INTRODUÇÃO À. Adair Santa Catarina Curso de Ciência da Computação Unioeste Campus de Cascavel PR

INTRODUÇÃO À. Adair Santa Catarina Curso de Ciência da Computação Unioeste Campus de Cascavel PR INTRODUÇÃO À COMPUTAÇÃO EVOLUTIVA Adair Santa Catarina Curso de Ciência da Computação Unioeste Campus de Cascavel PR Fev/2018 Computação Evolutiva Ramo da ciência da computação que propõe um paradigma

Leia mais

Computação Evolutiva. Prof. Eduardo R. Hruschka (Slides baseados nos originais do Prof. André C. P. L. F. de Carvalho)

Computação Evolutiva. Prof. Eduardo R. Hruschka (Slides baseados nos originais do Prof. André C. P. L. F. de Carvalho) Computação Evolutiva Prof. Eduardo R. Hruschka (Slides baseados nos originais do Prof. André C. P. L. F. de Carvalho) Principais Tópicos Computação Evolutiva Algoritmos Genéticos Codificação Função de

Leia mais

Sistemas Inteligentes if684. Germano Vasconcelos Página da Disciplina:

Sistemas Inteligentes if684. Germano Vasconcelos Página da Disciplina: Sistemas Inteligentes if684 Germano Vasconcelos gcv@cin.ufpe.br Página da Disciplina: www.cin.ufpe.br/~îf684/ec 1 1 Algoritmos Genéticos 2 Algoritmos Genéticos n Técnicas de busca e otimização n Metáfora

Leia mais

Algoritmo Genético. Teoria da Evolução Princípio seguido pelos AGs

Algoritmo Genético. Teoria da Evolução Princípio seguido pelos AGs Algoritmo Genético Técnica de busca e otimização. Metáfora da teoria da evolução das espécies iniciada pelo Fisiologista e Naturalista inglês Charles Darwin. Desenvolvido por John Holland (1975) e seus

Leia mais

Aprendizado Evolutivo: Introdução aos Algoritmos Genéticos

Aprendizado Evolutivo: Introdução aos Algoritmos Genéticos Aprendizado Evolutivo: Introdução aos Algoritmos Genéticos SCC-230 Inteligência Artificial Thiago A. S. Pardo Solange O. Rezende 1 Computação Evolutiva (CE) Trata de sistemas para a resolução de problemas

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

Créditos. Introdução a Sistemas Inteligentes. Agenda Introdução Breve Histórico. Introdução. Introdução aos Algoritmos Evolutivos

Créditos. Introdução a Sistemas Inteligentes. Agenda Introdução Breve Histórico. Introdução. Introdução aos Algoritmos Evolutivos Introdução a Sistemas Inteligentes Introdução aos Algoritmos Evolutivos Créditos Este material consiste de adaptações e extensões dos originais gentilmente cedidos: pelo Prof. Dr. Eduardo Raul Hruschka

Leia mais

04 Grafos: caminhos e coloração SCC0503 Algoritmos e Estruturas de Dados II

04 Grafos: caminhos e coloração SCC0503 Algoritmos e Estruturas de Dados II 04 Grafos: caminhos e coloração SCC0503 Algoritmos e Estruturas de Dados II Prof. Moacir Ponti Jr. www.icmc.usp.br/~moacir Instituto de Ciências Matemáticas e de Computação USP 2011/1 Moacir Ponti Jr.

Leia mais

Estrutura comum dos AEs Seleção

Estrutura comum dos AEs Seleção Estrutura comum dos AEs Seleção Todos os AEs mantém uma população de tamanho m por: Utilizando uma população como fonte de pais para produzir n descendentes Reduzindo o tamanho da população expandida de

Leia mais

Estruturas de Dados 2

Estruturas de Dados 2 Estruturas de Dados 2 Técnicas de Projeto de Algoritmos Força Bruta IF64C Estruturas de Dados 2 Engenharia da Computação Prof. João Alberto Fabro - Slide 1/36 Técnica de Projeto de Algoritmos por Força

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 plicada Depto. de Computação e Matemática (FFCLRP/USP) 2 Computação Bioinspirada -

Leia mais

ALGORITMO GENÉTICO PARA O PROBLEMA DO DESPACHO ECONÔMICO DE ENERGIA ELÉTRICA COM INCERTEZAS

ALGORITMO GENÉTICO PARA O PROBLEMA DO DESPACHO ECONÔMICO DE ENERGIA ELÉTRICA COM INCERTEZAS ALGORITMO GENÉTICO PARA O PROBLEMA DO DESPACHO ECONÔMICO DE ENERGIA ELÉTRICA COM INCERTEZAS Rômulo Neves Martins Universidade Federal de Viçosa - Campus Florestal Rodovia LMG 818, km 6, 35690-000 - Florestal

Leia mais

INVESTIGANDO O PROBLEMA DA MOCHILA IRRESTRITA EM SUA VERSÃO BIDIMENSIONAL

INVESTIGANDO O PROBLEMA DA MOCHILA IRRESTRITA EM SUA VERSÃO BIDIMENSIONAL INVESTIGANDO O PROBLEMA DA MOCHILA IRRESTRITA EM SUA VERSÃO BIDIMENSIONAL Mirella Augusta Sousa Moura, mirella.asm14@hotmail.com Thiago Alves de Queiroz, th.al.qz@catalão.ufg.br Resumo: Empacotamento consiste

Leia mais

Algoritmo Aproximado. Prof. Anderson Almeida Ferreira [DPV]9.2 [ZIV]9.2.2 e 9.2.3

Algoritmo Aproximado. Prof. Anderson Almeida Ferreira [DPV]9.2 [ZIV]9.2.2 e 9.2.3 Algoritmo Aproximado Prof. Anderson Almeida Ferreira [DPV]9.2 [ZIV]9.2.2 e 9.2.3 Heurísticas para Problemas N P- Completo Heurística: algoritmo que pode produzir um bom resultado (ou até a solução ótima),

Leia mais

Algoritmos genéticos Abordagem unificada de algoritmos evolutivos simples

Algoritmos genéticos Abordagem unificada de algoritmos evolutivos simples Introdução Inspiração biológica Histórico da computação evolutiva Algoritmo evolutivo simples Programação evolutiva Estratégias evolutivas Algoritmos genéticos Abordagem unificada de algoritmos evolutivos

Leia mais

Computação Evolutiva. Prof. Eduardo R. Hruschka (Slides baseados nos originais do Prof. André C. P. L. F. de Carvalho)

Computação Evolutiva. Prof. Eduardo R. Hruschka (Slides baseados nos originais do Prof. André C. P. L. F. de Carvalho) Computação Evolutiva Prof. Eduardo R. Hruschka (Slides baseados nos originais do Prof. André C. P. L. F. de Carvalho) Principais Tópicos Computação Evolutiva Algoritmos Genéticos Codificação Função de

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

Optimização Não-linear

Optimização Não-linear Problemas de optimização não-linear Optimização Não-linear A função a minimizar (maximizar) não é linear Exemplo: Z=x +log(x )*sin(x x ), com x -x! < 0 Não existem métodos universais para este tipo de

Leia mais

Computação Evolucionária

Computação Evolucionária UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ UTFPR Programa de Pós-Graduação em Engenharia e Informática CPGEI Laboratório de Bioinformática e Inteligência Computacional Câmpus Curitiba (PR) Computação Evolucionária

Leia mais

3 Otimização Aplicada a Reconstituição de Acidentes

3 Otimização Aplicada a Reconstituição de Acidentes 27 3 Otimização Aplicada a Reconstituição de Acidentes 3.1. Otimização A otimização é uma metodologia empregada para minimizar ou maximizar uma função e geralmente são utilizados em problemas onde existam

Leia mais