PHYS 5116 - Complex Networks & Applications - Fall 2024

Mondays & Wednesdays: 5:30 - 7:20pm
September 4 – December 11, 2024
177 Huntington Ave., 11th fl.

Summary

This course is an interdisciplinary introduction to the emerging science of complex networks and their applications. Topics to be covered include the mathematics of networks (graph theory), data analysis, and applications to biology, sociology, technology, and other fields. Students will learn about foundational and ongoing research in the field, and ultimately apply their knowledge to conduct their own analysis of a real network data set of their choosing as part of the final project. This course is cross-listed as NETS 5116.

Instructors & Contacts

Course Materials

Assignments will be distributed and submitted through Canvas. The course is primarily based on the following textbook:

Additionally, we recommend engagement with other useful network science materials:

Class Organization, Coursework, Grading

Lectures: Lectures will be given jointly by Prof. Barabási, Prof. Klein, and Dr. Dorantes-Gilardi.

Examinations: We will assign final grades based on four weighted components:

  • Problem Sets (15% for each of 3): 45%

  • Intermediate Project Progress Presentation: 10%

  • Final Project Presentation: 35%

  • Class Attendance & Participation: 10%

Homework: There will be three (3) homework assignments representing a mix of mathematical work and computational data analysis. Students are expected to turn in their source code for the computational exercises. Students in the Network Science Ph.D. program will take part in additional seminars to discuss more complex derivations and other deeper aspects of network science.

Class Participation: We operate on the belief that true mastery of any subject occurs when one is to be able to explain it to others. Thus, we expect students to contribute to the lectures, answering questions posed during lectures and being engaged during hands-on computational exercises. Students are encouraged to read the appropriate textbook chapters/other assigned material beforehand, ready to participate. You should regard the in-class lectures as guided tours through the assigned texts, not as a substitute for them. The co-instructors will determine a final class participation score based on each student’s attendance record and overall engagement in class. Occasional absences are, of course, understandable. If you can’t attend a class for any reason, please let either Prof. Klein or Dr. Dorantes-Gilardi know in advance.

Final Project: For the final project, students will collect data representing a real network of their choice and analyze it using the network measures and computational tools introduced in class. The goal is to craft a complete “story”: what does network science tell us about the system’s organization and function? In place of a midterm exam, there will be an intermediate presentation to check your progress and provide feedback.

  • Datasets: We will provide some suggestions in class. If none of these interest you, you are free to seek out your own data within the guidelines that will be provided in lecture.

  • Groups: Graduate students in either Network Science or in Physics specialized in Networks will perform the project on their own. All other students are required to work in pairs, with the two students coming from different programs or academic departments.

  • Help: The final project is the largest single component of your grade, and in past years the primary determinant of a successful (vs. unsuccessful) project has been starting early and asking for help often. The project is intended to mirror a real network/data science research project. Real research occurs over the span of months or years, not days or hours, and things almost never work out the first time. There will inevitably be bugs in your code, flaws in your analysis, and infelicities in your narrative and presentation. So don’t wait until the last week to do your project—it will be obvious. Instead, be proactive and avail yourself of office hours in order to obtain feedback and fix problems early.

Computer Programming and Mathematics

