Postgraduate Course: Randomness and Computation (INFR11089)
|School||School of Informatics
||College||College of Science and Engineering
|Credit level (Normal year taken)||SCQF Level 11 (Year 4 Undergraduate)
||Availability||Available to all students
|Summary||This 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).
- 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)
|| It is RECOMMENDED that students have passed
Algorithms and Data Structures (INFR09006) OR
Algorithms and Data Structures (INFR10052)
||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
Course Delivery Information
|Academic year 2014/15, Available to all students (SV1)
|Learning and Teaching activities (Further Info)
Lecture Hours 20,
Summative Assessment Hours 2,
Programme Level Learning and Teaching Hours 2,
Directed Learning and Independent Learning Hours
|Assessment (Further Info)
|Additional Information (Assessment)
||You should expect to spend approximately 30 hours on the coursework for this course.
If delivered in semester 1, this course will have an option for semester 1 only visiting undergraduate students, providing assessment prior to the end of the calendar year.
||Hours & Minutes
|Main Exam Diet S2 (April/May)||2:00|
| 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.
|Probability and Computing: Randomized Algorithms and Probabilistic Analysis, by Michael Mitzenmacher and Eli Upfal. (Required)|
Randomized Algorithms, by Rajeev Motwani and Prabhakar Raghavan. (Useful)
|Course organiser||Dr Ilias Diakonikolas
Tel: (0131 6)50 5129
|Course secretary||Miss Claire Edminson
Tel: (0131 6)51 4164
© Copyright 2014 The University of Edinburgh - 12 January 2015 4:12 am