Progetto per il corso di Intelligenza artificiale Boscato Luca

Slides:



Advertisements
Presentazioni simili
Scheduling (Schedulazione) Susanna Pelagatti – Università di Pisa
Advertisements

I bridge Standard IEEE 802.1D.
1 Processi e Thread Processi Thread Meccanismi di comunicazione fra processi (IPC) Problemi classici di IPC Scheduling Processi e thread in Unix Processi.
AGENTI CHE RISOLVONO PROBLEMI Ottimizzazione euristica
Applications of Evolutionary Algorithms Giuseppe Nicosia Dep. of Mathematics and Computer Science University of Catania.
Ant colony optimization (ACO)
AntNET Sim Boscato Luca Calaon Leonardo Dissegna Moreno
IMPLEMENTAZIONE E DIMOSTRAZIONE Moreno Dissegna. Implementazione Obiettivi Sistema per comparare AntNet con altri algoritmi di routing Funzionalità necessarie.
Evolvere robot stigmergici in Evorobot*
I modelli di riferimento OSI e TCP/IP
5-1 ATM Crediti Parte delle slide seguenti sono adattate dalla versione originale di J.F Kurose and K.W. Ross (© All Rights Reserved)
Routing Crediti Parte delle slide seguenti sono adattate dalla versione originale di J.F Kurose and K.W. Ross (© All Rights Reserved)
La rete in dettaglio: rete esterna (edge): applicazioni e host
Teoria e Implementazione
La rete del futuro nell’autonomia scolastica
Sistemi basati su conoscenza Metodi di ricerca informata Prof. M.T. PAZIENZA a.a
MAIS WP5 – Architectures Luca Negri Politecnico di Milano Roma – novembre 05.
Reti di Calcolatori Domande di riepilogo Quinta Esercitazione
Algoritmi Paralleli e Distribuiti a.a. 2008/09 Lezione del 29/05/2009 Prof. ssa ROSSELLA PETRESCHI a cura del Dott. SAVERIO CAMINITI.
Algoritmi Paralleli e Distribuiti a.a. 2008/09
Università di Padova Dipartimento di Ingegneria dellInformazione Analisi della Qualità del Servizio in Reti Radio Ad Hoc Special Interest Group on NEtworking.
Stima ed algoritmi di consensus distribuito: considerazioni su IKF
IDUL 2010 RETI E PROTOCOLLI. INTERNET.. IDEE PRINCIPALI IN QUESTA LEZIONE Reti: Aspetto logico della rete e tipologie: peer-to-peer, a hub, a bus Trasmissione.
IDUL 2012 RETI E PROTOCOLLI. INTERNET.. IDEE PRINCIPALI IN QUESTA LEZIONE Reti: Aspetto logico della rete e tipologie: peer-to-peer, a hub, a bus Trasmissione.
IDUL 2009 RETI E PROTOCOLLI. INTERNET. IDEE PRINCIPALI IN QUESTA LEZIONE Reti: Aspetto logico della rete e tipologie: peer-to-peer, a hub, a bus Trasmissione.
Reti di Calcolatori IL LIVELLO RETE.
Concetti introduttivi
Reti di Calcolatori IL LIVELLO RETE.
Intelligenza Artificiale
ADSL VOIP Voice Over IP.
Qualità di servizio in ambiente wireless Progetto per il corso di Reti di Calcolatori L-S Prof. Antonio CorradiValentina Maraldi.
DEIS Università di Bologna
Reti di Calcolatori L-S Un Sistema Decentrato di Allocazione del Carico per Applicazioni di Calcolo Distribuito Mauro Bampo.
Architettura e protocolli di distribuzione dello stato in videogiochi Multiplayer distribuiti Michele Pace Esame di Reti di Calcolatori LS Aa
P O L I T E C N I C O D I B A R I I Facoltà di Ingegneria Corso di Laurea in Ingegneria delle Telecomunicazioni Ottimizzazione energetica e servizi real-time.
Progetto per il corso di Intelligenza artificiale Boscato Luca
Reti di Telecomunicazione Lezione 16 Corso di reti per le telecomunicazioni.
U N INFRASTRUTTURA DI SUPPORTO PER SERVIZI DI FILE HOSTING Matteo Corvaro Matricola Corso di Reti di Calcolatori LS – Prof. A. Corradi A.A.
Agenti Mobili Intelligenti e Sicurezza Informatica
Il modello di riferimento OSI
Risultati complessivi Diego Ragazzi
Laureando: Giuseppe BRUSCELLA
Reti di calcolatori 14 novembre 2003 INFORMATICA GENERALE Scienze per Operatori dei Servizi Giuridici Anno Accademico
Applicazioni di intelligenza artificiale LS Manni Tiziano
Reti di calcolatori LS Manni Tiziano  IT e nuovi scenari applicativi …  … portabilità dei dati …  … condivisione dati …  … disponibilità.
L’architettura a strati
PIATTAFORMA MAESTRA.
10 azioni per lo scheduling su Grid Uno scheduler per Grid deve selezionare le risorse in un ambiente dove non ha il controllo diretto delle risorse locali,
Tassonomia dei Sistemi Distribuiti Antonio D'Angelo.
Gestione del processore (Scheduler)
InternetInternet Sede: Salvo D’acquisto 2010/2011 Docente: Vito Monno.
IDUL 2013 RETI E PROTOCOLLI. INTERNET.. IDEE PRINCIPALI IN QUESTA LEZIONE Reti: Aspetto ‘logico’ della rete e tipologie: peer-to-peer, a hub, a bus Trasmissione.
Modelli e tecniche per l’adattività del livello di rete rapporto polimi, romatre novembre 2004.
MCSA Mobile Code System Architecture Infrastruttura a supporto della code mobility Pierfrancesco Felicioni Reti di Calcolatori L.S. 2005/2006.
Alessandro Bollini Dipartimento di Informatica e Sistemistica Università di Pavia Via Ferrata, Pavia Algoritmi Evolutivi.
Studio di una soluzione distribuita per la gestione di un centro sondaggi.
Livello 3 Network (Rete)
Seminario di Reti e Sicurezza algoritmi di instradamento Star: Davide Ferrone Prof. Stefano bistarelli.
Sistemi basati su conoscenza Metodi di ricerca informata Prof. M.T. PAZIENZA a.a
Routing Overview Routing Protocol: protocollo di costruzione delle tavole di routing nei router. Routed Protocol: protocollo di instradamento dei messaggi,
R.E.V.E.N.G.E. RELIABLE AND VERSATILE NEWS DELIVERY SUPPORT FOR AGENCIES Corso di Reti di Calcolatori LS – AA Professore: Antonio Corradi Referente.
A.A Roma Tre Università degli studi “Roma Tre” Facoltà di Ingegneria Corso di Laurea in Ingegneria Elettronica Servizi di localizzazione a livello.
4.2.3 Valutazione delle prestazioni del livello MAC adattativo per reti veicolari Speaker Giacomo Verticale Politecnico di Milano Gruppo reti di telecomunicazioni.
CEFRIEL Deliverable R4.2.5 Implementazione di un MAC adattativo per reti WiMax Alessandro Lapiana Roma – 24 novembre ‘05.
Occasione, Luogo, gg.mm.anno Nome Cognome GARR-X Le novità.
POR Calabria , ASSE I Linea Progetti di ricerca industriale e di sviluppo sperimentale nei settori strategici regionali AGENDA STRATEGICA.
Implementazioni di un analizzatore di protocollo Esistono quattro fondamentali tradeoff per la realizzazione di un analizzatore di protocollo:  Analisi.
I modelli di offerta per i sistemi di trasporto Corso di Progettazione dei Sistemi di Trasporto Prof. B. Montella a. a. 2015/16.
Triggers and actions L’inizializzazione di un trigger permette di avviare delle azioni automatiche a partire da eventi significativi. Possibili azioni.
Algoritmi di routing statici (pag.72) UdA2L4 Questi algoritmi, sono eseguiti solamente all'avvio della rete, e le decisioni di routing a cui essi pervengono.
Transcript della presentazione:

