Bioinformatica NGS Next Generation Sequencing



Documenti analoghi
Avanzamento dei sistemi di sequenziamento

Alcuni aspetti legati al calcolo bioinformatico su CRESCO. Giuseppe Aprea UTMEA-CAL

DNA sequencing. Reading Genomes. Giovanni Bacci

Lezione 8. DNA sequencing informatics

Algoritmi e strutture dati. Codici di Huffman

A intervalli regolari ogni router manda la sua tabella a tutti i vicini, e riceve quelle dei vicini.

SOFTWARE PER LA RILEVAZIONE DEI TEMPI PER CENTRI DI COSTO

Siamo così arrivati all aritmetica modulare, ma anche a individuare alcuni aspetti di come funziona l aritmetica del calcolatore come vedremo.

4 3 4 = 4 x x x 10 0 aaa

Complessità Computazionale

Altri metodi di indicizzazione

Cluster. Vicino alla temperatura critica gli spin formano grandi gruppi (cluster)

Excel avanzato. I nomi. Gli indirizzi e le formule possono essere sostituiti da nomi. Si creano tramite Inserisci Nome Definisci

Informatica 3. LEZIONE 21: Ricerca su liste e tecniche di hashing. Modulo 1: Algoritmi sequenziali e basati su liste Modulo 2: Hashing

Più processori uguale più velocità?

Calcolatori Elettronici A a.a. 2008/2009

Il linguaggio SQL. è di fatto lo standard tra i linguaggi per la gestione di data base relazionali.

Introduzione alla teoria dei database relazionali. Come progettare un database

ELABORAZIONE DI DATI TRIDIMENSIONALI - RELAZIONE HOMEWORK 2

Protocollo di tracciamento e valutazione degli studenti dei corsi di italiano ICoNLingua A.A

Esercitazioni di Genomica

Analisi di dati RNA-Seq. Alberto Ferrarini

Funzioni in C. Violetta Lonati

Corso di Informatica

Capitolo Quarto...2 Le direttive di assemblaggio di ASM Premessa Program Location Counter e direttiva ORG

Capitolo 13. Interrogare una base di dati

Strumenti e metodi per la redazione della carta del pericolo da fenomeni torrentizi

Organizzazione della memoria

MANUALE D'USO DEL PROGRAMMA IMMOBIPHONE

Database. Si ringrazia Marco Bertini per le slides

Soluzione dell esercizio del 2 Febbraio 2004

Le Macchine di Turing

Esercitazioni di Genomica

Preprocessamento dei Dati

Algoritmi di clustering

Strategie e Operatività nei processi di backup e restore

COME SVILUPPARE UN EFFICACE PIANO DI INTERNET MARKETING

Elementi di Psicometria con Laboratorio di SPSS 1

Definire all'interno del codice un vettore di interi di dimensione DIM, es. int array[] = {1, 5, 2, 4, 8, 1, 1, 9, 11, 4, 12};

Lezione 5. Fogli di calcolo

Configuration Management

Report di valutazione studiolegalebraggio.it

Sistema operativo: Gestione della memoria

Bioinformatica: DNA e Algoritmi

Strutturazione logica dei dati: i file

Sistemi Operativi Il Sistema Operativo Windows (parte 3)

Mon Ami 3000 Conto Lavoro Gestione del C/Lavoro attivo e passivo

Genomica Servizio Sequenziamento DNA

Soluzione dell esercizio del 12 Febbraio 2004

Operazioni sui database

VALORE DELLE MERCI SEQUESTRATE

Università degli Studi di Ferrara - A.A. 2014/15 Dott. Valerio Muzzioli ORDINAMENTO DEI DATI

ITIS Mattei Sondrio. Appunti veloci su moodle versione 2.7

Nell esempio verrà mostrato come creare un semplice documento in Excel per calcolare in modo automatico la rata di un mutuo a tasso fisso conoscendo

Plate Locator Riconoscimento Automatico di Targhe

Introduzione alla programmazione in C

1) GESTIONE DELLE POSTAZIONI REMOTE

Organizzazione degli archivi

Mon Ami 3000 Varianti articolo Gestione di varianti articoli


Sistemi Operativi IMPLEMENTAZIONE DEL FILE SYSTEM. D. Talia - UNICAL. Sistemi Operativi 9.1

Sistemi Informativi Territoriali. Map Algebra

LA TRASMISSIONE DELLE INFORMAZIONI QUARTA PARTE 1

Logistica magazzino: Inventari

Progettaz. e sviluppo Data Base

Uso di JUnit. Fondamenti di informatica Oggetti e Java. JUnit. Luca Cabibbo. ottobre 2012

