Construct a consensus tree that minimizes the sum of transfer distances
to a set of input trees, using a greedy add-and-prune heuristic.
This function is moving to ConsTree::Transfer() and will soon be removed.
A copy is retained here temporarily.
TransferConsensus(
trees,
scale = TRUE,
greedy = c("best", "first"),
init = c("empty", "majority")
)A tree of class phylo.
An object of class multiPhylo: the input trees.
All trees must share the same tip labels.
Logical; if TRUE (default), use the scaled transfer
distance (normalized by light-side size minus one). If FALSE, use
the unscaled (raw Hamming) transfer distance.
Character string specifying the greedy strategy:
"best" (default) picks the single highest-benefit action at each step;
"first" picks the first improving action encountered (faster but
potentially lower quality).
Character string specifying the initial consensus:
"empty" (default) starts with no splits (purely additive);
"majority" starts with the majority-rule consensus and refines.
Unlike the majority-rule consensus, which minimizes Robinson-Foulds
distance and can be highly unresolved when phylogenetic signal is low,
TransferConsensus() uses the finer-grained transfer distance
Lemoine2018TreeDist to construct a more resolved consensus
tree.
The algorithm pools all splits observed across input trees, computes pairwise transfer distances between them, and greedily adds or removes splits to minimize total transfer dissimilarity cost. The approach follows Takazawa2026;textualTreeDist, reimplemented for 'TreeDist' infrastructure.
Other summary trees:
MCITree()