BLAST (biotecnología)
En bioinformática, BLAST (herramienta básica de búsqueda de alineación local) es un algoritmo y programa para comparar información de secuencias biológicas primarias, como las secuencias de aminoácidos de proteínas o los nucleótidos de secuencias de ADN y/o ARN. Una búsqueda BLAST permite a un investigador comparar una proteína o secuencia de nucleótidos en cuestión (llamada consulta) con una biblioteca o base de datos de secuencias e identificar secuencias de bases de datos que se parecen a la secuencia de consulta por encima de un cierto umbral. Por ejemplo, tras el descubrimiento de un gen previamente desconocido en el ratón, un científico normalmente realizará una búsqueda BLAST del genoma humano para ver si los humanos portan un gen similar; BLAST identificará secuencias en el genoma humano que se asemejan al gen del ratón basándose en la similitud de secuencia.
Fondo
BLAST, al que The New York Times llamó el Google de la investigación biológica, es uno de los programas bioinformáticos más utilizados para la búsqueda de secuencias. Aborda un problema fundamental en la investigación bioinformática. El algoritmo heurístico que utiliza es mucho más rápido que otros enfoques, como el cálculo de una alineación óptima. Este énfasis en la velocidad es vital para que el algoritmo sea práctico en las enormes bases de datos genómicas disponibles actualmente, aunque los algoritmos posteriores pueden ser incluso más rápidos.
Antes de BLAST, FASTA fue desarrollado por David J. Lipman y William R. Pearson en 1985.
BLAST surgió del modelo estocástico de 1990 de Samuel Karlin y Stephen Altschul. Propusieron "un método para estimar similitudes entre la secuencia de ADN conocida de un organismo con la de otro", y su trabajo ha sido descrito como "la base estadística de BLAST." Posteriormente, Altschul, junto con Warren Gish, Webb Miller, Eugene Myers y David J. Lipman de los Institutos Nacionales de Salud diseñaron el algoritmo BLAST, que se publicó en el Journal of Molecular Biology en 1990 y citado más de 75.000 veces.
Si bien BLAST es más rápido que cualquier implementación de Smith-Waterman en la mayoría de los casos, no puede "garantizar las alineaciones óptimas de las secuencias de consulta y base de datos" como lo hace el algoritmo de Smith-Waterman. La optimización de Smith-Waterman "garantizó el mejor rendimiento en precisión y los resultados más precisos" a expensas del tiempo y la potencia de la computadora.
BLAST ahorra más tiempo que FASTA al buscar solo los patrones más significativos en las secuencias, pero con una sensibilidad comparativa. Esto podría lograrse aún más si se comprende el algoritmo de BLAST que se presenta a continuación.
Ejemplos de otras preguntas que los investigadores utilizan BLAST para responder son:
- Que especies bacterianas tienen una proteína relacionada en el linaje a una determinada proteína con secuencia conocida de aminoácidos
- Qué otros genes codifican proteínas que exhiben estructuras o motivos como aquellos que acaban de ser determinados
BLAST también se utiliza a menudo como parte de otros algoritmos que requieren una coincidencia de secuencia aproximada.
BLAST está disponible en el sitio web del NCBI. Hay diferentes tipos de BLAST disponibles según las secuencias de consulta y las bases de datos de destino. Las implementaciones alternativas incluyen AB-BLAST (anteriormente conocida como WU-BLAST), FSA-BLAST (última actualización en 2006) y ScalaBLAST.
El artículo original de Altschul, et al. fue el artículo más citado publicado en la década de 1990.
Entrada
Secuencias de ingreso (en formato FASTA o Genbank), base de datos para buscar y otros parámetros opcionales como matriz de puntuación.
Salida
La salida BLAST se puede entregar en una variedad de formatos. Estos formatos incluyen HTML, texto sin formato y formato XML. Para la página web del NCBI, el formato de salida predeterminado es HTML. Al realizar un BLAST en NCBI, los resultados se dan en un formato gráfico que muestra los aciertos encontrados, una tabla que muestra los identificadores de secuencia de los aciertos con datos relacionados con la puntuación, así como alineaciones para la secuencia de interés y los aciertos recibidos con las puntuaciones BLAST correspondientes. para éstos. El más fácil de leer y el más informativo es probablemente la tabla.
Si uno intenta buscar una secuencia patentada o simplemente una que no está disponible en bases de datos disponibles para el público en general a través de fuentes como NCBI, hay un programa BLAST disponible para descargar a cualquier computadora, sin costo alguno. Esto se puede encontrar en los ejecutables de BLAST+. También hay programas comerciales disponibles para su compra. Las bases de datos se pueden encontrar en el sitio del NCBI, así como en el Índice de bases de datos BLAST (FTP).
Proceso
Utilizando un método heurístico, BLAST encuentra secuencias similares, localizando coincidencias cortas entre las dos secuencias. Este proceso de encontrar secuencias similares se llama siembra. Es después de este primer partido que BLAST comienza a realizar alineaciones locales. Al intentar encontrar similitudes en secuencias, los conjuntos de letras comunes, conocidos como palabras, son muy importantes. Por ejemplo, supongamos que la secuencia contiene el siguiente tramo de letras, GLKFA. Si se realizara un BLAST en condiciones normales, el tamaño de la palabra sería de 3 letras. En este caso, utilizando la extensión de letras dada, las palabras buscadas serían GLK, LKF, KFA. El algoritmo heurístico de BLAST localiza todas las palabras comunes de tres letras entre la secuencia de interés y la secuencia o secuencias de aciertos de la base de datos. Este resultado luego se utilizará para construir una alineación. Después de formar palabras para la secuencia de interés, también se ensamblan el resto de palabras. Estas palabras deben cumplir el requisito de tener una puntuación de al menos el umbral T, en comparación mediante el uso de una matriz de puntuación.
Una matriz de puntuación comúnmente utilizada para búsquedas BLAST es BLOSUM62, aunque la matriz de puntuación óptima depende de la similitud de secuencia. Una vez que se ensamblan y compilan tanto las palabras como las palabras vecinas, se comparan con las secuencias de la base de datos para encontrar coincidencias. La puntuación umbral T determina si una palabra en particular se incluirá o no en la alineación. Una vez realizada la siembra, la alineación, que tiene solo 3 residuos de longitud, se extiende en ambas direcciones mediante el algoritmo utilizado por BLAST. Cada extensión afecta la puntuación de la alineación al aumentarla o disminuirla. Si esta puntuación es superior a una T predeterminada, la alineación se incluirá en los resultados proporcionados por BLAST. Sin embargo, si esta puntuación es inferior a esta T predeterminada, la alineación dejará de extenderse, evitando que las áreas de mala alineación se incluyan en los resultados de BLAST. Tenga en cuenta que aumentar la puntuación T limita la cantidad de espacio disponible para la búsqueda, lo que disminuye el número de palabras vecinas y, al mismo tiempo, acelera el proceso de BLAST.
Algoritmo
Para ejecutar el software, BLAST requiere una secuencia de consulta para buscar y una secuencia para buscar (también llamada secuencia objetivo) o una base de datos de secuencias que contenga múltiples secuencias de este tipo. BLAST encontrará subsecuencias en la base de datos que sean similares a las subsecuencias de la consulta. En el uso típico, la secuencia de consulta es mucho más pequeña que la base de datos, por ejemplo, la consulta puede tener mil nucleótidos mientras que la base de datos tiene varios miles de millones de nucleótidos.
La idea principal de BLAST es que a menudo hay pares de segmentos de puntuación alta (HSP) contenidos en una alineación estadísticamente significativa. BLAST busca alineaciones de secuencias de alta puntuación entre la secuencia de consulta y las secuencias existentes en la base de datos utilizando un enfoque heurístico que se aproxima al algoritmo de Smith-Waterman. Sin embargo, el enfoque exhaustivo de Smith-Waterman es demasiado lento para buscar en grandes bases de datos genómicas como GenBank. Por lo tanto, el algoritmo BLAST utiliza un enfoque heurístico que es menos preciso que el algoritmo de Smith-Waterman pero 50 veces más rápido. [8] La velocidad y la precisión relativamente buena de BLAST se encuentran entre las innovaciones técnicas clave de los programas BLAST.
Una descripción general del algoritmo BLAST (una búsqueda de proteína a proteína) es la siguiente:
- Eliminar región de baja complejidad o secuencia repite en la secuencia de consultas.
- "Low-complexity region" significa una región de una secuencia compuesta de pocos tipos de elementos. Estas regiones podrían dar puntajes altos que confundan el programa para encontrar las secuencias significativas reales en la base de datos, por lo que deben ser filtrados. Las regiones estarán marcadas con una X (secuencias de proteínas) o N (secuencias de ácidos núcleos) y luego serán ignoradas por el programa BLAST. Para filtrar las regiones de baja complejidad, el programa SEG se utiliza para secuencias de proteínas y el programa DUST se utiliza para secuencias de ADN. Por otro lado, el programa XNU se utiliza para ocultar las repeticiones tándem en secuencias de proteínas.
- Hacer un k- lista de palabras de la secuencia de consultas.
- Toma. k=3 por ejemplo, enumeramos las palabras de la longitud 3 en la secuencia de proteínas de la consulta (k es generalmente 11 para una secuencia de ADN) "sequencialmente", hasta que se incluye la última letra de la secuencia de consultas. El método se ilustra en la figura 1.

