antnet pedro neves nº 27836 algoritmos de formigas aplicados a encaminhamento de pacotes em redes

17
AntNe AntNe t t Pedro Neves 27836 Algoritmos de formigas aplicados a encaminhamento de pacotes em redes

Upload: internet

Post on 18-Apr-2015

113 views

Category:

Documents


5 download

TRANSCRIPT

Page 1: AntNet Pedro Neves nº 27836 Algoritmos de formigas aplicados a encaminhamento de pacotes em redes

AntNetAntNet

Pedro Neves nº 27836

Algoritmos de formigas aplicados a encaminhamento de pacotes em redes

Page 2: AntNet Pedro Neves nº 27836 Algoritmos de formigas aplicados a encaminhamento de pacotes em redes

Algoritmos FormigaAlgoritmos Formiga

Na natureza …

O comportamento de recolha de alimentos de muitas sociedades de formigas baseia-se na comunicação indirecta mediada por feromonas.

Enquanto caminham, do ninho para as fontes de alimento e vice-versa, as formigas deixam um rasto químico que forma um trilho de feromonas.

2 / 17

Page 3: AntNet Pedro Neves nº 27836 Algoritmos de formigas aplicados a encaminhamento de pacotes em redes

Ant Colony Optimization (ACO)Ant Colony Optimization (ACO)

Os caminhos mais curtos surgem do comportamento colectivo, através de:

uma escolha local e probabilística de cada formiga sobre para onde se mover, tendo maior probabilidade os caminhos que tenham mais feromonas uma forma indirecta de comunicação (Estigmergia)

3 / 17

1. 2.

3. 4.

Page 4: AntNet Pedro Neves nº 27836 Algoritmos de formigas aplicados a encaminhamento de pacotes em redes

Feromonas e EstigmergiaFeromonas e Estigmergia

4 / 17

Quando as formigas deixam um rasto de feromonas: modificam o modo como as próximas formigas iram percepcionar o terreno local influenciam a escolha do caminho a seguir das próximas formigas

Ao ler/escrever o sinal químico de feromonas de um local as formigas estão:

a comunicar indirectamente através do ambiente a criar um comportamento colectivo

Page 5: AntNet Pedro Neves nº 27836 Algoritmos de formigas aplicados a encaminhamento de pacotes em redes

Encaminhamento em RedesEncaminhamento em Redes

Um algoritmo de encaminhamento está distribuído por toda a rede Tem de escolher o melhor caminho para levar os pacotes até ao seu destino e evitar congestionamentos

A maioria dos algoritmos serve-se de estruturas de dados nos nós (Routing Tables)

Estas estruturas são ao mesmo tempo bases de dados e modelos locais do estado global

a informação que guardam e como a actualizam depende do algoritmo utilizado

5 / 17

Page 6: AntNet Pedro Neves nº 27836 Algoritmos de formigas aplicados a encaminhamento de pacotes em redes

Métricas e Objectivos do EncaminhamentoMétricas e Objectivos do Encaminhamento

Métricas Atraso na distribuição de pacotes (seg):

qualidade do serviço Velocidade com que os pacotes são enviados (bits / seg):

quantidade do serviço Recursos da rede utilizados

Objectivoscom muita carga: aumentar a quantidade de pacotes enviados no mesmo atraso médiocom pouca carga: diminuir o atraso médio de cada pacote

6 / 17

Page 7: AntNet Pedro Neves nº 27836 Algoritmos de formigas aplicados a encaminhamento de pacotes em redes

AntNet: EAntNet: Estruturas de dadosstruturas de dados

7 / 17

Routing Table: Para um qualquer destino d e para cada nó vizinho n tem a probabilidade Pnd , que representa a “tendência” de escolher o nó n como parte do caminho até ao destino d.

Local Traffic Statistics: Contém informação sobre a distribuição do tráfego em toda a rede, tal como o nó o percepciona.

Page 8: AntNet Pedro Neves nº 27836 Algoritmos de formigas aplicados a encaminhamento de pacotes em redes

AntNet: AntNet: Descrição do algoritmoDescrição do algoritmo

8 / 17

1. A cada intervalo de tempo t, em cada nó n, é criada uma formiga (Foward Ant), com um destino pseudo-aleatório (depende dos padrões de tráfego)

2. O objectivo de cada formiga é: descobrir um caminho, desde a origem até ao destino deixar, em cada nó visitado, informação útil para futuras formigas

3. Cada Foward Ant guarda, na sua memória privada, os nós que visitou e o tempo que gastou entre cada um deles.

