B5780 - COMPUTATIONAL METHODS FOR BIOINFORMATICS

Anno Accademico 2024/2025

  • Docente: Ivan Lanese
  • Crediti formativi: 10
  • SSD: INF/01
  • Lingua di insegnamento: Inglese
  • Moduli: Ivan Lanese (Modulo 1) Matteo Manfredi (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, ricorsione e programmazione orientata agli oggetti. Il corso include anche una breve introduzione a linux e a programmazione dinamica, algoritmi di allineamento di stringhe (locali, globali e semiglobali).

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.

Strumenti a supporto della didattica

Il materiale didattico sarà disponibile sul sito Virtuale.

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

Orario di ricevimento

Consulta il sito web di Ivan Lanese

Consulta il sito web di Matteo Manfredi