Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

82
Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina Giuseppe Lancia Università di Udine

description

Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina. Giuseppe Lancia Università di Udine. Human Genome Project ( 1990): read and understand human (and other species ) genome (DNA) - PowerPoint PPT Presentation

Transcript of Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

Page 1: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e

la Medicina

Giuseppe LanciaUniversità di Udine

Page 2: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

MOLECULAR BIOLOGY

• Human Genome Project (1990): read and understand human (and other species) genome (DNA)

• Scientific and practical applications (medicine, agriculture, forensic, ….)

multi-million project involving several countries

Page 3: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

COMPUTER SCIENCE

To meet the goal we need computers and programs to deal with problems such as

- Huge data sets (billions of informations to be analized)

- Data Interpretation (contradictory, erroneous or inconsistent data)

- Data sharing and networks (online genomic data banks)

Page 4: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

Computational (molecular) Biology

• Combinatorics, Discrete Math• Combinatorial Optimization• Integer Programming• Complexity theory (Approximations and Hardness)• Graph theory• (but also Stringology, Data Bases, Neural Networks....)

“Optimization problems arising in the analysis, interpretation and management of large sets of

genomic data”

Page 5: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

FIRST PHASE COMPLETION : HUMAN GENOME SEQUENCE - 2001

World Consortium universities and labs

Celera Genomics (Craig Venter)

Page 6: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

FIRST PHASE COMPLETION : HUMAN GENOME SEQUENCE - 2001

Page 7: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

Computational Biology born around ’80-’90

• Algorithmic approaches (e.g. Dynamic Programming for alignment)

• Computational complexity (e.g. NP-hardness of folding)

• String-related problems, Information retrieval, Genomic data base….

• ……

mostly computer scientists dominated the field

Page 8: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

• Some NP-hard problems in C.B. are OPTIMIZATION PROBLEMS

• These can be solved via mathematical programming techniques

• INTEGER LINEAR PROGRAMMING

• LAGRANGIAN RELAXATION

• SEMIDEFINITE PROGRAMMING

• QUADRATIC PROGRAMMING

O.R. people (and O.R. techniques) entered the field

Page 9: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

The most important approach of this type is probably Integer Linear Programming

It allows the solution of NP-hard problems via specialized Branch and Bound algorithms

The lower bound comes from the Linear Programming relaxation of the model (and can be computed in polynomial time)

Page 10: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

The I.P. approach

Page 11: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

1. Define integer (usually binary) variables

The I.P. approach

Page 12: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

1. Define integer (usually binary) variables

The I.P. approach

2. Define linear constraints that feasible solutions must satisfy

Page 13: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

1. Define integer (usually binary) variables

The I.P. approach

2. Define linear constraints that feasible solutions must satisfy

3. Define linear objective function that optimal solution must mini(maxi)mize

Page 14: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

1. Define integer (usually binary) variables

The I.P. approach

2. Define linear constraints that feasible solutions must satisfy

3. Define linear objective function that optimal solution must mini(maxi)mize

4. Solve by Branch and Bound. The LP relaxation (remove integrality requirements on variables) gives the bound

Page 15: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

1. Define integer (usually binary) variables

The I.P. approach

2. Define linear constraints that feasible solutions must satisfy

3. Define linear objective function that optimal solution must mini(maxi)mize

4. Solve by Branch and Bound. The LP relaxation (remove integrality requirements on variables) gives the bound

There can be an exponential number of variables. We need to make them implicit BRANCH-AND-PRICE

Page 16: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

1. Define integer (usually binary) variables

The I.P. approach

2. Define linear constraints that feasible solutions must satisfy

3. Define linear objective function that optimal solution must mini(maxi)mize

4. Solve by Branch and Bound. The LP relaxation (remove integrality requirements on variables) gives the bound

There can be an exponential number of variables. We need to make them implicit BRANCH-AND-PRICE

There can be an exponential number of constraints. We need to make them implicit BRANCH-AND-CUT

Page 17: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

Some Integer Programming models in C.B.Haplotyping Clark’s rule (Gusfield ) Parsimony (Gusfield, Lancia+Pinotti+Rizzi, Brown+Harrower) Fragment assembly (Lancia+Bafna+Schwartz+Istrail)

