+ All Categories
Home > Documents > Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... ·...

Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... ·...

Date post: 03-Feb-2020
Category:
Upload: others
View: 1 times
Download: 0 times
Share this document with a friend
68
Transcript
Page 1: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

Bioinformatica: DNA e Algoritmi

Alberto Policriti

Dpt. of Mathematics and Informatics, University of Udine.

Applied Genomics Institute

A. Policriti Bioinformatica: DNA e Algoritmi

Page 2: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

Di cosa parleremo

In generale

De�niamo i termini: DNA & Algoritmi

Tecnologie (⇒ Problemi) ⇒ Sequenziamento e Assemblaggio

Bioinformatica: Passato e Futuro

A. Policriti Bioinformatica: DNA e Algoritmi

Page 3: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

Di cosa parleremo

In generale

De�niamo i termini: DNA & Algoritmi

Tecnologie (⇒ Problemi) ⇒ Sequenziamento e Assemblaggio

Bioinformatica: Passato e Futuro

A. Policriti Bioinformatica: DNA e Algoritmi

Page 4: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

Di cosa parleremo

In generale

De�niamo i termini: DNA & Algoritmi

Tecnologie (⇒ Problemi) ⇒ Sequenziamento e Assemblaggio

Bioinformatica: Passato e Futuro

A. Policriti Bioinformatica: DNA e Algoritmi

Page 5: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

Di cosa parleremo

In generale

De�niamo i termini: DNA & Algoritmi

Tecnologie (⇒ Problemi) ⇒ Sequenziamento e Assemblaggio

Bioinformatica: Passato e Futuro

Le aree

Algoritmica su stringheMatematica del discretoString matching esatto e approssimato

Systems biologyMatematica del continuoAutomi e biologia

Computare usando il DNA

A. Policriti Bioinformatica: DNA e Algoritmi

Page 6: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

Crick e Watson: 1953

A. Policriti Bioinformatica: DNA e Algoritmi

Page 7: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

A. Policriti Bioinformatica: DNA e Algoritmi

Page 8: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

Lettura interessante

A. Policriti Bioinformatica: DNA e Algoritmi

Page 9: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

Da cosa partiamo

A. Policriti Bioinformatica: DNA e Algoritmi

Page 10: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

Da cosa partiamo

A. Policriti Bioinformatica: DNA e Algoritmi

Page 11: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

Da cosa partiamo

A. Policriti Bioinformatica: DNA e Algoritmi

Page 12: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

Memorizzazione dell'informazione

A. Policriti Bioinformatica: DNA e Algoritmi

Page 13: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

Memorizzazione dell'informazione

A. Policriti Bioinformatica: DNA e Algoritmi

Page 14: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

DNA

Le caratteristiche

un �turn� di DNA: 3.4nm 10.5 bases

una cellula: 2m di DNA

un uomo: 1013 celule

.... un mucchio di DNA!

Estremamente delicato da manipolare

A. Policriti Bioinformatica: DNA e Algoritmi

Page 15: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

