volver al índice
ir a la práctica

 

Alineamiento de secuencias. Búsqueda de parecidos.Alineamientos múltiples.
Parte teórica

Federico Abascal
Muchas imágenes (e ideas) están tomadas de las clases
de Paulino Gómez Puertas (enlace), Oswaldo Trelles (enlace)
y Ramón Alonso Allende (enlace).









 

¿Qué es una secuencia?
es una serie de elementos encadenados uno detrás de otros, por eso hablamos de secuencias de nucleótidos y de secuencias de aminoácidos. A través de letras podemos identificar los distintos monómeros que conforman la macromolécula (ejemplo: A: adenina; T: timina; C: citosina; y G: guanina; ó A: alanina; D: aspártico; E: glutámico; etcétera).
 

¿Por qué comparar secuencias?
Para comprender la utilidad de la comparación de secuencias y de la búsqueda de homólogos (proteínas que tienen un origen evolutivo común), necesitamos tener claros algunos conceptos acerca de cómo evolucionan las proteínas.
 

Breve introducción acerca de cómo evolucionan las proteínas.
La idea generalmente aceptada es que a lo largo de la evolución unas especies van dando lugar a otras nuevas. Detrás de estas especiaciones está la variación genética de los organismos, es decir la evolución de los genomas y sus genes,  así como de las proteínas codificadas por éstos.
Básicamente podemos distinguir tres formas mediante las cuales evolucionan los genes (y por consiguiente las proteínas):
*mutación: cuando el ADN se replica se pueden producir errores al realizar la copia; también pueden introducirse mutaciones por efecto de agentes externos (mutagénicos) como por ejemplo la luz ultravioleta o ciertos agentes químicos.
*duplicación: cuando un gen se duplica se abre una puerta para la adquisición de nuevas funciones biológicas: las mutaciones en el nuevo gen son más fácilmente tolerables. La mayoría de las veces estos genes terminarán degenerando, convirtiéndose en pseudogenes y más tarde desapareciendo.
*barajado de dominios: muchas proteínas están constituidas por entidades estructurales independientes, a las que llamamos dominios. Mediante recombinación se puede producir un barajado de dominios. Por ejemplo, a partir de la combinación de dominios ya existentes se pueden obtener nuevas proteínas, cuya función será el resultado de las sub-funciones de sus dominios. Es como jugar al lego. Una forma fácil y barata de crear nuevas proteínas.
Cuando observamos diferencias entre secuencias de proteínas homólogas (que tienen un origen evolutivo común), estas diferencias están hablándonos de las propiedades funcionales de las proteínas: algunas diferencias estarán allí porque la mutación no ha alterado la función, han sido más o menos neutrales; alternativamente, otras diferencias quizás tengan que ver con el hecho de que esas proteínas, aunque tengan un origen común, realizan funciones distintas, perteneciendo a distintas subfamilias. Y otras diferencias tendrán que ver con el modo de vida del organismo: por ejemplo, las bacterias que viven en fuentes termales a temperaturas muy altas tienen proteínas con una T  (temperatura) de desnaturalización también muy alta, y estas proteínas suelen ser más ricas en cisteínas. Por otra parte, el hecho de que determinadas posiciones de las secuencias permanezcan invariables (posiciones conservadas), nos indica que éstas tienen una especial importancia para el mantenimiento de la estructura o la función de la proteína y su modificación no ha sido tolerada a lo largo de la evolución.

¿Cómo responde un organismo a una mutación? (o dicho de otra forma: ¿cómo le afecta una mutación?): de la respuesta es que lo hace de distinta forma según las distintas situaciones. Por ejemplo, en cuanto a las mutaciones, en general éstas se tolerarán cuando no produzcan alteraciones en la estructura o en la función de la proteína. Esta presión selectiva es de esperar que será menor si existe una duplicación del gen, ya que la pérdida de función no es dramática mientras al menos uno de los genes sea funcional. En cuanto al barajado de dominios, en unos casos producirá proteínas que ofrezcan alguna ventaja y en otros no. En general, dependiendo de lo beneficiosos o perjudiciales que sean los cambios ocurridos los organismos que los porten serán seleccionados positiva o negativamente, lo que determinará que los cambios pasen a generaciones venideras o, visto de otra forma, determinará que en el momento actual, en el que vivimos nosotros, observemos esos cambios: las secuencias que observamos ahora reflejan toda una historia evolutiva en la que las proteínas han ido divergiendo, adquiriendo nuevas funciones, adaptándose a nuevos entornos... y tenemos la oportunidad de desvelar algunos de esos secretos.
 