Protein folding Energy potentials (Wagner+Meller+Elber) Folding ab initio (Carr+Hart+Greenberg) Threading (RAPTOR, Xu+Li+Kim+Xu) Docking (Doye+Leari+Locatelli+Schoen, Althaus+Kohlbacher+Lenhof+Muller ) Fold comparison (Carr+Lancia+Istrail+Walenz,Caprara+Lancia) Sequence Alignment and consensus Lenhof+Vingron+Reinert Althaus+Caprara+Lenhof+Reinert Fischetti+Lancia+Serafini Meneses+Lu+Oliveira+Pardalos

Physical Mapping Alizadeh+Karp+Weisser+Zweig

Genome Rearrangements Caprara+Lancia

Page 18: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

Haplotyping Clark’s rule (Gusfield ) Parsimony (Gusfield, Lancia+Pinotti+Rizzi, Brown+Harrower) Fragment assembly (Lancia+Bafna+Schwartz+Istrail)

Protein folding Energy potentials (Wagner+Meller+Elber) Folding ab initio (Carr+Hart+Greenberg) Threading (RAPTOR, Xu+Li+Kim+Xu) Docking (Doye+Leari+Locatelli+Schoen, Althaus+Kohlbacher+Lenhof+Muller ) Fold comparison (Carr+Lancia+Istrail+Walenz,Caprara+Lancia) Sequence Alignment and consensus Lenhof+Vingron+Reinert Althaus+Caprara+Lenhof+Reinert Fischetti+Lancia+Serafini Meneses+Lu+Oliveira+Pardalos

Physical Mapping Alizadeh+Karp+Weisser+Zweig

Genome Rearrangements Caprara+Lancia

We’ll see some examples

Page 19: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

BIOLOGY 101

Page 20: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

A genome is a long string over the DNA alphabet {A,C,G,T}

In man it is some 3.000.000.000 letters

DNA is responsible forour diversity as well asour similarity

Small changes in a genomecan make a big difference,like from... to...

Page 21: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

CELL

Nucleus

Chromosomes (pairs)

TCATCGAAGTAGCT

Eukariotic diploid organisms

Page 22: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

THE CENTRAN DOGMA OF MOLECULAR BIOLOGY

attagcatggatagccgtatatcgttgatgctggataggtatatgctagatcgatggcaatta intronsexons

attag|ctatatcgttgatg|tatatgcta|cga|aatta A GENE

Page 23: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

THE CENTRAN DOGMA OF MOLECULAR BIOLOGY

attagcatggatagccgtatatcgttgatgctggataggtatatgctagatcgatggcaatta intronsexons

attag|ctatatcgttgatg|tatatgcta|cga|aatta

att agc tat atc gtt gat gta tat gct acg aaa tta codon triplets

R N C A S S F C W Y Q V

A GENE

amino acids:a PROTEIN

Page 24: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

THE CENTRAN DOGMA OF MOLECULAR BIOLOGY

attagcatggatagccgtatatcgttgatgctggataggtatatgctagatcgatggcaatta intronsexons

attag|ctatatcgttgatg|tatatgcta|cga|aatta

att agc tat atc gtt gat gta tat gct acg aaa tta codon triplets

R N C A S S F C W Y Q V

A GENE

amino acids:a PROTEIN

The protein folds to a 3D shape to perform its function

CENTRAL DOGMA:

1 gene 1 protein

Page 25: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

From DNA to strings (i.e. reading our genome): Shotgun sequencing

Page 26: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

From DNA to strings (i.e. reading our genome): Shotgun sequencing

amplification

Page 27: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

fragmentation

From DNA to strings (i.e. reading our genome): Shotgun sequencing

amplification

Page 28: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

TGAGCCTAG GATTT GCCTAG CTATCTTATAGATA GAGATTTCTAGAAATC ACTGA TAGAGATTTC TCCTAAAGAT CGCATAGATA

fragmentation

sequencing

From DNA to strings (i.e. reading our genome): Shotgun sequencing

amplification

Page 29: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

TGAGCCTAG GATTT GCCTAG CTATCTTATAGATA GAGATTTCTAGAAATC ACTGA TAGAGATTTC TCCTAAAGAT CGCATAGATA

fragmentation

sequencing

From DNA to strings (i.e. reading our genome): Shotgun sequencing

amplification