NUOVA PROCEDURA COPIA ED INCOLLA PER L INSERIMENTO DELLE CLASSIFICHE NEL SISTEMA INFORMATICO KSPORT.

Il software di base comprende l insieme dei programmi predisposti per un uso efficace ed efficiente del computer.

IN COLLABORAZIONE CON OPTA SRL

Calcolo del Valore Attuale Netto (VAN)

Bioinformatica (1) Introduzione. Dott. Alessandro Laganà

Librerie digitali. Video. Gestione di video. Caratteristiche dei video. Video. Metadati associati ai video. Metadati associati ai video

ESERCIZI DI PROBLEM SOLVING E COMPOSIZIONE DEI DIAGRAMMI DI FLUSSO per le classi terza

Il riduttore di focale utilizzato è il riduttore-correttore Celestron f/ 6.3.

FtpZone Guida all uso Versione 2.1

Nella prima lezione... Che cos è il Digitale. Prima parte: Che cos è il Digitale. Che cos è il Digitale. Che cos è il Digitale

Dispensa di database Access

Dimensione di uno Spazio vettoriale

V= R*I. LEGGE DI OHM Dopo aver illustrato le principali grandezze elettriche è necessario analizzare i legami che vi sono tra di loro.

Gestione ed analisi di base dati nell epidemiologia. delle malattie infettive

Con il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione.

Cosa è un foglio elettronico

Macchine a stati finiti. Sommario. Sommario. M. Favalli. 5th June 2007

Principi generali. Vercelli 9-10 dicembre G. Bartolozzi - Firenze. Il Pediatra di famiglia e gli esami di laboratorio ASL Vercelli

L archiviazione della posta elettronica può aiutarci a recuperare spazio senza costringerci a cestinare documenti importanti

Prestazioni CPU Corso di Calcolatori Elettronici A 2007/2008 Sito Web: Prof. G. Quarella prof@quarella.

Interesse, sconto, ratei e risconti

Generazione Automatica di Asserzioni da Modelli di Specifica

f(x) = 1 x. Il dominio di questa funzione è il sottoinsieme proprio di R dato da

Sistemi Operativi IMPLEMENTAZIONE DEL FILE SYSTEM. Implementazione del File System. Struttura del File System. Implementazione

Procedura SMS. Manuale Utente

Elementi di Psicometria con Laboratorio di SPSS 1

Olga Scotti. Basi di Informatica. Excel

Informatica 3. LEZIONE 23: Indicizzazione. Modulo 1: Indicizzazione lineare, ISAM e ad albero Modulo 2: 2-3 trees, B-trees e B + -trees

FIRESHOP.NET. Gestione del taglia e colore.

Convertitori numerici in Excel

CAPITOLO 10 I SINDACATI

CORSO ACCESS PARTE II. Esistono diversi tipi di aiuto forniti con Access, generalmente accessibili tramite la barra dei menu (?)

LA GENETICA: DNA e RNA LA GENETICA. DNA e RNA. Prof. Daniele Verri

Modello per la compilazione della scheda progetto SK_3.1.xls (da utilizzarsi per la presentazione di progetti di attività formative)

Transcript:

NGS Next Generation Sequencing

NGS Le tecnologie di sequenziamento di DNA rappresentano uno strumento fondamentale per la ricerca nel campo della genetica e della biologia molecolare; Dal 2005, piattaforme capaci di sequenziare enormi quantità di dati a costi sostenibili, hanno dato inizio all era del Next Generation Sequencing; 2

NGS: I numeri Tecnologie per il sequenziamento di DNA 1977 Sequenziamento manuale (100bp/run) 1987 Metodo SANGER (800bp/run) 1999 Metodo SANGER parallelo (70kbp/run) 2005 NGS Progetto Genoma Umano Inizio Inizio del progetto 1990 Tempi Tempo stimato 15 anni Soggetti Mix di 4 soggetti scelti da un pool di 20 Fine 2003. Costo 2.7 Miliardi di dollari 3

NGS: La rivoluzione Piattaforma ABI3730 Hiseq2000 Metodo Sanger Illumina Throughput (bp/run) 76000 600.000.000.000 Durata di un run 1 h 7 d Costo (Euro/Gbp) 1.250.000 $ 500 $ Il metodo Sanger (first generation) produce reads di lunghezza di circa 800bp a costi molto alti e basso throughput; Metodi di NGS (Roche/454, Illumina/Solexa, etc.) producono reads di lunghezza di circa 100pb con costi molto bassi e alto throughout; I metodi di NGS producono la stessa quantità di dati prodotti dai vecchi metodi in 10 anni in solo un paio di settimane. 4

