HOME

TheInfoList



OR:

In the
parameterized complexity In computer science, parameterized complexity is a branch of computational complexity theory that focuses on classifying computational problems according to their inherent difficulty with respect to ''multiple'' parameters of the input or output. ...
of
algorithm In mathematics and computer science, an algorithm () is a finite sequence of rigorous instructions, typically used to solve a class of specific problems or to perform a computation. Algorithms are used as specifications for performing ...
s, the klam value of a parameterized algorithm is a number that bounds the parameter values for which the algorithm might reasonably be expected to be practical.. An algorithm with a higher klam value can be used for a wider range of parameter values than another algorithm with a lower klam value. The klam value was first defined by , and has since been used by other researchers in parameterized complexity both as a way of comparing different algorithms to each other and in order to set goals for future algorithmic improvements.


Definition

An algorithm is said to be fixed-parameter tractable if the number of elementary operations it performs has a bound of the form O(n^c)+f(k), where n is some measure of the input size (such as the number of vertices in a
graph Graph may refer to: Mathematics *Graph (discrete mathematics), a structure made of vertices and edges **Graph theory, the study of such graphs and their properties *Graph (topology), a topological space resembling a graph in the sense of discre ...
), k is a parameter describing the complexity of the input (such as the
treewidth In graph theory, the treewidth of an undirected graph is an integer number which specifies, informally, how far the graph is from being a tree. The smallest treewidth is 1; the graphs with treewidth 1 are exactly the trees and the forests. The gr ...
of the graph), c is a constant that does not depend on n or k, and f is a
computable function Computable functions are the basic objects of study in computability theory. Computable functions are the formalized analogue of the intuitive notion of algorithms, in the sense that a function is computable if there exists an algorithm that can d ...
. Given a time bound of this form, the klam value of the algorithm (or more properly of the time bound) is defined to be the largest value of k such that f(k) does not exceed "some reasonable absolute bound on the maximum number of steps of any computation". More precisely both and use the number 1020 as this bound, and this has been followed by later researchers. To prevent artificially improving the klam value of an algorithm by putting more of its complexity into the O(n^c) part of the time bound, also limit c to be at most three, valid for many known fixed-parameter tractable algorithms.


Examples

cites the example of
vertex cover In graph theory, a vertex cover (sometimes node cover) of a graph is a set of vertices that includes at least one endpoint of every edge of the graph. In computer science, the problem of finding a minimum vertex cover is a classical optimiza ...
, with its natural parameter (the number of vertices in the cover). At that time the best known parameterized time bound had f(k)=O(k^2 1.3248^k). Solving k^2 1.3248^k=10^ gives a klam value of approximately 129. However, the k^2 part of the time bound can be simplified out of it, giving a bound of the form O(1.3248^k) with both a larger constant factor hidden in the O-notation and a larger base of the exponent hidden in its approximate decimal value. For a simple exponential bound f(k)=c^ksuch as this one, one can solve directly k=20/\log_ c from which Niedermeier derives a klam value of approximately 165. Subsequent research has developed parameterized vertex cover algorithms with f(k)=O(1.2738^k) giving a klam value of approximately 190. That is, one can conclude from this analysis that vertex cover instances with cover size greater than 190 are out of reach of this algorithm, but instances whose cover size is sufficiently far below this limit are likely to be solvable. Another example of a problem in which the klam value has been explicitly used as a goal for future research is the maximum leaf spanning tree problem, in which the goal is to find a
spanning tree In the mathematical field of graph theory, a spanning tree ''T'' of an undirected graph ''G'' is a subgraph that is a tree which includes all of the vertices of ''G''. In general, a graph may have several spanning trees, but a graph that is no ...
of a graph with as many leaf nodes as possible (parameterized by the number of leaves). develop an algorithm for this problem which they compare using the klam value to previous work on the same problem: previous algorithms had klam values of 1 and 5, and theirs has a klam value of 16. However, they also suggest that it should be possible to provide improved algorithms for this problem with a klam value of at least 50. Although this remains open, several later papers have incrementally improved the klam value of this problem to 37..


References

{{reflist Parameterized complexity