THE UNIVERSITY of EDINBURGH

DEGREE REGULATIONS & PROGRAMMES OF STUDY 2020/2021

Information in the Degree Programme Tables may still be subject to change in response to Covid-19

University Homepage
DRPS Homepage
DRPS Search
DRPS Contact
DRPS : Course Catalogue : School of Informatics : Informatics

Undergraduate Course: Randomized Algorithms (INFR11201)

Course Outline
SchoolSchool of Informatics CollegeCollege of Science and Engineering
Credit level (Normal year taken)SCQF Level 11 (Year 4 Undergraduate) AvailabilityAvailable to all students
SCQF Credits10 ECTS Credits5
SummaryThis course is about probabilistic methods and their application to computer science. The course introduces basic models and techniques and applies these techniques to the design of various randomized algorithms, data structures, and distributed protocols. Special emphasis will be given on applications of these ideas to other areas of computer science (e.g. networking, machine learning, etc).

*** This Course is renamed from Randomness and Computation (INFR11089) from 2020-21 ***
Course description - Introduction: Las Vegas and Monte Carlo algorithms
(Elementary Examples: checking identities, fingerprinting)

- Moments, Deviations and Tail Inequalities
(Balls and Bins, Coupon Collecting, stable marriage, routing)

- Randomization in Sequential Computation
(Data Structures, Graph Algorithms)

* Randomization in Parallel and Distributed Computation
(algebraic techniques, matching, sorting, independent sets)

* Randomization in Online Computation
(online model, adversary models, paging, k-server)

- The Probabilistic Method
(threshold phenomena in random graphs, Lovasz Local Lemma)

- Random Walks and Markov Chains
(hitting and cover times, Markov chain Monte Carlo)
Entry Requirements (not applicable to Visiting Students)
Pre-requisites It is RECOMMENDED that students have passed Algorithms and Data Structures (INFR10052)
Co-requisites
Prohibited Combinations Other requirements This course is open to all Informatics students including those on joint degrees. For external students where this course is not listed in your DPT, please seek special permission from the course organiser.

A mathematical course with no programming.

Basic knowledge of (1) discrete probability and (2) algorithms is required. In particular, the students should have a good understanding of the following concepts:

(1) probability spaces and events, conditional probability and independence, random variables, expectations and moments, conditional expectation.

(2) asymptotic notation, basic sorting algorithms (Quick-sort, Merge-sort), basic graph algorithms (BFS, DFS, Dijkstra).
Information for Visiting Students
Pre-requisitesNone
High Demand Course? Yes
Course Delivery Information
Not being delivered
Learning Outcomes
On completion of this course, the student will be able to:
  1. Apply fundamental tools in discrete probability (e.g. concentration inequalities, probabilistic method, random walks).
  2. Know randomized algorithms and data structures for selected combinatorial and graph problems.
  3. Be able to analyze error probabilities and expected running time of randomized algorithms.
  4. Understand the fundamentals of Markov chains and their algorithmic applications.
  5. Apply Monte Carlo methods such as MCMC.
Reading List
Probability and Computing: Randomized Algorithms and Probabilistic Analysis, by Michael Mitzenmacher and Eli Upfal. (Required)

Randomized Algorithms, by Rajeev Motwani and Prabhakar Raghavan. (Useful)
Additional Information
Graduate Attributes and Skills Not entered
Special Arrangements This course is open to all Informatics students including those on joint degrees. For external students where this course is not listed in your DPT, please seek special permission from the course organiser.

A mathematical course with no programming.

Basic knowledge of (1) discrete probability and (2) algorithms is required. In particular, the students should have a good understanding of the following concepts:

(1) probability spaces and events, conditional probability and independence, random variables, expectations and moments, conditional expectation.

(2) asymptotic notation, basic sorting algorithms (Quick-sort, Merge-sort), basic graph algorithms (BFS, DFS, Dijkstra).
KeywordsNot entered
Contacts
Course organiserDr Kousha Etessami
Tel: (0131 6)50 5197
Email: Kousha@inf.ed.ac.uk
Course secretaryMiss Clara Fraser
Tel: (0131 6)51 4164
Email: clara.fraser@ed.ac.uk
Navigation
Help & Information
Home
Introduction
Glossary
Search DPTs and Courses
Regulations
Regulations
Degree Programmes
Introduction
Browse DPTs
Courses
Introduction
Humanities and Social Science
Science and Engineering
Medicine and Veterinary Medicine
Other Information
Combined Course Timetable
Prospectuses
Important Information