93277 - COMPUTATIONAL METHODS FOR BIOINFORMATICS

Anno Accademico 2020/2021

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

Conoscenze e abilità da conseguire

At the end of the course, the student has the knowledge for developing and using tools for sequence and structure analysis of biomolecules and more generally for annotation problems in the genomic era. In particular, the student will be able to independently write programs in Python language, to proficiently use scripting language. He/she will be also able to discuss the theoretical basis of sequence alignment tools (dynamic programming and heuristic algorithms) and machine learning algorithms (Hidden Markov Models) and to implement them.

Contenuti

Come programmare in Python; incluso: variabili, espressioni e comandi, funzioni, condizionali, iterazione, stringhe, liste, tuple, dizionari, classi e oggetti, ereditarieta', 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 InsegnamentiOnLine.

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.

Modalità di verifica e valutazione dell'apprendimento

Esame scritto basato su esercizi di programmazione in Python e scripting.

Nel caso l'esame sia online, almeno una parte di esso verrà trasformata in esame orale.


Strumenti a supporto della didattica

Il materiale didattico sarà disponibile sul sito InsegnamentiOnLine.

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