Natural computing (2020/2021)

Codice insegnamento
4S004557
Docente
Giuditta Franco
Coordinatore
Giuditta Franco
crediti
6
Altri corsi di studio in cui è offerto
Settore disciplinare
INF/01 - INFORMATICA
Lingua di erogazione
Inglese
Sede
VERONA
Periodo
I semestre dal 1-ott-2020 al 29-gen-2021.

Orario lezioni

Vai all'orario delle lezioni

Obiettivi formativi

Il corso si propone di fornire conoscenze sui modelli di calcolo naturale, intesi come processi computazionali osservati in e ispirati dalla natura. In particolare, il corso fornirà conoscenze su alcuni modelli di calcolo classici, quali linguaggi formali e automi, su vari modelli di calcolo biologico, compresi gli algoritmi biomolecolari, su metodi di analisi dell'informazione genomica e di reti metaboliche. Conoscenza e capacità di comprensione Al termine dell’insegnamento lo studente dovrà dimostrare di avere approfondito la propria padronanza sulle principali strutture discrete, le dinamiche biologiche discrete, e sulla nozione di calcolo, ed infine di aver sviluppato la propria capacità di riconoscerle anche in sistemi di calcolo non convenzionali, come quelli biologici. Conoscenze applicate e capacità di comprensione In particolare, alla fine del corso lo studente dovrà dimostrare di essere in grado di: a) riconoscere e modellare i processi computazionali non convenzionali presenti nei sistemi naturali, b) progettare algoritmi di tipo biologico e biomolecolare (in particolare basati su sequenze DNA) per risolvere problemi computazionali, c) calcolare distribuzioni e indici statistici su genomi reali, d) analizzare reti biologiche, sia come strutture statiche che dinamiche. Autonomia di giudizio Alla fine del corso lo studente avrà sviluppato una competenza algoritmica avanzata, che si estenda al mondo naturale, e in particolare molecolare, e migliorato le proprie capacità di sviluppare software per applicare i metodi appresi nel corso a sistemi biologici specifici. Abilità comunicative Alla fine del corso lo studente dovrà dimostrare di essere in grado di comprendere e comunicare con un linguaggio appropriato gli argomenti illustrati durante l'insegnamento, sotto forma di: teoremi, dimostrazioni, algoritmi, e metodi di analisi di dati. Capacità di apprendere Capacità di applicare le metodologie introdotte ad ambiti diversi, e proseguire gli studi in modo autonomo nell'ambito del calcolo non convenzionale.

Programma

Introduzione al calcolo naturale, e alle strategie algoritmiche alla base della vita
Calcolo DNA su doppie stringhe e complessità computazionale di bioalgoritmi
Algoritmi DNA per risolvere problemi NP-completi, per estrarre e per generare librerie DNA
Metodi per estrarre e analizzare dizionari genomici
Profili genomici e distribuzioni di motivi ricorrenti
Software IGtools per analizzare e visualizzare i dati genomici
Rappresentazione discreta di sistemi biochimici
Grammatiche e reti metaboliche, e problemi di dinamica inversa
Modelli computazionali di processi biomolecolari e metabolici:
Strutture dati di base per rappresentare le reazioni chimiche, le gerarchie di membrane, le interazioni biologiche
Linguaggi formali e grammatiche, gerarchia di Chomsky
Caratterizzazione specifica delle classi REG, REC, e CF
Automi a stati finiti, macchine di Turing e universalità computazionale

Testi di riferimento
Autore Titolo Casa editrice Anno ISBN Note
Gheorghe Paun, Grzegorz Rozenberg, Arto Salomaa DNA computing: new computing paradigms (Edizione 3) Springer 2013
Alexander Meduna Formal Languages and Computation: Models and Their Applications Auerbach Publications 2014
Vincenzo Manca Infobiotics Springer 2013

Modalità d'esame

Esami orali a distanza, o in presenza su richiesta.

Solo nella sessione di febbraio, il superamento dell'esame orale permette (facoltativamente) di poter sviluppare progetti (e. g., su argomenti di genomica computazionale) o tenere seminari (su articoli recenti) al fine di migliorarne la valutazione.