1 / 50

# Parameterized Algorithms Randomized Techniques - PowerPoint PPT Presentation

Insert « Academic unit» on every page: 1 Go to the menu «Insert» 2 Choose: Date and time 3 Write the name of your faculty or department in the field «Footer» 4 Choose «Apply to all". Parameterized Algorithms Randomized Techniques. Bart M. P. Jansen. August 18th 2014, Będlewo.

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.

## PowerPoint Slideshow about 'Parameterized Algorithms Randomized Techniques' - autumn-koch

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

Insert«Academic unit» on every page:1 Go to the menu «Insert»2 Choose: Date and time3 Write the name of your faculty or department in the field «Footer»

4 Choose «Apply to all"

### Parameterized AlgorithmsRandomized Techniques

Bart M. P. Jansen

August 18th 2014, Będlewo

Randomizedcomputation

• For sometasks, finding a randomizedalgorithm is mucheasierthanfinding a deterministicone

• We consideralgorithmsthat have access to a stream of uniformly random bits

• So we do notconsiderrandomlygeneratedinputs

• The actions of the algorithmdepend on the values of the random bits

• Different runs of the algorithmmaygive different outcomes, for the same input

Monte Carlo algorithms

• A Monte Carloalgorithmwithfalsenegativesandsuccessprobability is an algorithm for a decision problem that

• given a no-instance, always returns no, and

• given a yes-instance, returns yeswith probability

• Since the algorithm is always correct on no–instances, but mayfail on yes-instances, it has one-sided error

• If is a positive constant, we canrepeat the algorithm a constantnumber of times

• ensurethat the probability of failure is smaller than the probabilitythat, cosmicradiationcauses a bit to flip in memory

• (Whichwouldinvalidate even a deterministicalgorithm)

• If is not a constant, we can also boost the success probability

Independent repetitionsincreasesuccessprobability

• Suppose we have a Monte Carlo algorithmwithone-sided error probability, which may depend on

• For example,

• If we repeat the algorithm times, the probability that all runs fail is at most

since

• Probability ≥ that the repeated algorithm is correct

• Using trials gives success probability

• For example,

Colorcoding

• Randomlyassigncolorsto the input structure

• Ifthere is a solutionand we are luckywith the coloring, every element of the solution has received a different color

• Thenfindanalgorithmtodetectsuchcolorfulsolutions

• Solutions of elementswithpairwise different colors

The odds of gettinglucky

• Lemma.

• Let be a set of size , and let have size

• Let be a coloring of the elements of , chosen uniformly at random

• Each element of is colored with one of colors, uniformly and independently at random

The probability that the elements of are colored with pairwise distinct colors is at least

• Proof.

• There are possible colorings

• In of them, all colors on are distinct

• We used

The Longest Path problem

Input: An undirected graph and an integer Parameter: Question: Is there a simple path on vertices in ?

• A solution is a -path

• The LongestPathproblem is a restrictedversion of the problem of findingpatterns in graphs

ColorcodingforLongestPath

• Color the vertices of randomly with colors

• We want todetect a colorful-pathifoneexists

• Usedynamicprogramming over subsets

• For everysubset of colorsand vertex , define

= trueiffthere is a colorfulpathwhosecolors are andthat has as anendpoint

• For everysubset of colorsand vertex , define

= trueiffthere is a colorfulpathwhosecolors are andthat has as anendpoint

• Colorful-pathif = trueforsome

,true

,false

,true

A recurrencetofill the table

• If is a singleton set, containing some color :

= true if and only if

• If:

if

false otherwise

• Fill the table in time

Randomized algorithmforLongestPath

• AlgorithmLongPath(Graph, integer )

• repeat times:

• Color the vertices of uniformly at random with colors

• Fill the DP table

• if such that = true then return yes

• return no

• By standard DP techniques we canconstruct the path as well

• For eachcell, store a backlink to the earliercellthatdetermineditsvalue

• Running time is is

• Bythe get-luckylemma, ifthere is a -path, itbecomescolorfulwithprobability

• If the coloringproduces a colorful-path, the DP finds it

• Bythe independent repetitionlemma, repetitions give constant success probability

• Theorem. There is a Monte Carlo algorithm for Longest Path with one-sided error that runs in time and has constant success probability

Discussion of colorcoding

• When doingdynamicprogramming, colorcodingeffectivelyallowsustoreduce the number of statesfrom

• keeping track of allverticesvisitedby the path, , to

• keeping track of allcolorsvisitedby the path,

• The techniqueextendstofindingsize-occurrences of other “thin” patterns in graphs

• A size-patterngraph of treewidthcanbe found in time , with constant probability

The Subgraph Isomorphism problem

Input: A host graph and pattern graph (undirected)Parameter: Question:Does have a subgraph isomorphic to ?