Network science is a fundamentally computational science. Although helpful, strong programming ability is not a requirement to enroll in the course. Nonetheless, the homeworks and your final project will necessarily involve significant computational work. You will be expected to build the required skills as the course goes on through a series of hands-on lectures that will introduce some of the cutting-edge software/libraries used for network and data science, supplemented by independent study. Students are free to work in any computer language/network software they feel most comfortable, but the hands-on lectures will be presented in Python using the NetworkX library (https://networkx.github.io/).

Likewise, mathematics is unavoidable in doing justice to network science. Some basic knowledge of probability (continuous and discrete), statistics, linear algebra, combinatorics, and calculus is certainly helpful. Yet in order to make this course open to an interdisciplinary audience of students these topics are not formal prerequisites to take the course. That said: if math is not your strongest suit, please know that by registering for PHYS 5116 you are committing to going the extra mile to understand math-heavy concepts or derivations and complete the same homework assignments as peers who may have stronger math backgrounds. And remember, we are here to help.

Academic Misconduct

Appropriate disciplinary action, up to and including failing the student, will be taken in the event of cheating, plagiarism, dishonesty, or other academic misconduct. The Northeastern University Policy on Academic Integrity can be found at http://www.northeastern.edu/osccr/academicintegrity/. In this course we encourage students to work together (and indeed, this is required for the final project for non-Network Science PhD students). So, what constitutes academic misconduct?

It is not considered academic misconduct if you:

  • Work together on homework assignments, as long as you each work out and submit your own final answers. Here “final answers” includes such things as derivations, plots (where appropriate), written explanations, and source code (for computational exercises), etc.

  • Get help from other professors, physics workshops, tutors, etc. on the homework assignments provided it is clear to us that you are the author of your own answers, and you understand what you've written down.

It is considered academic misconduct if you:

  • Submit work substantially similar to that done by others as your own.

  • Don’t contribute equally to the final project (for those working in pairs)

The above lists are intended as examples and are not exhaustive. If in doubt, please ask.

Statement of Non-Discrimination

Northeastern University is committed to fair treatment of students. As instructors of the course, we strive to maintain a positive learning environment based upon communication and mutual respect. Any suggestions about how to facilitate such a positive and open environment in this class will be appreciated and given serious consideration. Neither the University nor the instructors discriminate on the basis of race, sex, age, disability, religion, sexual orientation, color, or national origin. If you are a person with a disability and require any accommodation in order to participate in this class, please advise us and if necessary, make arrangements with the Disability Resource Center (617) 373-2675.

Changes to Syllabus and Student Responsibilities

The instructors reserve the right to modify this syllabus as deemed necessary any time during the semester. Emendations to the syllabus will be discussed with students during a class period. Students are responsible for information given in class; there may be also details about PHYS 5116 not covered in this syllabus. Do not assume something simply because it is not specified in the syllabus. If you are unsure about anything related to the rules guiding this course, consult with one of the instructors.

Syllabus below (or pdf here).


This schedule is subject to change.

Class Date Topic Instructor
1 Wed, Sep. 4, '24 Chapter 1: Introduction Prof. László Barabási
2 Mon, Sep. 9, '24 Chapter 2: Graph Theory Prof. László Barabási
3 Wed, Sep. 11, '24 Chapter 3: Random Networks Prof. László Barabási
4 Mon, Sep. 16, '24 Chapter 4: The Scale-Free Property Prof. László Barabási
5 Wed, Sep. 18, '24 Chapter 5: The Barabási-Albert Model Prof. László Barabási
6 Mon, Sep. 23, '24 Preliminary Project Presentations All
7 Wed, Sep. 25, '24 Hands-On (Python, networkx, algorithms) Prof. Brennan Klein
8 Mon, Sep 30, '24 Hands-on (Gephi) Dr. Rodrigo Dorantes-Gilardi
9 Wed, Oct. 2, '24 Weighted Networks Prof. Brennan Klein
10 Mon, Oct. 7, '24 Chapter 6: Evolving Networks Dr. Rodrigo Dorantes-Gilardi
11 Wed, Oct. 9, '24 Movie BK & RDG
Mon, Oct. 14, '24 Indigenous Peoples Day No Class
12 Wed, Oct. 16, '24 Chapter 7: Degree Correlations Dr. Rodrigo Dorantes-Gilardi
13 Mon, Oct. 21, '24 Chapter 8: Network Robustness Prof. László Barabási
14 Wed, Oct. 23, '24 Chapter 8: Network Robustness Prof. László Barabási
15 Mon, Oct. 28, '24 Intermediate Project Presentations All
16 Wed, Oct. 30, '24 Network Motifs Prof. Brennan Klein
17 Mon, Nov 4, '24 Chapter 9: Communities Dr. Rodrigo Dorantes-Gilardi
18 Wed, Nov. 6, '24 Chapter 9: Communities Dr. Rodrigo Dorantes-Gilardi
Mon, Nov. 11, '24 Veteran's Day No Class
19 Wed, Nov. 14, '24 Chapter 10: Spreading Phenomena Prof. Brennan Klein
20 Mon, Nov. 18, '24 Temporal Networks Prof. Brennan Klein
21 Wed, Nov. 20, '24 Dynamics on Networks Prof. Brennan Klein
22 Mon, Nov. 25, '24 Office Hours BK & RDG
Wed, Nov. 27, '24 Thanksgiving Break No Class
24 Mon, Dec. 2, '24 Office Hours BK & RDG
25 Wed, Dec. 4, '24 Office Hours BK & RDG
26 Mon, Dec. 9, '24 Final Presentations (pairs) All
27 Wed, Dec. 11, '24 Final Presentations (singles) All