+ All Categories
Home > Documents > Meta heuristica Colonia de Formigas

Meta heuristica Colonia de Formigas

Date post: 17-Nov-2023
Category:
Upload: maringa
View: 0 times
Download: 0 times
Share this document with a friend
13
“META-HEURÍSTICA COLÔNIA DE FORMIGAS” Tieme Magni Sacamoto (1); Bruna Tamara de Lima(2); Edwin Kimura(3); Mateus Clemente Minirvino(4); (1)Graduanda de Engenharia de Produção, [email protected], RA 83302, Universidade Estadual de Maringá (2) Graduanda de Engenharia de Produção, [email protected], RA 82104, Universidade Estadual de Maringá (3) Graduando de Engenharia de Produção, [email protected], RA 78929, Universidade Estadual de Maringá (4) Graduando de Engenharia de Produção, [email protected], RA 79499, Universidade Estadual de Maringá RESUMO A Otimização por Colônia de Formigas (Ant Colony Optimization - ACO) é uma meta- heurística construtiva utilizada para resolver problemas de otimização combinatória ( Combinatorial Optimization Problem – COP). Possui base populacional, pois utiliza formigas artificiais para percorrer o grafo do problema de nó a nó ou vértice a vértice para construir uma solução. Ao caminhar pelas arestas do grafo conectado, as formigas conhecem os valores de feromônio depositado por outras e, então, fazem escolhas que vão solucionando o problema. Para a aplicação da ACO, diversos algoritmos foram desenvolvidos. Neste trabalho será relacionado o algoritmo Ant System (AS). A abordagem deste artigo busca apresentar um modelo de meta-heurística, bem como uma de suas aplicações - o Problema do Caixeiro Viajante -, códigos algorítmicos e outras informações convenientes. Ainda que de maneira clara e sucinta, visto que o assunto ainda é pouco explorado e carece de mais e melhores fontes de pesquisa. ABSTRACT Ant Colony Optimization (ACO) is a constructive metaheuristic used to solve Combinatorial Optimization Problems (COP). It has a populational basis, by use artificial ants to move through the arcs of the problem’s graph to build a solution. By walking through the edges of the connected graph, the ants explore the pheromone values deposited by other ones before and then make choices that will solve the problem. Several algorithms have been developed to be used at the ACO and this essay will relate Ant System algorithm (AS). The approach of this paper aims to present a meta-heuristic model as well as one of its applications - the Traveling Salesman Problem - algorithmic codes and other convenient information. Although clearly and succinctly, given the fact it is still a barely explored field and requires more and better research sources
Transcript

“META-HEURÍSTICA COLÔNIA DE FORMIGAS”

Tieme Magni Sacamoto (1); Bruna Tamara de Lima(2); Edwin Kimura(3); Mateus Clemente Minirvino(4);

(1)Graduanda de Engenharia de Produção, [email protected], RA 83302, Universidade Estadual de Maringá

(2) Graduanda de Engenharia de Produção, [email protected], RA 82104, Universidade Estadual de Maringá

(3) Graduando de Engenharia de Produção, [email protected], RA 78929, Universidade Estadual de Maringá

(4) Graduando de Engenharia de Produção, [email protected], RA 79499, Universidade Estadual de Maringá

RESUMO

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

heurística construtiva utilizada para resolver problemas de otimização combinatória

(Combinatorial Optimization Problem – COP). Possui base populacional, pois utiliza formigas

artificiais para percorrer o grafo do problema de nó a nó ou vértice a vértice para construir uma

solução. Ao caminhar pelas arestas do grafo conectado, as formigas conhecem os valores de

feromônio depositado por outras e, então, fazem escolhas que vão solucionando o problema.

Para a aplicação da ACO, diversos algoritmos foram desenvolvidos. Neste trabalho será

relacionado o algoritmo Ant System (AS). A abordagem deste artigo busca apresentar um

modelo de meta-heurística, bem como uma de suas aplicações - o Problema do Caixeiro

Viajante -, códigos algorítmicos e outras informações convenientes. Ainda que de maneira clara

e sucinta, visto que o assunto ainda é pouco explorado e carece de mais e melhores fontes de

pesquisa.

ABSTRACT

Ant Colony Optimization (ACO) is a constructive metaheuristic used to solve Combinatorial