Las proteínas son cadenas polipeptídicas de aminoácidos ensamblados secuencialmente (de ahí el nombre de secuencia). La secuencia de una proteína determina qué estructura tridimensional tendrá ésta. El resultado de la adopción de una estructura tridimensional es que se forman superficies moleculares con distintas propiedades, quedando aminoácidos específicos en una orientación determinada, lo que permite a la proteína llevar a cabo su función.

Entonces, podemos decir que la comparación de secuencias es una forma de hacer arqueología, de descubrir qué partes de las secuencias son más importantes (están más conservadas), de descubrir qué proteínas tienen un origen común (existen modelos estadísticos que nos ayudan a distinguir parecidos al azar de parecidos que reflejan un mismo origen evolutivo)... La comparación de secuencias también nos puede servir para predecir la estructura de las proteínas (las proteínas homólogas tienen una misma arquitectura tridimensional), o también nos puede ayudar a predecir la función de las proteínas (aunque en este aspecto hay que ser cautelosos ya que a lo largo de la evolución proteínas con un origen común pueden terminar desarrollando distintas funciones, como veremos más adelante).
 
 


 
¿Cómo comparar secuencias?
 
¿ADN (ARN) o proteínas? ¿Qué secuencias comparar?
La elección de comparar secuencias de nucleótidos o de aminoácidos depende de la información que busquemos y de los datos de que dispongamos. Uno de los aspectos más importantes para decidir qué queremos comparar radica en que el parecido entre secuencias de nucleótidos con un origen común se pierde más rápidamente que el parecido en las secuencias de aminoácidos correspondientes: por una parte porque el alfabeto es más reducido (cuatro letras frente a veinte) y por otra porque la secuencia de nucleótidos puede cambiar sin que esto se refleje en la de aminoácidos (cambios sinónimos).

La comparación de secuencias de nucleótidos es apropiada cuando:
-queremos comparar secuencias muy parecidas, en las que quizás sólo hay diferencias en uno o dos nucleótidos (estudios filogenéticos, genética de poblaciones, SNPs, etc).
-queremos identificar genes: por ejemplo, si comparamos zonas equivalentes del genoma de ratón y del genoma de humanos, vemos que las regiones exónicas están más conservadas que las intrónicas.
-queremos comparar secuencias no codificantes.
-etcétera.

La comparación de secuencias de aminoácidos es apropiada cuando:
-queremos buscar homólogos, ya sean más o menos cercanos o sean lejanos: no sólo el parecido en la secuencia aminoacídica se pierde más lentamente, sino que sabemos que algunos aminoácidos tienen propiedades más parecidas que otros, por lo que podemos darle más sentido a los cambios que observamos y distinguir mejor entre parecidos fruto del azar y parecidos reflejo de homología.
-queremos identificar regiones importantes de las proteínas.
-etcétera.


Existen distintas formas de comparar secuencias. El objetivo que perseguimos es el de encontrar el alineamiento que maximice el parecido. Consideramos que ese alineamiento es el que con mayor probabilidad refleja los cambios que se han producido a lo largo de la evolución, aunque no consideramos que sea el mejor alineamiento.

Formas de comparar pares secuencias:
(Ejemplo:
 secuencia 1: TCAGACGATTG
 secuencia 2: ATCGGAGCTG  )
Para elegir en cada casilla de la matriz cuál es la mejor opción, se elije el máximo de:
Esta forma de "rellenar" la matriz garantiza que obtenemos el mejor alineamiento, sin necesidad de explorar todas las posibilidades.

Búsquedas de parecidos en las bases de datos.

Actualmente las bases de datos contienen un gran número de secuencias, y crecen de forma exponencial. Por ejemplo en Genbank ya hay más de 28.000 millones de pares de bases (nucleótidos), correspondientes a más de 22 millones de secuencias. Por otra parte conocemos aproximadamente un millón y medio de secuencias de proteínas.

En este contexto, aplicar algoritmos como el de Smith & Waterman no es factible, ya que tardarían demasiado tiempo (a no ser que dispusiéramos de máquinas especiales que trabajasen en paralelo). Por eso existen métodos como BLAST y FASTA que aplican heurísticas (o "truquillos") para reducir el tiempo de búsqueda. Estos "truquillos" no garantizan el resultado óptimo pero casi siempre funcionan, y la ganancia en tiempo hace que compense usarlos.
 

