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

Lezioni

Diario delle lezioni dell'AA 2017-2018


Le lezioni si tengono nel I semestre con il seguente orario:
  • [-] lunedì ore 11.00-13.00 (lezione/esercitazioni, Laboratorio Informatica);
  • [-] martedì ore 11.00-13.00 (lezione/esercitazioni, Aula F).
Eventuali lezioni di recupero si tengono il
  • [-] venerdì ore 11.00-13.00 (lezione/esercitazioni, Laboratorio Informatica);

Ricevimento:
Lunedì dalle ore 10.00 alle 11.00, studio 314 pal C sede San L. Murialdo 1

Lezione n. 1 - Monday 25 September 2017

  • Outline del corso; Introduzione e generalita'; Bioinformatica e algoritmi; La biologia computazionale nella clinica e nell'industria farmaceutica; Farmacocinetica e farmacodinamica;

Lezione n. 2 - Tuesday 26 September 2017

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

Lezione n. 3 - Monday 2 October 2017

  • Introduzione alla biologia molecolare e cellulare (prima parte): 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;

Lezione n. 4 - Tuesday 3 October 2017

  • Introduzione alla biologia molecolare e cellulare (seconda parte); genomica; Il dogma centrale della biologia; Il progetto genoma; la struttura del genoma umano; Introduzione alla biologia molecolare e cellulare (seconda parte); analisi dei geni; la trascrizione del DNA; i virus;

Lezione n. 5 - Monday 9 October 2017

  • Laboratorio: generazione di numeri casuali; le funzioni srand48 e drand48; Laboratorio: generazione casuale di stringhe nucleotidiche di lunghezza arbitraria (program1.c); generazione casuale di stringhe aminoacidiche di lunghezza arbitraria (program2.c);

Lezione n. 6 - Tuesday 10 October 2017

  • Introduzione alle teoria dell'informazione; Shannon Entropy; Conditional Entropy; Mutual Information; Indici di diversita' biologica; Indice di Shannon; True diversity; Reny index;

Lezione n. 7 - Monday 16 October 2017

  • Laboratorio: il codice genetico; Laboratorio: programma in C di trascrizione sequenza DNA e traduzione in proteine;

Lezione n. 8 - Tuesday 17 October 2017

  • Introduzione ai processi stocastici; definizione base; esempi; modello di code; processo di Bernoulli e di Poisson; Processi Markoviani; Introduzione ai processi stocastici; i processi stocastici in bioinformatica e bio-matematica; l'autocorrelazione; Cenni ai Random Walks e all'algoritmo BLAST di sequence alignment come processo stocastico e principale algoritmo per la consultazione di database di sequenze biologiche;

Lezione n. 9 - Friday 20 October 2017

  • Laboratorio: sviluppo di un algoritmo in C per il calcolo della Shannon Entropy di un testo in inglese (o in italiano) qualsiasi (e.g., http://www.textfiles.com/etext/) Laboratorio: sviluppo di un algoritmo in C per il calcolo della Shannon Entropy di un testo in inglese (o in italiano) qualsiasi (e.g., http://www.textfiles.com/etext/)

Lezione n. 10 - Monday 23 October 2017

  • Cammini casuali. L'algoritmo BLAST per l'allineamento di sequenze come cammino casuale; Laboratorio: implementazione in C di diversi algoritmi per la generazione di un random walk in 1D e 2D su reticolo e in R o R^2 segnale e calcolo del mean square displacement;

Lezione n. 11 - Tuesday 24 October 2017

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

Lezione n. 12 - Monday 30 October 2017

  • Laboratorio: implementazione in C di un algoritmo per la generazione di un segnale con rumore e calcolo del correlogramma in presenza o assenza di un vero segnale; Laboratorio: implementazione in C di un algoritmo per la generazione di un segnale con rumore e calcolo del correlogramma in presenza o assenza di un vero segnale;

Lezione n. 13 - Tuesday 31 October 2017

  • Multiple Sequence Alignment; sequenza di consenso; algoritmi star alignment; Multiple Sequence Alignment; ClustalW; entropy e circular sum scoring functions;

Lezione n. 14 - Friday 3 November 2017

  • Laboratorio: esempi di multiple-alignment su NCBI Laboratorio: esempi di multiple-alignment su NCBI

Lezione n. 15 - Monday 6 November 2017

  • Esonero: IN470 06/11/2017 11:00-13:00 Aula 311 Esonero: IN470 06/11/2017 11:00-13:00 Aula 311

Lezione n. 16 - Monday 13 November 2017

  • Banche dati biologiche; motivazioni; formato dati; tassonomia; DB primari; DB secondari; NCBI, EMBL, DDBJ; NCBI EBI-Entrez; Exact matching/string searching: generalita'; l'agoritmo di Knuth-Morris-Pratt;

Lezione n. 17 - Tuesday 14 November 2017

  • Exact matching/string searching: l'agoritmo di Boyer-Moore; Exact matching/string searching: l'agoritmo di Boyer-Moore;

Lezione n. 18 - Friday 17 November 2017

  • Laboratorio: exact matching, l'algoritmo di Boyer-Moore in C Laboratorio: exact matching, l'algoritmo di Boyer-Moore in C

Lezione n. 19 - Monday 20 November 2017

  • Esercitazione su una implementazione dell'algoritmo di exact matching Knuth-Morris-Pratt. Esercitazione su banche dati biologiche; database primari; database secondari; NCBI, EMBL, DDBJ; NCBI EBI-Entrez; Uso dell'algoritmo BLAST

Lezione n. 20 - Tuesday 21 November 2017

  • Phylogenetic Analysis; alberi filogenetici; dimensione dello spazio di ricerca di algoritmi filogenetici; Metodi di costruzione di alberi filogenetici; Dati usati per l'analisi filogenetica; Phylogenetic Analysis; l'algoritmo Unweighted Pair Group Method with Arithmetic mean (UPGMA); l'algoritmo Neighbor Joining Method; Hidden Markov Models; Decoding; the Viterbi Algorithm; Evaluation;

Lezione n. 21 - Monday 27 November 2017

  • Laboratorio: completamento dell'esercizio su mutazione, selezione ed evoluzione di stringhe nucleotidiche (genotipo) tradotte in stringhe aminoacidiche (fenotipo); La selezione viene fatta in base alla presenza di determinate sottostringhe nel fenotipo che ne determina il valore di fitness; Laboratorio: completamento dell'esercizio su mutazione, selezione ed evoluzione di stringhe nucleotidiche (genotipo) tradotte in stringhe aminoacidiche (fenotipo); dettagli implementatitvi, visualizzazione del criterio di convergenza e dei risultati, discussione, etc.;

Lezione n. 22 - Tuesday 28 November 2017

  • Machine Learning; generalita'; 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;

Lezione n. 23 - Friday 1 December 2017

  • Laboratorio: completamento dell'implementazione in ANSI C dell'algoritmo evolutivo di stringhe nucleotidiche (genotipo) tradotte, mediante l'utilizzo del codice genetico, in stringhe aminoacidiche (fenotipo); Laboratorio: completamento dell'implementazione in ANSI C dell'algoritmo evolutivo di stringhe nucleotidiche (genotipo) tradotte, mediante l'utilizzo del codice genetico, in stringhe aminoacidiche (fenotipo);

Lezione n. 24 - Monday 4 December 2017

  • Hidden Markov Models; 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;

Lezione n. 25 - Tuesday 5 December 2017

  • Artificial Neural Networks; 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; connettivita'; distanza; componenti connesse; distanza;

Lezione n. 26 - Tuesday 12 December 2017

  • Cenni introduttivi alla teoria dei grafi; visita breadth-first search; depth-first search; algoritmo di Dijkstra; six-degree of separation; small world networks; misure di centralita'; degree centrality; eigenvector centrality; betweennes centrality; closeness centrality; La network biology; generalita'; concetti; tipi di dati biologici usati per costruire le reti; network biology e network medicine; problemi e algoritmi usati; misure di centralita'; random networks; scale-free networks; preferential attachment; scale-free network in biologia;

Lezione n. 27 - Monday 18 December 2017

  • Laboratorio: completamento dell'esercizio sull'algoritmo evolutivo; Dettagli implementatitvi, visualizzazione del criterio di convergenza e dei risultati, discussione, etc.; Modelli bio-matematici; predizione mediante modelli teorici; il paradigma itertativo della modellistica matematica; data-driven models; modelli di crescita di popolazione limitata e non; derivazione analitica ed esempi; crescita logistica; Modelli bio-matematici; modelli ecologici limitati dalla densita'; Il modello di Lotka-Volterra; l'esperimento di Huffaker e Kenneth;

Lezione n. 28 - Tuesday 19 December 2017

  • Modelli bio-matematici; il modello epidemico SIR e alcune sue varianti; Il modello di Perelson per la HAART; Modelli bio-matematici; l'applicazione Java Populus per la soluzione di modelli continui di dinamica delle popolazione; cenni ai metodi di risoluzione numerica dei sistemi di equazioni differentiali; Modelli discreti; modelli di spin (Ising models); Automi cellulari; Boolean networks;

Lezione n. 29 - Friday 22 December 2017

  • Agent-based models; data fitting e stima dei parametri; strumenti software disponibili; Automi cellulari; introduzione e storia; definizione; l'automa 1-dimensionale; classificazione di Wolfram; l'automa 2-dimensionale; Il Game of Life di Conway; Software disponibile per la simulazione di CA; hardware dedicato (CA-Machine); il modello preda-predatore come automa cellulare bidimensionale; relazione con il sistema di equazioni alle derivare ordinarie; modelli stocastici; CA stocastici come sistemi dinamici discreti stochastici e processi stocastici; esempio di CA: Belousov-Zabotonsky reactions;