assembly

Page 30: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

We need to merge the fragments in order to retrieve the original DNA sequence

-50,000,000 fragments-1000 char each…

We better use computers!

assemblyACTGCATTAGCGAGTTATAGATCGAGTAGAGATATCGCGGGGACTGCATTAGCGAGTTATAGATCGAGTAGAGATATCGCGGGGACTGCATTAGCGAGTTATAGATCGAGTAGAGATATCGCGGGGACTGCATTAGCGAGTTATAGATCGAGTAGAGATATCGCGGGG

Page 31: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

- Take 10 copies of «Corriere della Sera»- Cut each in tiny pieces (1cm2)- Put the pieces in a bag and shuffle

- Grab five handful of pieces and throw them awayProblem: retrieve the newspaper from the remaining pieces

• Let’s make the problem harder:- Ultra-tiny pieces (1mm2)

Difficulties : Ripeated words (e.g., «ha», «dopo», «quando», «governo»…)

- It is not the CDS, but the encyclopedia Treccani (20 volumes)- It is written in chinese!!

Still thr problem would be easier than sequencing the humangenome

Understanding the problem

Page 32: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

Assembly

• Repeated words and missing words create problems to be solved by sophisticated programs, based on statistics and mathematical models.

• The basic underlying problem (notwithstanding the above complications) is called Shortest Superstring Problem (SSP)

Page 33: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

Shortest superstring:

• Given a set of strings s1, .., sn, find a string s that contains each si as a substring..

Page 34: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

cane nerone onere rene neon

reneroneoncaneonere -> 19

caneronereneonere ->17

caneroneonerene -> 15

acct cattgt gtgcca cctg cattgtgccacctg

Shortest superstring:

Page 35: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

cane nerone onere rene neon

reneroneoncaneonere -> 19

caneronereneonere ->17

caneroneonerene -> 15

acct cattgt gtgcca cctg cattgtgccacctg

Shortest superstring:

Page 36: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

cane nerone onere rene neon

reneroneoncaneonere -> 19

caneronereneonere ->17

caneroneonerene -> 15

acct cattgt gtgcca cctg cattgtgccacctg

Shortest superstring:

Page 37: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

cane nerone onere rene neon

reneroneoncaneonere -> 19

caneronereneonere ->17

caneroneonerene -> 15

acct cattgt gtgcca cctg cattgtgccacctg

Shortest superstring:

Page 38: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

cane nerone onere rene neon

reneroneoncaneonere -> 19

caneronereneonere ->17

caneroneonerene -> 15

acct cattgt gtgcca cctg cattgtgccacctg

Shortest superstring:

Page 39: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

cane nerone onere rene neon

reneroneoncaneonere -> 19

caneronereneonere ->17

caneroneonerene -> 15

acct cattgt gtgcca cctg cattgtgccacctg

Shortest superstring:

Page 40: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

cane nerone onere rene neon

reneroneoncaneonere -> 19

caneronereneonere ->17

caneroneonerene -> 15

acct cattgt gtgcca cctg cattgtgccacctg

Shortest superstring:

Page 41: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

cane nerone onere rene neon

reneroneoncaneonere -> 19

caneronereneonere ->17

caneroneonerene -> 15

acct cattgt gtgcca cctg cattgtgccacctg

Shortest superstring:

Page 42: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

cane nerone onere rene neon

reneroneoncaneonere -> 19

caneronereneonere ->17

caneroneonerene -> 15

acct cattgt gtgcca cctg cattgtgccacctg

Shortest superstring:

Page 43: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

cane nerone onere rene neon

reneroneoncaneonere -> 19

caneronereneonere ->17

caneroneonerene -> 15

acct cattgt gtgcca cctg cattgtgccacctg

The space of potential (non-redundant) solutions has size O(n!)

The problem is NP-Hard

There is an effective greedy algorithm

Shortest superstring:

Page 44: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

cane nerone onere rene neon

Greedy algorithm:- Merge the two strings with max overlap. Replace them with their fusion. - Repeat until only one string is left.

Page 45: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

cane nerone onere rene neon

neronere

Greedy algorithm:- Merge the two strings with max overlap. Replace them with their fusion. - Repeat until only one string is left.

Page 46: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

cane nerone onere rene neon

neronere

neronerene

