Smith-Waterman-algoritme

Voorbeeld van het algoritme
Een animatie met een voorbeeld van de opeenvolgende stappen.

Het Smith-Waterman-algoritme voert lokale sequentiealignering uit. Dat wil zeggen, het bepaalt overeenkomsten tussen twee reeksen nucleotidesequenties of eiwitsequenties. In plaats van de hele sequentie te bekijken, vergelijkt het Smith-Waterman-algoritme segmenten van alle mogelijke lengtes en optimaliseert het de gelijkenismaat.

Het algoritme werd voor het eerst voorgesteld door Temple F. Smith en Michael S. Waterman in 1981. Net als het Needleman-Wunsch-algoritme, waarvan het een variant is, is Smith-Waterman een dynamisch programmeeralgoritme. Als zodanig heeft het de eigenschap dat het gegarandeerd de optimale lokale uitlijning vindt met betrekking tot het gebruikte scoresysteem. Het belangrijkste verschil met het Needleman-Wunsch-algoritme is dat negatieve scorematrixcellen op nul worden gezet.

De traceback-procedure begint bij de matrixcel met de hoogste score en gaat door totdat een cel met score nul wordt aangetroffen, wat de lokale uitlijning met de hoogste score oplevert.

Geschiedenis

In 1970 stelden Saul B. Needleman en Christian D. Wunsch een heuristisch homologie-algoritme voor sequentiealignering voor, ook wel bekend als het Needleman-Wunsch-algoritme. Het is een globaal uitlijningsalgoritme dat berekeningsstappen vereist ( en zijn de lengtes van de twee uitgelijnde sequenties). Het maakt gebruik van de iteratieve berekening van een matrix om de globale uitlijning weer te geven.

In het decennium daarna formuleerden Sankoff, Reichert, Beyer en anderen alternatieve heuristische algoritmen voor het analyseren van gensequenties. Sellers introduceerde een systeem voor het meten van sequentieafstanden. In 1976 voegden Waterman et al. het concept van gaten toe aan het oorspronkelijke meetsysteem.

In 1981 publiceerden Smith en Waterman hun Smith-Waterman-algoritme voor het berekenen van lokale uitlijning.

Motivatie

De afgelopen jaren hebben genoomonderzoeken bij diverse organismen enorme hoeveelheden sequentiedata gegenereerd voor genen en eiwitten, die computationele analyse vereisen. Sequentiealignering toont de relaties tussen genen of eiwitten, wat leidt tot een beter begrip van hun homologie en functionaliteit. Sequentiealignering kan ook geconserveerde sequenties en sequentiemotieven aan het licht brengen.

Een van de drijfveren voor lokale uitlijning is de moeilijkheid om correcte uitlijningen te verkrijgen in gebieden met een lage gelijkenis tussen verre verwante biologische sequenties. Mutaties hebben in de loop van de evolutie namelijk te veel 'ruis' toegevoegd om een zinvolle vergelijking van die gebieden mogelijk te maken. Lokale uitlijning vermijdt dergelijke gebieden volledig en richt zich op gebieden met een positieve score, oftewel gebieden met een evolutionair geconserveerd signaal van gelijkenis.

Beperkingen

De snelle groei van genetische data stelt de snelheid van de huidige DNA-sequentie-uitlijningsalgoritmen op de proef. De essentiële behoefte aan een efficiënte en nauwkeurige methode voor het ontdekken van DNA-varianten vereist innovatieve benaderingen voor parallelle verwerking in realtime.

Zie ook