An annealing mutation operator in the genetic algorithms for RNA folding Bruce A.Shapiro and Jin Chu...
-
Upload
costantino-pisani -
Category
Documents
-
view
219 -
download
3
Transcript of An annealing mutation operator in the genetic algorithms for RNA folding Bruce A.Shapiro and Jin Chu...
An annealing mutation operator in the genetic algorithms for RNA folding
Bruce A.Shapiro and Jin Chu Wu
RNA Struttura secondaria
Stem Stem :coppie contigue di nucleotidi :coppie contigue di nucleotidi complementari complementari
Loop Loop :sottosequenze singole racchiuse da :sottosequenze singole racchiuse da stemstem
Struttura secondariaStruttura secondaria-l’RNA tende a “conservare” nel tempo la struttura
secondaria più che la struttura primaria in se;è relativamente comune trovare esempi di RNA omologhi
che hanno una struttura secondaria molto simile ma la cui sequenza non è simile per nulla.
Cambiamenti drastici della sequenza sono quindi tollerati, purchè venga mantenuta la complementarietà delle basi accoppiate;
-se ne deduce che l’evoluzione di una sequenza di RNA èvincolata dalla struttura.Questo rende l’analisi delle sequenze di RNA più difficile,rispetto all’analisi del DNA o delle proteine. Infatti, per laricerca di RNA omologhi è necessario analizzare lasimilarità in termini di struttura secondaria conservata
oltre che di sequenza.
Problema biologico Problema biologico
L’obbiettivo primario è riuscire a trovare una L’obbiettivo primario è riuscire a trovare una struttura stabile e biologicamente funzionale struttura stabile e biologicamente funzionale
La stabilità è data dall’energia di legame degli stem in maniera opposta i loop destabilizano la struttura per la repulsione delle basi non complementari
Algoritmo geneticoAlgoritmo genetico
Utilizzando una architettura parallela (mas par Utilizzando una architettura parallela (mas par 2) con 16384 processori si è implementato 2) con 16384 processori si è implementato un algoritmo genetico per la predizione del un algoritmo genetico per la predizione del folding del RNAfolding del RNA
Che utilizza come parametro di fitness la Che utilizza come parametro di fitness la energia libera procedendo attraverso 4 fasi energia libera procedendo attraverso 4 fasi
PreprocessingPreprocessing Selezione Selezione Mutazione Mutazione Crossing over Crossing over
Preprocessing Preprocessing
L’algoritmo Genera una L’algoritmo Genera una popolazione iniziale di popolazione iniziale di possibili stem dalla possibili stem dalla sequenza data sequenza data
SelezioneSelezione
Ad ogni generazione ogni processore Ad ogni generazione ogni processore seleziona 2 sequenze da se stesso e seleziona 2 sequenze da se stesso e dai suoi 8 processori vicini usando dai suoi 8 processori vicini usando come parametro di selezione come parametro di selezione l’energia libera l’energia libera
MutazioneMutazione
Delle 2 sequenze selezionate, l’algoritmo genera Delle 2 sequenze selezionate, l’algoritmo genera delle mutazioni nelle strutture selezionando stem delle mutazioni nelle strutture selezionando stem random in accordo con l’operatore di mutazione random in accordo con l’operatore di mutazione dalle sequenze generate inizialmente formando 2 dalle sequenze generate inizialmente formando 2 strutture figlie strutture figlie
Crossing overCrossing over
Ultimo passo di ogni iterazione è una Ultimo passo di ogni iterazione è una funzione di incrocio tra strutture funzione di incrocio tra strutture padre e strutture figlie eliminando padre e strutture figlie eliminando eventuali interazioni terziarieeventuali interazioni terziarie
Da queste due nuove strutture il G.A. Da queste due nuove strutture il G.A. sceglie la struttura che ha l’energia sceglie la struttura che ha l’energia libera minore cosi da diventare la libera minore cosi da diventare la struttura della generazione successiva struttura della generazione successiva
Ottenendo ad ogni iterazione un totale Ottenendo ad ogni iterazione un totale di 16384 nuove strutture in parallelo di 16384 nuove strutture in parallelo
Problema Problema computazionale computazionale
L’algoritmo genetico cosi come L’algoritmo genetico cosi come progettato non riesce a raggiungere progettato non riesce a raggiungere risultati significativi anche dopo risultati significativi anche dopo migliaia di generazioni in quanto migliaia di generazioni in quanto genera molte strutture diverse fra genera molte strutture diverse fra loro specialmente per lunghe loro specialmente per lunghe sequenzesequenze
Problema Problema computazionale computazionale
Soluzione: Soluzione: si cerca d’implementare un si cerca d’implementare un nuovo operatore di mutazione in nuovo operatore di mutazione in quanto il vecchio operatore permette quanto il vecchio operatore permette poche mutazioni all’inizio del poche mutazioni all’inizio del processo aumentandole linearmente processo aumentandole linearmente al crescere della dimensione della al crescere della dimensione della struttura secondaria, rendendo struttura secondaria, rendendo difficile la convergenza delle difficile la convergenza delle strutture strutture
Operatore di mutazione Operatore di mutazione
Il numero di mutazioni in tutti i Il numero di mutazioni in tutti i processori ad ogni generazione è dato processori ad ogni generazione è dato da:da:
N N = numero totale di mutazioni ad ogni = numero totale di mutazioni ad ogni generazione generazione
S S = grandezza media della struttura 2°= grandezza media della struttura 2° P P = probabilità di mutazione= probabilità di mutazioneN = (16000*s*p)N = (16000*s*p)
Vecchio operatoreVecchio operatore
Nel vecchio operatore di mutazione il Nel vecchio operatore di mutazione il parametro “p” veniva mantenuto costante parametro “p” veniva mantenuto costante cosi che il numero di mutazioni totali ad ogni cosi che il numero di mutazioni totali ad ogni generazione dipendeva da “s” generazione dipendeva da “s”
permetteva poche mutazioni all’inizio del permetteva poche mutazioni all’inizio del processo e incrementava il numero totale di processo e incrementava il numero totale di mutazioni ad ogni generazione al crescere mutazioni ad ogni generazione al crescere della dimensione della struttura secondaria della dimensione della struttura secondaria
Ottenendo come risultato per lunghe sequenze Ottenendo come risultato per lunghe sequenze strutture secondarie molto diverse fra di strutture secondarie molto diverse fra di loro anche dopo molte generazioni loro anche dopo molte generazioni
Vecchio operatoreVecchio operatore
Batteriofago t4 32 con 1340 nucleotidi
Dopo 3000 iterazioni solo 3 processori contenevano una struttura con energia minima di -207,2kcal/mol
Nuovo operatoreNuovo operatore
Il nuovo operatore si comporta in modo Il nuovo operatore si comporta in modo opposto al vecchio, permettendo un largo opposto al vecchio, permettendo un largo numero di mutazioni su tutti i processori numero di mutazioni su tutti i processori all’inizio del processo per poi ridurle ad all’inizio del processo per poi ridurle ad ogni generazione all’aumentare della ogni generazione all’aumentare della dimensione della struttura secondaria dimensione della struttura secondaria
Facendolo dipendere quindi dallo stem Facendolo dipendere quindi dallo stem pool iniziale generato dalla fase di pool iniziale generato dalla fase di inizializzazione e dalla dimensione della inizializzazione e dalla dimensione della struttura secondaria ad ogni generazione struttura secondaria ad ogni generazione
Nuovo operatoreNuovo operatore
p =(α/s)+β
α = P1-s1 β S1<S2 e P1>P2
β = P1-P2/s1-s2
P = P = rapporto tra numero totale di mutazioni fratto i rapporto tra numero totale di mutazioni fratto i processori totali processori totali
P = N/16000 P=s*pP = N/16000 P=s*p
S1= 1 stem all’inizio del processo
P1= dipende dalla popolazione iniziale generata dalla sequenza
La probabilità di mutazione “p” è stata progettata La probabilità di mutazione “p” è stata progettata per discendere lungo una curva iperbolica al per discendere lungo una curva iperbolica al crescere della struttura secondaria secondo la crescere della struttura secondaria secondo la relazionerelazione
Operatori a confronto Operatori a confronto
Il numero totale di mutazioni è sostanzialmente più alto usando il vecchio operatore di mutazione rispetto al nuovo cosi come il numero di mutazioni ad ogni generazione con grandi struttura secondarie
Relazioni quantitativeRelazioni quantitative
La relazione empirica tra la lunghezza di sequenza e lo stem pool è di 0.026n2 cosi che avendo lo stem pool iniziale e la grandezza della struttura secondaria dal quale dipendono il numero totale di mutazioni permesse si ottiene un comportamento differenziale per sequenze corte e sequenze lunghe
Terminazione Terminazione
Per una rapida convergenza su lunghe Per una rapida convergenza su lunghe sequenze è stato implementato un sequenze è stato implementato un criterio di terminazione basato su criterio di terminazione basato su metodi statistici che usa come indice la metodi statistici che usa come indice la distribuzione dell’energia libera su tutti distribuzione dell’energia libera su tutti i processorii processori
viene presa in considerazione l’energia il viene presa in considerazione l’energia il cui rapporto fra i processori che la cui rapporto fra i processori che la posseggono fratto il totale dei posseggono fratto il totale dei processori supera una certa soglia processori supera una certa soglia fissata fissata
Terminazione Terminazione
Da questa energia ottenuta si calcola la Da questa energia ottenuta si calcola la media ponderata usata poi per il calcolo media ponderata usata poi per il calcolo dell’errore relativo ottenuto dal rapporto dell’errore relativo ottenuto dal rapporto tra la deviazione standard fratto il valore tra la deviazione standard fratto il valore assoluto della media ponderata cosi che assoluto della media ponderata cosi che ad ogni generazione la media ad ogni generazione la media dell’energia diventerà stabile dell’energia diventerà stabile
Il programma termina quando l’errore Il programma termina quando l’errore relativo diviene minore d’un valore di relativo diviene minore d’un valore di incertezza empiricamente fissato come incertezza empiricamente fissato come 1010-4-4
Comparazione sul Comparazione sul batteriofago t4batteriofago t4
Su 5 processi di una sequenza lunga 1340 nucleotidi il nuovo operatore di mutazione termina con un massimo di 937 iterazioni contro le 3000 fissate come limite superiore di terminazione per la vecchia versione dell’algoritmo
Con una sequenza di 1542 nucleotidi il numero di generazioni decresce
Comparazione sul 16sComparazione sul 16s
Struttura del 16sStruttura del 16sDalla struttura pubblicata il 16s conta 4 domini e 1542 nucleotidi, 98 stem totali che coinvolgono 448 coppie di basi
1° con 40 stem 1-560
2° con 20 stem 561-920
3° con 31 stem 921-1400
4° con 7 stem 1401-1542
Tra gli stem si conta uno psedoknots
Algoritmi a confrontoAlgoritmi a confronto
I risultati del algoritmo genetico con il vecchio I risultati del algoritmo genetico con il vecchio e nuovo operatore e un algoritmo e nuovo operatore e un algoritmo deterministico DPA(dinamic programming deterministico DPA(dinamic programming algorithm Zuker e Stiegler 1989) che da un algorithm Zuker e Stiegler 1989) che da un risultato univoco, vengono messi a confronto risultato univoco, vengono messi a confronto con la struttura pubblicata con la struttura pubblicata
Ottenendo un energia libera dal G.A. di -359.9 Ottenendo un energia libera dal G.A. di -359.9 kcal/molkcal/mol
Mentre il risultato del DPA è di -443.4 kcal/molMentre il risultato del DPA è di -443.4 kcal/mol
La struttura pubblicata ha un energia libera di La struttura pubblicata ha un energia libera di -307.4 kcal/mol-307.4 kcal/mol
Algoritmi a confronto Algoritmi a confronto Nel trattare i risultati si devono eliminare gli stem Nel trattare i risultati si devono eliminare gli stem
che non sono considerati dagli algoritmi come che non sono considerati dagli algoritmi come quelli formati da una sola coppia di basi o gli quelli formati da una sola coppia di basi o gli pseudoknotspseudoknots
G.A. con il nuovo operatore ha il 28% di 93 stemG.A. con il nuovo operatore ha il 28% di 93 stem G.A. con il vecchio operatore ha il 25% di 93 G.A. con il vecchio operatore ha il 25% di 93
stemstem DPA non trovando singole coppie e pseudoknots DPA non trovando singole coppie e pseudoknots
ha una percentuale del 20 % ha una percentuale del 20 %
Distribuzione degli stemDistribuzione degli stem
Distribuzione degli stem positivi e dei 26 corrispondenti alla struttura pubblicata è da notare che i risultati del G.A. sono un sottoinsieme degli stem trovati dagli altri algoritmi con in più strutture ramificate su più domini
Risultati e discussioni Risultati e discussioni
L’algoritmo genetico con il nuovo L’algoritmo genetico con il nuovo operatore di annealing migliora le operatore di annealing migliora le prestazioni in termini di tempo prestazioni in termini di tempo d’esecuzione e convergenza d’esecuzione e convergenza migliorando anche la predizione in migliorando anche la predizione in termini di struttura secondaria termini di struttura secondaria
Ulteriori variazioni Ulteriori variazioni Si prova a variare il numero di mutazioni Si prova a variare il numero di mutazioni
ad ogni generazione rispetto alla ad ogni generazione rispetto alla dimensione della struttura secondaria dimensione della struttura secondaria non più con una relazione lineare come non più con una relazione lineare come descritto precedentemente ma descritto precedentemente ma utilizzando funzioni che descrivono utilizzando funzioni che descrivono parabole concave e convesse su parabole concave e convesse su strutture con diversa dimensione strutture con diversa dimensione
26 sequenze corte26 sequenze corte batteriofago T4batteriofago T4 16s 16s
RisultatiRisultati
Comparando i Comparando i risultati per il risultati per il 16s non si sono 16s non si sono riscontrate riscontrate differenze differenze sostanziali sostanziali differentementdifferentemente dal T4 e le e dal T4 e le sequenze corte sequenze corte predette predette meglio dalla meglio dalla curva concava curva concava
Work in progressWork in progress
Il lavoro si focalizza verso una precisa Il lavoro si focalizza verso una precisa correlazione tra la lunghezza di correlazione tra la lunghezza di sequenza, la dimensione delle sequenza, la dimensione delle strutture generate inizialmente nella strutture generate inizialmente nella fase di preprocessing e la fase di preprocessing e la dimensione della struttura dimensione della struttura secondaria cosi da relazionarle con secondaria cosi da relazionarle con una nuova funzione che descrive la una nuova funzione che descrive la probabilità di mutazioneprobabilità di mutazione