Page 9: AntNet Pedro Neves nº 27836 Algoritmos de formigas aplicados a encaminhamento de pacotes em redes

AntNet: AntNet: Descrição do algoritmo (cont.)Descrição do algoritmo (cont.)

4. O próximo nó é escolhido tendo em conta: Routing Tables probabilísticas Heurística local baseadas no estado das ligações desse nó memória privada dos nós percorridos até então

9 / 17

5. Se for detectado um ciclo, este é eliminado tal como toda a informação sobre esse sub-caminho

Page 10: AntNet Pedro Neves nº 27836 Algoritmos de formigas aplicados a encaminhamento de pacotes em redes

AntNet: AntNet: Descrição do algoritmo (cont.)Descrição do algoritmo (cont.)

10 / 17

6. Quando chega ao seu destino a Foward Ant cria uma Backward Ant, transfere a sua memória para a nova formiga e morre.

7. A Backward Ant faz exactamente o mesmo percurso, mas no sentido inverso, até à origem.

Page 11: AntNet Pedro Neves nº 27836 Algoritmos de formigas aplicados a encaminhamento de pacotes em redes

AntNet: AntNet: Descrição do algoritmo (cont.)Descrição do algoritmo (cont.)

11 / 17

8. Em cada nó que passa a Backward Ant actualiza a Routing Table local e o Modelo de Tráfego Local usando informação memorizada e local

Page 12: AntNet Pedro Neves nº 27836 Algoritmos de formigas aplicados a encaminhamento de pacotes em redes

AntNet: AntNet: Método de DecisãoMétodo de Decisão

12 / 17

utilizando uma Heurística Local ln que reflecte o estado actual do nó k

A cada nó k, a formiga, com destino d, escolhe o próximo n entre os nós vizinhos que ainda não percorreu, ou entre todos os vizinhos calculando a probabilidade P’nd de “tendência” para esse nó

• Nk {conjunto de vizinhos de k}

• α peso da heurística local

• qn – nº de bits à espera de serem enviados de k para n

Page 13: AntNet Pedro Neves nº 27836 Algoritmos de formigas aplicados a encaminhamento de pacotes em redes

AntNet: AntNet: Regra de actualização das tabelasRegra de actualização das tabelas

Para descobrir o caminho entre K e D, as probabilidades dos arcos de saída de K são actualizadas através de um valor de reforço R

O nó f, que é o vizinho de K atravessado pela Backward Ant, recebe um reforço positivo.

Todos os outros vizinhos recebem um reforço negativo.

13 / 17

Page 14: AntNet Pedro Neves nº 27836 Algoritmos de formigas aplicados a encaminhamento de pacotes em redes

AntNet: AntNet: Foward Vs. Backward AntsFoward Vs. Backward Ants

14 / 17

As Foward Ants têm a mesma prioridade que os restantes pacotes …

Dessa forma conseguem obter informação sobre: o tempo global da viagem o tempo que levou entre os nós percorridos a velocidade com que os pacotes estão a percorrer a rede

possíveis congestionamentos

As Backward Ants têm prioridade sobre os outros pacotes propagam a informação, obtida pela Foward Ant, pelos nós visitados

o mais depressa possível

Page 15: AntNet Pedro Neves nº 27836 Algoritmos de formigas aplicados a encaminhamento de pacotes em redes

AntNet: AntNet: Avaliação do caminho descobertoAvaliação do caminho descoberto

15 / 17

O caminho descoberto é avaliado de forma: implícita, através do tempo decorrido entre a descoberta do

caminho e a actualização das Rounting Tables implícita, através da actualização das Rounting Tables que

descobrir quais os caminhos que mais frequentemente são descobertos

explícita, através da avaliação do tempo que a formiga gastou em viagem T

Mas T não pode ser comparado como absoluto pois é dependente do congestionamento existente na altura

Associamos ao tempo T uma medida de qualidade R

Page 16: AntNet Pedro Neves nº 27836 Algoritmos de formigas aplicados a encaminhamento de pacotes em redes

BibliografiaBibliografia

“AntNet: Distributed Stigmergetic Control for Communications Networks”

Gianni Di Caro, Marco DorigoIRIDIA, Université Libre de Bruxelles – Bélgica

“Ant Colony Optimization” http://iridia.ulb.ac.be/~mdorigo/ACO/ACO.html

Acetatos teóricos de VA Paulo Urbano

16 / 17

Page 17: AntNet Pedro Neves nº 27836 Algoritmos de formigas aplicados a encaminhamento de pacotes em redes

Perguntas?Perguntas?

FIM