Section: Research Program
Approximation Algorithms
In some contexts, obtaining an exact solution to an optimization problem is not feasible: when instances are too large, or when decisions need to be taken rapidly. Since most of the combinatorial optimization problems are NP-hard, another direction to obtain good quality solutions in reasonable time is to focus on approximation algorithms. The definition of approximation algorithms is based on the notion of input set and each defines a solution space . For a minimization problem , an algorithm is an -approximation algorithm if it provides a solution within of the optimal solution for all instances in the input set:
The objective is to search for polynomial algorithms, with approximation ratios as close to 1 as possible. Such algorithms are called worst-case approximation algorithms, because the performance guarantee is expressed over all possible inputs of the problem. The design of these algorithms have strong links with the enumeration techniques described above: since computing is an NP-hard problem, it is often required to derive strong a priori bounds on the optimal solution value which can afterward be compared to estimations of the value of the solution produced. In many cases, it is also possible to build -approximate solutions by a careful rounding of a solution obtained from the linear relaxation of an integer formulation of the problem. Members of the team have expertise in designing and evaluating approximation algorithms for resource allocation in computer systems, using a variety of techniques, such as dual approximation (where a guess of the optimal value is provided, and either provides a solution within , or guarantees that no solution of value or less exists), or resource augmentation (where an approximation is obtained by relaxing some of the constraints of the problem).