Fig. 1 El método para establecer el k- Mejor lista de palabras de consulta.
- Toma. k=3 por ejemplo, enumeramos las palabras de la longitud 3 en la secuencia de proteínas de la consulta (k es generalmente 11 para una secuencia de ADN) "sequencialmente", hasta que se incluye la última letra de la secuencia de consultas. El método se ilustra en la figura 1.
- Listar las posibles palabras iguales.
- Este paso es una de las principales diferencias entre BLAST y FASTA. FASTA se preocupa por todas las palabras comunes en la base de datos y secuencias de consulta que se enumeran en el paso 2; sin embargo, BLAST sólo se preocupa por las palabras de alto nivel. Las puntuaciones se crean comparando la palabra en la lista en el paso 2 con todas las palabras de 3 letras. Mediante el uso de la matriz de puntuación (matriz de sustitución) para marcar la comparación de cada par de residuos, hay 20^3 posibles puntuaciones de partido para una palabra de 3 letras. Por ejemplo, la puntuación obtenida comparando PQG con PEG y PQA es respectivamente 15 y 12 con el esquema de ponderación BLOSUM62. Para palabras de ADN, un partido es marcado como +5 y un desajuste como -4, o como +2 y -3. Después de eso, un umbral de puntuación de palabras del vecindario T se utiliza para reducir el número de posibles palabras iguales. Las palabras cuyas puntuaciones son mayores que el umbral T permanecerá en la posible lista de palabras iguales, mientras que aquellos con puntuaciones inferiores serán descartados. Por ejemplo, PEG se mantiene, pero PQA es abandonado cuando T es 13.
- Organizar las palabras restantes de alto nivel en un árbol de búsqueda eficiente.
- Esto permite al programa comparar rápidamente las palabras de alto nivel con las secuencias de bases de datos.
- Repito paso 3 a 4 para cada uno k-Mejor palabra en la secuencia de consultas.
- Escanee las secuencias de bases de datos para los partidos exactos con las palabras de alto nivel restantes.
- El programa BLAST escanea las secuencias de bases de datos para la palabra de alto nivel restante, como PEG, de cada posición. Si se encuentra un partido exacto, este partido se utiliza para obtener una posible alineación sin explotar entre las secuencias de consulta y bases de datos.
- Extender los partidos exactos al par de segmento de alto nivel (HSP).
- La versión original de BLAST extiende una alineación más larga entre la consulta y la secuencia de bases de datos en las direcciones izquierda y derecha, desde la posición donde ocurrió el partido exacto. La extensión no se detiene hasta que la puntuación total acumulada del HSP comienza a disminuir. Un ejemplo simplificado se presenta en la figura 2.