Does contain ?

• The traditional color coding technique gives FPT algorithms for Longest Path

• Even for Subgraph Isomorphism when the pattern graph has constant treewidth

• If the pattern graph is unrestricted, we expect that no FPT algorithm exists for Subgraph Isomorphism

• It generalizes the -Clique problem

• Canonical W[1]-complete problem used to establish parameterized intractability (more later)

• If the host graph (and therefore the pattern graph ) has constant degree, there is a nice randomized FPT algorithm

• Suppose is a host graph that contains a subgraph isomorphic to a connected -vertex pattern graph

• Color the edges of uniformly independently at random with colors red () and blue ()

• If all edges of are colored red, and all other edges incident to are colored blue, it is easy to identify

• The pattern occurs as a connected component of

• Isomorphism of two -vertex graphs in time

• Let be a -vertex subgraph of graph

• A 2-coloring of isolates if the following holds:

• All edges of are red

• All other edges incident to are blue

• Observation. If the maximum degree of is , the probability that a random 2-coloring of isolates a fixed -vertex subgraph is at least

• There are at most edges incident on

• Each such edge is colored correctly with probability

RandomizedalgorithmforSubgraphIsomorphism

• AlgorithmSubIso(Host graph, connectedpatterngraph)

• Let be the maximum degree of

• Let be the number of vertices in

• repeat times:

• Color the edges of uniformly at random with colors R, B

• foreach-vertex connected component of :

• if is isomorphicto, then return yes

• return no

• Easy toextend the algorithmtodisconnectedpatterns

• Theorem.There is a Monte Carlo algorithm for SubgraphIsomorphismwith one-sided error and constant success probability. For -vertex pattern graphs in a host graph of maximum degree , the running time is

The -Clustering problem

Input: A graph and an integer Parameter: Question:Is there a set of at most adjacencies such that consists of disjoint cliques?

• Such a graph is called a -cluster graph

• -Clustering looks for a set of (non-)edges, instead of vertices

• We solve the problem on general graphs

• By randomly coloring the input, we again hope to highlight a solution with good probability, making it easier to find

• We color vertices of the graph

• A set of adjacencies is properly colored by a coloring of the vertices if:

• For all pairs , the colors of and are different

• As before, two crucial ingredients:

• What is the probability that a random coloring has the desired property?

• How to exploit that property algorithmically?

• We assign colors to the vertices and hope to obtain a property for the (non-)edges in a solution

• This allows us to save on colors

• Lemma. If the vertices of a simple graph with edges are colored independently and uniformly at random with colors, then the probability that is properly colored is at least

• Corollary. If a -Clustering instance has a solution set of adjacencies, the probability that is properly colored by a random coloring with colors is at least

For constant success probability, repetitions suffice

• Suppose properly colors a solution of

• The graph is a -cluster graph

• For ,let be the vertices colored

• As is properly colored, no (non-)edge of has both ends in

• No changes are made to by the solution

• is an induced subgraph of a -cluster graph

• For all , the graph is a -cluster graph

• consists of cliques that are not broken by the solution

• Observation. The -coloring partitions into cliques that are unbroken by the solution

• For each of the cliques into which is partitioned, guess into which of the final clusters it belongs

• For each guess, compute the cost of this solution

• Count edges between subcliques in different clusters

• Count non-edges between subcliques in the same cluster

• Total of guesses, polynomial cost computation for each

• Running time is to detect a properly colored solution, if one exists

• Using dynamic programming (exercise), this can be improved to time

1

3

3

3

2

2

Randomizedalgorithmfor-Clustering

• Algorithm-Cluster(graph, integer )

• Define

• repeat times:

• Color the vertices of uniformly at random with colors

• if there is a properly colored solution of size then

• return yes

• return no

• Theorem. There is a Monte Carlo algorithm for -Clustering with one-sided error and constant success probability that runs in time

Why derandomize?

• Truly random bits are very hard to come by

• Usual approach is to track radioactive decay

• Standard pseudo-random generators might work

• When spending exponential time on an answer, we do not want to get it wrong

• Luckily, we can replace most applications of randomization by deterministic constructions

• Without significant increases in the running time

How to derandomize

• Different applications require different pseudorandom objects

• Main idea: instead of picking a random coloring , construct a family of functions

• Ensure that at least one function in has the property that we hope to achieve by the random choice

• Instead of independent repetitions of the Monte Carlo algorithm, run it once for every coloring in

• If the success probability of the random coloring is , we can often construct such a family of size

• Consider a -coloring of a universe

• A subset is split evenly by if the following holds:

• For every the sizes and differ by at most one

• All colors occur almost equally often within

• If a set of size is split evenly, then is colorful

• For , an -splitter is a family of functions from to such that:

