Você está na página 1de 27

Algoritmo do Morcego

Xin-She Yang

Department of Engineering, University of Cambridge

Iago Augusto de Carvalho

Morcegos Ecolocalizao Algoritmo do Morcego Resultados e comparao com outros algoritmos Concluses

Algoritmo do Morcego

Morcegos Ecolocalizao Algoritmo do Morcego Resultados e comparao com outros algoritmos Concluses

Algoritmo do Morcego

Morcegos
So catalogadas 996 espcies de morcegos atualmente, o que corresponde a cerca de 20% dos mamferos existentes no mundo. Existem morcegos de vrios tamanhos, desde micro morcegos (com 2g de peso) at mega morcegos (pesando at 1kg e 2m entre asas). Micro morcegos so famosos por seu sistema de ecolocalizao.
Algoritmo do Morcego 4

Morcegos Ecolocalizao Algoritmo do Morcego Resultados e comparao com outros algoritmos Concluses

Algoritmo do Morcego

Ecolocalizao
Atravs de um tipo de sonar, morcegos conseguem localizar suas presas e evitar obstculos, at mesmo na completa escurido. Os morcegos emitem um pulso sonoro muito alto e ouvem de volta o eco deste som, ao ser refletido em objetos prximos. As frequncias dos pulsos sonoros variam muito entre cada espcie, ou de acordo com a tarefa que esto executando no momento.
Algoritmo do Morcego 6

Ecolocalizao
Cada pulso dura pequenas fraes de segundo (8 a 10 ms). Frequncia entre 25 kHz e 150 kHz.

10 a 20 pulsos por segundo. At 200 pulsos quando esto caando.


Som muito alto, chegando at a 110 dB, emitidos na onda ultrassnica.
Algoritmo do Morcego 7

Morcegos Ecolocalizao Algoritmo do Morcego Resultados e comparao com outros algoritmos Concluses

Algoritmo do Morcego

Algoritmo do Morcego
Desenvolvido por Xin-She Yang in 2010 Baseado nas caractersticas do sistema de ecolocalizao dos morcegos.

Utilizado para minimizar o erro de funes reais.


Por simplicidade, baseia-se em 3 regras bsicas:
Algoritmo do Morcego 9

Algoritmo do Morcego Regra 1


Os morcegos utilizam sua ecolozalizao para observar a distncia de objetos, e eles sabem a diferena entre o que uma presa, um objeto ou uma barreira de alguma maneira mgica, ainda no explicada pela cincia.

Algoritmo do Morcego

10

Algoritmo do Morcego Regra 2


Morcegos voam randomicamente com uma velocidade Vi, na posio Xi, com uma frequncia f, variando sempre o comprimento de onda e o volume Ai dos pulsos para encontrar sua presa. Morcegos podem ajustar automaticamente o comprimento de onda (ou frequncia) dos pulsos sonoros emitidos e a frequncia de emisso dos pulsos ri, dependendo da proximidade dos alvos.

Algoritmo do Morcego

11

Algoritmo do Morcego Regra 3


Como o volume do pulso pode variar de inmeras maneiras, o algoritmo utiliza uma simplificao: O volume varia entre uma constante inteira suficientemente grande A0 at uma constante mnima Amin.

Algoritmo do Morcego

12

Algoritmo do Morcego Simplificao da ecolicalizao

Outra simplificao feita sobre o sistema real de ecolozalicao se d no fato de no ser usado ray tracing. A frequncia limitada dentro de um intervalo [fmin , fmax], correspondendo a comprimentos de onda [min , max].

Algoritmo do Morcego

13

Algoritmo do Morcego pseudocdigo


Inicialize a populao de morcegos Xi (i = 1, 2, ..., n) Para cada morcego Xi, defina a frequncia fi Inicialize as frequncias de pulso ri e os volumes Ai Enquanto (critrios de parada no atendido) faa | Gerar novas solues ajustando a frequncia, velocidade e localizao dos morcegos | Se (rand > ri) | | Faa uma busca local a partir de uma das melhores solues | Gere uma nova soluo, fazendo o morcego voar randomicamente | Se (rand < Ai e f(Xi) < f(X*)) | | Aceitar a nova soluo | | Aumentar ri e diminuir Ai | Ranqueie os morcegos e encontre a melhor soluo X* Fim
Algoritmo do Morcego 14

Atualizao dos valores

fi = fmin + (fmin + fmax) Xi = Xit-1 + Vi Vi = Vit-1 + (Xi X*) fi


um vetor randmico variando entre 0 e 1
Algoritmo do Morcego 15

Busca local
A busca local feita variando-se o volume Ai de cada morcego, da seguinte maneira: Xnovo = Xvelho + A, [-1, 1]

Algoritmo do Morcego

16

Atualizao do volume e frequncia


Ai = Ait-1 ri = ri0 (1 exp(- t))

0 < < 1, > 0, t ->

Algoritmo do Morcego

17

Morcegos Ecolocalizao Algoritmo do Morcego Resultados e comparao com outros algoritmos Concluses

Algoritmo do Morcego

18

Resultados e comparao com outros algoritmos


Utilizando uma srie de funes matemticas j conhecidas, foi possvel otimizar seus valores e comparar com outros algoritmos, como o Algoritmo Gentico (AG) e o Enxame de Partculas (EP).

Algoritmo do Morcego

19

Resultados e comparao com outros algoritmos

Caminho de 25 morcegos durante 20 iteraes do algoritmo. Eles convergem no ponto (1,1)

Algoritmo do Morcego

20

Resultados e comparao com outros algoritmos

Posio final dos morcegos atuando sobre a funo eggcrate. Ponto de convergncia o ponto (0, 0)

Algoritmo do Morcego

21

Comparao com outros algoritmos


Funo AG EP BA

Picos Mltiplos
Michalewicks (d = 16) Rosenbrocks (d = 16) De Jongs (d = 256) Schwefels (d = 128) Ackleys (d = 128) Rastrings Easoms Griewangks Shuberts (18 mnima)

52124 3277 (98%)


89325 7914 (95%) 55723 8901 ( 90%) 25412 1237 (100%) 227329 7572 (95%) 32720 7572 (90%) 110523 5199 (79%) 19239 5199 (92%) 70925 7652 (90%) 54077 4997 (89%)

3719 205 (97%)


6922 537 (98%) 32756 5325 (98%) 17040 1123 (100%) 14522 1275 (97%) 23407 4325 (92%) 79491 3715 (90%) 17273 2929 (90%) 55970 4223 (92%) 23992 3755 (92%)

1152 245 (100%)


4752 753 (100%) 17923 3293 (100%) 5273 490 (100%) 8929 729 (99%) 6933 2317 (100%) 12573 3372 (99%) 7532 1702 (99%) 9792 4732 (100%) 11925 4049 (100%)

Nmero mdio de avaliaes Desvio padro (porcentagem das execues que convergiram)

Algoritmo do Morcego

22

Morcegos Ecolocalizao Algoritmo do Morcego Resultados e comparao com outros algoritmos Concluses

Algoritmo do Morcego

23

Concluses
Foi desenvolvido, neste artigo, um novo algoritmo para otimizao de funes contnuas. O algoritmo parece ser muito promissor, dados os resultados iniciais obtidos.

Algoritmo do Morcego

24

Concluses
Novos estudos podem ser conduzidos, de forma a introduzir a ecolocalizao direcional e o Efeito Doppler no algoritmo.

Algoritmo do Morcego

25

Concluses
Alm de inserir o Efeito Doppler, seria interessante a considerao do efeito do Ray Tracing no algoritmo.

Algoritmo do Morcego

26

Dvidas?