Fig. 2 El proceso para ampliar el partido exacto. Adaptado del Análisis de Secuencia Biológica I, Temas actuales en Análisis de Genoma [2]. 
Fig. 3 Las posiciones de los partidos exactos. - Para ahorrar más tiempo, se ha desarrollado una versión más nueva de BLAST, llamada BLAST2 o BLAST. BLAST2 adopta un umbral de puntuación de palabras de barrio inferior para mantener el mismo nivel de sensibilidad para detectar la similitud de secuencia. Por lo tanto, la lista de posibles palabras iguales lista en el paso 3 se hace más tiempo. A continuación, las regiones exactas emparejadas, a poca distancia A del otro en la misma diagonal en la figura 3, se unirán como una nueva región más larga. Por último, las nuevas regiones se extienden por el mismo método que en la versión original de BLAST, y las puntuaciones de HSP (pala de segmento de alto nivel) de las regiones extendidas se crean utilizando una matriz de sustitución como antes.
- La versión original de BLAST extiende una alineación más larga entre la consulta y la secuencia de bases de datos en las direcciones izquierda y derecha, desde la posición donde ocurrió el partido exacto. La extensión no se detiene hasta que la puntuación total acumulada del HSP comienza a disminuir. Un ejemplo simplificado se presenta en la figura 2.
- Listar todos los HSP en la base de datos cuya puntuación es lo suficientemente alta para ser considerada.
- Listamos los HSP cuyas puntuaciones son mayores que la puntuación de corte empíricamente determinada S. Al examinar la distribución de los puntajes de alineación modelados comparando secuencias aleatorias, una puntuación de corte S se puede determinar de tal manera que su valor es lo suficientemente grande para garantizar la importancia de los HSP restantes.
- Evaluar el significado de la puntuación HSP.
- BLAST siguiente evalúa el significado estadístico de cada puntuación HSP explotando la distribución de valor extremo de Gumbel (EVD). (Se ha demostrado que la distribución de puntajes de alineación local Smith-Waterman entre dos secuencias aleatorias sigue al EVD Gumbel. Para alineaciones locales que contienen lagunas no se prueba.). De acuerdo con el EVD Gumbel, la probabilidad p de observar una puntuación S igual o superior a x se da por la ecuación
- p()S≥ ≥ x)=1− − exp ()− − e− − λ λ ()x− − μ μ )){displaystyle pleft(Sgeq xright)=1-exp left(-e^{-lambda left(x-muright)}right)}}}
- Donde
- μ μ =log ()Km.n.)λ λ {displaystyle mu ={frac {log left(Km'n'right)}{lambda };}
- Los parámetros estadísticos λ λ {displaystyle lambda } y K{displaystyle mathrm {K} se estiman ajustando la distribución de las puntuaciones de alineación local no seleccionadas, de la secuencia de consultas y una gran cantidad de versiones deslumbradas (Global o local shuffling) de una secuencia de bases de datos, a la distribución de valor extremo de Gumbel. Note que λ λ {displaystyle lambda } y K{displaystyle mathrm {K} depende de la matriz de sustitución, de las penalizaciones y de la composición de secuencias (frecuencias de letra). m.{displaystyle m'} y n.{displaystyle n'} son las longitudes efectivas de las secuencias de consultas y bases de datos, respectivamente. La longitud original de la secuencia se acorta a la longitud efectiva para compensar el efecto del borde (una alineación comienza cerca del final de una de las consultas o secuencia de la base de datos es probable que no tenga suficiente secuencia para construir una alineación óptima). Pueden calcularse como
- m... m− − In KmnH{displaystyle m'approx m-{frac {ln Kmn. - Sí.
- n... n− − In KmnH{displaystyle n'approx n-{frac {ln Kmn. - Sí.
- Donde H{displaystyle mathrm {H} es la puntuación media esperada por par alineado de residuos en una alineación de dos secuencias al azar. Altschul y Gish dieron los valores típicos, λ λ =0.318{displaystyle lambda =0.318}, K=0,13{displaystyle mathrm {K} =0.13}, y H=0.40{displaystyle mathrm {H} =0.40}, para alineación local sin explotar usando BLOSUM62 como matriz de sustitución. Usar los valores típicos para evaluar el significado se llama el método de tabla de búsqueda; no es preciso. La puntuación esperada E de un partido de base de datos es el número de veces que una secuencia de bases de datos no relacionada obtener una puntuación S superior a superior x por casualidad. La expectativa E obtenido en una búsqueda de una base de datos D secuencias se da por
- xright)D}}" xmlns="http://www.w3.org/1998/Math/MathML">E.. 1− − e− − p()s■x)D{displaystyle Eapprox 1-e^{-pleft(s]xright)D}
xright)D}}" aria-hidden="true" class="mwe-math-fallback-image-inline" src="https://wikimedia.org/api/rest_v1/media/math/render/svg/f781f5c2bca5df8f8b298e6fe1f7b26dd4a2907b" style="vertical-align: -0.505ex; width:17.928ex; height:3.009ex;"/>
- xright)D}}" xmlns="http://www.w3.org/1998/Math/MathML">E.. 1− − e− − p()s■x)D{displaystyle Eapprox 1-e^{-pleft(s]xright)D}
- Además, cuando <math alttext="{displaystyle pp.0.1{displaystyle p realizadas0.1}<img alt="p, E podría ser aproximado por la distribución Poisson como
- E.. pD{displaystyle Eapprox pD}
- Esta expectativa o valor esperado "E" (a menudo llamado E puntuación o E- valor o e-valor) evaluar la importancia de la puntuación HSP para alineación local sin explotar se reporta en los resultados BLAST. El cálculo que se muestra aquí se modifica si se combinan los HSP individuales, como cuando se producen alineaciones fijas (descritas a continuación), debido a la variación de los parámetros estadísticos.
- BLAST siguiente evalúa el significado estadístico de cada puntuación HSP explotando la distribución de valor extremo de Gumbel (EVD). (Se ha demostrado que la distribución de puntajes de alineación local Smith-Waterman entre dos secuencias aleatorias sigue al EVD Gumbel. Para alineaciones locales que contienen lagunas no se prueba.). De acuerdo con el EVD Gumbel, la probabilidad p de observar una puntuación S igual o superior a x se da por la ecuación
- Hacer dos o más regiones HSP en una alineación más larga.
- A veces, encontramos dos o más regiones de HSP en una secuencia de bases de datos que se puede hacer en una alineación más larga. Esto proporciona evidencia adicional de la relación entre la consulta y secuencia de bases de datos. Existen dos métodos, el método Poisson y el método sum-of-scores, para comparar el significado de las regiones HSP recién combinadas. Supongamos que hay dos regiones de HSP combinadas con los pares de puntajes (65, 40) y (52, 45), respectivamente. El método Poisson da más importancia al conjunto con la puntuación máxima inferior (45 monedas40). Sin embargo, el método sum-of-scores prefiere el primer set, ya que 65+40 (105) es mayor que 52+45(97). El BLAST original utiliza el método Poisson; BLAST gapped y el WU-BLAST utiliza el método de la suma de puntuaciones.
- Mostrar las alineaciones locales de Smith-Waterman apostadas de la consulta y cada una de las secuencias de bases de datos a juego.
- El BLAST original sólo genera alineamientos sin explotar, incluyendo los HSPs inicialmente encontrados individualmente, incluso cuando hay más de un HSP encontrado en una secuencia de base de datos.
- BLAST2 produce una sola alineación con brechas que pueden incluir todas las regiones de HSP inicialmente encontradas. Tenga en cuenta que el cálculo de la puntuación y su correspondiente E- El valor implica el uso de sanciones adecuadas.
- Informe cada partido cuya puntuación espera sea inferior a un parámetro umbral E.
Explosión paralela
Las versiones BLAST paralelas de bases de datos divididas se implementan utilizando MPI y Pthreads, y se han adaptado a varias plataformas, incluidas Windows, Linux, Solaris, Mac OS X y AIX. Los enfoques populares para paralelizar BLAST incluyen distribución de consultas, segmentación de tablas hash, paralelización de cálculos y segmentación de bases de datos (partición). Las bases de datos se dividen en partes del mismo tamaño y se almacenan localmente en cada nodo. Cada consulta se ejecuta en todos los nodos en paralelo y los archivos de salida BLAST resultantes de todos los nodos se fusionan para producir el resultado final. Las implementaciones específicas incluyen MPIblast, ScalaBLAST, DCBLAST, etc.
Programa
El programa BLAST se puede descargar y ejecutar como una utilidad de línea de comandos "blastall" o acceder de forma gratuita a través de la web. El servidor web BLAST, alojado por el NCBI, permite a cualquier persona con un navegador web realizar búsquedas de similitudes en bases de datos de proteínas y ADN constantemente actualizadas que incluyen la mayoría de los organismos recién secuenciados.
El programa BLAST se basa en un formato de código abierto, lo que brinda a todos acceso a él y les permite tener la capacidad de cambiar el código del programa. Esto ha llevado a la creación de varios "spin-offs" de BLAST.
Ahora hay varios programas BLAST diferentes disponibles, que se pueden usar dependiendo de lo que uno esté intentando hacer y con qué esté trabajando. Estos diferentes programas varían en la secuencia de entrada de la consulta, la base de datos en la que se busca y lo que se compara. Estos programas y sus detalles se enumeran a continuación:
BLAST es en realidad una familia de programas (todos incluidos en el ejecutable blastall). Éstas incluyen:
- Nucleotide-nucleótido BLAST (blastn)
- Este programa, dado una consulta de ADN, devuelve las secuencias de ADN más similares de la base de datos de ADN que el usuario especifica.
- Proteína-proteína BLAST (blastp)
- Este programa, dado una consulta de proteínas, devuelve las secuencias de proteínas más similares de la base de datos de proteínas que el usuario especifica.
- Posición-BLAST iterativo (PSI-BLAST) (
blastpgp) - Este programa se utiliza para encontrar parientes distantes de una proteína. En primer lugar, se crea una lista de todas las proteínas estrechamente relacionadas. Estas proteínas se combinan en una secuencia general "profile", que resume características significativas presentes en estas secuencias. Una consulta contra la base de datos de proteínas se ejecuta utilizando este perfil, y se encuentra un grupo más grande de proteínas. Este grupo más grande se utiliza para construir otro perfil, y el proceso se repite.
- Al incluir proteínas relacionadas en la búsqueda, PSI-BLAST es mucho más sensible en la captación de relaciones evolutivas distantes que una proteína estándar BLAST.
- Nucleotide 6-frame traducción-proteína (
blastx) - Este programa compara los productos de traducción conceptual de seis marcos de una secuencia de consulta de nucleótido (ambas cadenas) contra una base de datos de secuencia de proteínas para encontrar un gen de codificación de proteínas en una secuencia genómica o para ver si el cDNA corresponde a una proteína conocida.
- Nucleotide 6-frame traducción-nucleótido 6-frame traducción (
tblastx) - Este programa es el más lento de la familia BLAST. Traduce la secuencia de nucleótido de consulta en los seis marcos posibles y la compara con las traducciones de seis marcos de una base de datos de secuencia de nucleótido. El propósito de
tblastxes encontrar relaciones muy distantes entre secuencias de nucleótido. - Proteína-nucleótido 6-frame traducción (
tblastn) - Este programa compara una consulta de proteínas con los seis marcos de lectura de una base de datos de secuencia de nucleótido. Puede ser usado para mapear una proteína a ADN genómico.
- Gran número de secuencias de consultas (
megablast) - Al comparar grandes números de secuencias de entrada a través de la línea de comando BLAST, "megablast" es mucho más rápido que ejecutar BLAST múltiples veces. Concatena muchas secuencias de entrada juntas para formar una gran secuencia antes de buscar la base de datos BLAST, luego posanliza los resultados de búsqueda para obtener alineaciones individuales y valores estadísticos.
De estos programas, BLASTn y BLASTp son los más utilizados. Sin embargo, dado que las secuencias de proteínas se conservan mejor evolutivamente que las secuencias de nucleótidos, tBLASTn, tBLASTx y BLASTx producen resultados más confiables y precisos cuando se trata de ADN codificante. También permiten ver directamente la función de la secuencia de proteínas, ya que al traducir la secuencia de interés antes de la búsqueda, a menudo se obtienen resultados de proteínas anotados.
Versiones alternativas
Una versión diseñada para comparar genomas o ADN de gran tamaño es BLASTZ.
CS-BLAST (BLAST específico del contexto) es una versión extendida de BLAST para buscar secuencias de proteínas que encuentra el doble de secuencias relacionadas remotamente que BLAST a la misma velocidad y tasa de error. En CS-BLAST, las probabilidades de mutación entre aminoácidos dependen no sólo del aminoácido individual, como en BLAST, sino también de su contexto de secuencia local. La Universidad de Washington produjo una versión alternativa de NCBI BLAST, llamada WU-BLAST. Desde entonces, los derechos han sido adquiridos por Advanced Biocomputing, LLC.
En 2009, NCBI lanzó un nuevo conjunto de ejecutables BLAST, el BLAST+ basado en C++, y lanzó versiones C hasta la 2.2.26. A partir de la versión 2.2.27 (abril de 2013), solo están disponibles los ejecutables BLAST+. Entre los cambios se encuentra el reemplazo del ejecutable blastall con ejecutables separados para los diferentes programas BLAST y cambios en el manejo de opciones. La utilidad formatdb (basada en C) ha sido reemplazada por makeblastdb (basada en C++) y las bases de datos formateadas por cualquiera de ellas deberían ser compatibles para versiones explosivas idénticas. Los algoritmos siguen siendo similares, sin embargo, el número de resultados encontrados y su orden pueden variar significativamente entre la versión anterior y la nueva.
Versiones aceleradas
Cuando la infraestructura local es insuficiente, ejecutar BLAST en un servidor en la nube puede ser una buena manera de avanzar, ya que permite acceder a más energía sin dejar de utilizar BLAST estándar. El NCBI proporciona directrices para hacer esto; SequenceServer proporciona un mecanismo alternativo para ejecutar BLAST en la nube.
TimeLogic ofrece una implementación acelerada por FPGA del algoritmo BLAST llamado Tera-BLAST que es cientos de veces más rápido.
Otras versiones anteriormente admitidas incluyen:
- Acelerada por el FPGA
- Antes de su adquisición por Qiagen, CLC bio colaboró con SciEngines GmbH en un acelerador FPGA que afirmaron que dará 188x aceleración de BLAST.
- El Proyecto Bio Abierto de Mitrion-C fue un esfuerzo para el puerto BLAST para correr en Mitrion FPGAs.
- Acelerada por la GPU
- GPU-Blast es una versión acelerada de NCBI BLASTP para CUDA que es 3x~4x más rápido que NCBI Blast.
- CUDA-BLASTP es una versión de BLASTP acelerada por GPU y se afirma que corre hasta 10 veces más rápido que NCBI BLAST.
- G-BLASTN es una versión acelerada de NCBI blastn y megablast, cuya velocidad varía de 4x a 14x (en comparación con las mismas carreras con 4 hilos CPU). Su limitación actual es que la base de datos debe encajar en la memoria de la GPU.
- Acelerada por la CPU
mpiBlastes una implementación paralela de NCBI BLAST usando la interfaz de paso de mensajes. Mediante la utilización eficiente de los recursos computacionales distribuidos mediante la fragmentación de bases de datos, la segmentación de consultas, la programación inteligente y el paralelo I/O,mpiBLASTmejora el rendimiento de NCBI BLAST por varias órdenes de magnitud mientras se escala a cientos de procesadores.- CaBLAST hace la búsqueda en grandes bases de datos órdenes de magnitud más rápido explotando la redundancia en datos.
- Paracel BLAST fue una implementación paralela comercial de NCBI BLAST, apoyando a cientos de procesadores.
- QuickBLAST (kblastp) de NCBI es una implementación acelerada por la prefiltración basada en estimaciones de índices de Jaccard con fragmentos pentaméricos deshechos. El filtrado reduce ligeramente la sensibilidad, pero aumenta el rendimiento por un orden de magnitud. NCBI sólo pone la búsqueda disponible en su colección de proteínas no redundantes (nr) y no ofrece descargas.
Alternativas a BLAST
El predecesor de BLAST, FASTA, también se puede utilizar para buscar similitudes de proteínas y ADN. FASTA proporciona un conjunto similar de programas para comparar proteínas con bases de datos de proteínas y ADN, ADN con ADN y bases de datos de proteínas, e incluye programas adicionales para trabajar con péptidos cortos desordenados y secuencias de ADN. Además, el paquete FASTA proporciona SSEARCH, una implementación vectorizada del riguroso algoritmo de Smith-Waterman. FASTA es más lento que BLAST, pero proporciona una gama mucho más amplia de matrices de puntuación, lo que facilita adaptar una búsqueda a una distancia evolutiva específica.
Una alternativa extremadamente rápida pero considerablemente menos sensible a BLAST es BLAT (Búltima Lcomo Aalineación Tool). Mientras que BLAST realiza una búsqueda lineal, BLAT se basa en la indexación de la base de datos por k-mer y, por lo tanto, a menudo puede encontrar semillas más rápido. Otra alternativa de software similar a BLAT es PatternHunter.
Los avances en la tecnología de secuenciación a finales de la década de 2000 han hecho que la búsqueda de coincidencias de nucleótidos muy similares sea un problema importante. Los nuevos programas de alineación diseñados para este uso suelen utilizar la indexación BWT de la base de datos objetivo (normalmente un genoma). Las secuencias de entrada se pueden mapear muy rápidamente y la salida suele tener la forma de un archivo BAM. Ejemplos de programas de alineación son BWA, SOAP y Bowtie.
Para la identificación de proteínas, la búsqueda de dominios conocidos (por ejemplo, de Pfam) mediante la comparación con modelos ocultos de Markov es una alternativa popular, como HMMER.
Una alternativa a BLAST para comparar dos bancos de secuencias es PLAST. PLAST proporciona una herramienta de búsqueda de similitud de secuencias de banco a banco de propósito general de alto rendimiento que se basa en los algoritmos PLAST y ORIS. Los resultados de PLAST son muy similares a los de BLAST, pero PLAST es significativamente más rápido y capaz de comparar grandes conjuntos de secuencias con una pequeña huella de memoria (es decir, RAM).
Para aplicaciones en metagenómica, donde la tarea es comparar miles de millones de lecturas cortas de ADN con decenas de millones de referencias de proteínas, DIAMOND se ejecuta hasta 20.000 veces más rápido que BLASTX, manteniendo al mismo tiempo un alto nivel de sensibilidad.
El software de código abierto MMseqs es una alternativa a BLAST/PSI-BLAST, que mejora las herramientas de búsqueda actuales en toda la gama de compensaciones entre velocidad y sensibilidad, logrando sensibilidades mejores que PSI-BLAST en más de 400 veces su velocidad.
Se han sugerido enfoques de computación óptica como alternativas prometedoras a las implementaciones eléctricas actuales. OptCAM es un ejemplo de tales enfoques y ha demostrado ser más rápido que BLAST.
Comparación de BLAST y el proceso Smith-Waterman
Si bien tanto Smith-Waterman como BLAST se utilizan para encontrar secuencias homólogas buscando y comparando una secuencia de consulta con las de las bases de datos, tienen sus diferencias.
Debido a que BLAST se basa en un algoritmo heurístico, los resultados recibidos a través de BLAST, en términos de visitas encontradas, pueden no ser los mejores resultados posibles, ya que no le proporcionará todas las visitas dentro de la base de datos.. BLAST pierde coincidencias difíciles de encontrar.
Una mejor alternativa para encontrar los mejores resultados posibles sería utilizar el algoritmo de Smith-Waterman. Este método difiere del método BLAST en dos áreas: precisión y velocidad. La opción Smith-Waterman proporciona una mayor precisión, ya que encuentra coincidencias que BLAST no puede, porque no pierde ninguna información. Por tanto, es necesaria la homología remota. Sin embargo, en comparación con BLAST, consume más tiempo, sin mencionar que requiere una gran cantidad de uso y espacio de computadora. Sin embargo, se ha descubierto que las tecnologías para acelerar el proceso Smith-Waterman mejoran drásticamente el tiempo necesario para realizar una búsqueda. Estas tecnologías incluyen chips FPGA y tecnología SIMD.
Para recibir mejores resultados de BLAST, la configuración se puede cambiar desde su configuración predeterminada. Sin embargo, no existe una forma determinada o establecida de cambiar estas configuraciones para recibir los mejores resultados para una secuencia determinada. Las configuraciones disponibles para cambios son E-Value, costos de brecha, filtros, tamaño de palabra y matriz de sustitución. Tenga en cuenta que el algoritmo utilizado para BLAST se desarrolló a partir del algoritmo utilizado para Smith-Waterman. BLAST emplea una alineación que encuentra "alineaciones locales entre secuencias mediante la búsqueda de coincidencias cortas y a partir de estas coincidencias iniciales se crean alineaciones (locales)".
Visualización de salida BLAST
Para ayudar a los usuarios a interpretar los resultados de BLAST, hay diferentes programas disponibles. Según instalación y uso, características de análisis y tecnología, aquí se muestran algunas herramientas disponibles:
- Servicio NCBI BLAST
- intérpretes generales de salida BLAST, basados en GUI: JAMBLAST, Blast Viewer, BLASTGrabber
- entornos BLAST integrados: PLAN, BlastStation-Free, SequenceServer
- Páseres de salida BLAST: MuSeqBox, Zerg, BioParser, BLAST-Explorer, SequenceServer
- herramientas especializadas relacionadas con BLAST: MEGAN, BLAST2GENE, BOV, Circoletto
En las figuras 4 y 5 se muestran ejemplos de visualizaciones de resultados de BLAST.


