• Nenhum resultado encontrado

A Otimização Colônia de Formigas

N/A
N/A
Protected

Academic year: 2019

Share "A Otimização Colônia de Formigas"

Copied!
45
0
0

Texto

(1)

A Otimização

Colônia de Formigas

Estéfane G. M. de Lacerda

Departamento de Engenharia da Computação e Automação UFRN

(2)

Índice

A Inspiração Biológica

O Ant System Aplicado ao PCV

O Ant System Aplicado ao PQA

(3)

O que é Otimização por Colônia de

Formigas

(4)

A Inspiração Biológica

Muitas espécies de formigas são quase

cegas.

A comunicação entre as formigas é

realizada através de uma substância

química denominada de feromônio.

Em algumas espécies, o feromônio é usado

(5)
(6)
(7)
(8)

A Inspiração Biológica

Ao caminhar, as formigas depositam no

chão o feromônio, formando, deste modo,

uma trilha de feromônios.

As formigas sentem o cheiro do feromônio,

e quando elas têm que escolher um

caminho, escolhem, com maior

probabilidade, o caminho com maior

quantidade de feromônio (cheiro mais

forte).

A trilha ajuda a formiga a achar o caminho

(9)

O Experimento da Ponte Binária

(10)

O Experimento da Ponte Binária

No inicio:

As formigas são deixadas livres para escolher o

caminho.

(11)

O Experimento da Ponte Binária

As formigas convergem

para um dos caminhos

com igual

probabilidade.

Devido a flutuações

aleatórias, uma das

pontes terá mais

feromônio e atrairá as

formigas com maior

probabilidade.

No Fim:

(12)

O Experimento da Ponte Binária

Usando pontes de tamanhos diferentes, as

formigas convergem para a ponte mais curta.

Uma formiga percorre ida e volta a ponte curta no mesmo tempo que outra formiga realiza apenas o percurso de ida na ponte longa.

(13)

Formigas Artificiais

Formigas artificiais são heurísticas

construtivas.

Elas constroem soluções de forma

probabilística utilizando duas informações:

1. Atrilha de feromônio(artificial) que muda

dinamicamente durante a execução do programa de modo a refletir a experiência já adquirida durante a busca.

2. Ainformação heurísticaespecifica do

(14)

O Ant System Aplicado ao PCV

O Ant System é o primeiro algoritmo que surgiu inspirado em Colônia de formigas.

Matriz Distância do PCV

1 2 3 4 5

1 0,0 1,0 2,2 2,0 4,1

2 1,0 0,0 1,4 2,2 4,0

3 2,2 1,4 0,0 2,2 3,2

4 2,0 2,2 2,2 0,0 2,2

5 4,1 4,0 3,2 2,2 0,0

(15)

Exemplo com o PCV

Cada formiga irá

construir uma solução

movendo-se de uma

cidade para outra.

No ínicio, cada formiga

é colocada em uma

