Nuova ricerca

ELISA FICARRA

Professore Ordinario
Dipartimento di Ingegneria "Enzo Ferrari"

Insegnamento: Strumenti e tecnologie per la bioingegneria

Bioingegneria per l'innovazione in medicina (Offerta formativa 2024)

Obiettivi formativi

Il corso si propone il duplice obiettivo di insegnare l’uso di linguaggi di programmazione, quale in primis il Python, più comunemente utilizzati per l’elaborazione di immagini, dati e segnali biomedici.
Il corso si propone inoltre di valutare la metodologia di studio e validazione dei trattamenti in campo biomedico con specifica focalizzazione sui dispositivi e le tecnologie in campo sanitario.

Prerequisiti

È richiesta una base di conoscenza della programmazione informatica, es. linguaggio C, e un livello minimo di familiarità con l’utilizzo delle funzioni e delle librerie.

Programma del corso

Introduzione al corso (0.5 CFU):
• Obiettivi del corso
• Struttura del corso e Regole per l'Esame
• Set-up per le sessioni di laboratorio


Linguaggio Python (4 CFUs):
• Tipi di dato primitivi
• Variabili e costanti numeriche
• Stringhe e metodi per stringhe
• Input e Output di dati numerici e di stringhe
• Operatori aritmetici elementari, potenze, funzioni matematiche
• Variabili booleane e operatori
• Costrutti di controllo di flusso
• Funzioni e passaggio di parametri
• Liste, Insiemi, Dizionari
• Strutture complesse (dizionari di insiemi e dizionari di liste)
• Lettura e scrittura di file di testo
• Gestione delle eccezioni
• Esempi di librerie python specifiche per la programmazione in ambito biomedico e della bioingegneria

Linguaggi di scripting e ambienti di sviluppo e condivisione codice (1 CFU):
- R, istruzioni da finestra di comando e altri
- Servizi di hosting per progetti software: Github

Gestione dei processi con Nextflow ed esempi di utilizzo di pipeline disponibili su Nf-core (0.5 CFU)

Il corso è organizzato con laboratori e attività progettuali che consentono allo studente una migliore comprensione sia delle problematiche che delle soluzioni software implementate.

Metodi didattici

Il corso sarà erogato in presenza. Se tuttavia ci saranno delle emergenze da parte del docente o esigenze particolari da parte della classe la modalità di erogazione potrà essere anche in modalità ibrida, e comunque in linea con le direttive di ateneo.

Il corso è obbligatorio, ma la frequenza è facoltativa. L’insegnamento è erogato in italiano (?).
L’insegnamento avverrà attraverso lezioni frontali, esercitazioni pratiche, attività pratiche di laboratorio.
Le lezioni copriranno le basi teoriche dell'informatica in diversi scenari reali, quali il mondo biologico e le sue applicazioni in bioinformatica e bioingegneria, in particolare.

Verranno forniti strumenti di comunicazione tramite social media per condividere con i docenti e con gli studenti dubbi, domande e risposte.

Verifica dell'apprendimento

INFORMATICA
L'esame consiste, in una prova scritta in aula tramite PC con l'utilizzo della piattaforma di ateneo;

L’esame consiste in una prova al calcolatore mirata ad accertare sia le conoscenze dello studente sulla parte di programmazione (tramite la realizzazione di uno o più programmi in linguaggio Python che implementino la soluzione di problemi pratici), sia le capacità di gestire flussi di esecuzione su cluster.
La durata della prova scritta è di 2 ore e non prevede l'uso di materiale didattico da parte degli studenti.
La prova scritta prevede un voto massimo di 30 e lode.

HTA
Prova orale di circa 20 minuti

Risultati attesi

Lo studente acquisirà:

- Capacità di programmare nei linguaggi studiati durante il corso
- Conoscenza delle librerie python specifiche per la programmazione in ambito biomedico e della bioingegneria
- Conoscenza degli ambienti per lo sviluppo e la condivisione del codice
- Conoscenza ed esperienza di implementazione e gestione dei processi paralleli su cloud e cluster e conoscenza in particolare della gestione dei processi con Nextflow


Il corso fornirà allo studente sia competenze teoriche che pratiche, tramite l’esperienza della progettazione, da sfruttare in applicazioni generali, anche al di fuori dell'ambito medico.