4

For context: the usual greedy approximation algorithm for the minimum vertex cover problem (given a graph, find the smallest set of vertices such that every edge is incident to at least one selected vertex) goes like this:

while some uncovered edge remains:
  pick an arbitrary uncovered edge e = (u, v)
  add u, v both to the cover

There is a nice proof that this algorithm approximates the true minimum vertex cover by a factor of at most $2$: "consider the set of picked edges $E$, which are by construction pairwise non-adjacent; any true minimum vertex cover contains at least one vertex from each edge in $E$ and so has size $\ge|E|$, and the greedy algorithm produces a vertex cover with size exactly $2|E|$."


Consider the other (more natural/intuitive) greedy algorithm that iterates over vertices instead:

while some uncovered edge remains:
  pick a vertex v incident to maximum number of uncovered edges
  add v to the cover

What do we know about this algorithm? (I tried to look it up on various sites but there seems to be almost no discussion about it; every textbook/lecture I could find only discusses the edge-greedy algorithm.) Why is this not mentioned as an alternative to the edge-greedy algorithm? Is there a proof that has a good approximation bound, and in particular if not, are there example graphs where this algorithm performs strictly worse than the edge-greedy algorithm?

(I tried writing a program to search for examples, but on most examples the vertex-greedy algorithm performs better than the edge-greedy algorithm--e.g., star graph, edge forest, cycles.)

Kye W Shi
  • 141
  • 1

2 Answers2

2

Consider a bibartite graph with vertex sets $U=\{u_1,...,u_{11}\}$ and $V=\{v_1,...v_5\}$ and edge set:

$u_1$ is adjacent to $v_1,...,v_5$,

$u_2$ is adjacent to $v_1,...,v_4$,

$u_3$ is adjacent to $v_2,...,v_5$,

$u_4$ is adjacent to $v_1,v_3,v_5$,

$u_5$ is adjacent to $v_1,v_2$,

$u_6$ is adjacent to $v_4,v_5$,

and edges $u_7v_1,u_8v_2,u_9v_3,u_{10}v_4,u_{11}v_5$.

Then, the vertex-cover is of size 5 (V vertices). But, for the vertex-greedy algorithm, there exist a solution with all the vertices of U set, resulting in the approximation ratio of greater than 2.

1

One can take hint from how a similar analysis played out for its "dual" problem, maximum independent set (MIS) [*]. The main difference is that in MIS, the inclusion of a node in the independent set requires excluding all its neighbors; this is not required in a vertex cover.

Let $G=(V,E)$ be a graph on $n$ nodes and let $\Delta$ be the largest degree of any vertex $v \in V$. Assume that as you mentioned, we greedily construct a minimal vertex cover set $C$ by itratively (1) adding a node of largest degree $u \in V \setminus C$ to $C$ and (2) removing $u$ and all edges incident to $u$ from $G$, until $G$ is empty.

For every node $u \in V\setminus C$, we charge $u$ to an arbitrary adjacent node $v \in C$. There will be no more than $\Delta$ charges accrued at each node $v \in C$, since each node is adjacent to no more than $\Delta$ other nodes. Therefore $|V \setminus C| \leq \Delta |C|$.

Furthermore we know that $|C|+|V\setminus C|=n$, thus $|C| + \Delta |C| \geq n$, thus $|C| \geq n/(\Delta+1)$.

Minimum Vertex Cover and Maximum Independent Set problems are "dual" in the sense that $C$ is a min vertex cover iff $V\setminus C$ is a max independent set. In other words, let $\tau(G)$ be the vertex cover number and $\alpha(G)$ be the independent set number of $G$. Then $\tau(G)+\alpha(G)=n$, where $n$ is the number of nodes in $G$.

I haven't thought through whether this is sufficient to prove that your algorithm is an $1/\Delta$-approximation yet; once I have more time to make progress, I'll come back and edit this post.

[*] https://courses.grainger.illinois.edu/cs583/sp2016/LectureNotes/packing.pdf