Next: Nearest Neighbor Interchange
Up: Large Parsimony
Previous: Large Parsimony
Branch and Bound
The general paradigm of Branch-and-Bound (B&B) deals with optimization problems over a search space that can be presented as the leaves of a tree. It was first used for parsimony by Hendy and Penny [7] in 1982. It works when the tree is monotonous - the score of each node in the search tree is at least as bad as that of any of its ancestors. B&B is guaranteed to find the optimal solution, but its complexity in the worst case is as high as that of exhaustive search.
In the simplest form of the algorithm, the search-tree is traversed in some order, and the score of the best leaf found so far is kept as a bound B. Whenever a node is reached whose score is worse than B, the tree is pruned at that node, i.e., its subtree will not be searched, since it is guaranteed not to contain a leaf with a score better than B. The algorithm can be improved by using some other method to come up with a relatively good candidate, which will yield a good bound before the search has even begun. It is also possible to heuristically improve the traversal order.
Let us, therefore, present our search-space as a search tree. This is not difficult: in the kth level of the search tree, we will have nodes representing all possible phylogenetic trees with k leaves for the first k species (the order doesn't matter, as long as it is pre-determined). The subnodes of a node in that level will be all the phylogenetic trees created by adding the (k+1)-th species to the phylogenetic tree, at each possible place. There are exactly 2k-1 such places, and therefore this is the number of such subnodes.
This search tree clearly upholds the requirement of monotony, since adding a node to a given phylogenetic tree can never reduce its parsimony score. Therefore, the B&B algorithm can be used to help us prune the search tree. Although it is better than simple brute-force exhaustive search, it does not lower the worst-case time complexity, and it is difficult to predict its exact effect in the average case. However, in real-life test cases it proved to speed up the search considerably.
Next: Nearest Neighbor Interchange
Up: Large Parsimony
Previous: Large Parsimony
Itshack Pe`er
1999-02-18