Optimization Problems (COP). It has a populational basis, by use artificial ants to move through

the arcs of the problem’s graph to build a solution. By walking through the edges of the

connected graph, the ants explore the pheromone values deposited by other ones before and then

make choices that will solve the problem. Several algorithms have been developed to be used at

the ACO and this essay will relate Ant System algorithm (AS). The approach of this paper aims

to present a meta-heuristic model as well as one of its applications - the Traveling Salesman

Problem - algorithmic codes and other convenient information. Although clearly and succinctly,

given the fact it is still a barely explored field and requires more and better research sources

1. INTRODUÇÃO

Os métodos heurísticos são utilizados para indicar uma solução plausível para um problema cuja

solução ótima é inviável/dispendiosa quando do uso de métodos exatos ou quando não há

técnicas exatas para tal. Estes métodos apresentam uma solução (que pode ser a melhor ou

somente satisfatória) em um tempo computacional admissível. Na busca por métodos cada vez

melhores, diversas meta-heurísticas foram desenvolvidas, entre as quais há aquelas inspiradas

na natureza: como o caso das formigas.

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

heurística recente, que foi inspirada pelo comportamento das formigas na busca pelo menor

caminho entre os alimentos que encontram e seu formigueiro. O modelo pode ser caracterizado

por ser construtivo e pelo uso da função heurística para acesso a informações adicionais do

problema, as quais abastecem diretamente o processo de construção. Esta positiva realimentação

é resultado da cooperação entre as formigas e pode ser considerada como um processo

autocatalítico.

Por ser populacional, a cada iteração, a ACO examina diversas regiões do espaço de busca,

ampliando as chances de boas soluções serem eleitas. Bastantes trajetórias são avaliadas e

combinadas para produzir novas soluções. A ACO também apresenta processamento rápido,

embora não possa garantir que a melhor solução será encontrada. Ainda assim, seus algoritmos

já obtiveram sucesso ao serem executados para problemas como o da mochila, problema

generalizado de atribuição, cobertura de conjunto, quadrático de alocação e problema de

roteamento de pacotes em redes de computadores.

O primeiro algoritmo de ACO a ser proposto foi o Ant System (AS). Introduzido no início na

década de 1990, foi o primeiro a resolver um problema de otimização combinatória do tipo NP-

hard, o Problema do Caixeiro Viajante.

A utilização de meta-heurísticas compreende a otimização de custos (sejam eles de natureza

econômica, social, etc.), viabilidade de rotas, maximização ou minimização de variáveis, fluxos,

entre outras variantes.

2. OBJETIVO

As meta-heurísticas objetivam descobrir uma boa solução, a qual pode ser a ótima problemas de

elevada complexidade, em um tempo razoável. A Otimização por Colônia de Formigas, como

outros métodos heurísticos, explora o espaço de soluções além do ótimo local, pois considera

também testar novas regiões. O objetivo deste artigo é apresentar o conceito e funcionamento da

Otimização por Colônia de Formigas, um algoritmo destinado a sua resolução (Ant System) e

uma aplicação (Problema do Caixeiro Viajante). Com isto, espera-se demonstrar a relevância

das meta-heurísticas, não somente a eleita para este trabalho, para satisfazer questões muito

difíceis ou impossíveis de serem solucionadas.

3. DESENVOLVIMENTO

A meta-heurística de Otimização por Colônia de Formigas (Ant Colony Optimization - ACO) foi

definida por Dorigo, Di Caro e Gambardella em 1999. O modelo probabilístico visa à resolução

de problemas de otimização combinatória (Combinatorial Optimization Problem – COP) pela

busca do menor caminho em um grafo.

A proposta surgiu a partir de observações de formigas reais, em especial em seu comportamento

na busca por alimento. Essa atividade induz as formigas a encontrarem os trajetos mais curtos

entre as fontes de alimento e seu formigueiro. Ao percorrer as trilhas, elas depositam feromônio

(substância química secretada especialmente por insetos e mamíferos); assim, elas cooperam

umas com as outras na escolha do percurso a realizar, pois, as formigas são atraídas pelo

composto. Como o feromônio acumulado em um caminho trilhado por mais formigas é maior

que em um percorrido por menos, com o tempo, a maioria das formigas acaba decidindo pelo

caminho com mais feromônio.

