LEA
Department of Computer Science at the Technische Universität München
Chair for Efficient Algorithms
Postal address: 80290 München; Premises: Arcisstr.21, 80333 München
deutsch

Parallel Algorithms II (SS97)


* Lecturer:
Prof. Dr. Ernst W. Mayr

* Area:
4 hours per week in area III (Theoretical Computer Science)
advanced course

* Time and Place:
Tue 08:30 - 10:00, Room 2770
Fri 08:30 - 10:00, Room 1100
Start: May 2nd

* Tutorials:
2 hours per week
Tu 10:15 - 12:15, Room S2225
Teaching Assistant: Tom Friedetzky
Course Certificate: To get a course certificate students must get at least 40% on the homework assignments and pass the final exam.

* Audience:
3rd and 4th year students in computer science
students with computer science as minor

* Prerequisites:
2nd year courses
Parallel Algorithms is recommended.

* Contents:
The purpose of this course is to study some of the fundamental concepts in parallel computation. These include parallel machine models, the design of parallel algorithms, and the basis of parallel complexity theory. Especially, it will be focused on the following topics:

* List of Topics:
  1. Hypercubes and related networks
    1. Shuffle exchange and de-Bruijn networks
      1. Definitions and basic properties
      2. The Diaconis card tricks:
        1. A shuffling trick
        2. A mind-reading trick
      3. Simulation of normal hypercube algorithms
      4. More containment and simulation results
    2. The discrete Fourier transformation (DFT)
      1. The algorithmic fundamentals
      2. Implementation on the butterfly and SE network
      3. Applications: convolution, polynomial arithmetics
      4. Bit complexity of the DFT
    3. Algorithms for packet routing
      1. Definitions, models
      2. Greedy algorithms, worst-case instances
      3. A lower bound for oblivious routing
      4. Concentration and monotone routing
        1. Concentration routing on the hypercube
        2. Concentration routing on the butterfly
        3. Inverse concentration routing
        4. Monotone routing
        5. Generalized monotone routing
      5. Randomized routing on the butterfly
        1. Analysis of the node congestion
        2. Analysis of the running time
        3. Other contention resolution protocols
        4. Application to the hypercube
      6. Changing worst-case instances into average-case instances
        1. Hashing, r-wise independent hash functions
        2. Randomized routing
      7. Complements: Ranade's algorithm, combining, multiple copies
    4. Sorting
      1. Odd even merge sort
      2. Sorting small sets
  2. The PRAM model
    1. Basic discussions
    2. The variants of the PRAM model
    3. Basic algorithms
      1. Census functions and prefix computation
      2. Accelerated cascading
        1. Maximum in constant time
        2. Algorithm with double logarithmic running time
        3. Accelerated cascading
      3. Partitioning
        1. Simple merging algorithm
        2. Optimal EREW merging algorithm
      4. Symmetry breaking
        1. The basic routine
        2. A fast 3-coloring algorithm
        3. An optimal 3-coloring algorithm
    4. Lists and trees
      1. List ranking
        1. A simple LR algorithm
        2. An optimal LR algorithm, with analysis
      2. Euler tour
        1. Definition, simple algorithm
        2. Computation of tree functions
          1. Rooting of a tree
          2. Postorder numbering
          3. Level of a node
      3. Tree contarction
        1. The rake operation
        2. Evaluation of arithmetic expressions
      4. Lowest common ancestors
        1. Definitions
        2. The Schieber/Vishkin algorithm
      5. Sorting algorithms
        1. Definitions
        2. Merging based algorithms
        3. Cole's merge sort
      6. Lower bounds for the PRAM
        1. Basics
        2. The general method
        3. Bounds for specific problems
    5. P-completeness
      1. Concepts of parallelizabilty
      2. CVP ist P-complete
      3. Applications: DFS, LP

* Related and Advanced Lectures:
Efficient Algorithms and Data structures II

* Lecture Notes:
not available

* References:
F. Thomson Leighton:
Introduction to Parallel Algorithms and Architectures:
Arrays - Trees - Hypercubes

Morgan Kaufman Publishers, San Mateo, CA, 1992
Joseph JáJá:
Parallel Algorithms
Addison Wesley Publishing Company, 1992

* Office Hours:
look here


mayr@informatik.tu-muenchen.de