In the international algorithms community one research focus over the past years has been the design
of online and approximation algorithms. Here the general goal is to develop approximate solutions to problems for which the computation
of * exact * solutions is hard or even impossible.

### Online algorithms

Classical algorithm theory assumes that, for a given problem, all data is known in advance. However, in practice, many problems are online, i.e. relevant input arrives incrementally over time. We will design algorithms that can cope with the handicap of not knowing the future. We will study problems in data structuring, the resource management in operating systems, robotics and large networks.### Approximation algorithms

Many optimization problems that arise in practice are NP-hard. Assuming that P is not equal NP, these problems cannot be solved optimally in polynomial time. Again, one resorts to approximations. Of particular interest are polynomial time approximation schemes that compute (1+epsilon)-approximations, for any epsilon > 0, in polynomial time. We will study approximation algorithms for classical optimization problems.Emphasis of the course, beside algorithm design, is the careful and thorough mathematical analysis of the various strategies and solutions.