slides

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
Download