En bioinformática , MAFFT ( multiplealignment using fast Fourier transform ) es un programa utilizado para crear alineaciones múltiples de secuencias de aminoácidos o nucleótidos . Publicada en 2002, la primera versión utilizó un algoritmo basado en el alineamiento progresivo , en el que las secuencias se agrupaban con la ayuda de la transformada rápida de Fourier . [2] Las versiones posteriores de MAFFT han añadido otros algoritmos y modos de operación, [3] incluyendo opciones para un alineamiento más rápido de grandes cantidades de secuencias, [4] alineamientos de mayor precisión, [5] alineamiento de secuencias de ARN no codificantes , [6] y la adición de nuevas secuencias a alineamientos existentes. [7]
Historia
Ha habido muchas variaciones del software MAFFT, algunas de las cuales se enumeran a continuación:
MAFFT – La primera versión, creada por Kazutaka Katoh en 2002, utilizó un algoritmo basado en alineamiento progresivo , en el que las secuencias se agruparon con la ayuda de la transformada rápida de Fourier . [2]
MAFFT v5 : el software de segunda generación, lanzado en 2005, fue una reescritura del software original. [3] Esta generación introdujo un sistema de puntuación simplificado que funciona bien para reducir el tiempo de CPU y aumentar la precisión de las alineaciones incluso para secuencias que tienen grandes inserciones o extensiones, así como secuencias distantemente relacionadas de longitud similar. [2]
MAFFT v6 – La tercera generación, lanzada en 2006, mejoró nuevamente las versiones anteriores. [3] Implementó la alineación de grupo a grupo, árboles guía que tenían un algoritmo de construcción de árboles O ( N log N ) aproximado pero más rápido, e hizo que la versión fuera utilizable con conjuntos de datos más grandes de ~50.000 secuencias.
MAFFT v7 : la cuarta generación, lanzada en 2012, mejoró sustancialmente la velocidad y la precisión. [3]
MAFFT v7.511 : una versión más reciente, lanzada en diciembre de 2022, mejoró la versión 7 con varias correcciones de errores. Una de las más notables es una revisión de la --mergeopción, que ahora incluye, lo que permite el refinamiento iterativo, la creación de un solo MSA a partir de múltiples sub-MSA, así como la combinación de --mergey --seed. También hubo varias mejoras menores en la velocidad y precisión de MAFFT v7.
Algoritmo
El algoritmo MAFFT funciona siguiendo estos 5 pasos: alineación por pares, cálculo de distancia, construcción de árbol guía, alineación progresiva y refinamiento iterativo. [8]
Alineación por pares : este paso se utiliza para identificar las regiones que son similares entre las secuencias ingresadas. El algoritmo comienza utilizando las secuencias ingresadas y ejecuta alineaciones por pares en todas las secuencias. La complejidad temporal de este paso es O(L^2), donde L es la secuencia. [9]
Matriz de distancia : utilizando las alineaciones por pares calculadas, se realiza un cálculo de la matriz de distancia para evaluar la disimilitud entre las alineaciones en función de sus puntuaciones de alineación. [9] El paso de cálculo de la distancia ayuda a organizar las secuencias en función de su similitud. La complejidad temporal de la matriz de distancia es O(N^2L^2) [9] , donde N es el número de secuencias y L es la longitud de la secuencia. Esta complejidad temporal se debe a que el cálculo de la distancia entre pares de secuencias requiere comparar cada posición de cada secuencia.
Árbol guía – Utilizando la matriz de distancias se construye un árbol guía donde hay una representación jerárquica de los clústeres (cada nodo es un clúster) y las ramas incluidas son la distancia entre los clústeres. O(N^2L) [10] es la complejidad temporal para la construcción del árbol guía, donde N es el número de secuencias.
Alineación progresiva : mediante el uso del árbol guía, se realiza una alineación progresiva [9] desde las hojas hasta la raíz. El algoritmo utiliza las secuencias ingresadas y alinea los nodos secundarios para calcular una alineación de consenso para el nodo principal. Este paso se realiza hasta que se recorre todo el árbol para obtener como resultado una alineación final de múltiples secuencias. La complejidad temporal del método de alineación progresiva es O(N^2L) + O(NL^2). [10] Esto se debe a que el primer término corresponde al cálculo del árbol guía indicado anteriormente junto con el segundo término que corresponde a la alineación de grupo a grupo.
Alineación iterativa : el paso de refinamiento iterativo repite todo el proceso con ajustes en las posiciones de los espacios y las inserciones para mejorar la precisión de la alineación. [9] La complejidad temporal de la alineación iterativa depende de la cantidad de iteraciones que se realizan. Pero, en general, la complejidad temporal de este método es O(N2L) + O(NL2) [10] , donde N es la cantidad de secuencias y L es la longitud de la secuencia.
Entrada/salida
Formulario web
Aporte
Este programa puede recibir múltiples secuencias como entrada, las cuales pueden ingresarse de dos maneras:
Ventana de entrada de secuencia
El usuario puede introducir directamente tres o más secuencias en la ventana de entrada en cualquiera de los siguientes formatos: GCG , FASTA , EMBL (solo nucleótidos), GenBank , PIR , NBRF , PHYLIP o UniProtKB/Swiss-Prot (solo proteínas). Es importante tener en cuenta que no se aceptan secuencias parcialmente formateadas y que añadir un retorno al final de la secuencia puede ayudar a que ciertas aplicaciones comprendan la entrada. También se recomienda evitar el uso de datos de procesadores de texto, ya que pueden estar presentes caracteres ocultos o de control. [11]
Carga de archivo de secuencia
El usuario puede cargar un archivo que contenga tres o más secuencias válidas en cualquiera de los formatos mencionados anteriormente. Los archivos de procesadores de texto pueden arrojar resultados impredecibles debido a la presencia de caracteres ocultos o de control, por lo que es mejor guardar los archivos con la opción de formato Unix para evitar los caracteres ocultos de Windows . Una vez cargado el archivo, se puede utilizar como entrada para la alineación de múltiples secuencias. [11]
Los archivos de texto guardados en formato DOS y Windows tienen finales de línea diferentes a los guardados en Unix y Linux . DOS–Windows utiliza una combinación de caracteres de retorno de carro y salto de línea ("\r\n") para indicar el final de una línea, mientras que los sistemas Unix–Linux utilizan solo un carácter de salto de línea ("\n") . [12]
Al transferir archivos entre sistemas basados en Windows y Unix, es importante tener en cuenta estas diferencias para garantizar que los finales de línea se traduzcan correctamente. De lo contrario, los caracteres de retorno de carro ocultos en los archivos con formato Windows pueden causar problemas al visualizarlos o editarlos en sistemas basados en Unix, y viceversa. [12]
Producción
El usuario tendrá la opción de solicitar que la Alineación de Secuencias Múltiples (MSA) se genere en uno de los dos formatos disponibles:
Formato de alineación ClustalW sin numeración de base/residuo
clustalw
El valor predeterminado es: Pearson/FASTA [fasta]
Comprender la salida de ClustalW:
Símbolo
Definición
Significado
*
asterisco
Secuencia conservada (idéntica)
:
colon
Mutación conservadora
.
período
Mutación semiconservadora
( )
blanco
Mutación no conservadora
-
estrellarse
Brecha
Ajustes
Existen muchas configuraciones que afectan el funcionamiento del algoritmo MAFFT. Ajustar las configuraciones a las necesidades es la mejor manera de obtener resultados precisos y significativos. Las configuraciones más importantes que se deben comprender son: Matriz de puntuación, Penalización por apertura de huecos y Penalización por extensión de huecos.
Matriz de puntuación : los programas de búsqueda de similitud de secuencias de proteínas como BLASTP, SSEARCH (UNIDAD 3.10) y FASTA utilizan matrices de puntuación diseñadas para identificar relaciones evolutivas distantes (BLOSUM62 para BLAST, BLOSUM50 para SEARCH y FASTA). Diferentes matrices de puntuación de similitud son más efectivas a diferentes distancias evolutivas. Las matrices de puntuación "profundas" como BLOSUM62 y BLOSUM50 apuntan a alineaciones con un 20-30% de identidad, mientras que las matrices de puntuación "superficiales" (por ejemplo, VTML10-VTML80) apuntan a alineaciones que comparten un 90-50% de identidad, lo que refleja un cambio evolutivo mucho menor". [13] En MAFFT original, la ecuación de puntuación se muestra a continuación.
Penalización por apertura de hueco : una penalización por apertura de hueco es una puntuación negativa asignada a un hueco en una alineación. Puede ser constante, donde se cobra un coste fijo por el hueco, o lineal, donde se cobra un coste fijo por cada símbolo insertado o eliminado. Una penalización por apertura de hueco afín combina las dos, cobrando una penalización constante por el primer símbolo de un hueco y otra penalización constante por cada símbolo adicional insertado o eliminado. [14]
Penalización por extensión de espacio : la penalización por extensión de espacio es una puntuación de costo asignada por cada símbolo de espacio adicional en una región de espacio en la alineación de secuencia. Se utiliza para desalentar la formación de regiones de espacio largas. Normalmente es menor que la penalización por apertura de espacio. [15]
Precisión y resultados
MAFFT es ampliamente considerado como una de las herramientas más precisas y versátiles para la alineación de múltiples secuencias en bioinformática . De hecho, los estudios han demostrado que MAFFT funciona excepcionalmente bien en comparación con otros algoritmos populares como Clustal W y T-Coffee , particularmente para conjuntos de datos más grandes y secuencias con altos grados de divergencia. [16] Por ejemplo, en un estudio que compara el rendimiento de varios algoritmos de alineación en longitudes de secuencia crecientes, se encontró que el algoritmo FFT-NS-2 de MAFFT era el programa más rápido para todos los tamaños de secuencia probados. Esto se debe a su uso de algoritmos de transformada rápida de Fourier (FFT), que permiten una alineación rápida y precisa de secuencias incluso altamente divergentes. Debido al uso de la transformada rápida de Fourier (FFT), el algoritmo se ejecuta en O(n^2) o O(n) dependiendo del conjunto de datos dado. MAFFT requiere menos tiempo de ejecución de CPU que otros algoritmos que tienen precisiones iguales o similares, especialmente T-Coffee, Clustal W y Needleman-Wunsch . [2]
Las versiones posteriores de MAFFT han agregado otros algoritmos y modos de operación, incluidas opciones para una alineación más rápida de un gran número de secuencias, [9] alineaciones de mayor precisión, [17] alineación de secuencias de ARN no codificantes, [18] y la adición de nuevas secuencias a alineaciones existentes. [19]
MAFFT se destaca entre otros algoritmos populares como Clustal W y T-Coffee debido a su alta precisión, versatilidad y gama de características. Ofrece varios métodos y estrategias de alineamiento, incluidos el refinamiento iterativo y los enfoques basados en la consistencia, que mejoran aún más la precisión y la solidez de los alineamientos. Como resultado, MAFFT es ampliamente reconocido como una herramienta poderosa para el alineamiento de múltiples secuencias y es muy apreciado por la comunidad científica. [20]
^ El software base de MAFFT se distribuye bajo una de las licencias BSD , mientras que las versiones para Microsoft Windows tienen licencia GNU General Public License . Algunas distribuciones de MAFFT contienen software con otras licencias https://mafft.cbrc.jp/alignment/software/
^ abcd Katoh, Kazutaka; Misawa, Kazuharu; Kuma, Kei-ichi; Miyata, Takashi (2002). "MAFFT: un nuevo método para el alineamiento rápido de múltiples secuencias basado en la transformada rápida de Fourier". Nucleic Acids Research . 30 (14): 3059–66. doi :10.1093/nar/gkf436. PMC 135756 . PMID 12136088.
^ abcd "MAFFT ver.7 - un programa de alineamiento de secuencias múltiples". mafft.cbrc.jp . Consultado el 28 de abril de 2021 .
^ Katoh, K.; Toh, H. (2006). "PartTree: Un algoritmo para construir un árbol aproximado a partir de un gran número de secuencias no alineadas". Bioinformática . 23 (3): 372–4. doi : 10.1093/bioinformatics/btl592 . PMID 17118958.
^ Katoh, K.; Kuma, K.; Miyata, T.; Toh, H. (2005). "Mejora de la precisión del programa de alineamiento de secuencias múltiples MAFFT". Informática Genómica. Conferencia Internacional sobre Informática Genómica . 16 (1): 22–33. PMID 16362903.
^ Katoh, Kazutaka; Toh, Hiroyuki (2008). "Mejora de la precisión de la alineación de múltiples ARNnc mediante la incorporación de información estructural en un marco basado en MAFFT". BMC Bioinformatics . 9 : 212. doi : 10.1186/1471-2105-9-212 . PMC 2387179 . PMID 18439255.
^ Katoh, Kazutaka; Frith, Martin C (2012). "Adición de secuencias no alineadas a una alineación existente utilizando MAFFT y LAST". Bioinformática . 28 (23): 3144–6. doi :10.1093/bioinformatics/bts578. PMC 3516148 . PMID 23023983.
^ El software base de MAFFT se publica bajo una de las licencias BSD , mientras que las versiones para Microsoft Windows se publican bajo una Licencia Pública General GNU . Algunas distribuciones de MAFFT contienen software con otras licencias https://mafft.cbrc.jp/alignment/software/
^ abcdef Katoh, K.; Standley, DM (abril de 2013). "Software de alineación de secuencias múltiples MAFFT versión 7: mejoras en el rendimiento y la facilidad de uso". Biología molecular y evolución . 30 (4): 772–780. doi :10.1093/molbev/mst010. PMC 3603318 . PMID 23329690.
^ abc Katoh, Kazutaka; Toh, Hiroyuki (julio de 2008). "Desarrollos recientes en el programa de alineamiento de secuencias múltiples MAFFT". Briefings in Bioinformatics . 9 (4): 286–298. doi : 10.1093/bib/bbn013 . PMID 18372315.
^ ab "Ayuda y documentación de MAFFT - Herramientas de análisis de secuencias de despachador de tareas - EMBL-EBI" www.ebi.ac.uk . Consultado el 24 de abril de 2023 .
^ ab "Finales de línea en Windows y Unix". www.cs.toronto.edu . Consultado el 27 de abril de 2023 .
^ Pearson, William R. (octubre de 2013). "Selección de la matriz de puntuación de similitud adecuada". Protocolos actuales en bioinformática . 43 (1): 3.5.1–3.5.9. doi :10.1002/0471250953.bi0305s43. PMC 3848038 . PMID 24509512.
^ "ROSALIND: Glosario: Penalización por brecha".
^ Carroll, Hyrum; Clement, Mark; Ridge, Perry; Snell, Quinn (octubre de 2006). "Efectos de las penalizaciones por apertura y extensión de brechas". Publicaciones de la facultad .
^ Edgar, Robert; Batzoglou, Serafim (junio de 2006). "Alineamiento de secuencias múltiples". Current Opinion in Structural Biology . 16 (3): 368–373. doi :10.1016/j.sbi.2006.04.004. PMID 16679011.
^ Katoh, Kazutaka (28 de abril de 2010). "Paralelización del programa de alineamiento de secuencias múltiples MAFFT". Bioinformática . 26 (15): 1899–1900. doi :10.1093/bioinformatics/btq224. PMC 2905546 . PMID 20427515.
^ Kazunori, Yamada (4 de julio de 2016). "Aplicación del programa de alineamiento de secuencias MAFFT a grandes datos: reexamen de la utilidad de los árboles guía encadenados". Bioinformática . 32 (21): 3246–3251. doi :10.1093/bioinformatics/btw412. PMC 5079479 . PMID 27378296.
^ Kazutaka, Katoh (27 de septiembre de 2012). "Adición de secuencias no alineadas a una alineación existente utilizando MAFFT y LAST". Bioinformática . 28 (23): 3144–3146. doi :10.1093/bioinformatics/bts578. PMC 3516148 . PMID 23023983.
^ Edgar, RC (8 de marzo de 2004). "MUSCLE: alineamiento de secuencias múltiples con alta precisión y alto rendimiento". Nucleic Acids Research . 32 (5): 1792–1797. doi :10.1093/nar/gkh340. PMC 390337 . PMID 15034147.
Enlaces externos
Sitio web oficial
Servidor en línea MAFFT
Servidor MAFFT en EBI
Alineación de secuencias múltiples mediante MAFFT: ClustalW, MAFFT, PRRN en GenomeNet