CSE 521p: Algorithms (Spring 2015)
[course description
| lectures
| project
| discussion board]
| related material]
| important announcements]
important announcements
- Reminder that your final project report is due June 6 and comments on other people's projects
are due June 11. No late projects accepted!
- Although I will review a bit in class, if you are rusty, I suggest
you spend a bit of time reviewing basics of probability. here are some resources:
- Here are the guidelines for the project.
- Here is how you can send email to the class.
lectures
Key (see references below):
- [AIRW] -- Algorithms in the Real World (Blelloch/Gupta)
- March 30: Overview,
List update (notes +
slides),
Matching
(notes +
slides), Hashing
(slides)
- April 5: Universal hashing and perfect hashing, linear probing
(slides (29-51) +
notes),
Bloom filters,
max load and power of two choices notes
- April 13:
Streaming algorithms: (
intro slides),
Heavy hitters,
(notes),
Distinct elements and document similarity
(notes).
- References (read in this order):
- April 20:
More streaming -- second frequency moment [AMS]
(notes) and
locality sensitive hashing (notes)
- References (read in this order):
- April 27: Linear programming
(notes)
- May 4: More on linear programming, including duality.
(notes)
- May 11: LP Based Approximation Algorithms (notes),
Intro to adaptive decision-making (notes).
- May 18: More on adaptive decision making, multiplicative weights update algorithm, zero-sum games, applications, etc.
(notes)
- June 1: Presentations:
- Jonathan Barone and Matt Cohn: Efficient Use of One-Way Functions for Program Obfuscation
- Arjit Basu and David Straily: Tries and Efficient Hash Tables - A Comparison
- Kevin Binz and Seja Filipi: Studying Nash Equilibria in game theoretic problems from an algorithmic perspective
- Shabinaz Chemnad P and Andrew Gawronski: Exploring the TRIE data structure and its various optimizations
- Yi Li and Calvin Hopkins: Sequence Alignment Problems
- Matthew Smith and Daniel Leita: Theoretical and Practical Limits of Clock Synchronization over a Network
- Ioana Pop and Vasily Tarasov: Properties of the Traffic Light Problem
- June 8:
- Daniel Mejia and Perry Zheng: Locality Sensitive Hashing on Algebird
- Nick Walker and Swagat Mishra: Coding theory and forward error correction with a focus on Reed-Solomon coding
- Weiping Zhang and Kefu Zhao: Predicting NBA Game Outcomes using Linear SVMs
- Mayank Mishra and Abdul Salama: RNA Secondary Structure Prediction
- Aaron Roney and Matthew Williams: On LSH and Distance Measures
- Eric Orth: Parallel Algorithms
- Lon C. Lundgren: Surveying the Usage of Space Partitioning Data Structures and Algorithms
- Mukti Ranjan Sahoo: Cuckoo Hashing
course description
Instructor: Anna Karlin,
CSE 594, tel. 543 9344
Time: Mondays, 6:30 -- 9:20pm
in MGH 231
Office hours: By appointment -- send email.
Teaching assistant: Kira Goldner
Office hours:
- Mondays, 5:30-6:20pm in CSE 218.
- Also by appointment -- send email.
Course evaluation: homework (~60%), project (~40%).
About this course:
We will study the design and analysis of algorithms from a modern perspective with a particular
focus on techniques that find use in many subfields of computer science.
The modern perspective means that there will be extensive use of randomization and approximation.
Topics will include hashing and its many applications, linear programming and basics of convex
optimization, decision making under uncertainty, dimension reduction, streaming, load balancing,
etc.
related material
Courses at other universities: