96264 - COMPUTATIONAL METHODS FOR BIOINFORMATICS

Anno Accademico 2022/2023

  • Docente: Ivan Lanese
  • Crediti formativi: 10
  • SSD: INF/01
  • Lingua di insegnamento: Inglese
  • Moduli: Ivan Lanese (Modulo 1) Allegra Via (Modulo 2)
  • Modalità didattica: Convenzionale - Lezioni in presenza (Modulo 1) Convenzionale - Lezioni in presenza (Modulo 2)
  • Campus: Bologna
  • Corso: Laurea Magistrale in Bioinformatics (cod. 8020)

Conoscenze e abilità da conseguire

Al termine del corso lo studente possiede le conoscenze per sviluppare e utilizzare gli strumenti per l'analisi strutturale e la sequenza delle biomolecole e, più in generale, per l'individuazione dei problemi nell'era genomica. In particolare, lo studente sarà in grado di programmare autonomamente in linguaggio Python. Inoltre, sarà in grado di discutere e implementare le basi teoriche degli strumenti di allineamento sequenziale (programmazione dinamica e algoritmi euristici).

Contenuti

Come programmare in Python; incluso: variabili, espressioni e comandi, funzioni, condizionali, iterazione, stringhe, liste, tuple, dizionari, file e ricorsione. Il corso include anche una breve introduzione a linux e a programmazione dinamica, algoritmi di allineamento di stringhe (locali, globali e semiglobali), Markov models e Hidden Markov models (descrizione generale e algoritmi principali).

Testi/Bibliografia

Non è necessario l'acquisto di testi specifici. Materiale didattico aggiornato e' reperibile tramite il sito Virtuale.

Per approfondimenti suggeriamo:

Cay Horstmann, Rance D. Necaise. Python for Everyone, Wiley

Allen B. Downey. Think Python: How to Think Like a Computer Scientist, O’ Reilly

per la parte di programmazione Python.

Metodi didattici

Lezioni frontali e attivita' pratica di programmazione in Python sotto linux.

In considerazione della tipologia di attività e dei metodi didattici
adottati, la frequenza di questa attività formativa richiede la
preventiva partecipazione di tutti gli studenti ai Moduli 1 e 2 di
formazione sulla sicurezza nei luoghi di studio, in modalità e-learning.

Modalità di verifica e valutazione dell'apprendimento

Esame scritto e pratico basato su esercizi di programmazione in Python. Gli esercizi verranno risolti prima su carta e ne verra' poi fatto il testing e debugging sul computer. L'esame includera' anche una breve discussione orale delle soluzioni proposte.

Strumenti a supporto della didattica

Il materiale didattico sarà disponibile sul sito Virtuale.

Per le esercitazioni si userà la shell linux, un editor (a scelta dello studente) e l'interprete Python.

Orario di ricevimento

Consulta il sito web di Ivan Lanese

Consulta il sito web di Allegra Via