Team, Visitors, External Collaborators
Overall Objectives
Research Program
Application Domains
Highlights of the Year
New Software and Platforms
New Results
Bilateral Contracts and Grants with Industry
Partnerships and Cooperations
XML PDF e-pub
PDF e-Pub

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 I defines a solution space 𝒮I. For a minimization problem minx𝒮If(x), an algorithm 𝒜 is an α-approximation algorithm if it provides a solution within α of the optimal solution for all instances in the input set:

I , f ( 𝒜 ( I ) ) α min x 𝒮 I f ( x ) = f * ( I )

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 f*(I) 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 f* is provided, and 𝒜 either provides a solution within αf*, or guarantees that no solution of value f* or less exists), or resource augmentation (where an approximation is obtained by relaxing some of the constraints of the problem).