__init__.py
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.