High-level description

This file defines the top-level module for the Cassiopeia tree solver package. It imports and exposes various solver classes and dissimilarity functions for phylogenetic tree reconstruction.

Code Structure

This file simply imports various solver classes and a module containing dissimilarity functions. These classes and functions are used by other modules in the Cassiopeia solver package.

Symbols

HybridSolver

Description

A hybrid solver that combines a top-down greedy algorithm with a more complex bottom-up solver. The greedy solver is applied until a certain criteria is reached (e.g., maximum LCA distance or number of cells), after which the bottom solver is used to reconstruct subproblems.

ILPSolver

Description

An ILP-based solver that infers the maximum parsimony tree by solving for a Steiner Tree over a potential graph of possible evolutionary states.

MaxCutGreedySolver

Description

A greedy solver that uses the max-cut criterion to optimize partitions generated by the vanilla greedy algorithm.

MaxCutSolver

Description

A solver that uses a max-cut heuristic to partition samples based on a connectivity graph representing a supertree of phylogenetic trees on each individual character.

NeighborJoiningSolver

Description

A solver that implements the Neighbor-Joining algorithm to iteratively join samples that minimize the Q-criterion on the dissimilarity map.

PercolationSolver

Description

A top-down percolation-based solver that recursively partitions the sample set based on similarity in the observed mutations.

SharedMutationJoiningSolver

Description

An agglomerative clustering solver that joins samples that share the most identical character/state mutations.

SpectralGreedySolver

Description

A greedy solver that uses a spectral heuristic to optimize partitions generated by the vanilla greedy algorithm.

SpectralSolver

Description

A solver that uses a spectral method to partition samples based on a similarity graph representing shared mutations.

UPGMASolver

Description

A solver that implements the UPGMA algorithm to iteratively join samples with the minimum dissimilarity.

VanillaGreedySolver

Description

A solver that implements the basic Cassiopeia-Greedy algorithm, recursively splitting samples based on the most frequent mutation.

SpectralNeighborJoiningSolver

Description

A solver that implements a variation of the Spectral Neighbor-Joining algorithm to iteratively join subsets of leaves into a cherry based on the second singular value of the RA matrix.

dissimilarity

Description

A module containing various dissimilarity functions used to compare phylogenetic samples.