Abstract
Background
Distancebased phylogeny inference methods first estimate evolutionary distances between every pair of taxa, then build a tree from the soobtained distance matrix. These methods are fast and fairly accurate. However, they hardly deal with incomplete distance matrices. Such matrices are frequent with recent multigene studies, when two species do not share any gene in analyzed data. The few existing algorithms to infer trees with satisfying accuracy from incomplete distance matrices have time complexity in O(n^{4}) or more, where n is the number of taxa, which precludes large scale studies. Agglomerative distance algorithms (e.g. NJ [1,2]) are much faster, with time complexity in O(n^{3}) which allows huge datasets and heavy bootstrap analyses to be dealt with. These algorithms proceed in three steps: (a) search for the taxon pair to be agglomerated, (b) estimate the lengths of the two socreated branches, (c) reduce the distance matrix and return to (a) until the tree is fully resolved. But available agglomerative algorithms cannot deal with incomplete matrices.
Results
We propose an adaptation to incomplete matrices of three agglomerative algorithms, namely NJ, BIONJ [3] and MVR [4]. Our adaptation generalizes to incomplete matrices the taxon pair selection criterion of NJ (also used by BIONJ and MVR), and combines this generalized criterion with that of ADDTREE [5]. Steps (b) and (c) are also modified, but O(n^{3}) time complexity is kept. The performance of these new algorithms is studied with large scale simulations, which mimic multigene phylogenomic datasets. Our new algorithms – named NJ*, BIONJ* and MVR* – infer phylogenetic trees that are as least as accurate as those inferred by other available methods, but with much faster running times. MVR* presents the best overall performance. This algorithm accounts for the variance of the pairwise evolutionary distance estimates, and is well suited for multigene studies where some distances are accurately estimated using numerous genes, whereas others are poorly estimated (or not estimated) due to the low number (absence) of sequenced genes being shared by both species.
Conclusion
Our distancebased agglomerative algorithms NJ*, BIONJ* and MVR* are fast and accurate, and should be quite useful for large scale phylogenomic studies. When combined with the SDM method [6] to estimate a distance matrix from multiple genes, they offer a relevant alternative to usual supertree techniques [7]. Binaries and all simulated data are downloadable from [8].
Background
Phylogeny inference methods can be classified into two main categories: characterbased (e.g. maximumparsimony or maximumlikelihood) and distancebased approaches. The latter have low running times which are quite useful (mandatory in some cases) to perform largescale studies and bootstrap analyses. A number of computer simulations [917] have shown that distance methods are fairly accurate, though not as accurate as likelihoodbased methods that are much more time consuming. Using any distancebased method first requires to estimate the pairwise evolutionary distances between every taxon pair. These distances are usually estimated from DNA, RNA or protein sequences, but can also be obtained from DNADNA hybridization experiments or, e.g., computed from morphological data (see [18] for a review on distance estimation from various data types).
In the last few years, phylogenomic studies (i.e. phylogeny reconstruction from large gene collections [7]) have instigated to the development of fast treebuilding techniques being able to infer trees from datasets comprising hundreds of genes and taxa. The lowlevel gene combination involves concatenating the different genes into a unique supermatrix of characters, and then analyzing this matrix with a standard tree building method. This approach was shown to perform poorly when combined with distance methods, due to inaccurate distance estimations from such large heterogeneous character matrix [6]. Better distancebased trees are obtained by extracting the phylogenetic information from each gene separately, and then combining resulting information sources into a unique distance supermatrix. The Average Consensus Supertree (ACS [19]) and Super Distance Matrix (SDM [6]) techniques input a collection of distance matrices being estimated from each gene separately (the socalled mediumlevel combination), or being equivalent to the gene trees (the highlevel combination). These distance matrices are deformed, without modifying their topological message, and then averaged to obtain the distance supermatrix, which is finally analyzed using a distancebased tree building algorithm.
Estimating the distance supermatrix is fast. However, missing entries may occur in distance supermatrices depending on the extent of taxon overlap within the source matrices. For example, with the two large data sets of Driskell et al. [20], which were collected from SwissProt and GenBank thanks to a computer program, the ratio of missing distances is ~19% and ~1.2%, respectively. These distances are missing because only a few genes are sequenced within each species, meaning that a number of species pairs do not share any sequenced gene in common and cannot be compared using available data. However, Driskell et al. showed that, despite the sparseness of data and the fact that only a small subset of these data is potentially phylogenetically informative, a topological signal still emerges, which provides useful insights into the tree of life (see [20] and below for details). Analogous findings were reported by a number of authors in various contexts [2123], and tree building from sparse data has become topical, as can be seen from the flourishing literature on supertrees.
However, tree building from incomplete distance matrices is NPhard [24], and thus practical algorithms are heuristics. The indirect approach involves first estimating missing distances by applying an ultrametric [25], additive [26], decompositionbased [27], or quartetbased [28] completion algorithm. The TREX package [29] provides several implementations of such algorithms to be used before tree building using any standard method with the completed matrix. The direct approach involves using a weighted leastsquares (WLS) algorithm and associating missing distances with null weight (i.e. infinite variance), which means that missing distances are simply discarded from WLS computations ([18], pp. 449). The FITCH algorithm [30] from the PHYLIP package [31] and the MWMODIF algorithm [32] from TREX implement this technique. A combination of both direct and indirect methods is provided by MW* [33] (also available in TREX); this algorithm first applies an ultrametric or additive completion algorithm (depending on the density of missing distances) and then infers a tree using MWMODIF, where weights are set to 1.0 for known distances, 0.5 for estimated distances, and 0.0 for missing distances (if any remain). All these (direct or indirect) algorithms have O(n^{4}) time complexity or more, where n is the number of taxa. This limits their application to mediumsized datasets (say 200 taxa without bootstrapping, see below).
Agglomerative algorithms are much faster and allow dealing with thousands of taxa, as soon as the distance matrix is complete. The most popular of them is the NeighborJoining (NJ) algorithm [1,2]. Starting from a star tree, agglomerative algorithms iteratively perform the three following steps, until the tree is completely resolved:
(a) select a taxon pair xy that is agglomerated into a new node u;
(b) estimate the length of the two socreated external branches ux and uy;
(c) replace x and y by u in the distance matrix, and estimate the new distances between u and the notyetagglomerated taxa.
Step (a) is more time consuming than the two other steps, because of testing all the O(n^{2}) taxon pairs to select the optimal one. To this purpose, NJ optimizes a numerical criterion that is denoted as Q_{xy}. This criterion admits several interpretations related to the Minimum Evolution principle [1,34], but also to the acentrality of the considered pair [35,36]. In this last interpretation (used here), Q_{xy }measures how much the path joining x to y is far from the other taxa i ≠ x, y. The xy pair maximizing Q_{xy }corresponds to the two taxa which are most distant from the other ones and is the best candidate for agglomeration. Another criterion, denoted as N_{xy}, is used by ADDTREE [5]; this second criterion is based on the four point condition [37,38] and counts the number of taxon quartets xyij where x and y are neighbors. When the distance matrix exactly corresponds to a tree (it is then said to be additive), N_{xy }indicates all pairs of sibling taxa in the tree, whereas Q_{xy }indicates just one such taxon pair. We shall see that this property of N_{xy }is a great advantage when dealing with incomplete distance matrices. Indeed, Q_{xy }is sometimes unusable whereas N_{xy }is still informative.
Steps (b) and (c) essentially correspond to distance averaging, which requires O(n) run time. These three steps being repeated n  2 times, agglomerative algorithms require O(n^{3}) time when using the Q_{xy }pair selection criterion, and O(n^{4}) with N_{xy }[39].
Several refinements of the NJ algorithm have been proposed. BIONJ [3] minimizes the variances associated to the new distances being estimated during each reduction step (c). This way, BIONJ makes use at each iteration of reliable distance estimates to select the new taxon pairs to be agglomerated. To this aim, BIONJ uses a simple Poisson model of the variances and covariances of the distances being contained in the initial distance matrix. BIONJ was generalized into the Minimum Variance Reduction algorithm (MVR [4]), a WLS variant of which can deal with any distance variance model, but which does not account for the distance covariances. It has been shown using computer simulations that this variant (named WLSMVR in [4] but referred here as MVR for simplicity) has similar accuracy as NJ when applied to distance matrices estimated from onegene alignments [4]. WEIGHBOR [40] further refines BIONJ approach and uses an agglomeration criterion which accounts for the variances of evolutionary distances. All these algorithms require O(n^{3}) time. Faster, sophisticated distancebased algorithms have been proposed in the last few years [4146], some of them being clearly more accurate than NJ and BIONJ (e.g. FASTME [42] and STC [44], in O(n^{2 }log(n)) and O(n^{2}), respectively).
In this paper, we propose an adaptation of the agglomerative scheme to quickly infer phylogenetic trees from incomplete distance matrices. We show that the Q_{xy }criterion may be rewritten to express the mean acentrality of the xy taxon pair. In the same way, the N_{xy }criterion may be rewritten to express the mean number of taxon quartets where x and y are neighbors. By estimating these two means using all available (nonmissing) distances, we define the two criteria and which allow for the selection of taxon pairs in step (a), even when the distance matrix is incomplete. Using these two new criteria in the agglomerative scheme requires O(n^{3}) and O(n^{4}) run time, respectively. A limitation of and is that they cannot be computed when the distance corresponding to the xy pair is missing (see Methods for more). However, this difficulty is inherent to the problem of building trees from incomplete distance matrices and is encountered (in various forms) by all methods to deal with this problem. Moreover, partly circumvents this difficulty thanks to its ability to indicate several relevant pairs, rather than a single one with (see Methods for more). As running requires O(n^{4}) time, we use a filtering technique: at each step (a) we use to select the s most promising pairs for agglomeration, and then use to select the best of these s pairs. This computational trick (and other refinements, see Methods) greatly improves the accuracy compared to using only, while requiring O(sn^{3}) time, where s is a small constant (s = 15 in our experiments). Finally, the original NJ, BIONJ and MVR formulae corresponding to steps (b) and (c) essentially are distance averaging and are easily adapted to incomplete matrices. The three new algorithms are named NJ*, BIONJ* and MVR*, respectively.
Results and Discussion
Several computer simulations are presented in this section to assess the performance of NJ*, BIONJ* and MVR*. We first compare the agglomeration criteria , and their combination with distance matrices that are additive, but contain missing entries. Then, using more realistic datasets, we compare NJ*, BIONJ*, MVR* to FITCH [30] and MW* [33], in terms of both topological accuracy and run times.
Comparison of agglomeration criteria
Our approach is similar to Makarenkov and Lapointe's [33]. We analyze with various algorithms and criteria a distance matrix with randomly deleted entries. The distance matrix we use is additive, i.e. is obtained from a tree by computing the path length distance between every taxon pair. Let T denote this tree and (T_{ij}) be the corresponding distance matrix, where T_{ij }is the pathlength (or patristic) distance between taxa i and j in T. When no entry is missing, such an additive matrix uniquely defines T, which is recovered by any consistent algorithms (as are all algorithms being tested here). When entries are missing in (T_{ij}), recovering T becomes a difficult task (see above), and we measure how well the algorithms perform when given an increasing number of missing distances. Such data thus are not realistic from a biological stand point, as evolutionary distances estimated from sequences are not additive, but this is a simple and standard approach to compare algorithms and agglomeration criteria.
We use for the correct tree T the phylogeny of 75 placental mammals from [6]. The percentage of missing entries is P_{miss }= 1%, 5%, 10%, 20%, 30%. For each P_{miss }value, 500 replicates are randomly generated. From each of these 5 × 500 incomplete additive distance matrices, a tree is inferred by FITCH, MW* and BIONJ*. Various values of the s parameter are tested for BIONJ*, in order to compare the topological accuracy of , , and of the combination of these two agglomeration criteria. With s = 1, BIONJ* uses only. With, s > 1, the taxon pairs corresponding to the s highest values of are reanalyzed with (and with other criteria when ties occur; see Methods). When s becomes large (which is denoted as s = max) BIONJ* uses only, as all taxon pairs are retained in the first selection step.
Each inferred tree is compared to the correct tree T by using the quartet distance d_{q }[47]. This topological distance measures the number of resolved 4taxon subtrees which are induced by one tree but not the other, and thus is more precise than the widely used bipartition distance [48] which counts the number of internal branches present in one tree but not in the other. Moreover, the quartet distance is less affected than the bipartition distance by small topological errors, e.g. wrong position of a single taxon [49]. This distance is normalized: d_{q }= 0 indicates that T and are identical, whereas d_{q }= 1 means that both trees do not share any resolved 4taxon subtrees. Averages of the 500 d_{q }measures for each P_{miss }value are displayed in Figure 1, for FITCH, MW*, and BIONJ* with various s values.
Figure 1. Topological accuracy depending on the rate of missing entries. Horizontal axis: percentage of missing distances (P_{miss}. Vertical axis: topological accuracy measured by the mean (over 500 trials) quartet distance (d_{q}) between the correct and inferred trees. s: number of taxon pairs that BIONJ* first selects using NJlike criterion (6), and then analyzes using scorebased criterion (9) (and criteria (8), (10), (11) in case of ties). The distance matrix is additive, and thus all methods recover the correct tree when P_{miss }= 0.
All curves in Figure 1 are decreasing; as expected, the correct tree T is better recovered (i.e. the mean d_{q }value between and T decreases) as the proportion of missing distance P_{miss }becomes closer to 0. Using in BIONJ* greatly improves the agglomeration step; e.g. with P_{miss }= 10%, mean d_{q }values of BIONJ* are ~0.0015 and ~0.0008, with s = 1 and s = 15, respectively. However, there is no significant difference between s = 15 and s = max (as assessed by a signtest [50] based on the 500 replicates, all pvalues are much larger than 0.05), meaning that a small value of s (e.g. s = 15) seems to be enough to focus on the most relevant pairs, while avoiding the computational burden of using only. Further experiments (see below) confirm this finding. FITCH and BIONJ* (with s = 15 and s = max) have similar accuracy, while MW* tends to perform better than the other algorithms with these data. However, we shall see that algorithm ordering is different with more realistic simulations. These experiments thus confirm the advantage of combining and within BIONJ*, and similar results (not shown) are obtained with NJ* and MVR*.
Comparison of reconstruction algorithms with distance supermatrices
We reuse a simulation protocol that we have used previously to compare a number of treereconstruction methods in a phylogenomic context [6]. This protocol involves generating sequences and evolving them along trees, and is more realistic than the comparison described above. We first summarize this protocol, and then report the results that are obtained with the simulated datasets by FITCH, MW*, NJ*, BIONJ* and MVR*. To estimate the distance supermatrix that is the input of these algorithms, we use the SDM method ([6], see also Methods) which computes a supermatrix that summarizes the topological signal being contained in a collection of k distance matrices. Simulations [6] have shown the highquality of this distance supermatrix in both medium and highlevel gene combinations.
Simulations are as follows (see [6] for more details). Starting from a randomly generated tree T with n = 48 taxa, evolution of k genes is simulated, with k = 2, 4, ..., 20. For each of the k genes, some taxa are randomly deleted. Two deletion probabilities are used: 25% to preserve high overlap between the different taxon sets, and 75% to induce low overlap. From these k partially deleted gene alignments, k distance matrices are estimated to compose the collection C_{Δ }of source matrices. The SDM method is then run with C_{Δ }to obtain a distance supermatrix corresponding to a mediumlevel combination of the k partially deleted genes. To study the highlevel combination, a phylogenetic tree is inferred by PhyML [17] from each of the k partially deleted genes; then, the path length distance between each taxon pair for each of the k phylogenies is computed, to form the collection C_{T }of k additive distance matrices that are equivalent to the k PhyML trees. Finally, SDM is applied to C_{T }to obtain a distance supermatrix corresponding to a highlevel gene combination.
This simulation protocol is repeated 500 times for each value of k and each deletion proportion. We obtain this way (10 gene collection sizes × 500 collections × 2 overlap conditions × 2 gene combination levels) = 20,000 distance supermatrices, which are denoted as () and are frequently incomplete. Indeed, if taxon i is missing for gene p, then is missing – which is denoted as = ∅—, and if = ∅ for all p = 1,2, ..., k, then = ∅. With 25% deletion rate, almost all distance supermatrices are complete when k ≥ 14. With 75% deletion rate, all distance supermatrices are incomplete, but the number of missing distances decreases as k increases (missing distance proportions range from 42% to 11%).
FITCH and MW* are run with default options. In accordance with Figure 1, s is set to 15 for NJ*, BIONJ* and MVR*. With BIONJ*, V_{ij }variances (associated with distance estimates) are naturally defined by V_{ij }∝ if ≠ ∅, else V_{ij }= ∅. Variances used by MVR* comply with the same rule, but account for other parameters such as the length and the number of sequences being used to estimate each distance (see Methods). Accuracy of the five algorithms is measured with the topological distance d_{q}, as above, and averaged for the 500 replicates corresponding to each of the conditions. Results are reported in Table 1 for the mediumlevel gene combination, and in Table 2 for the highlevel gene combination. For each value of k, the first and secondbest mean d_{q }values are indicated in bold&underlined and bold, respectively, and a signtest [50] based on the 500 replicates is used to assess the significance of the difference between these two best values.
Table 1. Topological accuracy with mediumlevel distance supermatrices
Table 2. Topological accuracy with highlevel distance supermatrices
In the mediumlevel gene combination, NJ* and MW* are outperformed by other algorithms. With a 25% deletion rate, BIONJ* has best topological accuracy, followed by FITCH. However, the signtest indicates that the difference between these two algorithms is moderately significant as the pvalue is lower than 0.05 for only five k values (= 6, 8, 12, 16, and 18). With a 75% deletion rate, FITCH is best, but again the signtest shows that FITCH, BIONJ* and MVR* are broadly equivalent.
With highlevel combination distance supermatrices, NJ* and MW* still tend to be outperformed by other algorithms. BIONJ* is in between, and the best mean d_{q} values are observed with MVR* which is followed by FITCH. The signtest broadly confirms the significance of this observation, though the accuracy difference between MVR* and FITCH is relatively low.
Altogether, these experiments show that MVR* is at least as accurate as FITCH, that BIONJ* has similar performance, while NJ* and MW* are behind these three algorithms. Comparing these findings with the results from (see Figure 2 in [6]), we see that (in the highlevel framework, Table 2) MVR* is more accurate than the standard Matrix Representation with Parsimony method (MRP, [51,52]), in most cases; e.g. with k = 10, MVR* has mean d_{q }values of 0.0171 and 0.0663, for 25% and 75% deletion rate, respectively, while mean d_{q }values of MRP equal 0.0175 and 0.1152. MVR* (combined with SDM) outperforms MRP with sparse information (75% deletion rate and/or low number of genes), while both approaches are nearly equivalent when the information is abundant (25% deletion rate). An explanation [53] of this finding could be that the distance approach not only uses the topology of the source trees (as MRP) but also their branch lengths. Distancebased supertrees thus contain more information than MRP supertrees, which makes a noticeable difference when the information is sparse, but does not impact much the results with abundant information (see also following simulation results).
Results with simulations based on Driskell et al. [20] dataset
This section aims to measure the accuracy of the different tree building algorithms when applied to simulated datasets being more realistic than those commonly used in a phylogenomic perspective. Most notably, uniformly random gene deletion (used in previous section, following [54]) is not fully realistic because some genes (e.g. cytochrome b) are sequenced for most species, while some other genes are rarely sequenced (or rare among living species). It follows that the gene presence/absence pattern is different with real datasets to this being induced by uniformly random gene deletion (see [20,5557] for illustrative examples). To this purpose, we use the character supermatrix from Driskell et al. [20], which comprises 69 green plant species and 254 genes, and was built via an automated exploration process of GenBank. This matrix contains a total number of 2777 sequences and has 87% missing characters, which are unequally distributed among taxa. Only 3 taxa have more than 50% genes, whereas 42 have 10% genes or less. In the same way, a few genes are present in most taxa (e.g., the 2 most sequenced genes belong to 59 taxa), whereas other genes are rare (e.g. 121 genes are present in at most 5 taxa). However, these k = 254 genes are complementary and the SDM distance supermatrix only contains ~1.2% missing entries. This low proportion of missing entries is favorable to tree reconstruction, but still requires an algorithm able to deal with incomplete matrices.
We use a simulation protocol analogous to that described above [6]. The only difference is the deletion procedure, with random deletion replaced by the gene presence/absence pattern of (see Figure 2B in [20]). We generate 100 datasets this way with n = 69 taxa and k = 254 genes. From these 100 datasets, we infer 100 distance matrix collections C_{Δ }and 100 tree collections C_{T}. Each of these 2 × 100 collections is dealt with by SDM, to obtain a distance supermatrix () that contains the same missing entries as those induced by the original dataset [20]. We use these matrices to compare FITCH, MW*, NJ*, BIONJ* and MVR*, based on d_{q }quartet distance between the correct and inferred trees (see above). Our three algorithms are run with both s = 15 and s = max. Results of MRP are also computed, using TNT [58] to infer the most parsimonious trees. TNT is run with 25 random addition sequences, TBR branch swapping and ratchet. The MRP supertree is defined in the standard way [59] as the strict consensus of the most parsimonious trees. Results are displayed in Table 3, which is similar to Tables 1 and 2; the first and secondbest mean d_{q} values are indicated in bold&underlined and bold, respectively, and signtests are used to assess the significance of the differences between MVR* (our best algorithm), FITCH and MRP.
Table 3. Topological accuracy with datasets generated from Driskell et al. [20]
NJ*, BIONJ* and MVR* do not show any significant difference when used with s = 15 and s = max (as assessed by the signtest, all pvalues are much larger than 0.05, results not shown). This confirms the results of the previous experiments to compare our various agglomeration criteria. NJ* has the worst accuracy, especially in the highlevel combination framework. MW*, FITCH and BIONJ* show similar performance, while MVR* is best among distance approaches in the two gene combination levels. Moreover, the difference between MVR* and FITCH is highly significant (signtest pvalue ≈ 0.0). In the highlevel framework, MVR* tends to be better than MRP, although the information is quite abundant (254 genes, ~1.2% of missing distances); however, the difference is not significant with 100 replicates (signtest pvalue ≈ 0.2). The results among distance methods are explained by the fact that MVR* uses fairly accurate estimates () of the variances of the distances in (). Indeed, dataset [20] induces a highly heterogeneous distribution of missing sequences, meaning that some distances are well estimated thanks to a large number of sequences, while some others are poorly estimated via a few sequences. This is accounted for by MVR* in () calculations (see Methods), while MW*, FITCH and BIONJ* lack this information and use inaccurate estimations of (). The difference between these two approaches (i.e. MVR* on the one hand, and MW*, FITCH and BIONJ* on the other hand) is somewhat hidden when using uniformly random sequence deletion, because with the latter all distances are broadly estimated with the same number of genes. With biologically realistic pattern of gene presence/absence, the difference becomes important, especially for the highlevel combination. Thus, this last set of simulations confirms the findings of the previous ones and supports the capacity of MVR* for dealing with phylogenomic data.
Run time comparison
Run times with various dataset sizes have been measured on a PC Pentium IV 1.8 GHz (1 Gb RAM) and are displayed in Table 4. We do not report the run times of NJ* and BIONJ*, as they are nearly the same as those of MVR*. In fact, NJ* and BIONJ* are ~2% faster than MVR*, because they are simpler, but these simplifications does not concern the heavy O(n^{3}) parts of the algorithms (see Methods). We also report the run times of SDM [6], which are in the same range as the fastest tree building algorithms, except with Driskell et al. [20]like datasets, where SDM has to summarize a large number (254) of source matrices, but where the number of taxa (69) is relatively low. In this case, the run time of SDM is analogous to that of FITCH and MW* and remains quite handy (~5 minutes per dataset).
Table 4. Run times
As expected from their mere principle, the run times of the various tree building algorithms are not much affected by the proportion of missing distances, which is induced by the taxon deletion rate (25% or 75%) and the number of source matrices (k). The only apparent exceptions correspond to k = 2 and 75% deletion rate, where all algorithms seem to be quite fast; but in this case the distance supermatrices are of low size (~20, ~42 and ~85 for n equal to 48, 96 and 192, respectively), which explains this finding. Indeed, in this case it occurs frequently that some taxa have no gene (among 2) in common with any of the other taxa, and such taxa cannot be analyzed as all their distances to the other taxa are missing.
With 25% taxon deletion proportion, n = 48 and k = 10, run times of ~3 hours and ~5 hours are required by FITCH and MW*, respectively, to build the 500 trees corresponding to all gene collections in any given gene combination level. The same task, which induces calculations similar to bootstrapping, is achieved in ~30 seconds by any of our agglomerative algorithms. The difference between the agglomerative algorithms and the others increases when the number of taxa increases, as expected given that their time complexity are O(sn^{3}) (i.e. O(n^{3}) as s is kept constant) and O(n^{4}) or more, respectively. With 192 taxa, FITCH and MW* require more than 3 hours to build a single tree, while the agglomerative algorithms require less than 1 minute; this run time makes easy to perform a bootstrap study with our algorithms, but pretty much impossible with FITCH or MW*. With even larger datasets (say, above 500 taxa) neither FITCH nor MW* can be used to build a single tree, while our algorithms still run in a few minutes.
Conclusion
Thanks to the ever increasing flow of sequence data, phylogenomic analyses and supertree buildings are more and more frequently used to draw the evolutionary tree of living species. Larger and larger datasets are processed, requiring sophisticated approaches and algorithms. In this context, distancebased methods are quite useful, as they are both very fast and fairly accurate. New techniques, such as SDM [6], allow quickly estimating distance supermatrices that summarize the topological signal being contained in a collection of source distance matrices or gene trees. However, these supermatrices may be incomplete due to low taxon coverage in the selected genes. In this (common) case, fast distancebased tree building algorithms such as NJ, BIONJ, FASTME or STC are no longer applicable.
This paper presents an adaptation to incomplete distance matrices of several agglomerative algorithms, namely NJ, BIONJ and MVR. We show that the formulae forming the basis of these algorithms can be rewritten to account for missing distances. Moreover, the same holds for the quartetbased pair selection criterion of ADDTREE. Combining both NJ and ADDTREE generalized pair selection criteria, we obtain fast and accurate algorithms that require O(n^{3}) run times, where n is the number of taxa, i.e. run times that are similar to NJ's. These three novel algorithms, named NJ*, BIONJ* and MVR*, show (in our simulations) topological accuracy similar or higher to that of FITCH and MW*, which are much more time consuming. MVR* appears to be best, followed by BIONJ*. In a phylogenomic context, MVR* accounts for (and benefits from, regarding other algorithms) the fact that gene distribution among species is very heterogeneous, which implies that some distances are accurately estimated (using numerous genes) while some others are poorly estimated (with few genes). Combined with the SDM method [6] to estimate distance supermatrices, MVR* and BIONJ* are relevant alternatives to standard supertree techniques [7], as MRP [51,52]. JAVA implementations of these algorithms are available in PhyD* software and downloadable from [8]. All our datasets are also available from this URL.
Several research directions would deserve to be explored. The variances and covariances of the distance estimates in the distance supermatrix could be accounted for in a more complete and accurate way, e.g. in the line of WEIGHBOR [40] for the pair selection criterion, or using the generalized leastsquares version of MVR [4]. There is a clear need for a pair selection criterion being able to point out xy taxon pairs, even when the corresponding Δ_{xy }distance is missing. Theoretical results highlighting the cases where our algorithms will succeed (or fail) in recovering the correct tree, would likely help to improve these algorithms or design new ones. Adapting to missing distances very fast algorithms [4146] could be promising. Finally, dealing with missing distances is likely required in other (non phylogenomic) applications of phylogenetic trees, and in related problems, as phylogenetic network inference [60].
Methods
Existing agglomerative algorithms are defined by criteria and formulae which all can be rewritten as distance averages. These algorithms (e.g. NJ [1,2], BIONJ [3] and MVR [4]) are generalized to incomplete distance matrices by estimating these averages using available distances, when some of those are missing. In the following, we first define notation and present a generic agglomerative scheme that covers all the algorithms being discussed here. Then, we describe for each of the three agglomeration steps (pair selection, branch length estimation, and matrix reduction), how NJ is generalized into NJ* to deal with missing distances. NJ* is further refined by BIONJ* that incorporates a first simple estimation of the variance associated to each evolutionary distance. Finally, a second, more accurate estimation of this variance is used by MVR* that generalizes the weighted leastsquares (WLS) version of the MVR [4] approach.
Notation
Let L_{n }= {1,2, ..., n} be the set of all taxa numbered from 1 to n, and (Δ_{ij}) a distance matrix, where Δ_{ij }corresponds to the evolutionary distance between taxa i, j ∈ L_{n}, and Δ_{ii }= 0, ∀i ∈ L_{n}. Distancebased algorithms build a tree T (also denoted as , depending on the context) from (Δ_{ij}), and estimate all branch lengths T_{uv}, where uv is any pair of sibling nodes in T. At each agglomeration stage, a taxon pair xy is selected, connected to a new internal node u, and replaced by u in (Δ_{ij}). Thus, at each stage, the set L_{r }= {1,2, ..., r} of nonagglomerated taxa drops in cardinality by 1, and r is changed into r  1. Tree reconstruction stops when r = 2.
Agglomerative algorithms with complete distance matrices
A number of existing agglomerative algorithms to deal with complete matrices can be summarized using the following scheme [4]:
• Input L_{n }= {1,2, ..., n} and (Δ_{ij});
• r = n;
• While r > 2, do:
(a) Select the xy pair to be merged into u by optimizing an agglomeration criterion;
(b) Estimate the branch lengths T_{xu }and T_{yu}:
(c) Reduce the distance matrix (Δ_{ij}) for all i ≠ x, y:
(d) r = r  1;
• Output T.
Step (a) in this generic scheme searches for the taxon pair xy to be merged by optimizing an agglomeration criterion. NJ, BIONJ and MVR select the pair which maximizes [1,2]:
Let (Δ_{ij}) be additive [61], i.e. be defined as the pathlength distance between taxa in a phylogenetic tree T with positive branch lengths; then, maximizing Q_{xy }over all taxon pairs selects a cherry of T, i.e. a pair of taxa being separated by a unique internal node in T. In other words, Q_{xy }is consistent [36]. However, it is easily shown (using counterexamples) that the second best taxon pair (based on Q_{xy }values) is not necessarily a cherry of T.
Conversely, the ADDTREE [5] pair selection criterion implies that all cherries of T have highest criterion value. The ADDTREE criterion counts the number of times where the xy pair is a cherry in all taxon quartets xyij:
where H(t) = 1 if t ≥ 0, and H(t) = 0 if t < 0. This criterion has integer values ranging from 0 to (n  2)(n  3)/2, and this maximum value is reached for all cherries (but for the cherries only) with additive distance matrices. Careful implementation [39] of ADDTREE allows for O(n^{4}) run time. NJ, BIONJ and MVR are much faster. They first compute all R_{z }sums in Equation (3), and then compute in O(1) the Q_{xy }value of each xy pair. Each agglomeration stage thus requires O(r^{2}) time (branchlength estimation and matrix reduction are achieved in O(r)), and the whole algorithm is in O(n^{3}). Moreover, Q_{xy }can be seen as a continuous version of N_{xy }[62].
After xy pair selection, x and y are connected to the new node u, and the lengths of xu and yu branches are estimated using Equation (1). Assuming that (Δ_{ij}) is additive and corresponds to tree T, we have T_{xu }= (Δ_{xy }+ Δ_{xi } Δ_{yi})/2, ∀i ≠ x, y. Equation (1) averages these elementary estimators using various (w_{i}) weightings. With NJ, the average is equallyweighted and we have w_{i }= w = 1/(2(r  2)). We shall see that MVR uses different w_{i }weights.
Finally (step (c)), (Δ_{ij}) is reduced by replacing x and y with the new node u, and by computing all Δ_{ui }distances, ∀i ≠ x, y. When (Δ_{ij}) is additive and corresponds to tree T, we have Δ_{ui }= Δ_{xi } T_{xu }= Δ_{yi } T_{yu}. Equation (2) averages these two elementary estimators. NJ uses equal weights (λ_{i }= 1  λ_{i }= 1/2) while BIONJ and MVR adjust λ_{i }in order to minimize the variance of Δ_{ui }and to have reliable distance estimates during all agglomeration stages. For this purpose, BIONJ and MVR use (approximate) models for the variances and covariances of the distance estimates in (Δ_{ij}).
NJ*: generalizing NJ to incomplete distance matrices
When (Δ_{ij}) is incomplete (missing entries are denoted as ∅), the criteria and equations above do not apply. We shall see in this section how they are generalized to define the NJ* algorithm, which keeps NJ's O(n^{3}) time complexity and is nearly equivalent to NJ with complete matrices.
(a) Agglomeration criterion
Let = Q_{xy}/(r  2). Maximizing is the same as maximizing Q_{xy }(Equation (3)), and we have:
which can be rewritten as:
The sum in Equation (5) relates to terms representing how distant is the path joining x to y from other taxa i ≠ x, y (Δ_{xi }+ Δ_{yi } Δ_{xy} equals twice the distance between u and i), whereas the first term expresses the additional distance induced by Δ_{xy}. It has been shown [63,64] that the relative weight of these two factors is unique, due to consistency requirement, and can be interpreted as the mean acentrality of the xy pair [35,36]. To extend this criterion to incomplete distance matrices, we estimate it using the set of taxa with nonmissing distances: = {i ∈ L_{r }: Δ_{xi}, Δ_{yi }≠ ∅}. Moreover, we assume Δ_{xy }≠ ∅, and thus x, y ∈ . The normalization factor is then equal to   2 (instead of r  2) and we obtain the following generalization of Equation (5):
which applies to incomplete distance matrices, and is identical to with complete ones. This equation further simplifies into:
Other solutions are possible to extend Equation (5), e.g. preserving Δ_{xy}/(r  2) term rather than transforming it into Δ_{xy}/(  2). Simulation results (not shown) indicate that criterion (6) has better topological accuracy than these alternatives. Theoretical results would be desirable to explain these observations and establish the properties of criterion (6), but a first simple explanation is that Equation (6) precisely corresponds to the value being computed on taxon subset. To be consistent on the whole set of taxa (L_{r}), it is mandatory that the criterion is consistent on taxon subsets (, here), and Equation (6) satisfies this requirement.
Maximizing seems to require O(r^{3}) time for each iteration, and thus a total time complexity of O(n^{4}). However, efficient implementation allows for O(n^{3}) total run time. At the first stage (r = n), and  values are computed and stored for all x, y ∈ L_{n}, which requires O(n^{3}) time. In the subsequent agglomeration stages, these values are updated as follows:
• After step (a), for all i, j ∈ L_{r } {x, y} we remove from and  : Δ_{xi }and Δ_{xj }(if Δ_{xi }≠ ∅ and Δ_{xj }≠ ∅), and Δ_{yi }and Δ_{yj }(if Δ_{ui }≠ ∅ and Δ_{uj }≠ ∅).
• After step (c), we compute and  for all i ∈ L_{r } {u}, and
• for all i, j ∈ L_{r } {u}, we add Δ_{ui }and Δ_{uj }to and  (if Δ_{ui }≠ ∅ and Δ_{uj }≠ ∅).
Each of these three updating routines requires O(r^{2}) time, just as pair selection using criterion (6), meaning that using instead of Q_{xy }does not change the total O(n^{3}) time complexity of the original NJ algorithm.
However, as discussed earlier, a limitation of criterion is that: (1) it cannot be computed when Δ_{xy }= ∅, and (2) only the best pair is guaranteed (with additive distance) to be a cherry in the correct tree. When xy is the best pair in the complete additive distance matrix, but Δ_{xy }is missing in the available distance matrix, then using does not provide any guaranty of correctness. This difficulty is partly alleviated when using a generalization of N_{xy}, as this criterion selects all cherries in the correct tree with complete additive distances. When some of the cherries correspond to missing distances, we are still able to select the others that correspond to nonmissing entries. Our generalization of N_{xy }(Equation (4)) to incomplete distances is defined as follows. Let:
differs from N_{xy }in that we sum both H terms, instead of multiplying them. This way we exploit all available information. Indeed, when Δ_{xj }= ∅ and/or Δ_{yi }= ∅ but the other entries are available, we still use H(Δ_{xi }+ Δ_{yi } Δ_{xy } Δ_{ij}) in while a multiplicative solution in the line of N_{xy }would discard this term. Moreover, it is easily seen that = 2N_{xy }with complete additive distances. To select among taxon pairs, we use the averaged form of , that is:
which expresses the mean number of quartets where the xy pair corresponds to a cherry.
However, selecting pairs using sometimes produces ties. In this case, we select the pair with higher  value, that is the pair which is supported by the larger number of quartets. But ties may still occur, in which case we use:
where Miss(z) = {i ∈ L_{r}, ≠ z : Δ_{iz }= ∅ } corresponds to missing entries for taxon z. counts the number of missing entries in the current matrix that will be removed in the next step (see reduction procedure (13)). Maximizing tends to quickly fill missing entries in the running distance matrix, which both frees from Δ_{xy }≠ ∅ limitation and allows using Q_{xy }pair selection criterion only. Finally, in some (very rare) cases, we still have ties and then maximize the continuous version [62] of :
Pair selection criteria (9),  (8), (10) and (11) are used in a lexicographic way: taxon pairs are ranked based on the first criterion (), the second one () is used in case of ties, etc. However, using these four criteria only would result in O(n^{4}) time complexity. In order to preserve O(n^{3}) run times, we first select the s top pairs based on criterion (6), and then use the other criteria in lexicographic order to select the pair to be agglomerated among these s pairs. As computing Equations (7) to (11) requires O(r^{2}) or less per taxon pair, the total time complexity of pair selection is O(n^{3}) (first selection using (6)) plus O(s∑r^{2}) (final selection using (8) to (11)), i.e. O(n^{3}). As explained above, does not provide any guaranty of correctness with missing distances, while and partly circumvent the difficulty. However, enables to extract the most promising pairs for agglomeration and we have seen (Figure 1) that using for s a small constant (typically 15) is sufficient to obtain high accuracy, meaning that, in practice, run times are in O(n^{3}).
(b) Branch length estimation
Equation (1) is easily rewritten using nonmissing entries only:
NJ uses the same weight w_{i }for every taxon i. The same holds for NJ*, that is, w_{i }= w = 1/(2(  2)). Note that for the selected pair we have Δ_{xy}, ≠ ∅, meaning that Equation (12) is always applicable. Just as with NJ, branch length estimation (12) requires O(r) time at each agglomeration stage.
(c) Matrix reduction
Equation (2) averages two elementary estimators, and with NJ this average is equally weighted. With missing distances it may occur that one of these two estimators is not applicable (e.g. when Δ_{xi }≠ ∅), that both are applicable, or that none is applicable. Thus, in NJ* Equation (2) becomes:
where λ_{i }= λ = 1/2. In the second and third cases, entries missing in the previous matrix are now present in the new, reduced matrix. We have seen that criterion (10) tends to maximize the number of such entries, in order to fill as fast as possible the missing distances in the running matrix. Just as branch length estimation (12), matrix reduction (13) requires O(r) time at each stage and does not impact total time complexity. Thus, NJ* requires O(n^{3}) run times, when s is kept constant.
BIONJ*: improving the reduction step, a first simple solution
BIONJ* uses the same pair selection criteria as NJ*, and adapts to missing distances BIONJ reduction procedure. BIONJ uses the degree of freedom corresponding to the λ_{i }parameter in Equation (2), in order to minimize the variance of the new Δ_{ui }estimates in step (c). For this purpose, BIONJ assumes a simple Poisson model of the variances in the original (Δ_{ij}) matrix, stating that the variance V_{ij }of Δ_{ij }is proportional to Δ_{ij}. BIONJ also accounts for the covariances in (Δ_{ij}) (see [3] for more details). It uses a single λ parameter for every xy pair, which does not depend on i and is given by
Again, this equation may be seen as an average and can be rewritten using available entries only as:
The reduction step (c) is achieved by BIONJ* as defined by Equation (13), but using sodefined λ* (instead of 1/2) when Δ_{xi }≠ ∅ and Δ_{yi }≠ ∅.
Moreover, BIONJ starts with variance matrix (V_{ij}) = (Δ_{ij}) and reduces this matrix at each stage using λ value from Equation (14) and equation:
BIONJ* combines this formula with Equation (13) and (15) to reduce the variance matrix, that is:
Computing λ* using Equation (15) and achieving matrix reductions (13) and (16) requires O(r) run times. Thus, BIONJ* has O(n^{3}) time complexity (when s is kept constant, else O(sn^{3})).
MVR*: improving BIONJ* using variances dedicated to distance supermatrices
The BIONJ variance model is well suited for onegene studies where distance estimations all use the same number of sites (at least when gaps are removed). With phylogenomic studies, some distances are computed using a large number of genes, and thus are reliable, while other distances are based on a few genes and are poorly estimated. Moreover, some distances may be missing due to the absence of common genes between the two species being compared. Altogether, this implies that the BIONJ and BIONJ* variance model can be improved to better fit phylogenomic requirements. This section describes the MVR* algorithm that is intended to this purpose.
Steps (b) and (c) in the generic scheme are based on w_{i }and λ_{i }parameters, respectively. The MVR algorithm [4] generalizes the BIONJ approach and uses these degrees of freedom in order to minimize the variance of the new estimates T_{ux}, T_{uy }and Δ_{ui}. The main difference from BIONJ is that MVR is able to deal with any variancecovariance model of the δ_{ij }distance estimates, while BIONJ is restricted to the Poisson model. The MVR variant that we use here only considers the variances and neglects the covariances, thus assuming a weighted leastsquares model (it was called MVRWLS in [4], but is named MVR here for simplicity). Thus, MVR inputs a distance matrix (Δ_{ij}) and the corresponding (V_{ij}) variance matrix. We shall see in the next section how (V_{ij}) is calculated to deal with phylogenomic data, and describe now the way MVR and MVR* use and update these matrices all along the agglomeration procedure.
MVR uses Q_{xy }pair selection criterion (3), just as NJ and BIONJ, while MVR* uses the same criteria and selection procedure as NJ* and BIONJ*.
In MVR step (b), i.e. branch length estimation, w_{i }weights in Equation (1) depend on i and are given by:
MVR* uses Equation (12) (instead of Equation (1)) to deal with missing entries, and adapts above Equation (17) by replacing L_{r }by .
In MVR step (c), i.e. matrix reduction, a different λ_{i }parameter is associated in Equation (2) to each taxon i ≠ x, y using:
This value puts more weight and confidence on (Δ_{xi } T_{xu}) when the associated variance V_{xi }is low, compared to V_{yi}. Equation (18) is also used by MVR*, but combined with Equation (13) to deal with missing distances.
Finally, MVR (just like BIONJ) reduces the variance matrix at each agglomeration stage. To this purpose, MVR uses the following equation:
This equation is also used by MVR* in combination with Equation (16).
All the computations described above (except pair selection) require O(r) run times at each agglomeration stage, and thus MVR* has O(n^{3}) time complexity, just as do NJ* and BIONJ*.
Estimating the variances associated to distance supermatrices
Distance supermatrices are computed [6,19] from source matrices which are first rescaled, and then averaged. SDM [6] inputs a collection C = of k distance matrices – each defined on taxon set L_{p }and estimated from sequences with size s_{p}—, and deforms them, without changing their topological signal, so as to bring them as close as possible to each other before averaging. The first deformation is scaling, which multiplies each () distance matrix by a factor α_{p}. The second (optional in SDM) deformation adds a constant a_{ip }to every nondiagonal entries. Then, SDM averages the resulting modified matrices to obtain the () supermatrix that is defined by:
Neglecting the variance of the deformation factors, we obtain a simple expression of the variance of :
where is the variance of . Note that no covariance terms between any and estimates appear in Equation (20), as these source distances are estimated from different genes and are independent. Moreover, the covariances between the entries in the SDM supermatrix are neglected, as is the case in a number of (WLS) approaches [30,32,40].
Several studies have shown that the variance V_{ij }associated with the evolutionary distance Δ_{ij }(estimated from a single gene) is approximately equal to with ρ ≈ 2 [11,65]. Based on various experiments (not shown), we have chosen the usual formula , which corresponds to default option in FITCH program. Equation (20) then becomes:
Authors' contributions
AC designed and implemented the algorithms and experiments, performed the computations that are shown here, and wrote the manuscript. OG supervised these works, participated in the design of algorithms and experiments, and wrote the manuscript.
Acknowledgements
Sincere thanks to Vincent Berry, Richard Desper, Emmanuel J.P. Douzery and two anonymous referees for their suggestions and comments. This research was supported by SUPERTREE project of ACIIMPBIO. Part of the work was carried out when OG participated to the Phylogenetics programme at Isaac Newton Institute for Mathematical Sciences, Cambridge, UK.
References

Saitou N, Nei M: The neighborjoining method: a new method for reconstructing phylogenetic trees.
Mol Biol Evol 1987, 4:406425. PubMed Abstract  Publisher Full Text

Studier JA, Kepler KJ: A note on the neighborjoining method of Saitou and Nei.
Mol Biol Evol 1988, 5:729731. PubMed Abstract  Publisher Full Text

Gascuel O: BIONJ: an improved version of the NJ algorithm based on a simple model of sequence data.
Mol Biol Evol 1997, 14:685695. PubMed Abstract  Publisher Full Text

Gascuel O: Data model and classification by trees: the minimum variance reduction (MVR) method.

Criscuolo A, Berry V, Douzery EJP, Gascuel O: SDM: a fast distancebased approach for (super)tree building in phylogenomics.
Syst Biol 2006, 55(5):740755. PubMed Abstract  Publisher Full Text

BinindaEmonds ORP: Phylogenetic supertree: combining information to reveal the tree of life. Kluwer Academic, New York; 2004.

Downloadable PhyD* software from ATGC Montpellier bioinformatics platform [http://www.atgcmontpellier.fr/phyd/] webcite

Sourdis J, Nei M: Relative efficiencies of the maximum parsimony and distancematrix methods in obtaining the correct phylogenetic tree.
Mol Biol Evol 1988, 5(3):298311. PubMed Abstract  Publisher Full Text

Saitou N, Imanishi T: Relative efficiencies of the FitchMargoliash, maximumparsimony, maximumlikelihood, minimumevolution and neighborjoining methods of phylogenetic tree construction in obtaining the correct tree.

Kuhner MK, Felsenstein J: A simulation comparison of phylogeny algorithms under equal and unequal evolutionary rates.
Mol Biol Evol 1994, 11(3):459468. PubMed Abstract  Publisher Full Text

Strimmer K, von Haeseler A: Accuracy of neighborjoining for ntaxon trees.

Nei M, Kumar S, Takahashi K: The optimization principle in phylogenetic analysis tends to give incorrect topologies when the number of nucleotides or amino acids used is small.

Kumar S, Gadagkar SR: Efficiency of the neighborjoining method in reconstructing deep and shallow evolutionary relationship in large phylogenies.
J Mol Evol 2000, 51(6):544553. PubMed Abstract  Publisher Full Text

Takahashi K, Nei M: Efficiencies of fast algorithms of phylogenetic inference under the criteria of maximum parsimony, minimum evolution, and maximum likelihood when a large number of sequences are used.
Mol Biol Evol 2000, 17:12511258. PubMed Abstract  Publisher Full Text

Rosenberg MS, Kumar S: Traditional phylogenetic reconstruction methods reconstruct shallow and deep evolutionary relationship equally well.
Mol Biol Evol 2001, 18(9):18231827. PubMed Abstract  Publisher Full Text

Guindon S, Gascuel O: A simple, fast and accurate algorithm to estimate large phylogenies by maximum likelihood.
Syst Biol 2003, 52(5):696704. PubMed Abstract

Swofford DL, Olsen GJ, Waddell PJ, Hillis DM: Phylogenetic inference. In Molecular Systematics. Edited by Hillis DM, Moritz C, Mable BK. Sinauer Associates, Massachussets; 1996:407509.

Lapointe FJ, Cucumel G: The average consensus procedure: combination of weighted trees containing identical or overlapping sets of taxa.

Driskell AC, Ané C, Burleigh JG, McMahon MM, O'Meara BC, Sanderson MJ: Prospects for building the tree of life from large sequence databases.
Science 2004, 306:11721174. PubMed Abstract  Publisher Full Text

Philippe H, Snell EA, Bapteste E, Lopez P, Holland PWH, Casane D: Phylogenomics of eukaryotes: Impact of missing data on large alignments.
Mol Biol Evol 2004, 21(9):17401752. PubMed Abstract  Publisher Full Text

Galtier N: A model of horizontal gene transfer and the bacterial phylogeny problem.
Syst Biol 2007, 56(4):633642. PubMed Abstract  Publisher Full Text

Steel M, Rodrigo A: Maximumlikelihood Supertrees.
Syst Biol 2008, in press. PubMed Abstract  Publisher Full Text

Farach M, Kannan S, Warnow T: A robust model for finding optimal evolutionary trees.

De Soete G: Ultrametric tree representations of incomplete dissimilarity data.

Landry PA, Lapointe FJ, Kirsch JAW: Estimating phylogenies from lacunose distance matrices: additive is superior to ultrametric estimation.

Lapointe FJ, Landry PA: A fast procedure for estimating missing distances in incomplete matrices prior to phylogenetic analysis. In Currents computational molecular biology. Edited by ElMabrouk N, Lengauer T, Sankoff D. Publications CRM Montréal; 2001:189190.

Guénoche A, Grandcolas S: Approximations par arbre d'une distance partielle.

Makarenkov V: TREX: Reconstructing and visualizing phylogenetic trees and reticulation networks.
Bioinformatics 2001, 17:664668. PubMed Abstract  Publisher Full Text

Felsenstein F: An alternating leastsquares approach to inferring phylogenies.
Syst Biol 1997, 46:101111. PubMed Abstract

Felsenstein J: PHYLIP: Phylogeny inference package, version 3.6b. Distributed by the author. University of Washington, Seattle; 1993.

Makarenkov V, Leclerc B: An algorithm for the fitting of a phylogenetic tree according to a weighted leastsquares criterion.

Makarenkov V, Lapointe FJ: A weighted leastsquares approach for inferring phylogenies from incomplete distance matrices.
Bioinformatics 2004, 20:21132121. PubMed Abstract  Publisher Full Text

Gascuel O, Steel M: Neighbor Joining Revealed.
Mol Biol Evol 2006, 23(11):19972000. PubMed Abstract  Publisher Full Text

Mirkin B: Mathematical classification and clustering. Kluwer Academic, London; 1996.

Gascuel O: Concerning the NJ algorithm and its unweighted version, UNJ. In Mathematical Hierarchies and Biology. Edited by Mirkin B, McMorris FR, Roberts FS, Rzhetsky A. DIMACS series in Discrete Mathematics and Theoretical Computer Science, American Mathematical Society, Providence; 1997:140170.

Zaretskii K: Postroenie dereva po naboru rasstoianii mezhdu visiacimi vershinami (Constructing a tree on the basis of a set of distances between the hanging vertices; in Russian).

Buneman P: The recovery of trees from measures of dissimilarity. In Mathematics in archaeological and historical sciences. Edited by Hudson F, Kendall D, Tautu P. Edinburgh University Press; 1971:387395.

Elemento O, Gascuel O: An efficient and accurate distance based algorithm to reconstruct tandem duplication trees.
Bioinformatics 2002, 18 Suppl 2:S92S99. PubMed Abstract  Publisher Full Text

Bruno WJ, Socci ND, Halpern AL: Weighted neighbor joining: a likelihoodbased approach to distancebased phylogeny reconstruction.
Mol Biol Evol 2000, 17(1):189197. PubMed Abstract  Publisher Full Text

Howe K, Bateman A, Durbin R: QuickTree: building huge NeighborJoining trees of protein sequences.
Bioinformatics 2002, 18:15461547. PubMed Abstract  Publisher Full Text

Desper R, Gascuel O: Fast and accurate phylogeny reconstruction algorithms based on the minimumevolution principle.
J Comp Biol 2002, 19(5):687705. PubMed Abstract  Publisher Full Text

Mailund T, Pedersen CN: QuickJoinfast neighbourjoining tree reconstruction.
Bioinformatics 2004, 20:32613262. PubMed Abstract  Publisher Full Text

Vinh le S, von Haeseler A: Shortest triplet clustering: reconstructing large phylogenies using representative sets.
BMC Bioinf 2005, 6:92. PubMed Abstract  Publisher Full Text  PubMed Central Full Text

Elias I, Lagergren J: Fast neighbor joining. In Proceedings of ICALP 2005 (Lisbon). Volume 3580. Edited by Caires L, Italiano GF, Monteiro L, Palamidessi C, Yung M. LNCS (Springer); :12631274.

Evans J, Sheneman L, Foster JA: Relaxed neighbor joining: a fast distancebased phylogenetic tree construction method.
J Mol Evol 2006, 62:785792. PubMed Abstract  Publisher Full Text

Estabrook GF, McMorris FR, Meacham CA: Comparison of undirected phylogenetic trees based on subtrees of four evolutionary units.

Steel MA, Penny D: Distribution of tree comparison metricsSome new results.

Baum BR: Combining trees as a way of combining data sets for phylogenetic inference, and the desirability of combining gene trees.

Ragan MA: Phylogenetic inference based on matrix representation of trees.
Mol Phylogenet Evol 1992, 1:5358. PubMed Abstract

Lapointe FJ, Cucumel G: The average consensus procedure: combination of weighted trees containing identical or overlapping sets of taxa.

Eulenstein O, Chen D, Burleigh JD, FernandezBaca D, Sanderson HJ: Performance of flip supertree construction with a heuristic algorithm.
Syst Biol 2004, 53:299308. PubMed Abstract  Publisher Full Text

Gatesy J, Matthee C, DeSalle R, Hayashi C: Resolution of a supertree/supermatrix paradox.
Syst Biol 2002, 51:652664. PubMed Abstract  Publisher Full Text

Beck RMD, BinindaEmonds ORP, Cardillo M, Liu FR, Purvis A: A higher level supertree of placental mammals.
BMC Evol Biol 2006, 6:93. PubMed Abstract  Publisher Full Text  PubMed Central Full Text

MacMahon MM, Sanderson MJ: Phylogenetic supermatrix analysis of GenBank sequences from 2228 Papilionid legumes.
Syst Biol 2006, 55(5):818836. PubMed Abstract  Publisher Full Text

Goloboff P, Farris J, Nixon K: TNT: Tree analysis using new technology.

BinindaEmonds ORP, Bryant NH: Properties of matrix representation with parsimony analyses.
Syst Biol 1998, 47:497508. PubMed Abstract

Chan HL, Jansson J, Lam TW, Yiu SM: Reconstructing an ultrametric galled phylogenetic network from a distance matrix. In Mathematical Foundation of Computer Science. Volume 3618. LNCS (Springer); 2005::224235.

Barthélemy JP, Guénoche A: Trees and proximity relations. WileyInterscience Series in Discrete Mathematics and Optimization. John Wiley & Sons, Chichester; 1991.

Gascuel O: A note on Sattath and Tversky's, Saitou and Nei's and Studier and Keppler's algorithms for inferring phylogenies from evolutionary distances.
Mol Biol Evol 1994, 11(6):961963. PubMed Abstract  Publisher Full Text

Charleston M, Hendy M, Penny D: Neighborjoining uses the optimal weight for net divergence.
Mol Phyl Evol 1993, 2(1):612. PubMed Abstract  Publisher Full Text

Bryant D: On the uniqueness of the selection criterion in neighborjoining.

Sanjuán R, Wróbel B: Weighted leastsquares likelihood ratio test for branch testing in phylogenies reconstructed from distance measures.
Syst Biol 2005, 54(2):218229. PubMed Abstract  Publisher Full Text