On the closest string and substring problems
The problem of finding a center string that is "close" to every given string arises in computational molecular biology and coding theory. This problem has two versions: the Closest String problem and the Closest Substring problem. Given a set of strings S = {s(1), s(2),..., s(n)}, each of length m, the Closest String problem is to find the smallest d and a string s of length m which is within Hamming distance d to each s(i) is an element of S. This problem comes from coding theory when we are looking for a code not too far away from a given set of codes. Closest Substring problem, with an additional input integer L, asks for the smallest d and a string s, of length L, which is within Hamming distance d away from a substring, of length L, of each s(i). This problem is much more elusive than the Closest String problem. The Closest Substring problem is formulated from applications in finding conserved regions, identifying genetic drug targets and generating genetic probes in molecular biology. Whether there are efficient approximation algorithms for both problems are major open questions in this area. We present two polynomial-time approximation algorithms with approximation ratio 1 + epsilon for any small epsilon to settle both questions.
closest string and substring theory algorithms computer applications polynomial-time approximation scheme