ProbeTools is a probe set design package. This is a software package for designing oligonucleotide
probes for OFRG hybridization experiments. The general goal is to design a small collection of probes that will
collectively discriminate all, or almost all, clones within a specified population.
The input to the program is a collection of rRNA gene sequences, called the training set, selected by a user.
These sequences are assumed to be representative of the targeted population of clones. The program first extracts
a number of candidate probes that meet certain criteria specified by the user (length, GC content, etc.) These
candidate probes are further processed by a module that removes probes that are not likely to bind in a predictable
manner. Then, from among the remaining candidate probes, the program selects the final small collection of probes
(typically, between 30 and 50) that optimizes the resolution. More specifically, the goal of selecting the probe set
is modeled as a combinatorial optimization problem where we want to compute a set P of k probes, for a given k, that
distinguishes the maximum number of clones in the training set. (We say that two clones are distinguished by P, if
there is a probe in P that hybridizes with one clone but not the other.) This program was implemented following a heuristic
based on the simulated annealing algorithm. (J. Borneman, M. Chrobak, G.Della Vedova, A. Figueroa, and T. Jiang. 2001.
Probe selection algorithms with applications in the analysis of microbial communities. Bioinformatics 17(Suppl. 1):S39-S48).