A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Otimização por Colônia de Formigas Ant Colony Optimization

Apresentações semelhantes


Apresentação em tema: "Otimização por Colônia de Formigas Ant Colony Optimization"— Transcrição da apresentação:

1 Otimização por Colônia de Formigas Ant Colony Optimization
Cassio Conti

2 Agenda Introdução Ant Colony Optimization (domínio discreto)
Problemas de otimização Ideia da otimização por colônia de formigas Ant Colony Optimization (domínio discreto) Exemplo de aplicação Ant Colony Optimization (domínio contínuo) Aplicação em problema real

3 Problemas de Otimização
Os problemas de otimização combinatória possuem a qualidade da solução ligada a ordem em que os elementos que compõem a solução aparecem. Quanto mais elementos, mais combinações são possíveis e maior é o tempo de processamento necessário para encontrar a solução ótima. Sequência desejada: 2-3-1 Combinações possíveis: 1-2-3 1-3-2 2-1-3 3-1-2 3-2-1

4 Problemas de otimização
3 elementos: 6 combinações 4 elementos: 24 combin. 5 elementos: 120 combin. 6 elementos: 720 combin. 7 elementos: 5040 combin. 8 elementos: combin. 9 elementos: comb. n elementos: n! combinações Algoritmos de otimização utilizam técnicas para buscar a melhor solução de um problema em situações onde seria necessário muito tempo computacional para analisar todos os possíveis valores.

5 Ideia do ACO Baseia-se no comportamento de formigas reais.
As formigas, tanto as reais quanto as do ACO baseiam seu "conhecimento" do ambiente nas trilhas de feromônio. A tendência é escolher a trilha com mais feromônio. Feromônio evapora com o tempo.

6 Caixeiro Viajante Se existem 2 cidades, A e B, considerando que o caixeiro inicialmente está em A, tem-se apenas 1 solução possível que é a distância entre A e B. Se existem 3 cidades, têm-se 2 caminhos possíveis, ABC ACB. 4 cidades indicam 6 caminhos possíveis, ABCD ABDC ACBD ACDB ADBC ADCB, ou seja, (n – 1)! possíveis caminhos diferentes. Traveling Salesman Problem (TSP)

7 Ant Colony Optimization (ACO)
Algoritmos inspirados no comportamento das formigas na busca por alimentos foram introduzidos por Marco Dorigo em sua tese de doutorado. Esse tipo de algoritmo é conhecido na literatura como Ant Colony Optimization (ACO). Ant System foi o primeiro exemplo de ACO proposto por Dorigo. Explora a característica do feromônio depositando diferentes quantidades de substância no caminho (dependendo da qualidade do caminho encontrado).

8 Ant System Gera uma solução (caminho) Avalia essa solução
Deposita sobre cada aresta desse caminho, uma quantidade x de feromônio. Sendo x uma função onde se o caminho é menor, x possui maior valor. Caminho = 16 Caminho = 12 Caminho = 15 Caminho = 11 Caminho = 13 .... Ex: x = 1 / f(caminho)

9 +0.8 (÷2.1 = 38%) +0.6 (÷2.1 = 29%) +0.7 (÷2.1 = 33%)  2.1 (100%) Gera valor aleatório [0 - 1] [ ]: escolhe 2  ( ]: escolhe 5  ( ]: escolhe 4 