Greedy algorithm:- Merge the two strings with max overlap. Replace them with their fusion. - Repeat until only one string is left.

Page 47: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

cane nerone onere rene neon

neronere

neronerene

neronereneon

Greedy algorithm:- Merge the two strings with max overlap. Replace them with their fusion. - Repeat until only one string is left.

Page 48: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

cane nerone onere rene neon

neronere

neronerene

neronereneon

caneronereneon

Greedy algorithm:- Merge the two strings with max overlap. Replace them with their fusion. - Repeat until only one string is left.

Page 49: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

• In this case it found the optimum, but there is no guarantee• There’s, however, a guarantee that v(GREEDY) <= 2.5v(OPT) (i.e., it is a 2.5-APPROX ALGORITHM (Sweedyk))

• OPEN PROBLEM (Conjecture holding from > 20 years):

Prove that GREEDY is a 2-APPROX ALGORITHM

For more info seehttp://fileadmin.cs.lth.se/cs/Personal/Andrzej_Lingas/superstring.pdf

Greedy algorithm:

Page 50: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

Sequence Alignments

• Sequences evolve and change• E.g.: deletion, insertion, mutation

attcgattgat attcggat deletion

attcgattgat attcggat insertion

attcg atgcg mutation

Given two genomic sequences (e..g., man and mouse)we want to compare them

Page 51: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

Languages evolve as well

• Mater• Madre• Mother• Matre• Mutter

Page 52: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

• Mater• Madre• Mother• Matre• Mutter

Good alignment:

M A T - E RM O T H E R

Languages evolve as well

Page 53: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

• Mater• Madre• Mother• Matre• Mutter

Good alignment:

M A T - E RM O T H E R

Bad alignment:

- - M A T - E RM O T H - E R -

Languages evolve as well

Page 54: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

• Mater• Madre• Mother• Matre• Mutter

Good alignment:

M A T - E RM O T H E R

Bad alignment:

- - M A T - E RM O T H - E R -

Multiple alignment:

M A T - E R -M O T H E R -M A D - - R EM A T - - R EM U T T E R -

Languages evolve as well

Page 55: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

• Mater• Madre• Mother• Matre• Mutter

Good alignment:

M A T - E RM O T H E R

Bad alignment:

- - M A T - E RM O T H - E R -

Multiple alignment:

M A T - E R -M O T H E R -M A D - - R EM A T - - R EM U T T E R -

If DNA sequences:

A C T - G G -A C T C G G -A G T - - C TC C T - - G TA - T T C G -

Languages evolve as well

Page 56: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

• Mater• Madre• Mother• Matre• Mutter

Good alignment:

M A T - E RM O T H E R

Bad alignment:

- - M A T - E RM O T H - E R -

To see if an alignment is good: score 0 identical(or similar) letters (e.g. T-D, B-P, S-F) and score 1different or deleted letters.

Cost: 1 Cost: 8

Languages evolve as well

Page 57: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

• Mater• Madre• Mother• Matre• Mutter

Good alignment:

M A T - E RM O T H E R

Bad alignment:

- - M A T - E RM O T H - E R -

To see if an alignment is good: score 0 identical(or similar) letters (e.g. T-D, B-P, S-F) and score 1different or deleted letters.

Cost: 1 Cost: 8

There is an exponential number of possible alignments of two strings, but finding the optimal one is easy (i.e. polynomial). We’ll see it next.For many strings, there is no polynomial algorithm (if P =/= NP), but there are effective heuristics andapproximation algorithms.

Languages evolve as well

Page 58: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

The basic problem: pairwise sequence alignment:

Seq. 1: ATCGGCTTGTTATTG

Seq. 2: ATGGGATTTAATTGCCC

ATCGGCTTGTTA-TTG--- ATGGGAT--TTAATTGCCC

Alignment:

Page 59: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

The basic problem: pairwise sequence alignment:

Seq. 1: ATCGGCTTGTTATTG

Seq. 2: ATGGGATTTAATTGCCC

ATCGGCTTGTTA-TTG--- ATGGGAT--TTAATTGCCC

Alignment:

Cost c(x,y) for each pair x, y in {A, T, C, G, -}

Problem: find the arrangement minimizing Si c(AL[1,i], AL[2,i])

This value is the edit distance d(S’, S”)

