Solver#

CassiopeiaSolvers#

We have several algorithms available for solving phylogenies:

solver.HybridSolver(top_solver, bottom_solver)

The Hybrid Cassiopeia solver.

solver.ILPSolver([convergence_time_limit, ...])

The Cassiopeia ILP-based maximum parsimony solver.

solver.MaxCutSolver([sdimension, ...])

A MaxCut graph-based CassiopeiaSolver.

solver.MaxCutGreedySolver([...])

A CassiopeiaGreedy solver with the max cut criterion.

solver.NeighborJoiningSolver([...])

Neighbor-Joining class for Cassiopeia.

solver.PercolationSolver(joining_solver[, ...])

A top-down percolatin-based CassiopeiaSolver.

solver.SharedMutationJoiningSolver([...])

Shared-Mutation-Joining class for Cassiopeia.

solver.SpectralSolver([similarity_function, ...])

A spectral-based CassiopeiaSolver.

solver.SpectralGreedySolver([...])

A CassiopeiaGreedy solver with a spectral heuristic.

solver.UPGMASolver([dissimilarity_function, ...])

UPGMA CassiopeiaSolver.

solver.VanillaGreedySolver([...])

A class for the basic Cassiopeia-Greedy solver.

Dissimilarity Maps#

For use in our distance-based solver and for comparing character states, we also have available several dissimilarity functions:

solver.dissimilarity_functions.cluster_dissimilarity(...)

Compute the dissimilarity between (possibly) ambiguous character strings.

solver.dissimilarity_functions.hamming_distance(s1, s2)

Computes the vanilla hamming distance between two samples.

solver.dissimilarity_functions.hamming_similarity_normalized_over_missing(s1, ...)

A function to return the number of (non-missing) character/state mutations shared by two samples, normalized over the amount of missing data.

solver.dissimilarity_functions.hamming_similarity_without_missing(s1, ...)

A function to return the number of (non-missing) character/state mutations shared by two samples.

solver.dissimilarity_functions.weighted_hamming_distance(s1, s2)

Computes the weighted hamming distance between samples.

solver.dissimilarity_functions.weighted_hamming_similarity(s1, ...)

A function to return the weighted number of (non-missing) character/state mutations shared by two samples.