Course delivered in March at the ICN.
Lecturer: Elisa Schaeffer
Language: English, with instructor support in French and Spanish
Date: International Week 2024
Network science is the art of using mathematical and computational concepts and techniques to model, understand, describe, shape, and predict networked systems that are abundant in biological, technological, economic and sociological contexts: the brain, a highway system, the stock market, social media, just to name a few.
This is an introductory course tailored for those who are new to network science that can also accommodate newcomers to Python. Some programming experience is recommended, but none is required. No mathematical previous knowledge is required, although those skilled in mathematics can challenge themselves with more complex tasks when applying the concepts in their personal worksheets for each session.
- Session 1: Graph theory and network science
- Session 2: Generation models and graph layout algorithms
- Session 3: Structural characterization of vertices, edges, and graphs
- Session 4: Robustness and resilience of networked systems
- Session 5: Community detection in networks
- Session 6: Computational complexity of network problems: coloring, flow
- Session 7: Applied network science: examples from epidemiology and AI
- Collaborative construction of an trilingual illustrated glossary with code examples
- Interactive exploration of key concepts through per-session Colab notebooks.
- All course materials are electronic and publicly available online.
- Identify real-world situations that can be modeled through network science.
- Characterize the structure of networked systems in graph-theoretical terms.
- Detect communities in networked systems.
- Select an efficient solution technique for diverse graph-theoretical problems.
At the end of each of the seven sessions, each student commits their individual Colab worksheet to a public GitHub repository for future reference. The grading of the worksheet is done synchronously in class as co-evaluation jointly between the lecturer and the participant as a one-minute review of the worksheet to assess for criteria on a three-level scale. The rubric of the criteria and the scale is the following:
- Functioning Python code for the session’s concepts:
- absent = 0
- partial = 0.5
- complete = 1
- Visualizations generated by the above code:
- absent = 0
- illegible = 0.5
- legible = 1
- Use of comments within the code:
- absent = 0
- unclear = 0.5
- helpful to future self = 1
- Notes on graph-theoretical definitions:
- absent = 0
- unclear = 0.5
- helpful to future self = 1
Note that one worksheet may give up to 4 points. Hence, the best five of the seven worksheets are used to determine the final grade on a scale of 20.