pyM2SA: Solving Multiple Sequence Alignments with Python

pyM2SA is an open source software tool aimed at for solving Multiple Sequence Alignment problems with multi-objective metaheuristics.


Documentation is WIP!! Some information may be missing.

Installation steps

Via pip:

$ pip install pym2sa

Via Github:

$ git clone
$ cd pyM2SA
$ python install


  • The scores that are currently available are those from pyMSA (v0.5.1):
    • Sum of pairs,
    • Star,
    • Minimum entropy,
    • Percentage of non-gaps,
    • Percentage of totally conserved columns,
    • STRIKE.
  • The algorithm that is currently available is:
    • NSGA-II
  • Crossover operator:
    • Single-point crossover (GapSequenceSolutionSinglePoint).
  • Mutation operators:
    • Shift closest gap group (ShiftClosedGapGroups),
    • Shift gap group (ShiftGapGroup),
    • Random gap insertion (OneRandomGapInsertion),
    • Merge two random adjacent gaps group (TwoRandomAdjacentGapGroup),
    • Multiple mutation (MultipleMSAMutation).