Page 60: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

Simple Dynamic Programming Recursion:

d(S’[1…n], S”[1..m]) = min {d(S’[1..n-1],S”[1…m]) + c(S’[n],-)

d(S’[1..n],S”[1…m-1]) + c(-, S”[m])

d(S’[1..n-1],S”[1…m-1]) + c(S’[n],S”[m])

d(ATCCG, ATTC) = min {d(ATCC, ATTC) + c(G,-)

d(ATCCG, ATT) + c(-, C)

d(ATCC, ATT) + c(G,C)

Cost: O(n m) (Smith & Waterman, ’86)

Page 61: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

This can be extended to Multiple Sequence Alignment

Useful for:

• Finding conserved patterns (functionally relevant)• Clustering genomic sequences (e.g. protein families)• Evolutionary studies (e.g. intra-species comparisons)• ….

ATCCGTTAGTTA---GATTG---ATT--TTAGTTA---GATTGCACATTCGTTAGTTAGTAGATTGCA-TTTCGTTA--TA-TACATTGCAC

Page 62: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

This can be extended to Multiple Sequence Alignment

Useful for:

• Finding conserved patterns (functionally relevant)• Clustering genomic sequences (e.g. protein families)• Evolutionary studies (e.g. intra-species comparisons)• ….

Unfortunately…it’s NP-hard (Wang & Jiang, ’94) (Dynamic Programming costs O(2 n ) for k sequences of length n) k k

ATCCGTTAGTTA---GATTG---ATT--TTAGTTA---GATTGCACATTCGTTAGTTAGTAGATTGCA-TTTCGTTA--TA-TACATTGCAC

The distance in the alignment A is denoted dA(S’,S”). We wish tominimize SP(A) = S{S’,S”} dA(S’,S”) (sum-of-pairs objective)

Page 63: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

a:humanafrican cox1 ;----accatccatcaatctgcgatccccctccaataccaaccataccactcctggccttccagttb:humprobeuro cox1 ;gtacaccatccatcaa--tgcgatccccctccaataccaaccataccactcctggccttccagttc:gorilla cox1 ;acatattacccatcaacttataatctctttccagcatcagtcatgctattcccgaccccttagttd:gibbon cox1 ;gcgtattactcgctggcccatacctcttcctagaccccaactgtgtcgcctctgattccctagtte:chimpanzee cox1 ;acacactacctatcgacttacaattccctcccaacaccagtcatgctgttcccgacccctcaactf:pigmychimp cox1 ;---cactacccattgacttacaatcccttctcagcactaatcacgctgttcccgatccctcaactg:baboon cox1 ;atgcaccgtttactagctcataccttccccta--ccctgatcgcatcatctttaatcccctaacch:orangutan cox1 ;gcgcgctgtccatcatcccacacttctctcccaacattggctataccgtccttgactccctcatci:sumorang cox1 ;gcgcgccgtccgtcatcccacacctctctcccaacatcaactataccacccctaactccctcgtc

agccccccccctagctgcctcatctccacccgcaccctcttctcccccccccaaacctcctctttac---agccccccccctagctgcctcatctccacccgcaccctcttctcccccccccaaacctcctctttactttaatcctccttccaatcgccctacctccacccgcactttctttctctccccccaaattcctttctcaccttgaccctcctttcggccgttctcccccctctcgcatcccaccttcccccttttaaactctccccttactccAacgtcccccctgacca--ccattttcacccgcactcccttcctttcctcccgaacttttttcttatcttaatgtcccccctggccactccactttcacccgcattcccttcctttcctcctgaacttttttctcatcttggtccccccctcaaccaccctcccccatttaatatctcaccctctcctttccaagcttccccctcatcccAactcttacctcaatcgtctta— tca-tcaacgcccccctcccccattattatgttccttctcccccccaactcttaccttaaccatctcatttcatccagtgcccccctccctcaccatcatatcctctttccccccc

Example: Same protein, different species

Page 64: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

Sometimes the sequences can be related via a Phylogenetic Tree

A tree can be used to align sequences. Here is how:

Page 65: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

Theorem 1: given a fully labeled tree, there is a multiple alignmentA(T) such that dA(T) (S(i),S(j)) = d(S(i), S(j)) for all edges (i,j) of T

Proof (by 1 drawing):

ATGGC TTGGAC

ATG-GCTTGGAC--

-TTGGACAT-GG-C

-TTG-GAC--AT-G-G-C--

Page 66: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

A 2-approximation algorithm for multiple alignment and a goodheuristic borrow concepts from Network Design

3

2

4

10

5 92

7

6

3

The Routing Cost of a tree is the sum of distances in the tree between all pairs

XY

E.g. rc(X,Y) = 3 + 5 + 9 + 2 = 19. rc(T) = 1616

1

Page 67: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

If we have k sequences, and a tree connecting them, we can align them using Theorem 1

tccat

attcgg

ttg

ttatcg

ttgaattcg

ttgattattc

ctt

tcct

ctggat

aatgt

The cost of edges {S’,S”} is the edit distance d(S’S”)

Page 68: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

If we have k sequences, and a tree connecting them, we can align them using Theorem 1

tccat

attcgg

ttg

ttatcg

ttgaattcg

ttgattattc

ctt

tcct

ctggat

aatgt

By triangle inequality, dA(S’,S”) £ S {i,j}in path S’,..,S” dA(i,j)

dA(ttatcg, ctt) £ dA(ttatcg, ttga) + dA(ttga, attcg) + dA(attcg,ctt) = = d(ttatcg, ttga) + d(ttga, attcg) + d(attcg,ctt)

Hence SP(A(T)) £ rc(T)

Stars already yield a 2-approximation (next). If T* minimizes rc(T), we can expect a low SP(A(T*)). Finding T* is NP-hard, but “easier” than solving min SP

The cost of edges {S’,S”} is the edit distance d(S’S”)

Page 69: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

Some particular trees (STARS) give a 2-approximation to SP

c

𝑅𝐶 (𝑆 (𝑐 ))¿=(𝑛−1)∑𝑖𝑑(𝑖 ,𝑐)

Page 70: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

Some particular trees (STARS) give a 2-approximation to SP

c

𝑅𝐶 (𝑆 (𝑐 ))¿=(𝑛−1)∑𝑖𝑑(𝑖 ,𝑐)

)) =

