Sei sulla pagina 1di 6

O Problema da Mochila resolvido por meio de algoritmos gen eticos e busca em feixe local

Ademir C. Gabardo, Mart n P erez o em Computac o Aplicada (PPGCA), Programa de P os Graduac a a Universidade Tecnol ogica Federal do Paran a (UTFPR)
1

Departamento de Inform atica Universidade Tecnol ogica Federal do Paran a (UTFPR) Curitiba PR Brasil

Resumo Este artigo tem por objetivo demonstrar uma maneira para resolver por meio o da de algoritmos gen eticos o problema das mochilas. Este consiste na otimizac a o de carga de distintos materiais em uma mochila com capacidade de carga combinac a o poss determinada de modo a possibilitar o transporte da melhor combinac a vel de elementos. Resultado no transporte da carga que oferece maior benef cio. A gura 1 ilustra de maneira sucinta o problema a ser solucionado. Abstract This article aims to demonstrate a way to resolve through genetic algorithm the problem of backpacks. This consists in optimizing the combination of different charge materials in a backpack carrying capacity determined so as to enable the transportation of the best possible combination of elements. Result in the transport of cargo that offers greater benet. Figura 1 illustrates succinctly the problem to be solved.

o 1. Introduc a
um problema de otimizac o combinat O problema da mochila e a oria que vem sendo recor rea de intelig rente objeto de estudo na a encia articial e existe vasta literatura apontando diversas maneiras de resolver este problema, dentre as abordagens propostas est ao, o, algoritmo das formigas, algoritmos dos morcegos, ABC e alm etodos de discretizac a goritmos gen eticos [3]. es pr Dentre as diversas aplicac o aticas para o uso de tais t ecnicas pode-se citar o na como exemplo, carregamento de cont eineres, [6] estocagem de materiais, otimizac a

sobre o problema da mochila Figure 1. Ilustrac ao

o de embalagens abrangendo a reas diversas de aplicac o de transporte de materiutilizac a a car [1] dentre outras tantas poss ais como o transporte do palhic o da cana de ac u veis. o em tempo polinomial, o problema da mochila e conPor n ao apresentar soluc a siderado um problema NP completo. Dependendo das dimens oes do problema, o n umero es cresce exponencialmente e demanda um enorme esforc de poss veis combinac o o com es viaveis. [3]. putacional para testar todas as soluc o o poss Para resolver o problema de como calcular a melhor combinac a vel uti o matem lizaremos a abordagem dos algoritmos gen eticos. A soluc a atica para o problema conhecida e representada pelas seguintes equac es. e o Maximizar Z = Sujeita a Sj {0, 1} o s e um vetor de uns e zeros. Se o objeto j est Uma soluc a a na mochila ent ao sj = 1, caso contr ario sj = 0.
n j =1 cj sj

n j =1 wj sj

<= b

2. Levantamento Bibliogr aco


2.1. Algoritmo Gen etico o introduzida por John Algoritmos Gen eticos consistem na t ecnica de busca e otimizac a Holland em 1975 [2]. Inspirados na teoria da evolucion aria de Darwin, os Algorit o inicial aleat o mos Gen eticos buscam convergir uma populac a oria para a melhor soluc a o natural e evoluc o dos indiv por meio do uso dos conceitos de selec a a duos. Para o e an a implementac a alise dos trabalhos apresentados neste artigo foram utilizadas as seguintes t ecnicas. o evolucion uma sub- A computac a aria e area da Intelig encia Articial, na qual diversos algoritmos evolucion arios est ao presentes. Algoritmos que possuem como o a teoria da evoluc o das esp inspirac a a ecies descrita por Charles Darwin em 1859 no o natural. livro A Origem das Esp ecies, teoria essa que introduziu o conceito de selec a o das esp Holland (1975) estudou formalmente a evoluc a ecies e prop os um modelo es para heur stico computacional que quando implementado poderia oferecer boas soluc o problemas extremamente dif ceis. Holland apresenta os algoritmos gen eticos como uma o e a met afora para os processos evolutivos, de forma que ele pudesse estudar a adaptac a o no mundo real.[5] evoluc a 2.2. Busca em Feixe Local uma adaptac o da busca em largura, que atrav O algoritmo de busca em feixe local e a es de o heur uma func a stica e um feixe de largura limitada, usa a mem oria dispon vel de forma o mais eciente, um de seus principais atrativos[4]. Apesar de n ao garantir uma soluc a tima, como o algoritmo de busca em largura, o objetivo e que atrav o o es de uma boa func a

