81943 - COMPLEX SYSTEMS & NETWORK SCIENCE

Anno Accademico 2021/2022

  • Docente: Ozalp Babaoglu
  • Crediti formativi: 6
  • SSD: INF/01
  • Lingua di insegnamento: Inglese

Conoscenze e abilità da conseguire

Alla fine del corso, lo studente avrà acquisito le nozioni di base riguardo alla complessità derivante dalle interazioni fra semplici agenti in natura o all’interno dei moderni sistemi di calcolo. Lo studente avrà l’abilità di identificare, formulare ed analizzare nuovi problemi usando i modelli matematici relativi ai sistemi dinamici ed alla cosiddetta "network science"

Contenuti

Programma: Attuali sistemi informatici e servizi sono spesso basate su un numero elevato di componenti che interagiscono tra loro per svolgere il proprio compito. Sotto certe condizioni, da queste interazioni può derivare un comportamento del tutto inaspettato. La Complexity Science è un settore interdisciplinare che studia il comportamento globale che risulta da interazioni locali semplici, con lo scopo di caratterizzarlo e controllarlo. La struttura delle interazioni può essere formalizzata in termini di reti. Esse svolgono un ruolo centrale, ad esempio, nella trasmissione dell'informazione, nel trasporto dei beni, nella diffusione delle innovazioni, nella formazione di opinioni e adozione di nuove tecnologie. La Network Science studia l'interconnessione che esiste nella società moderna, tramite lo studio delle proprietà fondamentali che governano la struttura e l'evoluzione dinamica delle reti.

Contenuti: Complex systems: definitions, methodologies; Dynamical systems, Nonlinear dynamics; Chaos, Bifurcations and Feigenbaum constant, Predictability, Randomness and Chaos; Models of complex systems, Cellular automata, Wolfram's classification, Game of life; Autonomous agents, Flocking, Schooling, Synchronization, Formation creation; Cooperation and Competition, Game theory basics, Nash equilibrium; Game theory: Prisoner's Dilemma, Coordination games, Mixed strategy games; Adaptation, Evolution, Genetic algorithms, Evolutionary games; Network Science: Definitions and examples; Graph theory, Basic concepts and definitions; Diameter, Path length, Clustering, Centrality metrics; Structure of real networks, Degree distribution, Power-laws, Popularity; Models of network formation; The Erdos-Renyi random model; Clustered models; Models of network growth, Preferential attachment; Small-world networks, Network navigation; Peer-to-peer systems and overlay networks; Structured overlays, DHTs, Key-based routing, Chord; Distributed network formation: Newscast, Cyclon, T-Man; Processes on networks: Aggregation; Rational dynamics: Cooperation in selfish environments, Homophily, Segregation; Diffusion, Percolation, Tipping points, Peer-effects, Cascades.

Prerequisiti: Conoscenze su sistemi operativi, reti di calcolatori e nozioni base di probabilità.

Testi/Bibliografia

  1. Networks, Crowds, and Markets: Reasoning about a Highly Connected World, D. Easley, J. Kleinberg. Cambridge University Press, 2010.
  2. Graph Theory and Complex Networks: An Introduction, M. van Steen. 2010.
  3. The Computational Beauty of Nature, G. W. Flake. MIT Press, Cambridge MA. 2000
  4. Complex Adaptive Systems: An Introduction to Computational Models of Social Life, J. H. Miller, S. E. Page. Princeton University Press, 2007.

Metodi didattici

Il corso adotta una modalità di organizzazione della didattica "blended" che prevede partecipazione sia in presenza che online sulla piattaforma MS Teams.  Il numero di studenti che possono essere presenti in aula è limitato dai protocolli di sicurezza. Chi volesse seguire una lezione in presenza, deve prenotare il posto utilizzando il sito presente la settimana precedente. A prescindere dalle condizioni sanitarie e dalle specifiche modalità di organizzazione del corso, gli studenti potranno seguire le lezioni dell’intero corso in modalità remota su MS Teams.

 

Modalità di verifica e valutazione dell'apprendimento

La verifica dell'apprendimento avviene attraverso un progetto di programmazione e una prova orale. Il progetto di programmazione ha lo scopo di accertare la capacità dello studente di analizzare specifici esempi di sistemi visti durante il corso. La prova orale consiste nella presentazione di un articolo di ricerca, oppure in una discussione degli argomenti trattati durante il corso. L'esame viene superato se si riporta una valutazione sufficiente in entrambe le prove.

Strumenti a supporto della didattica

Materiale didattico: Tutto il materiale didattico presentato a lezione viene messo a disposizione dello studente in formato elettronico tramite il sito web del corso.

Link ad altre eventuali informazioni

http://www.cs.unibo.it/babaoglu/courses/csns/

Orario di ricevimento

Consulta il sito web di Ozalp Babaoglu

Consulta il sito web di Angelo Trotta

SDGs

Lavoro dignitoso e crescita economica Imprese innovazione e infrastrutture

L'insegnamento contribuisce al perseguimento degli Obiettivi di Sviluppo Sostenibile dell'Agenda 2030 dell'ONU.