Hence ,𝑅𝐶 (𝑆 (𝑐∗ )) ≤𝑎𝑣𝑔(𝑅𝐶)=1𝑛 ((𝑛−1)∑

𝑐∑𝑖𝑑(𝑖 ,𝑐))

Page 71: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

Some particular trees (STARS) give a 2-approximation to SP

c

𝑅𝐶 (𝑆 (𝑐 ))¿=(𝑛−1)∑𝑖𝑑(𝑖 ,𝑐)

)) =

Hence ,𝑅𝐶 (𝑆 (𝑐∗ )) ≤𝑎𝑣𝑔(𝑅𝐶)=1𝑛 ((𝑛−1)∑

𝑐∑𝑖𝑑(𝑖 ,𝑐))

So, also SP

Page 72: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

Some particular trees (STARS) give a 2-approximation to SP

c

𝑅𝐶 (𝑆 (𝑐 ))¿=(𝑛−1)∑𝑖𝑑(𝑖 ,𝑐)

)) =

Hence ,𝑅𝐶 (𝑆 (𝑐∗ )) ≤𝑎𝑣𝑔(𝑅𝐶)=1𝑛 ((𝑛−1)∑

𝑐∑𝑖𝑑(𝑖 ,𝑐))

So, also SP

But, for all A, SP

Page 73: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

Some particular trees (STARS) give a 2-approximation to SP

c

𝑅𝐶 (𝑆 (𝑐 ))¿=(𝑛−1)∑𝑖𝑑(𝑖 ,𝑐)

)) =

Hence ,𝑅𝐶 (𝑆 (𝑐∗ )) ≤𝑎𝑣𝑔(𝑅𝐶)=1𝑛 ((𝑛−1)∑

𝑐∑𝑖𝑑(𝑖 ,𝑐))

So, also SP

But, for all A, SP

Page 74: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

Some particular trees (STARS) give a 2-approximation to SP

c

𝑅𝐶 (𝑆 (𝑐 ))¿=(𝑛−1)∑𝑖𝑑(𝑖 ,𝑐)

)) =

