NewsCurrently, no news are available
This course is about designing fast algorithms for NP-hard graph theoretic problems, where the running time depends on multiple parameters of the input. For example, while a database may contain a very large amount of data, the size of the database queries is typically extremely small in comparison. The aim would be to obtain algorithms that have a small dependence on the database size, but possibly a larger dependence on the query size. Such an algorithm would be fast when the queries are small. Similarly, if the goal is to find small solutions in a large graph, then an algorithm with exponential dependence on the size of the solution and polynomial dependence on the size of the graph might be acceptable.
We will see several algorithmic techniques to design fast algorithms for NP-hard problems in this setting, called Fixed-Parameter Tractable (FPT) algorithms, as well as an overview of the lower-bound methods. We will also learn about preprocessing or data-reduction algorithms in this setting, called Kernelization algorithms, which run in polynomial time and reduce a given instance of a NP-hard problem to an equivalent but much smaller instance.
Some example topics that will be covered during the course:
- Branching, bounded-depth search trees
- Randomization, color coding
- Iterative compression
- Kernelization, sunflower lemma, crown decomposition
- Kernelization lower bounds
- Algebraic methods, inclusion-exclusion
- Representative sets and matroids
- Important cuts
- Treewidth, bidimensionality on planar graphs
- Turing and lossy kernelization
Two hours of lectures every week and two hours of tutorials every other week.
Lectures: Tuesday, 10:15-12:00
First lecture: April 11, 2023
Basic knowledge of algorithms, graph theory and probability will be assumed.
"Parameterized Algorithms" by Cygan et al. (see this for free pdf of the book from the authors).