Programmazione dinamica

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Programmazione dinamica"

Transcript

1 rogrammazione dinamica Fornisce l allineamento ottimale tra due sequenze semplici variazioni dell algoritmo producono allineamenti globali o locali l allineamento calcolato dipende dalla scelta di alcuni parametri Sfrutta la ricorsione.. ogni risultato parziale dipende dal risultato del calcolo precedente del punteggio di allineamento registrato in una tabella. Quest ultima è utilizzata alla fine per ricostruire il percorso ottimale. Needleman & unsch (197) llineamento globale unteggio (odds score) di un allineamento sequenza 1 M - N L S D R T sequenza M S D R T T T punteggio = - 1

2 airwise Sequence lignment sempio Qual è il migliore? sempio ap penalty: () + () + () + () () () + = 1 sercizio: Calcolate per La risposta è ()+()++()+()+1+()+1++()+ =

3 lobal lignment Notazione x i i-esimo elemento della sequenza x y j j-esimo elemento della sequenza y x 1..i refisso di x da 1 a i F matrice di score ottimali F(i,j) rappresenta l allineamento ottimale x 1..i con y 1..j d penalità s scoring matrix Costruiamo F lobal lignment Inizializzo: F(,) =, F(i,) = id, F(,j)=jd Riempio da alto-sinistra verso il basso-destra usando la relazione ricorsiva F( i, j) = F max ( i 1, j 1) + s( x, y ) F( i 1, j) d F( i, j 1) d i j 3

4 lobal lignment y j allineata ad un gap Muoviti avanti su entrambe F(i,j) s(x i,y j ) F(i,j) d x i allineata ad un gap F(i,j) d F(i,j) Mentre si costruisce la tabella, si può tenere traccia del percorso ovvero quale direzione si prende (frecce di direzione inversa) sempio Il primo step è quello di riempire i valori della tabella considerando una matrice di sostituzione (BLOSUM in questo caso) di appaiamento degli nella griglia) Matrice dei punteggi secondo BLOSUM degli appaiamenti tra D = Il secondo step prevede il riempimento della tabella ricorsivamente - -

5 Tavola completata Matrice dei punteggi secondo BLOSUM degli appaiamenti tra D = Traceback ercorso a ritroso seguendo le frecce: Il Il percorso percorso parte parte sempre sempre dall ultima dall ultima casella casella er er definizione definizione fino allo Spostamenti: Diagonale entrambi Su gap in alto Sx gap in basso

6 Sommario Inizializzazione valori tabella (-jd e id) Uso della ricorsione per riempire le caselle intermedie della tabella (programmazione dinamica) Traceback dall ultima casella (i,j) Uso di O(nm) spazio e tempo O(n ) algoritmo ossibile per piccole sequenze ma non per interi genomi Local lignment Smith-aterman (191) ltra soluzione di programmazione dinamica molto simile ad allineamento globale nella costruzione tabella In questo caso viene introdotto lo nel calcolo del punteggio delle caselle. Non si hanno mai valori negativi F( i 1, j 1) + s( xi, y j ) F( i, j) = max F( i 1, j) d F( i, j 1) d

7 7 sempio Traceback Inizia dal punteggio più alto trovato nella tabella e ripercorre a ritroso da quella casella fino al primo -

8 SOLUZIONI LTRNTIV ossono capitare soluzioni alternative nel caso di punteggio uguale in certe posizioni della tabella LTRO TIO DI LLINMNTO Il Freeshift o glocal Si utilizza quando ci si aspetta che una sequenza sia completamente contenuta in un altra oppure abbia un overlap. Quello che si vuole è un tipo di allineamento globale in cui non vengano penalizzati gli overhang terminali

9 Sequenza contenuta dentro un altra sequenza e con delle zone di overhang D L S S K S T K S I M R I D N M D I T K S K I M R L M OVRL ZON OVRN ZON Il problema si traduce nel partire dal punteggio massimo della matrice sull ultima colonna o riga e ripercorrere a ritroso fino alla fine (o prima riga o prima colonna) L inizializzazione della matrice è con il punteggio come nel caso dell allineamento locale Il riempimento della matrice avviene, invece, con la regola dell allineamento globale Da qui il nome di allineamento g-local

10 er esercitarsi: La ricerca di similarità in banche dati Uno dei problemi più comunemente affrontati con metodi bioinformatici è quello di trovare omologie di sequenza interrogando una banca dati. L idea di base è che proteine omologhe derivano da un progenitore comune e, quindi, condividono ampie regioni simili. Comparando la similarità tra la nostra sequenza (query) e tutte quelle contenute in una banca dati possiamo stimare la percentuale di similarità e da questa inferire una eventuale omologia (attenzione ai termini!!). 1

11 La ricerca di similarità in banche dati Quando le sequenze sono molto simili è ovvio assumere che sono anche omologhe, ma, nella maggior parte dei casi questo non si verifica quando bisogna confrontarsi con bassi livelli di similarità. In molti casi, tuttavia veri omologhi funzionali hanno bassi livelli di similarità e non è affatto facile discriminare falsi omologhi da veri omologhi. In mancanza di elementi funzionali la discriminazione tra veri e falsi omologhi si fonda su considerazioni statistiche. In sintesi sulla base della percentuale di similarità si assegna un punteggio ad ogni singolo appaiamento di sequenze e si valuta la probabilità di avere lo stesso punteggio per caso. Tanto più bassi sono i valori di probabilità tanto più significativo risulta l allineamento. Ci sono due grossi problemi da risolvere: Lo sviluppo di algoritmi capaci di identificare sequenze simili alla sequenza query tra milioni di sequenze target e la scelta di metodi statistisci a cui affidare la decisione di quali siano le sequenze significative. I principali programmi di interrogazione di banche dati, come FST, BLST e SSRC si caratterizzano essenzialmente per l approccio a questi problemi. La ricerca di similarità: accuratezza T = positivi veri (il metodo dice che è omologa e in effetti corrisponde al vero) F = falsi positivi (il metodo dice che è omologa quando invece non lo è) TN = negativi veri (il metodo dice che non è omologa e in effetti corrisponde al vero) FN = falsi negativi (il metodo dice che non è omologa quando invece lo è) (T+FN) = effettivi positivi nella banca dati (T+F) = positivi predetti dal metodo falsi e veri redetta come omologa? Sì No È omologa? Sì No T F FN TN 11

