| Course Title | Network Science | 
| Course Code | SDS 424 | 
| Course Type | Elective | 
| Level | Master’s | 
| Year / Semester | 2nd Semester | 
| Instructor’s Name | Prof. Constantine Dovrolis | 
| ECTS | 5 | Lectures / week | 2 | Laboratories / week | 1 | 
| Course Purpose and Objectives | It is often the case that complex systems, both living and man-made, can be represented as static or dynamic networks of many interacting components. Network Science is a new discipline that investigates the topology and dynamics of such complex networks, aiming to better understand the behavior, function and properties of the underlying systems. The applications of Network Science include technological, informational, biological, cognitive, and social systems. This course will provide graduate students with a solid understanding of both methods and applications of Network Science. The methods include graph theoretic concepts and metrics, algorithms for the analysis of large networks, statistical and data mining tools for inferring interesting network characteristics, mathematical techniques for understanding the dynamics of network processes, and computational methods for modeling complex network phenomena. The applications that the course covers include robustness effects in communication networks, information spreading effects in informational networks, co- evolutionary phenomena in brain networks, and epidemic processes in social networks. | 
| Learning Outcomes | By the end of this course, students should be able to: 
Identify specific problems in their domain of expertise or discipline that can be solved in terms of network analysis and/or modeling.Develop simple models (computational or mathematical) that can be used to understand the behavior of complex network phenomena or systems.Apply existing (or develop new) graph mining algorithms to infer various structural or dynamic properties of a network (e.g., community structure, hierarchy, spreading phenomena, cascades).Collect, pre-process and analyze large network datasets in computationally efficientBecome familiar with several network-related problems from a diverse set of disciplines (e.g., biology, neuroscience or sociology), enabling our students to collaborate with domain experts in cross-disciplinary applications of network science. | 
| Prerequisites | Undergraduate-level courses in Linear Algebra, Calculus, Probability & Statistics, Algorithms. | Requirements | None | 
| Course Content | Week 1: What is Network Science? Relevant Concepts From Graph Theory 
What is (not) network science?The main premise of network scienceHistory and relation to graph theory, physics, sociology, and other disciplinesExamples of networks from different application domainUndirected, directed, signed, weighted and spatial networksPaths, connected components, random walks, etcDirected Acyclic Graphs, Bipartite graphs, Max-flow/min-cut Week 2: Degree Distribution and ER Graphs, Random vs. Real Graphs and "Scale Free" Networks 
Degree distributionFriendship paradoxER graphs and their degree distributionGiant component size in ER graphsAssortative vs disassortative networksThe degree distribution of real-world networksPower-law degree distributionsPreferential attachment modelHow to detect a power-law and estimate the exponentConfiguration model and degree-preserving randomization Week 3: Network Paths, Clustering and The “Small World” Property; Centrality and Network-core Metrics and Algorithms 
Clustering and transitivity in networksDiameter and characteristic path lengthSmall-world networks and the Watts-Strogatz modelNetwork motifsLink-based centrality metricsPath-based centrality metricsk-core decompositionCore-periphery structureRich-club set of nodes Week 4: Community Detection and Hierarchical Modularity; Advanced Topics in Community Detection 
Hierarchical clustering in networkModularity metricAlgorithms for modularity maximizationLimitations of modularityHiearchical modularityOverlapping communitiesDynamic communitiesComparing community structuresThe role of nodes within and between communitiesApplications of community detection Week 5: Network Contagion and Epidemics; Influence Phenomena On Networks 
Epidemics on networksEpidemic modeling (SI, SIS, SIR, etc) under homogeneous mixingEpidemic modeling under arbitrary degree distributionsBasic reproductive number and superspreadersThe linear threshold model and the Independent cascades modelEmpirical studies in information and behavior spreadingSeeding strategies on how to maximize influenceCascades and community structurePercolation, random failures, and targeted attacks on networkSearch on networksSynchronization on networksCoevolutionary networks Week 6: Models of Static and Dynamic Networks; Statistical Analysis of Network Data 
Stochastic network models that generate power-law degree distributionsOptimization-based network modelsStochastic block modelsHierarchical Random GraphsNetwork sampling methodsEstimation of network metricsAssociation networksNetwork tomography Week 7: Machine Learning meets Network Science 
Node embeddingsGraph neural networksDeep generative network models Limitations and applications of graph neural networks | 
| Teaching Methodology | Lectures, Exercises | 
| Bibliography | 
Mark Newman, “Networks: An Introduction”, Oxford University Press, 2010, ISBN-10: 0199206651, ISBN-13: 978-0199206650Albert-László Barabási, “Network Science”, Cambridge University Press, 2015 | 
| Assessment | Combination of coursework and exam | 
| Language | English |