1 of 9

2 of 9

Primero recordemos cómo funciona BLAST…

Etapas:

  1. Búsqueda de las seeds (semillas). Las secuencias subject son escaneadas para buscar sitios donde se parezcan a la secuencia query. El output es una lista de semillas, que son las coordenadas en las secuencias query y subject donde hay alta densidad de pequeños fragmentos (o palabras) con alta similitud entre las mismas.
    • Creación de las hash tables (diccionarios) de la secuencia query y de la base de datos (secuencias subject) con palabras exactas y palabras vecinas (neighboring words).

  • Extensión sin gaps: en esta etapa inicial se comparan los aminoácidos de ambos lados de la semilla (secuencia query con secuencia subject). Se evalúa si la similitud es suficiente para considerar a esta posición de interés o no. La mayoría de las semillas se descartan.

  • Extensión con gaps: cada alineamiento local sin gaps (high-scoring pair o HSP) se considera un punto de partida para un alineamiento local más extenso con gaps. BLAST intenta extender el HSP, siempre que la caída del score sea menos que X (bits).

3 of 9

Un simple aumento en la ktupla no es práctico debido a que esto genera un aumento exponencial del diccionario de palabras exactas.

Por ejemplo para una ktupla=2, tendremos una hash table de como máximo 202 = 400

Pero para una ktupla=7, tendremos una hash table de como máximo 207 = 1.28 x 109

Generación de la hash table o diccionario de palabras exactas

4 of 9

Generación de la hash table o diccionario de palabras exactas

A pesar de que tenemos un diccionario más grande con ktupla=7 que con ktupla=2, las ktuplas de longitud 7 nos permiten hacer una búsqueda más específica y menos permisiva o sensible, y por ende, encontraremos menos palabras coincidentes entre la secuencia query y subject.

Esto implica una menor densidad de semillas y, en consecuencia, se acota drásticamente el espacio de búsqueda para los pasos 2 y 3 del algoritmo.

¿Qué pasa cuando variamos el tamaño de la palabra o ktupla?

  • Disminuir el tamaño de la ktupla aumenta la sensibilidad, y por ende la cantidad de palabras coincidentes entre la secuencia query y subject, pero los matches son menos específicos.

  • Aumentar el tamaño de la ktupla disminuye el número de matches (disminuye la sensibilidad) debido a que se necesita una coincidencia en más aminoácidos para lograr un match perfecto, pero aumenta la especificidad por esta misma razón.

5 of 9

(Scoring with BLOSUM62)

Ampliación del diccionario a palabras vecinas

Una palabra vecina es una palabra obtenida con un score de al menos T cuando se la compara con la palabra original. La matriz de scoring default para blastp es BLOSUM62.

El diccionario con palabras exactas y vecinas es luego utilizado para localizar las coincidencias entre la secuencia query y las secuencias subject.

P Q G

P E G

7+2+6 = 15

6 of 9

7 of 9

blastp -query xlrhodop.pep -word_size 2 -threshold 11 -db ~/Swissprot_db/Swissprot.fasta -out xlrhodop.blastp

¿Qué comando tengo que utilizar para indicar el threshold T en mi búsqueda con blastp?

¿Y si quiero saber cuanto tarda en correr mi comando?

time blastp -query xlrhodop.pep -word_size 2 -threshold 11 -db ~/Swissprot_db/Swissprot.fasta -out xlrhodop.blastp

8 of 9

¿Qué pasa para un tamaño de ktupla=2 en comparación con ktupla=7 PERO con un threshold=11?

¿Sigue valiendo lo que habíamos enunciado anteriormente?

“Las ktuplas de longitud 7 nos permiten hacer una búsqueda más específica y menos permisiva o sensible, y por ende, encontraremos menos palabras coincidentes entre la secuencia query y subject.”

La respuesta es NO. Veamos un ejemplo...

ktupla=2

score

LW

15

IW

13

MW

13

VW

12

FW

11

AW

10

TW

10

LF

5

ktupla=7

score

LWANQKT

40

VWANQKT

37

VYANQKT

28

VYMNQKT

23

VYMEQKT

17

VYMEEKT

14

VYMEERT

11

VYMEERS

7

9 of 9