AntNet : Routing Algorithm for Data Network based on Swarm Intelligence technique Boscato Luca...

download AntNet : Routing Algorithm for Data Network based on Swarm Intelligence technique Boscato Luca Calaon Leonardo De Zotti Giorgio Dissegna Moreno Favaretto.

If you can't read please download the document

Transcript of AntNet : Routing Algorithm for Data Network based on Swarm Intelligence technique Boscato Luca...

  • Slide 1
  • AntNet : Routing Algorithm for Data Network based on Swarm Intelligence technique Boscato Luca Calaon Leonardo De Zotti Giorgio Dissegna Moreno Favaretto Alessio Progetto per il corso di Intelligenza artificiale Docente: Silvana Badaloni 1
  • Slide 2
  • Outline Introduzione o Swarm Intelligence o Algoritmi basati su SI o PSO Ant Colony Optimization ACO o Strategia o Euristiche o Routing Algoritmi o AntNet o Strutture dati o Ants Implementazione o Obiettivi e Strategie o Simulatore ad Eventi o Dimostrazione Performance o Reti di test e Risultati o Miglioramenti o Conclusioni 2
  • Slide 3
  • Definizione Propriet di un sistema in cui il comportamento collettivo di agenti (non sofisticati) che interagiscono localmente con lambiente produce lemergere di pattern funzionali globali nel sistema (Beni e Watt, 1989) Metodo di risoluzione di problemi che si ispira al comportamento di sciami di animali come formiche, api, uccelli, ecc, che singolarmente dispongono di capacit intellettive limitate, ma in gruppo riescono a risolvere problemi complessi come la costruzione di un nido o la ricerca di un percorso da una sorgente di cibo al nido stesso. Swarm Intelligence (1/2) 3
  • Slide 4
  • Caratteristiche Ogni individuo dispone di un repertorio di comportamenti limitato Ogni individuo non conosce lo stato globale del sistema Assenza di un capo coordinatore (lape regina non coordina lattivit delle altre api) Chi a governare? Chi che da ordini, che immagina cosa accadr in futuro, elabora piani e mantiene lequilibrio? Maurice Maeterlinck Il comportamento di un individuo influenza quello degli altri Swarm Intelligence (2/2) 4
  • Slide 5
  • Dal greco stigma ed ergon, cio segno e lavoro, (lavoro guidato da stimoli) Maurice Maeterlinck Forma di comunicazione indiretta Ogni individuo marca lambiente Gli altri individui che rivelano la marcatura reagiscono allo stimolo Forma di comunicazione limitata nel tempo La stigmergia influenza il comportamento globale della popolazione mediante il feedback Stigmetria 5
  • Slide 6
  • Feedback positivo Fenomeno per cui le marcature allambiente rilasciate da individui incentivano gli altri individui della popolazione a rilasciare ulteriori marcature nello stesso posto, facendo cos convergere la popolazione al rinforzo di una soluzione Feedback negativo Fenomeno opposto, ovvero zone poco marcate dellambiente tendono ad essere tralasciate dagli individui della popolazione, portando allimpoverimento di una soluzione Feedback 6
  • Slide 7
  • Consistono di molti sottoprogrammi semplici che lavorano in modo autonomo, pur influenzando ciascuno il comportamento degli altri (analogo degli insetti di uno sciame) PRO Parallelismo Architetture distribuite Stabilit Flessibilit Esistenza di risultati teorici che giusiticano le potenzialit CONTRO Difficolt di programmazione Algoritmi basati su SI (1/2) 7
  • Slide 8
  • Classi principali del paradigma Swarm Intelligence ACO (Ant Colony Optimization) Simula il comportamento di una colonia di formiche PSO (Particle Swarm Optimization) Simula il comportamento di branchi di uccelli e pesci Algoritmi basati su SI (2/2) 8
  • Slide 9
  • Lo studio delle regole mette in evidenza il comportamento di un individuo nello stormo Seguire i propri vicini Rimanere vicini Evitare di urtare i vicini Un algoritmo PSO aggiunge un obiettivo condiviso da tutti (es. ricerca di cibo) Quando un uccello scorge una fonte di cibo pu Allontanarsi dal gruppo (individualismo) Rimanere nel gruppo (socialit) Se pi individui si dirigono verso una fonte di cibo altri individui possono seguirli, facendo si che il gruppo si diriga verso zone promettenti Particle swarm Optimization (1/2) 9
  • Slide 10
  • Algoritmo appartenente alla classe PSO INDIVIDUI Configurazioni di tentativo che si spostano e campionano la funzione obiettivo in uno determinato spazio delle soluzioni (es. spazio reale) INTERAZIONE SOCIALE Un individuo trae vantaggio dalle ricerche degli altri dirigendosi verso la regione del punto migliore globalmente trovato Importante un compromesso tra Indivualismo Socialit Particle swarm Optimization (2/2) 10
  • Slide 11
  • Principali applicazioni di Swarm Intelligence Classe ACO Problemi di combinatoria (es. Commesso viaggiatore) Robotica (es. Swarmbots) Telecomunicazioni (es. AntNet) Classe PSO Reti neurali artificiali Modelli di evoluzione grammaticale Distribuzione dellenergia elettrica Altre applicazioni Controllo di veicoli militari senza pilota Nanobot Applicazioni 11
  • Slide 12
  • Ant Colony Optimization e Routing 12 De Zotti Giorgio
  • Slide 13
  • Ant colony optimization (ACO) Definizione: La meta-euristica Ant Colony Optimization (ACO) formata da una famiglia di algoritmi multi- agente risolutori di problemi di ottimizzazione. Spiegazione: Una meta-euristica una strategia di alto livello che guida le altre euristiche nella ricerca di soluzioni. formato da un framework di algoritmi utilizzabile in diverse classi di problemi di ottimizzazione. Sono inoltre necessari pochi cambiamenti per adattarlo ad un problema specifico 13
  • Slide 14
  • Ant colony optimization (ACO) Si ispira al comportamento delle colonie di formiche: non sono dotate di unintelligenza collettiva ogni formica capace di operazioni elementari, assieme realizzano un fine comune Stigmergia: i lavoratori sono inuenzati dai risultati delle loro precedenti azioni Forma di comunicazione che si manifesta nello scambio di stimoli di natura chimica (il feromone) 14
  • Slide 15
  • Esempio: funzionamento del feromone 15
  • Slide 16
  • Strategia ACO Modello di ricerca del percorso pi breve su grafo: Le formiche sono agenti che si muovono su grafo in modo asincrono. Ogni formica rilascia lungo il percorso la sua valutazione sul raggiungimento della soluzione depositando feromone. Una formica sceglier quale percorso intraprendere in base alla quantit di feromone presente Osservazioni: La scelta di quale percorso intraprendere viene presa a livello di nodo tramite un processo stocastico che utilizza solo le informazioni locali. Le informazioni riguardanti il feromone saranno salvate nei nodi 16
  • Slide 17
  • Euristiche offline LACO utilizza anche delle euristiche che non vengono svolte dagli agenti, ma realizzate a livello di nodo. Levaporazione delle scie: la quantit depositata di feromone presente sul percorso decade col passare del tempo in modo da favorire lesplorazione di nuove regioni. Aggiornamento passivo dei feromoni: sono dei processi che monitorano la distribuzione di feromone per poi effettuare delle modifiche che premiano i percorsi che risultano particolarmente efficienti. 17
  • Slide 18
  • Vantaggi e applicazioni VANTAGGI: LACO si presta quindi a risolvere problemi di ottimizzazione su grafo con un approccio distribuito multi agente. flessibile, ha alta ridondanza e tolleranza ai guasti. Sono caratteristiche desiderabili nella risoluzione di unampia gamma di problemi. 18
  • Slide 19
  • Routing Definizione: il routing consiste nel definire dei percorsi per i flussi di dati in modo da massimizzare le performance dellintera rete. Linstradamento nei vari nodi si effettua utilizzando le tabelle di routing. 19
  • Slide 20
  • Tipologie Circuit-switching: viene instaurato un percorso che in seguito seguiranno tutti pacchetti inviati. Ogni nodo del grafo dovr mantenere le informazioni sullo stato di ogni sessione attiva che lo attraversa; Packet-switching: ogni pacchetto dati libero di seguire percorsi diversi e ogni nodo instrader autonomamente il pacchetto sul link duscita prescelto; 20
  • Slide 21
  • Costruzione Tabella di Routing Centralizzato Statico Shortest path Distribuito Adattabile Optimal 21
  • Slide 22
  • ACO per il routing Il lavoro che svolto focalizzato sul paradigma packet- switching, metteremo infatti a confronto le performance di due algoritmi distribuiti, adattabili e di tipo shortest path: Uno il diffusissimo distance-vector Lalgoritmo scelto del framework ACO AntNet 22
  • Slide 23
  • AntNet 23 Calaon Leonardo
  • Slide 24
  • AntNet Algoritmo di Routing ACO. Definizione di due tipi di agenti: Forward Ant Backward Ant Comunicazione indiretta tramite stigmergia Utilizzo delle strutture dati presenti nei nodi. Di Caro G., Dorigo M., "AntNet: Distributed Stigmergetic Control for Communications Networks", Journal of Artificial Intelligence Research (JAIR), Vol. 9, Pag. 317-365, 1998."AntNet: Distributed Stigmergetic Control for Communications Networks"(JAIR) 24
  • Slide 25
  • Strutture dati Routing Table Modello statistico Media Varianza d1 Media Varianza d2 Media Varianza d3 P11 P21 P31 P12 P22 P32 P13 P23 P33 Porte Destinazioni 25
  • Slide 26
  • Generazione Forward Ant Le formiche partono ad intervalli regolari t da ogni nodo della rete. La destinazione d viene seleziona in base ad una probabilit proporzionale al traffico. 26
  • Slide 27
  • Forward Ant Tempo di viaggioPorta di uscita Stack 27
  • Slide 28
  • Forward Ant La porta di uscita viene selezionata in base alle probabilit nella Routing Table. Facendo attenzione a: Non andare verso nodi gi visitati. Uccidere la formica se forma un ciclo. per d? 28
  • Slide 29
  • Backward Ant Arrivata a destinazione la Foward Ant passa i suoi dati alla Backward Ant e muore. Nodo d 29
  • Slide 30
  • Backward Ant Ripercorre lo stesso cammino della Foward Ant ma in senso inverso. Deve propagare velocemente le informazioni accumulate nei nodi attraversati. Utilizza una coda con priorit nei router. 30
  • Slide 31
  • Modello statistico Aggiornare i valori di media e varianza del tempo di viaggio verso d. Si utilizza un metodo basato sulla media mobile. Passato Presente 31
  • Slide 32
  • Routing Table Incremento la probabilit di inoltrare a f per spedire a d: Decremento per normalizzazione le rimanenti: 32
  • Slide 33
  • Implementazione e dimostrazione 33 Dissegna Moreno
  • Slide 34
  • Implementazione Obiettivi Sistema per comparare AntNet con altri algoritmi di routing Funzionalit necessarie Disponibilit di topologie di rete reali Simulazione preferibilmente in tempo reale Possibilit di regolare il carico della rete Raccolta misure di performance Interfaccia grafica con visualizzazione intuitiva ed in tempo reale di Congestione Traffico Tabelle di routing Statistiche 34
  • Slide 35
  • Modellazione della rete Scelta di modellare al livello di rete ISO/OSI Link modellati da banda e latenza, probabilit di errore nulla Host modellati come generatori casuali di traffico, con send rate regolabile a intervalli di 500ms Router con buffer limitati Simulazione Simulazione ad eventi discreti Tempo reale Agevole implementazione ed integrazione Implementazione Scelte 35
  • Slide 36
  • Modella un sistema in cui i cambiamenti di stato avvengono in punti discreti del tempo simulato Sequenza di calcoli di effetti di eventi, a ognuno dei quali assegnato un istante temporale Ogni evento pu Modificare lo stato del sistema Schedulare nuovi eventi Implementazione Simulazione ad eventi discreti 36
  • Slide 37
  • Implementazione Simulazione ad eventi discreti 37
  • Slide 38
  • Implementazione Simulazione ad eventi discreti 38
  • Slide 39
  • Dimostrazione Avvia AntNetSim 39
  • Slide 40
  • Implementazione Suddivisione lavoro Architettura, motore di simulazione e AntNet (Dissegna) Generazione reti (De Zotti) Distance Vector e migliorie AntNet (Calaon) Generazione traffico e raccolta statistiche (Boscato) Interfaccia grafica (Favaretto) 40
  • Slide 41
  • Performance e improvements 41 Boscato Luca
  • Slide 42
  • Performance Measurement Viene confrontato il throughput di AntNet con quello di Distance Vector Test effettuati su diversi tipi di rete Livello di congestione variabile nel tempo 42
  • Slide 43
  • Topologie di rete (1) Simple Net Rete con 8 nodi e 9 link Banda 10 Mbit/s Latenza 1ms 43
  • Slide 44
  • Topologie di rete (2) NSF Net Rete con 14 nodi e 21 link Banda 1,5 Mbit/s Latenza da 4ms a 20ms Rappresenta la vecchia backbone T1 degli USA 44
  • Slide 45
  • Topologie di rete (3) NTT Net Rete con 57 nodi e 162 link Banda 6 Mbit/s Latenza da 1ms 5 ms Rappresenta la backbone del Giappone (Nippon Telephone and Telegraph company) 45
  • Slide 46
  • Topologie di rete (4) Altre topologie 46
  • Slide 47
  • Throughput vs congestion level Quando il livello di congestione basso, Distance Vector garantisce performance migliori. Allaumentare del livello di congestione, AntNet il migliore Alla congestione massima, i due algoritmi tornano allo stesso gap inizale, in favore per per AntNet 47
  • Slide 48
  • Throughput vs time Il livello di congestione aumenta con il passare del tempo. Su reti diverse, il comportamento dei due algoritmi lo stesso. NTT NSF 48
  • Slide 49
  • NTT Performance Il livello di congestione viene aumentato bruscamente AntNet AntNet vs DV Distance Vector AntNet risponde in modo pi rapido Le performance di AntNet diminuiscono in modo lineare 49
  • Slide 50
  • NSF Performance Il livello di congestione aumenta con il passare del tempo AntNet Distance Vector Anche per questa rete AntNet pi performante AntNet vs DV 50
  • Slide 51
  • AntNet Improvement AntNet adatto per reti con un centinaio di nodi Se le distanze e/o il numero di nodi aumenta, le performance degradano: Alcune formiche possono morire (esauriscono TTL) Le statistiche raccolte possono non essere abbastanza aggiornate Soluzione proposta : A novel approach to distributed Routing by Super-AntNet, Saeed Saari-A.,Mohammad-R.,Akbarzahed-T. and Mahmoud Naghibzadeh,2008 IEEE Congress on volutionary Computa-tion (CEC 2008) 51
  • Slide 52
  • AntNet Improvement Super-AntNet La rete viene suddivisa in sottoreti (cluster) La suddivisione avviene in base ai pattern del traffico 2 tipi di Ant-packet: o Super-Ant -> routing tra i clusters o Ant -> routing interno al cluster Risultato: o Minor overhead o Delay inferiore per le lunghe tratte 52
  • Slide 53
  • AntNet Improvement Unaltra limitazione di AntNet sta nel tasso di generazione dei pacchetti (ant) In una rete con N nodi, il numero di pacchetti in circolo dellordine di N(N-1) I pacchetti di routing contribuiscono a loro volta a creare congestione Soluzione proposta : Improving Load Balancing within the data network via Modified AntNet Algorithm, Reham A. Arnous, Hesham A. Arafat and Mefreh M. Salem, IEEE CCC (2007) 53
  • Slide 54
  • AntNet Improvement Load Balance In AntNet il tasso di generazione fisso o Un tasso di generazione alto permette statistiche ben aggiornate o Porta per ad incrementare la congestione Viene proposto un tasso di generazione variabile in funzione del livello di congestione della rete Viene inoltre introdotta una soglia nei nodi: quando la congestione dellinterfaccia del nodo oltrepassa tale soglia, si obbliga a re-instradare i pacchetti 54
  • Slide 55
  • AntNet Improvement Le reti di nuova generazione devono supportare traffico di vario tipo: o Voice o Data o Broadcast o... AntNet non fa distinzione sul tipo di traffico Non progettata per garantire QoS (Quality of service) Soluzione proposta : A nature-inspired QoS routing algorithm for next generation networks, Heesang Lee, Gyuwoog Choi, Hyunjoon Kim, Kyuhong Lee, Fourth International Conference on Autonomic and Autonomous System (2008) 55
  • Slide 56
  • AntNet Improvement QoS Vengono identificati 4 possibili classi di traffico: o VoIP o Bandwidth Guaranteed o VPN o Best Effort Per ogni classe di traffico un diverso agente (ant) Lopera mostra dei buoni miglioramenti per quanto riguarda la QoS, tuttavia non viene analizzato il throughput della rete Dalle osservazioni precedenti, si evince che luso di 4 tipi di pacchetti di routing contribuisce notevolmente ad incrementare loverhead della rete, con un conseguente calo del throughput 56
  • Slide 57
  • Conclusioni Il lavoro svolto ci ha permesso di confrontare un diffuso algoritmo di routing come Distance Vector con un algoritmo basato sullAnt Colony Optimization : AntNet. Le performance dei due algoritmi sono state testate tramite un simulatore di reti ad eventi creato appositamente. I test sono stati eseguiti su diverse topologie di reti e facendo variare il livello di congestione nella rete. I risultati, in linea con quelli della letteratura, hanno mostrato come AntNet sia pi performante in termini di throughput rispetto a Distance Vector. 57
  • Slide 58
  • Conclusioni Il throughput di Antnet, quando la rete congestionata, nettamente superiore a quello di Distance Vector Solo con basso traffico leggermente penalizzato Il tempo di risposta ad un congestionamento improvviso comunque migliore rispetto a Distance Vector Tramite i perfezionamenti proposti in letteratura, AntNet pu essere ancora migliorato in termini scalabilit e versatilit 58
  • Slide 59
  • Domande? Boscato Luca Calaon Leonardo De Zotti Giorgio Dissegna Moreno Favaretto Alessio 59