Developer(s) | Kazutaka Katoh |
---|---|
Stable release | 7.475
/ 23 November 2020 |
Written in | C |
Operating system | UNIX, Linux, Mac, MS-Windows |
Type | Bioinformatics tool |
Licence | BSD[1] |
Website | mafft |
In bioinformatics, MAFFT (for multiple alignment using fast Fourier transform) is a program used to create multiple sequence alignments of amino acid or nucleotide sequences. Published in 2002, the first version of MAFFT used an algorithm based on progressive alignment, in which the sequences were clustered with the help of the fast Fourier transform.[2] Subsequent versions of MAFFT have added other algorithms and modes of operation,[3] including options for faster alignment of large numbers of sequences,[4] higher accuracy alignments,[5] alignment of non-coding RNA sequences,[6] and the addition of new sequences to existing alignments.[7]
There have been many variations of the MAFFT software, some of which are listed below:
--merge
option, which now includes, enabling iterative refinement, creating a single MSA from multiple sub-MSAs, as well as the combination of --merge
and --seed
. There were also several minor enhancements to the speed and accuracy of MAFFT v7.The MAFFT algorithm works following these 5 steps Pairwise Alignment, Distance Calculation, Guide Tree Construction, Progressive Alignment, Iterative Refinement.[8]
This program can take in multiple sequences as input, which can be entered in two ways:
The user can directly enter three or more sequences in the input window in any of the following formats: GCG, FASTA, EMBL (nucleotide only), GenBank, PIR, NBRF, PHYLIP, or UniProtKB/Swiss-Prot (protein only). It is important to note that partially formatted sequences are not accepted, and adding a return to the end of the sequence may help certain applications understand the input. It is also advised to avoid using data from word processors as hidden/control characters may be present.[11]
The user can upload a file containing three or more valid sequences in any format mentioned above. Word processor files may yield unpredictable results due to the presence of hidden/control characters, so it is best to save files with the Unix format option to avoid hidden Windows characters. Once the file is uploaded, it can be used as input for multiple sequence alignment.[11]
Text files saved on DOS/Windows format have different line endings than those saved on Unix/Linux. DOS/Windows uses a combination of carriage return and line feed characters ("\r\n") to indicate the end of a line, while Unix/Linux systems use only a line feed character ("\n").[12]
When transferring files between Windows and Unix-based systems, it's important to be aware of these differences to ensure that the line endings are correctly translated. Otherwise, the hidden carriage return characters in the Windows-formatted files may cause issues when viewed or edited on Unix-based systems, and vice versa.[12]
The user will have the option to request the Multiple Sequence Alignment (MSA) to be generated in one of the two available formats:
Output Format | Description | Abbreviation |
---|---|---|
Pearson/FASTA | Pearson or FASTA sequence format | fasta |
ClustalW | ClustalW alignment format without base/residue numbering | clustalw |
Default value is: Pearson/FASTA [fasta]
Symbol | Definition | Meaning |
---|---|---|
* | asterisk | Conserved sequence (identical) |
: | colon | Conservative mutation |
. | period | Semi-conservative mutation |
( ) | blank | Non-conservative mutation |
- | dash | Gap |
There are many settings that affect how the MAFFT algorithm works. Adjusting the settings to your needs is the best way to get accurate and meaningful results. The most important settings to understand are: the Scoring Matrix, Gap Open Penalty, and Gap Extension Penalty.
MAFFT is widely considered to be one of the most accurate and versatile tools for multiple sequence alignment in bioinformatics. In fact, studies have shown that MAFFT performs exceptionally well when compared to other popular algorithms such as ClustalW and T-Coffee, particularly for larger datasets and sequences with high degrees of divergence.[16] For example, in a study comparing the performance of various alignment algorithms on increasing sequence lengths, MAFFT's FFT-NS-2 algorithm was found to be the fastest program for all tested sequence sizes. This is due to its use of fast Fourier transform (FFT) algorithms, which enable rapid and accurate alignment of even highly divergent sequences. Because of the use of fast Fourier transform(FFT) the algorithm runs in either O(n^2) or O(n) depending on the given data set. MAFFT takes less CPU runtime than other algorithms that have the same or similar accuracies especially T-Coffee, ClustalW, and Needleman-Wunsch.[2]
Subsequent versions of MAFFT have added other algorithms and modes of operation, including options for faster alignment of large numbers of sequences,[9] higher accuracy alignments,[17] alignment of non-coding RNA sequences,[18] and the addition of new sequences to existing alignments.[19]
MAFFT stands out among other popular algorithms such as ClustalW and T-Coffee due to its high accuracy, versatility, and range of features. It offers various alignment methods and strategies, including iterative refinement and consistency-based approaches, that further enhance the accuracy and robustness of the alignments. As a result, MAFFT is widely recognized as a powerful tool for multiple sequence alignment and is highly appreciated by the scientific community.[20]