Heurísticas de BLAST y FASTA.
Estos métodos son muy rápidos. Básicamente utilizan los siguientes "truquillos": Estimación de la probabilidad de que un determinado parecido entre secuencias se deba al azar: el e-value
Uno de los problemas más importantes una vez hemos encontrado parecidos en las bases de datos es saber si son significativos o si podrían deberse al azar y por tanto no reflejan una relación de homología. En el caso de parecidos muy claros, la respuesta es evidente, pero hay muchos otros parecidos en los que no lo es, y para resolver este problema se  han desarrollado diversos modelos estadísticos. Básicamente lo que se hace es calcular la probabilidad de que un alineamiento entre secuencias no relacionadas (por azar) alcance una puntuación (score) determinado; en esto influyen diversos aspectos:
Para saber más acerca de Alignment Scoring Statistics:
http://www.ncbi.nlm.nih.gov/BLAST/tutorial/Altschul-1.html
http://blast.wustl.edu/doc/infotheory.html
Filtros SEG, XNU, COILS y DUST.

Hay algunos casos en los que secuencias sin un origen común, por tener características especiales, pueden alcanzar fácilmente puntuaciones altas en sus alineamientos:

¿Cuándo aplicar los filtrados? Normalmente lo mejor es probar a realizar la búsqueda (p.e. BLAST) con y sin filtrado, inspeccionar los resultados y determinar si el filtrado en ese caso nos permite eliminar parecidos espúreos (al azar). Si no aporta nada, mejor no utilizarlo porque estamos perdiendo información de secuencia que podría ayudarnos a encontrar homólogos más lejanos.

Alineamientos múltiples

Por alineamiento múltiple nos referimos al alineamiento de más de dos secuencias. Los alineamientos múltiples de secuencias son el pilar central de multitud de métodos bioinformáticos.
Como hemos visto, el alineamiento mediante programación dinámica de dos secuencias tiene una complejidad O(NxM). Pues bien, si queremos alinear tres secuencias, la complejidad sería de O(NxMxL). O dicho de otra forma: si alinear dos secuencias de 300 residuos tardase un segundo, alinear tres secuencias tardaría 300 segundos. Y alinear 10 secuencias tardaría 3008 segundos (más que la edad del universo).


Matriz tridimensional para el alineamiento de tres secuencias
(para cuatro secuencias necesitaríamos una matriz de cuatro dimensiones)

En resumidas cuentas, no podemos resolver el problema del mismo modo que para un par de secuencias.

Una aproximación a la solución de este problema la propusieron Carrillo & Lipman en 1988, y posteriormente fue aplicada para el desarrollo del programa MSA (Lipman, Altschul & Kececioglu, 1989). La idea es calcular el parecido entre todos los pares de secuencias, de modo que obtengamos una medida de su distancia evolutiva. Se toman las dos secuencias más cercanas y se alinean entre sí. A partir de este momento ambas secuencias se tratan como una sola (ya veremos más adelante cómo). Se vuelven a alinear las dos más cercanas.... y así sucesivamente hasta que no quedan más.

ClustalW (Thompson, Higgins & Gibson, 1994) es el programa más comúnmente utilizado y sigue un enfoque similar: a partir de la matriz de distancias entre las secuencias se construye una especie de árbol guía y se van alineando las secuencias entre sí de acuerdo a este árbol.

El resultado de estos programas no tiene por qué ser el óptimo, pero normalmente funcionan bien, aunque a veces hay que corregir algunas zonas del alineamiento a mano, utilizando programas como SeaView.

Finalmente, decir que recientemente se ha desarrollado un nuevo método de alineamiento llamado T-coffee (Notredame, Higgins & Heringa, 2000) que resuelve muchos de los problemas de ClustalW, aunque requiere un mayor tiempo de computación. Utiliza algoritmos genéticos para encontrar el alineamiento óptimo. Este tipo de algoritmos (que veréis más adelante) son muy útiles en problemas de optimización.

 El recién desarrollado programa Muscle (Edgar,  Robert C. 2004) es muy rápido y da unos resultados muy buenos!! Puedes encontrar una descripción de su algoritmo en: http://www.drive5.com/muscle/.
 

¿Cuál es la utilidad de los alineamientos múltiples? lo veremos en la siguiente clase: Análisis de secuencias: motivos y perfiles.



 
 
volver al índice
ir a la práctica