cidade diferente (ou

colocada

(16)

A Construção da Solução pela Formiga

Começando de uma

cidade

i

, a formiga

move-se escolhendo

probabilisticamente a

cidade vizinha

j

(entre

(17)

Probabilidade de Transição

A probabilidade da formigak que está na cidadei de

escolher a cidadej é dada pela regra:

pijk =

(τij)α(ηij)β

P

l∈Nk i (τil)

α(ηil)β, sej ∈ N

k i ,

onde:

• τij é feromônio associado a aresta(i,j);

• αeβ são parâmetros para determinar a influência

do feromônio e da informação heurística;

• Nk

i é a vizinhança factível da formigak (i.e., o

(18)

A Informação Heurística do PCV

Associada a aresta

(

i

,

j

)

existe um valor

heurístico

η

ij

dado por

η

ij

=

1

dij

que representa a atratividade da formiga visitar

a cidade

i

depois de visitar a cidade

j

.

O valor

η

ij

é inversamente proporcional a

(19)

Passo 1

Candidatos / prob. solução

formiga de transição parcial

1 2(45%), 3(21%), 4(23%), 5(11%) 1-2

2 1(41%), 3(30%), 4(19%), 5(10%) 2-1

3 1(23%), 2(37%), 4(23%), 5(16%) 3-4

4 1(27%), 2(24%), 3(24%), 5(24%) 4-5

5 1(19%), 2(20%), 3(25%), 4(36%) 5-2

(20)

Passo 2

Candidatos / prob. solução

formiga de transição parcial

1 3(50%), 4(32%), 5(18%) 1-2-3

2 3(38%), 4(42%), 5(20%) 2-1-4

3 1(35%), 2(32%), 5(32%) 3-4-5

4 1(30%), 2(31%), 3(39%) 4-5-2

(21)

Passo 3

Candidatos / prob. solução

formiga de transição parcial

1 4(59%), 5(41%) 1-2-3-5

2 3(50%), 5(50%) 2-1-4-5

3 1(49%), 2(51%) 3-4-5-1

4 1(58%), 3(42%) 4-5-2-1

(22)

Passo 4

Candidatos / prob. solução

formiga de transição parcial

1 4(100%) 1-2-3-5-4

2 3(100%) 2-1-4-5-3

3 2(100%) 3-4-5-1-2

4 3(100%) 4-5-2-1-3

(23)

Término da Primeira Iteração

formiga solução comprimento

(k) completa da viajem (Lk)

1 1-2-3-5-4-1 9,8

2 2-1-4-5-3-2 9,8

3 3-4-5-1-2-3 10,9

4 4-5-2-1-3-4 11,6

(24)

O Pseudo-Código do Ant System

Coloque cada formiga em uma cidade aleatória

parat =1aténúmero de iterações

parak =1atém

enquantoa formigak não construir a viagemSk

Selecione a próxima cidade pela regrapk

ij

fim enquanto

Calcule a distância Lk da viagemSk

seLk <L∗ então

S∗ =Sk,L∗ =Lk

fim se fim para

Atualize os feromônios

fim para

(25)

Atualização do Feromônio

No feromônio

τ

ij

associado a aresta

(

i

,

j

)

ocorre

dois eventos:

1.

A evaporação;

• Evita que o feromônio acumulado cresça

indefinidamente;

• Permite esquecer pobres decisões do passado

da busca.

(26)

Atualização do Feromônio

Depois que todas as formigas construíram suas viagens, o feromônio é atualizado.

∆τij(k) é a quantidade de feromônio que a formigak

deposita sobre a aresta(i,j). É dado por:

∆τij(k) =

Q/Lk, se a aresta(i,j)pertence a viagemSk.

0, caso contrário.

(27)

Atualização do Feromônio

O feromônioτij associado a aresta(i,j)é atualizado pelo

fórmula:

τij = (1−ρ)τij

| {z }

evaporação

+ m

X

k=1 ∆τij(k)

| {z }

depósito

(28)

Exemplo de atualização do feromônio

Atualização do feromônio na aresta

(

3

,

5

)

Apenas as formigas 1, 2 e 5 depositam feromônio nesta aresta. Suponha

Q=1,0. A contribuição de cada formiga:

∆τ3(1) ,5 =

1/L1=0,102

∆τ3(2)

,5 =1/L2=0,102

∆τ3(5,5)=1/L5=0,081

Suponhaρ=0,5.

k viagem Lk

1 1-2-3-5-4-1 9,8 2 2-1-4-5-3-2 9,8 3 3-4-5-1-2-3 10,9 4 4-5-2-1-3-4 11,6 5 5-2-1-4-3-5 12,4

τ3,5= (1−ρ)τ3,5+ ∆τ

(1)

3,5+ ∆τ

(2)

3,5+ ∆τ

(5)

3,5

= (1−0,5)1,0+0,102+0,102+0,081

(29)

Critérios de Parada

(30)

Estagnação

Estagnação é a situação na qual todas as

formigas seguem sempre o mesmo

percurso.

A Estagnação é causado pelo excessivo

(31)

Estagnação

Apesar da natureza estocástica do algoritmo, a forte concentração de feromônio nas arestas força a formiga a fazer sempre o mesmo percurso.

Distribuição de feromônio no inicio da busca.

(32)

Problema Quadrático de Alocação

fluxo A-C é o mais alto fluxos A-B e B-C são iguais.

(33)

Exemplo de PQA

Onde alocar os departamentos no terreno da Universidade?

Matriz FluxoF

F =

  

0 60 50 10 60 0 30 20 50 30 0 50 10 20 50 0

  

Matriz distânciaD

D =

  

0 1 2 3 1 0 4 5 2 4 0 6 3 5 6 0

  

(34)

Exemplo de PQA

Cálculo do custo da alocação.

C(Π) = 4 X i=1 4 X j=1

fijdπiπj

ondeΠ = (3,1,4,2). Então,

C(Π) =f1,2d3,1+f1,3d3,4+f1,4d2,3

+f2,1d1,3+f2,3d1,4+f2,4d1,2

+f3,1d4,3+f3,2d4,1+f3,4d4,2

+f4,1d3,2+f4,2d2,1+f4,3d2,4

=1640

• Nota: o PQA

consiste em encontrar uma

permutaçãoΠ

(35)

Informação Heurística

Esta informação heurística foi proposta por Dorigo et al., (1996).

Distância PotencialD(soma das colunas deD)

D=

  

0 1 2 3 1 0 4 5 2 4 0 6 3 5 6 0

 

−→ D=

    6 10 12 14    

Fluxo potencialF (soma das colunas deF)

F =

  

0 60 50 10 60 0 30 20 50 30 0 50 10 20 50 0

 

−→ F=

(36)

Algoritmo Construtivo Guloso

Parece ser bom alocar facilidade com alto fluxo potencial a localizações de baixa distância potencial.

Exemplo

F = [120,110,130,80]T D= [6,10,12,14]T

i) atribua facilidade 3 a localização 1;

ii) atribua facilidade 1 a localização 2;

iii) atribua facilidade 2 a localização 3;

(37)