Inicialmente, não existe feromônio por onde as formigas estão passando, por isso a

probabilidade de escolha é igual nesta primeira decisão. Isto é, elas podem caminhar para

qualquer nó de sua vizinhança factível. Em seguida, as formigas que passaram pelo menor

caminho estão voltando, depositando ainda mais substância; aquelas que escolheram o caminho

mais longo não completaram ainda o percurso pela primeira vez. Então, a segunda decisão das

formigas tenderá a ser pelo caminho mais curto. A cada iteração, mais formigas vão decidir por

este mesmo caminho.

O trabalho individual e a comunicação coletiva são levados em conta, pois cada formiga opera

considerando as informações dessa comunicação, construindo soluções individuais. A cada

iteração, uma população de formigas é levada em conta, o que pode ser observado no algoritmo

pelo conjunto de soluções simultaneamente levantadas. O feromônio depositado é o canal de

comunicação entre as formigas e representa as informações numéricas que elas todas utilizam.

Estes dados projetam o conhecimento obtido durante o processo. Para que um canal seja

mantido ativo é necessária constante adição da substância, pois esta é atualizada ao longo do

tempo, seja por este acréscimo, seja pela evaporação.

A construção de soluções ocorre segundo uma regra de decisão probabilística, a qual é

fundamentada nas informações heurísticas, informações sobre o caminho com feromônio, e

restrições do problema. Ou seja, como o conjunto de agentes formado pelas formigas artificiais

procura simultaneamente por soluções para o problema em questão, a informação heurística,

juntamente a concentração de feromônio e condições impostas, direciona sua escolha. Assim, os

agentes artificiais consolidam as melhores soluções e geram convergência rapidamente.

Figura 1- Exemplo de movimento das formigas artificiais.

Na figura, A e E são os pontos extremos a serem alcançados pelas formigas, H e C são pontos

intermediários, onde as formigas decidem o caminho a seguir, t equivale ao tempo do sistema e

d à distância do caminho. A observação das colônias de formigas permitiu a elaboração de um

sistema de colônia de formigas artificiais. No qual, o tempo é discreto e as formigas têm uma

memória limitada para registrar o percurso de regresso; também, diferente da maior parte das

formigas naturais, não são cegas por completo. O valor numérico que representa o hormônio no

caminho e é atualizado pelas formigas segundo determinações do algoritmo em uso.

No método, cada formiga parte de um estado inicial, geralmente, formado pelo nó ou vértice no

qual ela está quando começa a andar. Cada formiga constrói uma sequência, acrescentando um

nó por vez e sua memória, ainda que restrita, a possibilita refazer a trajetória até o momento.

Aqui, as formigas podem ser tomadas como processos estocásticos e também estão sujeitas a

condições de parada, associadas à obtenção de uma solução factível para o problema.

A ACO pode ser executada para quaisquer problemas de otimização combinatória, cujas

restrições são implementadas e, então, seguidas pelas formigas; fato que permite alguma

flexibilidade. Quando o problema permitir, restrições podem ser implementadas de forma fixa,

assim as formigas construirão soluções exequíveis somente. Do contrário, pode ser que as

formigas cheguem a soluções infactíveis.

A ACO pode ser aplicada a problemas como o Problema do Caixeiro Viajante (PCV), o

Problema de Roteamento de Veículos (PRV), o Problema de Atribuição Quadrático (PQA) e

Job-Shop Scheduling, entre outros. Vale ressaltar que um pré-processamento pode ser feito para

reduzir o problema inicial em um problema menor para facilitar sua resolução ou melhorar o

desempenho do algoritmo.

Para aplicar a ACO em um problema de otimização combinatória, primeiramente define-se um

modelo do COP contendo S, Ω, F:

S é um espaço de busca definido sobre um conjunto finito de variáveis discretas de

decisão;

Ω é um conjunto de restrições entre as variáveis;

f: S → R + 0 é uma função objetivo a ser minimizada (maximizar sobre f é o mesmo

que minimizar sobre -f, todo COP pode ser descrito como um problema de

minimização).

A definição do espaço de busca S é da seguinte forma: um conjunto de variáveis discretas Xi, i

= 1, ..., n, com valores vji∈Di = {v1

i, ..., v |Di| i}, é dado. Os elementos de S são atribuições em

