La determinazione delle regioni omologhe delle sequenze molecolari è spesso utilizzata per l’ulteriore inferenza della loro funzione ed evoluzione, e quindi l’allineamento accurato di sequenze multiple (MSA) di, Di conseguenza, c’è stato un enorme sforzo nello sviluppo e nell’implementazione di diversi algoritmi MSA, utilizzando approcci distinti per migliorare la precisione di allineamento risultante.

La valutazione dell’accuratezza dei programmi MSA viene spesso eseguita utilizzando database di sequenze curate manualmente (o semiautomaticamente) come BAliBASE , PREFAB e SABmark . Finora, BAliBASE è stato il database di allineamento più spesso utilizzato nella valutazione delle prestazioni di diversi programmi MSA. È stato costruito utilizzando sequenze proteiche o modelli con strutture tridimensionali note., L’ultimo inizio, la versione 3.0, ha avuto un aumento del numero di sequenze e allineamenti disponibili. Tali miglioramenti apparentemente hanno affrontato le principali preoccupazioni di Karplus e Hu per quanto riguarda l’uso di BAliBASE per confrontare gli algoritmi MSA.

I database di allineamento forniscono una fonte di allineamenti accurati per misurare la precisione e la velocità di diversi programmi, ma presentano anche diversi svantaggi. Anche se gli allineamenti dei database sono curati manualmente, esiste ancora la possibilità di disallineamenti che comporterebbero problemi di valutazione dell’accuratezza., Gli insiemi di allineamenti rimangono ancora piuttosto piccoli e potrebbero non rappresentare la gamma completa di scenari di evoluzione delle proteine. Inoltre, un grave inconveniente dell’uso dei database di allineamento è che gli algoritmi possono potenzialmente essere sviluppati e sintonizzati sugli allineamenti presenti esclusivamente in questi set di dati.

Recentemente ci sono stati diversi pacchetti di simulazione di sequenze di DNA che incorporano indel, come MySSP e DAWG . MySSP è stato ampiamente utilizzato in diversi studi di inferenza filogenetica e stima della distanza evolutiva accoppiato con precisione di allineamento del DNA ., Per le proteine, Lassmann e Sonnhammer in un precedente confronto di algoritmi MSA utilizzati set di sequenze creati artificialmente generati dal programma di simulazione Rosa . Rose simula sequenze di proteine consentendo il verificarsi di indel. I set di dati generati da Rose presentano i propri limiti per lo studio dell’accuratezza dell’allineamento. In Rose, la dimensione e il numero di indel non rappresentano adeguatamente i dati empirici per le proteine che si sono divergenti per diversi tempi evolutivi. Anche il programma assume tassi evolutivi uguali di tutti i siti nella proteina.,

In questo studio introduciamo un approccio migliorato per valutare l’accuratezza dell’allineamento utilizzando sequenze proteiche simulate generate da Simprot . Simprot è un programma di simulazione avanzato che impiega una versione parametrizzata della distribuzione di inserimento e cancellazione (indel) di Qian e Goldstein. Sebbene la distribuzione originale fosse derivata empiricamente da un sottoinsieme di allineamenti di sequenze proteiche altamente divergenti, la versione parametrizzata consente una simulazione molto flessibile di indel in sequenze per tutti i livelli di divergenza di sequenza., Simprot consente anche tassi di sostituzione e indel variabili in diversi siti implementando i tassi di siti distribuiti gamma . Sono disponibili anche tre modelli di sostituzione degli aminoacidi (PMB, PAM e JTT). Abbiamo utilizzato Simprot per generare allineamenti noti con un’ampia varietà di parametri evolutivi, nonché l’ultimo database BAliBASE di allineamenti curati, per indagare l’accuratezza e la velocità dei programmi software di allineamento di sequenze multiple di proteine popolari e pubblicamente disponibili.,

Programmi di allineamento

Ci sono molti pacchetti di computer disponibili che generano MSA di sequenze proteiche. Abbiamo selezionato nove dei programmi attualmente più utilizzati (in ordine di data di pubblicazione): Clustal W, Dialign2.2, T-Coffee, POA, Muscle, Mafft, ProbCons, Dialign-T e Kalign.

Clustal W versione 1.8

