homework 2, due Tuesday 1/13/2004
Work in groups of 1-3, but each person turn in your own write-up, stating with whom they worked.
- Write up a careful proof of one of the the three theorems above: Euler's theorem, the shortcutting theorem, or Konig-Egervary theorem. If you are working in a group of 2-3 people, each person should choose a different theorem to prove and write up, and take primary responsibility for that theorem (with help and feedback from the others).
- (problem 3.3 in text) The Directed Steiner Tree problem is the following.
- Given a directed graph G=(V,E) with non-negative edge costs, a root vertex r, and a subset of vertices S, find a minimum-cost tree in G rooted at r and containing all vertices in S. (A tree in a directed graph is a collection of directed edges such that those edges together with their reversals contain no cycle of length > 2. The tree is rooted at r if there is a directed path in the tree from each vertex in the tree to r.)
- The Set Cover Problem is, given a collection of sets, to choose some of those sets so that every element is in some chosen set. The goal is to minimize the number of chosen sets. Unless P=NP, there is no o(log n)-approximation algorithm for set cover, where n is the number of elements in the problem instance.
- Using this latter fact, show that (unless P=NP) there is no o(log n)-approximation algorithm for the Directed Steiner tree problem, by giving an approximation-preserving reduction from Set Cover to Directer Steiner tree.