que cada variável Xi tem um valor VJI atribuído por seu domínio Di. O conjunto de soluções

viáveis SΩ é dado pelos elementos de S que atendem todas as restrições de Ω.

Uma solução de s * ∈ SΩ somente pode ser considerada ótimo global se e somente se

f(S*) ≤ f(s) ∀s ∈ SΩ. O conjunto formado por todas as soluções de ótimo global é designado por

S*Ω ⊆ SΩ. Para resolver um COP é necessário encontrar ao menos um s* ∈ S*w.

As formigas artificiais caminham por um grafo totalmente conectado, em que, cada variável de

decisão Xi = VJI é um componente da solução representado por c (i, j). O conjunto de todas as

soluções possíveis é denominado C. O grafo GC (V, E) apresenta a associação dos elementos de

C, com os vértices (conjunto V) ou com as arestas (conjunto E). O valor de um feromônio τ (i, j)

está associado a um componente c (i, j). Tais valores admitem que a distribuição de

probabilidade de diferentes componentes da solução sejam modelados. O algoritmo ACO utiliza

e atualiza os valores de feromônio durante sua execução, os quais, geralmente, são uma função

do algoritmo de iteração t: Τ (i, j) = τ (i, j) (t).

A quantidade de feromônio Δτ depositado pelas formigas pode depender da qualidade da

solução encontrada.

O algoritmo da meta-heurística da ACO possui uma etapa de inicialização e três que são

algorítmicas reguladas pelo laço enquanto/faça (SCHEDULE_ACTIVITIES). O loop é refeito

até que um critério de parada seja satisfeito, como número máximo de iterações ou um tempo

máximo de CPU.

Na maioria dos usos de ACO em problemas NP-hard, os elementos algorítmicos estão em um

ciclo de:

1- construção de soluções por todas as formigas;

2- melhoria (opcional) destas soluções por meio de algoritmo de busca local;

3- atualização dos valores de feromônios.

Figura 2 - Meta-heurística ACO

3.1 Construção de soluções pelas formigas (ConstructAntSolutions)

Um conjunto de m formigas artificiais constrói soluções utilizando elementos de um conjunto

finito de soluções disponíveis C= {C(i, j)}, i = 1, ..., n, j = 1, ..., |D(i)| . A construção é iniciada

com uma solução parcial vazia sp = . A cada etapa da construção, é acrescentado um∅

componente da solução viável do conjunto de vizinhos factíveis N (sp) ⊆ C à solução atual sp. O

processo de construção de soluções pode ser considerado como um caminho para construção do

grafo GC (V, E). Os caminhos permitidos em GC são determinados implicitamente pela

construção de soluções, que determina o conjunto N (SP) em relação a uma solução parcial sp.

A cada iteração ocorre, de maneira probabilística, a escolha de um componente da solução de N

(SP). As regras dessas escolhas variam entre diferentes variantes de ACO.

3.2 Aplicação de busca local (DaemonActions)

Depois de as construções das soluções podem ser necessárias algumas ações específicas para o

problema: as denominadas ações daemon. Elas podem ser utilizadas para

implementar operações específicas que, sozinhas, as formigas não podem  executar. A

ação daemon mais comum é o emprego da busca local para as soluções construídas, desse

modo, recorre-se às soluções localmente ideais são para decidir quais valores de

feromônio atualizar.

3.3 Atualização de feromônios (UpdatePheromones)

A atualização do feromônio visa elevar os valores da substância que estão relacionados a boas

soluções, ao passo que reduz os que têm vínculos com as ruins. Em geral, isto se realiza pela

diminuição das quantidades dos feromônios concentrados em trilhas não-aprovadas por meio da

evaporação e pela ampliação da concentração dos feromônios ligados a um conjunto de boa

soluções escolhido (Supd: τij ← (1-ρ) τ⋅ ij + ρ Σ⋅ s∈Supd|cij∈s F(s)).

Supd é o conjunto das soluções utilizadas para a atualização, ρ ∈ (0,1] é o parâmetro taxa de

