RandomizedRounding

ClassS04CS141 | recent changes | Preferences

Randomized rounding is a technique used to design approximation algorithms for combinatorial optimization problems.

1. Start with the problem (e.g. MAX-SAT) you want to design an algorithm for.

2. Formulate the problem as an IntegerLinearProgram IP (for example).

3. Relax the IP to get a LinearProgram LP.

4. Design an algorithm taking the following form:

a. Given a problem instance, compute a solution X* to the corresponding linear programming relaxation LP.
b. "Randomly round" X* to an integer solution X' of the IP.

5. Use the ProbabilisticMethod? to show that the integer solution X' approximately meets the constraints of the IP with positive probability. Use the fact that the cost of the optimal fractional solution X* gives you a bound on OPT.

6. [Optional] Convert the randomized algorithm into a deterministic algorithm using the MethodOfConditionalProbabilities.?


Examples:


References:

ClassS04CS141 | recent changes | Preferences
This page is read-only | View other revisions
Last edited February 22, 2004 8:50 pm by NealYoung (diff)
Search: