Chapter 9: Q4E (page 306)
Given an undirected graph in which each node has , show how to efficiently find an independent set whose size is at leasttimes that of the largest independent set.
Short Answer
This algorithm is proved.
Chapter 9: Q4E (page 306)
Given an undirected graph in which each node has , show how to efficiently find an independent set whose size is at leasttimes that of the largest independent set.
This algorithm is proved.
All the tools & learning materials you need for study success - in one app.
Get started for freeIn the MAX SAT problem, we are given a set of clauses, and we want to find an assignment that satisfies as many of them as possible.
(a) Show that if this problem can be solved in polynomial time, then so can SAT.
(b) Here’s a very naive algorithm.
for each variable:
set its value to either by flipping a coin
Suppose the input has m clauses, of which the has literals. Show that the expected number of clauses satisfied by this simple algorithm is
In other words, this is a 2-approximation in expectation! And if the clauses all contain literals, then this approximation factor improves to
(c) Can you make this algorithm deterministic? (Hint: Instead of flipping a coin for each variable, select the value that satisfies the most of the as of yet unsatisfied clauses. What fraction of the clauses is satisfied in the end?)
Devise a backtracking algorithm for the RUDRATA PATH problem from a fixed vertex s. To fully specify such an algorithm you must define:
(a) What is a subproblem?
(b) How to choose a subproblem.
(c) How to expand a subproblem.
Argue briefly why your choices are reasonable
Devise a branch-and-bound algorithm for the SET COVER problem. This entails deciding:
(a) What is a subproblem?
(b) How do you choose a subproblem to expand?
(c) How do you expand a subproblem?
(d) What is an appropriate lowerbound
Do you think that your choices above will work well on typical instances of the problem? Why?
In the MINIMUM STEINER TREE problem, the input consists of: a complete graph with distances between all pairs of nodes; and a distinguished set of terminal nodesThe goal is to find a minimum-cost tree that includes the vertices . This tree may or may not include nodes in
Suppose the distances in the input are a metric (recall the definition on page 292). Show that an efficient approximation algorithm for MINIMUM STEINER TREE can be obtained by ignoring the nonterminal nodes and simply returning the minimum spanning tree on. (Hint: Recall our approximation algorithm for the TSP.)
Local search for minimum spanning trees. Consider the set of all spanning trees (not just minimum ones) of a weighted, connected, undirected graph
Recall from Section 5.1 that adding an edge to a spanning tree creates an unique cycle, and subsequently removing any other edge from this cycle gives back a different spanning tree . We will say that differ by a single edge swap and that they are neighbors.
a) Show that it is possible to move from any spanning tree to any other spanning tree by performing a series of edge-swaps, that is, by moving from neighbor to neighbor. At most how many edge-swaps are needed?
(b) Show that if is an MST, then it is possible to choose these swaps so that the costs of the spanning trees encountered along the way are nonincreasing. In other words, if the sequence of spanning trees encountered is
then
(c) Consider the following local search algorithm which is given as input an undirected graph .
Let be any spanning tree of
while there is an edge-swap which reduces cost():
Show that this procedure always returns a minimum spanning tree. At most how many iterations does it take ?
What do you think about this solution?
We value your feedback to improve our textbook solutions.