evaporação, e F: S → R + 0 é uma função tal que f (s) <f (s ' ) ⇒F (s) ≥F (s), ∀s ≠ s'∈S . F ( ) é⋅

comumente chamado de função de fitness. Cuja atribuição é possibilitar que o algoritmo avalie a

qualidade e se direcione para boas soluções.

A evaporação do feromônio é uma forma útil de esquecimento, contribuindo com a exploração

de novas áreas no espaço de busca.

Instâncias da regra de atualização são dadas por diferentes especificações de S upd, que muitas

vezes é um subconjunto de Siter ∪ {SBS}. Siter é o conjunto de soluções construídas na iteração

atual; SBS é a melhor solução encontrada até então.

3.4 Principais algoritmos ACO

Diversos algoritmos para a meta-heurística ACO foram propostos na literatura. Os mais bem-

sucedidos foram o sistema de formiga (Ant System – AS; Dorigo 1992, Dorigo 1991 et al,

1996), o sistema de colônia de formigas (Ant Colony System – ACS; Dorigo e Gambardella

1997), e sistema MAX-MIN (MAX-MIN Ant System- MMAS; Stützle & Hoos 2000). A seguir,

será apresentado o Ant System.

Figura 3- Código genérico da ACO

3.5 Sistema de Formiga (Ant System -AS)

O primeiro sistema para ACO foi apresentado por Marco Dorigo em sua tese de PhD em 1992,

denominado Ant System. O AS é o resultado de uma pesquisa computacional sobre inteligência

artificial que aborda otimização combinatória, desenvolvida por Dorigo, Colorni e Maniezzo.

A princípio, foram propostas três versões do AS : ant-density, ant-quantity e ant-cycle. As três

diferenciam-se essencialmente pela atualização do feromônio; na ant-density e ant-quantity as

formigas realizam a atualização logo depois de irem da aresta atual para uma adjacente. Na ant-

cycle, a atualização é feita após todas as formigas terem construído seus percursos. Como este

último teve melhor desempenho, acabou sendo eleito e tornou-se o Ant System.

A característica principal do AS é que os valores de feromônios são atualizados por todas as

formigas que tenham concluído o trajeto. Os componentes da solução c(i, j) são as arestas do

grafo; a atualização de feromônio para τ(i, j) relacionado às arestas das cidades (em junção) i e j,

é

ρ ∈ (0,1] corresponde a taxa de evaporação, m representa o número de formigas e é a

quantidade de feromônio depositado na aresta (i, j) pela k-ésima formiga:

, se a k-ésima formiga usou a aresta (i, j) em seu percurso, caso contrário. L k é

o comprimento do trajeto da k-ésima formiga.

Ao construir as soluções, as formigas caminham pelo o grafo tomam uma decisão probabilística

em cada vértice. A probabilidade de transição do movimento da k-ésima formiga da

cidade i para a cidade j é encontrada em

, se , caso contrário.

Com conjunto de componentes que ainda não pertencem à solução parcial da

formiga k; α e β são parâmetros que controlam a importância do feromônio face a informação

heurística η(i, j) = 1 / d(i, j); em que, d(i, j) corresponde ao comprimento do componente c(i, j)

(aresta (i, j)).

Em relação às regras de escolha de probabilidade na construção de soluções pelas formigas, a

regra mais conhecida é a do AS:

τ(i, j) é o valor feromônio, η(i, j) é o valor heurístico associado ao componente C(i, j); α e β são

parâmetros reais positivos cujos valores determinam a importância relativa de feromônio em

relação às informações heurísticas.

A regra de atualização de feromônio mais conhcedia é a AS-update, que é a regra de atualização

do sistema de formiga; elucidada por Dorigo em 1991: Supd ← Siter.

Figura 4 - Código genérico do AS

3.6 Aplicação do AS ao TSP

Basicamente, no problema do caixeiro viajante (Traveling Salesman Problem - TSP) há um

conjunto de cidades com as distâncias entre elas conhecidas e um caixeiro viajante deseja

determinar um menor caminho que passe por todas elas uma única vez e retorne à cidade de

origem. O TSP pode ser demonstrado em um grafo G(N, A), o conjunto de vértices N equivale

às cidades e o conjunto de arestas A representa as ligações entre as cidades. Para cada (i, j) ∈ A

há um valor d(i, j) correspondente à distância entre as cidades i e j. O objetivo do TPS é

justamente encontrar o caminho desejado pelo caixeiro. O custo total dos percursos utilizados

deve ser minimizado. Ao aplicar o AS ao TSP, m formigas artificiais são colocadas em uma

cidade (vértice/nó) i escolhida ao acaso. Cada formiga construirá um percurso ao decidir por

uma cidade a cada passo, considerando a concentração de feromônio e as distâncias. τ (i, j)

corresponde ao nível de feromônio entre as cidades e quanto maior for, maior a probabilidade

de a aresta ser escolhida. O valor heurístico η(i, j) é determinado pela distância entre as cidades:

η(i, j) = 1/d(i, j). Assim, para menores distâncias d(i, j), o valor de η(i, j) aumenta, o que eleva

possibilidade de a aresta ser selecionada. A probabilidade de uma formiga k, localizada na

cidade i, optar pela cidade j, entre as ainda não visitadas, é dada por

Jk representa as cidades ainda não percorridas pela formiga k. Os parâmetros α e β são relativos

a importância relativa das informações heurísticas versus as informações do feromônio. Se α =

0, a chance de escolha é proporcional a η(i, j), favorecendo as cidades mais próximas. O

algoritmo, nesta situação, assume um comportamento de método guloso estocástico com

múltiplos pontos de partida. Se β = 0, somente o uso de feromônio exerce influência, assim a

busca é rapidamente estagnada: todas as formigas trilham o mesmo caminho e constroem as

mesmas soluções (geralmente sub-ótimas). A construção de soluções factíveis faz as formigas

utilizarem a memória Jk , a qual, em cada passo da construção, auxilia na determinação das

cidades ainda não visitadas e na reprodução do caminho de volta. Assim que todas as formigas

constroem um percurso, ocorre a atualização da trilha de feromônio. De início, o feromônio

sofre evaporação em todos os arcos, de acordo com:

τ (i, j) = (1 − ρ) · τ (i,j) ∀(i, j) ∈ A,

0 < ρ ≤ 1 fixado previamente.

O parâmetro da evaporação é importante para impedir o acúmulo ilimitado da substância pelos caminhos e para que soluções ruins tomadas anteriormente sejam esquecidas. Para arcos não selecionados pelas formigas, o valor do feromônio decresce exponencialmente.

Todas as formigas devem deixar feromônio nos arcos por onde passam, segundo:

Onde

∆τk(i, j) é quanto feromônio depositado pela k-ésima formiga nos arcos pelos quais ela

caminhou durante a rota. Pela equação, pode-se afirmar que o quão mais os arcos são

percorridos pelas formigas, mais feromônio eles recebem; logo, a probabilidade de serem

selecionados em iterações futuras. Além disso, tanto menor o caminho total Ck trilhado pela

formiga k, maior o nível de feromônio ∆τk(i, j) a ser depositado. Assim, o algoritmo atribui

maior peso para as formigas que percorrerem os menores trajetos.

3.7 Comparação com outros métodos

Comparando a heurística da colônia de formigas com a heurística do algoritmo genético (AG) aplicadas no problema do caixeiro viajante, o modelo colônia de formigas é mais eficiente pois, ele armazena a memória de toda a colônia, diferente do AG, que guarda apenas a geração anterior. O Ant System (AS) possui bons resultados para grafos pequenos, pois grafos maiores, já exigem mudanças no AS, e grafos muito grandes utilizam uma grande quantidade de memória, pois possui varias operações probabilísticas, pontos flutuantes.

O AS foi inicialmente proposto para resolver o Problema do Caixeiro Viajante (PCV), mas também pode ser utilizado em:

Arranjo sequencial Atribuição quadrática Escalonamento Coloração de grafos Roteamento de veículo

O método de otimização por colônias de formigas é recente e ainda esta sofrendo muitas variações, mas já se mostra muito eficientes em problemas dinâmicos e problemas que possuem restrições discretas.

3.7.1 Teste realizado entre diferentes ACO

Tabela 1 - Alguns dos algoritmos da meta-heurística Ant Colony Optimization (ACO).

I. Processador: Intel Pentium 4 3.2GHz.II. Memória RAM: 3GB.

III. Algoritmos comparados: AS, ACS, MMAS.IV. Instância utilizada: pcb3038 da TSPLIB (solução ótima = 137694).V. Estratégia de busca local: 2-opt, 3-opt, first improvement, sem a utilização de busca

local.

ALGORITMO AUTOR ANOANT SYSTEM DORIGO 1991ELITIST AS DORIGO 1992

ANT-QGAMBARDELLA & DORIGO 1995

ANT COLONY SYSTEM

GAMBARDELLA & DORIGO 1996

MAX-MIN AS STÜTZLE & HOOS 1996RANK-BASED AS BULLNHEIMER 1997ANTS MANIEZZO 1999BWAS CORDON 2000HYPER-CUBE AS BLUM 2001

VI. Total de testes: 3240(3 algoritmos * 10 execuções * 108 parâmetros).VII. Critério de parada: tempo limite de execução de 10 segundos por teste.

Tabela 2 – Resultados dos testes com ACO

AS: Foi em média o algoritmo mais rápido a ser executado, porém o menor custo encontrado foi o pior entre os algoritmos testados.

ACS: Conseguiu a melhor média, mostrando uma regularidade entre os resultados.

MMAS: Foi o algoritmo que mais aproximou-se da solução ótima, apesar de ter o tempo médio de processamento mais alto entre os algoritmos testados.

4. CONCLUSÃO

Apesar de apresentar bons resultados e despertar grande interesse de estudiosos, a aplicação da

Otimização por Colônia de Formigas ainda não garante que a solução encontrada seja a melhor

global. Um dos motivos é que nem sempre serão encontrados os níveis ideais de feromônio que

permitem chegar à melhor solução. Isso se deve ao fato de as regras de atualização provocarem

pequenas alterações incrementais nas concentrações de feromônio, o que pode levar seus níveis

a tenderem a um ponto que é localmente ótimo apenas. Seria, então, interessante trocar a busca

realizada pelas regras de atualização por outra com algoritmos de busca mais globais. Ainda

assim, a aplicação de modelos heurísticos, como a ACO, desempenha importante função para

resolução (mesmo que parcial ou ótima local) de determinados problemas. Como os aqueles que

não possuem um método exato que os solucione ou, se houver, necessite de um tempo muito

longo de processamento; ou os satisfeitos por soluções obtidas pelas heurísticas mesmo que não

seja a solução ótima; também nos quais a procura pela solução ótima puder ser uma

aproximação da realidade, pois seus dados são questionáveis; também aqueles problemas em

que restrições de tempo e/ou dinheiro exigem a obtenção de resposta rapidamente; ou então,

como recursos em outros algoritmos exatos ou heurísticos.

Os algoritmos capazes de utilizar métodos heurísticos para extrair respostas por meio de

softwares apresentam resultados muito bons e são essenciais para o melhor aproveitamento dos

métodos. Trabalha bem com pequenos grafos, mas para grafos grandes piora seu desempenho e

se torna mais lento. Este campo pode e deve crescer ainda mais dada sua importância e

possibilidade de melhoria, bem como as próprias meta-heurísticas.

REFERÊNCIAS BIBLIOGRÁFICASLOMBARDI, Mirlan Moro “Aplicação da Meta-Heurística Colônia de Formigas ao problema

de roteamento de veículos”.

COELHO, Leandro dos Santos “Colônia de Formigas: uma abordagem promissora para

aplicações de atribuição quadrática e projeto de Layout”.

MARCINIUK, Fernanda Ledo “Uma aplicação do algoritmo Colônia de Formigas no problema

de corte ordenado”.

ANDRADE, D. “Grasp with evolutionary path-relinking. AT&T Labs Research Technical

Report, TD-6XPTS7”

CÓRDON, Oscar “A Review on the Ant Colony Optimization Metaheuristic: Basis, Models

and New Trands”

CARABETTI, Eduardo “Metaheurística Colônia de formigas aplicada ao problema de

roteamento

BLUM C. “Metaheuristics in combinatorial optimizaiton: Overview and conceptual comparation. ACM Computing Surveys, 35(3):268–308”

DORIGO M. e GAMBARDELLA L.M. “Ant colony system: A cooperative learning approach to the traveling salesman problem. IEEE Transactions on Evolutionary Computation, Vol.1, No.1, pages 1–24”

VIANA, Jair “Uma heuristic baseada em colônia de formigas para o problema do carteiro chinês misto”

GAMBARDELLA Luca “Ant Colony System A Cooperative Learning Approach to the Traveling Salesman Problem”


Recommended