Quiero calcular la alineación óptima de dos secuencias de aminoácidos según la siguiente definición de una patente:
"El porcentaje de identidad entre dos secuencias peptídicas o nucleotídicas es función del número de aminoácidos o residuos de nucleótidos que son idénticos en las dos secuencias cuando se ha generado un alineamiento de estas dos secuencias. Los residuos idénticos se definen como residuos que son los mismos mismo en las dos secuencias en una posición dada de la alineación. El porcentaje de identidad de secuencia, como se usa aquí, se calcula a partir de la alineación óptima tomando el número de residuos idénticos entre dos secuencias dividiéndolo por el número total de residuos en el más corto secuencia y multiplicando por 100. El alineamiento óptimo es el alineamiento en el que el porcentaje de identidad es el más alto posible.Se pueden introducir huecos en una o ambas secuencias en una o más posiciones del alineamiento para obtener el alineamiento óptimo.Estos espacios se tienen en cuenta como residuos no idénticos para el cálculo del porcentaje de identidad de secuencia".
La implementación de Needleman y Wunsch en NCBI ( https://blast.ncbi.nlm.nih.gov/Blast.cgi ) funciona principalmente, pero no exactamente. Gracias a @David y @WYSIWIG de un subproceso SE relacionado que sugirió esto ( Cómputo del porcentaje de identidad entre ADN/secuencia de aminoácidos )
Quiero saber si hay alguna manera de arreglar el desajuste.
por ejemplo, mi caso de prueba es:
Seq1: ABDE
Seq2: AAAAAAAAAAABCDE
La implementación de NCBI produce la siguiente alineación que tiene solo 3 residuos idénticos:
Pero, ¿no debería ser posible una alineación óptima con 4 residuos idénticos así:
Seq1: ----------AB-DE
Seq2: AAAAAAAAAAABCDE
¿Pensamientos? ¿Alguna forma de modificar la implementación para dar el resultado que quiero? Alternativamente, ¿cualquier otro algoritmo que pueda ser obligado a obtener esta alineación? BLAST o una variante?
Needleman-Wunsch realiza una alineación (global) de extremo a extremo (BLAST usa Smith-Waterman). La aguja del kit de herramientas EMBOSS realiza la alineación de Needleman-Wunsch. Se informará de la alineación de mayor puntuación. No estoy seguro de qué alineación informa cuando hay dos de ellos con puntajes iguales (no creo que sea aleatorio).
Acabo de probar su caso: reemplazado B
por W
como el primero no denota ningún aminoácido específico (es ambiguo). Da:
1 ----------AW-DE 4
|| ||
1 AAAAAAAAAAAWCDE 15
Tenga en cuenta que puede cambiar este comportamiento modificando las penalizaciones de apertura y extensión de espacios . También puede cambiar las penalizaciones de espacio final (espacios al principio o al final de la alineación, no en el medio) en Needle.
En este caso, brecha abierta = 10, extensión de brecha = 0.5, penalización de brecha final = falso y matriz = BLOSUM62
Para realizar una alineación local, puede utilizar Smith-Waterman. Simplemente alinea la región con la puntuación más alta y no realiza una alineación de extremo a extremo. También puede cambiar las penalizaciones de apertura y extensión de espacios en Smith-Wateman y BLAST, pero estos algoritmos no comienzan ni terminan una alineación con un espacio.
Este es el resultado de Smith-Waterman con gap-open =1 y gap-exten =0.5 y BLOSUM62 como matriz de puntuación.
1 AW-D 3
|| |
11 AWCD 14
Para obtener más información, consulte ¿Cuál es la diferencia entre las alineaciones de secuencias locales y globales?
Ese es un caso de prueba muy malo.
El problema es que las secuencias son demasiado cortas e implican una larga repetición. Esto significa que las penalizaciones por intervalo predeterminadas y las penalizaciones por longitud del intervalo no son aplicables. Están diseñados para trabajar con secuencias más largas, donde la penalización de insertar un espacio puede compensarse con un aumento de coincidencias. En cualquier caso, puede obtener malas alineaciones en los extremos de las secuencias de ADN donde el tramo de ADN que se alinea al introducir un espacio está 'fuera de la pantalla'.
Aunque el algoritmo puede ser hermético, su implementación en un programa de alineación hace ciertas suposiciones en las que están involucrados valores para puntajes y penalizaciones. Tienes que saber cuáles son y cuándo son aplicables. Incluso hay situaciones en las que necesita producir su propia matriz para forzar la alineación entre pares que sabe que deben alinearse a partir de otra información (sitios activos, motivos regulatorios). Esto es bastante válido porque el programa no sabe de biología, tú sí.
Su conjetura se hace sin conocer las probabilidades de sustitución de proteínas.
La optimización de la alineación en BLAST es una métrica de la función de puntuación. La función de puntuación depende del tamaño de la palabra (longitud de la semilla que inicia una alineación), recompensas y penalizaciones por coincidencias y desajustes: costo de la brecha y matriz de sustitución. En general, BLAST usa BLOSUM y PAM ; estas matrices se basan en datos evolutivos. Puede leer más sobre los parámetros de puntuación en la Ayuda de BLAST .
Puede ajustar estos parámetros en "Parámetros del algoritmo" en la parte inferior de la página de análisis. Conociendo los parámetros que podría decidir, su alineación de conjetura tiene sentido o no.
gato_curioso
WYSIWYG
B
yZ
, pero muchos algoritmos probablemente no (aunque no estoy muy seguro de esto). De todos modos, ¿está clara tu duda?gato_curioso