Description: This course provides an introduction to complex networks, their structure, and function, with examples from engineering, biology, and social sciences. Topics include spectral graph theory, notions of centrality, community detection, random graph models, inference in networks, opinion dynamics, and contagion phenomena. Our main goal is to study network structures and how they can be leveraged to better understand data defined on them. Recommended Prerequisite(s): Linear algebra, probability and statistics, and basic ability to program in Python.