Usos de BLAST
BLAST se puede utilizar para varios propósitos. Estos incluyen identificar especies, localizar dominios, establecer filogenia, mapeo de ADN y comparación.
- Identificar especies
- Con el uso de BLAST, puede identificar correctamente una especie o encontrar especies homologosas. Esto puede ser útil, por ejemplo, cuando usted está trabajando con una secuencia de ADN de una especie desconocida.
- Localización de dominios
- Al trabajar con una secuencia de proteínas se puede introducir en BLAST, para localizar dominios conocidos dentro de la secuencia de interés.
- Establecer la fitogenia
- Utilizando los resultados recibidos a través de BLAST puedes crear un árbol filogenético usando la página web de BLAST. Las filogenias basadas en BLAST son menos fiables que otros métodos fitogenéticos computacionales construidos con propósito, por lo que sólo deben basarse en análisis filogenéticos "primer paso".
- Cartografía de ADN
- Al trabajar con una especie conocida, y mirando a secuenciar un gen en un lugar desconocido, BLAST puede comparar la posición cromosómica de la secuencia de interés, a las secuencias relevantes en la base de datos. NCBI tiene una herramienta "Magic-BLAST" construida alrededor de BLAST para este propósito.
- Comparación
- Al trabajar con genes, BLAST puede localizar genes comunes en dos especies relacionadas, y se puede utilizar para mapear anotaciones de un organismo a otro.