AntNet : Routing Algorithm for Data Network based on Swarm Intelligence technique Progetto per il corso di Intelligenza artificiale Boscato Luca Calaon Leonardo Dissegna Moreno De Zotti Giorgio Favaretto Alessio Docente: Silvana Badaloni

Outline Ant Colony Optimization ACO Algoritmi Implementazione Introduzione Swarm Intelligence Algoritmi basati su SI PSO Ant Colony Optimization ACO Strategia Euristiche Routing Algoritmi AntNet Strutture dati Ants Implementazione Obiettivi e Strategie Simulatore ad Eventi Dimostrazione Performance Reti di test e Risultati Miglioramenti Conclusioni

Swarm Intelligence (1/2) Definizione “Proprietà di un sistema in cui il comportamento collettivo di agenti (non sofisticati) che interagiscono localmente con l’ambiente produce l’emergere 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 (2/2) Caratteristiche Ogni individuo dispone di un repertorio di comportamenti limitato Ogni individuo non conosce lo stato globale del sistema Assenza di un capo coordinatore (l’ape regina non coordina l’attività delle altre api) “Chi è a governare? Chi è che da ordini, che immagina cosa accadrà in futuro, elabora piani e mantiene l’equilibrio? Maurice Maeterlinck Il comportamento di un individuo influenza quello degli altri

Stigmetria Dal greco “stigma” ed “ergon”, cioé “segno” e “lavoro”, (lavoro guidato da stimoli) Maurice Maeterlinck Forma di comunicazione indiretta Ogni individuo marca l’ambiente 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

