In the MAXIMUM CUT problem we are given an undirected graphG=(V,E) with a weightw(e) on each edge, and we wish to separate the vertices into two sets S and V − S so that the total weight of the edges between the two sets is as large as possible. For eachSV definew(S) to be the sum of allwe over all edges{u,v} such that |Su,v|=1. Obviously, MAX CUT is about maximizing w(S) over all subsets of .

Consider the following local search algorithm for MAX CUT:

start with anySV

while there is a subsetS'V such that

||S 0 | − |S|| = 1 andw(S')>w(S) do:

set S=S'

  1. Show that this is an approximation algorithm for MAX CUT with ratio2.

(b) But is it a polynomial-time algorithm?

Short Answer

Expert verified

An approximation algorithm for MAX CUT with ratio two is proved.

b). Yes, it a polynomial-time algorithm.

Step by step solution

01

MULTIWAY CUT problem

In the multiway cut problem, we are given a graphG=V,E with k special vertices s1,s2,...,skV.Our goal is to find the smallest set of edges which when removed from the graph disconnect the graph into at least k components where each is in a different component. When k=2,

this is exactly the min s-t cut problem, but ifk3 the problem becomes NP-hard. Consider the following algorithm.

Let Fi be the set of edges in the minimum cut with si one one side and all other special vertices on the other side. And output is F, the union of all . Also note that this is a multiway cut because removing fromG isolates in its own component.

02

An approximation algorithm for MAX CUT with ratio twoa).

An approximation algorithm for MAX CUT with ratio two is defined as already given in the question In the MAXIMUM CUT problem we are given an undirected graph with a weightwe on each edge, and we wish to separate the vertices into two sets S and V − S so that the total weight of the edges between the two sets is as large as possible. For eachSV definewS to be the sum of allwe over all edges such that Su,v=1. Obviously, MAX CUT is about maximizing w(S) over all subsets .

Consider the following local search algorithm for MAX CUT:

while there is ||S 0 | − |S|| = 1 andSu,v=1.

In particular, it appears that they are solving instances of weighted MAX-CUT where the input graph is the complete graph on two thousand vertices with edge weights assigned from {1,1}independently and uniformly at random.

Su,v=1.Su,v=1.=Su,v=2.

Anapproximation algorithm for MAX CUT with ratio two is proved.

03

A polynomial-time algorithm

there are (this is a polynomial algorithms). We can bound this through some very simple observations.

1. Initially ES,S¯0,

2. In every iteration,ES,S¯ increases by at least one, and

3.ES,S¯ is always at most mn.

These facts in the graphG=V,E clearly imply that the number of iterations is at most mn., and thus the total running time is polynomial. To prove the next theorem about the approximation ratio, we will do something which is very common when analyzing local search algorithms. We will not reason directly about the solution which the algorithm outputs,S,T but will instead reason about an arbitrary local optimum. Since the algorithm outputs a local optimum.

This algorithm will take polynomial time for its operation.

And hence, Yes it is a polynomial-time algorithm.

Unlock Step-by-Step Solutions & Ace Your Exams!

  • Full Textbook Solutions

    Get detailed explanations and key concepts

  • Unlimited Al creation

    Al flashcards, explanations, exams and more...

  • Ads-free access

    To over 500 millions flashcards

  • Money-back guarantee

    We refund you if you fail your exam.

Over 30 million students worldwide already upgrade their learning with Vaia!

One App. One Place for Learning.

All the tools & learning materials you need for study success - in one app.

Get started for free

Most popular questions from this chapter

Local search for minimum spanning trees. Consider the set of all spanning trees (not just minimum ones) of a weighted, connected, undirected graphG=(V,E).

Recall from Section 5.1 that adding an edge to a spanning treeT creates an unique cycle, and subsequently removing any other edgee'e from this cycle gives back a different spanning treeT' . We will say that differ by a single edge swap (e,e')and that they are neighbors.

a) Show that it is possible to move from any spanning tree Tto any other spanning tree T' 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 ifT' 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

T=T0T1T2···Tk=T',

then cost(Ti+1)cost(Ti)foralli<k.

(c) Consider the following local search algorithm which is given as input an undirected graph G.

Let Tbe any spanning tree of G

while there is an edge-swap(e,e') which reduces cost(T):

TT+ee'returnT

Show that this procedure always returns a minimum spanning tree. At most how many iterations does it take ?

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

Given an undirected graphG=(V,E) in which each node hasdegreed , show how to efficiently find an independent set whose size is at least1d+1times that of the largest independent set.

In 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 either0or1 by flipping a coin

Suppose the input has m clauses, of which thejth haskj literals. Show that the expected number of clauses satisfied by this simple algorithm is

j=1m1-12k   m2

In other words, this is a 2-approximation in expectation! And if the clauses all contain literals, then this approximation factor improves to 1+1/2k1.

(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?)

In the MINIMUM STEINER TREE problem, the input consists of: a complete graph G=(V,E)with distances duvbetween all pairs of nodes; and a distinguished set of terminal nodesV'V.The goal is to find a minimum-cost tree that includes the vertices V'. This tree may or may not include nodes in V-V'

Suppose the distances in the input are a metric (recall the definition on page 292). Show that an efficient ratio-2approximation algorithm for MINIMUM STEINER TREE can be obtained by ignoring the nonterminal nodes and simply returning the minimum spanning tree onV'. (Hint: Recall our approximation algorithm for the TSP.)

See all solutions

Recommended explanations on Computer Science Textbooks

View all explanations

What do you think about this solution?

We value your feedback to improve our textbook solutions.

Study anywhere. Anytime. Across all devices.

Sign-up for free