Probalign

Probalign är ett sekvensjusteringsverktyg som beräknar en maximal förväntad noggrannhetsjustering med hjälp av partitionsfunktionens posteriora sannolikheter. Basparssannolikheter uppskattas med en uppskattning som liknar Boltzmann-fördelningen . Partitionsfunktionen beräknas med en dynamisk programmeringsmetod .

Algoritm

Följande beskriver algoritmen som används av probalign för att bestämma basparsannolikheterna.

Uppriktningspoäng

För att göra en anpassning av två sekvenser behövs två saker:

  • en likhetsfunktion (t.ex. PAM , BLOSUM ,...)
  • affin gap penalty:

Poängen för en anpassning a definieras som:

Nu är den viktade boltzmann-poängen för en inriktning a:

Där är en skalningsfaktor.

Sannolikheten för en inriktning under antagande av boltzmann-fördelning ges av

Där är partitionsfunktionen, dvs summan av boltzmannvikterna för alla linjer.

Dynamisk programmering

Låt beteckna partitionsfunktionen för prefixen och . Tre olika fall beaktas:

  1. partitionsfunktionen för alla justeringar av de två prefixen som slutar i en matchning.
  2. partitionsfunktionen för alla justeringar av de två prefixen som slutar med en infogning .
  3. partitionsfunktionen för alla justeringar av de två prefixen som slutar med en radering .

Då har vi:

Initialisering

Matriserna initieras enligt följande:

Rekursion

Partitionsfunktionen för justeringarna av två sekvenser och ges av , som kan beräknas rekursivt:

  • analogt

Sannolikhet för baspar

Slutligen ges sannolikheten att positionerna och bildar ett baspar av:

är respektive värden för den omräknade med inverserade basparsträngar.

Se även

externa länkar