Questo è probabilmente il programma di allineamento più utilizzato e il più vecchio tra i pacchetti testati. Il software esegue un allineamento progressivo, prima impiegando un confronto sequenza a coppie calcolando una matrice di distanza che memorizza divergenza sequenza., Dopo aver ottenuto questa matrice, viene creata una guida ad albero utilizzando l’unione vicina, seguita dal terzo e ultimo passaggio in cui le sequenze sono allineate in base all’ordine dei rami nell’albero guida. Il programma impiega due penalità di gap nella sua procedura di allineamento: apertura del gap e estensione del gap e, nel caso dei polipeptidi, una matrice di peso di punteggio completo di aminoacidi. Queste penalità di gap dipendono principalmente da fattori come la matrice del peso, la lunghezza della sequenza e la somiglianza., In casi semplici, Clustal W potrebbe allineare accuratamente domini e sequenze corrispondenti di struttura secondaria o terziaria nota mentre in casi più complessi può essere utilizzato come un buon punto di partenza per ulteriori perfezionamenti.

Dialign2. 2 versione 2.2.1

Questo programma utilizza un metodo diagonale per allineare le sequenze localmente e globalmente. Dialign2.2 non confronta singoli residui, ma interi tratti ininterrotti (senza lacune, disallineamenti consentiti) di residui che formerebbero diagonali in un confronto a matrice di punti di due sequenze., Di conseguenza, non penalizza l’inserimento e l’estensione di spazi vuoti e può lasciare segmenti non correlati non allineati. Il primo passo della procedura crea tutti i possibili allineamenti a coppie, memorizzando una raccolta di diagonali che soddisfano determinati criteri di coerenza senza assegnazioni doppie o incrociate di residui in conflitto . Tutte le diagonali salvate sono ponderate per definire le voci con la somma massima dei pesi e quindi ordinate per determinare il grado di sovrapposizione, sottolineando l’esistenza di diagonali presenti in più sequenze., Un algoritmo simile a greedy esegue un’elaborazione finale, controllando i punteggi diagonali dall’alto verso il basso creando un allineamento multiplo finale. Gli spazi vuoti vengono inseriti alla fine della creazione MSA fino a quando tutti i residui presenti non sono collegati.

T-Coffee (Tree-based consistency objective function for alignment evaluation) versione 3.27

T-Coffee impiega una strategia progressiva nell’allineamento delle sequenze. Il programma crea prima una libreria da due fonti diverse: allineamenti globali da Clustal W e allineamenti locali da Lalign ., Per ogni coppia di sequenze vengono creati allineamenti globali e allineamenti locali a coppie dai dieci segmenti non intersecanti con punteggio superiore. Il programma elabora le informazioni globali e locali, assegnando pesi a tutti gli allineamenti a coppie relativi all’identità della sequenza . Questo è seguito dalla combinazione di gruppi che vengono uniti in una singola libreria. C’è una fase di estensione per questa libreria combinata, facendo sì che il peso finale di qualsiasi coppia di residui rifletta parte delle informazioni contenute nell’intera libreria., Un passaggio finale richiede un calcolo di una matrice di distanza e di un albero di giunzione vicino, poiché l’allineamento viene generato con una strategia progressiva allineando le due sequenze più vicine sull’albero in base al peso memorizzato nella libreria estesa. La coppia iniziale viene quindi fissata e gli eventuali spazi esistenti non possono essere spostati in seguito. L’allineamento progressivo continua fino a quando ogni sequenza è allineata.

POA (Partial Order Alignment) versione 2.0

POA è un altro pacchetto MSA che utilizza un algoritmo di allineamento progressivo senza l’utilizzo di profili generalizzati., Questo programma introduce l’uso di un formato PO-MSA (Partial Order-Multiple Sequence Alignment) per rappresentare le sequenze e riflette più accuratamente il contenuto biologico. Questo formato memorizza l’allineamento come un grafico compattato per i conteggi minimi di nodi e bordi, contenendo comunque tutte le informazioni disponibili in un MSA tradizionale. Le sequenze sono memorizzate come una serie lineare di nodi collegati ciascuno da due bordi. POA utilizza un algoritmo di programmazione dinamica tradizionale, in cui le sequenze lineari sono sostituite da grafici di ordine parziale (PO)., Queste strutture PO vengono trasformate in normali matrici 2D e ogni combinazione di celle viene valutata all’indietro come in una tradizionale procedura di allineamento della sequenza Smith-Waterman . Queste matrici vengono poi estese in qualsiasi direzione (diagonale, orizzontale, verticale) consentendo la produzione dell’allineamento a coppie sui punti di giunzione. L’MSA è ottenuto dall’allineamento di due sequenze all’inizio con l’aggiunta di altre sequenze successivamente alla coppia iniziale.