12 Sensibilità = T / (T + FN) è la percentuale di esempi predetti correttamente dal metodo sulla totalità di quelli che sono realmente presenti in banca dati. Selettività = T / (T + F) è la percentuale di volte in cui la predizione positiva si rivela corretta. Specificità = TN / (TN + F) è la percentuale di esempi predetti come negativi sul totale di quelli effettivamente negativi sempio: Omologia reale tra proteine: (, B, C), (D, ), (F,, ) La ricerca di similarità: accuratezza redizione: B, C B C C, D B B F, F F, Risultati: T = F = FN = TN = > 3 Sens = / (+) =.7 Sel = / (+) =. Spec = 3 / (3+) =.9 La ricerca di similarità: accuratezza In genere ad ogni predizione è affiancata una stima di affidabilità. I valori di sensibilità e selettività si calcolano soltanto per quelle predizioni che superano un valore minimo di affidabilità (threshold, soglia). La scelta della soglia e fatta su basi statistiche ed e determinante. In generale i metodi cercano un compromesso per cui: lta sensibilità bassa selettività e viceversa In base alla soglia scelta si possono ottenere valori di sensibilità e selettività molto diversi tra di loro. er questo entrambi i valori vanno riferiti allo stesso valore di soglia per poter essere paragonati. sempio: Omologia reale tra proteine: (, B, C), (D, ), (F,, ) B, C 1 B C C, 1 D B B F, 1 F F, 1 Soglia >= : T = F = FN = Sens =.7 Sel =. Soglia >= 1: T = F = FN = Sens =. Sel =.7 Sel. = T / (T + F) Sens.= T / (T + FN) Soglia >= 1: T = 3 F = 1 FN = 11 Sens =.1 Sel =.7 1

13 La ricerca di similarità: accuratezza lternativa: ROC (receiver operator characteristic) rafico che rappresenta l andamento della sensibilità in base alla selettività, basato su soglia mobile. ermette di visualizzare tutte le combinazioni contemporaneamente. Intuitivamente, il metodo funziona meglio di quello B se ha una curva con valori sempre maggiori dell altro. In termini matematici si può calcolare l area sotto la curva (valore UC = area under curve) per quantificare la performance dei metodi.

Programmazione dinamica

Programmazione dinamica Programmazione dinamica Fornisce l allineamento ottimale tra due sequenze semplici variazioni dell algoritmo producono allineamenti globali o locali l allineamento calcolato dipende dalla scelta di alcuni

Dettagli

La ricerca di similarità in banche dati

La ricerca di similarità in banche dati La ricerca di similarità in banche dati Uno dei problemi più comunemente affrontati con metodi bioinformatici è quello di trovare omologie di sequenza interrogando una banca dati. L idea di base è che

Dettagli

ALLINEAMENTO DI SEQUENZE

ALLINEAMENTO DI SEQUENZE ALLINEAMENTO DI SEQUENZE Procedura per comparare due o piu sequenze, volta a stabilire un insieme di relazioni biunivoche tra coppie di residui delle sequenze considerate che massimizzino la similarita

Dettagli

BLAST. W = word size T = threshold X = elongation S = HSP threshold

BLAST. W = word size T = threshold X = elongation S = HSP threshold BLAST Blast (Basic Local Aligment Search Tool) è un programma che cerca similarità locali utilizzando l algoritmo di Altschul et al. Anche Blast, come FASTA, funziona: 1. scomponendo la sequenza query

Dettagli

Algoritmi di Allineamento

Algoritmi di Allineamento Algoritmi di Allineamento CORSO DI BIOINFORMATICA Corso di Laurea in Biotecnologie Università Magna Graecia Catanzaro Outline Similarità Allineamento Omologia Allineamento di Coppie di Sequenze Allineamento

Dettagli

Lezione 8. Ricerche in banche dati (databases) attraverso l uso di BLAST

Lezione 8. Ricerche in banche dati (databases) attraverso l uso di BLAST Lezione 8 Ricerche in banche dati (databases) attraverso l uso di BLAST BLAST: Basic Local Alignment Search Tool Basic Local Alignment Search Tool. Altschul et al. 1990,1994,1997 Sviluppato per rendere

Dettagli

Lezione 8. Ricerche in banche dati (databases) attraverso l uso di BLAST

Lezione 8. Ricerche in banche dati (databases) attraverso l uso di BLAST Lezione 8 Ricerche in banche dati (databases) attraverso l uso di BLAST BLAST: Basic Local Alignment Search Tool Basic Local Alignment Search Tool. Altschul et al. 1990,1994,1997 Sviluppato per rendere

Dettagli

FASTA. Lezione del

FASTA. Lezione del FASTA Lezione del 10.03.2016 Omologia vs Similarità Quando si confrontano due sequenze o strutture si usano spesso indifferentemente i termini somiglianza o omologia per indicare che esiste un rapporto

Dettagli

Lezione 6. Ricerche in banche dati (databases) attraverso l uso di BLAST