10 Heurística (Visibilidade)
gerar_solucao(f) { escolher_proximo(f) } gerar_solucao(f, dist) { v <- 1 / dist escolher_proximo(f + v) 1 2 3 4 5 0,8 0,4 0,5 0,2 0,6

11 Heurística (Visibilidade)
+0.8 (÷2.1 = 38%) +0.6 (÷2.1 = 29%) +0.7 (÷2.1 = 33%)  2.1 (100%) 1÷2=0.5 1÷6=0.2 1÷3=0.3 +1.3 (÷3.1 = 42%) +0.8 (÷3.1 = 26%) +1.0 (÷3.1 = 32%) ------ 3.1 (100%)

12 ACO Discreto - Importância da Visibilidade

13 ACO Contínuo – ACOR – Feromônio
s1 s11 s12 ... s1i s1n s2 s21 s22 s2i S2n sj sj1 sj2 sji Sjn sk sk1 sk2 ski Skn Arquivo população

14 ACOR - Amostragem A função de densidade de probabilidade usada nas amostragens do algoritmo é a função gaussiana (distribuição normal), entretanto ela não é capaz de descrever a situação onde há duas áreas promissoras disjuntas no domínio. s1 s11 s12 ... s1i s1n s2 s21 s22 s2i S2n sj sj1 sj2 sji Sjn sk sk1 sk2 ski Skn

15 ACOR – Sequência de passos
Inicialização da População Inicia o arquivo população com k soluções aleatórias. Ordena as soluções pela qualidade [f(s1) ≥ f(s2) ≥ ...]. Construção de novas soluções Para cada agente (formiga), faça: Escolha uma solução sl dentre as k soluções do arquivo população. Para cada uma das n variáveis que compões uma solução: Seta a média sji. Calcula o valor de desvio padrão. Amostra um novo valor. X = {X1, X2, ..., Xn} sl = {sl1, sl2, ..., sln} Atualização da população Avalia e adiciona as novas soluções ao arquivo população. Ordena as soluções pela qualidade e mantém somente as k melhores. Verificação do critério de parada Se o critério de parada não for alcançado, voltar ao segundo passo. Caso contrário, encerrar o algoritmo.

16 Proposta de Visibilidade para ACO contínuo
Quando todas as soluções do arquivo estiverem na mesma região a visibilidade é desligada. s3’ s1’ s2’ s3 s2 s1

17 Proposta para Visibilidade
... s1i s1n s2 s21 s22 s2i S2n sj sj1 sj2 sji Sjn sk sk1 sk2 ski Skn

18 Experimentos – Testes e Resultados
Problemas 1 B2 2 Branin RCOS 3 Cigar 4 De Jong 5 Eason 6 Ellipsoid 7 Goldstein and Price 8 Martin and Gaddy 9 Sphere model 10 Tablet 11 Zakharov Os mesmo parâmetros utilizados por Socha e Dorigo foram aplicados para que fosse possível a comparação.

19 Experimentos – Testes e Resultados - Iterações

20 Experimentos – Testes e Resultados - Avaliações

21 Aplicação Real – Exploração de Petróleo

22 Aquisição Sísmica

23 Aquisição Sísmica

24 Sísmica

25 Poço

26 Sísmica e Poço

27 Impedância 𝑖𝑚𝑝𝑒𝑑â𝑛𝑐𝑖𝑎=𝑑𝑒𝑛𝑠𝑖𝑑𝑎𝑑𝑒×𝑣𝑒𝑙𝑜𝑐𝑖𝑑𝑎𝑑𝑒

28 Propriedade dos Dados (rochas)
𝑟𝑒𝑓 𝑖 = 𝑖𝑚𝑝 𝑖+1 − 𝑖𝑚𝑝 𝑖 𝑖𝑚𝑝 𝑖+1 + 𝑖𝑚𝑝 𝑖

29 ACO (Ant Colony Optimization)
Não existe um método de inversão sísmica que dê a solução exata. Existem várias soluções possíveis. Propício ao uso de heurísticas para adaptar a técnica ao problema. ACO (Ant Colony Optimization)

30 Estimação do Pulso Sísmico

31 Estimação do Pulso Sísmico

32 Inversão Sísmica

33 Heurísticas para acelerar a busca
Gera diversas configurações similares ao poço.

34 Inversão utilizando ACO
Para os demais traços, usa-se o traço vizinho (que já foi otimizado) como modelo de referência.

35 Resultados Inversão Traço-a-Traço
4 replicações iterações do algoritmo – Utiliza-se a média Tempo em uma SUN Workstation ULTRA 27: ~3.5min por in-line R=

36 Resultados Inversão pelo Filtro Inverso
10 replicações – 100 mil iterações do algoritmo – Utiliza-se o melhor Tempo em uma SUN Workstation ULTRA 27 : ~2min45seg R=

37 Problemas Poucos poços Sísmica ruidosa
Pouca informação sobre os tipos de rochas existentes. Pulso sísmico ruim (mal estimada) Consequentemente, inversão ruim. Sísmica ruidosa Podem gerar falsas propriedades de rocha Características que podem levar a decisões erradas.

38 Otimização por Colônia de Formigas Ant Colony Optimization
Cassio Conti

39 Cassio Rodrigo Conti cassiorconti@gmail.com
Departamento de Informática e Estatística (INE) Ciência da Computação (PPGCC) Laboratório de Conexionismo e Ciências Cognitivas (L3C) Orientador: Prof. Dr. Mauro Roisenberg Área de Inteligência Artificial / Computacional


Carregar ppt "Otimização por Colônia de Formigas Ant Colony Optimization"

Apresentações semelhantes


Anúncios Google