Approximation Algorithm
Example
Given an undirected graph on vertices and edges, find a set which maximises the number of edges with one end-point in and other endpoint in
- Can we find a set such that the number of edges between and is at least times that of the maximum possible ?
- in time
Lets have a graph with vertex for each student , if and do not know each other
-
Start with any partition and
-
If with strictly more neighbours in then in then move to
-
If with strictly more neighbours in then move to
-
When this process stops, each vertices has half its neighbours across
-
This implies that the cut
-
We have designed approximation for Max Cut in time
Using Randomisation
- Put in with probability & in with probability
- edges ,
- Expected number of edges (linearity of expectations)
- cut of (budget of expectations)

Max -SAT
Example
Given an instance of -SAT with variables and clauses, find the minimum number of clauses that can be satisfied by any truth assignment
- -SAT is the restriction of SAT where each clause has at most literals
- For simplicity, here we can assume exactly 3 literals
Using Randomisation
Put with probability and with probability , for each variable

Expected number of clauses satisfied
assignment satisfying clauses