Lezione 6. Ricerche in banche dati (databases) attraverso l uso di BLAST Lezione 6 Ricerche in banche dati (databases) attraverso l uso di BLAST BLAST: Basic Local Alignment Search Tool Basic Local Alignment Search Tool. Altschul et al. 1990,1994,1997 Sviluppato per rendere

Dettagli

Luigi Santoro. Hyperphar Group S.p.A., MIlano

Luigi Santoro. Hyperphar Group S.p.A., MIlano Come modellare il rischio Luigi Santoro Hyperphar Group S.p.A., MIlano Gli argomenti discussi Le definizioni del termine rischio L utilità di un modello predittivo di rischio Come costruire modelli predittivi

Dettagli

Allineamenti di sequenze: concetti e algoritmi

Allineamenti di sequenze: concetti e algoritmi Allineamenti di sequenze: concetti e algoritmi 1 globine: a- b- mioglobina Precoce esempio di allineamento di sequenza: globine (1961) H.C. Watson and J.C. Kendrew, Comparison Between the Amino-Acid Sequences

Dettagli

Le sequenze consenso

Le sequenze consenso Le sequenze consenso Si definisce sequenza consenso una sequenza derivata da un multiallineamento che presenta solo i residui più conservati per ogni posizione riassume un multiallineamento. non è identica

Dettagli

Z-score. lo Z-score è definito come: Z-score = (opt query - M random)/ deviazione standard random

Z-score. lo Z-score è definito come: Z-score = (opt query - M random)/ deviazione standard random Z-score lo Z-score è definito come: Z-score = (opt query - M random)/ deviazione standard random è una misura di quanto il valore di opt si discosta dalla deviazione standard media. indica di quante dev.

Dettagli

FASTA: Lipman & Pearson (1985) BLAST: Altshul (1990) Algoritmi EURISTICI di allineamento

FASTA: Lipman & Pearson (1985) BLAST: Altshul (1990) Algoritmi EURISTICI di allineamento Algoritmi EURISTICI di allineamento Sono nati insieme alle banche dati, con lo scopo di permettere una ricerca per similarità rapida anche se meno accurata contro le migliaia di sequenze depositate. Attualmente

Dettagli

Pairwise Sequence Alignment BIOINFORMATICA. Corso di Laurea in Ingegneria Informatica e Biomedica. Università Magna Graecia Catanzaro

Pairwise Sequence Alignment BIOINFORMATICA. Corso di Laurea in Ingegneria Informatica e Biomedica. Università Magna Graecia Catanzaro Pairwise Sequence Alignment BIOINFORMATICA Corso di Laurea in Ingegneria Informatica e Biomedica Università Magna Graecia Catanzaro Outline Similarità Allineamento Omologia Allineamento Esatto di Coppie

Dettagli

SAGA: sequence alignment by genetic algorithm. ALESSANDRO PIETRELLI Soft Computing

SAGA: sequence alignment by genetic algorithm. ALESSANDRO PIETRELLI Soft Computing SAGA: sequence alignment by genetic algorithm ALESSANDRO PIETRELLI Soft Computing Bologna, 25 Maggio 2007 Multi Allineamento di Sequenze (MSAs) Cosa sono? A cosa servono? Come vengono calcolati Multi Allineamento

Dettagli

Laboratorio di Informatica 2004/ 2005 Corso di laurea in biotecnologie - Novara Viviana Patti Esercitazione 7 2.

Laboratorio di Informatica 2004/ 2005 Corso di laurea in biotecnologie - Novara Viviana Patti Esercitazione 7 2. Laboratorio di Informatica 2004/ 2005 Corso di laurea in biotecnologie - Novara Viviana Patti patti@di.unito.it Esercitazione 7 1 Info&Bio Bio@Lab Allineamento di sequenze Esercitazione 7 2 1 Es2: Allineamento

Dettagli

Operativamente, risolvere un problema con un approccio ricorsivo comporta

Operativamente, risolvere un problema con un approccio ricorsivo comporta LA RICORSIONE Una funzione matematica è definita ricorsivamente quando nella sua definizione compare un riferimento a se stessa La ricorsione consiste nella possibilità di definire una funzione in termini

Dettagli

Una funzione matematica è definita ricorsivamente quando nella sua definizione compare un riferimento a se stessa

Una funzione matematica è definita ricorsivamente quando nella sua definizione compare un riferimento a se stessa LA RICORSIONE Una funzione matematica è definita ricorsivamente quando nella sua definizione compare un riferimento a se stessa La ricorsione consiste nella possibilità di definire una funzione in termini

Dettagli

LA RICORSIONE LA RICORSIONE LA RICORSIONE: ESEMPIO LA RICORSIONE: ESEMPIO LA RICORSIONE: ESEMPIO LA RICORSIONE: ESEMPIO

LA RICORSIONE LA RICORSIONE LA RICORSIONE: ESEMPIO LA RICORSIONE: ESEMPIO LA RICORSIONE: ESEMPIO LA RICORSIONE: ESEMPIO LA RICORSIONE Una funzione matematica è definita ricorsivamente quando nella sua definizione compare un riferimento a se stessa La ricorsione consiste nella possibilità di definire una funzione in termini

Dettagli

Ricerca di omologia di sequenza

Ricerca di omologia di sequenza Ricerca di omologia di sequenza RICERCA DI OMOLOGIA DI SEQUENZA := Data una sequenza (query), una banca dati, un sistema per il confronto e una soglia statistica trovare le sequenze della banca più somiglianti

Dettagli

7a. Un esempio di analisi bayesiana dei dati mediante Ministat

7a. Un esempio di analisi bayesiana dei dati mediante Ministat 7a. Un esempio di analisi bayesiana dei dati mediante Ministat Consideriamo una situazione nella quale la concentrazione dell analita aumenti nella malattia, e nella quale la soglia tra sani e malati è