Hence ,𝑅𝐶 (𝑆 (𝑐∗ )) ≤𝑎𝑣𝑔(𝑅𝐶)=1𝑛 ((𝑛−1)∑

𝑐∑𝑖𝑑(𝑖 ,𝑐))

So, also SP

But, for all A, SP

And so 2 OPT

Page 75: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

Some particular trees (STARS) give a 2-approximation to SP

c

𝑅𝐶 (𝑆 (𝑐 ))¿=(𝑛−1)∑𝑖𝑑(𝑖 ,𝑐)

)) =

Hence ,𝑅𝐶 (𝑆 (𝑐∗ )) ≤𝑎𝑣𝑔(𝑅𝐶)=1𝑛 ((𝑛−1)∑

𝑐∑𝑖𝑑(𝑖 ,𝑐))

So, also SP

But, for all A, SP

And so 2 OPT

In conclusion, SP

Page 76: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

ILP for Minimum Routing Cost Tree (Fischetti, L, Serafini)

Given G=(V,E), edge lengths d. Use 0-1 variables for each path 𝑝

Page 77: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

ILP for Minimum Routing Cost Tree (Fischetti, L, Serafini)

Given G=(V,E), edge lengths d. Use 0-1 variables for each path

min ∑𝑝∈𝑃

𝑑𝑝 𝑥𝑝

𝑝

Page 78: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

ILP for Minimum Routing Cost Tree (Fischetti, L, Serafini)

Given G=(V,E), edge lengths d. Use 0-1 variables for each path

(i)

min ∑𝑝∈𝑃

𝑑𝑝 𝑥𝑝

=1 for all 𝑖 , 𝑗∈𝑉

𝑝

Page 79: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

ILP for Minimum Routing Cost Tree (Fischetti, L, Serafini)

Given G=(V,E), edge lengths d. Use 0-1 variables for each path

(i)

(ii)

min ∑𝑝∈𝑃

𝑑𝑝 𝑥𝑝

=1

∑𝑝∈𝑃 ( 𝑖 , 𝑗 ) :𝑒∈𝑝

𝑥𝑝 ≤𝑥𝑒

for all 𝑖 , 𝑗∈𝑉

e

𝑝

Page 80: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

ILP for Minimum Routing Cost Tree (Fischetti, L, Serafini)

Given G=(V,E), edge lengths d. Use 0-1 variables for each path

(i)

(ii)

(iii)

min ∑𝑝∈𝑃

𝑑𝑝 𝑥𝑝

=1

∑𝑝∈𝑃 ( 𝑖 , 𝑗 ) :𝑒∈𝑝

𝑥𝑝 ≤𝑥𝑒

∑𝑒∈𝐸

𝑥𝑒=𝑛−1

for all 𝑖 , 𝑗∈𝑉

e

𝑝

Page 81: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

ILP for Minimum Routing Cost Tree (Fischetti, L, Serafini)

Given G=(V,E), edge lengths d. Use 0-1 variables for each path

(i)

(ii)

(iii)

Pricing becomes O(n^2) shortest path problems with lengths de + ve(ve dual vars for (ii))

min ∑𝑝∈𝑃

𝑑𝑝 𝑥𝑝

=1

∑𝑝∈𝑃 ( 𝑖 , 𝑗 ) :𝑒∈𝑝

𝑥𝑝 ≤𝑥𝑒

∑𝑒∈𝐸

𝑥𝑒=𝑛−1

for all 𝑖 , 𝑗∈𝑉

e

𝑝

Page 82: Modelli e Metodi di Ottimizzazione per la Biologia Computazionale e la Medicina

ILP for Minimum Routing Cost Tree (Fischetti, L, Serafini)

Given G=(V,E), edge lengths d. Use 0-1 variables for each path

(i)

(ii)

(iii)

min ∑𝑝∈𝑃

𝑑𝑝 𝑥𝑝

=1

∑𝑝∈𝑃 ( 𝑖 , 𝑗 ) :𝑒∈𝑝

𝑥𝑝 ≤𝑥𝑒

∑𝑒∈𝐸

𝑥𝑒=𝑛−1

for all 𝑖 , 𝑗∈𝑉

e

𝑝

Best tree has RC 10% less than RC of best star “ “ “ SP 6% “ “ SP “ “, SP of star is experimentally 10-15% of optimalSP of best tree is 4-10% of optimal