heur stica, o algoritmo de busca em feixe local ser a capaz de selecionar vertices que fac am parte do caminho objetivo. completo e n timo, seu grau de comEste algoritmo n ao e ao garante o resultado o pletude est a relacionado ao tamanho do feixe. Uma heur stica ruim pode levar o algoritmo o na qual o mesmo n a uma situac a ao ser a capaz de capaz de de encontrar o seu objetivo, possivel que a chance do mesmo que este exista. Aumentando-se o tamanho dos feixe e timo aumente. No entanto um aumento muito grande algortimo encontrar o caminho o no feixe pode levar o algoritmo a car sem mem oria dispon vel antes de alcanc ar seu objetivo.

3. Metodologia e Resultados
3.1. Algoritmo Gen etico Para resolver o problema da mochila por meio de algoritmo gen etico foi adotada a partir de uma populac o inicial germetodologia foi a seguinte. O primeiro passo e a ada aleatoriamente com um n umero predenido de indiv duos. Para estes indiv duos um n umero vari avel deles pode apresentar cromossomo inv alido, ou seja, que n ao atenda as es do problema proposto. restric o o, para isto a t ltimo Deve-se ent ao validar a populac a ecnica escolhida foi alterar o u gene do cromossomo atribuindo o valor do alelo como 0, feita a mudanc a, testa nova feito de modo recursivo at mente o cromossomo, este processo e e que o cromossomo repetido para todos os demais indiv do indiv duo esteja v alido, o processo e duos da o at o inteira seja composta por indiv populac a e que a populac a duos v alidos. o e gerada a partir da t Feito isto, a nova populac a ecnica de Crossover que consiste em utilizar parte do DNA de um indiv duo e trocar por parte do DNA de outro indiv duo o momentaneadesta forma criando dois novos indiv duos. Como resultado a populac a mente ter a o dobro do tamanho de indiv duos estipulado. E necess ario ent ao remover a o, para isto, elegendo os pr parte excedente da populac a oximos indiv duos que ser ao os pais tendo como crit erio os que tiverem o melhor Fitness, isto faz com que os indiv duos es. mais fracos sejam eliminados naturalmente durante o processo evolutivo das gerac o o e mostrado o indiv Ao nal de cada processo de evoluc a duo com melhor Fitness es preestabelecidas. at e que o algoritmo atinja o n umero de gerac o Resultados Algoritmo Gen etico. Foram executadas cinco vezes cada teste ex o abaixo, os resultados abaixo representam a mediana ibidos nas tabelas de comparac a dos testes (valores com maior ocorr encia). Foram testadas as vari aveis, n umero de in es, taxa de Crossover e taxa de mutac o. div duos, n umero de populac o a O valor de Fitness apresentado corresponde a porcentagem da soma do valor de todos os itens. 3.2. Busca em Feixe o de quais itens podem ser guardados juntos na mochila Como n ao existe nenhuma restric a necess es poss se e ario uma estrutura que permita todas as combinac o veis. Tendo isto o da busca em feixe foi-se utilizado um grafo completo em vista, para a implementac a k14 (com 14 vertices e 91 arestas) com pesos nas arestas. A estrutura de dados para

Table 1. Testes variando tamanho da populac ao

