BLAST | |
---|---|
Type | bioinformatik |
Udvikler | Steven Altschul , Warren Gish , Webb Miller , Eugene Myers og David Lipman ( NCBI ) |
Skrevet i | C++ og C |
Operativ system | UNIX , Linux , Apple Macintosh , Microsoft Windows |
nyeste version | 2.13.0 (17.03.2022) |
Læsbare filformater | XML BLAST-output [d] |
Genererede filformater | XML BLAST-output [d] |
Licens | offentligt domæne |
Internet side | ftp.ncbi.nlm.nih.gov/bla… |
BLAST ( Basic L local A lignment Search Tool ) er en familie af computerprogrammer, der bruges til at søge efter lignende aminosyre- eller nukleotidsekvenser [ 1 ] . Ved hjælp af BLAST kan forskeren sammenligne den sekvens, han har, med sekvenser fra databasen og finde formodede homologer. Det er et vigtigt værktøj for molekylærbiologer, bioinformatikere og taksonomer. BLAST-programmet blev udviklet af en gruppe videnskabsmænd: Stephen Altschul , Warren Gish , Webb Miller , Eugene Myers og David Lipman ved US National Institutes of Health . Den første publikation, der beskriver programmet, udkom i Journal of Molecular Biology i 1990 [2] .
Familien af programmer i BLAST-serien er opdelt i 4 hovedgrupper:
designet til at sammenligne den undersøgte nukleotidsekvens med en database over sekventerede genomer og deres regioner:
er designet til at sammenligne den undersøgte proteinaminosyresekvens med den eksisterende database over proteiner og deres fragmenter.
i stand til at omdanne nukleotidsekvenser til aminosyrer og omvendt:
applikationsprogrammer, der bruger BLAST:
Alle justeringer er normalt opdelt i globale (sekvenser sammenlignes fuldstændigt) og lokale (kun visse dele af sekvenser sammenlignes). Programmerne i BLAST-serien producerer lokale tilpasninger, som er forbundet med tilstedeværelsen af lignende domæner og mønstre i forskellige proteiner. Derudover muliggør lokal justering sammenligning af mRNA med genomisk DNA. I tilfælde af global tilpasning er der mindre sekvenslighed, især i deres domæner og mønstre.
Efter indtastning af den undersøgte nukleotid- eller aminosyresekvens (anmodning) på en af BLAST-websiderne, sendes den sammen med andre inputoplysninger (database, "ord"-(sektions)størrelse, E-værdi osv.) til serveren. BLAST opretter en tabel med alle "ord" (i et protein er dette en sektion af sekvenser, som som standard består af tre aminosyrer og for nukleinsyrer på 11 nukleotider) og lignende "ord".
Derefter søges de i databasen. Når et match er fundet, forsøges det at udvide størrelsen af "ordet" (op til 4 eller flere aminosyrer og 12 eller flere nukleotider), først uden huller (gab), og derefter bruge dem. Efter den maksimale udvidelse af størrelserne af alle mulige "ord" af den undersøgte sekvens, bestemmes alignmenterne med det maksimale antal matches for hvert forespørgsel-database-sekvenspar, og den opnåede information fikseres i SeqAlign-strukturen. Formateringsværktøjet, der er placeret på BLAST-serveren, bruger oplysningerne fra SeqAlign og præsenterer dem på forskellige måder (traditionelt, grafisk, tabel).
For hver sekvens, der findes i databasen af BLAST-programmer, er det nødvendigt at bestemme, hvor ens den er til den sekvens, der undersøges (forespørgsel), og om denne lighed er signifikant. For at gøre dette beregner BLAST antallet af bit og værdien af E (forventet værdi, E-værdi) for hvert par af sekvenser.
Ved bestemmelse af lighed er nøgleelementet substitutionsmatrixen, da den bestemmer lighedsscorerne for ethvert muligt par af nukleotider eller aminosyrer. De fleste programmer i BLAST-serien bruger BLOSUM62-matricen (blokerer substitutionsmatrix 62 % identitet, blokerstatningsmatrix med 62 % identitet). Undtagelserne er blastn og megablast (programmer, der udfører nukleotid-nukleotid-sammenligninger og ikke bruger aminosyresubstitutionsmatricer).
Ved hjælp af de modificerede Smith-Waterman eller Sellers algoritmer bestemmes alle par af segmenter (udvidede "ord"), som ikke kan øges, da dette vil føre til et fald i lighedsscore. Sådanne par af udvidede "ord" kaldes segmentpar med maksimal lighed (segmentpar med høj score, HSP). I tilfælde af en tilstrækkelig stor længde af de undersøgte sekvenser (m) og databasesekvensen (n), er HSP-lighedsindikatorerne karakteriseret ved to parametre K (størrelsen af søgeområdet) og P (tællesystemer). Disse indikatorer skal angives, når lighedsindikatorerne for den undersøgte sekvens og sekvensen af databasen (S) bringes.
For at sammenligne lighedsscorerne for forskellige justeringer, uanset den anvendte matrix, skal de transformeres. For at opnå den transformerede lighedsscore (antal bit, B), brug formlen:
Værdien af B viser, hvor ens sekvenserne er (jo større antal bit, jo større lighed). Da K- og P-indikatorerne er inkluderet i formlen til beregning af B, er der ikke behov for at specificere dem, når du bringer værdierne af B. Værdien af E (E-værdi), svarende til indikatoren B, viser pålideligheden af denne justering (jo lavere værdien af E, desto mere pålidelig er justeringen). Det bestemmes af formlen:
BLAST-programmer bestemmer overvejende værdien af E i stedet for P (sandsynlighed for at have mindst én HSP med en score større end eller lig med S). Men ved E < 0,01 er P- og E-værdierne næsten identiske.
Værdien af E bestemmes af formel (2), når man kun sammenligner to aminosyre- eller nukleotidsekvenser. Sammenligning af den undersøgte sekvens af længde m med sættet af databasesekvenser kan baseres på to antagelser. Den første antagelse er, at alle databasesekvenser ligner den, der studeres. Dette indebærer, at værdien af E for alignment med den korte sekvens indeholdt i databasen skal sidestilles med værdien af E for alignment med den lange sekvens. For at beregne værdien af E fra databasen skal du gange værdien af E, opnået ved parvis sammenligning, med antallet af sekvenser i den. Den anden antagelse er, at den sekvens, der undersøges, minder mere om korte end lange sekvenser, fordi sidstnævnte ofte består af forskellige regioner (mange proteiner er sammensat af domæner). Hvis det antages, at sandsynligheden for lighed er proportional med længden af sekvensen, så skal den parvise værdi E for en databasesekvens af længden n multipliceres med N/n, hvor N er den samlede længde af aminosyrer eller nukleotider i databasen. BLAST-programmer bruger overvejende denne tilgang til at beregne E-værdier fra en database.
Teoretisk kan en lokal alignment starte ved et hvilket som helst nukleotid- eller aminosyrepar af de alignede sekvenser. HPS starter dog generelt ikke tæt på kanten (begyndelsen eller slutningen) af sekvenserne. For at korrigere en sådan kanteffekt er det nødvendigt at beregne den effektive længde af sekvenserne. I tilfælde af sekvenser længere end 200 rester neutraliseres kanteffekten.