Protein sequence and structure are fundamental objects in computational biology. The sequence comparison problem has been widely addressed, resulting in a spectrum of algorithms ranging from the sensitive ones such as profile-HMM to fast ones such as k-mer indexing, arguably culminated in BLAST, where a practical balance of sensitivity and speed is achieved. Current structural comparison methods achieve results generally satisfactory to biologists. However, fast and accurate data base searches, in spirit to BLAST, are not possible due to the nature of the structural comparison methodology. Similarity of protein structures is typically measured at the residue level via structural alignment, whose goal is to find a 3D transformation that brings into correspondence the largest number of atoms. The quality of a 3D superposition is typically measured by the number of matched C-alpha atoms and their RMSD. The exact solution for the pairwise structural alignment is computationally expensive [1]. Therefore, heuristic approaches have been developed to find a good solution efficiently (for a review see [3]). An alternative approach to assess protein structure similarity is based on global topological properties, for example, by means of writhe number [2] and Gauss integrals (GIs) [5], or by means of secondary structure footprints [6]. The advantage of this approach is that each structure is represented by a constant number of features. This concise representation tolerates small structural distortions. More importantly, unlike in the structural alignment approach, global topological features of proteins can be trivially compared in constant time, e.g. by the Euclidean distance of GI vectors [5]. This offers potential for fast database search. The global descriptor approach may suffer from drawbacks. First, it is unable to detect local similarities, i.e., matching of substructures. For example, it cannot detect the similarity between a single domain protein to one of the domains in a multidomain protein. Second, certain, relatively small, structural changes in a protein structure, e.g. loop movement or loop indels, may cause significant changes in a global descriptor. We propose a new scheme that unifies the above two approaches for structural comparison. Instead of using one global descriptor for the entire protein backbone we consider descriptors for all possible fragments [i, j]. The overall similarity between two structures can be defined as the sum of matching scores of a set of sequential, non-overlapping (or not-so-much overlapping) fragment pairs, normalized by their lengths. We designed a dynamic programming algorithm variant to calculate the optimal matching. The similarity between a pair of segments is measured in the same fashion as in [5]. We reduce the running time by exploiting the redundancy in the set of [i, j] descriptors. The running time of the dynamic programming method is Θ(n4) if all Θ(n2) fragments from each protein are considered. However, we notice that the number of fragments whose descriptors are sufficient
更多