NGS: Produzione dei dati Il processo di sequenziamento consiste nel «rompere» fisicamente il DNA in milioni di piccoli frammenti; Affinché un singolo frammento possa essere «letto» dal sequenziatore, deve essere replicato diverse volte; I sequenziatori di NGS producono frammenti che vengono letti ad entrambe le estremità (paired-end reads) 5

NGS: Produzione dei dati I dati prodotti da un sequenziatore consistono in immagini, similmente ai microarray, in cui le luminosità indicano la presenza di un determinato nucleotide; Il sequenziatore possiede un software (base-caller) che permette di trasformare tali immagini in reads. A seconda delle intensità dei segnali vengono associate delle qualità ai singoli nucleotidi, producendo cosi dei file in formato FASTQ: @SEQ_ID GATTTGGGGTTCAAAGCAGTATCGATCAAATAGTAAATCCATTTGTTCAACTCACAGTTT +!''*((((***+))%%%++)(%%%%).1***-+*''))**55CCF>>>>>>CCCCCCC65 6

NGS: Produzione dei dati Formato FASTQ: @SEQ_ID GATTTGGGGTTCAAAGCAGTATCGATCAAATAGTAAATCCATTTGTTCAACTCACAGTTT +!''*((((***+))%%%++)(%%%%).1***-+*''))**55CCF>>>>>>CCCCCCC65 Phread Quality Score Q: Se ad esempio per una base Q=30, allora le possibilità che essa sia un errore è 1/1000 Phred Quality Score Probability of incorrect base call Base call accuracy 10 1 in 10 90% 20 1 in 100 99% 30 1 in 1000 99.9% 40 1 in 10000 99.99% 50 1 in 100000 99.999% 7 Esistono due metodi di codifica di Q. Phread33 e Phread64 che consistono nell assegnare un valore numerico in base al codice ascii a cui va aggiunto il valore 33 (o 64).

NGS: Allineamento??? Cosa si intende per allineare due sequenze? E possibile calcolare la distanza tra due stringhe utilizzando, per esempio, la distanza di editing; La distanza di editing è definita come il minimo numero di operazioni da eseguire (inserimenti, cancellazioni, sostituzioni) per trasformare una stringa in un altra. a - c c t g a a g c t t - a In questo caso per trasformare la prima stringa nella seconda dobbiamo inserire una g, sostituire una c con una t e cancellare una g. La distanza di editing tra le due stringhe è dunque 3. 8

NGS: Allineamento??? Cosa si intende per allineare due sequenze? Siano S e T due sequenze. Un allineamento A associa ad S e T le sequenze S e T, che possono contenere simboli di spazio -, in modo che S = T Rimuovendo gli spazi da S e T otteniamo S e T. Se l = S = T, lo score di un allineamento pairwise è definito da: l i= 1 σ ( S'[ i], T'[ i] ) L allineamento ottimale sarà quello che massimizza la similarità (lo score); 9

