Constructing evolutionary trees for species sets is a fundamental problem in biology. One of the standard models assumes the ability to compute distances between every pair of species and seeks to find an edge-weighted tree $T$ in which the distance $d^T_{ij}$ in the tree between the leaves of $T$ corresponding to the species $i$ and $j$ exactly equals the observed distance, $d_{ij}$. When such a tree exists, this is expressed in the biological literature by saying that the distance function or matrix is {\em additive}, and trees can be constructed from additive distance matrices in $O(n^2)$ time. Real distance data is hardly ever additive, and we therefore need methods (such as approximation algorithms with guaranteed error bounds) for handling such data.

In this paper we present several natural and realistic ways of modeling the inaccuracies in the distance data. In one model we assume that we have upper and lower bounds for the distances between pairs of species and try to find an additive distance matrix between these bounds. In a second model we are given a partial matrix and asked to find if we can fill in the unspecified entries in order to make the entire matrix additive. For both of these models we also consider a more restrictive problem of finding a matrix that fits a tree which is not only additive but also {\em ultrametric}. Ultrametric matrices correspond to trees which can be rooted so that the distance from the root to any leaf is the same. Ultrametric matrices are desirable in biology since the trees then indicate evolutionary time. We give polynomial time algorithms for some of the problems while showing others to be NP-Complete. We also consider various ways of `fitting' a given distance matrix (or a pair of upper and lower bound matrices) to a tree in order to minimize various criteria of error in the fit. For most criteria this optimization problem turns out to be NP-Hard, while we do get polynomial time algorithms for some.

The primary contributions of this paper are as follows: (1) We suggest
a model of computation and efficient algorithms for constructing
optimal ultrametric trees under this model. This is the first
reasonable model for which optimal trees can be found in polynomial
time. (2) We show that for another criterion, there is an $\epsilon
>0$ such that unless $P=NP$, finding the optimal ultrametric tree can
not be approximated in polynomial time within the ratio
$n^{\epsilon}$.

Paper available at:
ftp://dimacs.rutgers.edu/pub/dimacs/TechnicalReports/TechReports/1993/93-22.ps

DIMACS Home Page