Social and Technological Networks

University of Edinburgh. Autumn 2018. Level: Year4/5/Msc/CDT.

Home Topics and Lectures Notes and Exercises Projects Last Year's page


Lecturer: Dr. Rik Sarkar

Office Hours: Ended.


  1. Solutions to notes 2 and 5 are now up.

  2. No class on Friday 23rd Nov.

  3. Final class on Tuesday 27th.

  4. Special office hours Monday 12th. 14:00 -- 15:30.

  5. No class on Tuesday Nov 13.

  6. Notes 5 on community detection are out.

  7. Solutions to notes 3 and 4 are out.

  8. Guideline for writing Project plan.

  9. No class on Tuesday 16th october.

  10. Project list is out. See Piazza and email.

  11. Notes 4 are out.

  12. Solutions to notes 1 are up.

  13. Notes and questions on metric spaces are up. Read them before Friday 5th.

  14. Piazza Forum at:

  15. Notes with exercises for random graphs.

  16. Solutions are up for Exercise 0 on Exercises page. Check that you are aready for the course.

  17. Background preparation questions are up at Exercise 0 on Exercises page.

  18. First class is on Tuesday, September 18 at Lister teaching and learning center. See you there!

Introduction: The aim of the course is to learn computational and mathematical techniques for network analysis, and apply those ideas to real networks. We will also study some recent developments and research in this area.

Networks are ubiquitous -- from social networks and computer networks, to networks of roads, power grids, chemicals, biological elements etc. We will study fundamental concepts and algorithms that are relevant to many different types of network systems.

We will also see how networks can be constructued from general datasets, and network analysis can be applied to other types of data. The course will have a small coursework project, where you can be creative and try out original, crazy ideas!

Update: New in 2018: Relations to machine learning.

This year, we will cover a special set of topics on the relation between funadamental machine learning and network science.

Preliminary Topic List

  1. Introduction: Motivation and overview the course
  2. Community detection & Clustering
  3. Metric spaces and networks. Creating networks from arbitrary data
  4. Embedding of networks, relations to machine learning
  5. Pagerank, HITS & structure of the web
  6. Finding influential people
  7. Strong and weak ties, triadic closure, betweenness measures
  8. Definitions and properties of Random graphs, growth
  9. Power Law networks and Preferential attachment model
  10. Small world models
  11. Spectral graph theory and applications
  12. Cascades and epidemics
  13. Other current topics

These topics will be updated as we go. If there are specific topics you would like discussed, talk to the lecturer.

Pre-requisites Understanding (undergraduate level) of graphs, data structures, basic algorithms (spanning trees, BFS, DFS, sorting, shortest path etc), Linear algebra, and probability. Programming is highly recommended for the coursework.

See Last Year's web page for some typical content, but as explained above, we will have some new exciting topics this year.

Main Books and reading (available online):

Additional Books:


Similar and relevant courses at other universities

Last Year's web page

Course Structure

Final theory exam: 60% of marks. One Project 40% of marks. The project is an opportunity to develop or try something new in network science. It will consist of using programming or mathematical tools to analyze a network dataset or model.

FEEDBACK: Assignment scores and comments on deduction of marks will be given for the project. Exercise theoretical problems and solutions will be given in class. Please attempt these as they are posted and use them to test your understanding and your precision in writing analytic answers.

DRPS page with official descriptor of the course.