Muscle (confronto di sequenze multiple per aspettativa di log) versione 3.,6

Muscle utilizza un approccio di allineamento del profilo a coppie. Il programma costruisce prima un allineamento progressivo che viene poi migliorato e perfezionato in due fasi successive. L’allineamento progressivo viene creato dopo aver calcolato le somiglianze di sequenza, una stima della distanza e un albero UPGMA. Il muscolo utilizza due misure di distanza: una distanza k mer per coppie di sequenze non allineate e una distanza Kimura per coppie allineate . La fase di miglioramento dell’allineamento progressivo crea un nuovo albero con la matrice di distanza Kimura già calcolata e quindi costruisce un allineamento migliore basato su questo albero migliorato., L’ultima fase di perfezionamento utilizza una variante del partizionamento limitato dipendente dall’albero . Questo metodo elimina uno dei bordi dell’albero, bi-partizionando l’allineamento ed estraendo i profili di entrambe le partizioni che vengono poi riallineati con un allineamento profilo-profilo. Ogni bordo dell’albero viene visitato iterativamente e l’allineamento con un punteggio a coppie sommato aggiornato di ogni coppia di sequenze viene mantenuto. I bordi sono visitati in ordine decrescente di distanza dalla radice, con un riallineamento delle singole sequenze, passando a gruppi di sequenze più strettamente correlati .,

Mafft (Multiple sequence alignment based on Fast Fourier Transform) versione 5.732

Mafft è un programma che può essere utilizzato con diversi approcci di allineamento, o allineamento progressivo da solo (con Fast Fourier Transform), o progressivo seguito da perfezionamento iterativo. L’esecuzione di base di Mafft può avere fino a tre passaggi, ma la procedura predefinita esegue i due passaggi iniziali. Innanzitutto, viene creato un allineamento progressivo basato su una distanza approssimativa tra ogni coppia di sequenze basata su 6 tuple condivise., Un albero guida viene generato anche da UPGMA con linkage modificato e le sequenze vengono quindi allineate seguendo l’ordine dei rami dell’albero (questo passaggio da solo è chiamato strategia FFT-NS-1). Il secondo passo ricalcola una matrice di distanza, in base alle informazioni raccolte nel passaggio precedente, e l’allineamento progressivo viene rifatto utilizzando un albero ottenuto dalla nuova matrice come punto di partenza (fino a questo passaggio, la strategia è nota come FFT-NS-2 ed è l’impostazione predefinita utilizzata dal software)., L’ultima fase è il perfezionamento iterativo che ottimizza il punteggio WSP (weighted sum of pairs) di Gotoh, con un allineamento da gruppo a gruppo e la tecnica della partizione di restrizione dipendente dall’albero . Se tutti e tre i passaggi sono impiegati, la procedura è chiamata FFT-NS-i, il che significa che utilizza un metodo FFT per identificare rapidamente le regioni omologhe presenti nelle sequenze che è seguita da una fase iterativa di affinamento., FFT converte ogni singolo amminoacido presente in una sequenza in un vettore che rappresenta il volume e la polarità, che sono fattori importanti sugli eventi di sostituzione, consentendo al software di prevedere tali occorrenze con precisione.