N umero de Indiv duos 10 es N umero de Gerac o 30 Taxa de Crossover 0.2 o Taxa de Mutac a 0.1 Custo 23 Valor 29 Fitness 52.72%

20 30 0.2 0.1 23 33 60%

40 30 0.2 0.1 25 33 60%

80 30 0.2 0.1 25 35 63,63%

Table 2. Testes variando o numero de gerac oes

N umero de Indiv duos 30 es N umero de Gerac o 10 Taxa de Crossover 0.2 o Taxa de Mutac a 0.1 Custo 24 Valor 31 Fitness 56.36%

30 20 0.2 0.1 25 33 60%

30 40 0.2 0.1 25 33 60%

30 80 0.2 0.1 25 35 63,63%

Table 3. Testes variando a taxa de Crossover

N umero de Indiv duos 25 es N umero de Gerac o 25 Taxa de Crossover 0.2 o Taxa de Mutac a 0.1 Custo 25 Valor 32 Fitness 58.18%

25 25 0.3 0.1 23 33 60%

25 25 0.4 0.1 25 35 63,63%

Table 4. Testes variando a taxa de mutac ao

N umero de Indiv duos 25 es N umero de Gerac o 25 Taxa de Crossover 0.3 o Taxa de Mutac a 0.1 Custo 24 Valor 34 Fitness 61.81%

25 25 0.3 0.3 25 33 60%

25 25 0.3 0.5 25 33 60%

25 25 0.3 0.8 24 32 58.18%

Figure 2. Grafo Completo K14

armazenar este grafo foi uma matriz de adjac encias com pesos que servem para o c alculo da heur stica de melhor caminho. Foram usados como heur stica de busca o menor peso e posteriormente a maior o entre valor/peso. Foram obtidos os seguintes resultados: relac a
Table 5. Menor peso como heuristica

Feixe(s) 1 2 3

Valor 27 27 23

Peso 24 21 21

Valor/Peso como heur Table 6. Maior relac ao stica

Feixe(s) 1 2 3

Valor 34 29 21

Peso 24 24 19

limitado, e cada vertice e visitado somente uma vez Como o conjunto de itens e o aumento do feixe n ao ajudou na melhora do resultado. Como pode ser percebido os melhores resultados foram obtidos com apenas um feixe de tamanho 1, cando de forma semelhante a uma busca gulosa.

4. Conclus ao
es obtiveram algum sucesso, apesar de que os resultados terem sido Ambas implementac o visivelmente melhores com algoritmos gen eticos. Possivelmente devido a falta de uma o utilizando-se busca em feixe local. A qualidade heur sitica mais eciente para a soluc a dos resultados dos algoritmos gen eticos pode ser diretamente associada ao tamanho da

o, ao n es e taxa de crossover. J o n populac a umero de gerac o a a taxa de mutac a ao garantiu melhorias. A qualidade dos resultados da busca em feixe local foi associada a heur stica e ao n umero de feixes.

References
[1] Silvely Nogueira de Almeida Salom ao N eia Guilherme Gomes Neves de Oliveira. Uso de do problema da mochila no transporte do palhiC algoritmos genEticos na resoluC Ao o da cana-de aC Ucar. pages 60406043, 2009. [2] J.H. Holland. Adaptation in Natural and Articial Systems: An Introductory Analysis with Applications to Biology, Control, and Articial Intelligence. Bradford Books, 1992. [3] Heitor S. Lopes Jonas Krause, Jelson A. Cordeiro. Problema 0-1 de m ultiplas mochilas utilizando m etodos bin arios e discretizados. 2012. [4] Andrew Jungwirth. Beam search algorithm, 2005. [5] Ricardo LINDEN. Algoritmos Gen eticos: Uma importante ferramenta da intelig encia computacional. Brasport, 2008. [6] Wesley Osvaldo Pradella Rodrigues. O problema da mochila resolvido com algoritmos gen eticos usando a ferramenta ms excel 2003. CNMAC, 2:979980, 2009.

Potrebbero piacerti anche