IN470 - Metodi Computazionali per la Biologia - AA 2017-2018

Corso

Descrizione, Programma


Introduzione

Il corso di è dedicato allo studio di metodi per analizzare la complessià biologica. In particolare verranno trattati argomenti relativi a metodi matematici, computazionali e informatici per l'analisi di vari fenomeni biologici a partire da dati reali e/o disponibili in rete. Il corso prevede una introduzione sui concetti di base della biologia cellulare, e un breve percorso storico sullo sviluppo di modelli bio-matematici. Inoltre il corso fornisce una presentazione dei principali algoritmi di machine learning per l'analisi di sequenze. Infine, il corso prevede l'uso dei grafi come oggetto matematico di base per alcune analisi di dati biologici. A tal fine è previsto un richiamo di teoria dei grafi. è richiesto come prerequisito di tipo informatico, una certa dimestichezza con algoritmi e strutture dati e la capacità di leggere pseudo-codice o algoritmi scritti in C o in altri linguaggi di programmazione. La capacità di scrivere codice in linguaggio C (o in altri linguaggi di alto livello), compilarlo ed eseguirlo non è strettamente necessario ma considerato un vantaggio.

 

Programma indicativo del corso

Introduzione alla Systems Biology: cosa è la biologia computazionale; i ruoli della modellistica matematica e della bioinformatica; a cosa mira, quali sono i problemi; quali sono gli strumenti teorici utilizzati; panoramica degli argomenti che saranno trattati durante il corso.

Introduzione alla biologia molecolare e cellulare; conoscenza di base di genetica, proteomica e processi cellulari; ecologia ed evoluzione.

Cenni alla disponibilità di dati biologici in rete.

Richiamo di teoria della probabilità: variabili casuali discrete e continue; distribuzioni, entropia, inferenza, campionamento, stima di probabilità; l'algoritmo EM (Expectation Maximisation).

Richiamo di teoria dell'informazione: Shannon entropy e altre misure di entropia; misure di diversità (indice di Shannon-Wiener, indice di Simpson).

Introduzione ai processi stocastici: random walks, catene di Markov.

Introduzione al Machine Learning e al Pattern Recognition: supervised and unsupervised learning; metodi Bayesiani; tecniche non-parametriche; Neural Networks; metodi stocastici; clustering; k-means.

Analisi delle sequenze: Algoritmi di allineamento (e.g., BLAST); Hidden Markov Models (HMM); strumenti software disponibili in rete.

Richiamo di teoria dei grafi: notazione; tipi di grafi; rappresentazione; algoritmi sui grafi; proprietà statistiche delle reti; centralità; Motifs; Network clustering. Biological Networks: reti di trasduzione del segnale; reti di regolazione genica; protein-protein interaction networks; reti metaboliche; strumenti software disponibili in rete.

Modelli bio-matematici; predizione mediante modelli teorici; modelli continui; richiami dei metodi numerici per la risoluzione di sistemi di equazioni differenziali ordinarie; modelli discreti; modelli di spin (Ising models); Automi cellulari; Boolean networks; Agent-based models; data fitting e stima dei parametri; strumenti software disponibili.

 

Programma finale del corso AA 2017-2018

Introduzione e generalità Bioinformatica e algoritmi; La biologia computazionale nella clinica e nell'industria farmaceutica; Farmacocinetica e farmacodinamica

Introduzione alla Systems Biology: cosa è la biologia computazionale; I ruoli della modellistica matematica e della bioinformatica; a cosa mira; quali sono i problemi; strumenti teorici utilizzati della bio-matematica e della bioinformatica.

Introduzione alla biologia molecolare e cellulare: conoscenza di base di genetica, proteomica e processi cellulari; ecologia ed evoluzione; le molecola base; i legami molecolari; i cromosomi; ll DNA e la sua replicazione; genomica; Il dogma centrale della biologia; analisi dei geni; la trascrizione del DNA; i vari tipi di RNA; la maturazione dell'RNA; la traduzione dell'RNA in proteine. il codice genetico; le proteine; sintesi; il folding;

