advertisement

Kernelization and the Larger Picture of Practical Algorithmics, in Contemporary Context Michael R. Fellows Charles Darwin University Australia WorKer, Vienna 2011 Two thoughts on parameterized complexity and theoretical computer science. (1) PC is as much about “workflow reform” as about “more fine-grained complexity analysis” (2) We want to create mathematical tools with Explanatory Predictive Engineering Three kinds of power To help us create useful algorithms. A classic example of explanatory power: TYPE CHECKING in ML Combinatorial optimization problems arise frequently in computational molecular biology …Except in rare cases, the problems are NP-hard, and the performance guarantees provided by polynomial-time approximation algorithms are far too pessimistic to be useful. Average-case analysis of algorithms is also of limited use because the spectrum of real-life problem instances is unlikely to be representable by a mathematically tractable probablility distribution. Thus it appears necessary to attack these problems using heuristic algorithms. Although we focus here on computational biology, heuristics are also likely to be the method of choice in many other application areas, for reasons similar to those that we have advanced in the case of biology. -Introduction to “Heuristic algorithms in computational molecular biology,” Richard M. Karp, JCSS 77 (2011) 122-128. Karp’s proposed: General heuristic for Implicit Hitting Set problems. Running example: DIRECTED FEEDBACK VERTEX SET In: Digraph D Out: A minimum cardinality set of vertices that “hit” all directed cycles. Explicit versus implicit Hitting Set Problems Explicit: List the things that need to be hit. Implicit: The list is implicit in the digraph description (made explicit, the list might be exponential in size). Assumed • Separation oracle – Find an unhit cycle if there is one • P-time algorithm for approx solution of the explicit hitting set problem • Algorithm for optimal solution of the explicit HS problem Γ : things to be hit (cycles) Н : a hitting set (vertices) Karp’s generic Hitting Set heuristic: Γ ← empty set Repeat: Using the approximation algorithm, construct a hitting set Н for Γ : Using the separation oracle, attempt to find a circuit that H does not hit; If a circuit is found then add that circuit to Γ else Н ← an optimal hitting set for Γ : Using the separation oracle, attempt to find a circuit Н that does not hit; If a circuit is found then add the circuit to Γ : else return Н and halt The intuition behind Karp’s general heuristic • Quickly identify a (hopefully) small set of important cycles to cover • If these are covered then “probably” all cycles are covered – reasonable to pay for optimal solution at this point • If this fails, then (win/win) a new important cycle has been discovered • Quickly identify a (hopefully) small set of important cycles to cover What to call this? “Strategic kernelization” in the space between “implicit” and “explicit” ? EXPLICIT DFVS I In: digraph D, and a list L of directed cycles in D Parameter: k Question: Is there a set of at most k vertices that hits every cycle on the list L? OOPS! While IMPLICIT DFVS I is FPT, Thm: EXPLICIT DFVS I is W[1] – hard. k vertex selection gadgets v k– 1 of these “V” selected Forward adjacency test R to B N(v) u B to R Backward adjacency test EXPLICIT DFVS II In: digraph D, list L of directed cycles in D, r Parameter: | L | = k Question: Is there a set of at most r vertices that hits all cycles in L? Thm: This problem is FPT Pf: (1) If r > k, then YES (2) r · 2 k dynamic programming Summary so Far • The design of “effective heuristics” is our inevitable primary mission for most problems, as theoretical computer scientists. • General strategic approaches to this task throw up many novel parameterized problems, largely unexplored, as subroutines. Plan “B” – Two Principles We do what we have been doing: • enriching the model when there is tractability • deconstructing the proofs when there is intractability and there is very very much to be done, for fun and profit. Parameterized Algorithmics Branch out! To opportunity! – Focus on the unvisited core problems – Find a mentor/collaborator/interpreter who is established in the area Report on NAG and examples Stefan and Fran in Australia Taking Our Own Advice II A Report on the workshop: Not About Graphs Darwin, Australia August 5—8 and 9-13 Workshop Theme The focus of the workshop is to investigate opportunities for expanding parameterized complexity into important unreached areas of algorithmic mathematical science (algebra, number theory, analysis, topology, geometry, game theory, robotics, vision, crypto, etc.) beyond areas where it already has a strong presence (graph theory, computational biology, AI, social choice, etc.). This may require new mathematical techniques. The workshop is also focused on identifying and promoting the key unsolved problems in these new directions. According to Papadimitriou, every year, several thousand scientific papers use the words “NP-complete” or “NP-hard”. Example: Computational Logistics Trains! Regular meeting: ATMOS NP-hard classic problem TRAIN MARSHALLING In: Partition Π of [n] Parameter: k Question: Is k enough? Ex. {1, 3}, {2, 4, 5} k=2 YES 123|45 · 12 345 Example: Computational Geometry Problem! Most of the classic problems are in P. Not a problem! “enrich the model” In: A set of colored points in the plane. Parameter: k Question: Are k lines sufficient to dissect into monochrome regions? Good news: NP-hard! Example: Computer Vision SEGMENTATION In: matrix of grey-scale values Parameter: k Question: Can the matrix be segmented into < k regions? 4 1 2 4 3 2 1 2 4 3 1 3 2 4 3 1 2 4 3 2 1 2 3 Question Should we do this again next year in Germany? Maybe…Gabor Erdelyi has offered to host. Proposed acronym: DECON Open Problem How does kernelization as we know it interact with real practical computing and heurisitcs? Thank you