Computational prediction of noncoding RNAs (ncRNAs) is an important task in the post-genomic era. One common approach is to utilize the profile information contained in alignment data rather than single sequences. However, this strategy involves the possibility that the quality of input alignments can influence the performance of prediction methods. Therefore, the evaluation of the robustness against alignment errors is necessary as well as the development of accurate prediction methods.base-pairing profile local alignment (BPLA) kernel which we previously developed for the prediction from single sequences. By utilizing the profile information of alignment data, the proposed kernel can achieve better accuracy than the original BPLA kernel. We show that Profile BPLA kernel outperforms the existing prediction methods which also utilize the profile information using the high-quality structural alignment dataset. In addition to these standard benchmark tests, we extensively evaluate the robustness of Profile BPLA kernel against errors in input alignments. We consider two different types of error: first, that all sequences in an alignment are actually ncRNAs but are aligned ignoring their secondary structures; second, that an alignment contains unrelated sequences which are not ncRNAs but still aligned. In both cases, the effects on the performance of Profile BPLA kernel are surprisingly small. Especially for the latter case, we demonstrate that Profile BPLA kernel is more robust compared to the existing prediction methods.We describe a new method, called Profile BPLA kernel, which predicts ncRNAs from alignment data in combination with support vector machines (SVMs). Profile BPLA kernel is an extension of Profile BPLA kernel provides a promising way for identifying ncRNAs from alignment data. It is more accurate than the existing prediction methods, and can keep its performance under the practical situations in which the quality of input alignments is not necessarily high. Reliable identification of noncoding RNA (ncRNA) genes is one of the major goals of recent computational biology ,2. In moet al. [et al. [et al. [To improve the reliability of predictions, many existing methods take an alignment as input rather than a single sequence . Alignmeet al.  and Grub [et al.  have dev [et al.  have dev [et al. . The metIn their studies, input alignments were assumed to be correct or at least not damaging to the accuracy of the prediction methods. However, it is not necessarily the case under the realistic conditions in genomic and transcriptomic screens. Since aligning genomic sequences is an error-prone process ,11, predWe can consider two different types of error in alignment data: first, that all sequences in an alignment are actually ncRNAs but are aligned ignoring their secondary structures (Type A); second, that an alignment contains unrelated sequences which are not ncRNAs but still aligned (Type B). In the remaining part of this paper, we use these definitions of the Type A and the Type B errors.The Type A errors are usually involved in genomic and transcriptomic screens since we practically use sequence-based aligners due to the high computational cost for the construction of structural alignment data. In accordance with this convention, the original papers of RNAz and Profile stem kernel tested their methods only on sequence-based alignment datasets ,8. On thThe amount of the type B errors has been intensively studied using the 17-way vertebrate alignment in the UCSC genome browser . One stubase-pairing profile local alignment (BPLA) kernel which we previously developed for the prediction from single sequences [In this paper, we describe a new method, called Profile BPLA kernel, which predicts ncRNAs from alignment data in combination with SVMs. Profile BPLA kernel is an extension of equences . By utilIn this section, we propose an accurate and robust method for the prediction of ncRNAs from alignment data. The proposed method, named Profile BPLA kernel, is an extension of BPLA kernel which we previously developed for the prediction from single sequences . Hence, The whole schemes of the original BPLA kernel and Profile BPLA kernel are summarized in Figure S1  algorithm [xy, and one particular local alignment in Πxy by πxy. We denote the alignment score of πxy by Score(πxy), which is calculated based on a scoring function Sxy for matching the i-th position in x and the j-th position in y. We design Sxy using a nucleotide substitution matrix s as its component. In addition, we use four parameters: α, β, g, and d.For an RNA sequence lgorithm  by Πxy, x, we denote the set of all possible secondary structures by Θx, and one particular secondary structure in Θx by θx. We represent a secondary structure by θx = {θx}i < j, where a binary variable θx is equal to one only when the i-th position and the j-th position in x form a base pair. In addition, for each position i in x, we define three kinds of binary variable: Lx(i) = Σj:j >i θx is equal to one only when a pair is formed with one of the downstream positions; Rx(i) = Σj:j <i θx is equal to one only when a pair is formed with one of the upstream positions; and Ux(i) = 1 - Lx(i) - Rx(i) is equal to one only when the position is unpaired. These binary variables are converted to the corresponding probabilities by taking the expectation over Θx. For θx, we obtain a base-pairing probability matrix, which consists of the probabilities Px that the i-th and the j-th positions form a base pair:For each sequence P(θx|x) is computed with the McCaskill algorithm [Lx(i), Rx(i), Ux(i)}, we obtain a base-pairing profile [PxL(i), PxR(i), PxU (i)} that the i-th position is paired with one of the downstream/upstream positions, or unpaired, respectively:where the probability distribution lgorithm  based on profile , which cX, we denote the i-th column by iX, and the k-th sequence by Xk. The nucleotide at the i-th position in Xk is denoted by For a multiple alignment A kernel function is a measure of similarity between a pair of objects and can be used as a prediction method in combination with an SVM classifier as long as Mercer's condition is satisfied . BPLA kelocal alignment (LA) kernel [x and y, is defined as follows:The basic idea of BPLA kernel is to perform a pairwise alignment and then to regard the alignment score as the measure of similarity. Instead of relying on one optimal alignment, we accumulate the scores of all possible local alignments in the SW algorithm using ) kernel . LA kernβ ≥ 0 is a concentration parameter. Given a scoring function Sxy for the alignment score Score(πxy), LA kernel (1) can be computed by the following algorithm:where Initialization:for i ∈ {0, ..., |x|} and j ∈ {0, ..., |y|} doM = X I = Y I = X T = Y T = 0   M = X I = Y I = X T = Y T = 0   end forIteration:for i ∈ {1, ..., |x|} and j ∈ {1, ..., |y|} doM = eβSxy + Y I + M)   X I = βgMe + βdIX e   Y I = βge + X I) + βdIY e   X T = M + X T   Y T = M + X T + Y T   end forTermination:K = 1 + X T + Y T + Mg and d are penalties for gap opening and gap extension, respectively. In practice, kernel values are normalized to range from 0 to 1:where the parameters Sxy, we employ the scoring function used in STRAL [x, we first compute a base-pairing probability matrix Px using the Vienna RNA package [i in x, we summarize the base-pairing probabilities into the base-pairing profile Sxy using the base-pairing profiles as follows:To incorporate secondary structure information into the match score in STRAL . For eac package  which isα ≥ 0 is a weight parameter for structural information, and a nucleotide substitution score s captures the similarity of primary sequences. We use the RIBOSUM 85-60 substitution matrix [s with the minor modification that its smallest eigenvalue is subtracted from each of its diagonal elements in order to satisfy Mercer's condition.where n matrix  as s kernel.Combining LA kernel (1) with the scoring function (2), we call this method Sstruct and Sseq in (2) should be extended to take into account the profile information contained in the alignment columns. In order to define the structural similarity Sstruct between two alignment columns, we need a base-pairing profile for each alignment column. This can be calculated if we define a base-pairing probability matrix for a multiple alignment. As shown in [X as follows:Now we extend BPLA kernel to the prediction from alignment data. Profile BPLA kernel for alignment data need to define the similarity between a pair of alignment data instead of a pair of single sequences. More specifically, the new algorithm needs to perform pairwise alignments between two alignment data, and calculate their alignment scores. This problem reduces to the definition of a scoring function corresponding to (2) for two alignment columns instead of two sequence positions. Both shown in ,24, the Xk' is the original sequence of Xk without gaps, r(i) is the index in Xk' corresponding to the i-th position in Xk, and N(X) is the number of aligned sequences in X.where Sseq can be extended by defining a substitution score s between two alignment columns. We use the averaged score of all possible substitutions between two columns, i Xand jY:The sequence similarity This is equivalent to the sum-of-pairs score, which is widely used in the problem of group-to-group alignment for primary sequences.Although the scoring function (2) in our method has been first proposed for STRAL, its theoretical aspect has been not fully clarified in the previous study . Here, wθx for x and θy for y, this function defines the score for matching the i-th position in x and the j-th position in y. The score can take a non-zero value in three different cases depending on the direction of base-pairing at the i-th position in θx and the j-th position in θy: it takes α when both of the two positions form a base pair with one of their downstream positions, respectively; it takes α when both of the two positions form a base pair with one of their upstream positions, respectively; and it takes s when both of the two positions are unpaired. Thus, the scoring function (3) evaluates the similarity based on the criteria of whether the two positions have the same state of base-pairing.Given a pair of secondary structures, θx and θy. However, we typically do not know one reliable secondary structure for each of x and y, and have the uncertainty about many suboptimal secondary structures. Therefore, we use the ensemble of all possible secondary structures by taking the expectation of (3) over Θx and Θy:In the equation (3), we need one fixed pair of secondary structures, The resulting scoring function (4) can be regarded as a variant of the STRAL's scoring function (2) without square-root operations. In practice, we find that (2) gives slightly better performance compared to (4), and thus use (2) for the component of our method.In this section, we examine the accuracy of Profile BPLA kernel in comparison to the state-of-the-art prediction methods based on SVMs. Furthermore, we present a systematic evaluation about the robustness of Profile BPLA kernel against the Type A and the Type B errors in input alignments. See Background for the definitions of the Type A and the Type B errors.We created a dataset which includes 990 positive samples from five ncRNA families: C/D snoRNAs, H/ACA snoRNAs, miRNA precursors, riboswitches, and tRNAs. These families were collected by combining 885 smaller families in the Rfam database  into lari.e., the ROC score. The ROC curve plots the true positive rate TP/(TP + FN) versus false positive rate FP/(TN + FP ) for different decision thresholds of a SVM classifier, where TP is the number of correctly predicted positives, FP is the number of incorrectly predicted positives, TN is the number of correctly predicted negatives, and FN is the number of incorrectly predicted negatives. We used four-fold cross-validation with the following modifications. The SVM classifier was trained with the same number of negative samples as the positives, and tested on a data partition which includes eight times as many negative samples as the positives. This problem setting is analogous to genomic and transcriptomic screens, where the vast majority of the search space does not contain functional ncRNA genes. Moreover, the four-fold cross validation is repeated four times with different splits of the dataset . The parameters α, β, g, and d in Profile BPLA kernel were adapted to the training data using the gradient-based optimization developed for the original BPLA kernel [The accuracy of the prediction methods was assessed by the area under the receiver operating characteristic (ROC) curve, A kernel . Note thWe first examined whether the proposed kernel could achieve better accuracy than the original BPLA kernel by utilizing the profile information of alignment data. For this purpose, the dataset of single sequences was created from the alignment dataset described above. For positive samples, we randomly chose one sequence from each alignment of ncRNAs. We generated negative samples which have the same dinucleotide contents as the positives by the standard shuffling procedure . Then, tTable Lx(i) = 0, Rx(i) = 0, Ux(i) = 1} in Profile BPLA kernel.Next, we compared Profile BPLA kernel with the existing prediction methods which also utilize the profile information. In the ideal condition, the profile information should be extracted from high-quality alignment data such that all sequences are actually ncRNAs and aligned taking into account their secondary structures. Therefore, we tested the accuracy of each prediction method using the high-quality structural alignment dataset constructed by RAF. The competitors were RNAz ,7 and PrTable The superiority of Profile BPLA kernel is inherited from the original BPLA kernel. In our previous paper , we haveIn addition to the standard benchmark tests, we extensively evaluated the robustness of Profile BPLA kernel against errors in input alignments. To discuss the Type A errors, we performed the experiment using the sequence-based alignment dataset constructed by CLUSTALW instead of the high-quality structural alignment dataset.By comparing the results in Table The robustness of Profile BPLA kernel can be attributed to its formulation. Profile BPLA kernel utilizes averaged base-pairing probability matrices to obtain the profile information of secondary structures. Averaged base-pairing probability matrices have been shown to be useful for the robust modeling of consensus secondary structures against the Type A errors . Our resOur experiment provided the detailed evaluation of the robustness for each particular ncRNA family. The recent study has reported that the accuracy of RNAz can be slightly improved by the use of structural alignment data . HoweverOur results also demonstrated that Profile BPLA kernel outperformed the existing prediction methods in the "realistic" condition considered in the previous studies -8. Profin ncRNA sequences and m unrelated sequences was included in the dataset of the fraction f satisfying (m - 1)/(n + m) < f ≤ m/(n + m). We trained the SVM classifiers with the original training data in the sequence-based alignment dataset, and tested them on the datasets with the different degrees of the simulated Type B errors. The performance was assessed by the ROC score for discriminating the erroneous alignments from the alignments consisting only of unrelated sequences.For the systematic evaluation of the robustness, we prepared a controlled series of alignment data with different degrees of the Type B errors. Input alignments in genomic and transcriptomic screens are typically constructed by sequence-based alignment tools. Hence, alignment data with the Type B errors are expected to be optimal at least under the criteria of sequence-based alignment tools, even though incorrect from the viewpoint of secondary structures. Based on this assumption, we generated sequences which can be well aligned to a given alignment in terms of primary sequences, but do not conserve its consensus secondary structure (see Methods for details). By introducing these "unrelated" sequences, we simulated the Type B errors in the sequence-based alignment dataset. For each positive sample in the test data, a series of erroneous alignments was prepared by gradually replacing ncRNA sequences with unrelated sequences. We aligned the unrelated sequences with the remaining ncRNA sequences using CLUSTALW. The resulting alignments were then used to make the equal-size datasets for the different fractions of unrelated sequences ranged from 0.0 to 1.0 at intervals of 0.1. An alignment comprising The experimental results are shown in Figure The observed differences in the robustness among the methods are deeply connected with the rationales behind their predictions. RNAz detects ncRNAs by utilizing the SCI which measures the conservation of secondary structures in an alignment. Therefore, the experimental results for RNAz can be interpreted as showing that unrelated sequences cause noise in a conserved secondary structure. Profile BPLA kernel do not measure the conservation of secondary structures. Instead, we directly calculate the similarity of secondary structures between input alignments and training data. Hence, Profile BPLA kernel can detect an alignment containing only a few ncRNA sequences if they are similar enough to the ncRNAs in training data, even though the alignment itself is not structurally conserved. Figure We emphasize that the Type B errors can not be corrected even if we realign the alignments using structural alignment tools as attempted in ,14. In cWe have described a new method for the prediction of ncRNAs from alignment data. Our method, named Profile BPLA kernel, is an extension of BPLA kernel which was originally developed for the prediction from single sequences . By utilThe evaluation of the robustness against errors in input alignments is a crucial step for the development of practical prediction methods. Even with prediction methods showing excellent accuracy for well-curated alignment datasets, the same performance typically cannot be expected in the practical situations which involve significant amounts of alignment errors. Previous studies did not fully address this issue. Through the present study, we extensively evaluated the effectiveness of Profile BPLA kernel under the realistic conditions in which the quality of input alignments is not necessarily high. We considered the two different types of error in alignment data: first, that all sequences in an alignment are actually ncRNAs but are aligned ignoring their secondary structures (Type A); second, that an alignment contains unrelated sequences which are not ncRNAs but still aligned (Type B). Our experiments presented the more detailed evaluation for the Type A errors than the previous study , and theWe conclude that Profile BPLA kernel provides a promising way for identifying ncRNAs genes from alignment data.snoRNA; CD-box;" in the description track. The seed alignments for these families were then split into single sequences. We performed a complete linkage clustering using their sequence identity as the similarity function. Clusters were determined using the similarity threshold of 60%, and we obtained one alignment from each cluster consisting of multiple sequences.We created the datasets for the benchmark tests using the Rfam database  version We generated unrelated sequences for simulating the Type B errors in alignment data. For each larger category in Table --simulate --tstv --precision 0.05 --rna" recommended in the original paper [hmmbuild -g", "hmmsearch -E 100000", and "cmsearch -g -T -10000 --toponly --no-qdb --fil-no-hmm --fil-no-qdb". Basically, these options were set because we needed global alignments rather than local alignments for the evaluation of the Type B errors, and wanted to calculate the exact scores for profile HMMs and CMs without several heuristics implemented in the programs.We used the most recent version of each software, and if not specified, executed it with the default options. We used RNAz ,7 versioal paper . For theal paper  includedal paper  version al paper  version http://bpla-kernel.dna.bio.keio.ac.jp/ under the GNU general public license. It takes RNA sequences or multiple alignments, and calculates a kernel matrix, which can be used as an input for a popular SVM tool called LIBSVM [Our implementation of Profile BPLA kernel  is freely available at d LIBSVM . Furtherd LIBSVM .The authors declare that they have no competing interests.Y Saito extended the code, performed the experiments and drafted the manuscript. KS developed the algorithm and wrote the original code. Y Sakakibara conceived of the study, and participated in its design and coordination. All authors have read and approved the final manuscript.Figure S1. Overview of the original BPLA kernel and Profile BPLA kernel. The whole schemes of our method were summarized using a pseudo-code in PDF format.Click here for file


Accurate sequence alignments are essential for homology searches and for building three-dimensional structural models of proteins. Since structure is better conserved than sequence, structure alignments have been used to guide sequence alignments and are commonly used as the gold standard for sequence alignment evaluation. Nonetheless, as far as we know, there is no report of a systematic evaluation of pairwise structure alignment programs in terms of the sequence alignment accuracy.α positions of the two structures increases. It varies significantly across CDD superfamilies whether shift error is allowed or not. Also, alignments with different shift errors occur between proteins within the same CDD superfamily, leading to inconsistent alignments between superfamily members. In general, residue pairs that are more than 3.0 Å apart in the reference alignment are heavily (>= 25% on average) misaligned in the test alignments. In addition, each method shows a different pattern of relative weaknesses for different SCOP classes. CE gives relatively poor results for β-sheet-containing structures , DaliLite for "others" class where all but the major four classes are combined, and LOCK2 and VAST for all-β and "others" classes.In this study, we evaluate CE, DaliLite, FAST, LOCK2, MATRAS, SHEBA and VAST in terms of the accuracy of the sequence alignments they produce, using sequence alignments from NCBI's human-curated Conserved Domain Database (CDD) as the standard of truth. We find that 4 to 9% of the residues on average are either not aligned or aligned with more than 8 residues of shift error and that an additional 6 to 14% of residues on average are misaligned by 1–8 residues, depending on the program and the data set used. The fraction of correctly aligned residues generally decreases as the sequence similarity decreases or as the RMSD between the CWhen the sequence similarity is low, structure-based methods produce better sequence alignments than by using sequence similarities alone. However, current structure-based methods still mis-align 11–19% of the conserved core residues when compared to the human-curated CDD alignments. The alignment quality of each program depends on the protein structural type and similarity, with DaliLite showing the most agreement with CDD on average. Accurate sequence alignments for homologous proteins are essential for constructing accurate motifs and profiles, which are used in motif- or profile-based protein function search models -3 and inMany pairwise structure alignment programs have been developed, but their performance has often been measured by how well the programs reproduce an expert-curated structure classification, such as SCOP or CATH ,8. It haThere are a number of sequence alignment databases that are augmented by structural alignments, including CAMPASS, HOMSTRAZhu and Weng used HOMIn this study, we evaluate the accuracy of structure-based sequence alignments produced by seven pairwise structure alignment programs, using the human-curated sequence alignments from NCBI's CDD  as the sWe prepared two reference alignment sets from CDD database as described in the Methods section: the root node set and the terminal node set. Figure fcar) as a measure of alignment quality. This measure is defined as the ratio of the number of residues that are aligned correctly, within a specified shift error, to the total number of aligned residues in the reference alignment (see Methods section for details). Since there is a large variation in the number of alignments in the CD nodes, , we use the node-wide average of fcar, which we denote as Fcar. In order to compare the performance of different structure-alignment programs, we take the average of Fcar (double average of fcar) over all nodes within each node set.We use "correctly" aligned fraction of residues  and an additional 4% to 9% of the residues are either not aligned or aligned with shift error of more than 8 residues. The best performance was achieved by DaliLite, whether shift error was allowed or not. CE was the most dependent on allowed shift error; it ranked the lowest when shift error was not allowed but the second best, after only DaliLite, if a shift error of up to 4 was allowed.In contrast to the terminal node set, the Fcar value changes noticeably between shift error of 0 and 4 but that it remains essentially unchanged after 4. For accurate profile construction, one cannot tolerate a shift error of any magnitude. On the other hand, for the purpose of recognizing similar structures in the database, precise accuracy of the alignment is of less concern. Therefore, we generally focus on fcar values with shift errors of either 0 or up to 8 in the following analysis of the results of this study.Figure fcar(8) values between 0.8 and 1.0 with a peak at 0.95. Even for the worst performer, only about 4% of the alignments are nearly complete failures  and Fcar(8) values in different sequence similarity ranges for different methods. As expected, both measures of alignment accuracy fall as the sequence similarity decreases for most methods. Different methods perform similarly well when the sequence similarity is high but their differences become more apparent at the low sequence similarity ranges. DaliLite gives the best average Fcar values. At the low sequence similarity ranges (below 30% identity), CE gives the worst average Fcar(0) values, but the second best average Fcar(8). We have included in Figure It is reasonable to expect that the alignment accuracy depends on the degree of similarity of the two structures compared. Since proteins with high sequence similarity tend to be structurally similar, the alignment accuracy is expected to depend also on the sequence similarity. Figure car values on structural similarity is shown in Figure α atoms of the residues aligned and superposed according to the reference alignment. As expected, average Fcar decreases as RMSD increases and Fcar(0) decreases more sharply than Fcar(8). Even the best performing method correctly aligns only about 80% of the residues without shift error, on average, as the RMSD approaches 3 Å, while the same method correctly aligns as much as 95% of the residues at this RMSD range if shift error is allowed.The dependence of the average Fα distance between aligned residue pairs in the reference alignment  and Fcar(8) values over the CDD superfamilies for each method. DaliLite has the narrowest distribution of Fcar(0) values with the highest mean and median while CE has the widest distribution with the lowest mean and median. All methods give Fcar(0) values less than 0.5 for a number of superfamilies and completely fail for at least one superfamily. The distribution for Fcar(8) is much tighter in comparison.The box plots in Figure car value raises the possibility of systematic deviation of the result from human curation for some superfamilies. In order to identify such superfamilies, averages of Fcar values were calculated over all methods for each superfamily. Figure car(0) and Fcar(8) values for superfamilies sorted in the order of increasing Fcar(0) value. The distribution of the method-averaged Fcar(0) values over the superfamilies follows exponential decay except for five superfamilies with the lowest method-averaged Fcar(0) values  values for these five superfamilies  value increases, although there are a couple of exceptions, as indicated by the red inverted triangles. None of the 5 superfamilies identified above has an exceptional RMSD value. This indicates that there is no gross error in the reference alignments for these superfamilies.Included in Figure β-barrel structures. Two such barrels can be aligned in many different ways if sequence information is not used. For the four alignments in cd00651, all the methods produced similar alignments, where most of the residues were shifted by 2 residues in β-strands and/or by 4 residues in α-helices from the CDD alignments. Similarly shifted alignments were observed in up to 20% of the alignments in cd02688 .Some members of these superfamilies were visually examined. The poorest results were obtained for the cd01345 superfamily. This superfamily consists of the outer membrane porins, which are large One notable feature is that CE produces more one-residue shifted alignments than other methods for 4 of the 5 superfamilies  compared to fcar(8) implies that there will be correspondingly large number of inconsistencies among the alignments of the superfamily members. For the largest superfamily, cd00096, all methods produced 5%  to 20% (CE) of alignments wherein all the residues are shifted. Some of these shifted alignments are as good as the reference alignments in terms of the RMSD and the number of aligned residue pairs, but are clearly wrong because the conserved cysteine residues that form the disulfide bond are not correctly aligned , DaliLite for "others" class, and LOCK2 and VAST for all-β and "others" classes. FAST, MATRAS, and SHEBA do not show such significant weakness in any particular class. Interestingly, secondary-structure-independent methods such as CE, FAST and SHEBA show good performance for the "others" class. Inclusion of the five outlier superfamilies gives substantially similar results  except that the average Fcar is lower for the "others" class for all methods because of the cd01345 superfamily in this class.Each method shows a different pattern of relative weaknesses for different SCOP classes Figure . CE giveA significant observation in this study is that DaliLite produces the most accurate structure-based sequence alignment, while CE is clearly not as good when shift error is not allowed Figure . This reβ-containing structures but performs well when some shift error is allowed, which makes it more suitable for homology detection and structure classification tasks. CE, DaliLite, and MATRAS produce long alignments , and HOMSTRAD as the gold standard[Such differences among the methods were not observed with the terminal node set Figure . FAST wa standard. The repfcar(0) and fcar(8) values almost exclusively as the measures of accuracy of alignments. These are the fraction of residues that are correctly aligned within the specified alignment shift error. As mentioned above, fcar(0) values are the suitable measures when accurate alignment is essential as in building profiles. On the other hand, for the purposes of finding structurally similar proteins and for the structure classification, fcar(8) may be a better measure to use. Measures such as fcar(8) is probably preferable over a quantity that measures how well the program reproduces an existing structure classification dataset such as SCOP or CATH; the latter test brings in a set of issues, such as the human classification versus machine comparison and the effect of clustering [[We used stering [ and manufcar measures can be used only when one has a reliable set of alignments that can be considered to be true. We used the NCBI's CDD alignments for this purpose. When such standard is not available, one has to use some absolute measure of the goodness of the alignments. Authors of SHEBA, for example, which include one of us (BL), used the number of residue pairs aligned within a given distance as the measure of goodness. Kolodny et al. [The y et al.  define fThere are advantages to using the alignments from CDD as the reference dataset since they are human-curated and include sequences of both high and low sequence similarities. Although VAST alignment results are consulted by the NCBI curators of CDD, there does not seem to be a VAST-specific bias since VAST does not perform particularly well among the tested methods Figure .An obvious drawback is that CDD gives alignments of only the conserved core region from multiple alignments. A pairwise alignment will generally align more residues outside of the conserved core, but the accuracy of these alignments cannot be assessed using this reference set of alignments. Our assumptions are that any good alignment program should do well for the conserved core residues and that a program that aligns the conserved core residues well will also align the non-core residues better than other programs.Although we investigated only the conserved core regions of the alignments, it is clear that all structure alignment programs often produce alignments with all or part of this core region of the structures misaligned s for all test alignments, except the five superfamilies mentioned above, using the CDD alignments as the reference alignment (x-axis) and the DaliLite alignment as the reference alignments (y-axis). If the CDD and DaliLite alignments were the same, all points would fall on the diagonal line in the figure. Since CDD aligns only the core region while other methods align non-core residues also, the fcar(0) values are expected to be larger when the CDD is used as the reference than when DaliLite is used. Figure Figure A related possibility is that there are equally good alternate alignments for many of the structure pairs, as was pointed out by many authors ,5,10-12.A third possibility is of course the imperfection of the pair-wise structure alignment programs. The fact that different programs behave differently for the same set of data indicates that they are not yet perfect. We have observed that different programs totally fail for different sets of protein pairs. We have observed many instances wherein all or part of the structure is shifted by 2 or 4 residues compared to the reference alignment. In the example shown in Figure The accuracy of the sequence alignments produced by 7 commonly used structure alignment programs was evaluated using the sequence alignments from NCBI's human-curated Conserved Domain database as the standard of truth and the "correctly" aligned fraction of residues as the alignment quality measure. These programs mis-align 11–19% of the conserved core residues on average for structure pairs in the same CDD root node but not in the same child node. DaliLite gave the best results among the programs tested. The alignment quality varied depending on the program used, on the protein structural type (SCOP Classes), and on the degree of sequence and structural similarity.cddalignview from the NCBI c++ toolkit, extracted multiple sequence alignments from their ".acd" files. This subset includes 220 singletons, 135 root nodes, 367 terminal nodes and 106 internal nodes. Total 21,140 pairwise alignments were prepared from these multiple alignments. Each sequence in the alignments included all the unaligned residues at both termini, since -lefttails and -righttails options were used with cddalignview.Since CDD includes hundreds of families imported directly from outside sources, such as Pfam, COGs and SMART, we collected only the expert-curated CD (Conserved Domain) families, whose names always begin with "cd" . There wCDD uses curated domains based on MMDB -32. For We used only the root and terminal node sets. In order to select alignments specific to the root node set, the alignments were excluded from the root node set if their domain pair was also included in the internal or terminal node set. The pairs with 80% or more sequence identity  were also removed from both the root and the terminal node sets. If a structure in the aligned pair did not contain the side chains or was derived by NMR, the pair was also eliminated. The final reference alignment sets consisted of 2,199 alignment pairs for the terminal node set and 4,017 pairs for the root node set , DaliLitEach program was run with its default setting. CE needs SEQRES sequence to recognize the residues as they are in the PDB file. Since such information is not included in PDB-style ASTRAL domain files, the three-letter symbols were derived from the ATOM records in the PDB-style files. When the secondary structure information is explicitly required, DSSP was usedA test alignment was generated for each reference alignment by running the structure alignment program on the two ASTRAL domains assigned to the reference alignment. The test alignment generated then need to be compared to the reference alignment for quality assessment. However, the protein sequence in the test alignment is often not identical to that in the reference alignment. For example, residues missing in the crystal structure do not appear in the test alignment. Some non-standard amino acids are simply removed (FAST) or marked with the extended amino acid symbols (LOCK2) – B, Z or X. Also, CE removes unaligned N-terminal and C-terminal residues. These and other sequence related issues involved in comparing different sequence alignments have been addressed before . In thisWe used the C++ class library included in the Lobster package to handle sequence alignments . Two seqδ, is defined as the difference in the serial number of the two residues of sequence B that are aligned to R in the reference and test alignments  be the number of aligned residues in both sequences with shift error up to δ. We define the fraction of "correctly" aligned residues, fcar(δ), and the relative alignment length, l, as fcar(δ = 0) is the same as fD, which Sauder et al. [For each structure pair, let r et al.  called tr et al. ,41.Combinatorial Extension; DaliLite, standalone version of DALI (Distance mAtrix ALIgnment); DSSP, Definition of Secondary Structure of Proteins given a set of 3D coordinates; FAST, Recursive acronym for FAST Alignment and Search Tool; FASTA3, DNA and Protein sequence alignment software package; LOCK2, Improvements over LOCK ; MATRAS, MArkovian TRAnsition of protein Structure; SHEBA, Structural Homology by Environment-Based Alignment; SSEARCH, Smith-Waterman search; VAST, Vector Alignment Search Tool.CE, Benchmark Alignment dataBase; CATH, Hierarchical classification of protein domain structures, which clusters proteins at four major levels, Class (C), Architecture (A), Topology (T) and Homologous superfamily (H); CAMPASS, CAMbridge database of Protein Alignments organised as Structural Superfamilies; COGs, Clusters of Orthologous Groups of proteins; DBAli, DataBase of structure Alignments; HOMSTRAD, HOMologous STRucture Alignment Database; MMDB, Molecular Modelling DataBase; OXBench, benchmark for evaluation of protein multiple sequence alignment accuracy; PALI, database of Phylogeny and ALIgnment of homologous protein structures; PASS2, Protein Alignments organised as Structural Superfamilies (version 2); Pfam, multiple sequence alignments and HMM-profiles of protein domains; PDB, Protein Data Bank; PREFAB, Protein REFerence Alignment Benchmark; S4, Structure-based Sequence alignments of SCOP Superfamilies; SABmark, Sequence Alignment Benchmark; SCOP, Structural Classification of Proteins; SMART, Simple Modular Architecture Research Tool; SUPFAM, database of potential protein SUPerFAMily relationships.ASTRAL, compendium for protein structure and sequence analysis; BaliBase, Gapped SAS; SAS, Structural Alignment Score.GSAS, α distances between aligned pairs after structural superposition; NCBI, National Center for Biotechnology Information; CD, Conserved Domain in CDD; CDD, NCBI's Conserved Domain Database.RMSD, Root-mean-square of CThe author(s) declares that there are no competing interests.BL generated the original idea, CK executed the research, and both CK and BL wrote the paper. Both authors read and approved the final manuscript.The results for the terminal node set and SCOP class dependency including outlier superfamilies. The A, B, C and D are the counterparts of Figures Click here for fileThe number of times when a method was the best or in the best class or when it failed. This is complementary to Figure Click here for fileRoot node data set. The sequence alignments used in this study, including those generated by different methods and derived from CDD.Click here for file


Proteins have evolved subject to energetic selection pressure for stability and flexibility. Structural similarity between proteins that have gone through conformational changes can be captured effectively if flexibility is considered. Topologically unrelated proteins that preserve secondary structure packing interactions can be detected if both flexibility and Sequential permutations are considered. We propose the FlexSnap algorithm for flexible non-topological protein structural alignment.rmsd.The effectiveness of FlexSnap is demonstrated by measuring the agreement of its alignments with manually curated non-sequential structural alignments. FlexSnap showed competitive results against state-of-the-art algorithms, like DALI, SARF2, MultiProt, FlexProt, and FATCAT. Moreover on the DynDom dataset, FlexSnap reported longer alignments with smaller rmsd.We have introduced FlexSnap, a greedy chaining algorithm that reports both sequential and non-sequential alignments and allows twists (hinges). We assessed the quality of the FlexSnap alignments by measuring its agreements with manually curated non-sequential alignments. On the FlexProt dataset, FlexSnap was competitive to state-of-the-art flexible alignment methods. Moreover, we demonstrated the benefits of introducing hinges by showing significant improvements in the alignments reported by FlexSnap for the structure pairs for which rigid alignment methods reported alignments with either low coverage or large http://www.cs.rpi.edu/~zaki/software/flexsnap.An implementation of the FlexSnap algorithm will be made available online at  The wide spectrum of functions performed by proteins are enabled by their intrinsic flexibility . It is ksequential flexible structural alignment because both methods employ sequential chaining techniques. The complexity of protein structural alignment depends on how the similarity is assessed. Kolodny and Linial ,,S, where optimal , and FAT optimal , seek to optimal . Two com optimal , thus sermsd), and hinges. A third method, which can handle flexible alignments, is the HingeProt [The two main flexible alignment methods, FlexProt  and FATCingeProt  method. ingeProt  method. ingeProt , has a sFlexible non-Sequential protein alignment). The algorithm assembles the alignment from the set of AFPs and allows non-sequential alignments and hinges. We demonstrate the effectiveness of FlexSnap by evaluating its alignments' agreement with manually curated non-sequential alignments. Moreover, FlexSnap shows competitive results on the FlexProt dataset when compared to the main flexible alignment methods, FlexProt and FATCAT.To address the limitations of exisiting algorithms we propose FlexSnap, a greedy algorithm for flexible sequential and non-sequential protein structural alignment  represents the 3D coordinates of the α Catom of the i-th residue in protein A. The first step in FlexSnap is to generate a list of aligned fragment pairs (AFPs):Let i, j, l), is a fragment that starts at the i-th residue in A and j-th residue in B and it has a length of l residues. An AFP is formally represented as a set of l equivalenced pairs between the two proteins, and given as:Each AFP,  indicates that the ith residue of protein A is paired with the jth residue of protein B, and l is AFP's length. Each AFP must satisfy a user-defined similarity constraint. In FlexSnap, we employ the root mean square deviation as the similarity measure, i.e., rmsd ≤ ε. Moreover, we require that the length of the AFP be at least L, i.e., 3 ≤ L ≤ l. Furthermore, we define k along the backbone of protein B. For example, for a triplet AFPk =  and protein A, i and i + l - 1.where (O(n3). The set of all AFPs can be obtained by iterating over all the triplets ,The number of possible AFPs can be as large as rmsd ≤ ε. The rmsd of a fragment of length l can be obtained in O(l) [i, j, l) to obtain the set of all the AFPs would have an O(n4) time complexity. However, by observing that the rmsd of the AFP  can be computed incrementally from the rmsd of AFP  in constant time, the set of aligned fragment pairs (AFPs) can be obtained in O(n3) time complexity [and for each triplet checking if the  in O(l) . A naivemplexity .rmsd is to simplify the rmsd formula. Given two sets, A and B, of N points each, the root mean square deviation (rmsd) is calculated as [The main idea to incrementally compute the lated as :A' and B' denote the points after recentering, i.e., di's are the singular values of C = A'B'T, which is a 3 × 3 covariance matrix given as:where C is negative, then d3 = -1 * d3. Equation (1) can be simplified as:In rare cases when the determinant of rmsd for N + 1 points requires constant time if we have all the terms evaluated for the first N points. Therefore computing the rmsd for AFP for all values of l's (for a given i and j ) requires only O(n) time. Thus, the total time complexity for the seeds extraction step is O(n3) ...It is clear that all the terms used in equation (3) can be updated in constant time, and thus computing the P, obtained in the AFPs extraction step, we are interested in finding a subset of AFPs, R ⊆ P, such that all the AFPs in R are mutually non-overlapping and the score of the selected AFPs in R is as large as possible. At one hand, we want to get as large an alignment as possible, while on the other hand, we want to minimize the number of hinges and gaps. Therefore, our goal is to optimize a score that rewards long alignments with small rmsd, and penalizes the introduction of hinges and gaps.The second step in FlexSnap is to construct the alignment by selecting a subset of the AFPs. Given a set of AFPs, n × m matrix S, where n and m are the sizes of proteins A and B, respectively . Generally speaking, we say that two AFPs, Pi and Pj, can be chained if they do not overlap, i.e., Pi ≺ Pj or Pj ≺ Pi As depicted in Figure P7 and P8 can be chained to P1.The set of AFPs can be thought of as runs in an s, such that Pi precedes Pj (written as Pi ≺s Pj) if Pi appears strictly in the upper left quadrant with respect to Pj, i.e. Pi and Pj can be sequentially chained together if Pi ≺s Pj or Pj ≺s Pi. In Figure P7 and P2 can be sequentially chained to P1. An AFP, Pi, can be chained to an alignment R, denoted as (R → Pi), if it does not overlap with any AFP in R. In Figure P7, P4, and P5 can be sequentially chained to R which consists of AFPs {P1, P2, P3}; and both P6 and P8 can be non-sequentially chained to R. Next, we shall introduce our solution for the general flexible chaining problem.For sequential chaining, we define a sequential precedence relation, ≺R ⊆ P, such that all the AFPs in R are mutually consistent and non-overlapping. The problem of finding the highest scoring subset of AFPs is essentially the same as finding the maximum weighted clique in a graph G =  where the set of vertices V represent the set of AFPs, each vertex vi has a weight equal to the score of the AFP, w(vi) = S(Pi), where the score of an AFP Pi, S(Pi), could be its length or some other combination of length and rmsd. There is an edge  ∈ E if the AFPs Pi and Pj do not overlap and are consistent .The goal of chaining is to find the highest scoring subset of AFPs, i.e., R, we add to it the AFP that contributes most. We keep growing the alignment until no more AFPs can be added. The contribution of an AFP to the alignment is scored by how consistent the AFP is with the alignment and how good the AFP is. When adding an AFP to an alignment, we reward longer AFPs with smaller rmsd, and we penalize for gaps, inconsistency, and hinges. The penalty takes into consideration: 1) the number of gaps introduced; 2) the increase in rmsd when combining two or more AFPs; 3) the introduction of new hinges.The problem of finding the maximum weighted clique in a graph is computationally expensive; it is NP-hard . Thus, wR, with P4, P5, P6, P7, or P8 are computed and the AFP with the best score is added to the alignment. When measuring the score of adding an AFP to the alignment, we actually measure the score of adding the AFP to the last rigid region, and not just to the last fragment, in the alignment. In Figure P4 to R is the score of adding P4 to the region composed of P2 and P3. Since P2 and P3 together form a rigid sub-alignment (as we can see there is no hinge between them). When adding P7 to R, the score of adding P7 to the region composed only of P1 is computed.As depicted in Figure K times starting from the K highest scoring non-overlapping AFPs and we report the alignment with the best score.Figure R, the next AFP to chain to the alignment is the one that maximizes the following scoring function:Next, we will discuss how we extend a partial alignment with the next best AFP. More specifically, given an alignment R → Pi indicates that Pi does not overlap with R, and S is the score of chaining Pi to R. The score, S, is a combination of the weight of the AFP, W(Pi), and the penalty of extending R with Pi, C(R → Pi). The score is defined as follows:where C(R → Pi) is the penalty incurred when connecting Pi to R, and W(Pi) is the score of the AFP itself. The scoring function rewards longer AFPs with small rmsd and penalize gaps and hinges. If the addition of an AFP Pi to the alignment results in a large rmsd, then we introduce a hinge only if W(Pi) is large enough to compensate for the penalty incurred. A similar approach for penalizing gaps and hinges was used in the FATCAT method [Pi to R is defined as follows:where T method . Though Mg is the penalty for a gap, Mr is the maximum penalty for a hinge, and rmsd of connecting Pi to the last rigid region in R. If Dc, we introduce a hinge and the penalty is maximum; if not, the penalty is proportional to how far the rmsd value is from ε (maximum rmsd for an AFP). Moreover, we allow only a maximum number of H hinges. The score for an AFP is a function of its length and rmsd. The score is the length of the AFP, L(Pi), plus a contribution of the rmsd of the AFP, rmsd(Pi), to the score, and is given as:where M could be close to n3, but in practice it is much less, i.e., M ≤ n2. The complexity of the algorithm is Mlog(M) + k * M * n, where k is the number of AFPs in the final solution and n is the size of the larger protein.The complexity of the chaining algorithm depends on the number of AFPs, M, that the two structures have. In the worst case, Pi, is defined in terms of the score of Pj's and the connection cost of Pi with these Pj's such that Pj precedes Pi (Pj ≺s Pi). More specifically, FATCAT defines the score of the alignment that ends with Pi as follows:The above general chaining algorithm reports both sequential and non-sequential alignments. In the results section, we demonstrate that the quality of its non-sequential alignments is competitive to state-of-the-art non-sequential alignment methods. However, for sequential flexible alignment, there are more efficient chaining algorithms, namely the approach proposed by the FATCAT algorithm. The FATCAT algorithm follows a dynamic programming approach for chaining the AFPs. In FATCAT, the score of an alignment ending with an AFP, C(Pj → Pi) is the penalty incurred when connecting Pi to the alignment that ends with Pj and it is similar to the penalty function used in the general chaining and W(Pi) is the score of the AFP itself. We propose an approach that is similar in spirit to FACTCAT, however, it is different in two important aspects. The first aspect is the optimality of the alignment reported by FATCAT. The main issue here is that the scoring function has an rmsd term since W(Pi) is a function of the length of Pi and its rmsd. Therefore, S(Pi) cannot be optimal because we do not know of a scoring function that involves the rmsd value that is additive and optimal . Therefore, the optimality of FATCAT alignments is not guaranteed since the sub-optimality property of the dynamic programming does not hold if the score incorporates an rmsd term. In Figure P1, P4, P5, P6}, the sub-optimality property requires that {P1, P4, P5} is also optimal, and it is the best alignment that ends with P5. This is not necessarily true in structural alignment, because it could happen that the alignment {P1, P2, P3, P5} is better {P1, P4, P5}. In general, the flexible structural alignment does not exhibit the optimal substructure that would justify the use of dynamic programming.where Pi, we delete all the solutions that end with Pj's whose ends are lower and to the left of the endpoint of Pi and S(Pj) <S(Pi). For the segments shown in Figure S(P3) >S(P4), once we encounter the end of P3, we should delete the solution that ends with P4. When we encounter P5, we know that the best solution it can be chained to ends with P3. This approach works fine for regular chaining problems (like strings). However for the structural alignment problem, this approach does not yield the optimal alignment since the problem does not exhibit the optimal substructure property. Therefore, in FlexSnap, once we reach the end of an AFP, Pi, we do not delete all solutions that end with Pj's which are to the left and below Pi; instead we only delete the ones that have very low scores as compared to S(Pi). Though not optimal, this approach gave better results for sequential chaining than the pure greedy approach presented in the previous section.In FlexSnap, we follow a similar approach as the approach presented in  for chaiC(Pj → Pi) is the connection cost of Pi and Pj while in FlexSnap it is the connection cost of Pi to the rigid region that contains Pj. In FATCAT, if Pj belongs to a rigid region and the connection cost of Pi with Pj is small, Pi will be added to the same rigid region as Pj even though Pi might not be consistent with other AFPs in the same region. In Figure P5 to R2 that ends with P4, FATCAT would compute the connection cost C but FlexSnap would compute C → P5) since P4 belongs to the rigid region that contains P1. In FATCAT, when connecting P5 to R2, we might get the conclusion that there is no need to introduce a hinge and thus P5 belongs to the same rigid region as P1 and P4. This may lead to a large rmsd when we report the alignment since we did not check if P5 is consistent with P1. However, when FlexSnap adds P5 to the same rigid region as P4 and P1, it will not harm the final rmsd when we report the alignment as FlexSnap ensures that all the segments in the same rigid region are consistent. In the results section, we investigate how computing the connection cost with the whole rigid region as opposed to the last segment in the rigid region affects the quality of the alignment. For some structure pairs, considering the whole rigid region in computing the connection cost resulted in significant improvements.The second aspect where FlexSnap is different from FATCAT is that in FATCAT To assess the quality of FlexSnap alignment compared to other structural alignment methods, we evaluated the agreement of the methods' alignments with reference manually-curated alignments. We compared FlexSnap against sequential methods (DALI  and CE ), non-seL = 8, ε = 2 Å, Dc = 3 Å, α = 0.5, Mr = -10, Mg = -1, and H = 3  relative to the reference alignment's length (LR), i.e., A = (IS/LR) × 100. Table We used the reference alignments for the structure pairs which have circular permutation in the RIPC dataset . The RIP1nkl, 78 residues) with prophytepsin . On this pair, all the sequential alignment methods  returned zero agreements. For the non-sequential ones: SARF returned 92%, MultiProt got 68%, and SCALI returned 69%. The reference alignment had 72 aligned pairs. As shown in Figure FlexSnap alignments have 100 percent agreement on four structure pairs. One such pair is the alignment of NK-lysin  is the cost of connecting Pi with the rigid region to which Pj belongs. In the second version, C(Pj → Pi) is the connection cost of Pi with only Pj. It is observed that when considering the entire rigid region, as in FlexSnapF, we get much better alignments, i.e., they have lower rmsd and fewer hinges. Moreover, FlexSnapF gives comparable results to the FATCAT method. In few cases, it got slightly shorter alignments with much better rmsd as in the case of the third and fourth alignment pairs.Table Nmat is defined as A| is the length of protein A, similarly for |B|.The DynDom dataset  is a comrmsd, and hinges reported by different methods on the DynDom dataset. For the same structure pair, FlexProt reports different solutions with different number of hinges ranging from 0 to 5 hinges. For the sake of fair comparison, we choose the FlexProt alignment with the same number of hinges as the solution reported by FlexSnap. Moreover, we also run FlexSnap in rigid mode (FlexSnapR) with the number of allowed hinges set to 0 to investigate how it compares to rigid alignment methods. DALI has the highest coverage followed by FlexSnap. However, the average rmsd of FlexSnap alignments is much smaller than the average rmsd for DALI alignments. On average, FlexSnap introduced 0.59 hinges in the alignments. By introducing flexibility in the alignments, FlexSnap reported alignments with significantly smaller rmsd while maintaining high alignment coverage. Also when run in the rigid mode, FlexSnapR is competitive to state-of-the-art methods like DALI, Structal, and MultiProt.Table rmsd of the alignment. Therefore, they might prefer shorter alignment with small rmsd over a longer alignment with significantly larger rmsd. In some cases, like when there is a movement in one of the proteins, they have no choice but to report a shorter alignment with an acceptable rmsd value. We analyze the alignments of structure pairs for which rigid alignment methods returned short alignments as compared to the length of the smaller protein. We run three different rigid alignment methods, DALI, Structal, and MultiProt, and get the pairs for which any of the methods returned a coverage less than or equal to 60%. The list has 30 pairs for DALI, 282 for Structal, and 164 for MultiProt. An example of a rigid alignment with low coverage is shown in Figure rmsd 0.40 Å; MultiProt's alignment was 54 with rmsd 0.52 Å.Rigid alignment methods try to optimize a score that is usually dependent on the length and rmsd, and hinges reported by FlexSnap on these structure pairs. For fair comparison, we choose the FlexProt alignment with the same number of hinges as the FlexSnap solution. FlexSnap significantly improves the coverage of the alignments of these hard pairs. Moreover, it does so while maintaining good rmsd values and introducing on average about 1.5 hinges. In FlexSnap's scoring function, hinges are penalized and we only introduce a hinge if there is a significant increase in the alignment score. That explains why the number of hinges introduced is not large. DALI optimizes a score that incorporates the length and rmsd of the alignment. Thus for these 30 pairs, the score is too low for longer alignments, and thus DALI chooses to report shorter alignments with good rmsd, and thus low coverage on these 30 pairs. The Structal method reported low coverage alignments on many more structure pairs when compared to DALI. The reason behind that is the fact that the Structal method depends on the initial alignments for its initial transformations and it might miss the true alignment if the initial alignments are not good starting points.Table rmsd values, and thus they may have good coverage on some pairs, but the rmsd values may be too large. Flexible alignments can be employed for these cases to get similar alignments but with much better rmsd values. For each of our test methods, namely DALI, Structal, and MultiProt, we compiled a list of the structure pairs for which the method reported an alignment with rmsd ≥ 4.0 Å, and we ran FlexSnap on these pairs. An example of a rigid alignment with large rmsd is shown in Figure rmsd of 0.71 Å by introducing only one hinge in the alignment. Table rmsd as reported by the native rigid method and by FlexSnap. Under this criterion, DALI reported alignments with rmsd ≥ 4.0 Å on 295 pairs, much more than what the other methods reported. MultiProt didn't report any alignment with large rmsd. In fact, all of the MultiProt alignments had rmsd ≤ 2.3 Å; this can be explained by noting that MultiProt includes in the alignment only residue pairs which are closely aligned and thus the overall rmsd will not be large.In some cases rigid alignment methods would seek to optimize the score that favors longer alignments with acceptable rmsd of the alignments of these pairs. For the 295 pairs for which DALI reported an average rmsd of 5.89 Å, FlexSnap reported an average rmsd of 1.61 Å. For the 16 pairs reported by Structal, FlexSnap average rmsd is 1.97 Å as opposed to 5.03 Å reported by Structal.FlexSnap significantly improved the average rmsd (on the DynDom dataset).We have introduced FlexSnap, a greedy chaining algorithm that reports both sequential and non-sequential alignments and allows twists (hinges). We assessed the quality of the FlexSnap alignments by measuring its agreements with manually curated non-sequential alignments (on the RIPC dataset). On the FlexProt dataset, FlexSnap was competitive to state-of-the-art flexbile alignment methods. Moreover, we demonstrated the benefits of introducing hinges by showing the significant improvement in the alignments reported by FlexSnap for the structure pairs for which rigid alignment methods reported alignments with either low coverage or large The authors declare that they have no competing interests.SS and MJZ designed the FlexSnap algorithm with the proposed scoring scheme. SS coded the algorithm in C++ and wrote the paper. CB proposed the experiments and helped analyze the alignments. All authors read and approved the final manuscript.


There is an increasing demand to assemble and align large-scale biological sequence data sets. The commonly used multiple sequence alignment programs are still limited in their ability to handle very large amounts of sequences because the system lacks a scalable high-performance computing (HPC) environment with a greatly extended data storage capacity.ClustalXeed, a software system for multiple sequence alignment with incremental improvements over previous versions of the ClustalX and ClustalW-MPI software. The primary advantage of ClustalXeed over other multiple sequence alignment software is its ability to align a large family of protein or nucleic acid sequences. To solve the conventional memory-dependency problem, ClustalXeed uses both physical random access memory (RAM) and a distributed file-allocation system for distance matrix construction and pair-align computation. The computation efficiency of disk-storage system was markedly improved by implementing an efficient load-balancing algorithm, called "idle node-seeking task algorithm" (INSTA). The new editing option and the graphical user interface (GUI) provide ready access to a parallel-computing environment for users who seek fast and easy alignment of large DNA and protein sequence sets.We designed ClustalXeed can now compute a large volume of biological sequence data sets, which were not tractable in any other parallel or single MSA program. The main developments include: 1) the ability to tackle larger sequence alignment problems than possible with previous systems through markedly improved storage-handling capabilities. 2) Implementing an efficient task load-balancing algorithm, INSTA, which improves overall processing times for multiple sequence alignment with input sequences of non-uniform length. 3) Support for both single PC and distributed cluster systems. Genetic and protein sequences are being discovered rapidly, and as a result, the number of sequences entered into biological databases is growing exponentially over time. Most of the work currently being done in computational biology involves searching for inter- and intra-sequence homology in massive volumes of genetic and protein sequence data, which are commonly based on a multiple sequence alignments (MSAs) . HoweverThe oldest and most widely used MSA program that estimates trees as it aligns multiple sequences is ClustalW ,5. ClustUnfortunately, most of the currently available MSA programs are not suitable for large-capacity data storage and massive computation. These programs, including ClustalX (or X 2.0), are still single-PC based, and the storage and computation is entirely dependent on physical random-access memory (RAM). Past MSA performance evaluations focused simply on how compute-intense and sensitive the program was with respect to the longest-common-sequence (LCS)-based exact-string matching algorithm  . DependiClustalXeed, which was designed for a wide range of MSA purposes  mode. The disk-storage system uses an idle node-seeking task algorithm (INSTA), which forces sleeping nodes into active modes during the massive file-swapping and pair-align computation to overcome slow computation speed. The GUI-based parallel-computation system is implemented with Linux and can be classified into two subsystems: the GUI engine  for interactions between users and the parallel-computation system, and the pair-alignment engine for the calculation of pair-align matrices.In this study, we report s Figure . This isClustalXeed assigns two computation platforms incorporating physical RAM addressing, using a modified version of the clustalw-xeed_mem file, which is similar to the original ClustalW or ClustalW-MPI tools [clustalw-xeed file. The new clustalw-xeed file enables large-scale disk memory storage and smart allocation of vast sequence data sets to a disk swap space for construction of temporary pair-align matrices and for accelerated computation. ClustalXeed uses a sequential file writing method that provides a straightforward and efficient way to read and write files. For a large number of sequences, ClustalXeed converts input sequences into individual sequence pairs and stores the pairs using the naming rule/tmp/xxxxx000P, where P = the pair sequence number and the generation number of the file name is always +1.PI tools ,11 and dA distance matrix file, which is a single file with a file name of matrix-file080.tmp, is also generated in a disk storage unit and is based on all-to-all pair sets from the input sequence query. The calculated pair scores generated from each computation node are stored in the master node/tmp directory. Creation of this process involved modification of the three main programming functions in the original ClustalW , as well as the pairalign message-passing-interface (MPI) algorithm in ClustalW-MPI .ClustalXeed uses the distance matrix and the neighbor-joining clustering method to construct a similarity or guided tree. During this step, temporary changes in tree values are recorded sequentially by creating a new similarity tree file that contains the updated records at each computation stage. This technique provides an efficient file handling methodology for analyses involving frequent writing/reading of large data sets, as is required for dynamic programming using the sum of pairs (SP) scoring method. The similarity matrix files generated at each stage are named using the same naming rule as was described for the input file storage system. The final multiple sequence alignment (MSA) results are stored in a {*.aln} file for easy data retrieval.For cluster analysis, Both ClustalW and ClustalX calculate pair-align scores to generate a guided tree for multiple sequence alignment. During this step, a distributed computation strategy may accelerate the computation. This means that the performance of any distributed parallel-computation approach depends on the balance of the workloads among the distributed nodes Figure . In an iDepending both on the volume of the data to be aligned and the accuracy of the comparisons, computation by dynamic programming requires time-consuming iterations to achieve high accuracy. As an example, ClustalX has a parallelized version of ClustalX IRIX that is optimized to run on SGI Origin parallel computers running IRIX 6.5. The main problem of this parallelized version, however, is that the user has to spend extra time pre-sorting the input data to reduce load imbalances.If the overall pair-align computation nodes are well balanced, performance will be greatly improved Figure . The effClustalXeed main.To overcome the slow speed of the file (-disk) memory computation, we designed an efficient load balancer, which uses a fast, intelligent scanning strategy to find sleeping computation nodes. Based on the previous distribution characteristics of ClustalW-MPI, we propose a dynamic scan-load balancing algorithm for efficient job-assignment of non-uniformly  distributed pair-align computation nodes, which is specified to increase the speed of interprocessor (nodes) communications Figure . The oriClustalXeed is the same as that of ClustalX, because ClustalX is very familiar to PC-based MSA users. It provides a consistent interface, except for several new features for parallel computation, but the other functions are very similar to those in ClustalX.Figure ClustalXeed allows the user to change the order of sequences by simply cutting and pasting the sequence names. The sequence block grabber also provides a box-shaded area that enables the user to realign badly aligned sequences in a new window format, and to realign a small box region again. This option provides an independent task for the refinement of aligned sequences. The realignment range can be selected by simply clicking the mouse and dragging on the new sequence area . Easy Sequence finder enables a search for nucleic acids or proteins based on a partial sequence input.ClustalXeed supports standard TrueType and Postscript fonts, which may increase the resulting tree resolution when enlarged, especially in the case of a huge sequence data set.For the convenience of direct tree-drawing, TreeView  open souA real-time in-process dialogue box was built to enable the user to quickly monitor the current status of the computation, the progression of the job, and information on the number of nodes involved in the calculation. Neither ClustalX nor X2.0 gives feedback on the computation status. When the MSA is finished, the user can save all of the computation history to a {result.log} file. The used parameters are also saved in the working directory as a {result.par} file. This allows a user to view and edit tag information about all the individual batch sequence-alignment jobs.ClustalXeed.The GOR IV  and PHD ClustalXeed provides more options for selecting protein-weight matrices. The former version of ClustalX (or 2.0) provides only three different protein-weight matrices: BLOSUM 30, PAM 350, and Gonnet 250. We added more than 34 different types of protein-weight matrices for specifying scoring tables for the easy and accurate adjustment of SP score improvement. This allows the user to reduce or increase the multiple sequence alignment sensitivity.ClustalXeed allows the alignment of large numbers of nucleic acid or protein sequences. Generally, the memory space requirement for the dynamic programming algorithm follows O (m × n). Based on this, for over 400000 sequences, MSA requires at least 1.28 terabytes of memory  just to construct a distance-tree matrix, regardless of sequence length. We evaluated our software using large volumes of real nucleic acid and protein data sets to assess its overall and detailed performance. We set up a typical 100 × CPU AMD Opteron 244 (1.8 GHz) 64-bit cluster system with Linux (Fedora 4 Core). The master node consists of a 10-terabyte HDD (Samsung Electronics): 3ware RAID adapter  and 8 GB DRAM, for a huge-tree matrix construction. Each node is a dual-core Opteron system with 4 GB DRAM and a 1-terabyte HDD.ftp://ftp.ncbi.nih.gov/ blast/FASTA. These DNA sequences were divided into smaller data sets containing 150000 to 280000 sequences. With 200000 sequences as the first test set, which requires a nearly 8-terabyte file-managing environment for the MSA job, the elapsed computation time was 1.5- to 6-times shorter than that without INSTA. The total execution time for the complete alignment of 200,000 nucleic acid sequences by the disk-storage system was about 4700-6100 s with INSTA, and 7500-24000 s without INSTA. Once the INSTA was built, the overall speed-up rate was directly increased with the added computation nodes. The total computation efficiency depends on the pair-align scoring stage . For a given number of sequences, the average speed of ClustalXeed performance increased with the number of computation nodes (up to 50 nodes were tested).To confirm the full sequence-loading and speed-up computation, almost six million sequences (23.08 GB) in an nt.gz file were first downloaded from 9  pair-wise sequence alignments are required to complete each SP score calculation. We randomly mixed all of these sequences and aligned them using the disk-storage system. Figure ClustalXeed was more than four times faster than the usual file-swap mode. The average speed-up for 20 nodes was 11.7 with INSTA and 7.5 without INSTA. The observed speed-up difference was due to the efficient load-balancing of sparsely distributed sequence pairs, and it clearly demonstrated the success of the implemented load-balancing algorithm. We showed that there exists an optimal node number to be assigned to jobs for the effective usage of computation resources. It is important to determine what system size will result in the maximum speed-up. The speed-up rate, as a function of participating node numbers, was not linear, because there was implicit waiting time due to communication latency . All pairs of sequences in the ClustalXeed main disk-storage are transferred to compute nodes, and the calculated pair scores are then returned to the master and are saved in the disk-storage distance matrix , with minimal length around 10 aa and maximal length of 11600 aa. In total, 1.39×10ClustalW is the most widely used multiple sequence alignment program. The program uses a profile-based progressive alignment, with the alignment process divided into three steps: (1) distance matrix/pair-wise alignment, (2) guided tree generation, and (3) progressive alignment. However, ClustalW is not capable of estimating phylogenies and alignments for large data sets, because of slow computation times and limited memory usage. Alternatives to ClustalW include ClustalX (or X2.0), a graphical user interface (GUI)-based version of ClustalW, and ClustalW-MPI, a recently developed, parallel implementation version of ClustalW. In the latter tool, all three required computation steps are performed in parallel to reduce the total computation time. For parallel job scheduling, ClustalW-MPI uses a fixed-size chunk scheduler, which divides each job into uniform, fixed sizes. This method of batch job scheduling sometimes reduces the communication overhead required for a small and moderate number of sequences having very short lengths, such as ESTs (expressed sequence tags). However, it is not always effective at balancing the workload required for a large number of sequences having unequal lengths. Under these circumstances, the iteration for the next job scheduling is often delayed, which may result in high processor idle time . MoreoveClustalXeed was designed to simultaneously address the dual needs of fast computation and large sequence data handling. Core changes with significant strides in supporting disk-memory access capabilities and enhanced job scheduling can tackle this bottleneck by enhancing both storage capacity and speed. As mentioned previously, ClustalW-MPI delivers fixed-size chunks to every compute node before the calculation. The batch scheduling mode needs high memory on each node, which may result in processor idling when the sequence lengths are not uniform. In contrast, the ClustalXeed disk storage algorithm does not send all pair sequences to the computation nodes and instead master allocates (distributes) the pair sequences individually to an appropriate node using a load-balancing idle node-seeking task algorithm (INSTA) to reduce the initial file transfer cost and slave node memory requirements. ClustalXeed also provides a fixed size chunk algorithm in the memory-storage mode for alignment of small-to-medium-sized sequences.ClustalXeed was designed to work at the capacity of disk memory space, it has no inherent limitation on input sequence amounts. With a 64-bit compiler version, ClustalXeed works with sequence arrays containing up to 18 terabytes in disk-storage mode. In the disk memory operation, alignment speed was also improved by incorporating INSTA, which allocates or re-allocates tasks to idle nodes during pair alignment without the requirement for prior task information. In this way, INSTA determines from moment to moment which imbalanced nodes can be resolved immediately by allocating a new job. The main advantage of INSTA is its prompt scanning and decision-making without requiring decision complexity of rescheduling or reallocating tasks to resources at runtime, as occurs with static or other general dynamic load-balancing algorithms.Because ClustalXeed menu link individually . Users can follow the progress of their alignment execution from the real-time in-process dialogue box. As indicated previously, the new parameter inputs, the easy-to-use realign option, the fully integrated graphical user interface, and the improved speed-up performance for very large volumes of sequence data may provide optimized computation of biological sequence alignments. ClustalXeed demonstrates that the embedded INSTA is a simple and effective means to meet the high computational demands (speed and memory) for massive biological-sequence alignments.While setting up a new sequence batch job, the user has the option to choose an appropriate alternate computing environment using the graphical menu option. Other precise values of multiple sequence alignment tuning parameters can be set for each ClustalXeed provides a great opportunity for the discovery of large and reliable phylogenetic trees between interesting biological sequence data sets. Based on the combination of 38 new protein-weight matrices, encouraging results show that ClustalXeed is one of most powerful MSA tools available for the rapid construction of huge phylogenies.Moreover, large phylogenetic tree construction is becoming increasingly important, as vast amounts of biological sequences are used in the evolutionary and functional analysis of grouping organisms. Project name: ClustalXeed.Project home page: http://pchm.inje.ac.kr/clustalxeed.Operating System(s): runs both on single and parallel Linux-based clustal systems.Programming Language: C-language, Message Passing Interface (MPI).Other requirements: described in the project home page. More detailed installation instructions and a tutorial manual will also be available for download.License: ClustalXeed is available in source code, without fee, for academic, non-profit uses. The program is distributed in the hope that it will become further improved and put to practical use.HPC: High Performance Computing; GUI: Graphical User Interface; MSA: Multiple Sequence Alignment; MPI: Message Passing Interface; RAM: Random Access Memory; INSTA: Idle Node-Seeking Task Algorithm; CPU: Central Processing Unit; HDD: Hard Disk Drive; I/O: Input/Output; MALIGN: Multiple Alignment; SP: Sum of PairsHJ designed and wrote the software, with support from TK. Both authors contributed to the writing of the manuscript. All authors read and approved the final manuscript.