Presentation is loading. Please wait.

Presentation is loading. Please wait.

Two Dimension Measures: A New Algorithimic Method for Solving NP-Hard Problems Yang Liu.

Similar presentations


Presentation on theme: "Two Dimension Measures: A New Algorithimic Method for Solving NP-Hard Problems Yang Liu."— Presentation transcript:

1 Two Dimension Measures: A New Algorithimic Method for Solving NP-Hard Problems Yang Liu

2 Outlines Why Exact Algorithms Why Fpt-algorithms Algorithmic techniques: branching search tree and two dimension braching search tree Previous works Future research

3 Why NP-Hard Problems Abundant aplications Methods of tackling NP-hard problems: 1. Exact algorithms. 2. parameterized algorithms 3. Approximation algorithms 4. Heuristics

4 Why Exact Algorithms Optimal Correct and meaningful for decision problems Subroutine for other methods Limitation of the improvements of processors

5 Practical Examples (1) The Rectlinear Steiner Tree problem Inputs of size up to 1000 Solved in 38 CPU hours.

6

7 Practical Examples (2) The TSP problem (http://www.tsp.gatech.edu/sweden/) German15,112 towns In 200122.6 cpu years Sweden24,978 Towns In 200472,5000 km Circuit33,810In 200566,048,945 units, 15.7 cpu years Circuit85,900In 2006136 cpu years

8 Outlines Why Exact Algorithms Why Fpt-algorithms Algorithmic technique: branching search tree and two dimensional braching search tree Previous works Proposed future research

9 Why FPT-algorithms Still hard to design practical exact algorithms in general An application may have a parameter k, small compared with input size n. This parameter can give a better bound on time complexity, like O(f(k)n c ).

10 Practical Fpt-algorithms (1) Type check: checking the compatibility of type declarations. Parameter k: the maximum nesting depth of the type declarations. Normally K<=6 Practical fpt-algorithm of time O(2 k n)

11 Practical Fpt-algorithms (2) Individual halotyping problem Paramters k 1 and k 2 K 1 <=n, but normally k 1 <=10 Usually k 2 <=19 Practical fpt-algorithm of complexity O(nk 2 2 k2 +mlogm+mk 1 )

12 Outlines Why Exact Algorithms Why Fpt-algorithms Algorithmic techniques: branching search tree and two dimension braching search tree Previous works Proposed future research

13 Algorithmic Techniques Kernelization, greedy localization, iterative compression, coloring coding, divide cand conquer, divide and coloring, branching search tree Dynamic programming, prunning the search tree, preprocess the data, local search, measure and conquer

14 Branching Search Tree m m2m2 m1m1 mpmp m’ m: measure f(m): number of subproblems (poly-time solvable)

15 Time Complexity of Branching Search Tree Complexity: O(c m poly(n))=O*(c m ). O*(c n ) refers to O(c n poly(n)).

16 Example: Exact Algorithm Finding Minimum Vertex Cover C Pick an edge xy, let measure m=#vertices m=n m 1 =n-1 m p =n-2 x in C x not in C y in C

17 Example: fpt-Algorithm Finding a vertex cover C of k vertices. Pick an edge xy, let measure m=#vertices needs to be in C m m 1 =m-1 m p =m-1 x in C x not in C y in C

18 Weakness of Branching Search Tree Only takes one measure Finding a feedback vertex set fvs of k vertices Choose a cycle and one vertex must be in fvs.

19 Two Dimensional Braching Search Tree Challenges: Finding two measures p,q how to bound f(p,q) Boundary conditions: new combinatorial properties Acheivements:  faster algorithms for some problems.

20 Outlines Why Exact Algorithms Why Fpt-algorithms Algorithmic technique: branching search tree and two dimensional braching search tree Previous works Proposed future research

21 3D Matching & 3-Set Packing a1a1 a2a2 anan b1b1 b2b2 bnbn c1c1 c2c2 cncn Symbols: a i, b i, c i a3a3 b3b3 c3c3.................. triples Set U of symbols, triple t= t1= and t2= conflicts if a i =b i for some i A matching: set of mutually non- conflicting triples. The maximum matching problem In the Karp’s list of NP-complete problems Generalization of graph matching

22 3D Matching & Packing Finding a matching of k triples ReferenceRandomDeterm Downey et al.O*((3k)!(3k) 9k+1 ) Chen et al.O*((5.7k) k ) KoutisO*(10.88 3k )>O*(32000 3k ) Fellows et al.>O*(126 3k ) KneisO*(2.52 3k )O*(16 3k ) Chen et al.O*(2.52 3k )O*(12.8 3k ) Our resultO*(2.32 3k )O*(2.77 3k )

23 3D Matching & Packing For the k-packing problem, most algorithms in the table above apply. Our algorithm has complexity O*(4.61 3k ) Remark: Koutis gave a randomized algorithm of time O*(2 3k ) for both k- matching and k-packing problems

24 Multiway Cut

25 terminals

26 Multiway Cut terminals separator

27 Multiway Cut Applications: distributed computing, VLSI, computer vision and more Finding a separator of k vertices An algorithm of time O*(4 k ) the previous best algorithm of time

28 Feedback Vertex Set (undirected graphs)

29 Feedback vertex set Remaining graph is a forest

30 Finding an FVS of k vertices (undirected graphs) ReferenceComplexity Bodlaender, FellowsO*(17(k4)!) Dowey and FellowsO*((2k+1) k ) Raman et al.O*(max{12 k,(4logk) k }) Kanj et al.O*((2logk+2loglogk+18) k ) Raman et al.O*((12logk/loglogk+6) k ) Guo et al.O*(37.7 k ) Dehne et al.O*(10.6 k ) Our resultsO*(5 k )

31 Feedback Vertex Set (directed graphs)

32 Feedback vertex set Remaining graph is a DAG

33 Finding an FVS of k vertices (directed graphs) Question: fpt or not? Had been an open problem for over 15 years We developed an algorithm of time O*(4 k k!) with our new approach

34 Finding an FVS of k vertices (undirected graphs) ReferenceComplexity Bodlaender, FellowsO*(17(k4)!) Dowey and FellowsO*((2k+1) k ) Raman et al.O*(max{12 k,(4logk) k }) Kanj et al.O*((2logk+2loglogk+18) k ) Raman et al.O*((12logk/loglogk+6) k ) Guo et al.O*(37.7 k ) Dehne et al.O*(10.6 k ) Our resultsO*(5 k )

35 Finding an FVS of k vertices (directed graphs) Question: fpt or not? Had been open for over 15 years We developed an algorithm of time O*(4 k k!) Accepted by STOC 2008, JACM

36 Max Leaf (undirected graphs) Finding a Spanning tree With at least k leaves Equivalent to the minimum connected dominating set problem Applications: design of communication networks, circuit layouts, and distributed systems.

37 Finding a spanning tree with k leaves ReferenceComplexity BodlaenderO*((17k 4 )!) Downey and FellowsO*((2k) 4k ) Fellows et al.O*(14.23 k ) Bonsma et al.O*(9.49 k ) Bonsma and ZickfeldO*(6.75 k ) Our resultO*(4 k )

38 Out-branching Out-branching: a rooted tree such that there is a unique path from the root to a leaf.

39 Finding an out-branching with k leaves More difficult Graph minor theory on digraphs is not mature enough to solve this problem Properties are harder to prove for digraphs than for undirected graphs Shown to be fpt only recently

40 Finding an out-branching with k leaves for SCC and DAG for SCC and for DAG for digraphs Our results: O*(4 k ) Remark: Kenis et al. developed similar algorithm.

41 Max Leaf Finding a spanning tree of maximum leaves Equal to minimum connected dominating set Applications: design of communication networks, circuit layouts, and distributed systems.

42 Max Leaf on Digraphs Out-branching: a rooted tree such that there is a unique path from the root to a leaf. Max Leaf: finding an out-branching with maximum leaves Approximable within

43 Finding an out-branching with k leaves More difficult Graph minor theory on digraphs is not mature enough to solve this problem Some property is harder to prove for digraphs than for undirected graphs Shown to be fpt 15 years later

44 Finding an out-branching with k leaves for SCC and DAG for SCC and for DAG for digraphs Our results: O*(4 k )

45 Outlines Why Exact Algorithms Why Fpt-algorithms Algorithmic technique: branching search tree and two dimensional braching search tree Previous works Proposed future research

46 Multiway Cut Can we improve the algorithm of O*(4 k )? Is there any faster or simpler randomized algorithm? Is there any algebraic algorithms for this problem? Is the multi-cut problem fpt?

47 Feedback Vertex Set Can we improve the current best algorithms? Is there randomized algorithm better than O*(4 k )? Is there a deterministic algorithm of O*(4 k ) for the problem on undirected graphs? Is there O*(c k ) for the problem on digraphs? Is there any algebraic algorithm?

48 Max Leaf Is there any better algorithm? Is there any better algorithm for the problem on undirected graphs? Is there any faster or simple randomized algorithm? Is there any algebraic algorithm?

49 Two Dimension Measures: Further Study Algorithms by this technique has complexity around O*(4 k ) Can we do better? How? Can we apply this or similar technique to design exact algorithms?

50 Conclusion Two dimension measures branching search tree is powerful in design fpt- algorithms. Need improvement on this technique to design algorithms faster than O*(4 k ). Generalize this technique to design exact algorithms.

51 Questions? Thank You!


Download ppt "Two Dimension Measures: A New Algorithimic Method for Solving NP-Hard Problems Yang Liu."

Similar presentations


Ads by Google