Mafft include anche tre algoritmi di perfezionamento aggiuntivi: L-INS-i, G-INS-i ed E-INS-i . Queste strategie aumentano il numero di passaggi necessari per creare un allineamento MSA a cinque. In questi casi il primo passo richiede anche la costruzione di una matrice di distanza, non utilizzando 6-tuple., Diversamente dagli approcci FFT-NS-* non vi è alcuna ricostruzione dell’albero UPGMA calcolato e il programma passa al secondo passaggio, dividendo i segmenti privi di gap e memorizzando gli array di punteggi per ciascun segmento privo di gap da una sequenza all’altra. Mafft calcola quindi un valore di “importanza” dal punteggio del segmento e memorizza la frequenza con cui i residui appaiono su altri segmenti., Tutti i valori di ” importanza “vengono quindi raccolti in una matrice di” importanza ” nella fase tre che viene rapidamente seguita da un allineamento gruppo a gruppo ottenuto dalle matrici del punteggio e da uno schema di ponderazione basato su un algoritmo Needleman-Wunsch. Un passaggio finale perfeziona iterativamente gli allineamenti ottenuti, ottimizzando un punteggio WSP e i valori di” importanza ” calcolati in precedenza.

ProbCons (Probabilistic Coerenza-based multiple sequence alignment) versione 1.1

ProbCons è l’unico programma che utilizza un metodo probabilistico coerenza di allineamento., Si tratta di una modifica del tradizionale sistema di punteggio somma-di-coppie, e in aggiunta incorpora un algoritmo di allineamento progressivo basato su modello Markov coppia nascosta. La procedura di allineamento è divisa in quattro fasi, iniziando con un calcolo di matrici di probabilità posteriore per ogni coppia di sequenze. Questo è seguito da un calcolo di programmazione dinamica della precisione prevista di ogni allineamento a coppie. La trasformazione probabilistica della coerenza viene quindi impiegata per rivalutare i punteggi di precisione della corrispondenza., Un albero guida viene calcolato con clustering gerarchico con la somiglianza definita da una media ponderata dei valori tra le sequenze di ciascun cluster. L’albero guida viene utilizzato per allineare le sequenze utilizzando un approccio progressivo. Viene eseguita anche una fase di post-elaborazione, in cui le bi-partizioni casuali dell’allineamento generato vengono riallineate per verificare la presenza di regioni di allineamento migliori. ProbCons differisce da altri programmi di allineamento poiché non incorpora concetti biologici come il gap scoring specifico per la posizione, la costruzione evolutiva dell’albero e altre caratteristiche comunemente utilizzate da altri pacchetti.,

Dialign-T versione 0.2.1

Questo programma è una ri-implementazione della procedura sviluppata in Dialign2.2, ma con una soluzione migliore per gestire frammenti incoerenti, incluso il framment-chaining. Implementa anche un nuovo approccio per stimare le probabilità dell’occorrenza casuale di ciascun frammento presente nella sequenza da allineare. Dialign-T non utilizza tabelle pre-calcolate per ottenere punteggi di peso: calcola tabelle di probabilità da diverse matrici di sostituzione. Inoltre, l’algoritmo di allineamento multiplo greedy-like da Dialign2.,2 è stato modificato per evitare somiglianze locali spurie.

Kalign versione 1.04

Kalign è un altro programma che utilizza un approccio di allineamento progressivo per ottenere il miglior MSA possibile. La principale differenza di questo algoritmo con altri metodi è che impiega l’algoritmo di corrispondenza approssimativa delle stringhe di Wu-Manber quando si calcola la distanza tra le sequenze. L’algoritmo di Wu-Manber misura la distanza tra due stringhe utilizzando una distanza di modifica di Levenshtein, che consente una ricerca efficiente di disallineamenti (condivisi o meno) e modelli presenti nelle sequenze., Secondo gli sviluppatori Kalign, questa metodologia consente una stima della distanza che è veloce come un algoritmo k-tupla ma è più accurata . Il primo passo nella procedura di allineamento consiste nel calcolare le distanze a coppie utilizzando l’approccio Wu-Manber. La stima della distanza a coppie è seguita da una costruzione di un albero guida utilizzando UPGMA, che viene impiegato in un metodo di programmazione dinamica globale per allineare le sequenze/profili., Inoltre, il programma esegue un controllo di coerenza per definire il più grande insieme di corrispondenze di sequenza che possono essere inserite nell’allineamento, utilizzando una versione modificata di Needleman-Wunsch per trovare il percorso più coerente attraverso la matrice di programmazione dinamica. Inoltre, Kalign aggiorna le posizioni delle corrispondenze di pattern, che regola la posizione assoluta delle corrispondenze trovate all’interno delle sequenze alle loro posizioni relative all’interno dei profili generati .