Feedback Feedback positivo Fenomeno per cui le marcature all’ambiente 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 dell’ambiente tendono ad essere tralasciate dagli individui della popolazione, portando all’impoverimento di una soluzione

Algoritmi basati su SI (1/2) 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 (2/2) 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

Particle swarm Optimization (1/2) 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 (2/2) 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à

Applicazioni 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 dell’energia elettrica Altre applicazioni Controllo di veicoli militari senza pilota Nanobot

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

Ant colony optimization (ACO) Si ispira al comportamento delle colonie di formiche: non sono dotate di un’intelligenza collettiva ogni formica è capace di operazioni elementari, assieme realizzano un fine comune Stigmergia: ‘i lavoratori sono influenzati dai risultati delle loro precedenti azioni’ Forma di comunicazione che si manifesta nello scambio di stimoli di natura chimica (il feromone)

Esempio: funzionamento del feromone

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

Euristiche offline L’ACO utilizza anche delle euristiche che non vengono svolte dagli agenti, ma realizzate a livello di nodo. L’evaporazione delle scie: la quantità depositata di feromone presente sul percorso decade col passare del tempo in modo da favorire l’esplorazione 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.

Vantaggi e applicazioni L’ACO 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 un’ampia gamma di problemi.

Routing Definizione: il routing consiste nel definire dei percorsi per i flussi di dati in modo da massimizzare le performance dell’intera rete. L’instradamento nei vari nodi si effettua utilizzando le tabelle di routing.

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 d’uscita prescelto;

Costruzione Tabella di Routing VS Centralizzato Statico Shortest path Distribuito Adattabile Optimal VS VS

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 L’algoritmo scelto del framework ACO è AntNet

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.

Strutture dati Modello statistico Routing Table Porte Destinazioni Media Varianza d2 d3 Destinazioni Destinazioni

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.

Forward Ant Tempo di viaggio Porta di uscita Stack

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?

Backward Ant Arrivata a destinazione la Foward Ant passa i suoi dati alla Backward Ant e muore. Nodo d

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.

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

Routing Table Decremento per normalizzazione le rimanenti: Incremento la probabilità di inoltrare a f per spedire a d: Decremento per normalizzazione le rimanenti:

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

Implementazione Scelte 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 Simulazione ad eventi discreti 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

Implementazione Simulazione ad eventi discreti

Dimostrazione Avvia AntNetSim

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)

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

Topologie di rete (1) Simple Net Rete con 8 nodi e 9 link Banda 10 Mbit/s Latenza 1ms

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

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)

Topologie di rete (4) Altre topologie

Throughput vs congestion level Quando il livello di congestione è basso, Distance Vector garantisce performance migliori. All’aumentare del livello di congestione, è AntNet il migliore Alla congestione massima, i due algoritmi tornano allo stesso gap inizale, in favore però per AntNet

Throughput vs time Il livello di congestione aumenta con il passare del tempo. NTT NSF Su reti diverse, il comportamento dei due algoritmi è lo stesso.

NTT Performance Il livello di congestione viene aumentato bruscamente AntNet risponde in modo più rapido Le performance di AntNet diminuiscono in modo lineare AntNet AntNet vs DV Distance Vector

NSF Performance Il livello di congestione aumenta con il passare del tempo Anche per questa rete AntNet è più performante AntNet AntNet vs DV Distance Vector

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)

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: Super-Ant -> routing tra i clusters Ant -> routing interno al cluster Risultato: Minor overhead Delay inferiore per le lunghe tratte

AntNet Improvement Un’altra limitazione di AntNet sta nel tasso di generazione dei pacchetti (ant) In una rete con N nodi, il numero di pacchetti in circolo è dell’ordine 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)

AntNet Improvement Load Balance In AntNet il tasso di generazione è fisso Un tasso di generazione alto permette statistiche ben aggiornate 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 dell’interfaccia del nodo oltrepassa tale soglia, si obbliga a re-instradare i pacchetti

AntNet Improvement Le reti di nuova generazione devono supportare traffico di vario tipo: Voice Data Broadcast ... 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)

AntNet Improvement QoS Vengono identificati 4 possibili classi di traffico: VoIP Bandwidth Guaranteed VPN Best Effort Per ogni classe di traffico un diverso agente (ant) L’opera mostra dei buoni miglioramenti per quanto riguarda la QoS, tuttavia non viene analizzato il throughput della rete Dalle osservazioni precedenti, si evince che l’uso di 4 tipi di pacchetti di routing contribuisce notevolmente ad incrementare l’overhead della rete, con un conseguente calo del throughput

Conclusioni Il lavoro svolto ci ha permesso di confrontare un diffuso algoritmo di routing come Distance Vector con un algoritmo basato sull’Ant 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.

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à

Domande??? Fine Boscato Luca Calaon Leonardo Dissegna Moreno De Zotti Giorgio Favaretto Alessio