Breve richiamo dei concetti principali della teoria della probabilità eventi, assiomi, variabili casuali, distribuzioni; momenti. Generazione di variabili aleatorie con distribuzione arbitraria; il metodo Acceptance/Rejection; il metodo Random Wheel Selection per la generazione di un evento con distribuzione discreta data; Calcolo della frequenza di un evento aleatorio generato al calcolatore; visualizzazione dell'istogramma di frequenze;

Introduzione alle teoria dell'informazione; Shannon entropy; conditional entropy; mutual information; diversity indexes (Shannon, Renyi entropy, richness, Simpson).

Introduzione ai processi stocastici; definizione base; esempi; modello di code; processo di Bernoulli e di Poisson; Processi Markoviani; i processi stocastici in bioinformatica e bio-matematica; l'autocorrelazione.

Cenni ai Random Walks e all'algoritmo BLAST di sequence alignment come processo stocastico;

Exact matching/string searching: generalità l'agoritmo di Knuth-Morris-Pratt Exact matching/string searching: l'agoritmo di Boyer-Moore.

Confrontare sequenze: similarità e omologia; pairwise alignment; distanza di editing; scoring matrices PAM e BLOSUM Algoritmo di Needleman-Wunsch; allineamento locale; Algoritmo Smith-Waterman; algoritmo BLAST.

Multiple Sequence Alignment; sequenza di consenso; algoritmi star alignment; ClustalW; entropy e circular sum scoring functions; Banche dati biologiche; motivazioni; formato dati; tassonomia; DB primari; DB secondari; NCBI, EMBL, DDBJ; NCBI Entrez.

Hidden Markov Models; Decoding; the Viterbi Algorithm; Evaluation; The Forward Algorithm; The Backward Algorithm; Posterior Decoding; Learning; Baum-Welch Algorithm; Uso di Hidden Markov Models per l'analisi di bio-sequenze; gene finding.

Phylogenetic Analysis; alberi filogenetici; dimensione dello spazio di ricerca di algoritmi filogenetici; Metodi di costruzione di alberi filogenetici; dati usati per l'analisi filogenetica; l'algoritmo Unweighted Pair Group Method with Arithmetic mean (UPGMA); l'algoritmo Neighbor Joining Method;

Machine Learning; generalità supervised e unsupervised learning; model selection; undefitting; overfitting; Polynomial curve fitting; machine learning come stima dei parametri ed il problema dell'overfitting; suddivisione del training set in testing e testing; concetto di bias e variance trade-off; Artificial Neural Networks; definizone; il percettrone di Rosenblatt; l'algoritmo di apprendimento del percettrone; il multi-layer perceptron; l'algoritmo di error-back propagation per l'apprendimento del MLP; tipi di neural networks; convolution networks; reinforcement networks; unsupervised learning e self-organising maps;

Cenni introduttivi alla teoria dei grafi; rappresentazione, terminologia, concetti; cammini; cicli; connettività distanza; componenti connesse; distanza; visita breadth-first search; depth-first search; algoritmo di Dijkstra; six-degree of separation; small world networks; misure di centralità degree centrality; eigenvector centrality; betweennes centrality; closeness centrality;

La network biology; generalità concetti; tipi di dati biologici usati per costruire le reti; network biology e network medicine; problemi e algoritmi usati; misure di centralità random networks; scale-free networks; preferential attachment; scale-free network in biologia;

Automi Cellulari: introduzione e cenni storici; definizione; caso uni-dimensionale; caso bidimensionale; Game of Life von Neumann replicator; cyclic CA; Greenberg-Hasting model e le Belousov-Zhabotinskii reactions; Gerard-Shuster model; HPP model of particle dynamics; software e hardware a Automi Cellulari; Esempio di CA: il modello preda-predatore;