Algoritmo Construtivo da Formiga

Passo 1 A formigak escolhe a próxima facilidadei de

forma gulosa (i.e., pelo menor valor

disponível no vetor de fluxo potencialF)

Passo 2 A formigak atribui uma localização j para a

facilidadei de acordo com a probabilidade:

pkij = (τij)

α(ηj)β

P

l∈Nk i (τil)

α(ηil)β, sej ∈ N

k i .

ondeηj =1/Dj

Passo 3 Se já construiu uma solução pare, caso

(38)

Elitist Ant System (EAS)

É o primeiro melhoramento no AS.

Introduzido por Dorigo (1992);

IDÉIA : fornecer um forte reforço adicional

nas arestas pertencendo ao melhor

percurso achado desde do inicio do

algoritmo;

Este percurso será denotado por

Tbs

(do

inglês

best-so-far tour

);

É uma idéia similar a estratégia elitismo

(39)

Elitist Ant System (EAS)

Atualização do Feromônio:

τ

ij

= (

1

ρ)τ

ij

+

m

X

k=1

∆τ

ij

+

e

∆τ

ij(bs)

onde

∆τ

ij(bs)

é definido como:

∆τ

ij(bs)

=

Q

/

Lbs

,

se a aresta

(

i

,

j

)

pertence

ao percurso

Tbs

.

0

,

caso contrário.

(40)

Rank-Based Ant System (AS

rank

)

Introduzido por Bullnheimer et al (1999);

Cada formiga deposita uma quantidade de

feromônio que diminui de acordo com seu

rank;

Como no Elistist Ant System, a formiga que

realiza o percurso “best-so-far”

T

bs

também

(41)

Rank-Based Ant System (AS

rank

)

Atualização do Feromônio:

τ

ij

= (

1

ρ)τ

ij

+

w−1

X

r=1

(

w

r

)∆τ

ij(r)

+

w

∆τ

ij(bs)

onde

r

é o rank da formiga;

Apenas as

(

w

1

)

formigas com melhor

rank depositam feromônio;

De acordo com Bullnheimer et al (1999),

AS

rank

é levemente melhor que EAS e

(42)

Ant Colony System (ACS)

Introduzido por Dorigo & Gambardella,

1997;

Através de elitismo, faz uso de mais

intensificação

do que o AS;

Apenas a formiga “

best-so-far

” deposita

feromônio;

As formigas removem feromônio para

(43)

Ant Colony System (ACS)

Regra Proporcional Pseudoaleatória:

Com probabilidade q0

Escolha a cidadej com o maiorτil(ηil)β, isto é:

j =argmaxl∈Nk

i {τil(ηil)

β},

(intensificação)

Com probabilidade(1q0)

Use a regra tradicional do AS:

pkij = (τij)

α(ηij)β

P

l∈Nk i (τil)

α(ηil)β, sej ∈ N

k i

(44)

Ant Colony System (ACS)

Regra de Atualização Global de

Feromônio:

• Apenas a formiga “best-so-far” deposita

feromônio depois de cada iteração:

τij = (1−ρ)τij +ρ∆τij(bs), ∀(i,j)∈Tbs

• A evaporação e depósito de feromônio

somente ocorre nas arestas do percurso “best-so-far”Tbs.

• O feromônio depositado é uma média

(45)

Ant Colony System (ACS)

Regra de Atualização Local de

Feromônio:

• É aplicado imediatamente após a formiga

atravessar a aresta:

τij = (1−ξ)τij +ξτ0;

• τ0 (nível mínimo de feromônio) eξ (0< ξ <1) são parametros;

• A formiga remove o feromônio da aresta que

acabou de atravessar;

• Aumenta a diversificação ao reduzir a

Referências

Documentos relacionados

Dois operários, A e B, trabalham um mesmo número de dias.. Dois recipientes iguais de 30 litros de capacidade cada um contêm um total de 30 litros de álcool. 12 litros desta mistura

Portanto, trata-se de quadro bem definido, rela­ tivamente freqüente e deve ser pensa­ do quando nos deparamos com pa­ ciente portador de epífora de apare­ cimento

Transcrição para Flauta do solista: Marc Orquestra de Câmara Real de Wallonie -. ORQUESTRA FILARMÔNICA

Com isso sugere-se a realização de trabalhos com um grupo de estudo maior além de utilizar-se um grupo como controle, onde a intensidade de exercí- cio e o período de treinamento

Treze Centros de Distribuição, incluindo um exclusivo para o segmento hospitalar e de vacinas, servindo 91% do mercado consumidor de produtos farmacêuticos no Brasil em dezembro

Durante a reprodução do arquivo, pressione a tecla para tocar/pausar, pressione a tecla / para trocar o arquivo de vídeo, pressione as teclas PgUp/PgDn, para ampliar/reduzir

No entanto, em que pese a genialidade das suas observações, não dá mostras de uma problematização dos seus achados, bem como do ser de onde provinham, no sentido de

Revise and make sure you know the word for word meaning of Surah al-Asr.. Online