Next: Neighbor Joining
Up: Distance Matrix Methods
Previous: Least Squares Methods
UPGMA
Being able to assign branch lengths to a given tree, as we have demonstrated, we
need to minimize SSQ(T) over the possible tree topologies. The UPGMA, or
Unweighted Pair Group Method with Arithmetic mean [10], is a
heuristic algorithm that usually generates satisfactory results. Basically, the
algorithm iteratively joins the two nearest clusters (or groups of species), until
one cluster is left.
UPGMA algorithm:
- Initialization:
- 1.
- Initialize n clusters with the given species, one species per cluster.
- 2.
- Set the size of each cluster to 1:
.
- 3.
- In the output tree T, assign a leaf for each species.
- Iteration:
- 1.
- Find the i and j that have the
smallest distance Dij.
- 2.
- Create a new cluster - (ij), which has
n(ij) = ni + nj members.
- 3.
- Connect i and j on the tree to a new node, which corresponds to the new
cluster (ij), and give the two branches connecting i and j to (ij) length
each.
- 4.
- Compute the distance from the new cluster to all other clusters (except
for i and j, which are no longer relevant) as a weighted average of the distances from
its components:
- 5.
- Delete the columns and rows in D that correspond to clusters i and j,
and add a column and row for cluster (ij), with
D(ij),k computed as above.
- 6.
- Return to 1 until there is only one
cluster left.
Complexity: The time and space complexity of UPGMA is O(n2),
since there are n-1 iterations, with O(n) work in each one.
A clocklike, or ultrametric, tree is a rooted tree, in which the
total branch length from the root to any leaf is equal. In other words, there is a
``molecular clock'' that ticks in a constant pace (i.e., the mutation rate is
identical for all species), and all the observed species are at an equal number of
ticks from the root (see also page ).
If the solution to the least squares problem is 0, and there is a molecular clock
(i.e., the solution is a clocklike tree), then UPGMA is guaranteed to return the
optimal solution. Actually, UPGMA implicitly assumes the
existence of an ultrametric tree, which explains why the new node, (ij), is the
mean of the two nodes that were joined to create it, as shown in figure
9.9.
It is therefore not surprising that for substantially nonclocklike trees, the algorithm
might give seriously misleading results.
Next: Neighbor Joining
Up: Distance Matrix Methods
Previous: Least Squares Methods
Itshack Pe`er
1999-02-18