• For every set of size , there is a function that splits evenly

• Theorem.For any one can construct an -splitter of size in time

Perfect hash families derandomizeLongest Path

• The special case of an -splitter is called an -perfect hash family

• Instead of trying random colorings in the Longest Path algorithm, try all colorings in a perfect hash family

• If is the vertex set of a -path, then so some function splits evenly

• Since , this causes to be colorful

• The DP then finds a colorful path

• Theorem.For any one can construct an -perfect hash family of size in time

• For an -universal set is a family of subsets of such that for any of size , all subsets of are contained in the family:

• Universal sets can be used to derandomize the random separation algorithm for Subgraph Isomorphism (exercise)

• Theorem.For any one can construct an -universal set of size in time

• For , an -coloring family is a family of functions from to with the following property:

• For every graph on the vertex set with at most edges, there is a function that properly colors

• Coloring families can be used to derandomize the chromatic coding algorithm for -Clustering

• Instead of trying random colorings, try all colorings in an -coloring family

• Theorem.For any one can construct an -coloring family of size in time

The Feedback Vertex Set problem

Input: A graph and an integer Parameter: Question: Is there a set of at most vertices in , such that each cycle contains a vertex of ?

ReductionrulesforFeedback Vertex Set

(R1) Ifthere is a loop at vertex , then delete anddecreasebyone

(R2) Ifthere is anedge of multiplicitylargerthan, thenreduceitsmultiplicityto

(R3) Ifthere is a vertex of degree at most , then delete

(R4) Ifthere is a vertex of degreetwo, then delete andaddanedgebetween’s neighbors

• If (R1-R4) cannot be applied anymore, then the minimum degree is at least

• Observation. If is transformed into , then:

• fvs of size in fvs of size in

• Any feedback vertex set in is a feedback vertex set in when combined with the vertices deleted by (R1)

How randomizationhelps

• We have seen a deterministicalgorithmwithruntime

• There is a simplerandomizedMonte Carlo algorithm

• In polynomial time, we canfind a size- solution withprobability at least, ifoneexists

• Repeatingthistimesgivesanalgorithmwith running time and constant successprobability

• Keyinsight is a simple procedure to select a vertex that is contained in a solution withconstant probability

Feedback vertex sets in graphs of min.deg.

• Lemma. Let be an -vertex multigraph with minimum degree at least 3. For every feedback vertex set of , more than half the edges of have at least one endpoint in .

• Proof. Consider the forest

• We prove that

• for any forest

• It suffices to prove

• Let be the edges with one end in and the other in

• Let , and be the vertices of with -degrees ,

• Every vertex of contributes to

• Every vertex of contributes to

in any forest

Monte Carlo algorithmforFeedback Vertex Set

• Theorem. There is a randomizedpolynomial-time algorithmthat, given a Feedback Vertex Setinstance,

• either reports a failure, or

• finds a feedback vertex set in of size at most .

• If has an fvs of size , it returns a solution with probability at least

Monte Carlo algorithmforFeedback Vertex Set

• Algorithm fvs(Graph , integer )

• Exhaustivelyapply (R1)-(R4) toobtain

• Let be the vertices with loops removed by (R1)

• if thenfailure

• if is a forest then return

• Uniformly at random, pick an edge of

• Uniformly at random, pick an endpoint of

• return fvs(

• The algorithm outputs a feedback vertex set or failure

• Claim: If has a size-fvs, then the algorithm finds a solution with probability at least

• Proof by induction on

• Assume has a size-feedback vertex set

• By safety of (R1)-(R4), ’ has a size-’ fvs

• We have

• Since loops are in anyfvs, we have

• If, thenso’ is a forest

• Algorithmoutputswhich is a valid solution

• If, we willuse the induction hypothesis

• Case :

• Probability that random has an endpoint in is

• Probability that is

• If , then has an fvs of size

• Then, by induction, with probability recursion gives a size-(fvs of

• Sois a size-fvsof

• Byreductionrules, output is an fvs of

• Size is at most

• Probability of success is

• Theorem.There is a Monte Carlo algorithm for Feedback Vertex Setwith one-sided error and constant success probability that runs in time

• This simple, randomizedalgorithm is fasterthan the deterministicalgorithmfrom the previouslecture

• The methodgeneralizesto-minor-free deletion problems: delete vertices from the graph to ensure the resulting graph contains no member from the fixed set as a minor

• Feedback Vertex Set is -minor-free deletion

• Several variations of color coding give efficient FPT algorithms

• The general recipe is as follows:

• Randomly color the input, such that if a solution exists, one is highlighted with probability

• Show that a highlighted solution can be found in a colored instance in time

• For most problems we obtained single-exponential algorithms

• For -Clustering we obtained a subexponential algorithm