NGS: Allineamento??? 10 ESEMPIO: NEEDLEMAN-WUNSCH Lo score ottimale V(i,j) di due sequenze S 1.i T 1 j ha le seguenti proprietà: Algoritmo di programmazione dinamica per calcolare l allineamento + + + = = = = = ), ( 1), ( ), ( ) 1, ( ), ( 1) 1, ( max ), ( ), ( ) (0, ), (,0) ( 0 0 j i j i j k k i k k T j i V S j i V T S j i V j i V T j V S i V σ σ σ σ σ match/mismatch deletion insertion

NGS: Allineamento??? ESEMPIO: NEEDLEMAN-WUNSCH i - 1 2 3 4 5 6 A C B C D B S 1 j - 0-1 -2-3 -4-5 -6 1 C -1-1 1 0-1 -2-3 2 A -2 1 0 0-1 -2-3 3 D -3 0 0-1 -1 1 0 4 B -4-1 -1 2 1 0 3 5 D -5-2 -2 Allineamento ottimale V(6,5) = 2 1 1 3 2 S 2 V ( i, j) = V max S 1 = ACBCDB S 2 = CADBD ( i 1, V ( i 1, 2 σ ( a, b) = 1 j 1) + σ ( S, T j) + σ ( S, ) V ( i, j 1) + σ (, T ) Otteniamo tre allineamenti ottimali: ACBCDB- ACBCDB- -ACBCDB -C-ADBD -CA-DBD CADB-D- i i j a = b j ) otherwise 11

NGS: Allineamento INPUT: Una sequenza Q (generalmente piccola) e un reference G; OUPUT: Posizionamento di Q rispetto a G. Possiamo permettere qualche differenza (mismatch) tra Q e G. Si potrebbe usare BLAST o BLAT: Sono algoritmi di allineamento locale; Sono inefficienti quando si ha a che fare con allineamento di milioni di piccole sequenze; 12

NGS: Allineamento rispetto a un reference Caratteristiche di un buon algoritmo di allineamento: Veloce; Permette solo mismatch o al più qualche piccolo indel; Usa tutta la reads (Allineamento globale); Usa le qualità delle basi; Per ogni read siamo interessati a: Posizione nel genoma di riferimento e strand; Posizioni dei mismatch rispetto al reference; 13

NGS: Allineamento rispetto a un reference INPUT: Una sequenza conosciuta di genoma di riferimento e un insieme (milioni) di reads provenienti dal sequenziamento del genoma di un individuo; OUPUT: Posizionamento delle reads rispetto al genoma di riferimento; Un certo numero (piccolo) di mismatch è permesso. Il genoma deve essere conosciuto Generalmente la fase di allineamento vero e proprio è preceduta da un preprocessing (INDEXING) del Genoma allo scopo di velocizzare l allineamento stesso. 14

NGS: Allineamento rispetto a un reference METODI BASATI SU HASH TABLE SEED (K=5) VALORI AAAAA 34,100000, AAAAC 3120,440, AAAAG. AAAAT. AAACA.......... TTTTT 4591923,12 Si costruisce un dizionario del reference che permette di ricercare le reads. Si considerano le prime K basi di una read (seed o K-mer) e si cerca la posizione nel genoma di riferimento. Una volta trovata si verifica che la parte rimanente della reads si allinei ad esempio con l algoritmo di Smith- Watermann (seed-and-extends). Alcune volte si usano gli spaced-seed cioè seed di lunghezza L dove si richiede che ci sia un match con il reference solo in K posizioni (K<L). Bisogna fare attenzione alla dimensione k. Allineatori di prima generazione: MAQ, ELAND 15

NGS: Allineamento rispetto a un reference METODI BASATI SU SUFFIX ARRAY Vengono memorizzati in un indice tutti i suffissi del genoma. Lo spazio e il tempo richiesto è O( G ) I suffissi vengono ordinati. La ricerca di una read r può avvenire con una semplice procedura di ricerca binaria O( r log G ). Allineatori di seconda generazione: SOAP 16

NGS: Allineamento rispetto a un reference METODI BASATI SU TRASFORMATA DI BURROWS WHEELER Supponiamo dia vere la stringa: G = BANANA$ Consideriamo tutte le possibili rotazioni e ordiniamo (il simbolo $ può essere considerato come primo o ultimo indifferentemente nell ordinamento): 0 B A N A N A $ 1 A N A N A $ B 2 N A N A $ B A 3 A N A $ B A N 4 N A $ B A N A 5 A $ B A N A N 6 $ B A N A N A 1 A N A N A $ B 3 A N A $ B A N 5 A $ B A N A N 0 B A N A N A $ 2 N A N A $ B A 4 N A $ B A N A 6 $ B A N A N A SA BWT 17

NGS: Allineamento rispetto a un reference METODI BASATI SU TRASFORMATA DI BURROWS WHEELER La trasformata di BW è reversibile; B N N $ A A A BWT 18

NGS: Allineamento rispetto a un reference METODI BASATI SU TRASFORMATA DI BURROWS WHEELER Trasformata inversa: Input sort add sort add sort add sort B A B A A N B A N A N A B A N A A N A N N A N A A N N A N A N A N A N A A N A $ N A N A A $ N A $ A $ B N A $ B A $ B A $ B $ B B A $ B A B A N $ B A N B A N A A N A N N A A N A N A N A N A N N A N A A N A N N A A N A N A $ A N A $ N A $ B A $ A $ $ B A $ B $ B A A $ B A $ B A N 19

NGS: Allineamento rispetto a un reference METODI BASATI SU TRASFORMATA DI BURROWS WHEELER Trasformata inversa: sort A N A N add B A N A N sort A N A N A add B A N A N A sort A N A N A $ A N A $ A $ B A B A N A N A N A N A $ B $ B A N N A N A $ N A $ B A $ B A N A A N A N A A N A $ B A $ B A N A N A $ B A $ B A N B A N A N N A N A $ N A $ B A $ B A N A N A N A $ B N A $ B A N $ B A N A N A N A N A $ A N A $ B A A $ B A N A A N A $ B A A $ B A N A B A N A N A N A N A $ B N A $ B A N $ B A N A N 20

NGS: Allineamento rispetto a un reference METODI BASATI SU TRASFORMATA DI BURROWS WHEELER Trasformata inversa: sort A N A N A $ A N A $ B A A $ B A N A B A N A N A N A N A $ B N A $ B A N $ B A N A N add B A N A N A $ N A N A $ B A N A $ B A N A $ B A N A N A A N A N A $ B A N A $ B A N A $ B A N A N 21

NGS: Allineamento rispetto a un reference METODI BASATI SU TRASFORMATA DI BURROWS WHEELER Ancora più importante in NGS è che la stringa trasformata è facilmente comprimibile; Metodi basati sulla trasformata di BW (FM-index) permettono di ricercare efficientemente sottostringhe lavorando direttamente con la BWT compressa. Allineatori di terza generazione: BWA, Bowtie, SOAP2 22

NGS: Allineamento rispetto a un reference RISORSE: Il minimo necessario Sistema operativo Linux; 8 processori; 32GB RAM; 2TB disk storage; 23

NGS: Assembly de novo INPUT: Un insieme R di piccole sequenze sull alfabeto ={A,C,G,T} estratte dal genoma G; OTPUT: La sequenza del genoma G. 24

NGS: Assembly de novo PROBLEMATICHE: Coverage incompleto del genoma; Errori di sequenziamento; Overlap tra reads potrebbero avvenire per caso e non perché effettivamente presenti nel genoma; Una read può provenire da uno strand o dall altro; Repeats; 25

NGS: Assembly de novo Reads prodotte (anche diverse librerie con diversi insert size) Pulitura, filtraggio da contaminanti, Error Correction Coverage. Numero medio di reads che coprono una determinata posizione enll assembly Trovare le reads che si sovrappongono e costruire i contig Determinare ordine e distanze tra i contig (usando le paired-end reads Sequenza finita 26

NGS: Assembly de novo PULITURA DELLE READS E FILTRAGGIO DA CONTAMINANTI (es rna). La prima fase consiste nel fare un trimming delle reads con scarsa qualità. Spesso accade che i sequenziatori di nuova generazione producano delle reads con scarsa qualità all inizio e alla fine della sequenza; Queste vanno eliminate (in parte o totalmente) al fine di produrre assembly migliori; Nella fase di preparazione, spesso accade che il DNA da sequenziare sia contaminato: Escherichia Coli; Bacteria; Fungi; Mithocondrion; Cloroplast; 27

NGS: Assembly de novo ERROR CORRECTION (es QUAKE) Le piattaforme di NGS producono short reads con elevati tassi di errore; La maggior parte degli algoritmi di error correction sono basati sul fatto che ciascuna posizione (base) nel genoma in media è sequenziata molte volte; Sfruttando questa informazione si cerca di correggere le basi in accordo con specifiche euristiche (ad es. k-mer frequency); 28

NGS: Assembly de novo ERROR CORRECTION (es QUAKE) La qualità dei risultati ottenuti con i vari error correctors può essere messa in evidenza plottando il grafico dei dei k-mers; ESEMPIO: Se sequenziamo senza errori un frammento di 100bp a 20x, avremo 20 reads da 100bp. Ogni k-mer che compone una read avrà copertura 20x; Se ad esempio abbiamo 19 reads sequenziate perfettamente e 1 read con un errore su una base centrale (ad es. C al posto di T), si avrà il k-mer K che si trova a cavallo di tale errore presente solo in una read (e non in 20) mentre gli altri 19 k-mer che si trovano nella stessa regione delle altre reads saranno concordi tra di loro (19x di copertura) ma discordi con K. Quindi la maggior parte dei k-mer avrà copertura 20x, un k-mer avrà copertura 1x e 1 kmer avra' copertura 19x (1x+19x=20x). Il kmer a copertura 1x è dato da un errore di sequenziamento. Tanto più basso è il picco all inizio del grafico, tanto migliore è il risultato; Il secondo picco dà un idea di quale sia la copertura approssimativa delle reads; Picco degli errori 600 400 200 0 1 32 63 94 12 15 18 21 24 28 31 34 37 40 43 46 49 52 55 59 62 65 68 Coverage approssimativo 29

NGS: Assembly de novo METODI GREEDY. Partendo da una read a caso, estenderla finchè possibile; Problemi in NGS: Troppe reads da allineare; Zone ripetute provocano errori; Utili solo per piccoli genomi; 30

NGS: Assembly de novo METODI BASATI SU STRING GRAPHS (es SGA) OVERLAP GRAPH: E un grafo in cui ogni read è un nodo del grafo e due nodi sono collegati tra loro se le corrispondenti read si sovrappongono per k basi (k è un parametro); STRING GRAPH: Reads che sono contenute in un altra read sono considerate ridondanti e vengono escluse. I transitive edges vengono rimossi. R1 R2 R3 ACATACGATACA TACGATACAGTT GATACAGTTGCA R2 R1 GTTGCA ACATAC R3 Transitive edge Il path R1 > R2 > R3 è un possibile assembly uguale al path R1> R3. 31

NGS: Assembly de novo METODI BASATI SU GRAFI DI DE BRUIJN (ABySS, SOAPdenovo, ALLPATHS-LG) In un grafo di De Bruijn ogni nodo rapprersenta in k-mer e due nodi sono connessi tra di loro se i k- mer si sovrappongono per k-1 basi. READ AGATGATTCG AGA GAT ATG TGA GAT ATT TTC TCG Le reads vengono ridotte a k-mers. Il princpale vantaggio è che un k-mer è presente solo una volta. In una situazione ideale un assembly sarebbe un cammino che attraversa ogni arco / nodo solo una volta (cammino Hamiltoniano / Euleriano). AGA GAT ATG TGA ATT K=3 TTC TCG 32

NGS: Assembly de novo METODI BASATI SU GRAFI DI DE BRUIJN (ABySS, SOAPdenovo, ALLPATHS-LG) ERRORI: Un errore nelle reads provoca una biforcazione K=3 GTA ACG CGT GTC SNP: Uno SNP provoca una biforcazione che presto converge K=3 CGT GTC TCA ACG CAG CGA GAC ACA 33

NGS: Assembly de novo METODI BASATI SU GRAFI DI DE BRUIJN (ABySS, SOAPdenovo, ALLPATHS-LG) REPEATS: Una zona ripetuta provoca la convergenza di due o più path in uno solo K=3 ACG CGT GTC TCA CAG TCG CAT 34

NGS: Assembly de novo REPEATS E ASSEMBLY DENOVO Le zone ripetute causano grossi problemi agli assemblatori 35

NGS: Assembly de novo SCAFFOLDING Sfruttando le informazioni provenienti dalle paired-end reads (o mate pairs con insert size più grandi), i contig prodotti dagli assemblatori: Vengono ordinati; La distanza tra contig adiacenti viene stimata usando le paired-end reads; 36

NGS: Assembly de novo TOOL COMPLETI PER L ASSEMBLY DENOVO Abyss (parallelo): E basato sui grafi di de Bruijn. Si costruisce un grafo in cui i nodi sono k- mers. Due nodi sono legati da un arco se i due k-meri che essi rappresentano si sovrappongono per k-1 caratteri. SGA (multithread): Si costruisce un grafo in cui ogni read è un nodo e due nodi sono legati da un arco se le corrispondenti read si sovrappongono per k valori. Al fine di velocizzare la costruzione del grafo si fa uso di FM-index. ALLPATHS-LG (multithread): Basato anch esso su grafi richiede almeno due librerie: paired-end reads con piccolo (100bp) e alto (3kb, 20kb) insert size. Richiede moltissima RAM. SOAPdenovo (multithread): Basato sempre su Grafi di de Bruijn, richiede molta RAM. 37

NGS: Assembly de novo TOOL DEDICATI Quake: Tool per l individuazione e correzione di errori. SOPRA: Tool di scaffolding basato sulla programmazione dinamica. SSPACE: Tool di Scaffolding che sfrutta librerie multiple di paired-end reads. OPERA: Basato su grafi. 38

NGS: Assembly de novo TOOL PER LA VISUALIZZAZIONE E ANALISI Tablet: http://bioinf.scri.ac.uk/tablet/ IGV: http://www.broadinstitute.org/igv/v1.2 Gbrowse: http://www.gbrowse.org/index.html Savant: http://genomesavant.com/p/savant/index 39

NGS: Assembly de novo CRITERI DI VALUTAZIONE Error Correction: Plot dei k-mer; Testing dei vari software con diversi parametri; Lunghezza dell assembly. E possibile stimare la dimensione di un genoma; Lunghezza Max/Media di un contig; N50: La lunghezza del contig tale che la somma di tutti i contig più grandi di esso copra almeno il 50% del genoma (La dimensione N tale che almeno il 50% del genoma è contenuto in contig di size N o maggiore); Sfruttare genomi già esistenti; Mappare le reads sul genoma appena creato (paired-end reads che mappano solo per una delle reads indicano possibili misassembly); Coverage sufficientemente alti; 40

NGS: Assembly de novo CRITERI DI VALUTAZIONE Molti tool forniscono delle statistiche che aiutano a capire la qualità dell assembly prodotto. Ad esempio ABySS produce un file di dati che contiene due colonne: La prima colonna contiene la distanza; La seconda colonna contiene il numero di reads allineate a quella distanza; Il picco da informazioni in merito all insert size delle reads; L ampiezza della campana fornisce invece la deviazione standard; 900 800 700 600 500 400 300 200 100 0 file 3- hist di abyss 132 158 182 206 230 254 278 302 326 350 374 398 422 446 470 494 518 542 566 590 614 638 662 687 712 749 41

NGS: Assembly de novo Esempio ABySS (su genoma di Olea chloroplast) CONTIGS k trim Total Length Average Max Sequences N50 L50 31 tutte 153740 10249,3 50775 15 2 40889 31 200 153102 25517 50775 6 2 40889 31 500 153102 25517 50775 6 2 40889 41 tutte 153484 17053,8 58491 9 2 50772 41 200 153085 30617 58491 5 2 50772 41 500 153085 30617 58491 5 2 50772 51 tutte 182551 12170,1 69275 15 2 50773 51 200 181552 30258,7 69275 6 2 50773 51 500 181552 30258,7 69275 6 2 50773 61 tutte 182324 22790,5 109272 8 1 109272 61 200 181659 60553 109272 3 1 109272 61 500 181659 60553 109272 3 1 109272 71 tutte 282086 35260,8 169057 8 1 169057 71 200 281307 93769 169057 3 1 169057 71 500 281307 93769 169057 3 1 169057 81 tutte 146920 18365 93179 8 1 93179 81 200 146134 48711,3 93179 3 1 93179 81 500 146134 48711,3 93179 3 1 93179 SCAFFOLDS k trim Total Length Average Max Sequences N50 L50 31 tutte 153890 12824,2 61588 12 2 50775 31 200 153252 51084 61588 3 2 50775 31 500 153252 51084 61588 3 2 50775 41 tutte 153584 21940,6 61504 7 2 50772 41 200 153185 51061,7 61504 3 2 50772 41 500 153185 51061,7 61504 3 2 50772 51 tutte 182701 15225,1 69275 12 2 61654 51 200 181702 60567,3 69275 3 2 61654 51 500 181702 60567,3 69275 3 2 61654 61 tutte 182374 26053,4 112434 7 1 112434 61 200 181709 90854,5 112434 2 1 112434 61 500 181709 90854,5 112434 2 1 112434 71 tutte 71 200 71 500 81 tutte 146970 20995,7 96207 7 1 96207 81 200 146184 73092 96207 2 1 96207 81 500 146184 73092 96207 2 1 96207 42

NGS: Assembly de novo Esempio ABySS (su genoma di Olea chloroplast) Quando è disponibile un genoma di riferimento si può considerare il dotplot (nei casi in cui il genoma sia abbastanza piccolo) 43

NGS: Files e Tools SAM/BAM: Il formato testuale SAM (e corrispondente binario conpresso BAM) permette di memorizzare gli allineamenti prodotti dagli assemblatori. SAMTOOLS permettono di manipolare allineamenti e dati di NGS (samtools.sourceforge.net) 44

NGS: Dopo L allineamento Analisi a livello di singola base 45

NGS: Dopo L allineamento } 46 SNP Calling

NGS: Dopo L allineamento Varianti Strutturali: DELEZIONE Si ossono sfruttano le paired-end reads allineate con il genoma di riferimento e quello prodotto reference Individuo (assembly denovo) 47

NGS: Dopo L allineamento Varianti Strutturali: INSERZIONE Si sfruttano le paired-end reads allineate con il genoma di riferimento e quello prodotto (cluster of singletons) 48

NGS: Dopo L allineamento IDENTIFICAZIONE DI DUPLICAZIONI Si identificano le zone con copertura inattesa delle reads. 49

NGS: Dopo L allineamento ALLINEAMENTO RISPETTO A UN REFERENCE Frazione di genoma di P. Trichocarpa non coperta dalle reads di P. Nigra Populus Trichocarpa reference Populus Nigra reads Abbiamo a che fare con una regione specifica di P. Trichocarpa??? 50

NGS: RNA-SEQ E possibile produrre reads provenienti da RNA piuttosto che da DNA al fine di ricostruire il trascrittoma (coding ma anche non coding rna); Genome guided: Le reads relative a mrna vengono allineate a un genoma di riferimento (con o senza annotazioni). Genome Independent: viene fatto un assembly denovo delle reads; Il conteggio delle reads che mappano negli esoni di un gene danno una informazione sul suo livello di espressione; Le reads mappate possono dare indicazioni anche rispetto a nuove strutture (nuovi geni???). 51

NGS: Referenze http://soap.genomics.org.cn http://bowtie-bio.sourceforge.net http://bio-bwa.sourceforge.net http://seqanswers.com/wiki/software/list http://en.wikipedia.org/wiki/list_of_sequence_alignment_software Li H., Handsaker B., Wysoker A., Fennell T., Ruan J., Homer N., Marth G., Abecasis G., Durbin R. and 1000 Genome Project Data Processing Subgroup, The Sequence alignment/map (SAM) format and SAMtools, Bioinformatics, 2010, 25, 2078-9. David R Kelley, Michael C Schatz, Steven L Salzberg, Quake: quality-aware detection and correction of sequencing errors, Genome Biology 2010, 11:R116 doi:10.1186/gb-2010-11-11-r116, software: http://www.cbcb.umd.edu/software/quake/ Jared T. Simpson, Richard Durbin, Efficient construction of an assembly string graph using the FMindex (and supplemental materials), Bioinformatics, vo. 26 ISMB 2010, pages 1367-1373, doi:10.1093/ bioinformatics/btq217, software: https://github.com/jts/sga Li H. and Durbin R., Fast and accurate long-read alignment with Burrows-Wheeler Transform. Bioinformatics, 2010. Paolo Ferragina and Giovanni Manzini, "Opportunistic Data Structures with Applications", Proceedings of the 41st Annual Symposium on Foundations of Computer Science. p.390, 2000. Eugene Myers, The fragment Assembly String Graph, Bioinformatics,2005, 21,ii79-ii85 52

NGS: Referenze The SGA google group: https://groups.google.com/forum/?fromgroups#!forum/sga-users The SGA on line wiki: https://github.com/jts/sga/wiki Butler J, MacCallum I, Kleber M, Shlyakhter IA, Belmonte MK, Lander ES, Nusbaum C, Jaffe DB. 2008. ALLPATHS: de novo assembly of whole-genome shotgun microreads. Genome Research 18: 810 20, software: http://www.broadinstitute.org/software/allpaths-lg/blog/ MacCallum I, Przybylski D, Gnerre S, Burton J, Shlyakhter I, Gnirke A, Malek J, McKernan K, Ranade S, Shea TP, Williams L, Young S, Nusbaum C, Jaffe DB. 2009. ALLPATHS 2: small genomes assembled accurately and with high continuity from short paired reads. Genome Biology 10: R103. ABySS: A parallel assembler for short read sequence data. Simpson JT, Wong K, Jackman SD, Schein JE, Jones SJ, Birol I. Genome Research, 2009-June. (Genome Research, PubMed), software: http://www.bcgsc.ca/platform/bioinfo/software/abyss/ Luo et al.: SOAPdenovo2: an empirically improved memory-efficient short-read de novo assembler. GigaScience 2012 1:18, software: http://soap.genomics.org.cn/soapdenovo.html Adel Dayarian, Todd P Michael, Anirvan M Sengupta, SOPRA: Scaffolding algorithm for paired reads via statistical optimization, BMC bioinformatics, 2010, 11:345 doi:10.1186/1471-2105-11-345, software: http://www.physics.rutgers.edu/~anirvans/sopra/ Boetzer M, Henkel CV, Jansen HJ, Butler D, Pirovano W, Scaffolding pre-assembled contigs using SSPACE, Bioinformatics. 2011 Feb 15;27(4):578-9. doi: 10.1093/bioinformatics/btq683, software: http://www.baseclear.com/landingpages/basetools-a-wide-range-of-bioinformatics-solutions/sspacev12/ 53

NGS: Referenze Gao S, Sung WK, Nagarajan N, Opera: reconstructing optimal genomic scaffolds with high-throughput paired-end sequences, J Comput Biol. 2011 Nov;18(11):1681-91. doi: 10.1089/cmb.2011.0170, software: http://sourceforge.net/projects/operasf/files/version%201.0/ Ben Langmead, Cole Trapnell, Mihai Pop and Steven L Salzberg, Ultrafast and memory-efficient alignment of short DNA sequences to the human genome, Genome Biology 2009, 10:R25, doi:10.1186/gb-2009-10-3- r25 Trapnell C, Pachter L, Salzberg SL. TopHat: discovering slice junctions with RNA-seq. Bioinformatics doi: 10.1093/bioinformatics/btp120, software: http://tophat.cbcb.umd.edu/ Trapnell C, Williams BA, Pertea G, Mortazavi AM, Kwan G, van Baren MJ, Salzberg SL, Wold B, Pachter L., Transcript assembly and quantification by RNA-Seq reveals unannotated transcripts and isoform switching during cell differentiation, Nature Biotechnology doi:10.1038/nbt.1621, software: http://cufflinks.cbcb.umd.edu/ 54