Abstract
Background
DIALIGNT is a reimplementation of the multiplealignment program DIALIGN. Due to several algorithmic improvements, it produces significantly better alignments on locally and globally related sequence sets than previous versions of DIALIGN. However, like the original implementation of the program, DIALIGNT uses a a straightforward greedy approach to assemble multiple alignments from local pairwise sequence similarities. Such greedy approaches may be vulnerable to spurious random similarities and can therefore lead to suboptimal results. In this paper, we present DIALIGNTX, a substantial improvement of DIALIGNT that combines our previous greedy algorithm with a progressive alignment approach.
Results
Our new heuristic produces significantly better alignments, especially on globally related sequences, without increasing the CPU time and memory consumption exceedingly. The new method is based on a guide tree; to detect possible spurious sequence similarities, it employs a vertexcover approximation on a conflict graph. We performed benchmarking tests on a large set of nucleic acid and protein sequences For protein benchmarks we used the benchmark database BALIBASE 3 and an updated release of the database IRMBASE 2 for assessing the quality on globally and locally related sequences, respectively. For alignment of nucleic acid sequences, we used BRAliBase II for global alignment and a newly developed database of locally related sequences called DIRMBASE 1. IRMBASE 2 and DIRMBASE 1 are constructed by implanting highly conserved motives at random positions in long unalignable sequences.
Conclusion
On BALIBASE3, our new program performs significantly better than the previous program DIALIGNT and outperforms the popular global aligner CLUSTAL W, though it is still outperformed by programs that focus on global alignment like MAFFT, MUSCLE and TCOFFEE. On the locally related test sets in IRMBASE 2 and DIRMBASE 1, our method outperforms all other programs while MAFFT EINSi is the only method that comes close to the performance of DIALIGNTX.
1 Introduction
DIALIGN is a widely used software for multiple alignment of nucleic acid and protein sequences [1,2] that combines local and global alignment features. Pairwise or multiple alignments are composed by aligning local pairwise similarities. More precisely, pairwise local gapfree alignments called fragment alignments or fragments are used as building blocks to assemble multiple alignments. Each possible fragment is given a score that is related to the P values used by BLAST [3,4], and the program then tries to find a consistent set of fragments from all possible sequence pairs, maximizing the total score of these fragments. Gaps are not penalized. Here, consistency means that a set of fragment alignments can be included into one single alignment without contradictions, see for example [5] for a more formal definition of our notion of consistency.
The main difference between DIALIGN and more traditional alignment approaches is the underlying scoring scheme or objective function. Instead of summing up substitution scores for aligned residues and subtracting gap penalties, the score of an alignment is based on Pvalues of local sequence similarities. Only those parts of the sequences are aligned that share some statistically significant similarity, unrelated parts of the sequences remain unaligned. This way, the method can produce global as well as local alignments of the input sequences, whatever seems more appropriate. Combining local and global alignment features is particularly important if genomic sequences are aligned where islands of conserved homologies may be separated by nonrelated parts of the sequences. Thus, DIALIGN has been used for comparative genomics [6], for example to find proteincoding genes in eukaryotes [79].
As with traditional objective functions for sequence alignment, numerically optimal pairwise alignments can be calculated efficiently in the segmentbased approach. In DIALIGN, this is done by a spaceefficient fragmentchaining algorithms [10,11]. However, it is computationally not feasible to find mathematically optimal multiple alignments. Thus, heuristics must be used if more than two sequences are to be aligned. All previous versions of DIALIGN used a greedy algorithm for multiple alignment. In an initial step, optimal pairwise alignments are calculated for all possible pairs of input sequences. Since these pairwise alignments are completely independent of each other, they can be calculated on parallel processors [12]. Fragments from these pairwise alignments are then sorted by their scores, i.e. based on their Pvalues, and then included onebyone into a growing consistent set of fragments involving all pairs of sequences – provided they are consistent with the previously included fragments.
The greedy algorithm used in DIALIGN is vulnerable to spurious random similarities. It has been shown, that the numerical score of alignments produced by this heuristic can be far below the optimum [5,13]. Consequently, alternative optimization algorithms have been applied to the optimization problem defined by the DIALIGN approach, e.g. Integer Linear Programming [14].
2 Assembling alignments from fragments
Formally, we consider the following optimization problem: we are given a set S = {s_{1}, . . ., s_{k}} of input sequences where l_{i }is the length of sequence s_{i}. A fragment f is a pair of two equallength segments from two different input sequences. Thus, a fragment represents a local pairwise gapfree alignment of these two sequences. Each possible fragment f is assigned a weight score w(f) which, in our approach, depends on the probability P(f) of random occurrence of such a fragment. More precisely, if f is a local alignment of sequences s_{i }and s_{j}, then P (f) is the probability of finding a fragment of the same length as f with at least the same sum of matches or similarity values for amino acids in random sequences of length l_{i }and l_{j}, respectively. For protein alignment, a standard substitution matrix is used. Let F be the set of all possible fragments. The optimization problem is then to find a consistent set A ⊂ F of fragments with maximum total weight, i.e. a consistent set A maximizing
A set of fragments is called consistent if all fragments can be included into one single alignment, see [15]. Fragments in A are allowed to overlap if different pairs of sequences are involved. That is, if two fragments f_{1}, f_{2}∈ A involve sequence pairs s_{i}, s_{j }and s_{j}, s_{k}, respectively, then f_{1 }and f_{2 }are allowed to overlap in sequence s_{j}. If two fragments involve the same pair of sequences, no overlap is allowed. It can be shown that the problem of finding an optimal consistent set A of fragments is NPcomplete (Constructing multiple sequence alignments from pairwise data, Subramanian et al., in preparation). Therefore, we are motivated in finding intelligent approximations that deliver a good tradeoff between alignment quality and CPU time.
To decrease the computational complexity of this problem, we restrict ourselves to a reduced subset F' ⊂ F and we will first search for a consistent subset A ⊂ F' with maximum total score. As in previous versions of DIALIGN, we use pairwise optimal alignments as a filter. In other words, the set F' is defined as the set of all fragments contained in any of the optimal pairwise alignments of the sequences in our input data set. Here, we also restrict the length of fragments using some suitable constant.
For multiple alignment, previous versions of DIALIGN used the above outlined greedy approach. We call this approach a direct greedy approach, as opposed to the progressive greedy approach that we introduce in this paper. A modification of this 'direct greedy' approach was also used in our reimplementation DIALIGNT. Here, we considered not only the weight scores of individual fragments (or their overlap weights [1]) but also took into account the overall degree of similarity between the two sequences involved in the fragment. The rationale behind this approach is that a fragment from a sequence pair with high overall similarity is less likely to be a random artefact than a fragment from an otherwise nonrelated sequence pair, see [16] for details.
2.1 Combining segmentbased greedy and progressive alignment
To overcome the difficulties of a 'direct' greedy algorithm for multiple alignment, we combined greedy features with a 'progressive' alignment approach [1720]. Roughly outlined, the new method we developed first computes a guide tree for the set of input sequences based on their pairwise similarity scores. The sequences are then aligned in the order defined by the guide tree. We divide the set of fragments contained in the respective optimal pairwise alignments into two subsets F_{0 }and F_{1 }where F_{0 }consists of all fragments with weight scores below the average fragment score in all pairwise alignments, and F_{1 }consists of the fragments with a weight above or equal to the average weight. In a first step, the set F_{1 }is used to calculate an initial multiple alignment A_{1 }in a 'progressive' manner. The lowscoring fragments from set F_{0 }are added later to A_{1 }in a 'direct' greedy way, provided they are consistent with A_{1}. In addition, we construct an alternative multiple alignment A_{0 }using the 'direct' greedy approach implemented in previous versions of DIALIGN and DIALIGNT, respectively. The program finally returns either A_{0 }or A_{1}, depending on which one of these two alignments has the highest score.
To construct a guide tree for the progressive alignment algorithm, we use straightforward hierarchical clustering. Here, we use a weighted combination of completelinkage and averagelinkage clustering based on pairwise similarity values R(p, q) for pairs of cluster (C_{p}, C_{q}). Initially, each cluster C_{i }consists of one sequence s_{i }only. The similarity R(i, j) between clusters C_{i }and C_{j }(or leaves i and j in our tree) is defined to be the score of the optimal pairwise alignment of s_{i }and s_{j }according to our objective function, i.e. the sum of the weights of the fragments in an optimal chain of fragments for these two sequences. In every step, we merge the two sequence clusters C_{i }and C_{j }with the maximum similarity value R(i, j) into a new cluster. Whenever a new cluster C_{p }is created by merging clusters q and r (or a node p in the tree is created with children q and r), we define the similarity between p and all other remaining clusters m to be
The choice of this function has been inspired by MAFFT [21,22]; it also worked very well in our situation on globally and locally related sequences after experiments on BALIBASE 3, BRAliBase II, IRMBASE 2 and DIRMBASE 1.
2.2 Merging two subalignments
The final multiple alignment of our input sequence set S is constructed bottomup along the guide tree. Thus, the crucial step is to combine two subalignments represented by nodes q and r in our tree whenever a new node p is created. In the traditional 'progressive' alignment approach, this is done by calculating a pairwise alignment of profiles, but this procedure cannot be directly adapted to our segmentbased approach. Let A_{q }and A_{r }be the existing subalignments of the sequences in clusters C_{q }and C_{r}, respectively, at the time where these clusters are merged to a new cluster C_{p}. Let F_{q, r }be the set of all fragments f ∈ F connecting one sequence from cluster C_{q }with another sequence from cluster C_{r}. Now, our main goal is to find a subset F_{p}⊂ F_{q,r }with maximum total weight score that is consistent with the existing alignments A_{q }and A_{r}. In other words, we are looking for a subset F_{p}⊂ F_{q, r }with maximum total weight such that
describes a valid multiple sequence alignment of the sequence set represented by node p.
It is easy to see that at this time, before clusters A_{q }and A_{r }are merged, every single fragment f ∈ F_{q,r }is consistent with the existing (partial) alignments A_{q }and A_{r }and therefore consistent with the set of all fragments accepted so far. Only groups of at least two fragments from F_{q,r }can lead to inconsistencies with the previously accepted fragments. Thus, there are different subtypes of consistency conflicts in F_{q,r }that may arise when A_{q }and A_{r }are fixed. There are pairs, triples or, in general, ltuples of fragments of F_{q,r }that give rise to a conflict in the sense that the conflict can be resolved by removing exactly one fragment of such a conflicting ltuple. Statistically, pairs of conflicting fragments are the most frequent type of conflict, so we will take care of them more intelligently rather than using only a greedy method. Since in our approach, the length of fragments is limited, we can easily determine in constant time for any pair of fragments (f_{1}, f_{2}) if the set
is consistent, i.e. if it forms a valid alignment, or if there is a pairwise conflict between f_{1 }and f_{2}. Here, the data structures described in [23] are used. With unbounded fragment length, the consistency check for the new fragments (f_{1}, f_{2}) would take O(f_{1} × f_{2}) time where f is the length of a fragment f .
This gives rise to a conflict graph G_{q,r }that has a weighted node n_{f }for every fragment f ∈ F_{q,r}. The weight w(n_{f}) of node n_{f }is defined to be the weight score w(f) of f, and for any two fragments f_{1}, f_{2 }there exists an edge connecting and iff there is a pairwise conflict between f_{1 }and f_{2}, i.e. if the set A_{q}∪ A_{r}∪ {f_{1}, f_{2}} is inconsistent. We are now interested in finding a good subset of F_{q,r }that does not contain any pairwise conflicts in the above sense. The optimum solution would be obtained by removing a minimal weighted vertex cover from G_{q,r}. Since the weighted vertex cover problem is NPcomplete we apply the 2approximation given by Clarkson [24]. This algorithm roughly works as follows: in order to obtain the vertex cover C, the algorithm iteratively adds the node v with the maximum value
to C. For any edge (v, u) that connects a node u with v the weight w(u) is updated to
and the edge (u, v) is deleted. This iteration is followed as long as there are edges left.
Note that it is not sufficient to remove the vertex cover C from F_{q,r }to obtain a valid alignment since in the construction of C, only inconsistent pairs of fragments were considered. We therefore first remove C from F_{q,r }and we subsequently remove further inconsistent fragments from F_{q,r }using our 'direct' greedy alignment as described in [16]. A consequence of this further reduction of the set F_{q,r }is that fragments that were previously removed because of pairwise inconsistencies, may became consistent again. A node may have been included into the set C and therefore removed from the alignment as the corresponding fragment f_{1 }is part of an inconsistent fragment pair (f_{1}, f_{2}). However, after subtracting the set C from F_{q, r}, the algorithm may detect that fragment f_{2 }is part of a larger inconsistent group, and f_{2 }is removed as well. In this case, it may be possible to include f_{1 }again into the alignment. Therefore, our algorithm reconsiders in a final step the set C to see if some of the previously excluded fragments can now be reincluded into the alignment. This is again done using our 'direct' greedy method.
2.3 The overall algorithm
In the previous section, we discussed all ingredients that are necessary to give a highlevel description of our algorithm to compute a multiple sequence alignment. For clarity, we omit algorithmical details and data structures such as the consistency frontiers or consistency boundaries, respectively, that are used to check for consistency as these features have been described elsewhere [23]. We use a subroutine PAIRWISE_ALIGNMENT (s_{i}, s_{j}, A) that takes two sequences s_{i }and s_{j }and (optionally) an existing consistent set of fragments A as input and calculates an optimal alignment of s_{i }and s_{j }under the side constraint that this alignment is consistent with A and that only those positions in the sequences are aligned that are not yet aligned by a fragment from A. Note that in DIALIGN, an alignment is defined as an equivalence relation on the set of all sequence positions, so a consistent set of fragments corresponds to an alignment. Therefore, we do not formally distinguish between alignments and sets of fragments.
Next, a subroutine GREEDY_ALIGNMENT (A, F') takes an alignment A and a set of fragments F' as arguments and returns a new alignment A' ⊃ A by adding fragments from the set F' in a 'directly' greedy fashion. For details on these subroutines see also [16]. Furthermore we use a subroutine BUILD_UPGMA (F') that takes a set F' of fragments as arguments and returns a tree and a subroutine MERGE(p, F') that takes the parent node p and the set of fragments F' as argument and returns an alignment of the set of sequences represented by node p. Those two subroutines are described in the previous two subsections. A pseudocode description of the complete algorithm for multiple alignment is given in Figure 1. As in the original version of DIALIGN [1], the process of pairwise alignment and consistency filtering is carried out iteratively. Once a valid alignment A has been constructed by removing inconsistent fragments from the set F' of the fragments that are part of the respective optimal pairwise alignments, this procedure is repeated until no new fragments can be found. In the second and subsequent iteration steps, only those parts of the sequences are considered that are not yet aligned and optimal pairwise alignments are calculated under the consistency constraints imposed by the existing alignment A.
Figure 1. Highlevel description of our algorithm to calculate a multiple alignment of a set of input sequences s_{1}, . . ., s_{k}. The algorithm calculates a first alignment A_{0 }using our novel progressive approach and a second alignment A_{1 }with the greedy method previously used in DIALIGN. Finally, the alignment with the higher numerical score is returned. For the progressive method, fragments, i.e. local gapfree pairwise alignments from the respective optimal pairwise alignments are considered. Fragments with a weight score above the average fragment score are processed first following a guide tree as described in the main text. Lowerscoring fragments are added later, provided they are consistent with the previously included highscoring fragments. Note that the output of the subroutine PAIRWISE_ALIGNMENT is a chain of fragments. This is equivalent to a pairwise alignment in the sense of DIALIGN.
3 Further program features
Beside the above described improvements of the optimization algorithm, we incorporated new features into DIALIGNTX that were already part of the original implementation of DIALIGN. DIALIGNTX now supports anchor points the same way DIALIGN 2.2 does [5,15]. Anchor points can be used for various purposes, e.g. to speed up alignment of large genomic sequences [25,6], or to incorporate information about locally conserved motifs. This can been done, for example, using the Nlocaldecoding approach [26,27] or other methods for motif finding.
DIALIGNTX also now comes with an option to specify a threshold parameter T in order to exclude lowscoring fragments from the alignment. Following an approach proposed in [28], the alignment procedure can be iterated, starting with a high value of T and with lower values in subsequent iteration steps. By default, in the first iteration step of our algorithm, we use a value of T = log_{2}(0.5) for the pairwise alignment phase, while in all subsequent iteration steps, a value of T = 0 is usedd. With a userspecified threshold of T = 2 for the first iteration step, the threshold value remains log_{2 }(0.5) in all subsequent steps, and with a chosen threshold value of T = 1, the value for the subsequent iteration steps is set to log_{2 }(0.75).
An optimal pairwise alignment in the sense of our fragmentbased approach is a chain of fragments with maximum total weight score. Calculating such an optimal alignment takes O(l^{3}) time if l is the (maximum) length of the two sequences since all possible fragments are to be considered. If the length of fragments is bounded by a constant L, the complexity is reduced to O(l^{2 }× L). In practice, however, it is not meaningful to consider all possible fragments. Our algorithm processes fragments starting at a pair of positions i and j, respectively, with increasing fragment length. To reduce the number of fragments considered, our algorithm stops processing longer fragments starting at i and j if the previously visited short fragments starting at the same positions have low scores. More precisely, we consider the average substitution score of aligned amino acids or the average number of matches for DNA or RNA alignment, respectively, to decide if further fragments starting at i and j are considered.
To reduce the run time for pairwise alignments, we implemented an option called fast mode. This option uses a lower threshold value for the average subsitution scores or number of matches. By default, during the pairwise alignment phase, fragments under consideration are extended until their average substitution score is at least 4 for amino acids (note that our BLOSUM62 matrix has 0 for the lowest score possible) and 0.25 for nucleotides, respectively. With the fast mode option, this threshold is increased by 0.25 which has the effect that the extension of fragments during the pairwise alignment phase is interrupted far more often than by default. This option, however, reduces the sensitivity of the program. We observed speedups up to factor 10 on various benchmark data when using this option while the alignment quality was still reasonably high, in the sense that the average sumofpair score and average column score on our benchmarks deteroriated around 5% – 10% only. We recommend to use this option for large input data containing sequences that are not too distantly related. Hence, this option is not advisable for strictly locally related sequences where we observed a reduction of the alignment quality almost down to a score of zero. However in the latter case this option is not necessary since the original similarity score thresholds of 4 and 0.25, respectively, are effective enough to prevent DIALIGNTX of unnecessarily looking at too many spurious fragments.
4 Benchmark results
In order to evaluate the improvements of the new heuristics we had several benchmarks on various reference sets and compared DIALIGNTX with its predecessor DIALIGNT 0.2.2 [16], DIALIGN 2.2 [29], CLUSTAL W2 [30], MUSCLE 3.7 [31], TCOFFEE 5.56 [32] POA V2 [33,34], PROBCONS 1.12 [35] & PROBCONSRNA 1.10, MAFFT 6.240 LINSi and EINSi [21,22]. We performed benchmarks for DNA as well as for protein alignment. As globally related benchmark sets we used BRAliBase II [36,37] for RNA and BALIBASE 3 [38] for protein sequences.
The benchmarks on locally related sequence sets were run on IRMBASE 2 for proteins and DIRMBASE 1 for DNA sequences, which have been constructed in a very similar way as IRMBASE 1 [16] by implanting highly conserved motifs generated by ROSE [39] in long random sequences. IRMBASE 2 and DIRMBASE 1 both consist of four reference sets ref1, ref2, ref3 and ref4 with one, two, three and four (respectively) randomly implanted ROSE motives. The major difference compared to the old IRMBASE 1 lies in the fact that in 1/s cases the occurrence of a motive in a sequence has been omitted randomly, whereby s is the number of sequences in the sequence family. The results on IRMBASE 2 and DIRMBASE 1 now tell us how the alignment programs perform in cases when it is unknown if every motive occurs in every sequence thus providing a more realistic basis for assessing the alignment quality on locally related sequences compared to the situation in the old IRMBASE 1 where every motive always occurred in every sequence.
Each reference set in IRMBASE 2 and DIRMBASE 1 consists of 48 sequence families, 24 of which contain ROSE motifs of length 30 while the remaining families contain motifs of length 60. 16 sequence families in each of the reference sets consist of 4 sequences each, another 16 families consist of 8 sequences while the remaining 16 families consist of 16 sequences. In ref1, random sequences of length 400 are added to the conserved ROSE motif while for ref2 and ref3, random seqences of length 500 are added. In ref4 random sequences of length 600 are added.
For both BAliBASE and IRMBASE, we used two different criteria to evaluate multialignment software tools. We used the sumofpair score where the percentage of correctly aligned pairs of residues is taken as a quality measure for alignments. In addition, we used the column score where the percentage of correct columns in an alignment is the criterion for alignment quality. Both scoring schemes were restricted to core blocks within the reference sequences where the 'true' alignment is known. For IRMBASE 2 and DIRMBASE 1, the core blocks are defined as the conserved ROSE motifs. To compare the output of different programs to the respective benchmark alignments, we used C. Notredame's program aln_compare [32].
4.1 Results on locally related sequence families
The quality results of our benchmarks of DIALIGNTX and various alignment programs on the local aligment databases can be found in Tables 1 and 2 for the local protein database IRMBASE 2 and in Tables 3 and 4 for the local DNA database DIRMBASE 1. The average CPU times of the tested methods are listed in Table 5. When looking at the results DIALIGNTX clearly outperforms all other methods on sumofpairs score (SPS) and column score (CS) with the only exception that MAFFT EINSi outperforms DIALIGNTX on the SPS on IRMBASE 2 whilst in turn DIALIGNTX is around 3.5 times faster and significantly outperforms MAFFTEINSi on the CS. The superiority of DIALIGNTX compared to DIALIGNT 0.2.2 is not statistically significant on IRMBASE 2, however it is on DIRMBASE 1 which is due to a very low sensitivity threshold parameter for the DNA case set by default in DIALIGNT 0.2.2 that allowed fragments solely comprised of matches. In all other comparisons DIALIGNTX is significantly superior to the other programs with respect to the Wilcoxon Matched Pairs Signed Rank Test [40]. DIALIGN 2.2, DIALIGNT 0.2.2 (only for protein), MAFFT LINSi and MAFFT EINSi were the only other methods that produced reasonable results.
Table 1. Sumofpairs scores of various alignment programs on the benchmark database IRMBASE 2
Table 2. Column scores of different programs on IRMBASE 2
Table 3. Sumofpairs scores on DIRMBASE 1
Table 4. Column scores on DIRMBASE 1.
Table 5. Program run time on IRMBASE 2 and DIRMBASE 1
On IRMBASE 2 our new program DIALIGNTX is around 1.64 times slower compared to DIALIGNT however it is still faster than DIALIGN 2.2, on DIRMBASE 1 we observed that DIALIGNTX is 4.26 times slower than DIALIGNT (which is due to the reduced sensitivity in DIALIGNT 0.2.2) and we also see that DIALIGNTX is around 2.04 slower than DIALIGN 2.2. Although IRMBASE 2 and DIRMBASE 1 are constructed in a similar way we see that TCOFFEE and PROBCONS behave quite well on the protein alignments whereas the perform very poorly in the DNA case while the other methods ranked mostly equal in the protein and DNA case. Overall, we conclude from our benchmarks that DIALIGNTX is the dominant program on locally related sequence protein and DNA families that consist of closely related motives embedded in long unalignable sequences.
4.2 Results on globally related sequence families
The results of our benchmark on the global alignment databases are listed in the Tables 6, 7 for BALIBASE 3 and in Tables 8, 9 for core blocks of BRAliBase II. The average CPU times of all methods can be found in Table 10. According to the Wilcoxon Matched Pairs Signed Rank Test DIALIGNTX outperforms DIALIGNT 0.2.2, DIALIGN 2.2, POA and CLUSTAL W2 on BALIBASE3 whereby DIALIGNTX is the only method following the DIALIGN approach that significantly outperforms CLUSTAL W2. Since the methods TCOFFEE, PROBCONS, MAFFT and MUSCLE are focused on global alignments, they significantly outperform DIALIGNTX on BALIBASE 3. Overall PROBCONS, MAFFT LINSi and EINSi are the superior methods on BALIBASE 3. On BALIBASE 3 the new DIALIGNTX program is around 1.22 times slower than the previous version of DIALIGNT and around 1.36 times faster than DIALIGN 2.2.
Table 6. Sumofpairs scores on BALIBASE 3
Table 7. Column scores on BALIBASE 3
Table 8. Sumofpairs scores on BRAliBase II
Table 9. Column scores on BRAliBase II
Table 10. Run time on BALIBASE 3 and BRAliBase II
We have a slightly different picture in the RNA case we examined using BRAliBase II benchmark database that has an even stronger global character and is the only benchmark database that we used that does not come with core blocks. DIALIGNTX significantly outperforms POA and all other versions of DIALIGN approach whereas it is still inferior to the global methods CLUSTAL W2, MAFFT, MUSCLE and PROBCONSRNA. The difference between TCOFFEE and DIALIGNTX on BRAliBase II is quite small, i.e. TCOFFEE outperforms DIALIGNTX only on the SPS whereas there is no significant different on the CS. Since MAFFT and PROBCONSRNA have been trained on BRAliBase II the dominance of those methods (especially PROBCONSRNA) is not very surprising. Regarding CPU time DIALIGNTX is approximately 1.7 times slower than DIALIGNT 0.2.2 and DIALIGN 2.2 on BRAliBase II.
5 Conclusion
In this paper, we introduced a new optimization algorithm for the segmentbased multiplealignment problem. Since the first release of the program DIALIGN in 1996, a 'direct' greedy approach has been used where local pairwise alignments (fragments) are checked for consistency onebyone to see if they can be included into a valid multiple alignment. In this approach, the order in which fragments are checked for consistency is basically determined by their individual weight scores. Some modifications have been introduced, such as overlap weights [1] and a more contextsensitive approach that takes into account the overal significance of the pairwise alignment to which a fragment belongs [16]. Nevertheless, a 'direct' greedy approach is always sensitive to spurious pairwise random similarities and may lead to alignments with scores far below the possible optimal score (e.g. [13,5], Pöhler and Morgenstern, unpublished data).
The optimization method that we introduced herein is inspired by the socalled progressive approach to multiple alignment introduced in the 1980s for the classical multiplealignment problem [17]. We adapted this alignment strategy to our segmentbased approach using an existing graphtheoretical optimization algorithm and combined it with our previous 'direct' greedy approach. As a result, we obtain a new version of our program that achieves significantly better results than the previous versions of the program, DIALIGN 2 and DIALIGNT.
To test our method, we used standard benchmark databases for multiple alignment of protein and nucleicacid sequences. Since these databases are heavily biased towards global alignment, we also used a benchmark database with simulated local homologies. The test results on these data confirm some of the known results on the performance of multiplealignment programs. On the globally related sequence sets from BAliBASE and BRALIBASE, the segmentbased approach is outperformed by classical, strictly global alignment methods. However, even on these data, we could achieve a considerable improvement with the new optimization algorithm used in DIALIGNTX. On the simulated local homologies, our method clearly outperforms other alignment approaches, and again the new algorithm introduced in this paper achieved significantly better results than older versions of DIALIGN. Among the methods for global multiple alignment, the program MAFFT [21,22] performed remarkably well, not only on globally, but also on locally related sequences.
We will conduct further studies to investigate to what extent the optimization algorithms used in the different versions of DIALIGN can be improved and which alternative algorithms can be applied to the optimization problem given by the segmentbased alignment approach.
Program availability
DIALIGNTX is online available at Göttingen Bioinformatics Compute Server (GOBICS) at [41] The program source code and our benchmark databases IRMBASE 2 and DIRMBASE 1 are downloadable from the same web site.
Authors' contributions
ARS conceived the new methods, implemented the program, constructed IRMBASE 2 and DIRMBASE 1, did the evaluation and wrote parts of the manuscript, MK and BM supervised the work, provided resources and wrote parts of the manuscript. All authors read and approved the final manuscript.
Acknowledgements
We would like to thank C. Notredame for providing his software tool aln_compare and R. Steinkamp for helping us with the web server at GOBICS. The work was partially supported by BMBF grant 01AK803G (MEDIGRID).
References

Morgenstern B, Dress A, Werner T: Multiple DNA and protein sequence alignment based on segmenttosegment comparison.
Proc Natl Acad Sci USA 1996, 93:1209812103. PubMed Abstract  Publisher Full Text  PubMed Central Full Text

Morgenstern B: DIALIGN: Multiple DNA and Protein Sequence Alignment at BiBiServ.

Altschul SF, Gish W, Miller W, Myers EM, Lipman DJ: Basic Local Alignment Search Tool.
J Mol Biol 1990, 215:403410. PubMed Abstract  Publisher Full Text

Karlin S, Altschul SF: Methods for assessing the statistical significance of molecular sequence features by using general scoring schemes.
Proc Natl Acad Sci USA 1990, 87:22642268. PubMed Abstract  Publisher Full Text  PubMed Central Full Text

Morgenstern B, Prohaska SJ, Pöhler D, Stadler PF: Multiple sequence alignment with userdefined anchor points.
Algorithms for Molecular Biology 2006, 1:6. PubMed Abstract  BioMed Central Full Text  PubMed Central Full Text

Brudno M, Chapman M, Göttgens B, Batzoglou S, Morgenstern B: Fast and sensitive multiple alignment of large genomic sequences.
BMC Bioinformatics 2003, 4:66. PubMed Abstract  BioMed Central Full Text  PubMed Central Full Text

Taher L, Rinner O, Gargh S, Sczyrba A, Brudno M, Batzoglou S, Morgenstern B: AGenDA: Homologybased gene prediction.
Bioinformatics 2003, 19:15751577. PubMed Abstract  Publisher Full Text

Stanke M, Schöffmann O, Morgenstern B, Waack S: Gene prediction in eukaryotes with a Generalized Hidden Markov Model that uses hints from external sources.
BMC Bioinformatics 2006, 7:62. PubMed Abstract  BioMed Central Full Text  PubMed Central Full Text

Stanke M, Tzvetkova A, Morgenstern B: AUGUSTUS+ at EGASP: using EST, protein and genomic alignments for improved gene prediction in the human genome.
Genome Biology 2006, 7:S11. PubMed Abstract  BioMed Central Full Text  PubMed Central Full Text

Morgenstern B: A SpaceEfficient Algorithm for Aligning Large Genomic Sequences.
Bioinformatics 2000, 16:948949. PubMed Abstract  Publisher Full Text

Morgenstern B: A simple and spaceefficient fragmentchaining algorithm for alignment of DNA and protein sequences.
Applied Mathematics Letters 2002, 15:1116. Publisher Full Text

Schmollinger M, Nieselt K, Kaufmann M, Morgenstern B: DIALIGN P: fast pairwise and multiple sequence alignment using parallel processors.
BMC Bioinformatics 2004, 5:128. PubMed Abstract  BioMed Central Full Text  PubMed Central Full Text

Wagner H, Dress A, Morgenstern B: Stability of Multiple Alignments and Phylogenetic Trees: An Analysis of ABCTransporter Proteins.
, in press.

Lenhof HP, Morgenstern B, Reinert K: An exact solution for the segmenttosegment multiple sequence alignment problem.
Bioinformatics 1999, 15:203210. PubMed Abstract  Publisher Full Text

Morgenstern B, Werner N, Prohaska SJ, Schneider RSI, Subramanian AR, Stadler PF, WeyerMenkhoff J: Multiple sequence alignment with userdefined constraints at GOBICS.
Bioinformatics 2005, 21:12711273. PubMed Abstract  Publisher Full Text

Subramanian AR, WeyerMenkhoff J, Kaufmann M, Morgenstern B: DIALIGNT: An improved algorithm for segmentbased multiple sequence alignment.
BMC Bioinformatics 2005, 6:66. PubMed Abstract  BioMed Central Full Text  PubMed Central Full Text

Feng DF, Doolittle RF: Progressive sequence alignment as a prerequisite to correct phylogenetic trees.
J Mol Evol 1987, 25:351360. PubMed Abstract  Publisher Full Text

Taylor WR: A flexible method to align large numbers of biological sequences.
J Mol Evol 1988, 28:161169. PubMed Abstract  Publisher Full Text

Corpet F: Multiple sequence alignment with hierarchical clustering.
Nuc Acids Research 1988, 16:1088110890. Publisher Full Text

Higgins D, Sharp P: CLUSTAL – A PACKAGE FOR PERFORMING MULTIPLE SEQUENCE ALIGNMENT ON A MICROCOMPUTER.
Gene 1988, 73:237244. PubMed Abstract  Publisher Full Text

Katoh K, Misawa K, Kuma K, Miyata T: MAFFT: a novel method for rapid multiple sequence alignment based on fast Fourier transform.
Nucleic Acids Res 2002, 30(14):30593066. PubMed Abstract  Publisher Full Text  PubMed Central Full Text

Katoh K, Kuma K, Toh H, Miyata T: MAFFT version 5: improvement in accuracy of multiple sequence alignment.
Nucleic Acids Res 2005, 33(2):511518. PubMed Abstract  Publisher Full Text  PubMed Central Full Text

Abdeddaïm S, Morgenstern B: Speeding up the DIALIGN multiple alignment program by using the 'Greedy Alignment of BIOlogical Sequences LIBrary' (GABIOSLIB).

Clarkson KL: A Modification of the Greedy Algorithm for Vertex Cover.
Information Processing Letters 1983, 16:2325. Publisher Full Text

Brudno M, Steinkamp R, Morgenstern B: The CHAOS/DIALIGN WWW server for Multiple Alignment of Genomic Sequences.
Nucleic Acids Research 2004, 32:W41W44. PubMed Abstract  Publisher Full Text  PubMed Central Full Text

Corel E, El Fegalhi R, Gérardin F, Hoebeke M, Nadal M, Grossmann A, Devauchelle C: Local Similarities and Clustering of Biological Sequences: New Insights from Nlocal Decoding. In The First International Symposium on Optimization and Systems Biology. Beijing, China; 2007:189195.

Didier G, Laprevotte I, Pupin M, Hénaut A: Local Decoding of sequences and alignmentfree comparison.
J Comput Biol 2006, 13(8):14651476. PubMed Abstract  Publisher Full Text

Morgenstern B, Rinner O, Abdeddaïm S, Haase D, Mayer K, Dress A, Mewes HW: Exon Discovery by Genomic Sequence Alignment.
Bioinformatics 2002, 18:777787. PubMed Abstract  Publisher Full Text

Morgenstern B: DIALIGN 2: improvement of the segmenttosegment approach to multiple sequence alignment.
Bioinformatics 1999, 15:211218. PubMed Abstract  Publisher Full Text

Thompson JD, Higgins DG, Gibson TJ: CLUSTAL W: improving the sensitivity of progressive multiple sequence alignment through sequence weighting, positionspecific gap penalties and weight matrix choice.
Nucleic Acids Research 1994, 22:46734680. PubMed Abstract  Publisher Full Text  PubMed Central Full Text

Edgar R: MUSCLE: Multiple sequence alignment with high score accuracy and high throughput.
Nucleic Acids Res 2004, 32(5):17921797. PubMed Abstract  Publisher Full Text  PubMed Central Full Text

Notredame C, Higgins D, Heringa J: TCoffee: a novel algorithm for multiple sequence alignment.
J Mol Biol 2000, 302:205217. PubMed Abstract  Publisher Full Text

Grasso C, Lee C: Combining partial order alignment and progressive multiple sequence alignment increases alignment speed and scalability to very large alignment problems.
Bioinformatics 2004, 20:15461556. PubMed Abstract  Publisher Full Text

Lee C, Grasso C, Sharlow MF: Multiple sequence alignment using partial order graphs.
Bioinformatics 2002, 18(3):452464. PubMed Abstract  Publisher Full Text

Do CB, Mahabhashyam MS, Brudno M, Batzoglou S: ProbCons: Probabilistic consistencybased multiple sequence alignment.
Genome Research 2005, 15:330340. PubMed Abstract  Publisher Full Text  PubMed Central Full Text

Gardner PP, Wilm A, Washietl S: A benchmark of multiple sequence alignment programs upon structural RNAs.
Nucleic Acids Res 2005, 33:24332439. PubMed Abstract  Publisher Full Text  PubMed Central Full Text

Wilm A, Mainz I, Steger G: An enhanced RNA alignment benchmark for sequence alignment programs.
Algorithms Mol Biol 2006, 2:19. BioMed Central Full Text

Thompson JD, Plewniak F, Poch O: A benchmark alignment database for the evaluation of multiple sequence alignment programs.
Bioinformatics 1999, 15:8788. PubMed Abstract  Publisher Full Text

Stoye J, Evers D, Meyer F: Rose: Generating Sequence Families.
Bioinformatics 1998, 14:157163. PubMed Abstract  Publisher Full Text

Wilcoxon F: Individual Comparisons by Ranking Methods.
Biometrics 1945, 1:8083. Publisher Full Text

DIALIGNTX [http://dialigntx.gobics.de/] webcite