La �loso�a è scritta in questo grandissimo libro checontinuamente ci sta aperto innanzi a gli occhi (io dicol'universo), ma non si può intendere se prima nons'impara a intender la lingua, e conoscer i caratteri, ne'quali è scritto. Egli è scritto in lingua matematica, e icaratteri son triangoli [A-T], cerchi [C-G], ed altre �guregeometriche [Met, Lys, Leu, ...], senza i quali mezi èimpossibile a intenderne umanamente parola; senza questiè un aggirarsi vanamente per un oscuro laberinto.

Galileo Galilei

A. Policriti Bioinformatica: DNA e Algoritmi

Page 16: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

Il nostro obiettivoTCAGGGCCAGCAGCAAAGTTTCCAGCTGATCATCCTGATGGTGCGCGGTGAGTAAGACACCACCTTCCGG

GAGGTTTTGGCGAAAAACGTCGTAGCGGGCCTGACGGGCAAGATCCTCAAGACTTTGCCGGGCCTTTTTC

TCAATTTCAACACGTTTTGCTATGAATGGTACTGTCAGTACATCGCAAACCTGCGCGCAATGGGTCAGCC'

ATTGGTCAGCCTTAGGATTTAAACCATGATGCACATGCACTGCCTGCAGGGAAAAGCCGTCTCGCTGAGA

TATATAACGGGCCAGCAATTCAAGTAACACGCGGGAATCGAGGCCGCCGCTGAATCCAACCAGTAAGTGC

CCGGGCCGGATCAGCTGATCCAGCACAGAAAAGACACTTGCTTCCAATTCATGATGACTCACAACAGATA

CTTCATCGATAAAGTACAATATGCGGATATTAGCAGATCCTGTTTGTCATTACGTGAACCGGGATAATAA

GCCATATTGCTTGCGGCTCGTTTACACGATAACGATGATCGGATGGAAGAAATAAAAAAAGCCCCTGAGC

GGGGCTTAAAGAAAAGGAAAGCATTAATACTTAACGGGTTTCCAGCGGAGCGAAGCTCTTCACAAGATCA

TCAATGGCTTTCATCTGTTGCAGGAATGGCTCCAGCTTATCCAGTGGTAATGCACTAGGACCATCACAAC

GTGCATGTTCCGGATCAGGATGCGACTCAATAAACAAGCCAGCCAGACCAACCGCCATACCAGCGCGTGC

CAGTTCAGTCACTTGCTCACGACGACCACTTGAAGCCGCACCCAGCGGGTCACGACACTGCAGGGAATGC

GTTACGTCAAAAATCACCGGGCTGCCCTGGCTGGCATCTTTCATCACGCCGAAGCCCAGCATGTCGACCA

CCAGATTGTCATAACCGAAATTCACACCGCGTTCACACAGAATAATACGGTCGTTACCGCATTCGGCGAA

TTTCTCAACGATGTTCTTAACCTGTCCCGGGCTCAGGAACTGCGGTTTTTTCACGTTAATCACGTTACCT

GTTTTAGCCAGAGCTTCCACCAGATCAGTCTGACGCGCCAAGAAGGCCGGTAATTGCAGCACATCCACG

CTTCACCGATCGGTTTGGCTTGCCATGTTTCATGCACATCTGTGATCAGGCTGACACCGAAGGTTTTCTT

CAGTTCTTCAAAAATACGCAGACCTTCTTCCATACCCGGACCACGGTAGGAATGAACTGAGGAGCGGTTG

GCTTTATCCCAGCTGGCTTTAAATACCAAAGGGATGCCCAGTTTTTCAGTTACGGTGACGTAGGTTTCAC

AGATCGACATCGCCAGATCCCGTGACTCCAGTACATTCATGCCACCAAACAGTACGAATGGCTGATCATT

AGCAACATTAATTCCGTTAAACTGAACGACTTTCTGTTTCATTCATCACTCCATCAGTGAAAAATTATGG

CGTCATGATCCAGCATCGCCAGCTGTACTTTCAGTACGGCTGCAACCGGATCCTGAGGACATTGTTCAAT

AAAATAGGTGTAATCATGAGCTGCCAGCTGCGGACATTCCAGCTGTTCATATACCAGCCCGCGATCACGG

ATTTCATAGGGGTCATCGGGGTTCATCGCCAGCAAAACCTCGCTGCAGCGTAACGCCTCCGGCAAACAAC

GACTTTGTAACATACAACCTTTAATCACGCTCAATAAACGTGACATTATCTGACGCTGATCTGTCTCTTT

TGTATATTTACTATCCATCCGGGTTAAGTCACCGAGTGTGGCTCGCAGCATTAATGACTGCTGCTCATAA

TCCCACTCTTCACCGGTAAACGGATCGATTAATACAGGCTTACTTTCCGGGAAAAGCAGCAAGAAGTTAC

CAGGGAAGCAAACACCACGCACCGGCAATTCTATCGAATGAGCCAGATGCATTAACACGATACCCAGCGT

GAGCGGCAAACCAGTGCGCTGCATCAGCACCTGATCCAGCAGGCAGTTTTCCGGTGCATAGTAATTCTGC

CAGTCACCGGAAAATTGCAATTCATGATAGAACGCATGCAACAGTTGTTCACGACGCCCTTTATCATCAG

GGGCCGTAATATACGGCCGGAGCTCTGTACACAAAGCGCGTAGCCGCTGCAATCCGTCGATCAATACCGG

TTTATCTTGTACATCTTCTGAGGCCATCAATGCCAGCATGGCAATATCCAGCCCTTCAAAATCAGTATCG

TGTGTAATGTTCATCTGCGTACTACCCTGCAACATCACCGGGCCACTGACCGCCGGAAACCCGATCCTGA

CCACCTAAATCCGATTTGGTTGTGACTGCCTGAAAACCACGGGACGACAATAAGTCACGCACAGCCTCAG

A. Policriti Bioinformatica: DNA e Algoritmi

Page 17: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

Termini

Sequenziamento

estrazione e frammentazionedel DNA

sequenziamento deiframmenti e generazionedelle reads

wet-lab activity

Assemblaggio

stoccaggio delle reads (+altre informazioni)

assemblaggio delle reads(corte) in contigs (lunghe)

dry-lab activity

A. Policriti Bioinformatica: DNA e Algoritmi

Page 18: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

La combinatorica del problema

Vincoli

L'attività di sequenziamento produce reads di lunghezzalimitata

Il costo di un progetto è proporzionale al numero di readsprodotte

A. Policriti Bioinformatica: DNA e Algoritmi

Page 19: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

La combinatorica del problema

Vincoli

L'attività di sequenziamento produce reads di lunghezzalimitata

Il costo di un progetto è proporzionale al numero di readsprodotte

L'input degli algoritmi di assemblaggio

A. Policriti Bioinformatica: DNA e Algoritmi

Page 20: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

La combinatorica del problema

Vincoli

L'attività di sequenziamento produce reads di lunghezzalimitata

Il costo di un progetto è proporzionale al numero di readsprodotte

L'input degli algoritmi di assemblaggio

GACTTTGTAACATACAACCTTTAATCACGCTCAATATGACATTATCTGACGCTGATCTGTCTC...

A. Policriti Bioinformatica: DNA e Algoritmi

Page 21: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

La combinatorica del problema

Vincoli

L'attività di sequenziamento produce reads di lunghezzalimitata

Il costo di un progetto è proporzionale al numero di readsprodotte

L'input degli algoritmi di assemblaggio

GACTTTGTAACATACAACCTTTAATCACGCTCAATATGACATTATCTGACGCTGATCTGTCTC...

GACTTTGTA ACATACAAC CTTTAATCACG CTCAATATGACAT TATCTGACGCTGA TCTGTCTC...

A. Policriti Bioinformatica: DNA e Algoritmi

Page 22: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

La combinatorica del problema

Vincoli

L'attività di sequenziamento produce reads di lunghezzalimitata

Il costo di un progetto è proporzionale al numero di readsprodotte

L'input degli algoritmi di assemblaggio

GACTTTGTAACATACAACCTTTAATCACGCTCAATATGACATTATCTGACGCTGATCTGTCTC...

CTTTAATCACG

ACATACAAC

CTCAATATGACAT

TATCTGACGCTGA

TCTGTCTC

GACTTTGTA

...

A. Policriti Bioinformatica: DNA e Algoritmi

Page 23: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

La combinatorica del problema

Vincoli

L'attività di sequenziamento produce reads di lunghezzalimitata

Il costo di un progetto è proporzionale al numero di readsprodotte

L'input degli algoritmi di assemblaggio

GACTTTGTAACATACAACCTTTAATCACGCTCAATATGACATTATCTGACGCTGATCTGTCTC...

CTTTAATCACG

ACATACAAC

CTCAATATGACAT

TATCTGACGCTGA

TCTGTCTC

GACTTTGTA

...

?

A. Policriti Bioinformatica: DNA e Algoritmi

Page 24: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

La combinatorica del problema

Vincoli

L'attività di sequenziamento produce reads di lunghezzalimitata

Il costo di un progetto è proporzionale al numero di readsprodotte

La soluzione: tante copie

A. Policriti Bioinformatica: DNA e Algoritmi

Page 25: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

La combinatorica del problema

Vincoli

L'attività di sequenziamento produce reads di lunghezzalimitata

Il costo di un progetto è proporzionale al numero di readsprodotte

La soluzione: tante copie

GACTTTGTA

A. Policriti Bioinformatica: DNA e Algoritmi

Page 26: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

La combinatorica del problema

Vincoli

L'attività di sequenziamento produce reads di lunghezzalimitata

Il costo di un progetto è proporzionale al numero di readsprodotte

La soluzione: tante copie

GACTTTGTATTTGTAACATAC

A. Policriti Bioinformatica: DNA e Algoritmi

Page 27: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

La combinatorica del problema

Vincoli

L'attività di sequenziamento produce reads di lunghezzalimitata

Il costo di un progetto è proporzionale al numero di readsprodotte

La soluzione: tante copie

GACTTTGTAACATACAACTTTGTAACATAC

A. Policriti Bioinformatica: DNA e Algoritmi

Page 28: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

La combinatorica del problema

Vincoli

L'attività di sequenziamento produce reads di lunghezzalimitata

Il costo di un progetto è proporzionale al numero di readsprodotte

La soluzione: tante copie

GACTTTGTAACATACAACTTTGTAACATACAACCTTTAA

A. Policriti Bioinformatica: DNA e Algoritmi

Page 29: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

La combinatorica del problema

Vincoli

L'attività di sequenziamento produce reads di lunghezzalimitata

Il costo di un progetto è proporzionale al numero di readsprodotte

La soluzione: tante copie

GACTTTGTAACATACAACCTTTAATCACGTTTGTAACATACAACCTTTAA

A. Policriti Bioinformatica: DNA e Algoritmi

Page 30: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

La combinatorica del problema

Vincoli

L'attività di sequenziamento produce reads di lunghezzalimitata

Il costo di un progetto è proporzionale al numero di readsprodotte

La soluzione: tante copie

GACTTTGTAACATACAACCTTTAATCACG . . .TTTGTAACATACAACCTTTAATCACGCTCAATA . . .

A. Policriti Bioinformatica: DNA e Algoritmi

Page 31: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

Ripuliamo �matematicamente� il problema

A. Policriti Bioinformatica: DNA e Algoritmi

Page 32: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

Ripuliamo �matematicamente� il problema

Definizione (Shortest Superstring Problem)

Dato un insieme di stringhe {s1, s2, ..., sn} trova la più cortasuper-stringa T tale che tutte le si siano sotto-stringhe di T .

A. Policriti Bioinformatica: DNA e Algoritmi

Page 33: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

Ripuliamo �matematicamente� il problema

Due problemi:

1 NP-completenezza [Gallant et al. 1980]2 Il problema dell'assemblaggio è formulato in modo scorretto!

A. Policriti Bioinformatica: DNA e Algoritmi

Page 34: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

Elementi ripetuti

A. Policriti Bioinformatica: DNA e Algoritmi

Page 35: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

Elementi ripetuti

...

e, in aggiunta,

A. Policriti Bioinformatica: DNA e Algoritmi

Page 36: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

Morale

Assemblaggi di �qualità�

Alte �coperture� (tanti genomiequivalenti)

Tante reads

reads lunghe

Buon sw (assembler)

Buon hw (parallelo?)

...

A. Policriti Bioinformatica: DNA e Algoritmi

Page 37: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

L'allineamento di sequenze

Input

...GTTGATTAGCTTATCCCAAAGCAAGGCACTGAAAATGCTAGGTGATGTAGCTTAACCCAAGCAAGGCACTAAAAATGCCTAG ...

A. Policriti Bioinformatica: DNA e Algoritmi

Page 38: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

L'allineamento di sequenze

Input

...GTTGATTAGCTTATCCCAAAGCAAGGCACTGAAAATGCTAGGTGATGTAGCTTAACCCAAGCAAGGCACTAAAAATGCCTAG ...

Output

...GTTGAT_TAGCTTATCCCAAAGCAAGGCACTGAAAATG_CTAGGT_GATGTAGCTTAACCCAA_GCAAGGCACTAAAAATGCCTAG...

A. Policriti Bioinformatica: DNA e Algoritmi

Page 39: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

L'allineamento di sequenze

Input

...GTTGATTAGCTTATCCCAAAGCAAGGCACTGAAAATGCTAGGTGATGTAGCTTAACCCAAGCAAGGCACTAAAAATGCCTAG ...

Output

...GTTGAT_TAGCTTATCCCAAAGCAAGGCACTGAAAATG_CTAGGT_GATGTAGCTTAACCCAA_GCAAGGCACTAAAAATGCCTAG...

A. Policriti Bioinformatica: DNA e Algoritmi

Page 40: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

Un altro problema algoritmico (semplice?)

Input

T testo su un alfabeto Σ e P pattern su Σ.

A. Policriti Bioinformatica: DNA e Algoritmi

Page 41: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

Un altro problema algoritmico (semplice?)

Input

T testo su un alfabeto Σ e P pattern su Σ.

Output

Tutte le occorrenze di P in T

A. Policriti Bioinformatica: DNA e Algoritmi

Page 42: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

Un altro problema algoritmico (semplice?)

Input

T testo su un alfabeto Σ e P pattern su Σ.

... è naturale aspettarsi |P| · |T | operazioni di confronto ma si puófare molto meglio!

Output

Tutte le occorrenze di P in T

A. Policriti Bioinformatica: DNA e Algoritmi

Page 43: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

Pitagora: �Tutto è numero�

Idea

Reads (corte) sono Numeri (grandi)

A. Policriti Bioinformatica: DNA e Algoritmi

Page 44: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

Fondamentali

Definizione

Σdna = {a, c, g , t} alfabeto;P pattern |P| = m;

T testo and |T| = n;

Ts è la stringa di m caratteri T [s, . . . , s + m − 1].

Stringhe in Σdna sono numberi in base 4

P p Ts ts

A. Policriti Bioinformatica: DNA e Algoritmi

Page 45: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

Fondamentali

Definizione

Σdna = {a, c, g , t} alfabeto;P pattern |P| = m;

T testo and |T| = n;

Ts è la stringa di m caratteri T [s, . . . , s + m − 1].

Stringhe in Σdna sono numberi in base 4

P p Ts ts

a ≡ 0 c ≡ 1 g ≡ 2 t ≡ 3

A. Policriti Bioinformatica: DNA e Algoritmi

Page 46: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

Indice

Text T

Ts

ts

ι(ts)

{ts′ | ι(ts) = ι(ts′)}

1

A. Policriti Bioinformatica: DNA e Algoritmi

Page 47: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

Indice

Problema

I numeri diventano è GRANDI

A. Policriti Bioinformatica: DNA e Algoritmi

Page 48: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

Indice

Text T

Ts

ts

ts mod q

{ts′ | ts mod q = ts′ mod q}

1

A. Policriti Bioinformatica: DNA e Algoritmi

Page 49: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

... e gli errori?

P′

1

A. Policriti Bioinformatica: DNA e Algoritmi

Page 50: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

... e gli errori?

P

P′

1

A. Policriti Bioinformatica: DNA e Algoritmi

Page 51: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

... e gli errori?

P′ −P

1

A. Policriti Bioinformatica: DNA e Algoritmi

Page 52: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

... e gli errori?

P′ −P

1

|{P′ | dH(P,P′) ≤ d}| =∑d ′≤d

(m

d ′

)(Σ− 1)d

A. Policriti Bioinformatica: DNA e Algoritmi

Page 53: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

... e gli errori?

P′ −P

1

|{P′ | dH(P,P′) ≤ d}| =∑d ′≤d

(m

d ′

)(Σ− 1)d

p′ − p ∈ Z(d ,m)

A. Policriti Bioinformatica: DNA e Algoritmi

Page 54: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

... e gli errori?

P′ −P

1

|{P′ | dH(P,P′) ≤ d}| =∑d ′≤d

(m

d ′

)(Σ− 1)d

p′ − p ∈ Z(d ,m)

(p′ − p mod q) ∈ ???

A. Policriti Bioinformatica: DNA e Algoritmi

Page 55: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

rNA

randomized Numerical Aligner

opportuno q∗

(⇒ �piccolo� Z)diamo struttura a Z(⇒ implementiamo un test di appartenenza veloce)

euristiche

A. Policriti Bioinformatica: DNA e Algoritmi

Page 56: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

rNA

randomized Numerical Aligner

opportuno q∗

(⇒ �piccolo� Z)diamo struttura a Z(⇒ implementiamo un test di appartenenza veloce)

euristiche

Complessità

Proporzionale, in media, alla dimensione del pattern.

A. Policriti Bioinformatica: DNA e Algoritmi

Page 57: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

Una notte del 1993 L. Adleman stava leggendo�The molecular Biology of the Gene�...

... si sedette sul letto e disse a sua moglie:�Dio mio,

queste cose possono calcolare �

A. Policriti Bioinformatica: DNA e Algoritmi

Page 58: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

Una notte del 1993 L. Adleman stava leggendo�The molecular Biology of the Gene�...

... si sedette sul letto e disse a sua moglie:�Dio mio,

queste cose possono calcolare �

A. Policriti Bioinformatica: DNA e Algoritmi

Page 59: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

DNA self-assembly

Si sa da tempo che è possibile computare �in 2D�

A. Policriti Bioinformatica: DNA e Algoritmi

Page 60: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

DNA self-assembly

Oggi si possono sintetizzare molecole di DNA che

eseguono tali computazioni!

A. Policriti Bioinformatica: DNA e Algoritmi

Page 61: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

DNA self-assembly

Per saperne di più

A. Policriti Bioinformatica: DNA e Algoritmi

Page 62: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

A. Policriti Bioinformatica: DNA e Algoritmi

Page 63: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

A. Policriti Bioinformatica: DNA e Algoritmi

Page 64: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

Domanda interessante

qual è l'hardware e quale il software?

A. Policriti Bioinformatica: DNA e Algoritmi

Page 65: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

Per saperne di più

A. Policriti Bioinformatica: DNA e Algoritmi

Page 66: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

Conclusioni

Campo stimolante

Tanti bei problemi computazionali

Tecnologie so�sticate

Forte impatto sulle scienze della Vita

A. Policriti Bioinformatica: DNA e Algoritmi

Page 67: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

Conclusioni

È probabilmente vero in linea di massima che nella storia delpensiero umano gli sviluppi piú fruttuosi avvengono frequentementein quei punti di interferenza fra due diverse linee di pensiero.

W. Heisenberg

A. Policriti Bioinformatica: DNA e Algoritmi

Page 68: Bioinformatica: DNA e Algoritmiusers.dimi.uniud.it/~claudio.mirolo/teaching/programma... · 2010-11-09 · De niamo i termini: DNA & Algoritmi ecnologieT ( )Problemi) )Sequenziamento

Introduzione Definizioni Algoritmi Futuro Conclusioni

Definizione di Algoritmo

Informale (Markov, 1960)

Processo di calcolo che soddisfa tre requisiti principali:1 Precisione prescrittiva. De�nitezza2 Applicabilità a dati iniziali variabili entro limiti pre�ssati.

Generalità

3 Processo orientato ad ottenere un risultato, calcolabile in baseai dati iniziali. E�ettività

Formale (Gödel, Church, Turing, ...)

Funzioni ricosrive,M lambda calcolo. macchine di Turing, ...

A. Policriti Bioinformatica: DNA e Algoritmi


Recommended