Dettagli

LA RICORSIONE. Una funzione matematica è definita ricorsivamente quando nella sua definizione compare un riferimento a se stessa

LA RICORSIONE. Una funzione matematica è definita ricorsivamente quando nella sua definizione compare un riferimento a se stessa LA RICORSIONE Una funzione matematica è definita ricorsivamente quando nella sua definizione compare un riferimento a se stessa La ricorsione consiste nella possibilità di definire una funzione in termini

Dettagli

Esempio di utilizzo del programma BLAST disponibile all NCBI Form di Nucleotide BLAST

Esempio di utilizzo del programma BLAST disponibile all NCBI   Form di Nucleotide BLAST Esempio di utilizzo del programma BLAST disponibile all NCBI www.ncbi.nlm.nih.gov/blast Form di Nucleotide BLAST Per un uso più avanzato, si possono impostare parametri particolari (es. cost to open gap,

Dettagli

q xi Modelli probabilis-ci Lanciando un dado abbiamo sei parametri p i >0;

q xi Modelli probabilis-ci Lanciando un dado abbiamo sei parametri p i >0; Modelli probabilis-ci Lanciando un dado abbiamo sei parametri p1 p6 p i >0; 6! i=1 p i =1 Sequenza di dna/proteine x con probabilita q x Probabilita dell intera sequenza n " i!1 q xi Massima verosimiglianza

Dettagli

LA RICORSIONE! Una funzione matematica è definita ricorsivamente quando nella sua definizione compare un riferimento a se stessa

LA RICORSIONE! Una funzione matematica è definita ricorsivamente quando nella sua definizione compare un riferimento a se stessa LA RICORSIONE! Una funzione matematica è definita ricorsivamente quando nella sua definizione compare un riferimento a se stessa La ricorsione consiste nella possibilità di definire una funzione in termini

Dettagli

InfoBioLab I ENTREZ. ES 1: Ricerca di sequenze di aminoacidi in banche dati biologiche

InfoBioLab I ENTREZ. ES 1: Ricerca di sequenze di aminoacidi in banche dati biologiche InfoBioLab I ES 1: Ricerca di sequenze di aminoacidi in banche dati biologiche Esercizio 1 - obiettivi: Ricerca di 2 proteine in ENTREZ Salva i flat file che descrivono le 2 proteine in formato testo Importa

Dettagli

Quarta lezione. 1. Ricerca di omologhe in banche dati. 2. Programmi per la ricerca: FASTA BLAST

Quarta lezione. 1. Ricerca di omologhe in banche dati. 2. Programmi per la ricerca: FASTA BLAST Quarta lezione 1. Ricerca di omologhe in banche dati. 2. Programmi per la ricerca: FASTA BLAST Ricerca di omologhe in banche dati Proteina vs. proteine Gene (traduzione in aa) vs. proteine Gene vs. geni

Dettagli

Allineamenti a coppie

Allineamenti a coppie Laboratorio di Bioinformatica I Allineamenti a coppie Dott. Sergio Marin Vargas (2014 / 2015) ExPASy Bioinformatics Resource Portal (SIB) http://www.expasy.org/ Il sito http://myhits.isb-sib.ch/cgi-bin/dotlet

Dettagli

Laboratorio di Algoritmi e Strutture Dati

Laboratorio di Algoritmi e Strutture Dati Laboratorio di Algoritmi e Strutture Dati Docente: Camillo Fiorentini 8 gennaio 8 Il problema è simile all esercizio 5.6 del libro di testo di algoritmi (Introduzione agli algoritmi e strutture dati, T.

Dettagli

Algoritmi e Strutture Dati. Capitolo 10 Tecniche algoritmiche

Algoritmi e Strutture Dati. Capitolo 10 Tecniche algoritmiche Algoritmi e Strutture Dati Capitolo 10 Tecniche algoritmiche Programmazione Dinamica: principi generali 1) identificare un numero piccolo di sottoproblemi es: calcolare l II di peso massimo di G j, j=1,,n

Dettagli

Operativamente, risolvere un problema con un approccio ricorsivo comporta

Operativamente, risolvere un problema con un approccio ricorsivo comporta ! Una funzione matematica è definita ricorsivamente quando nella sua definizione compare un riferimento a se stessa!! La ricorsione consiste nella possibilità di definire una funzione in termini di se

Dettagli

Sottosequenza comune piu' lunga (programmazione dinamica)

Sottosequenza comune piu' lunga (programmazione dinamica) piu' (programmazione Laboratorio di Programmazione II Corso di Laurea in Bioinformatica Dipartimento di Informatica - Università di Verona Sommario piu' piu' Il problema del turista a manhattan piu' Problema

Dettagli

Patologia Clinica. Lezione introduttiva. Dott.ssa Samantha Messina

Patologia Clinica. Lezione introduttiva. Dott.ssa Samantha Messina Patologia Clinica Lezione introduttiva Dott.ssa Samantha Messina Modulo: Patologia clinica Anno accademico 2011/2012 II anno, I semestre CdL Infermieristica, Facoltà di Medicina e Chirurgia Università

Dettagli

Esempio: il fattoriale di un numero fact(n) = n! n!: Z! N n! vale 1 se n " 0 n! vale n*(n-1)! se n > 0. Codifica:

Esempio: il fattoriale di un numero fact(n) = n! n!: Z! N n! vale 1 se n  0 n! vale n*(n-1)! se n > 0. Codifica: ! Una funzione matematica è definita ricorsivamente quando nella sua definizione compare un riferimento a se stessa!! La ricorsione consiste nella possibilità di definire una funzione in termini di se

Dettagli

UNIVERSITÀ DEGLI STUDI DI MILANO. Bioinformatica. A.A semestre I. Allineamento veloce (euristiche)

UNIVERSITÀ DEGLI STUDI DI MILANO. Bioinformatica. A.A semestre I. Allineamento veloce (euristiche) Docente: Matteo Re UNIVERSITÀ DEGLI STUDI DI MILANO C.d.l. Informatica Bioinformatica A.A. 2013-2014 semestre I 3 Allineamento veloce (euristiche) Banche dati primarie e secondarie Esistono due categorie

Dettagli

Algoritmi e Strutture Dati

Algoritmi e Strutture Dati Algoritmi e Strutture Dati Modelli di calcolo e metodologie di analisi Domenico Fabio Savo 1 Notazione asintotica f(n) = tempo di esecuzione / occupazione di memoria di un algoritmo su input di dimensione

Dettagli

La ricerca di similarità: i metodi

La ricerca di similarità: i metodi La ricerca di similarità: i metodi Pairwise alignment allineamenti a coppie 1. Analisi della matrice a punti (dot matrix) 2. Programmazione dinamica (dynamic programming) allineamenti locale e globale.

Dettagli

Apprendimanto automatico

Apprendimanto automatico Docente: Matteo Re UNIVERSITÀ DEGLI STUDI DI MILANO Apprendimanto automatico Matteo Re Matteo.re@unimi.it http://homes.di.unimi.it/~re DI Dipartimento di Scienze dell Informazione Università degli Studi

Dettagli

Valutazione dei test diagnostici

Valutazione dei test diagnostici Valutazione dei test diagnostici Maria Miceli M. Miceli 2011 1 Diagnosi individuale (test di laboratorio) Esame collaterale nell ambito dell iter diagnostico condotto generalmente su animali sintomatici

Dettagli

Note per la Lezione 6 Ugo Vaccaro

Note per la Lezione 6 Ugo Vaccaro Progettazione di Algoritmi Anno Accademico 2016 2017 Note per la Lezione 6 Ugo Vaccaro Ancora sulla tecnica Programmazione Dinamica Nella lezione scorsa abbiamo appreso che la tecnica Divide-et-Impera,

Dettagli

Distanza di Edit. Speaker: Antinisca Di Marco Data:

Distanza di Edit. Speaker: Antinisca Di Marco Data: Distanza di Edit Speaker: Antinisca Di Marco Data: 14-04-2016 Confronto di sequenze Il confronto tra sequenze in biologia computazionale è la base per: misurare la similarità tra le sequenze allineamento

Dettagli

curves (ordinary ROC)

curves (ordinary ROC) CURVE ROC Ordinary ROC Frequency ROC Expected Utility ROC (O-ROC) (F-ROC) (EU-ROC) O-ROC curves (ordinary ROC) 1 Le coordinate di ogni punto della curva sono il tasso di veri positivi pari alla sensibilità

Dettagli

Problem Set 3 docente: Luciano Gualà

Problem Set 3 docente: Luciano Gualà Problem Set 3 docente: Luciano Gualà Esercizio (una domanda semplice ma non troppo) Dire se può esistere un algoritmo di ordinamento basato su confronti che ordina un insieme di 8 elementi facendo nel

Dettagli

LA RICORSIONE LA RICORSIONE

LA RICORSIONE LA RICORSIONE LA RICORSIONE Una funzione matematica è definita ricorsivamente quando nella sua definizione compare un riferimento a se stessa La ricorsione consiste nella possibilità di definire una funzione in termini

Dettagli

Metodi per la risoluzione di sistemi lineari

Metodi per la risoluzione di sistemi lineari Metodi per la risoluzione di sistemi lineari Sistemi di equazioni lineari. Rango di matrici Come è noto (vedi [] sez.0.8), ad ogni matrice quadrata A è associato un numero reale det(a) detto determinante

Dettagli

1. Si scriva una function Matlab che implementa il seguente metodo di punto fisso

1. Si scriva una function Matlab che implementa il seguente metodo di punto fisso Domanda 1 1. Si scriva una function Matlab che implementa il seguente metodo di punto fisso x n+1 = x n f(x n), n = 0, 1, 2,... K dove x 0 è il punto iniziale, f(x) = x 3 cos(x) e K è una costante assegnata.

Dettagli

Soluzione sistemi lineari

Soluzione sistemi lineari Soluzione sistemi lineari Laboratorio di programmazione e calcolo Chimica e Tecnologie chimiche Pierluigi Amodio Dipartimento di Matematica Università di Bari Soluzione sistemi lineari p. / matrice diagonale

Dettagli

EPIDEMIOLOGIA CLINICA: PROPRIETÀ DEI TEST

EPIDEMIOLOGIA CLINICA: PROPRIETÀ DEI TEST EPIDEMIOLOGIA CLINICA: PROPRIETÀ DEI TEST Problemi nella pratica clinica 1. Spiegazione del profilo clinico Dato il profilo clinico di un paziente, quale malattia ha? 2. Spiegazione della malattia Perché

Dettagli

Note per il corso di Geometria Corso di laurea in Ing. Edile/Architettura. 4 Sistemi lineari. Metodo di eliminazione di Gauss Jordan

Note per il corso di Geometria Corso di laurea in Ing. Edile/Architettura. 4 Sistemi lineari. Metodo di eliminazione di Gauss Jordan Note per il corso di Geometria 2006-07 Corso di laurea in Ing. Edile/Architettura Sistemi lineari. Metodo di eliminazione di Gauss Jordan.1 Operazioni elementari Abbiamo visto che un sistema di m equazioni

Dettagli

Esercitazione di Calcolo Numerico 1 22 Aprile Determinare la fattorizzazione LU della matrice a 1 1 A = 3a 2 a 2a a a 2 A =

Esercitazione di Calcolo Numerico 1 22 Aprile Determinare la fattorizzazione LU della matrice a 1 1 A = 3a 2 a 2a a a 2 A = Esercitazione di Calcolo Numerico 22 Aprile 29. Determinare la fattorizzazione LU della matrice a A = 3a 2 a 2a a a 2 ed utilizzarla per calcolare il det(a). 2. Calcolare il determinante della matrice

Dettagli

Calcolo dell n-esimo numero di Fibonacci

Calcolo dell n-esimo numero di Fibonacci Calcolo dell n-esimo numero di Fibonacci Formulazione F n F F F 0 1 n 0 1 F, n 2 1 n2 Algoritmo numerico F n 1 5 n n 1 2 5 1 2 5, 1 Algoritmo ricorsivo Complessità T ( n) 2 T ( n 1) T ( n 2) T ( n) 3F

Dettagli

Metodi per la risoluzione di sistemi lineari

Metodi per la risoluzione di sistemi lineari Metodi per la risoluzione di sistemi lineari 1 Sistemi di equazioni lineari 1.1 Determinante di matrici quadrate Ad ogni matrice quadrata A è associato un numero reale det(a) detto determinante della matrice

Dettagli

Classificazione introduzione

Classificazione introduzione - Classificazione introduzione Vittorio Maniezzo Università di Bologna 1 Ringraziamenti Questi lucidi derivano anche da adattamenti personali di materiale prodotto (fornitomi o reso scaricabile) da: A.

Dettagli

INTERPOLAZIONI CON SPLINE

INTERPOLAZIONI CON SPLINE INTERPOLAZIONI CON SPLINE Assegnati gli n +1valori che la funzione f assume nei nodi x i, si costruisce un interpolazione polinomiale a tratti. In ognuno degli intervalli [x i 1,x i ] il polinomio interpolatore

Dettagli

Lezione 13 Maggio Ricapitolazione del Controllo Ottimo LQ

Lezione 13 Maggio Ricapitolazione del Controllo Ottimo LQ PSC: Progettazione di sistemi di controllo III rim. 2007 Lezione 13 Maggio 16 Docente: Luca Schenato Stesori: Comin, Dal Bianco,Fabris, Parmeggiani 13.1 Ricapitolazione del Controllo Ottimo LQ Ripassiamo

Dettagli

Edit distance. v intner RIMDMDMMI wri t ers

Edit distance. v intner RIMDMDMMI wri t ers L'allineamento Edit distance Le operazioni permesse sono: I: insert (inserimento, inserzione) D: delete (cancellazione, delezione, rimozione) R: replacement (substition, sostituzione) M: match (corrispondenza,

Dettagli

Esercizio da portare all orale

Esercizio da portare all orale Laboratorio di Informatica 2004/05 Corso di laurea in biotecnologie Esercizio da portare all orale Create subito una cartella che porti il vostro cognome. Fate attenzione a salvare tutti i vostri file

Dettagli

Programmazione dinamica

Programmazione dinamica Programmazione dinamica Violetta Lonati Università degli studi di Milano Dipartimento di Informatica Laboratorio di algoritmi e strutture dati Corso di laurea in Informatica Violetta Lonati Programmazione

Dettagli

Corso di Visione Artificiale. Texture. Samuel Rota Bulò

Corso di Visione Artificiale. Texture. Samuel Rota Bulò Corso di Visione Artificiale Texture Samuel Rota Bulò Texture Le texture sono facili da riconoscere ma difficili da definire. Texture Il fatto di essere una texture dipende dal livello di scala a cui si

Dettagli

UNIVERSITÀ DEGLI STUDI DI MILANO. Bioinformatica. A.A semestre I 1 INTRODUZIONE

UNIVERSITÀ DEGLI STUDI DI MILANO. Bioinformatica. A.A semestre I 1 INTRODUZIONE Docente: Matteo Re UNIVERSITÀ DEGLI STUDI DI MILANO C.d.l. Informatica Bioinformatica A.A. 2013-2014 semestre I 1 INTRODUZIONE Motivazioni dell esistenza della biologia computazionale: Biologia Computazionale

Dettagli

Programmazione dinamica

Programmazione dinamica Programmazione dinamica Ilaria Castelli castelli@dii.unisi.it Università degli Studi di Siena Dipartimento di Ingegneria dell Informazione A.A. 29/21 I. Castelli Programmazione dinamica, A.A. 29/21 1/35

Dettagli

Valutazione delle Prestazioni di un Classificatore. Performance Evaluation

Valutazione delle Prestazioni di un Classificatore. Performance Evaluation Valutazione delle Prestazioni di un Classificatore Performance Evaluation Valutazione delle Prestazioni Una volta appreso un classificatore è di fondamentale importanza valutarne le prestazioni La valutazione

Dettagli

PROGRAMMAZIONE DINAMICA. Prof. Reho Gabriella Olimpiadi di Informatica

PROGRAMMAZIONE DINAMICA. Prof. Reho Gabriella Olimpiadi di Informatica PROGRAMMAZIONE DINAMICA Quando si usa P.D.? La programmazione dinamica si usa nei casi in cui esista una definizione ricorsiva del problema, ma la trasformazione diretta di tale definizione in un algoritmo

Dettagli

SISTEMI DI EQUAZIONI LINEARI

SISTEMI DI EQUAZIONI LINEARI SISTEMI DI EQUAZIONI LINEARI Date le rette di equazioni ax + by + c = 0 e a x + b y + c = 0 quanti punti hanno in comune? Per rispondere devo risolvere il sistema ax + by + c = 0 ቊ a x + b y + c = 0 e

Dettagli

Inversa di una matrice

Inversa di una matrice Geometria Lingotto. LeLing: La matrice inversa. Ārgomenti svolti: Inversa di una matrice. Unicita e calcolo della inversa. La inversa di una matrice. Il gruppo delle matrici invertibili. Ēsercizi consigliati:

Dettagli

Istituzioni di Matematiche sesta parte

Istituzioni di Matematiche sesta parte Istituzioni di Matematiche sesta parte anno acc. 2013/2014 Univ. Studi di Milano D.Bambusi, C.Turrini (Univ. Studi di Milano Istituzioni di Matematiche 1 / 27 index Matrici e operazioni tra matrici 1 Matrici

Dettagli

Sistemi di numerazione

Sistemi di numerazione Sistemi di numerazione Introduzione Un sistema di numerazione è un sistema utilizzato per esprimere i numeri e possibilmente alcune operazioni che si possono effettuare su di essi. Storicamente i sistemi

Dettagli

COME NASCE UN FASCICOLO? CHI PREPARA I QUESITI? DUE PAROLE SU:

COME NASCE UN FASCICOLO? CHI PREPARA I QUESITI? DUE PAROLE SU: COME NASCE UN FASCICOLO? CHI PREPARA I QUESITI? DUE PAROLE SU: LE PROVE AL COMPUTER? E LA QUINTA? AURELIA ORLANDONI PADOVA 4 aprile 2017 La struttura del Quadro di Riferimento Quadro di riferimento per

Dettagli

Omologia di sequenze: allineamento e ricerca

Omologia di sequenze: allineamento e ricerca Omologia di sequenze: allineamento e ricerca Genomi (organismi) e geni hanno un evoluzione divergente Sequenze imparentate per evoluzione divergente sono omologhe Le sequenze sono confrontabili tramite

Dettagli

Computazione per l interazione naturale: Regressione probabilistica

Computazione per l interazione naturale: Regressione probabilistica Computazione per l interazione naturale: Regressione probabilistica Corso di Interazione Naturale Prof. Giuseppe Boccignone Dipartimento di Informatica Università di Milano boccignone@di.unimi.it boccignone.di.unimi.it/in_2016.html

Dettagli

Analisi dei dati diagnostici

Analisi dei dati diagnostici Analisi dei dati diagnostici Test diagnostico Affidabilità Riproducibilità o precisione Validità o accuratezza Concordanza Sensibilità Specificità Valore predittivo positivo Valore predittivo negativo

Dettagli

Fondamenti di Informatica T. Linguaggio C: Stack e Ricorsione

Fondamenti di Informatica T. Linguaggio C: Stack e Ricorsione Linguaggio C: Stack e Ricorsione FUNZIONI: IL MODELLO A RUN-TIME Ogni volta che viene invocata una funzione: si crea di una nuova attivazione (istanza) del servitore viene allocata la memoria per i parametri

Dettagli

UNIVERSITÀ DEGLI STUDI DI MILANO. Giorgio Valentini. Bioinformatica. A.A semestre I 1 INTRODUZIONE

UNIVERSITÀ DEGLI STUDI DI MILANO. Giorgio Valentini. Bioinformatica. A.A semestre I 1 INTRODUZIONE Docenti: Matteo Re Giorgio Valentini UNIVERSITÀ DEGLI STUDI DI MILANO C.d.l. Informatica Bioinformatica A.A. 2014-2015 semestre I 1 INTRODUZIONE Motivazioni dell esistenza della biologia computazionale:

Dettagli

Corso di Matematica Applicata A.A

Corso di Matematica Applicata A.A Corso di Matematica Applicata A.A. 2012-2013 Programmazione lineare (III parte) Prof.ssa Bice Cavallo Iterazioni del simplesso Basi teoriche dell algoritmo Operazione di pivot Sottomatrice di base B=I

Dettagli

L'implementazione delle ROC Curve nei modelli GAMLSS come strumento di previsione per i Big Data

L'implementazione delle ROC Curve nei modelli GAMLSS come strumento di previsione per i Big Data L'implementazione delle ROC Curve nei modelli GAMLSS come strumento di previsione per i Big Data Paolo Mariani, Andrea Marletta Dipartimento di Economia, Metodi Quantitativi e Strategie di Impresa, Università

Dettagli

La statistica e i test diagnostici

La statistica e i test diagnostici La statistica e i test diagnostici Laura Ventura Dipartimento di Scienze Statistiche Università degli Studi di Padova ventura@stat.unipd.it XXIII Settimana della Cultura Scientifica e Tecnologica Liceo

Dettagli

Esercizi 3, 1. Prof. Thomas Parisini. Esercizi 3, 3 Regola:

Esercizi 3, 1. Prof. Thomas Parisini. Esercizi 3, 3 Regola: Esercizi 3, 1 Esercizi 3, 2 Esercizi Stabilità per sistemi a tempo continuo Analisi degli autovalori Analisi del polinomio caratteristico, criterio di Routh-Hurwitz Stabilità per sistemi a tempo continuo

Dettagli

Stabilità per sistemi a tempo continuo

Stabilità per sistemi a tempo continuo Esercizi 3, 1 Stabilità per sistemi a tempo continuo Analisi degli autovalori Analisi del polinomio caratteristico, criterio di Routh-Hurwitz Calcolo di Esercizi 3, 2 Esercizi Stabilità per sistemi a tempo

Dettagli

Topologia della matrice di rigidezza

Topologia della matrice di rigidezza Topologia della matrice di rigidezza Eq. differenziale lineare e stazionaria Metodo agli Elementi Finiti Sistema lineare La matrice del sistema viene chiamata matrice di rigidezza H. La soluzione del sistema

Dettagli

MATRICI E SISTEMI LINEARI

MATRICI E SISTEMI LINEARI MATRICI E SISTEMI LINEARI - PARTE I - Felice Iavernaro Dipartimento di Matematica Università di Bari 27 Febbraio 2006 Felice Iavernaro (Univ. Bari) Matrici e Sistemi lineari 27/02/2006 1 / 1 Definizione

Dettagli

Corso di Perfezionamento

Corso di Perfezionamento Programmazione Dinamica 1 1 Dipartimento di Matematica e Informatica Università di Camerino 15 febbraio 2009 Tecniche di Programmazione Tecniche di progettazione di algoritmi: 1 Divide et Impera 2 Programmazione

Dettagli

Linguaggio C++ 8. Matrici

Linguaggio C++ 8. Matrici 2009-2010 Ingegneria Aerospaziale Prof. A. Palomba - Elementi di Informatica (E-Z) Linguaggio C++ 8 Matrici Linguaggio C++ 8 1 Array a più dimensioni. Sintassi generale : tipo nome [dimensione 1][dimensione

Dettagli

Allineamento multiplo di sequenze

Allineamento multiplo di sequenze Allineamento multiplo di sequenze Bioinformatica a.a. 2008/2009 Letterio Galletta Università di Pisa 22 Maggio 2009 Letterio Galletta (Università di Pisa) Allineamento multiplo di sequenze 22 Maggio 2009

Dettagli

Diverse politiche. La ricorsione PROGRAMMAZIONE TOP-DOWN ESEMPIO. Bottom-Up. Di solito è meglio alternare le due tecniche

Diverse politiche. La ricorsione PROGRAMMAZIONE TOP-DOWN ESEMPIO. Bottom-Up. Di solito è meglio alternare le due tecniche La ricorsione Top-Down Diverse politiche Si parte dal problema generale Poi si sce nei particolari (moduli, funzioni, ecc ) Bottom-Up Si creano prima i moduli e le funzioni base Poi si assemblano nel programma

Dettagli

ALLINEAMENTO DI SEQUENZE

ALLINEAMENTO DI SEQUENZE ALLINEAMENTO DI SEQUENZE Gli obiettivi degli algoritmi di allineamento di sequenze di acidi nucleici o proteine sono molteplici. Possiamo ricordare la ricerca di similarità nelle banche dati, la costruzione

Dettagli

Introduzione alla programmazione Algoritmi e diagrammi di flusso. Sviluppo del software

Introduzione alla programmazione Algoritmi e diagrammi di flusso. Sviluppo del software Introduzione alla programmazione Algoritmi e diagrammi di flusso F. Corno, A. Lioy, M. Rebaudengo Sviluppo del software problema idea (soluzione) algoritmo (soluzione formale) programma (traduzione dell

Dettagli

Chi non risolve esercizi non impara la matematica.

Chi non risolve esercizi non impara la matematica. 5.5 esercizi 9 Per trovare la seconda equazione ragioniamo così: la parte espropriata del primo terreno è x/00, la parte espropriata del secondo è y/00 e in totale sono stati espropriati 000 m, quindi

Dettagli

Stima della qualità dei classificatori per l analisi dei dati biomolecolari

Stima della qualità dei classificatori per l analisi dei dati biomolecolari Stima della qualità dei classificatori per l analisi dei dati biomolecolari Giorgio Valentini e-mail: valentini@dsi.unimi.it Rischio atteso e rischio empirico L` apprendimento di una funzione non nota

Dettagli

05. Determinare una base ortonormale per ognuno dei seguenti spazi vettoriali.

05. Determinare una base ortonormale per ognuno dei seguenti spazi vettoriali. T.1 BASI ORTONORMALI, MATRICI ORTOGONALI 01. Sia V il sottospazio di IR 3 generato dalla base B : (1, 0, 2), (0, 2, 1). Verificare che anche C : (1, 2, 1), (1, 4, 0) è base per V e ortonormalizzare le

Dettagli

Anno 4 Matrice inversa

Anno 4 Matrice inversa Anno 4 Matrice inversa 1 Introduzione In questa lezione parleremo della matrice inversa di una matrice quadrata: definizione metodo per individuarla Al termine della lezione sarai in grado di: descrivere

Dettagli

13 Esercizi di Riepilogo

13 Esercizi di Riepilogo 13.1 Esercizi Esercizio 13.1 Si consideri una versione semplificata della battaglia navale in cui le navi possono essere posizionate solo in orizzontale e ogni riga può contenere al massimo una nave. Il

Dettagli

MODALITA DI VALUTAZIONE DELL ACCURATEZZA DIAGNOSTICA

MODALITA DI VALUTAZIONE DELL ACCURATEZZA DIAGNOSTICA MODALITA DI VALUTAZIONE DELL ACCURATEZZA DIAGNOSTICA Accuratezza diagnostica E definita come la capacità di un test diagnostico di discriminare tra due condizioni cliniche diverse; per esempio: malattia

Dettagli

Programmazione Lineare: problema del trasporto Ing. Valerio Lacagnina

Programmazione Lineare: problema del trasporto Ing. Valerio Lacagnina Problemi di trasporto Consideriamo un problema di programmazione lineare con una struttura matematica particolare. Si può utilizzare, per risolverlo, il metodo del simplesso ma è possibile realizzare una

Dettagli

Elementi di Algebra Lineare Matrici e Sistemi di Equazioni Lineari

Elementi di Algebra Lineare Matrici e Sistemi di Equazioni Lineari Elementi di Algebra Lineare Matrici e Sistemi di Equazioni Lineari Antonio Lanteri e Cristina Turrini UNIMI - 2016/2017 Antonio Lanteri e Cristina Turrini (UNIMI - 2016/2017 Elementi di Algebra Lineare

Dettagli