Randomized, parallel and dynamic algorithms, F2003

URL of this page: http://www.daimi.au.dk/~gudmund/rpda-F03/index.html

2.part course at the Department of Computer Science, University of Aarhus in the Spring Semester, 2003.

web site for old course: Randomized, parallel and dynamic algorithms, F2002

Usually each two-hour class will start with a lecture and end with a problem session.

Literature

The course is composed of three parts

Homework assignments

There are 4 home work assignments all of which have to be answered satisfactorily to pass the course.

Links

Course Plan

The following is a detail course plan made before semester start. It will be modified to reflect what actually happens as time goes on.

Feb. 3 Lecture R1 Introduction to randomized algorithms
Randomization on inputs versus algorithms.
Analysis by linearity of expectation and indicator variables.
Las Vegas and Monte Carlo algorithms.
The complexity classes RP, BPP.
MR 1-1.2, 1.5, 10.2

Feb. 6 Lecture R2 Introduction to randomized algorithms (cont.)
Another example of a Las Vegas algorithm and analysis by linearity of expectation.
Proof of existence by the probabilistic method.
A Las Vegas algorithm that beats any deterministic strategy.
MR 1.3, 2.1
Problems for R1,R2:
MR 1.1, 1.2, 1.4, 1.8
Feb. 10 Lecture R3 Randomized algorithms: Proving lower bounds
von Neumann's minimax principle
Yao's techniques for proving lower bounds
Average case time usage for best deterministic algorithm relative to a known worst case input distribution equals expected time usage of best randomized algorithm on worst case input
MR 2.2

Feb. 13 Lecture R4 Derandomization
Trading randomness for nonuniformity.
Markov's and Chebyshev' inequalities.
Trading time for random bits.
MR 2.3, 3.2, 3.4
Problems for R3,R4:
MR 2.3, 2.6, 2.12
Feb. 17 Lecture R5 Chernoff bounds and randomized rounding
Chernoff Bound: The sum of independent indicator variables is distributed closely around the expectation.
Randomised rounding: Good approximate solutions to hard combinatorial problems.
MR 4.1, 4.3

Feb. 20 Lecture R6 Chernoff bounds (cont.)
Application to analysis of a routing algorithm.
MR 4.2
Problems for R5,R6:
MR 4.8, 4.9, 4.13
Feb. 24 Lecture R7 Algebraic techniques in randomization
Fingerprinting for result checking.
Schwarz-Zippel theorem.
Application to perfect matching.
MR 7-7.3

Feb. 27 Lecture R8 Algebraic techniques (cont.)
Distributed equality test.
(On-line) pattern matching.
MR 7.4-7.6
Problems for R7,R8:
MR 7.2, 7.5, 7.8, 7.10
Mar. 3 Lecture R9 Dictionaries
Universal hashing and dynamic dictionaries.
2-level hashing and static dictionaries.
MR 8.4-8.5
Problems for R9:
MR 8.22
Mar. 6 Lecture R10 Competitive analysis of on-line algorithms
Competitiveness: Comparison of on-line solution to best off-line solution.
Paging algorithms: deterministic and randomised solutions.
MR 13-13.3
Problems for R10:
MR 13.6
Mar. 10 Lecture R11 Competitive analysis of on-line algorithms
Paging algorithms: Lower bounds on competitiveness using Yao's technique.
MR 13.3
Problems for R11:
MR 13.10
Mar. 13 Lecture R12 Primality test
Randomised primality test.
Generation of random primes.
MR 14.6
Problems for R12:
MR 14.12
2
Mar. 17 Lecture P1 PRAM
The PRAM model for parallel programming.
Time, work, optimality, Brent's scheduling principle.
Parallel Prefix computation.
S 4, 5, 6.1
Problems for P1:
S 8.1;
3, 1b-d
Mar. 20 Lecture P2 Parallel sorting
Merging, bucket sort, radix sort.
Simulating strong CRCW PRAM on weaker EREW PRAM.
S 6.2-6.4, 7
Problems for P2:
5
Mar. 24 Lecture P3 Basic techniques for PRAM programming
Parallel prefix on pointer structures using list ranking.
List ranking by pointer jumping.
List ranking by symmetry breaking.
J 2.2, 2.7, 3.1-3.1.1
Problems for P3:
J 2.41, 2.43
Mar. 27 Lecture P4 Basic techniques (cont.)
Euler tour technique.
pre/in/post-order numbering of tree nodes.
Tree contraction.
Expression evaluation.
J 3.2-3.3
Problems for P4:
J 3.13, 3.20
Mar. 31 Lecture P5 Parallel algorithms for undirected graphs
Connected components.
Dense graphs: incidence matrix representation and creating supergraph hierarchy.
Sparse graphs: adjacency lists and the pointer jumping technique.
Minimum spanning tree.
J 5-5.2
Problems for P5:
J 5.16, 5.22
Apr. 3 NB! NB!
NB! NB!
NB! NB!
Præsentation af mulige specialeemner i algoritmik
v/ Gerth Stølting Brodal, Rolf Fagerberg, Gudmund Skovbjerg Frandsen, Peter Bro Miltersen

Apr. 7 Lecture P6 Parallel algorithms for directed graphs and matrix problems
Parallel matrix multiplication and powering.
All pairs shortest paths in directed graph.
Matrix inverse and determinant computation.
J 5.5, 8.2.1., 8.8.1-Cor.8.3
Problems for P6:
J 5.29, 5.31(b)
Apr. 10 Lecture P7 Randomized parallel algorithms
Randomized symmetry breaking.
Fractional independent set of planar graph.
Point location in planar subdivision.
J 9.2-9.3
Problems for P7:
J 9.11, 9.13
Apr. 14 Lecture P8 Randomized parallel algorithms (cont.)
Existence of perfect matching.
Finding maximum matching.
J 9.7
Problems (for P8):
9.31
Apr. 24 Lecture D1 Introduction to dynamic algorithms
Partial and fully dynamic algorithms.
The balanced binary tree technique.
Note
Problem for D1:
6
Apr. 28 Lecture D2 van Emde Boas trees
van Emde Boas trees.
Note
Problems for D2:
1, 2, 3
May 1 Lecture D3 Dynamic trees
Linking and cutting trees.
S2, T
Problem for D3:
4
May 5 Lecture D4 Dynamic MST for plane graph
minimum and maximum spanning tree for plane graph and dual.
Maintaining min/max spanning tree for dynamic plane graph.
EITTWY

May 8 Lecture D5 Dynamic algorithms for undirected graphs
Euler tour tree data structure.
Dynamic maintenance of connected components.
HLT 2.1,3

May 12 Lecture D6 Dynamic algorithms for directed graphs
Fully dynamic all pairs shortest paths.
DI

May 15 Lecture D7 Dynamic string algorithms
Deterministic coin tossing.
Signature encoding of strings.
Dynamic, persistent maintenance of a set of strings under concatenation, split, lcp, comparison.
RS 7 (MSU)
Problem for D7:
7
May 19 Lecture D8 Dynamic string algorithms (cont.)
Dynamic Maintenance of parenthesis balance information.
Randomized solution using the finger print technique.
Deterministic solution using the dynamic string data structure.
RS 2,5,6,8 (FHMRS 1-4)
Problem for D8:
8
May 22 Lecture D9 Dynamic string algorithms (cont.)
Dynamic range search.
Dynamic Pattern Matching.
ABR
Problem for D9:
9


Last modified: Fri Jan 23 10:43:22 2004.
Gudmund S. Frandsen
gudmund@daimi.au.dk