Corso di laurea: Computer Science - Informatica
A.A. 2020/2021
Conoscenza e capacità di comprensione
Il laureato magistrale in Informatica acquisirà una conoscenza approfondita delle basi scientifico-metodologiche dell'Informatica, delle sue principali aree e dei suoi domini di applicazione. Il corso di laurea magistrale consente allo studente di approfondire e comprendere specifiche aree dell'Informatica all'interno delle quali lo studente acquisirà quelle capacità che lo metteranno in grado di identificare soluzioni innovative a problemi complessi, nonché di tenersi al passo con la continua evoluzione degli strumenti teorici, metodologici e applicativi che caratterizza il campo dell’Informatica. La verifica delle conoscenze e della capacità di comprensione avviene attraverso prove in itinere, prove finali (esami) consistenti, a seconda delle caratteristiche del corso in elaborati scritti, colloqui orali, presentazioni di progetti. Diversi corsi prevedono anche verifiche pratiche dei risultati delle attività di laboratorio di carattere individuale o attività di progettazione, tipicamente da svolgere in gruppo, in analogia con quanto si può presentare in situazioni lavorative reali.Capacità di applicare conoscenza e comprensione
Il laureato magistrale in Informatica acquisirà capacità manageriali nell'organizzazione del lavoro, anche di gruppo, nella pianificazione delle competenze e del tempo, nell'adattamento a nuove situazioni ed a contesti multidisciplinari. Il percorso formativo mette in grado il laureato di applicare la conoscenza acquisita e le capacità di comprensione al fine di risolvere problemi, anche posti da esperti, in generale progettando e realizzando appositi sistemi informatici. Corsi con contenuti progettuali permettono di verificare la capacità di applicare conoscenza e comprensione su tematiche tipicamente riflettenti situazioni tipiche di ambienti di sviluppo informatico.Autonomia di giudizio
Dall'integrazione di conoscenze di frontiera sia teoriche che metodologiche in differenti aree
dell'informatica, il laureato svilupperà un atteggiamento deduttivo e critico che lo renderà capace,
anche in presenza di informazioni incomplete o parziali, di formulare giudizi autonomi e valutazioni a medio o lungo termine sulla soluzione di problemi di natura informatica complessi, sull'efficienza, la sicurezza, la validità e la pervasività sociale ed economica di tecnologie informatiche innovative. Al termine del percorso formativo il laureato avrà acquisito capacità di aggiornamento continuo delle proprie conoscenze per poter affrontare sempre nuove problematiche e mantenersi al passo con l'evoluzione scientifica.
Lo sviluppo della capacità critica di giudizio degli studenti avviene durante le lezioni e le esercitazioni, nell'ambito delle attività di laboratorio ed, in particolar modo, durante il periodo di tesi.
La verifica della capacità di giudizio avviene attraverso le prove d'esame, anche in itinere, e la valutazione della documentazione prodotta a corredo delle attività di laboratorio e della prova finale. Nella valutazione della prova finale, consistente nella redazione e presentazione di un lavoro di tesi originale su contenuti teorici o progettuali e di sviluppo, particolare attenzione viene rivolta a quanto lo studente abbia portato un contributo autonomo alla soluzione, anche e soprattutto qualora il lavoro si sia svolto all’interno di un gruppo comprendente personale senior.
Abilità comunicative
Il titolo finale sarà conferito agli studenti che avranno acquisito la capacità di presentare, in maniera
sia orale che scritta, con chiarezza e senza ambiguità, materiale e argomenti scientifici avanzati tanto ad interlocutori specialisti che a non specialisti.
Lo sviluppo delle abilità comunicative avviene nell'arco di tutto il corso di studio: in occasione di colloqui fra lo studente e i docenti, nelle attività di laboratorio di gruppo, durante le attività seminariali svolte nell'ambito di insegnamenti curriculari e dell'attività formativa complementare, nonché durante l'attività relativa alla prova finale.
La verifica di tali abilità avviene attraverso la valutazione di ciò che viene espresso dagli studenti in
forma orale o scritta sia durante le prove intermedie e la prova d'esame dei singoli insegnamenti sia
in occasione delle attività di laboratorio, dell'attività formativa complementare e della prova finale.
Capacità di apprendimento
Il percorso formativo ha fra gli altri l'obiettivo di sviluppare le capacità di approfondimento degli aspetti metodologici e tecnologici delle discipline informatiche, in modo che il laureato:
- comprenda l'evoluzione tecnologica e sia in grado di adeguarsi al progredire delle discipline informatiche;
- sia in grado di affrontare cicli di studio successivi nell'ambito delle discipline informatiche, anche finalizzati allo sviluppo di attività di ricerca;
- possa proseguire il proprio percorso formativo anche in autonomia, grazie alla capacità di consultare efficacemente documentazione di tipo scientifico e tecnologico.
Lo sviluppo delle capacità di apprendimento avviene nell'arco di tutto il corso di studio: tutte le attività previste (lezioni, esercitazioni, attività di laboratorio da soli o in gruppo, tirocinio formativo)
concorrono al progressivo aumento delle capacità di apprendimento.
Esempi di pratiche che favoriscono queste capacità sono: la proposta di esercizi di difficoltà crescente durante il corso; la predisposizione di spazi e tempi per permettere agli studenti di rivolgersi ai docenti e ai tutori assegnati per approfondire i punti in cui incontrano difficoltà; la somministrazione di prove in itinere che permettono agli studenti di identificare aree problematiche del loro apprendimento.
La verifica a sua volta avviene in tutte le fasi del corso di studio, iniziando dalle prove d'esame (concepite in modo da evidenziare l'autonomia nell'organizzare il proprio apprendimento), passando
dalle verifiche delle attività di laboratorio e del tirocinio formativo per concludersi in occasione della prova finale.
Requisiti di ammissione
Per l'accesso alla laurea magistrale in Informatica è richiesto il possesso della laurea o del diploma universitario di durata triennale, ovvero di altro titolo di studio conseguito all'estero, ritenuto idoneo.
È richiesta la conoscenza degli aspetti fondamentali dell'informatica relativi alle architetture di elaboratori, agli algoritmi e strutture dati, ai linguaggi di programmazione, alle basi di dati, alle reti di elaboratori, ai sistemi operativi, nonché dei necessari strumenti matematici a corredo.
In ogni caso per accedere alla laurea magistrale è necessario che i laureati abbiano acquisito almeno 90 crediti formativi universitari nell'insieme dei seguenti settori:
• INF/01
• ING-INF/01, ING-INF/02, ING-INF/03, ING-INF/04, ING-INF/05
• FIS/01, FIS/02, FIS/07
• MAT/01, MAT/02, MAT/03, MAT/05, MAT/06, MAT/07, MAT/08, MAT/09
È richiesta, inoltre, una buona padronanza, in forma scritta e parlata, della lingua inglese, di livello B2 o superiore.
Le modalità di verifica del possesso dei requisiti curriculari e della preparazione personale dello studente sono definite nel Regolamento didattico e rese note sul il sito del Consiglio di Area Didattica. Per gli studenti stranieri vengono definite specifiche modalità di verifica della preparazione personale, anch’esse rese note tramite il sto del Consiglio di Area Didattica.
Gli studenti che non sono in possesso di tali requisiti curriculari possono iscriversi a corsi singoli, come previsto dal Manifesto degli studi di Ateneo, e sostenere i relativi esami prima dell’iscrizione alla laurea magistrale. Potranno immatricolarsi al corso di laurea magistrale anche gli studenti che non abbiano ancora conseguito la laurea, fermo restando l’obbligo di conseguirla entro la data indicata nel manifesto degli Studi del relativo Anno Accademico.
Prova finale
La prova finale consiste nella discussione di una tesi di laurea magistrale, costituita da un documento scritto, eventualmente in lingua inglese, che presenta i risultati di uno studio originale condotto su un problema di natura applicativa, sperimentale o di ricerca.
La preparazione della tesi si svolge sotto la direzione di un relatore (che può essere un docente del corso di laurea, o di altri corsi di laurea italiani o stranieri o di un ente di ricerca italiano o straniero) e si svolge di norma nel secondo anno del corso, occupandone circa la metà del tempo complessivo.Orientamento in ingresso
Il SOrT è il servizio di Orientamento integrato della Sapienza. Il servizio ha una sede centrale nella Città universitaria e sportelli dislocati presso le Facoltà. Nei SOrT gli studenti possono trovare informazioni più specifiche rispetto alle Facoltà e ai corsi di laurea e un supporto per orientarsi nelle scelte. L'ufficio centrale e i docenti delegati di Facoltà coordinano i progetti di orientamento in ingresso e di tutorato, curano i rapporti con le scuole medie superiori e con gli insegnanti referenti dell'orientamento in uscita, propongono azioni di sostegno nella delicata fase di transizione dalla scuola all'università e supporto agli studenti in corso, forniscono informazioni sull'offerta didattica e sulle procedure amministrative di accesso ai corsi.
Iniziative e progetti di orientamento:
1. "Porte aperte alla Sapienza".
L'iniziativa, che si tiene ogni anno presso la Città Universitaria, è rivolta prevalentemente agli studenti delle ultime classi delle Scuole Secondarie Superiori, ai docenti, ai genitori ed agli operatori del settore; essa costituisce l'occasione per conoscere la Sapienza, la sua offerta didattica, i luoghi di studio, di cultura e di ritrovo ed i molteplici servizi disponibili per gli studenti (biblioteche, musei, concerti, conferenze, ecc.); sostiene il processo d'inserimento universitario che coinvolge ed interessa tutti coloro che intendono iscriversi all'Università. Oltre alle informazioni sulla didattica, durante gli incontri, è possibile ottenere indicazioni sull'iter amministrativo sia di carattere generale sia, più specificatamente, sulle procedure di immatricolazione ai vari corsi di studio e acquisire copia dei bandi per la partecipazione alle prove di accesso ai corsi. Contemporaneamente, presso l'Aula Magna, vengono svolte conferenze finalizzate alla presentazione dell'offerta formativa di tutte le Facoltà dell'Ateneo.
2. Progetto "Un Ponte tra Scuola e Università"
Il Progetto "Un Ponte tra scuola e Università" nasce con l'obiettivo di favorire una migliore transizione degli studenti in uscita dagli Istituti Superiori al mondo universitario e facilitarne il successivo inserimento nella nuova realtà.
Il progetto si articola in tre iniziative:
a) Professione Orientamento - Seminari dedicati ai docenti degli Istituti Superiori referenti per l'orientamento, per favorire lo scambio di informazioni tra la Scuola Secondaria e la Sapienza;
b) La Sapienza si presenta - Incontri di presentazione delle Facoltà e lezioni-tipo realizzati dai docenti della Sapienza e rivolti agli studenti delle Scuole Secondarie su argomenti inerenti ciascuna area didattica;
c) La Sapienza degli studenti – Interventi nelle Scuole finalizzati alla presentazione dei servizi offerti dalla Sapienza e racconto dell'esperienza universitaria da parte di studenti "mentore", studenti senior appositamente formati.
3. Progetto "Conosci te stesso"
Consiste nella compilazione, da parte degli studenti, di un questionario di autovalutazione per accompagnare in modo efficace il processo decisionale degli stessi studenti nella scelta del loro percorso formativo.
4. Progetto "Orientamento in rete"
Si tratta di un progetto di orientamento e di riallineamento sui saperi minimi. L'iniziativa prevede lo svolgimento di un corso di preparazione, caratterizzato una prima fase con formazione a distanza ed una seconda fase realizzata attraverso corsi intensivi in presenza, per l'accesso alle Facoltà a numero programmato dell'area biomedica, sanitaria e psicologica, destinato agli studenti degli ultimi anni di scuola secondaria di secondo grado.
5. Esame di inglese
Il progetto prevede la possibilità di sostenere presso la Sapienza, da parte degli studenti dell'ultimo anno delle Scuole Superiori del Lazio, l'esame di inglese per il conseguimento di crediti in caso di successiva iscrizione a questo Ateneo.
6. Percorsi per le competenze trasversali e per l'orientamento - PCTO (ex alternanza scuola-lavoro).
Si tratta di una modalità didattica che, attraverso l'esperienza pratica, aiuta gli studenti delle Scuole Superiori a consolidare le conoscenze acquisite a scuola e a testare sul campo le proprie attitudini mentre arricchisce la formazione e orienta il percorso di studio.
7. Tutorato in ingresso
Sono previste attività di tutorato destinate agli studenti e alle studentesse dei cinque anni delle Scuole Superiori.
Il Corso di Studio in breve
Il corso di laurea magistrale in Computer Science, erogato in lingua inglese, offre la possibilità di conseguire una preparazione ampia e generale in importanti settori dell'informatica moderna, quali l'algoritmica, la matematica discreta, l'informatica teorica, la progettazione del software, l'intelligenza artificiale, la multimedialità, le reti e la sicurezza. Il percorso formativo è articolato in curricula: 1. Software Engineering 2. Multimedia Computing and Interaction 3. Information Science and Applications 4. Networks and Security Lo studente può selezionare in ciascun curriculum nove insegnamenti appartenenti a due gruppi. Il primo gruppo contiene insegnamenti caratterizzanti il curriculum, mentre il secondo contiene insegnamenti di natura fondazionale e/o trasversale ai vari curricula. Per molti insegnamenti è prevista attività progettuale svolta in laboratorio, finalizzata allo sviluppo e al testing di soluzioni avanzate per problemi di complessità paragonabile a quella che si incontra nel mondo reale. Nell'ambito del corso di laurea magistrale è previsto che lo studente segua, oltre ai tradizionali insegnamenti, anche una delle attività formative complementari da 6 CFU proposte annualmente dal CAD. Esse mirano a creare competenze trasversali utili a completare il percorso formativo dello studente e a favorire il suo inserimento nel mondo del lavoro. Il regolamento didattico del corso di laurea definirà, nel rispetto dei limiti normativi, la quota dell'impegno orario complessivo a disposizione dello studente per lo studio personale o per altre attività formative di tipo individuale. Il corso di laurea è in possesso del Bollino GRIN 2018, rilasciato dalla comunità dei docenti universitari italiani nel settore INF/01, che certifica la qualità della formazione informatica di livello universitario.
NG1 Requisiti di accesso
NG2 Verifica dei requisiti di accesso
NG3 Passaggi, trasferimenti, abbreviazioni di corso, riconoscimento crediti
NG4 Piani di completamento e piani di studio individuali
NG5 Modalità didattiche
NG6 Modalità di frequenza, propedeuticità, passaggio ad anni successivi
NG7 Regime a tempo parziale
NG8 Studenti fuori corso e validità dei crediti acquisiti
NG9 Tutorato
NG10 Percorsi di eccellenza
NG11 Prova finale
NG12 Applicazione dell'art. 6 del regolamento studenti (R.D. 4.6.1938, N. 1269)
NG1 Requisiti di accesso
Per l'accesso alla laurea magistrale in Informatica è richiesto il possesso della laurea o del diploma universitario di durata triennale, ovvero di altro titolo di studio conseguito all'estero, ritenuto idoneo.
È richiesta la conoscenza degli aspetti fondamentali dell'informatica relativi alle architetture di elaboratori, agli algoritmi e strutture dati, ai linguaggi di programmazione, alle basi di dati, alle reti di elaboratori, ai sistemi operativi, nonché dei necessari strumenti matematici.
Inogni caso per accedere alla laurea magistrale è necessario che i laureati abbiano acquisito almeno 90 crediti formativi universitari nell'insieme dei seguenti settori:
• INF/01
• ING-INF/01, ING-INF/02, ING-INF/03, ING-INF/04, ING-INF/05
• FIS/01, FIS/02, FIS/07
• MAT/01, MAT/02, MAT/03, MAT/05, MAT/06, MAT/07, MAT/08, MAT/09
Gli studenti che non sono in possesso di tali requisiti curriculari possono iscriversi a corsi singoli, come previsto dal Manifesto degli studi di Ateneo, e sostenere i relativi esami prima dell’iscrizione alla laurea magistrale.
Potranno immatricolarsi al corso di laurea magistrale anche gli studenti che non abbiano ancora conseguito la laurea, fermo restando l’obbligo di conseguirla entro la data indicata nel manifesto degli Studi del relativo anno accademico.
È richiesta, inoltre, una buona padronanza, in forma scritta e parlata, della lingua inglese, di livello B2 o superiore.
NG2 Verifica dei requisiti di accesso
Il possesso delle conoscenze sarà verificato da una apposita commissione nominata dal Consiglio di area didattica (CAD), che approverà automaticamente (o valutando eventuali affinità tra settori scientifico-disciplinari) l'ammissione alla laurea magistrale in Informatica degli studenti che abbiano acquisito almeno:
• 70 CFU nei settori INF/01 e/o ING/INF-05.
La commissione sottoporrà gli studenti non in possesso dei crediti sopra indicati a colloqui di verifica del possesso delle conoscenze richieste.
NG3 Passaggi, trasferimenti, abbreviazioni di corso, riconoscimento crediti
NG3.1 Passaggi e trasferimenti
Passaggio dai vecchi ordinamenti di area Informatica
A seguito della trasformazione ed istituzione del corso di laurea magistrale in Informatica ai sensi del D.M.270/04 è assicurato il rilascio del titolo di studio agli studenti già iscritti ai seguenti corsi di laurea della Sapienza:
¥ Specialistica in Informatica.
È garantita la facoltà per gli studenti iscritti al corso di studio sopra elencato di passare al corso di laurea magistrale in Informatica senza il pagamento delle spese di passaggio, ai sensi del comma 8 dell’art. 32 del manifesto degli studi di Ateneo. Le domande di passaggio sono valutate dal CAD, che in proposito:
• determina quali fra gli esami superati sono riconoscibili nel vigente ordinamento e le relative votazioni, in conformità con le regole deliberate in merito dal Consiglio di area didattica (CAD) e riportate sul sito web del corso di laurea;
• indica l’anno di corso al quale lo studente viene iscritto;
• stabilisce l’eventuale obbligo formativo aggiuntivo da assolvere;
• formula il piano di completamento per il conseguimento del titolo di studio
Tali richieste di passaggio al corso di laurea magistrale in Informatica devono essere presentate entro le scadenze e con le modalità specificate nel manifesto degli studi di Ateneo e possono essere accolte solo se l’anno di corso a cui lo studente viene ammesso è attivato.
Le domande di passaggio di studenti provenienti da altri corsi di laurea magistrale o specialistica della Sapienza e le domande di trasferimento di studenti provenienti da altre Università, da Accademie militari o da altri istituti militari d’istruzione superiore sono subordinate ad approvazione da parte del CAD che:
• valuta la possibilità di riconoscimento totale o parziale della carriera di studio fino a quel momento seguita, con la convalida di parte o di tutti gli esami sostenuti e degli eventuali crediti acquisiti, la relativa votazione; nel caso di passaggio fra corsi ex D.M. 270 della stessa classe vanno riconosciuti almeno il 50% dei crediti acquisiti in ciascun SSD (art. 3 comma 9 del D.M. delle classi di laurea magistrale);
• indica l’anno di corso al quale lo studente viene iscritto;
• stabilisce l’eventuale obbligo formativo aggiuntivo da assolvere;
• formula il piano di completamento per il conseguimento del titolo di studio.
Qualora lo studente, sulla base della carriera riconosciuta, possa essere ammesso ad un anno di corso successivo a tutti quelli attivati nel vigente ordinamento, è concessa allo stesso la facoltà di scelta tra l’iscrizione al corrispondente anno di corso del previgente ordinamento oppure all’anno di corso più avanzato in quel momento attivo dell’ordinamento vigente (articolo 33, comma 5 del regolamento didattico di Ateneo).
Le richieste di trasferimento al corso di laurea magistrale in Informatica devono essere presentate entro le scadenze e con le modalità specificate nel manifesto degli studi di Ateneo.
NG3.2 Abbreviazioni di corso
Chi è già in possesso del titolo di laurea quadriennale, quinquennale, specialistica acquisita secondo un ordinamento previgente, o di laurea magistrale acquisita secondo un ordinamento vigente e intenda conseguire un ulteriore titolo di studio può chiedere al CAD l’iscrizione ad un anno di corso successivo al primo.
Le domande sono valutate dal CAD, che in proposito:
• valuta la possibilità di riconoscimento totale o parziale della carriera di studio fino a quel momento seguita, con la convalida di parte o di tutti gli esami sostenuti, degli eventuali crediti acquisiti e della relativa votazione;
• indica l’anno di corso al quale lo studente viene iscritto;
• stabilisce l’eventuale obbligo formativo aggiuntivo da assolvere;
• formula il piano di completamento per il conseguimento del titolo di studio.
Qualora lo studente, sulla base della carriera riconosciuta, possa essere ammesso ad un anno di corso successivo a tutti quelli attivati nel vigente ordinamento, è concessa allo stesso la facoltà di scelta tra l’iscrizione al corrispondente anno di corso del previgente ordinamento oppure all’anno di corso più avanzato in quel momento attivo dell’ordinamento vigente (articolo 33, comma 5 del regolamento didattico di Ateneo).
Uno studente non può immatricolarsi o iscriversi ad un corso di laurea magistrale appartenente alla medesima classe nella quale ha già conseguito il diploma di laurea magistrale.
Le richieste devono essere presentate entro le scadenze e con le modalità specificate nel manifesto degli studi di Ateneo.
NG3.3 Criteri per il riconoscimento crediti
Possono essere riconosciuti tutti i crediti formativi universitari (CFU) già acquisiti se relativi ad insegnamenti che abbiano contenuti, documentati attraverso i programmi degli insegnamenti, coerenti con uno dei percorsi formativi previsti dal corso di laurea magistrale. Per i passaggi da corsi di studio della stessa classe è garantito il riconoscimento di un minimo del 50% dei crediti di ciascun settore scientifico disciplinare.
Il CAD può deliberare l’equivalenza tra Settori scientifico disciplinari (SSD) per l’attribuzione dei CFU sulla base del contenuto degli insegnamenti ed in accordo con l’ordinamento del corso di laurea magistrale.
I CFU già acquisiti relativi agli insegnamenti per i quali, anche con diversa denominazione, esista una manifesta equivalenza di contenuto con gli insegnamenti offerti dal corso di laurea magistrale possono essere riconosciuti come relativi agli insegnamenti con le denominazioni proprie del corso di laurea magistrale a cui si chiede l’iscrizione. In questo caso, il CAD delibera il riconoscimento con le seguenti modalità:
• se il numero di CFU corrispondenti all'insegnamento di cui si chiede il riconoscimento coincide con quello dell'insegnamento per cui viene esso riconosciuto, l’attribuzione avviene direttamente;
• se i CFU corrispondenti all'insegnamento di cui si chiede il riconoscimento sono in numero diverso rispetto all'insegnamento per cui esso viene riconosciuto, il CAD esaminerà il curriculum dello studente ed attribuirà i crediti eventualmente dopo colloqui integrativi; Il CAD può deliberare specifiche relazioni di corrispondenza fra gruppi di insegnamenti del corso di laurea specialistica in Informatica ex D.M. 509 della Sapienza e gruppi di insegnamenti del corso di laurea magistrale in Informatica ex D.M. 270, al fine di semplificare il passaggio degli studenti al nuovo ordinamento. L’elenco delle corrispondenze è disponibile presso la Segreteria didattica e sul sito web del corso di laurea.
Il CAD può riconoscere come crediti le conoscenze e abilità professionali certificate ai sensi della normativa vigente in materia, nonché altre conoscenze e abilità maturate in attività formative di livello post-secondario alla cui progettazione e realizzazione l’Università abbia concorso. Tali crediti vanno a valere sui 6 CFU relativi all’attività complementare.
Le attività già riconosciute ai fini dell’attribuzione di CFU nell’ambito di corso di laurea non possono essere nuovamente riconosciute nell’ambito del corso di laurea magistrale.
NG4 Piani di completamento e piani di studio individuali
Ogni studente deve ottenere l’approvazione ufficiale del proprio completo percorso formativo da parte del CAD prima di poter verbalizzare esami relativi ad insegnamenti che non siano obbligatori per tutti gli studenti, pena l’annullamento dei relativi verbali d’esame.
Lo studente può ottenere tale approvazione con due procedimenti diversi:
1. aderendo ad uno dei piani di completamento del percorso formativo predisposti annualmente dal CAD; vi è un piano di completamento per ciascuno dei curricula descritti nel paragrafo OF5.3;
2. presentando un piano di studio individuale. In entrambi i casi lo studente deve sottomettere la sua proposta esclusivamente on-line per mezzo dell’apposita procedura presente nel sistema informativo di ateneo Infostud.
Le date di presentazione e relative modalità sono descritte in dettaglio nella voce “Piani di completamento e piani di studio” del sito www.studiareinformatica.uniroma1.it
NG4.1 Piani di completamento
L’adesione a un piano di completamento comporta:
1. la selezione di uno dei quattro curricula;
2. la selezione di 9 insegnamenti all’interno di due gruppi di insegnamenti curriculari, secondo le indicazioni di ciascun curriculum.
3. la possibilità di scegliere due insegnamenti integrativi fra quelli che vengono automaticamente presentati dalla procedura;
4. la possibilità di scegliere uno o più insegnamenti relativi ai 12 CFU a scelta dello studente. Questi ultimi possono essere scelti fra tutti quelli presenti nell’ambito dell’intera offerta formativa della Sapienza.
Il piano di completamento, una volta compilato, viene sottomesso dallo studente per la verifica che gli insegnamenti scelti al punto 4 siano congruenti col percorso formativo. In caso affermativo, il piano di completamento viene approvato dal CAD e diviene parte integrante della carriera dello studente. In caso negativo, lo studente viene invitato a modificare l’elenco degli insegnamenti relativi ai 12 CFU a scelta.
A partire dal giorno successivo a quello di approvazione da parte del CAD lo studente è autorizzato a verbalizzare, oltre agli esami obbligatori per tutti gli studenti, anche quelli relativi a tutti gli insegnamenti non obbligatori elencati nel piano di completamento cui ha aderito.
NG4.2 Piani di studio individuali
Qualora lo studente non intenda aderire ad alcuno dei piani di completamento proposti deve presentare un piano di studio individuale.
Per sottomettere un piano di studio individuale lo studente deve:
1. scegliere nove insegnamenti fra quelli indicati come curriculari in almeno uno dei quattro curricula;
2. scegliere due insegnamenti integrativi fra quelli che vengono automaticamente presentati dalla procedura;
3. scegliere uno o più insegnamenti relativi ai 12 CFU a scelta dello studente. Questi ultimi possono essere scelti fra tutti quelli presenti nell’ambito dell’intera offerta formativa della Sapienza.
Il piano di studio individuale, una volta compilato, viene sottomesso dallo studente per la verifica che le scelte operate costituiscano un valido percorso formativo. In caso affermativo, il piano di studio individuale viene approvato dal CAD e diviene parte integrante della carriera dello studente. In caso negativo, lo studente viene invitato a modificarlo. La validità e congruenza del curriculum sarà valutata sulla base della sua vicinanza ad almeno uno dei quattro curricula proposti.
A partire dal giorno successivo a quello di approvazione da parte del CAD lo studente è autorizzato a verbalizzare, oltre agli esami obbligatori per tutti gli studenti, anche quelli relativi a tutti gli insegnamenti non obbligatori elencati nel suo piano di studio individuale.
NG4.3 Modifica dei piani di completamento e dei piani di studio individuali
Lo studente che abbia già aderito ad un piano di completamento può, in un successivo anno accademico, aderire ad un differente piano di completamento oppure proporre un piano di studio individuale. Parimenti, lo studente al quale sia già stato approvato un piano di studio individuale può, in un successivo anno accademico, optare per l’adesione ad un piano di completamento oppure proporre un differente piano di studio individuale.
In ogni modo, gli esami già verbalizzati non possono essere sostituiti.
NG5 Modalità didattiche
Le attività didattiche sono di tipo convenzionale e distribuite su base semestrale.
Gli insegnamenti sono impartiti attraverso lezioni ed esercitazioni in aula e attività in laboratorio, organizzando l’orario delle attività in modo da consentire allo studente un congruo tempo da dedicare allo studio personale.
La durata nominale del corso di laurea magistrale è di 4 semestri, pari a due anni.
NG5.1 Crediti formativi universitari
Il credito formativo universitario (CFU) misura la quantità di lavoro svolto da uno studente per raggiungere un obiettivo formativo. I CFU sono acquisiti dallo studente con il superamento degli esami o con l’ottenimento delle idoneità, ove previste.
Il sistema di crediti adottato nelle università italiane ed europee prevede che ad un CFU corrispondano 25 ore di impegno da parte dello studente, distribuite tra le attività formative collettive istituzionalmente previste (ad es. lezioni, esercitazioni, attività di laboratorio) e lo studio individuale.
Nel corso di laurea magistrale in Informatica, in accordo con l’articolo 23 del regolamento didattico di Ateneo, un CFU corrisponde a un numero di ore di lezione variabile fra i seguenti intervalli:
• un cfu di lezione: da 6 a 10 ore
• un cfu di esercitazione: da 9 a 12 ore
• un cfu di laboratorio: da 20 a 25 ore
Per ogni singolo corso il CAD determina il numero di ore assegnato, in accordo con tal intervalli.
Le schede individuali di ciascun insegnamento, consultabili sul sito web del corso di laurea magistrale, riportano la ripartizione dei CFU e delle ore di insegnamento nelle diverse attività, insieme ai prerequisiti, agli obiettivi formativi e ai programmi di massima.
Il carico di lavoro totale per il conseguimento della laurea magistrale è di 120 CFU.
Nell’ambito del corso di laurea magistrale in Informatica la quota dell'impegno orario complessivo riservata a disposizione dello studente per lo studio personale o per altre attività formative di tipo individuale è almeno il 50% dell’impegno orario complessivo.
NG5.2 Calendario didattico
Il calendario didattico è organizzato in due periodi di didattica e tre periodi di esami, secondo il seguente schema approssimativo:
• primo periodo di didattica: da fine settembre a fine dicembre;
• secondo periodo di didattica: da fine febbraio a inizio giugno;
• primo periodo d’esami: da inizio gennaio a fine febbraio;
• secondo periodo d’esami: da inizio giugno a fine luglio;
• terzo periodo d’esami: settembre. • periodo straordinario di esami: aprile e novembre (solo per gli studenti che risultano fuori corso o ripetenti o lavoratori per la segreteria studenti, oppure per gli studenti in corso che intendano laurearsi nelle successive sessioni di laurea (rispettivamente, gennaio e luglio), e che lo richiedano dietro certificazione del loro status di laureandi).
Per ogni insegnamento sono previsti:
• due appelli d’esame nella sessione immediatamente successiva al termine del corso (gennaio-febbraio per gli insegnamenti del primo periodo di didattica, giugno-luglio per gli insegnamenti del secondo periodo di didattica).
• tre appelli nelle sessioni rimanenti, di cui uno a settembre e due nell'altra sessione.
• Due ulteriori appelli saranno riservati a novembre ed aprile agli studenti fuoricorso, ripetenti e lavoratori, secondo le modalità e condizioni riportate sul sito web del corso di laurea.
Le date di inizio e fine dei periodi di didattica e degli appelli d’esame sono consultabili sul sito web del corso di laurea.
NG5.3 Prove d’esame
La valutazione del profitto individuale dello studente, per ciascun insegnamento, viene espressa mediante l’attribuzione di un voto in trentesimi, nel qual caso il voto minimo per il superamento dell'esame è 18/30, oppure di una idoneità.
Alla valutazione finale possono concorrere i seguenti elementi:
• un esame scritto, generalmente distribuito su più prove scritte da svolgere durante ed alla fine del corso;
• un esame orale;
• il lavoro svolto in autonomia dallo studente.
NG6 Modalità di frequenza, propedeuticità, passaggio ad anni successivi
Frequentare assiduamente le lezioni degli insegnamenti è altamente consigliato ma non è obbligatorio.
Nell’ambito del corso di laurea magistrale in Informatica non esistono propedeuticità obbligatorie; eventuali prerequisiti in termini di conoscenze sono specificati insegnamento per insegnamento. La collocazione che gli insegnamenti hanno all’interno del percorso formativo è una chiara indicazione dell’ordine ottimale col quale seguirli e sostenerne gli esami. In particolare, si raccomanda di:
• sostenere, nell’ambito di uno stesso anno di corso, gli esami degli insegnamenti del secondo periodo di didattica soltanto dopo aver superato tutti quelli del primo periodo di didattica;
• sostenere gli esami degli insegnamenti del secondo anno di corso soltanto dopo aver superato tutti quelli del primo anno di corso
Per il corso di laurea magistrale in Informatica non esistono sbarramenti per l’iscrizione al secondo anno.
NG7 Regime a tempo parziale
I termini e le modalità per la richiesta del regime a tempo parziale nonché le relative norme sono stabilite nell’articolo 13 del manifesto di Ateneo e sono consultabili sul sito web della Sapienza.
NG8 Studenti fuori corso e validità dei crediti acquisiti
Ai sensi dell’art. 32 del manifesto degli studi di Ateneo lo studente si considera fuori corso quando, avendo frequentato tutte le attività formative previste dal presente regolamento didattico, non abbia superato tutti gli esami e non abbia acquisito il numero di crediti necessario al conseguimento del titolo entro 2 anni.
Ai sensi dell’art. 33 del manifesto degli studi di Ateneo:
• lo studente a tempo pieno che sia fuori corso deve superare le prove mancanti al completamento della propria carriera universitaria entro un termine pari al doppio della durata normale del Corso di studio,
• lo studente a tempo parziale che sia fuori corso deve superare le prove mancanti al completamento della propria carriera universitaria entro un termine pari al doppio della durata concordata nel regime a tempo parziale.
Il CAD stabilisce che, nel caso non siano rispettati i termini di cui sopra, la validità dei crediti acquisiti sarà valutata caso per caso, e potrà essere data per acquisita solo limitatamente ai corsi di base. Per il reintegro gli studenti dovranno comunque presentare opportuna domanda alla Segreteria amministrativa studenti, nei tempi e con le modalità previste nel manifesto degli studi di Ateneo.
NG9 Tutorato
Gli studenti del corso di laurea magistrale in Informatica possono usufruire dell'attività di tutorato svolta dai docenti indicati dal CAD. I docenti disponibili come tutor e le modalità di tutorato verranno pubblicizzate per ciascun anno accademico mediante affissione presso la Segreteria didattica e sul sito web del corso di laurea magistrale. L’attività di tutorato è articolata in vari servizi a carattere individuale e collettivo ed è disciplinata da uno specifico regolamento consultabile sul sito web del corso di laurea.
NG10 Percorsi di eccellenza
È istituito il percorso di eccellenza per la laurea magistrale in Informatica, cui si può partecipare al momento dell’iscrizione al secondo anno di corso.
I termini e le modalità per la richiesta di partecipazione al percorso di eccellenza sono indicati sul sito web del corso di laurea, dove si può anche prendere visione del bando di concorso e scaricare il facsimile della domanda di ammissione.
NG11 Prova finale
Per essere ammesso alla prova finale lo studente deve aver conseguito tutti i CFU previsti dall’ordinamento didattico per le attività diverse dalla prova finale e deve aver adempiuto alle formalità amministrative previste dal Regolamento didattico di Ateneo.
La prova finale consiste nella discussione di una tesi di laurea magistrale, costituita da un documento scritto, preferibilmente in lingua inglese, che presenta i risultati di uno studio originale condotto su un problema di natura applicativa, sperimentale o di ricerca.
L’elaborato finale verrà sottoposto a verifica di originalità. In caso di esito negativo di tale verifica, lo studente non sarà ammesso alla prova finale.
La preparazione della tesi si svolge sotto la direzione di un relatore (che può essere un docente del corso di laurea magistrale, o di altri corsi di studio italiani o stranieri o di un ente di ricerca italiano o straniero) e si svolge di norma nel secondo anno del corso, occupandone circa la metà del tempo complessivo.
La votazione finale si basa sulla valutazione del curriculum degli studi, della tesi e della prova finale, e su ulteriori elementi rivolti ad incentivare il superamento degli esami nei tempi stabiliti dall’ordinamento didattico. La Commissione di laurea esprime la votazione in centodecimi e può, all’unanimità, concedere al candidato il massimo dei voti con lode.
NG12 Applicazione dell’art. 6 del regolamento studenti (R.D. 4.6.1938, N. 1269)
Gli studenti iscritti al corso di laurea magistrale in Informatica, onde arricchire il proprio curriculum degli studi, possono secondo quanto previsto dall’Art. 6 del R.D. N.1239 del 4/6/1938, mediante domanda da indirizzare al CAD e da consegnare alla Segreteria didattica entro il mese di gennaio di ogni anno, frequentare due corsi e sostenere ogni anno due esami di insegnamenti di altre Facoltà.
Visto il significato scientifico e culturale di tale norma, il CAD ha deliberato che tale richiesta possa essere avanzata soltanto da studenti che abbiano ottenuto almeno 36 crediti del corso di laurea magistrale in Informatica.
Lo studente espliciterà le proprie scelte al momento della presentazione,
tramite INFOSTUD, del piano di completamento o del piano di studio individuale,
secondo quanto stabilito dal regolamento didattico del corso di studio.
Multimedia Computing and Interaction
Primo anno
Primo semestre
Insegnamento
|
CFU
|
SSD
|
Ore Lezione
|
Ore Eserc.
|
Ore Lab
|
Ore Studio
|
Attività
|
Lingua
|
10589621 -
ADVANCED MACHINE LEARNING
|
Erogato in altro semestre o anno
|
1041792 -
BIOMETRIC SYSTEMS
(obiettivi)
Obiettivi generali: Essere in grado di progettare e valutare un sistema biometrico o multibiometrico
Obiettivi specifici: Conoscere le caratteristiche e le tecniche fondamentali relative alle biometrie fisiche come volto, impronte, iride, ecc., e comportamentali come camminata, firma (caratteristiche dinamiche), stile di battitura, ecc. Conoscere le caratteristiche dell’architettura di un sistema biometrico: sistemi unimodali e multimodali. Essere in grado di valutare le prestazioni di un sistema biometrico in base alla modalità adottata: verifica, identificazione. Essere in grado di valutare/garantire la robustezza di un sistema biometrico rispetto ad attacchi di spoofing (furto di identità).
Conoscenza e comprensione: Fondamenti teorici della progettazione di un sistema biometrico e delle tecniche di estrazione/confronto delle caratteristiche specifiche per i principali tratti biometrici.
Applicare conoscenza e comprensione: Essere in grado di progettare ed implementare una applicazione di riconoscimento biometrico per almeno uno tratto biometrico.
Capacità critiche e di giudizio: Essere in grado di valutare le prestazioni e la robustezza agli attacchi di un sistema biometrico. Essere in grado di trasferire tecniche e protocolli in contesti diversi.
Capacità comunicative: Essere in grado di comunicare/condividere i requisiti di un sistema biometrico, le modalità operative più adatte ad una certa applicazione, e le misure di performance del sistema
Capacità di apprendimento: Essere in grado di approfondire autonomamente gli argomenti presentati nel corso, relativamente a tecniche e metodi specifici/complessi o a tratti biometrici non presenti tra gli argomenti.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
1047618 -
COMPUTER VISION
|
Erogato in altro semestre o anno
|
1047628 -
FUNDAMENTALS OF COMPUTER GRAPHICS
|
Erogato in altro semestre o anno
|
1047630 -
HUMAN COMPUTER INTERACTION ON THE WEB
|
Erogato in altro semestre o anno
|
1047635 -
MACHINE LEARNING
(obiettivi)
Obiettivi generali Il corso introduce le motivazioni, paradigm e applicazioni dei sistemi di apprendimento automatic. Si tratta di un corso introduttivo. Obiettivi specifici Apprendimento supervisionato: alberi di decisione, apprendimento di istanze, naïve Bayes, support vector machine, neural networks, deep learning, ensamble methods. Apprendimento non supervisionato: clustering, association rules. Apprendimento semi-supervisionato: Reinforcement learning. Genetic algorithms e genetic programming. Problemi generali: underfitting, overfitting, model selection, error analysis.
Conoscenza e comprensione: Gli studenti impareranno quali algoritmi si adattano meglio a quali categorie di problemi, come descrivere il dominio dell'applicazione, come regolare parametri e iperparametri del modello, come testare le prestazioni.
Applicazione di conoscenza e comprensione: Gli studenti faranno esperimenti utilizzando toolkits di ML quali Weka, Tensor Flow e scikit-lear.
Autonomia di giudizio: Gli studenti saranno in grado di comprendere le categorie di problemi che possono essere risolti in modo efficiente con algoritmi di apprendimento automatico, a quali condizioni.
Abilità comunicative: Queste saranno valutate durante gli esami scritti e la reportistica del progetto.
Capacità di apprendimento successivo: Gli studenti riceveranno una solida base per approfondire ulteriormente i metodi più avanzati, come il deep learning, l'apprendimento probabilistico ed altri.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
1047639 -
MULTIMODAL INTERACTION
|
Erogato in altro semestre o anno
|
1038141 -
NATURAL LANGUAGE PROCESSING
|
Erogato in altro semestre o anno
|
10593236 -
DEEP LEARNING AND APPLIED ARTIFICIAL INTELLIGENCE
|
Erogato in altro semestre o anno
|
|
1041764 -
BIG DATA COMPUTING
|
Erogato in altro semestre o anno
|
1047617 -
COMPUTER NETWORK PERFORMANCE
(obiettivi)
Obiettivi generali: Lo scopo del corso è lo studio di metodi per stimare le prestazioni dei sistemi di rete esistenti e dimensionare nuovi sistemi ad alte prestazioni.
Obiettivi specifici: Analisi di processi stocastici discreti e continui, reti di code, metodi di misurazione delle reti tramite network tomography, analisi delle prestazioni di sistemi wired e wireless.
Conoscenza e comprensione: Il corso permettera` di sviluppare la capacita` di caratterizzare i problemi prestazionali nelle reti di calcolatori e individuare le criticita` di questi sistemi. Applicare conoscenza e comprensione: Attraverso il corso lo studente imparera` a riconoscere i problemi prestazionali e a progettare le relative soluzioni, attraverso la modellazione analitica e la soluzione di relativi problemi di ottimizzazione.
Capacità critiche e di giudizio: Il corso mettera` lo studente in condizione di saper scegliere, dato un problema, la migliore strategia risolutiva, fermo restando la comprensione di vincoli esistenti in termini di dimensionamento e costi delle soluzioni possibili.
Capacità comunicative: Lo studente sara` in grado di motivare le proprie scelte nella proposta di uno specifico approccio risolutivo di un problema relativo alle prestazioni di una rete di calcolatori, e fornire una analisi comparativa dell’approccio scelto con altri approcci possibili. Capacità di apprendimento: Lo studente sviluppera` capacita` di studio autonome e di comprensione e valutazione critica di nuove metodologie, tecnologie e modelli di sviluppo per sistemi di rete ad alte prestazioni.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
1047619 -
CONCURRENT SYSTEMS
|
Erogato in altro semestre o anno
|
1047624 -
DISTRIBUTED SYSTEMS
(obiettivi)
Obiettivi generali Il corso ha come obiettivo di illustrare i concetti fondamentali dei sistemi distribuiti e la loro implementazione nei sistemi reali a larga scala moderni.
Obiettivi specifici Gli studenti si familiarizzeranno con tecniche di analisi, progetto e monitoraggio di sistemi distribuiti
Conoscenza e comprensione Al termine del corso gli studenti avranno acquisito conoscenze avanzate relative al monitoraggio delle computazioni distribuite, fault tollerance e failure detectors, consistenza e consenso, orologi logici e vector clocks per i sistemi asincroni,
Applicare conoscenza e comprension Al termine del corso gli studenti saranno in grado di applicare le conoscenze acquisite all'analisi di sistemi reali come ad esempio Chord e Amazon.
Capacità critiche e di giudizio Lo studente otterrà la capacità di analisi e valutazione della correttezza e dell’efficienza delle computazione distribuite, di comprendere le loro caratteristiche principali e di valutare in maniera critica pregi e difetti.
Capacità comunicative Lo studente acquisirà la capacità di esporre in modo chiaro ed organizzato le proprie conoscenze, capacità che verrà verificata durante la prova orale.
Capacità di apprendimento successivo Le conoscenze acquisite permetteranno allo studente di affrontare lo studio di ulteriori ma più specifici protocolli di tipo distribuito in modo approfondito e completo, e di essere in grado di progettare soluzioni di system design a partire da quelle dei sistemi reali affrontati in classe.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
1047626 -
FORMAL METHODS IN SOFTWARE DEVELOPMENT
(obiettivi)
Obiettivi generali: L'insegnamento è indirizzato all'acquisizione delle conoscenze logiche e di modellazione necessarie alla verifica di sistemi hardware e software complessi (con particolare riferimento al Model Checking).
Obiettivi specifici:
Conoscenza e comprensione: Alla fine del corso lo studente avrà piena comprensione degli strumenti di modellazione proposti (model checkers).
Capacità di applicare conoscenza e comprensione: Alla fine del corso lo studente sarà in grado di utilizzare gli strumenti presentati durante il corso e di approfondirne lo studio consultando autonomamente altri testi dedicati all'argomento e materiale scientifico che lo riguarda.
Capacità critiche e di giudizio: Le conoscenze acquisite permetteranno allo studente di affrontare le applicazioni proposte in altri insegnamenti e affrontare i problemi che gli verranno proposti nella carriera lavorativa in tema di modellazione e verifica di sistemi.
Capacità di comunicazione: Lo studente viene stimolato ad esporre e comunicare le proprie esperienze nella cerchia dei suoi colleghi.
Capacità di proseguire lo studio: Il corso tratta soltanto alcuni dei campi proponibili, ma dà notizia anche di un ampio spettro di tecniche che possono essere utilizzate in questo campo in modo che egli possa criticamente scegliere a seconda dei casi.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
1047627 -
FOUNDATIONS OF DATA SCIENCE
(obiettivi)
Obiettivi generali: Acquisire i fondamenti della scienza dai dati e dell'apprendimento automatico.
Obiettivi specifici: Rendere gli studenti consapevoli degli strumenti teorici e pratici della scienza dei dati e dell'apprendimento automatico, nonché dei loro limiti intrinseci; rendere gli studenti in grado di affrontare problemi reali attraverso gli strumenti più appropriati.
Conoscenza e comprensione: Il corso fornisce le nozioni, tecniche e metodologie di base utilizzate nell'ambito della scienza dei dati e dell'apprendimento automatico. Fornisce inoltre i rudimenti di programmazione necessari ad applicare la teoria a casi reali
Applicare conoscenza e comprensione: Alla fine del corso, gli studenti sapranno affrontare problemi concreti di scienza dei dati, dalla loro formalizzazione sino alla manipolazione dei dati attraverso appropriati strumenti software.
Capacità critiche e di giudizio: Gli studenti saranno in grado di scegliere le tecniche da applicare al caso specifico e di valutarne le prestazioni.
Capacità comunicative: Gli studenti saranno in grado di rappresentare e comunicare l'informazione estratta dai dati, attraverso l'uso razionale di grafici e indicatori.
Capacità di apprendimento: Gli studenti saranno messi in grado di apprendere autonomamente nozioni sia teoriche che pratiche del campo.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
1047634 -
INTERNET OF THINGS
|
Erogato in altro semestre o anno
|
|
1047613 -
ADVANCED ALGORITHMS
|
Erogato in altro semestre o anno
|
10589621 -
ADVANCED MACHINE LEARNING
|
Erogato in altro semestre o anno
|
10596281 -
AUTONOMOUS NETWORKING
(obiettivi)
Obbiettivi generali: Il corso fornirà agli studenti la capacità di affrontare le problematiche legate alla progettazione, implementazione e utilizzo dei sistemi di reti autonomi. Il corso presenterà sia le basi teoriche che gli aspetti pratici che è necessario conoscere per sviluppare questi sistemi.
Obiettivi specifici: La combinazione di molti dispositivi collegati eterogenei, inclusi dispositivi in rapido movimento e capacità di comunicazione avanzate che consentono interazioni in tempo reale sta portando alla creazione di sistemi su una scala e / o un livello di complessità che va oltre la capacità degli umani di comprendere e controllare pienamente . La gestione e il funzionamento di questi sistemi di rete richiedono un livello estremamente elevato di automazione intelligente. Scopo di questo corso è fornire conoscenze sulle principali tecnologie legate alla rete la cui interazione sarà responsabile per rendere autonomi i sistemi di rete. Queste tecnologie, basate principalmente sull'apprendimento di rinforzo (RL), consentono ai sistemi di reagire a ciò che sta accadendo nel loro ambiente e di rispondere di conseguenza.
Conoscenza e comprensione: Alla fine del corso gli studenti avranno conoscenze sulle tecnologie - sistemi di comunicazione in rete wireless come reti IoT, reti di backscattering e reti aeree - e metodologie - apprendimento di rinforzo - per progettare reti autonome. In particolare, il corso si concentrerà su problemi di comunicazione e networking di reti autonome e possibili soluzioni.
Applicare conoscenza e comprensione: Alla fine del corso gli studenti conosceranno le tecnologie e le metodologie per progettare reti autonome. In particolare, il corso si concentrerà su problemi di comunicazione e networking nelle reti autonome e possibili soluzioni.
Capacità critiche e di giudizio: Gli studenti svilupperanno le capacità di analisi necessarie per valutare diverse scelte progettuali alternative selezionando la migliore per ogni specifico scenario applicativo e tipo di tecnologia.
Capacità comunicative: Gli studenti impareranno ad analizzare e presentare articoli scientifici, idee di ricerca o soluzioni tecniche di settore, descrivendole in modo sintetico ed accurato, con un linguaggio tecnico adeguato.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047615 -
AUTOMATIC SOFTWARE VERIFICATION METHODS
|
Erogato in altro semestre o anno
|
1041764 -
BIG DATA COMPUTING
|
Erogato in altro semestre o anno
|
1041792 -
BIOMETRIC SYSTEMS
(obiettivi)
Obiettivi generali: Essere in grado di progettare e valutare un sistema biometrico o multibiometrico
Obiettivi specifici: Conoscere le caratteristiche e le tecniche fondamentali relative alle biometrie fisiche come volto, impronte, iride, ecc., e comportamentali come camminata, firma (caratteristiche dinamiche), stile di battitura, ecc. Conoscere le caratteristiche dell’architettura di un sistema biometrico: sistemi unimodali e multimodali. Essere in grado di valutare le prestazioni di un sistema biometrico in base alla modalità adottata: verifica, identificazione. Essere in grado di valutare/garantire la robustezza di un sistema biometrico rispetto ad attacchi di spoofing (furto di identità).
Conoscenza e comprensione: Fondamenti teorici della progettazione di un sistema biometrico e delle tecniche di estrazione/confronto delle caratteristiche specifiche per i principali tratti biometrici.
Applicare conoscenza e comprensione: Essere in grado di progettare ed implementare una applicazione di riconoscimento biometrico per almeno uno tratto biometrico.
Capacità critiche e di giudizio: Essere in grado di valutare le prestazioni e la robustezza agli attacchi di un sistema biometrico. Essere in grado di trasferire tecniche e protocolli in contesti diversi.
Capacità comunicative: Essere in grado di comunicare/condividere i requisiti di un sistema biometrico, le modalità operative più adatte ad una certa applicazione, e le misure di performance del sistema
Capacità di apprendimento: Essere in grado di approfondire autonomamente gli argomenti presentati nel corso, relativamente a tecniche e metodi specifici/complessi o a tratti biometrici non presenti tra gli argomenti.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047205 -
CLOUD COMPUTING
|
Erogato in altro semestre o anno
|
1047616 -
COMPUTATIONAL COMPLEXITY
|
Erogato in altro semestre o anno
|
1047617 -
COMPUTER NETWORK PERFORMANCE
(obiettivi)
Obiettivi generali: Lo scopo del corso è lo studio di metodi per stimare le prestazioni dei sistemi di rete esistenti e dimensionare nuovi sistemi ad alte prestazioni.
Obiettivi specifici: Analisi di processi stocastici discreti e continui, reti di code, metodi di misurazione delle reti tramite network tomography, analisi delle prestazioni di sistemi wired e wireless.
Conoscenza e comprensione: Il corso permettera` di sviluppare la capacita` di caratterizzare i problemi prestazionali nelle reti di calcolatori e individuare le criticita` di questi sistemi. Applicare conoscenza e comprensione: Attraverso il corso lo studente imparera` a riconoscere i problemi prestazionali e a progettare le relative soluzioni, attraverso la modellazione analitica e la soluzione di relativi problemi di ottimizzazione.
Capacità critiche e di giudizio: Il corso mettera` lo studente in condizione di saper scegliere, dato un problema, la migliore strategia risolutiva, fermo restando la comprensione di vincoli esistenti in termini di dimensionamento e costi delle soluzioni possibili.
Capacità comunicative: Lo studente sara` in grado di motivare le proprie scelte nella proposta di uno specifico approccio risolutivo di un problema relativo alle prestazioni di una rete di calcolatori, e fornire una analisi comparativa dell’approccio scelto con altri approcci possibili. Capacità di apprendimento: Lo studente sviluppera` capacita` di studio autonome e di comprensione e valutazione critica di nuove metodologie, tecnologie e modelli di sviluppo per sistemi di rete ad alte prestazioni.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047618 -
COMPUTER VISION
|
Erogato in altro semestre o anno
|
1047619 -
CONCURRENT SYSTEMS
|
Erogato in altro semestre o anno
|
1047622 -
CRYPTOGRAPHY
(obiettivi)
Obiettivi Generali: Lo scopo del corso è quello di tramandare i fondamenti della crittografia, che è la componente principale per la sicurezza nelle applicazioni digitali odierne.
Obiettivi Specifici: Gli studenti impareranno la metodologia della sicurezza dimostrabile, che permette di dimostrare la sicurezza dei moderni crittosistemi in senso matematico.
Conoscenza e Comprensione: -) Conoscenza dei fondamenti matematici della crittografia moderna. -) Conoscenza delle principali assunzioni crittografiche, su cui si basa la sicurezza dei moderni crittosistemi. -) Conoscenza degli schemi crittografici usati nella vita reale. Comprensione delle loro proprietà (teoriche e pratiche).
Applicare Conoscenza e Comprensione: -) Come selezionare la giusta primitiva crittografica per una data applicazione. -) Come analizzare la sicurezza di un dato crittosistema.
Capacità critiche e di giudizio: Gli studenti saranno in grado di giudicare se una data primitiva crittografica è sicura oppure no.
Capacità Comunicative: Come descrivere la sicurezza di una costruzione crittografica nel linguaggio della sicurezza dimostrabile.
Capacità di Apprendimento Successivo: Gli studenti interessati alla ricerca verranno a conoscenza di alcuni problemi aperti nell'area, ed otterranno le basi necessarie per studi più approfonditi in materia.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047623 -
DATA AND NETWORK SECURITY
|
Erogato in altro semestre o anno
|
10593236 -
DEEP LEARNING AND APPLIED ARTIFICIAL INTELLIGENCE
|
Erogato in altro semestre o anno
|
1047624 -
DISTRIBUTED SYSTEMS
(obiettivi)
Obiettivi generali Il corso ha come obiettivo di illustrare i concetti fondamentali dei sistemi distribuiti e la loro implementazione nei sistemi reali a larga scala moderni.
Obiettivi specifici Gli studenti si familiarizzeranno con tecniche di analisi, progetto e monitoraggio di sistemi distribuiti
Conoscenza e comprensione Al termine del corso gli studenti avranno acquisito conoscenze avanzate relative al monitoraggio delle computazioni distribuite, fault tollerance e failure detectors, consistenza e consenso, orologi logici e vector clocks per i sistemi asincroni,
Applicare conoscenza e comprension Al termine del corso gli studenti saranno in grado di applicare le conoscenze acquisite all'analisi di sistemi reali come ad esempio Chord e Amazon.
Capacità critiche e di giudizio Lo studente otterrà la capacità di analisi e valutazione della correttezza e dell’efficienza delle computazione distribuite, di comprendere le loro caratteristiche principali e di valutare in maniera critica pregi e difetti.
Capacità comunicative Lo studente acquisirà la capacità di esporre in modo chiaro ed organizzato le proprie conoscenze, capacità che verrà verificata durante la prova orale.
Capacità di apprendimento successivo Le conoscenze acquisite permetteranno allo studente di affrontare lo studio di ulteriori ma più specifici protocolli di tipo distribuito in modo approfondito e completo, e di essere in grado di progettare soluzioni di system design a partire da quelle dei sistemi reali affrontati in classe.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047626 -
FORMAL METHODS IN SOFTWARE DEVELOPMENT
(obiettivi)
Obiettivi generali: L'insegnamento è indirizzato all'acquisizione delle conoscenze logiche e di modellazione necessarie alla verifica di sistemi hardware e software complessi (con particolare riferimento al Model Checking).
Obiettivi specifici:
Conoscenza e comprensione: Alla fine del corso lo studente avrà piena comprensione degli strumenti di modellazione proposti (model checkers).
Capacità di applicare conoscenza e comprensione: Alla fine del corso lo studente sarà in grado di utilizzare gli strumenti presentati durante il corso e di approfondirne lo studio consultando autonomamente altri testi dedicati all'argomento e materiale scientifico che lo riguarda.
Capacità critiche e di giudizio: Le conoscenze acquisite permetteranno allo studente di affrontare le applicazioni proposte in altri insegnamenti e affrontare i problemi che gli verranno proposti nella carriera lavorativa in tema di modellazione e verifica di sistemi.
Capacità di comunicazione: Lo studente viene stimolato ad esporre e comunicare le proprie esperienze nella cerchia dei suoi colleghi.
Capacità di proseguire lo studio: Il corso tratta soltanto alcuni dei campi proponibili, ma dà notizia anche di un ampio spettro di tecniche che possono essere utilizzate in questo campo in modo che egli possa criticamente scegliere a seconda dei casi.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047627 -
FOUNDATIONS OF DATA SCIENCE
(obiettivi)
Obiettivi generali: Acquisire i fondamenti della scienza dai dati e dell'apprendimento automatico.
Obiettivi specifici: Rendere gli studenti consapevoli degli strumenti teorici e pratici della scienza dei dati e dell'apprendimento automatico, nonché dei loro limiti intrinseci; rendere gli studenti in grado di affrontare problemi reali attraverso gli strumenti più appropriati.
Conoscenza e comprensione: Il corso fornisce le nozioni, tecniche e metodologie di base utilizzate nell'ambito della scienza dei dati e dell'apprendimento automatico. Fornisce inoltre i rudimenti di programmazione necessari ad applicare la teoria a casi reali
Applicare conoscenza e comprensione: Alla fine del corso, gli studenti sapranno affrontare problemi concreti di scienza dei dati, dalla loro formalizzazione sino alla manipolazione dei dati attraverso appropriati strumenti software.
Capacità critiche e di giudizio: Gli studenti saranno in grado di scegliere le tecniche da applicare al caso specifico e di valutarne le prestazioni.
Capacità comunicative: Gli studenti saranno in grado di rappresentare e comunicare l'informazione estratta dai dati, attraverso l'uso razionale di grafici e indicatori.
Capacità di apprendimento: Gli studenti saranno messi in grado di apprendere autonomamente nozioni sia teoriche che pratiche del campo.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047628 -
FUNDAMENTALS OF COMPUTER GRAPHICS
|
Erogato in altro semestre o anno
|
1047630 -
HUMAN COMPUTER INTERACTION ON THE WEB
|
Erogato in altro semestre o anno
|
1047631 -
INFORMATION SYSTEMS
|
Erogato in altro semestre o anno
|
1047633 -
INTENSIVE COMPUTATION
|
Erogato in altro semestre o anno
|
1047634 -
INTERNET OF THINGS
|
Erogato in altro semestre o anno
|
1047635 -
MACHINE LEARNING
(obiettivi)
Obiettivi generali Il corso introduce le motivazioni, paradigm e applicazioni dei sistemi di apprendimento automatic. Si tratta di un corso introduttivo. Obiettivi specifici Apprendimento supervisionato: alberi di decisione, apprendimento di istanze, naïve Bayes, support vector machine, neural networks, deep learning, ensamble methods. Apprendimento non supervisionato: clustering, association rules. Apprendimento semi-supervisionato: Reinforcement learning. Genetic algorithms e genetic programming. Problemi generali: underfitting, overfitting, model selection, error analysis.
Conoscenza e comprensione: Gli studenti impareranno quali algoritmi si adattano meglio a quali categorie di problemi, come descrivere il dominio dell'applicazione, come regolare parametri e iperparametri del modello, come testare le prestazioni.
Applicazione di conoscenza e comprensione: Gli studenti faranno esperimenti utilizzando toolkits di ML quali Weka, Tensor Flow e scikit-lear.
Autonomia di giudizio: Gli studenti saranno in grado di comprendere le categorie di problemi che possono essere risolti in modo efficiente con algoritmi di apprendimento automatico, a quali condizioni.
Abilità comunicative: Queste saranno valutate durante gli esami scritti e la reportistica del progetto.
Capacità di apprendimento successivo: Gli studenti riceveranno una solida base per approfondire ulteriormente i metodi più avanzati, come il deep learning, l'apprendimento probabilistico ed altri.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047636 -
MATHEMATICAL LOGIC FOR COMPUTER SCIENCE
|
Erogato in altro semestre o anno
|
10589557 -
METHODS IN COMPUTER SCIENCE EDUCATION: ANALYSIS
|
Erogato in altro semestre o anno
|
10589558 -
METHODS IN COMPUTER SCIENCE EDUCATION: DESIGN
(obiettivi)
Obiettivi generali: Conoscere ed applicare le più recenti metodologie di insegnamento dell'Informatica nella scuola superiore. Il corso svilupperà una serie di use-cases relativi alle tecniche di insegnamento dell'Informatica a scuola.
Obiettivi specifici: • Progettazione e sviluppo di metodologie di insegnamento dell'informatica: illustrazione dei principi e dei metodi per la costruzione di attività e più in generale di un curriculum di informatica coerente con gli obiettivi fissati dalle indicazioni nazionali per i licei e dalle linee guida per gli istituti tecnici e professionali. • Metodologie e tecnologie didattiche per lo studio del rapporto dell'informatica con la società attuale, e in particolare degli aspetti etici legati, per esempio, al trattamento dei dati personali, all'automazione di decisioni e raccomandazioni, alla ridefinizione del concetto di copyright.
Conoscenza e comprensione: Principi e metodi di costruzione di attività didattiche di C.S. nella scuola superiore. Aspetti etici dell'uso dei dati e dei contenuti personali.
Applicazione di conoscenza e comprensione: Agli studenti verrà richiesto di scegliere e sviluppare alcuni moduli didattici per la scuola superiore.
Autonomia di giudizio: Lo studente sarà autonomo nello scegliere i moduli da sviluppare e nella loro fase di progetto e realizzazione.
Abilità comunicative: Gli studenti dovranno dimostrare di saper produrre moduli didattici di qualità, con una forte capacità di interessare e comunicare con precisione gli argomenti chiave della lezione da sviluppare.
Capacità di apprendimento successivo: La metodologia di progetto dei moduli didattici vista nel corso sarà facilmente applicabile ad altri tipi di corsi.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047638 -
MODELS OF COMPUTATION
(obiettivi)
Obiettivi generali L'insegnamento è indirizzato all'acquisizione delle conoscenze matematiche relative ad aspetti fondamentali dei linguaggi di programmazione funzionale e imperativa con particolare attenzione ai meccanismi di esecuzione dei programmi.
Obiettivi specifici
Conoscenza e comprensione: Alla fine del corso lo studente avrà piena comprensione degli strumenti matematici proposti.
Capacità di applicare conoscenza e comprensione: Lo studente sarà in grado di approfondire lo studio consultando autonomamente manuali o pubblicazioni scientifiche.
Capacità critiche e di giudizio: Le conoscenze acquisite permetteranno allo studente di individuare e confrontare in altri ambiti gli argomenti proposti nell'uso di linguaggi di programmazione, in particolare nell'ambito lavorativo.
Capacità di comunicare quanto si è appreso: Lo studente viene stimolato ad esporre e comunicare le proprie esperienze ai suoi colleghi.
Capacità di proseguire lo studio in modo autonomo nel corso della vita: Il corso tratta aspetti fondamentali della programmazione, assicurando allo studente la possibilità di individuarli autonomamente nell'uso di ogni particolare linguaggio.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047639 -
MULTIMODAL INTERACTION
|
Erogato in altro semestre o anno
|
1038141 -
NATURAL LANGUAGE PROCESSING
|
Erogato in altro semestre o anno
|
1047640 -
NETWORK ALGORITHMS
|
Erogato in altro semestre o anno
|
10589555 -
PRACTICAL NETWORK DEFENSE
|
Erogato in altro semestre o anno
|
1047642 -
SECURITY IN SOFTWARE APPLICATIONS
(obiettivi)
Obiettivi generali
I fondamenti della sicurezza nei programmi software
Obiettivi specifici
Metodologie e strumenti per trovare e rimuovere le vulnerabilità più comuni del software e per sviluppare software senza falle di sicurezza Conoscenza e comprensione
conoscenza e capacità di comprensione delle tecniche più efficaci per la rimozione di vulnerabilità dal codice e per sviluppare software che soddisfi specifiche politiche di sicurezza. Applicare conoscenza e comprensione
Essere in grado di applicare e trasferire la propria conoscenza delle metodologie alla scelta delle tecniche e strumenti appropriati risolvere problemi di sicurezza del software Autonomia di giudizio
Capacità d’interpretazione autonoma per proporre soluzioni appropriate a problemi di sicurezza software congruenti con le tecnologie disponibili. Abilità comunicative
Capacità di presentare e di argomentare le proprie scelte in merito alle metodologie ed agli strumenti utilizzati per le soluzioni proposte, sia con colleghi che con utenti Capacità di apprendimento successivo
Capacità di apprendere e approfondire nuove tecniche nell’ambito della sicurezza software informatica sia degli aspetti metodologici sia di quelli tecnologici
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047643 -
TOPICS IN PHYSICS
|
Erogato in altro semestre o anno
|
|
Secondo semestre
Insegnamento
|
CFU
|
SSD
|
Ore Lezione
|
Ore Eserc.
|
Ore Lab
|
Ore Studio
|
Attività
|
Lingua
|
10589621 -
ADVANCED MACHINE LEARNING
|
Erogato in altro semestre o anno
|
1041792 -
BIOMETRIC SYSTEMS
|
Erogato in altro semestre o anno
|
1047618 -
COMPUTER VISION
|
Erogato in altro semestre o anno
|
1047628 -
FUNDAMENTALS OF COMPUTER GRAPHICS
|
Erogato in altro semestre o anno
|
1047630 -
HUMAN COMPUTER INTERACTION ON THE WEB
(obiettivi)
Obiettivi generali Il corso di sistemi informativi analizza differenti tipologie di sistemi informativi e come esse possono contribuire al successo degli obiettivi di un’azienda; permette di comprendere gli approcci e i modelli da usare per valutare la qualità dei processi, del software e dei servizi ICT; e fornisce le conoscenze di base per pianificare, gestire e controllare i progetti IT.
Obiettivi specifici
• Conoscenza e comprensione – Modello funzionale e struttura informativa dei processi aziendali – esigenze di integrazione e requisiti di controllo dei dati dei sistemi informatici aziendali – sistemi e tecnologie per sviluppare e mantenere un e-business di successo – principali settori di applicazione dei sistemi di informazione in vari settori di mercato – organizzazione IT e modelli di valutazione della qualità IT – conoscenze di base di contesto, tecniche/metodologie e soft skill per la gestione dei progetti ICT
• Applicazione di conoscenze e comprensione – Analizzare le diverse tipologie di requisiti in relazione a differenti categorie di utenti (stakeholder) di sistemi informativi – Selezionare l’appropriato modello per valutare la qualità dei processi ICT, del prodotto software e dei servizi ICT – Sviluppare uno studio di fattibilità selezionando l’appropriata architettura applicativa e tecnologica – Preparare, per un semplice progetto ICT, un piano di sviluppo nel rispetto dei vincoli di tempo, costi, qualità e definendo l’appropriata organizzazione – Controllare un progetto ICT in corso, applicando le tecniche di project management – Comprendere a valutare le lezioni apprese nei precedenti progetti
Capacità critiche e di giudizio: Gli studenti, mediante test e case study, acquisiranno competenze nella comprensione dei tipi di sistemi informativi, nell’uso dei modelli di quality management e nella pianificazione e gestione di un progetto.
Capacità comunicative: Gli studenti, costituiti in team, saranno coinvolti in attività finalizzate alla realizzazione di un piano di comunicazione di un progetto basato su un case study, che sarà mostrato ai colleghi spiegando le ragioni delle scelte adottate.
Capacità di apprendimento: La capacità di apprendimento sarà stimolata attraverso la preparazione di uno studio di fattibilità contenente: [a] la definizione dei requisiti del tipo di sistema informativo più adatto; [b] la definizione dei requisiti tecnici e di qualità; [c] la pianificazione di un progetto di implementazione del sistema informativo.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
1047635 -
MACHINE LEARNING
|
Erogato in altro semestre o anno
|
1047639 -
MULTIMODAL INTERACTION
|
Erogato in altro semestre o anno
|
1038141 -
NATURAL LANGUAGE PROCESSING
(obiettivi)
Obiettivi generali: I fondamenti dell'elaborazione del linguaggio naturale.
Obiettivi specifici: L'elaborazione del linguaggio naturale al livello di: morfologia, parte del discorso, sintassi, semantica, pragmatica. Traduzione automatica.
Conoscenza e comprensione: Conoscenza e comprensione delle tecniche algoritmiche e di apprendimento automatica per l'elaborazione del linguaggio naturale.
Applicare conoscenza e comprensione: Essere in grado di applicare le tecniche di elaborazione del linguaggio naturale mediante homework e un progetto.
Capacità critiche e di giudizio: Capacità di comprendere e identificare soluzioni efficaci ai problemi dell'elaborazione del linguaggio naturale.
Capacità comunicative: Capacità di illustrare il progetto sviluppato.
Capacità di apprendimento: Capacità di apprendere e applicare nuove tecniche di elaborazione del linguaggio naturale sia basate su quelle illustrate nel corso sia basate su approcci innovativi.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
10593236 -
DEEP LEARNING AND APPLIED ARTIFICIAL INTELLIGENCE
(obiettivi)
Obiettivi generali Acquisire familiarità con tecniche avanzate di machine learning supervisionato e non supervisionato; acquisire competenze di modellazione di problemi complessi attraverso tecniche di deep learning, e saperle applicare a contesti applicativi diversi.
Obiettivi specifici Gli argomenti includono: reti neurali profonde, il loro addestramento e l'interpretazione dei risultati; reti convoluzionali e architetture prominenti; teoria del deep learning con particolare riferimento a questioni di convergenza; utilizzo di framework esistenti per l'implementazione di tecniche avanzate di machine learning; autoencoders; attacchi avversari.
Conoscenza e comprensione: Conoscenza sul funzionamento delle reti neurali e loro interpretazione matematica come approssimatori universali. Comprensione dei limiti e delle potenzialità di modelli avanzati di machine learning.
Applicazione di conoscenza e comprensione Progettazione, implementazione, messa in esercizio e analisi di architetture di deep learning per risolvere problemi complessi in disparati ambiti applicativi.
Autonomia di giudizio Essere in grado di valutare le prestazioni di diverse architetture, e di valutare la capacità di generalizzazione delle stesse.
Abilità comunicative Essere in grado di comunicare con chiarezza la formulazione di un problema di apprendimento avanzato e la sua implementazione, la sua applicabilità in contesti realistici, nonchè di motivare le scelte architetturali e di regolarizzazione.
Capacità di apprendimento successivo: Essere in grado di apprendere tecniche alternative e più complesse quali i modelli generativi basati su traporto ottimo, le trasformate di scattering e lo studio del probilo energetico delle reti neurali. Essere in grado di implementare tecniche esistenti in maniera efficiente, robusta e affidabile.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
|
1041764 -
BIG DATA COMPUTING
(obiettivi)
Obiettivi generali Il corso si propone di introdurre le principali tecniche algoritmiche e di programmazione nell’analisi di big data, affrontando una varietà di problemi di data mining in modelli di calcolo adatti alla gestione di grandi quantità di dati.
Obiettivi specifici Capacità di analisi, modellazione, e risoluzione di problemi tipici dell'area "Big Data" attraverso l'implementazione di "pipeline" di machine learning su ambienti distribuiti tramite PySpark.
Conoscenza e comprensione: Al termine del corso gli studenti avranno una comprensione dettagliata dei modelli di programmazione per l'analisi di dati distribuiti su cluster di computer, nonché di modelli computazionali avanzati per l'elaborazione di enormi quantità di dati (ad esempio, streaming di dati, parallelismo in stile MapReduce e algoritmi efficienti in memoria secondaria).
Applicare conoscenza e comprensione: gli studenti saranno in grado di progettare e analizzare algoritmi per l’analisi di big data in diversi scenari, sapranno scrivere codice efficiente e scalabile tenendo conto delle caratteristiche architetturali delle moderne piattaforme di calcolo (inclusi i sistemi distribuiti), e sapranno lavorare sfruttando una varietà di sistemi software adatti al processamento di big data (tra cui Hadoop).
Capacità critiche e di giudizio: gli studenti saranno in grado di capire i paradigmi di calcolo più adatti in scenari differenti, valutando vantaggi e svantaggi di ciascun modello computazionale e affrontando le sfide che si presentano nella progettazione e implementazione di una varietà di applicazioni.
Capacità di comuniczione: gli studenti saranno in grado di comunicare in modo efficace, riassumendo in modo chiaro le idee principali nella progettazione di sistemi e algoritmi per l’analisi di big data e presentando informazioni tecniche accurate.
Capacità di apprendimento successivo: obiettivo del corso è quello di toccare una varietà di tecniche il più possibile ampia, introducendo pratiche standard e argomenti di ricerca all'avanguardia in questo settore e consentendo quindi agli studenti di estendere le conoscenze acquisite in modo indipendente, anche in base all’evoluzione tecnologica.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
1047617 -
COMPUTER NETWORK PERFORMANCE
|
Erogato in altro semestre o anno
|
1047619 -
CONCURRENT SYSTEMS
|
Erogato in altro semestre o anno
|
1047624 -
DISTRIBUTED SYSTEMS
|
Erogato in altro semestre o anno
|
1047626 -
FORMAL METHODS IN SOFTWARE DEVELOPMENT
|
Erogato in altro semestre o anno
|
1047627 -
FOUNDATIONS OF DATA SCIENCE
|
Erogato in altro semestre o anno
|
1047634 -
INTERNET OF THINGS
(obiettivi)
Obiettivi generali: Il corso illustra gli aspetti metodologici, teorici e pratici relativi alla progettazione di reti wireless e Internet delle cose. Il corso prevede un laboratorio.
Obiettivi specifici Introduzione alle reti wireless, architetture e protocolli usati nelle reti cellulari info al 5G e nei sistemi Internet delle cose, analisi delle soluzioni di ricerca relative ad alcune delle sfide per la realizzazione dei sistemi internet delle cose (abbattimento del consumo energetico, integrazione del mondo IoT e della robotica, sicurezza delle informazioni).
Struttura sintetica del corso: - Introduzione alle reti radio - Dai sistemi cellulari 2G al 5G - Protocolli per sensing systems: protocolli di MAC, routing, localizzazione e sincronizzazione - Verso l'Internet delle cose: caratteristiche e problematiche, protocolli standard e tecnologie, scelte progettuali per diversi ambiti verticali, sfide ancora aperte - Aspetti avanzati dell'IoT: zero-power IoT; aspetti di sicurezza; uso di blockchain in applicazioni IoT; ottimizzazione di sistemi mediante tecniche di machine learning; integrazione di robotica e IoT systems (esempio dell'Internet of Underwater Things). -Lab di programmazione IoT
Conoscenze e comprensione: Alla fine del corso lo studente saprà leggere e comprendere articoli scientifici, documenti tecnici e standard del settore; avrà compreso i trade-off prestazionali associati a diverse scelte progettuali. Sarà quindi in grado di progettare futuri sistemi wireless e IoT. Avrà fatto prime esperienze pratiche relative alla programmazione e valutazione sperimentale di tali sistemi.
Applicazione di conoscenza e comprensione: Gli studenti saranno in grado di partecipare alla progettazione di futuri sistemi e applicazioni IoT e di sistemi 5G.
Capacità di giudizio: Gli studenti svilupperanno le capacità di analisi necessarie per valutare diverse scelte progettuali alternative selezionando la migliore per ogni specifico scenario applicativo e tipo di tecnologia.
Capacità di comunicazione: Gli studenti impareranno ad analizzare e presentare articoli scientifici, idee di ricerca o soluzioni tecniche di settore, descrivendole in modo sintetico ed accurato, con un linguaggio tecnico adeguato.
Capacità di apprendimento: Gli studenti acquisiranno sia competenze teoriche che pratiche relative alla progettazione dei sistemi wireless e IoT, che li metteranno in grado di proseguire l'approfondimento di questi argomenti.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
|
1047613 -
ADVANCED ALGORITHMS
|
Erogato in altro semestre o anno
|
10589621 -
ADVANCED MACHINE LEARNING
|
Erogato in altro semestre o anno
|
10596281 -
AUTONOMOUS NETWORKING
|
Erogato in altro semestre o anno
|
1047615 -
AUTOMATIC SOFTWARE VERIFICATION METHODS
|
Erogato in altro semestre o anno
|
1041764 -
BIG DATA COMPUTING
(obiettivi)
Obiettivi generali Il corso si propone di introdurre le principali tecniche algoritmiche e di programmazione nell’analisi di big data, affrontando una varietà di problemi di data mining in modelli di calcolo adatti alla gestione di grandi quantità di dati.
Obiettivi specifici Capacità di analisi, modellazione, e risoluzione di problemi tipici dell'area "Big Data" attraverso l'implementazione di "pipeline" di machine learning su ambienti distribuiti tramite PySpark.
Conoscenza e comprensione: Al termine del corso gli studenti avranno una comprensione dettagliata dei modelli di programmazione per l'analisi di dati distribuiti su cluster di computer, nonché di modelli computazionali avanzati per l'elaborazione di enormi quantità di dati (ad esempio, streaming di dati, parallelismo in stile MapReduce e algoritmi efficienti in memoria secondaria).
Applicare conoscenza e comprensione: gli studenti saranno in grado di progettare e analizzare algoritmi per l’analisi di big data in diversi scenari, sapranno scrivere codice efficiente e scalabile tenendo conto delle caratteristiche architetturali delle moderne piattaforme di calcolo (inclusi i sistemi distribuiti), e sapranno lavorare sfruttando una varietà di sistemi software adatti al processamento di big data (tra cui Hadoop).
Capacità critiche e di giudizio: gli studenti saranno in grado di capire i paradigmi di calcolo più adatti in scenari differenti, valutando vantaggi e svantaggi di ciascun modello computazionale e affrontando le sfide che si presentano nella progettazione e implementazione di una varietà di applicazioni.
Capacità di comuniczione: gli studenti saranno in grado di comunicare in modo efficace, riassumendo in modo chiaro le idee principali nella progettazione di sistemi e algoritmi per l’analisi di big data e presentando informazioni tecniche accurate.
Capacità di apprendimento successivo: obiettivo del corso è quello di toccare una varietà di tecniche il più possibile ampia, introducendo pratiche standard e argomenti di ricerca all'avanguardia in questo settore e consentendo quindi agli studenti di estendere le conoscenze acquisite in modo indipendente, anche in base all’evoluzione tecnologica.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1041792 -
BIOMETRIC SYSTEMS
|
Erogato in altro semestre o anno
|
1047205 -
CLOUD COMPUTING
(obiettivi)
Obiettivi generali : Il Cloud Computing è divenuto una delle fondamentali tecnologie dell’informazione, fornendo elevata scalabilità ed elasticità nella fornitura di applicazioni distribuite (aziendali e scientifiche). Alla fine del corso gli studenti avranno gli strumenti per comprendere l’impatto del Cloud Computing in un ambiente aziendale (e non) e le implicazioni tecnologiche nello sviluppo di applicazioni Cloud, specificatamente applicazioni per la memorizzazione e l’elaborazione di big data.
Obiettivi specifici Alla fine del corso, gli studenti avranno acquisito gli strumenti per: - usare le tecnologie di virtualizzazione a livello di sistema e a livello di applicazione - usare tecnologie IaaS e PaaS - progettare architetture virtualizzate - fare il deployment di applicazioni Cloud - valutare costi e prestazioni di sistemi Cloud
Conoscenza e comprensione: Alla fine del corso, gli studenti avranno acquisito la conoscenza relativa ai fattori che hanno influenzato la diffusione del Cloud Computing, alle tecnologie di virtualizzazione, alle architetture Cloud (autoscaling, load balancing, monitoring, high availability), ai sistemi di memorizzazione dei dati nel Cloud Alla fine del corso, gli studenti saranno capaci di comprendere i principi di funzionamento delle soluzioni basate su Cloud (design and operation) e di comprendere problemi di ricerca applicata relativi alle soluzioni basate su Cloud
Applicarei conoscenza e comprensione: Alla fine del corso, gli studenti saranno capaci di - spiegare i principi del Cloud Computing - spiegare le principali tecnologie Cloud - risolvere problemi che richiedono l’uso delle tecnologie Cloud e del design e deployment di architetture virtualizzate e di applicazioni Cloud - valutare le prestazioni e i costi di soluzioni basate su Cloud
Capaità critiche e di giudizio: Nel corso gli studenti svilupperanno abilità di pensiero critico nel campo del Cloud Computing
Capacità comunicative: Alla fine del corso gli studenti saranno capaci di comunicare le nozioni imparate a personale tecnico e manageriale.
Capacità di apprendimento successivo: Dopo il corso, gli studenti avranno acquisito la conoscenza per seguire corsi avanzati di Cloud Computing e di tecnologie big data.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047616 -
COMPUTATIONAL COMPLEXITY
|
Erogato in altro semestre o anno
|
1047617 -
COMPUTER NETWORK PERFORMANCE
|
Erogato in altro semestre o anno
|
1047618 -
COMPUTER VISION
|
Erogato in altro semestre o anno
|
1047619 -
CONCURRENT SYSTEMS
|
Erogato in altro semestre o anno
|
1047622 -
CRYPTOGRAPHY
|
Erogato in altro semestre o anno
|
1047623 -
DATA AND NETWORK SECURITY
|
Erogato in altro semestre o anno
|
10593236 -
DEEP LEARNING AND APPLIED ARTIFICIAL INTELLIGENCE
(obiettivi)
Obiettivi generali Acquisire familiarità con tecniche avanzate di machine learning supervisionato e non supervisionato; acquisire competenze di modellazione di problemi complessi attraverso tecniche di deep learning, e saperle applicare a contesti applicativi diversi.
Obiettivi specifici Gli argomenti includono: reti neurali profonde, il loro addestramento e l'interpretazione dei risultati; reti convoluzionali e architetture prominenti; teoria del deep learning con particolare riferimento a questioni di convergenza; utilizzo di framework esistenti per l'implementazione di tecniche avanzate di machine learning; autoencoders; attacchi avversari.
Conoscenza e comprensione: Conoscenza sul funzionamento delle reti neurali e loro interpretazione matematica come approssimatori universali. Comprensione dei limiti e delle potenzialità di modelli avanzati di machine learning.
Applicazione di conoscenza e comprensione Progettazione, implementazione, messa in esercizio e analisi di architetture di deep learning per risolvere problemi complessi in disparati ambiti applicativi.
Autonomia di giudizio Essere in grado di valutare le prestazioni di diverse architetture, e di valutare la capacità di generalizzazione delle stesse.
Abilità comunicative Essere in grado di comunicare con chiarezza la formulazione di un problema di apprendimento avanzato e la sua implementazione, la sua applicabilità in contesti realistici, nonchè di motivare le scelte architetturali e di regolarizzazione.
Capacità di apprendimento successivo: Essere in grado di apprendere tecniche alternative e più complesse quali i modelli generativi basati su traporto ottimo, le trasformate di scattering e lo studio del probilo energetico delle reti neurali. Essere in grado di implementare tecniche esistenti in maniera efficiente, robusta e affidabile.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047624 -
DISTRIBUTED SYSTEMS
|
Erogato in altro semestre o anno
|
1047626 -
FORMAL METHODS IN SOFTWARE DEVELOPMENT
|
Erogato in altro semestre o anno
|
1047627 -
FOUNDATIONS OF DATA SCIENCE
|
Erogato in altro semestre o anno
|
1047628 -
FUNDAMENTALS OF COMPUTER GRAPHICS
|
Erogato in altro semestre o anno
|
1047630 -
HUMAN COMPUTER INTERACTION ON THE WEB
(obiettivi)
Obiettivi generali Il corso di sistemi informativi analizza differenti tipologie di sistemi informativi e come esse possono contribuire al successo degli obiettivi di un’azienda; permette di comprendere gli approcci e i modelli da usare per valutare la qualità dei processi, del software e dei servizi ICT; e fornisce le conoscenze di base per pianificare, gestire e controllare i progetti IT.
Obiettivi specifici
• Conoscenza e comprensione – Modello funzionale e struttura informativa dei processi aziendali – esigenze di integrazione e requisiti di controllo dei dati dei sistemi informatici aziendali – sistemi e tecnologie per sviluppare e mantenere un e-business di successo – principali settori di applicazione dei sistemi di informazione in vari settori di mercato – organizzazione IT e modelli di valutazione della qualità IT – conoscenze di base di contesto, tecniche/metodologie e soft skill per la gestione dei progetti ICT
• Applicazione di conoscenze e comprensione – Analizzare le diverse tipologie di requisiti in relazione a differenti categorie di utenti (stakeholder) di sistemi informativi – Selezionare l’appropriato modello per valutare la qualità dei processi ICT, del prodotto software e dei servizi ICT – Sviluppare uno studio di fattibilità selezionando l’appropriata architettura applicativa e tecnologica – Preparare, per un semplice progetto ICT, un piano di sviluppo nel rispetto dei vincoli di tempo, costi, qualità e definendo l’appropriata organizzazione – Controllare un progetto ICT in corso, applicando le tecniche di project management – Comprendere a valutare le lezioni apprese nei precedenti progetti
Capacità critiche e di giudizio: Gli studenti, mediante test e case study, acquisiranno competenze nella comprensione dei tipi di sistemi informativi, nell’uso dei modelli di quality management e nella pianificazione e gestione di un progetto.
Capacità comunicative: Gli studenti, costituiti in team, saranno coinvolti in attività finalizzate alla realizzazione di un piano di comunicazione di un progetto basato su un case study, che sarà mostrato ai colleghi spiegando le ragioni delle scelte adottate.
Capacità di apprendimento: La capacità di apprendimento sarà stimolata attraverso la preparazione di uno studio di fattibilità contenente: [a] la definizione dei requisiti del tipo di sistema informativo più adatto; [b] la definizione dei requisiti tecnici e di qualità; [c] la pianificazione di un progetto di implementazione del sistema informativo.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047631 -
INFORMATION SYSTEMS
|
Erogato in altro semestre o anno
|
1047633 -
INTENSIVE COMPUTATION
|
Erogato in altro semestre o anno
|
1047634 -
INTERNET OF THINGS
(obiettivi)
Obiettivi generali: Il corso illustra gli aspetti metodologici, teorici e pratici relativi alla progettazione di reti wireless e Internet delle cose. Il corso prevede un laboratorio.
Obiettivi specifici Introduzione alle reti wireless, architetture e protocolli usati nelle reti cellulari info al 5G e nei sistemi Internet delle cose, analisi delle soluzioni di ricerca relative ad alcune delle sfide per la realizzazione dei sistemi internet delle cose (abbattimento del consumo energetico, integrazione del mondo IoT e della robotica, sicurezza delle informazioni).
Struttura sintetica del corso: - Introduzione alle reti radio - Dai sistemi cellulari 2G al 5G - Protocolli per sensing systems: protocolli di MAC, routing, localizzazione e sincronizzazione - Verso l'Internet delle cose: caratteristiche e problematiche, protocolli standard e tecnologie, scelte progettuali per diversi ambiti verticali, sfide ancora aperte - Aspetti avanzati dell'IoT: zero-power IoT; aspetti di sicurezza; uso di blockchain in applicazioni IoT; ottimizzazione di sistemi mediante tecniche di machine learning; integrazione di robotica e IoT systems (esempio dell'Internet of Underwater Things). -Lab di programmazione IoT
Conoscenze e comprensione: Alla fine del corso lo studente saprà leggere e comprendere articoli scientifici, documenti tecnici e standard del settore; avrà compreso i trade-off prestazionali associati a diverse scelte progettuali. Sarà quindi in grado di progettare futuri sistemi wireless e IoT. Avrà fatto prime esperienze pratiche relative alla programmazione e valutazione sperimentale di tali sistemi.
Applicazione di conoscenza e comprensione: Gli studenti saranno in grado di partecipare alla progettazione di futuri sistemi e applicazioni IoT e di sistemi 5G.
Capacità di giudizio: Gli studenti svilupperanno le capacità di analisi necessarie per valutare diverse scelte progettuali alternative selezionando la migliore per ogni specifico scenario applicativo e tipo di tecnologia.
Capacità di comunicazione: Gli studenti impareranno ad analizzare e presentare articoli scientifici, idee di ricerca o soluzioni tecniche di settore, descrivendole in modo sintetico ed accurato, con un linguaggio tecnico adeguato.
Capacità di apprendimento: Gli studenti acquisiranno sia competenze teoriche che pratiche relative alla progettazione dei sistemi wireless e IoT, che li metteranno in grado di proseguire l'approfondimento di questi argomenti.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047635 -
MACHINE LEARNING
|
Erogato in altro semestre o anno
|
1047636 -
MATHEMATICAL LOGIC FOR COMPUTER SCIENCE
(obiettivi)
Obiettivi generali: Il corso ha l'obiettivo di introdurre gli studenti ai risultati e ai metodi fondamentali della Logica Matematica con particolare attenzione alla loro applicazione nell'ambito dell'Informatica.
Obiettivi specifici: L'obiettivo del corso è duplice. In primo luogo si intende dotare lo studente di una conoscenza rigorosa e di una capacità di applicare quei risultati e metodi della Logica Matematica che trovano applicazione in numerose aree dell'Informatica. D'altra parte si intende offrire allo studente una strumenti e conoscenze fondamentali per intraprendere un percorso di ricerca in Informatica Teorica.
Conoscenza e comprensione: Il corso mira a dotare lo studente di una conoscenza rigorosa degli argomenti del corso attraverso lo studio delle dimostrazioni e la produzione di argomenti rigorosi nello svolgimento degli esercizi. Particolare attenzione è data alla motivazione concettuale, alla dimostrazione rigorosa e alla applicabilità dei risultati trattati nel corso.
Applicazione di conoscenza e comprensione: I metodi della logica matematica hanno un ruolo fondamentale in diverse aree dell'Informatica quali la Teoria della Complessità, la Teoria delle Basi di Dati, l'Intelligenza Artificiale. Si mira a stimolare nello studente la capacità di applicare in vari contesti dell'informatica i metodi e i risultati studiati.
Autonomia di giudizio: Viene stimolata la partecipazione attiva alle lezioni ed esercitata l'autonomia di giudizio attraverso l'assegnazione di esercizi e problemi.
Abilità comunicative: Lo studente può scegliere di dare l'esame finale in forma di presentazione seminariale davanti alla classe di un risultato concordato con il docente.
Capacità di apprendimento successivo: I metodi di analisi e formalizzazione acquisiti durante il corso trovano applicazione in diverse aree dell'Informatica. L'esercizio di formalizzazione e problem-solving durante il corso rinforza le capacità di apprendimento e acquisizione di nuove competenze.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
10589557 -
METHODS IN COMPUTER SCIENCE EDUCATION: ANALYSIS
(obiettivi)
Obiettivi generali: Conoscere ed applicare le più recenti teorie e metodologie di insegnamento dell'Informatica nella scuola e nell'università. Il corso svilupperà una serie di use-cases relativi alle tecniche di insegnamento dell'Informatica.
Obiettivi specifici: • Analisi critica delle principali metodologie per l'insegnamento sviluppate nella ricerca in didattica dell'informatica, anche in riferimento allo specifico ruolo dell'insegnante, ai nodi concettuali, epistemologici, linguistici e didattici dell'insegnamento e apprendimento dell'informatica, ponendo in particolare l'accento sulla distinzione fra l'informatica come disciplina scientifica da una parte e le applicazioni dell'informatica dall'altra. • Esplicitazione del parallelismo fra metodologie informatiche e metodologie didattiche: tecniche di problem solving costruttivo; approccio epistemologico ai problemi; metodi cooperativi di sviluppo delle soluzioni.
Conoscenza e comprensione: Principi e metodi di costruzione di attività didattiche di C.S. nella scuola superiore e nell'università.
Applicazione di conoscenza e comprensione: Agli studenti verrà richiesto di scegliere e sviluppare alcuni moduli didattici per la Scuola superiore e l'Università.
Autonomia di giudizio: Lo studente sarà autonomo nello scegliere i moduli da sviluppare e nella loro fase di progetto e realizzazione.
Abilità comunicative: Gli studenti dovranno dimostrare di saper produrre moduli didattici di qualità, con una forte capacità di interessare e comunicare con precisione gli argomenti chiave della lezione da sviluppare.
Capacità di apprendimento successivo: La metodologia di progetto dei moduli didattici vista nel corso sarà facilmente applicabile ad altri tipi di corsi.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
10589558 -
METHODS IN COMPUTER SCIENCE EDUCATION: DESIGN
|
Erogato in altro semestre o anno
|
1047638 -
MODELS OF COMPUTATION
|
Erogato in altro semestre o anno
|
1047639 -
MULTIMODAL INTERACTION
|
Erogato in altro semestre o anno
|
1038141 -
NATURAL LANGUAGE PROCESSING
(obiettivi)
Obiettivi generali: I fondamenti dell'elaborazione del linguaggio naturale.
Obiettivi specifici: L'elaborazione del linguaggio naturale al livello di: morfologia, parte del discorso, sintassi, semantica, pragmatica. Traduzione automatica.
Conoscenza e comprensione: Conoscenza e comprensione delle tecniche algoritmiche e di apprendimento automatica per l'elaborazione del linguaggio naturale.
Applicare conoscenza e comprensione: Essere in grado di applicare le tecniche di elaborazione del linguaggio naturale mediante homework e un progetto.
Capacità critiche e di giudizio: Capacità di comprendere e identificare soluzioni efficaci ai problemi dell'elaborazione del linguaggio naturale.
Capacità comunicative: Capacità di illustrare il progetto sviluppato.
Capacità di apprendimento: Capacità di apprendere e applicare nuove tecniche di elaborazione del linguaggio naturale sia basate su quelle illustrate nel corso sia basate su approcci innovativi.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047640 -
NETWORK ALGORITHMS
|
Erogato in altro semestre o anno
|
10589555 -
PRACTICAL NETWORK DEFENSE
(obiettivi)
Obiettivi generali: Il corso affronta i fondamenti delle metodologie e degli strumenti per la protezione delle reti di calcolatori. Particolare attenzione viene dedicata all'applicazione pratica delle nozioni apprese.
Obiettivi specifici: Il corso affronta le relazioni fra i meccanismi di funzionamento delle reti di calcolatori e gli attacchi informatici, i meccanismi per la possibile identificazione e soppressione degli attacchi e la relativa implementazione mediante l'uso di adeguate strategie di progettazione e di strumenti specifici.
Conoscenza e comprensione: Elencare le minacce più ricorrenti dovute all'uso di specifici protocolli all'interno delle reti di elaboratori. Spiegare i meccanismi più utilizzati dagli attaccanti maliziosi e dai progettisti di malware per compromettere la sicurezza di un sistema di elaboratori. Spiegare i meccanismi di base utilizzati per l'identificazione dei tentativi di intrusione negli elaboratori e nelle reti.
Applicare conoscenza e comprensione: Alla fine del corso gli studenti saranno in grado di realizzare il monitoraggio del traffico scambiato nelle reti, di applicare una policy di sicurezza, di realizzare una scansione delle stazioni all'interno di una rete di elaboratori e una ricerca delle vulnerabilità di una rete di elaboratori. Gli studenti svilupperanno la capacità di selezionare le regole appropriate per proteggere una rete mediante firewall, selezionare i meccanismi più appropriati per proteggere un sistema di elaboratori collegati tramite rete e di eseguire le scelte di progettazione più opportune per implementare una strategia di "difesa in profondità", usando reti isolate e strumenti dedicati (VPN,proxy e firewall).
Capacità critiche e di giudizio: Gli studenti svilupperanno le capacità di analisi necessarie per valutare diverse alternative durante il processo di progettazione di una rete di elaboratori, con particolare riferimento alla valutazione delle scelte architetturali e dei rischi che possono comportare e agli obiettivi di sicurezza che il sistema vuole perseguire.
Capacità comuncative: Gli studenti impareranno a documentare le loro scelte, anche attraverso l'uso di strumenti di generazione di rapporti automatizzati. Avranno anche acquisito la capacità di preparare presentazioni relative ad argomenti scientifici.
Capacità di apprendimento successivo: Le nozioni acquisite durante il corso forniranno agli studenti una solida base di conoscenza per poter ulteriormente approfondire gli aspetti più tecnici, esplorare le alternative non affrontate per motivi di tempo e per mantenersi autonomamente informati sui continui sviluppi e aggiornamenti della sicurezza informatica applicata alle reti.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047642 -
SECURITY IN SOFTWARE APPLICATIONS
|
Erogato in altro semestre o anno
|
1047643 -
TOPICS IN PHYSICS
|
Erogato in altro semestre o anno
|
|
- -
A SCELTA DELLO STUDENTE
|
6
|
|
-
|
-
|
-
|
-
|
Attività formative a scelta dello studente (art.10, comma 5, lettera a)
|
ITA |
Secondo anno
Primo semestre
Insegnamento
|
CFU
|
SSD
|
Ore Lezione
|
Ore Eserc.
|
Ore Lab
|
Ore Studio
|
Attività
|
Lingua
|
10589621 -
ADVANCED MACHINE LEARNING
(obiettivi)
Obiettivi generali: Questo corso introduce gli studenti a metodi avanzati e ai più recenti approcci di machine learning, basati su modelli di deep neural network (DNN), e alle loro applicazioni in computer vision. Il corso include teoria, programmazione e la realizzazione pratica di un progetto finale. Sia per la parte di programmazione che per il progetto finale, gli studenti lavoreranno in gruppi e presenteranno le loro idee e i risultati del progetto alla classe.
Obiettivi specifici: La prima parte del corso include l’analisi di modelli DNN stato dell’arte per classificazione e regressione, applicate a detection (dove gli oggetti siano in un’immagine), pose estimation (se una persona sia in piedi, seduta o coricata) e re-identification (la stima di un vettore che rappresenti ogni persona in modo univoco). Il corso discute inoltre DNN per la realizzazione di obiettivi multi-task, ovvero per la stima congiunta di detection, re-identification, segmentation, depth estimation, etc. Questa prima parte include DNN che siano applicabili a video sequenze, grazie all’uso di memoria (e.g. LSTM) o attenzione (e.g. Transformers).
La seconda parte del corso approfondisce i modelli, le tecniche di apprendimento e di manipolazione di dati per la generalizzazione, per domain adaptation e meta-learning. Oltre a transfer learning (come un modello precedentemente imparato sia applicabile a altri compiti), si affronta la multi-modalità (l’uso di sensori di diversa natura come video camere di distanza o termiche) e l’auto-supervisione (e.g. imparare un modello DNN attraverso la risoluzione di puzzles) per l’auto-annotazione di grandi quantità di dati. Infine, si presenta domain adaptation (e.g. come applicare algoritmi di detection imparati con immagini diurne anche di notte) e meta-learning, uno dei più recenti temi di machine learning che mostra come imparare ad imparare un compito, e.g. in modalità di apprendimento online o imparando anche da pochi dati disponibili.
Conoscenza e comprensione: Al termine del corso gli studenti avranno familiarità con modelli DNN stato dell’arte che realizzino singole o molteplici funzioni, e con la generalizzazione di queste funzioni e l’uso effettivo di dati etichettati o non etichettati per l’apprendimento di macchine, il loro auto-apprendimento e il meta-learning.
Applicare conoscenza e comprensione: Al termine del corso gli studenti avranno acquisito familiarità con il progresso più recente in machine learning per lo svolgimento di vari compiti, l’adattamento di questi a nuovi domini ed il continuo auto-apprendimento di algoritmi e macchine. Sapranno spiegare gli algoritmi e scegliere le tecniche più appropriate per uno specifico problema. Saranno in grado di valutare implementazioni esistenti e di ideare e scrivere programmi per nuove soluzioni for specifiche funzioni o problemi nei due campi.
Capacità critiche e di giudizio Lo studente sarà in grado di analizzare un problema o una funzione e identificare le metodologie e tecniche da applicare più appropriate, sia dal punto di vista dell’effettiva risoluzione del problema (accuracy) che da quello della fattibilità, da un punto di vista di efficienza, della quantità di dati richiesta e delle loro annotazioni. Oltre che delle lezioni, la capacità critica e di giudizio sarà il risultato di assignments che testeranno programmazione e analisi e di un progetto finale, inclusivo di relazione scritta.
Capacità comunicative Lo studente acquisirà la capacità di esporre in modo chiaro ed organizzato le proprie conoscenze, capacità che verrà verificata sia mediante un progetto finale che nella sua presentazione orale. Lo studente sarà in grado di esprimere un’idea algoritmica in modo rigoroso ad alto livello, in pseudocodice, e di spiegare la struttura del codice scritto per questa.
Capacità di apprendimento successivo Le conoscenze acquisite permetteranno allo studente di affrontare lo studio di altri problemi in machine learning and computer vision. La capacità di apprendimento successivo sarà il risultato degli argomenti illustrati a lezione, che offriranno una vasta panoramica in advanced machine learning, e del loro progetto finale, per il quale gli studenti sceglieranno uno specifico argomento da approfondire, oltre quanto impartito a lezione.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
1041792 -
BIOMETRIC SYSTEMS
|
Erogato in altro semestre o anno
|
1047618 -
COMPUTER VISION
(obiettivi)
Obiettivi generali: Il corso si propone di esporre gli studenti ad un'ampia panoramica della Computer Vision.
Obiettivi specifici: Il corso si propone di fornire i principi, le metodologie di base e gli algoritmi fondamentali usati per la progettazione e l'applicazione di sistemi di visione artificiale
Conoscenza e comprensione: Introduzioni dei principi fondamentali e delle diverse aree della Computer Vision e conoscenze su risoluzione di problemi quali estrazioni delle caratteristi, tracking , analisi della scena, riconoscimento di oggetti, analisi di eventi, analisi delle emozioni.
Applicare conoscenza e comprensione: Saper applicare il portafoglio di tecniche e gli approcci illustrati per la progettazione e realizzazione di sistemi di visione artificiale.
Capacità critiche e di giudizio: Gli studenti apprenderanno tecniche che si sono rivelate utili per esperienza diretta e una vasta gamma di metodi matematici nella progettazione del sistema di visione.
Capacità comunicative: Gli studenti saranno in grado di interagire in modo proficuo con altri ricercatori in Computer Vision su un'ampia gamma di argomenti.
Capacità di apprendimento: Gli studenti saranno in grado di ampliare le loro conoscenze in modo autonomo consultando, secondo necessità, la letteratura scientifica basato sulla Computer Vision.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
1047628 -
FUNDAMENTALS OF COMPUTER GRAPHICS
(obiettivi)
Obiettivi generali Familiarità con il rendering Physically-based, il geometry processing and idee basiche di simulazione.
Obiettivi specifici Argomenti includono: path tracing, monte carlo methods, bidirectional reflectance distribution function, modelli a microfacet, importance sampling, multiple importance sampling, superfici di suddivisione, bump and normal mapping, scattering volumetrico.
Conoscenza e comprensione: Conoscenza su come funzionano gli algoritmi di rendering physically-based and quali light paths supportano; conoscenza su come modellare il look di superfici reali; conoscenza su come rappresentare la geometria in un renderer.
Applicazione di conoscenza e comprensione Implementazione di un path tracer ricco di funzioni con supporto per materiali arbitrari, scattering volumetrico e superfici continue e corrugate.
Autonomia di giudizio Essere in grado di valutare le prestazioni di diversi algoritmi di rendering realistico rispetto ai modi di interazione tra luci/superfici e luci/volumi.
Abilità comunicative Essere in grado di comunicare con chiarezza come funzionano gli algoritmi di rendering realistico, come sono sviluppati e quali scene 3D e feature di immagini supportano.
Capacità di apprendimento successivo: Essere in grado di apprendere algoritmi di rendering più complesso come metodi bidirezionali o Monte Carlo Markov Chain. Essere in grado di lavorare con sicurezza su renderer per produzione cinematografica.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
1047630 -
HUMAN COMPUTER INTERACTION ON THE WEB
|
Erogato in altro semestre o anno
|
1047635 -
MACHINE LEARNING
|
Erogato in altro semestre o anno
|
1047639 -
MULTIMODAL INTERACTION
|
Erogato in altro semestre o anno
|
1038141 -
NATURAL LANGUAGE PROCESSING
|
Erogato in altro semestre o anno
|
10593236 -
DEEP LEARNING AND APPLIED ARTIFICIAL INTELLIGENCE
|
Erogato in altro semestre o anno
|
|
1047613 -
ADVANCED ALGORITHMS
|
Erogato in altro semestre o anno
|
10589621 -
ADVANCED MACHINE LEARNING
(obiettivi)
Obiettivi generali: Questo corso introduce gli studenti a metodi avanzati e ai più recenti approcci di machine learning, basati su modelli di deep neural network (DNN), e alle loro applicazioni in computer vision. Il corso include teoria, programmazione e la realizzazione pratica di un progetto finale. Sia per la parte di programmazione che per il progetto finale, gli studenti lavoreranno in gruppi e presenteranno le loro idee e i risultati del progetto alla classe.
Obiettivi specifici: La prima parte del corso include l’analisi di modelli DNN stato dell’arte per classificazione e regressione, applicate a detection (dove gli oggetti siano in un’immagine), pose estimation (se una persona sia in piedi, seduta o coricata) e re-identification (la stima di un vettore che rappresenti ogni persona in modo univoco). Il corso discute inoltre DNN per la realizzazione di obiettivi multi-task, ovvero per la stima congiunta di detection, re-identification, segmentation, depth estimation, etc. Questa prima parte include DNN che siano applicabili a video sequenze, grazie all’uso di memoria (e.g. LSTM) o attenzione (e.g. Transformers).
La seconda parte del corso approfondisce i modelli, le tecniche di apprendimento e di manipolazione di dati per la generalizzazione, per domain adaptation e meta-learning. Oltre a transfer learning (come un modello precedentemente imparato sia applicabile a altri compiti), si affronta la multi-modalità (l’uso di sensori di diversa natura come video camere di distanza o termiche) e l’auto-supervisione (e.g. imparare un modello DNN attraverso la risoluzione di puzzles) per l’auto-annotazione di grandi quantità di dati. Infine, si presenta domain adaptation (e.g. come applicare algoritmi di detection imparati con immagini diurne anche di notte) e meta-learning, uno dei più recenti temi di machine learning che mostra come imparare ad imparare un compito, e.g. in modalità di apprendimento online o imparando anche da pochi dati disponibili.
Conoscenza e comprensione: Al termine del corso gli studenti avranno familiarità con modelli DNN stato dell’arte che realizzino singole o molteplici funzioni, e con la generalizzazione di queste funzioni e l’uso effettivo di dati etichettati o non etichettati per l’apprendimento di macchine, il loro auto-apprendimento e il meta-learning.
Applicare conoscenza e comprensione: Al termine del corso gli studenti avranno acquisito familiarità con il progresso più recente in machine learning per lo svolgimento di vari compiti, l’adattamento di questi a nuovi domini ed il continuo auto-apprendimento di algoritmi e macchine. Sapranno spiegare gli algoritmi e scegliere le tecniche più appropriate per uno specifico problema. Saranno in grado di valutare implementazioni esistenti e di ideare e scrivere programmi per nuove soluzioni for specifiche funzioni o problemi nei due campi.
Capacità critiche e di giudizio Lo studente sarà in grado di analizzare un problema o una funzione e identificare le metodologie e tecniche da applicare più appropriate, sia dal punto di vista dell’effettiva risoluzione del problema (accuracy) che da quello della fattibilità, da un punto di vista di efficienza, della quantità di dati richiesta e delle loro annotazioni. Oltre che delle lezioni, la capacità critica e di giudizio sarà il risultato di assignments che testeranno programmazione e analisi e di un progetto finale, inclusivo di relazione scritta.
Capacità comunicative Lo studente acquisirà la capacità di esporre in modo chiaro ed organizzato le proprie conoscenze, capacità che verrà verificata sia mediante un progetto finale che nella sua presentazione orale. Lo studente sarà in grado di esprimere un’idea algoritmica in modo rigoroso ad alto livello, in pseudocodice, e di spiegare la struttura del codice scritto per questa.
Capacità di apprendimento successivo Le conoscenze acquisite permetteranno allo studente di affrontare lo studio di altri problemi in machine learning and computer vision. La capacità di apprendimento successivo sarà il risultato degli argomenti illustrati a lezione, che offriranno una vasta panoramica in advanced machine learning, e del loro progetto finale, per il quale gli studenti sceglieranno uno specifico argomento da approfondire, oltre quanto impartito a lezione.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
10596281 -
AUTONOMOUS NETWORKING
|
Erogato in altro semestre o anno
|
1047615 -
AUTOMATIC SOFTWARE VERIFICATION METHODS
(obiettivi)
Obiettivi generali: Il corso si propone di fornire agli studenti metodi e strumenti per la verifica e validazione automatica di sistemi cyber-fisici.
Obiettivi specifici: Il corso di propone di mettere gli studenti in grado di comprendere tecniche avanzate di modellazione, verifica e validazione per sistemi cyber-fisici. Conoscenza e comprensione: Introduzione ad ampio spettro dei principi fondamentali della modellazione ed analisi dei sistemi cyber-fisici modellati come DAE (Differential Algebraic Equations).
Applicare conoscenza e comprensione: Saper applicare il portafoglio di tecniche e gli approcci illustrati per la modellazione, verifica e validazione di sistemi cyber-fisici.
Capacità critiche e di giudizio: Gli studenti saranno in grado di prendere autonomamente decisioni razionali sulle tecniche da impiegare nella modellazione, verifica e validazione di sistemi cyber-fisici.
Capacità comunicative: Gli studenti saranno in grado di interagire in modo proficuo con esperti di dominio su un'ampia gamma di argomenti relativi alla modellazione, verifica e validazione di sistemi cyber-fisici
Capacità di apprendimento: Gli studenti saranno in grado di ampliare le loro conoscenze in modo autonomo consultando, secondo necessità , la letteratura scientifica di rilievo.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1041764 -
BIG DATA COMPUTING
|
Erogato in altro semestre o anno
|
1041792 -
BIOMETRIC SYSTEMS
|
Erogato in altro semestre o anno
|
1047205 -
CLOUD COMPUTING
|
Erogato in altro semestre o anno
|
1047616 -
COMPUTATIONAL COMPLEXITY
(obiettivi)
Obiettivi generali: Il Corso introduce allo studio delle basi dell Teoria della Complessità computazionale.
Obiettivi specifici: - Concetto teorico della risorsa computazionale: running time - Concetto Teorico della risorsa computazionale: memoria - Classi di complessità temprali e spaziali - Il problema P = NP - Problemi computazionalmente non trattabili con risorse limitate - La classi di complessità L, P, NP, PSPACE, BPP, #P, IP, - Risultati Notevoli - Circuiti Booleani e funzioni booleane
Conoscenza e comprensione: Al termine del corso lo studente avrà acquisito la capacità di verificare proprietà di riduzione e completezza tra problemi computazionali, la conoscenza di teoremi notevoli nel campo della Teoria delle Complessità, la capacità di ragionare matematicamente sulla natura computazionale delle risorse di calcolo come running-time, memoria, randomness. Applicazione di conoscenza e comprensione: La conoscenza appresa è fondamentale in contesti come la Verifica Automatica, la Teoria dei Giochi, la analisi della complessità degli algoritmi.
Autonomia di giudizio: Viene rafforzata la autonomia di giudizio dello studente attraverso l'approfondimento della capacità di sintesi matematica, di ragionamento matematico e di problem solving, mediante tecniche basate sulla matemati Discreta e sulla Analisi Funzionale.
Abilità comunicative: Viene sviluppata l'abilità comunicativa dello studente nel presentare risultati nel campo dell'Informatica Teorica.
Capacità di apprendimento successivo: La complessità computazionale e alla base della comprensione della valutazione della fattibilità computazionale e algoritmico di qualsiasi problema del mondo reale. La sua conoscenza è dunque alla base dell'apprendimento di molte altre corsi e argeomtni, come la Crittografia, la verifica automatica del software e dell'hardware, la Teoria dei Giochi, l'Intelligenza Artificiale.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047617 -
COMPUTER NETWORK PERFORMANCE
|
Erogato in altro semestre o anno
|
1047618 -
COMPUTER VISION
(obiettivi)
Obiettivi generali: Il corso si propone di esporre gli studenti ad un'ampia panoramica della Computer Vision.
Obiettivi specifici: Il corso si propone di fornire i principi, le metodologie di base e gli algoritmi fondamentali usati per la progettazione e l'applicazione di sistemi di visione artificiale
Conoscenza e comprensione: Introduzioni dei principi fondamentali e delle diverse aree della Computer Vision e conoscenze su risoluzione di problemi quali estrazioni delle caratteristi, tracking , analisi della scena, riconoscimento di oggetti, analisi di eventi, analisi delle emozioni.
Applicare conoscenza e comprensione: Saper applicare il portafoglio di tecniche e gli approcci illustrati per la progettazione e realizzazione di sistemi di visione artificiale.
Capacità critiche e di giudizio: Gli studenti apprenderanno tecniche che si sono rivelate utili per esperienza diretta e una vasta gamma di metodi matematici nella progettazione del sistema di visione.
Capacità comunicative: Gli studenti saranno in grado di interagire in modo proficuo con altri ricercatori in Computer Vision su un'ampia gamma di argomenti.
Capacità di apprendimento: Gli studenti saranno in grado di ampliare le loro conoscenze in modo autonomo consultando, secondo necessità, la letteratura scientifica basato sulla Computer Vision.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047619 -
CONCURRENT SYSTEMS
|
Erogato in altro semestre o anno
|
1047622 -
CRYPTOGRAPHY
|
Erogato in altro semestre o anno
|
1047623 -
DATA AND NETWORK SECURITY
|
Erogato in altro semestre o anno
|
10593236 -
DEEP LEARNING AND APPLIED ARTIFICIAL INTELLIGENCE
|
Erogato in altro semestre o anno
|
1047624 -
DISTRIBUTED SYSTEMS
|
Erogato in altro semestre o anno
|
1047626 -
FORMAL METHODS IN SOFTWARE DEVELOPMENT
|
Erogato in altro semestre o anno
|
1047627 -
FOUNDATIONS OF DATA SCIENCE
|
Erogato in altro semestre o anno
|
1047628 -
FUNDAMENTALS OF COMPUTER GRAPHICS
(obiettivi)
Obiettivi generali Familiarità con il rendering Physically-based, il geometry processing and idee basiche di simulazione.
Obiettivi specifici Argomenti includono: path tracing, monte carlo methods, bidirectional reflectance distribution function, modelli a microfacet, importance sampling, multiple importance sampling, superfici di suddivisione, bump and normal mapping, scattering volumetrico.
Conoscenza e comprensione: Conoscenza su come funzionano gli algoritmi di rendering physically-based and quali light paths supportano; conoscenza su come modellare il look di superfici reali; conoscenza su come rappresentare la geometria in un renderer.
Applicazione di conoscenza e comprensione Implementazione di un path tracer ricco di funzioni con supporto per materiali arbitrari, scattering volumetrico e superfici continue e corrugate.
Autonomia di giudizio Essere in grado di valutare le prestazioni di diversi algoritmi di rendering realistico rispetto ai modi di interazione tra luci/superfici e luci/volumi.
Abilità comunicative Essere in grado di comunicare con chiarezza come funzionano gli algoritmi di rendering realistico, come sono sviluppati e quali scene 3D e feature di immagini supportano.
Capacità di apprendimento successivo: Essere in grado di apprendere algoritmi di rendering più complesso come metodi bidirezionali o Monte Carlo Markov Chain. Essere in grado di lavorare con sicurezza su renderer per produzione cinematografica.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047630 -
HUMAN COMPUTER INTERACTION ON THE WEB
|
Erogato in altro semestre o anno
|
1047631 -
INFORMATION SYSTEMS
|
Erogato in altro semestre o anno
|
1047633 -
INTENSIVE COMPUTATION
|
Erogato in altro semestre o anno
|
1047634 -
INTERNET OF THINGS
|
Erogato in altro semestre o anno
|
1047635 -
MACHINE LEARNING
|
Erogato in altro semestre o anno
|
1047636 -
MATHEMATICAL LOGIC FOR COMPUTER SCIENCE
|
Erogato in altro semestre o anno
|
10589557 -
METHODS IN COMPUTER SCIENCE EDUCATION: ANALYSIS
|
Erogato in altro semestre o anno
|
10589558 -
METHODS IN COMPUTER SCIENCE EDUCATION: DESIGN
|
Erogato in altro semestre o anno
|
1047638 -
MODELS OF COMPUTATION
|
Erogato in altro semestre o anno
|
1047639 -
MULTIMODAL INTERACTION
|
Erogato in altro semestre o anno
|
1038141 -
NATURAL LANGUAGE PROCESSING
|
Erogato in altro semestre o anno
|
1047640 -
NETWORK ALGORITHMS
(obiettivi)
Obiettivi generali Acquisire conoscenze relativamente al progetto di algoritmi complessi per risolvere problemi su grafi che modellano problemi inerenti le reti (cablate, senza fili e di sensori).
Obiettivi specifici Conoscenza e comprensione Al termine del corso gli studenti conosceranno le metodologie di base per l'analisi di problemi relativi alle reti e l’identificazione dei problemi su grafi che più si avvicinino; conosceranno inoltre gli algoritmi risolutivi di alcuni dei principali problemi su grafi.
Applicare conoscenza e comprensione: Al termine del corso gli studenti avranno acquisito familiarità con l’analisi delle problematiche legate alle reti. Saranno in grado di riconoscere quale sia il problema su grafi che più si avvicina e di progettare nuove strutture dati e i relativi algoritmi, rielaborando quelli esistenti, per risolvere il problema di partenza.
Capacità critiche e di giudizio Lo studente avrà le basi per analizzare la qualità di un algoritmo per le reti, sia dal punto di vista della effettiva risoluzione del problema che da quello della efficienza computazionale con la quale il problema viene risolto.
Capacità comunicative Lo studente acquisirà la capacità di esporre in modo chiaro ed organizzato le proprie conoscenze, capacità che verrà verificata durante la prova orale.
Capacità di apprendimento Le conoscenze acquisite permetteranno allo studente, una volta concluso il ciclo di studi, di affrontare problemi reali in modo critico ed efficace e di progettare soluzioni efficienti.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
10589555 -
PRACTICAL NETWORK DEFENSE
|
Erogato in altro semestre o anno
|
1047642 -
SECURITY IN SOFTWARE APPLICATIONS
|
Erogato in altro semestre o anno
|
1047643 -
TOPICS IN PHYSICS
|
Erogato in altro semestre o anno
|
|
- -
A SCELTA DELLO STUDENTE
|
6
|
|
-
|
-
|
-
|
-
|
Attività formative a scelta dello studente (art.10, comma 5, lettera a)
|
ITA |
AAF1246 -
ATTIVITA' FORMATIVA COMPLEMENTARE
(obiettivi)
Le attività formative complementari si possono inquadrare in uno o più ambiti disciplinari affini o integrativi a quelli di base o caratterizzanti, e possono proporre obiettivi formativi di carattere interdisciplinare o di approfondimento delle culture di contesto.
|
6
|
|
-
|
-
|
-
|
-
|
Ulteriori attività formative (art.10, comma 5, lettera d)
|
ITA |
Secondo semestre
Insegnamento
|
CFU
|
SSD
|
Ore Lezione
|
Ore Eserc.
|
Ore Lab
|
Ore Studio
|
Attività
|
Lingua
|
10589621 -
ADVANCED MACHINE LEARNING
|
Erogato in altro semestre o anno
|
1041792 -
BIOMETRIC SYSTEMS
|
Erogato in altro semestre o anno
|
1047618 -
COMPUTER VISION
|
Erogato in altro semestre o anno
|
1047628 -
FUNDAMENTALS OF COMPUTER GRAPHICS
|
Erogato in altro semestre o anno
|
1047630 -
HUMAN COMPUTER INTERACTION ON THE WEB
|
Erogato in altro semestre o anno
|
1047635 -
MACHINE LEARNING
|
Erogato in altro semestre o anno
|
1047639 -
MULTIMODAL INTERACTION
(obiettivi)
Obiettivi generali: Essere in grado di progettare e valutare un sistema multimodale
Obiettivi specifici: Conoscere le caratteristiche e le tecniche fondamentali relative ai diversi canali di comunicazione uomo-macchina: gesti, interazione vocale, ecc. Conoscere le modalità di cooperazione di singoli canali. Essere in grado di progettare/implementare la fusione/fissione delle informazioni su diversi canali.
Conoscenza e comprensione: Fondamenti teorici della comunicazione su diversi canali di interazione. Fondamenti teorici della progettazione di un sistema multimodale.
Applicare conoscenza e comprensione: Essere in grado di progettare ed implementare una applicazione multimodale.
Capacità critiche e di giudizio: Essere in grado di valutare le prestazioni e la robustezza di una applicazione multimodale.
Capacità comunicative: Essere in grado di comunicare/condividere i requisiti di un sistema multimodale, le modalità operative più adatte ad una certa applicazione, e le misure di performance del sistema
Capacità di apprendimento: Essere in grado di approfondire autonomamente gli argomenti presentati nel corso, relativamente a tecniche e metodi specifici/complessi.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
1038141 -
NATURAL LANGUAGE PROCESSING
|
Erogato in altro semestre o anno
|
10593236 -
DEEP LEARNING AND APPLIED ARTIFICIAL INTELLIGENCE
|
Erogato in altro semestre o anno
|
|
1041764 -
BIG DATA COMPUTING
|
Erogato in altro semestre o anno
|
1047617 -
COMPUTER NETWORK PERFORMANCE
|
Erogato in altro semestre o anno
|
1047619 -
CONCURRENT SYSTEMS
(obiettivi)
Obiettivi generali: Capire i concetti base dei sistemi concorrenti e le metodologie adottate nella soluzione dei problemi da essi posti
Obiettivi specifici: Mutua esclusione, diverse proprietà di liveness, semafori, monitor, transazioni, atomicità, concorrenza senza mutua esclusione, altre proprietà di liveness, oggetto universale e consenso. Sistemi di transizioni etichettate, semantica a interleaving, sincronizzazione, simulazione e bisimulazione, tecniche di verifica, passaggio di nomi, sistemi di tipo.
Conoscenza e comprensione: Capire the problematiche di base dei sistemi concorrenti e le relative soluzioni possibili, i principi fondazionali dei linguaggi di programmazione concorrente e le relative tecniche di verifica
Applicare conoscenza e comprensione: essere in grado di risolvere problematiche basilari di semplici sistemi concorrenti
Capacità critiche e di giudizio: capire vantaggi e svantaggi delle varie possibili soluzioni a problematiche di sistemi concorrenti
Capacità comunicative: sviluppare un linguaggio tecnico e formale in grado di spiegare le soluzioni ideate e i relativi meriti
Capacità di apprendimento: comprendere scenari di programmazione complessi e le relative soluzioni, anche sofisticate
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
1047624 -
DISTRIBUTED SYSTEMS
|
Erogato in altro semestre o anno
|
1047626 -
FORMAL METHODS IN SOFTWARE DEVELOPMENT
|
Erogato in altro semestre o anno
|
1047627 -
FOUNDATIONS OF DATA SCIENCE
|
Erogato in altro semestre o anno
|
1047634 -
INTERNET OF THINGS
|
Erogato in altro semestre o anno
|
|
1047613 -
ADVANCED ALGORITHMS
(obiettivi)
Obiettivi generali: Questo corso propone lo studio di algoritmi evoluti e di strutture dati avanzate per rendere efficiente la risoluzione di problemi complessi.
Obiettivi specifici:
Applicare conoscenza e comprensione: Al termine del corso lo studente avrà gli strumenti per individuare il nucleo matematico proprio del problema da affrontare e per identificare la tecnica più appropiata per il progetto algoritmico risolutivo dello stesso.
Capacità critiche e di giudizio Gli studenti saranno in grado di capire quale sia il modo migliore per rappresentare e organizzare in modo significativo le informazioni note del problema
Capacità comunicative: Lo studente avrà acquisito il giusto linguaggio per presentare idee algoritmiche che esprimono dettagliatamente le caratteristiche del problema da risolvere.
Capacità di apprendimento: Lo studente avrà acquisito la capacità di pensare in "modo algoritmico", ovvero sarà in grado di estrarre tutta la conoscenza possibile da una situazione semplicemnte tramite il ragionamento.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
10589621 -
ADVANCED MACHINE LEARNING
|
Erogato in altro semestre o anno
|
10596281 -
AUTONOMOUS NETWORKING
|
Erogato in altro semestre o anno
|
1047615 -
AUTOMATIC SOFTWARE VERIFICATION METHODS
|
Erogato in altro semestre o anno
|
1041764 -
BIG DATA COMPUTING
|
Erogato in altro semestre o anno
|
1041792 -
BIOMETRIC SYSTEMS
|
Erogato in altro semestre o anno
|
1047205 -
CLOUD COMPUTING
|
Erogato in altro semestre o anno
|
1047616 -
COMPUTATIONAL COMPLEXITY
|
Erogato in altro semestre o anno
|
1047617 -
COMPUTER NETWORK PERFORMANCE
|
Erogato in altro semestre o anno
|
1047618 -
COMPUTER VISION
|
Erogato in altro semestre o anno
|
1047619 -
CONCURRENT SYSTEMS
(obiettivi)
Obiettivi generali: Capire i concetti base dei sistemi concorrenti e le metodologie adottate nella soluzione dei problemi da essi posti
Obiettivi specifici: Mutua esclusione, diverse proprietà di liveness, semafori, monitor, transazioni, atomicità, concorrenza senza mutua esclusione, altre proprietà di liveness, oggetto universale e consenso. Sistemi di transizioni etichettate, semantica a interleaving, sincronizzazione, simulazione e bisimulazione, tecniche di verifica, passaggio di nomi, sistemi di tipo.
Conoscenza e comprensione: Capire the problematiche di base dei sistemi concorrenti e le relative soluzioni possibili, i principi fondazionali dei linguaggi di programmazione concorrente e le relative tecniche di verifica
Applicare conoscenza e comprensione: essere in grado di risolvere problematiche basilari di semplici sistemi concorrenti
Capacità critiche e di giudizio: capire vantaggi e svantaggi delle varie possibili soluzioni a problematiche di sistemi concorrenti
Capacità comunicative: sviluppare un linguaggio tecnico e formale in grado di spiegare le soluzioni ideate e i relativi meriti
Capacità di apprendimento: comprendere scenari di programmazione complessi e le relative soluzioni, anche sofisticate
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047622 -
CRYPTOGRAPHY
|
Erogato in altro semestre o anno
|
1047623 -
DATA AND NETWORK SECURITY
(obiettivi)
Obiettivi generali Lo scopo di Data and Network Security è quello di esporre le problematiche e le soluzioni più aggiornate in un settore come quello della sicurezza dei dati e delle reti informatiche che è in rapida evoluzione.
Obiettivi specifici Un primo obiettivo è di introdurre i concetti principali di sicurezza informatica che includono: Identificazione e autenticazione, Virus, trojan e canali coperti, Analisi degli attacchi più diffusi, Sicurezza del sistema operativo, Sicurezza delle comunicazioni. Un secondo obiettivo è di descrivere i principali problemi di ricerca nel campo. Ad esempio, quelli che ricadono in aree che includono le seguenti: comunicazioni anonime, sicurezza Blockchain, sicurezza cloud, Framing Attacks, Location privacy, sicurezza nell'apprendimento automatico, sicurezza della rete sociale, sicurezza delle reti Software-Defined.
Conoscenza e comprensione Gli studenti verranno a conoscenza dei fondamenti di sicurezza nei sistemi operativi, nelle reti wired/wireless, nella gestione dei dati e dei principali problemi di ricerca studiati in questi settori.
Applicazione di conoscenza e comprensione Alla fine del corso gli studenti saranno in grado di progettare l’architettura di un sistema informativo aziendale sicuro e di seguire in modo autonomo l'evoluzione del settore.
Capacità di giudizio Gli studenti svilupperanno le capacità di analisi necessarie per valutare diverse alternative durante il processo di progettazione dei sistemi informativi sicuri.
Capacità comunicative Gli studenti impareranno a documentare le loro scelte, anche attraverso l'uso di strumenti di generazione di rapporti automatizzati. Avranno anche acquisito la capacità di preparare presentazioni relative ad argomenti scientifici.
Capacità di proseguire l'apprendimento in modo autonomo Le nozioni acquisite durante il corso forniscono agli studenti una base di conoscenza per poter ulteriormente approfondire gli aspetti più tecnici, e per mantenersi autonomamente informati sui continui sviluppi e aggiornamenti nel settore della sicurezza informatica.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
10593236 -
DEEP LEARNING AND APPLIED ARTIFICIAL INTELLIGENCE
|
Erogato in altro semestre o anno
|
1047624 -
DISTRIBUTED SYSTEMS
|
Erogato in altro semestre o anno
|
1047626 -
FORMAL METHODS IN SOFTWARE DEVELOPMENT
|
Erogato in altro semestre o anno
|
1047627 -
FOUNDATIONS OF DATA SCIENCE
|
Erogato in altro semestre o anno
|
1047628 -
FUNDAMENTALS OF COMPUTER GRAPHICS
|
Erogato in altro semestre o anno
|
1047630 -
HUMAN COMPUTER INTERACTION ON THE WEB
|
Erogato in altro semestre o anno
|
1047631 -
INFORMATION SYSTEMS
(obiettivi)
Obiettivi generali
Il corso di sistemi informativi analizza differenti tipologie di sistemi informativi e come esse possono contribuire al successo degli obiettivi di un’azienda; permette di comprendere gli approcci e i modelli da usare per valutare la qualità dei processi, del software e dei servizi ICT; e fornisce le conoscenze di base per pianificare, gestire e controllare i progetti IT
Obiettivi specifici
• Conoscenza e comprensione – Modello funzionale e struttura informativa dei processi aziendali – esigenze di integrazione e requisiti di controllo dei dati dei sistemi informatici aziendali – sistemi e tecnologie per sviluppare e mantenere un e-business di successo – principali settori di applicazione dei sistemi di informazione in vari settori di mercato – organizzazione IT e modelli di valutazione della qualità IT – conoscenze di base di contesto, tecniche/metodologie e soft skill per la gestione dei progetti ICT – systems and technologies to develop&maintain a successful e-business – main application areas of info systems in various industries – ICT organization and mainstream techniques (e.g. quality management) – basic definitions (context), techniques/methodologies and soft skills for project management in ICT
• Applicazione di conoscenze e comprensione (capacità) – Analizzare le diverse vategorie di requisiti estratti da differenti categorie di utenti (stakeholder) di sistemi informativi – Selezionare l’appropriato modello per valutare la qualità dei processi ICT, del prodotto software e dei servizi ICT – Sviluppare uno studio di fattibilità selezionando l’appropriata architettura applicativa e tecnologica – Preparare, per un semplice progetto ICT, un piano di sviluppo nel rispetto dei vincoli di tempo, costi, qualità e definendo l’appropriata organizzazione – Controllare un progetto ICT in corso, applicando le tecniche di project management – Comprendere a valutare le lezioni apprese nei precedenti progetti
|
6
|
SECS-P/07
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047633 -
INTENSIVE COMPUTATION
(obiettivi)
Obiettivi generali: Lo scopo del corso è descrivere i metodi per risolvere problemi che richiedono calcolo intensivo, in particolare in ambito scientifico, e le architetture di calcolo parallele adatte.
Obiettivi specifici: Programmazione con Matlab. Rappresentazione di matrici sparse. Metodi in algebra lineare. Architetture avanzate di calcolatori paralleli.
Conoscenza e comprensione: Conoscere e capire i metodi del calcolo scientifico e le architetture di calcolo.
Applicare conoscenza e comprensione: Saper risolvere i problemi applicando i metodi del calcolo scientifico; saper usare correttamente la programmazione in matlab; essere in grado di analizzare i risultati ottenuti.
Capacità critiche e di giudizio: Saper scegliere il miglior approccio, tra i vari studiati, per risolvere un determinato problema; essere in grado di confrontare correttamente i risultati ottenuti con metodi diverse e diverse architetture.
Capacità comunicative: Essere in grado di motivare le proprie scelte nella risoluzione di un problema che richieda grande capacità di calcolo
Capacità di apprendimento: Capire le differenze e i vantaggi dei diversi approcci alla soluzione di un problema. Capire le differenze e i vantaggi nell’uso di diverse architetture.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047634 -
INTERNET OF THINGS
|
Erogato in altro semestre o anno
|
1047635 -
MACHINE LEARNING
|
Erogato in altro semestre o anno
|
1047636 -
MATHEMATICAL LOGIC FOR COMPUTER SCIENCE
|
Erogato in altro semestre o anno
|
10589557 -
METHODS IN COMPUTER SCIENCE EDUCATION: ANALYSIS
|
Erogato in altro semestre o anno
|
10589558 -
METHODS IN COMPUTER SCIENCE EDUCATION: DESIGN
|
Erogato in altro semestre o anno
|
1047638 -
MODELS OF COMPUTATION
|
Erogato in altro semestre o anno
|
1047639 -
MULTIMODAL INTERACTION
(obiettivi)
Obiettivi generali: Essere in grado di progettare e valutare un sistema multimodale
Obiettivi specifici: Conoscere le caratteristiche e le tecniche fondamentali relative ai diversi canali di comunicazione uomo-macchina: gesti, interazione vocale, ecc. Conoscere le modalità di cooperazione di singoli canali. Essere in grado di progettare/implementare la fusione/fissione delle informazioni su diversi canali.
Conoscenza e comprensione: Fondamenti teorici della comunicazione su diversi canali di interazione. Fondamenti teorici della progettazione di un sistema multimodale.
Applicare conoscenza e comprensione: Essere in grado di progettare ed implementare una applicazione multimodale.
Capacità critiche e di giudizio: Essere in grado di valutare le prestazioni e la robustezza di una applicazione multimodale.
Capacità comunicative: Essere in grado di comunicare/condividere i requisiti di un sistema multimodale, le modalità operative più adatte ad una certa applicazione, e le misure di performance del sistema
Capacità di apprendimento: Essere in grado di approfondire autonomamente gli argomenti presentati nel corso, relativamente a tecniche e metodi specifici/complessi.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1038141 -
NATURAL LANGUAGE PROCESSING
|
Erogato in altro semestre o anno
|
1047640 -
NETWORK ALGORITHMS
|
Erogato in altro semestre o anno
|
10589555 -
PRACTICAL NETWORK DEFENSE
|
Erogato in altro semestre o anno
|
1047642 -
SECURITY IN SOFTWARE APPLICATIONS
|
Erogato in altro semestre o anno
|
1047643 -
TOPICS IN PHYSICS
(obiettivi)
Obiettivi generali: L’obiettivo principale del corso è di introdurre gli studenti alla meccanica quantistica e alla applicazione al calcolo quantistico
Obiettivi specifici:
Conoscenza e comprensione: Lo studente acquisirà tutti gli elementi necessari a comprendere il funzionamento di un calcolatore quantistico.
Applicazione di conoscenza e comprensione: Le tecniche apprese verranno applicate nei più famosi algoritmi quantistici oggi disponibili, quali la quantum cryptography, l’algoritmo di Shor e quello di Grover.
Autonomia di giudizio: In aula si cerca di stimolare il più possibile le discussioni sui vari aspetti della meccanica quantistica, specialmente quelli meno intuitivi, come l’entanglement, e si incoraggiano gli studenti a proporre argomenti di loro interesse inerenti il corso.
Abilità comunicative: Per superare l’esame finale, gli studenti devono illustrare due tesine in power point (o equivalente) su due argomenti, uno di meccanica quantistica e uno di calcolo quantistico. Questa attività è senza dubbio utile per preparare gli studenti a presentare in pubblico il loro lavoro.
Capacità di apprendimento successivo: Durante tutto il corso vengono indicati dei testi di riferimento con i quali gli studenti possono approfondire quanto appreso, fino ad un livello professionale. Inoltre vengono presentati anche alcuni linguaggi di simulazione del calcolo quantistico, utili per lo sviluppo di algoritmi per computer quantistici.
|
6
|
FIS/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
|
AAF1034 -
PROVA FINALE
(obiettivi)
La prova finale consiste nella discussione di una tesi di laurea magistrale, costituita da un documento scritto, preferibilmente in lingua inglese, che presenta i risultati di uno studio originale condotto su un problema di natura applicativa, sperimentale o di ricerca.
Questo permetterà di valutare la capacità di applicare le conoscenze apprese a un problema specifico, la capacità di prendere decisioni autonome e di comunicare gli aspetti metodologici e tecnici del lavoro svolto.
|
36
|
|
-
|
-
|
-
|
-
|
Per la prova finale e la lingua straniera (art.10, comma 5, lettera c)
|
ITA |
Software Engineering
Primo anno
Primo semestre
Insegnamento
|
CFU
|
SSD
|
Ore Lezione
|
Ore Eserc.
|
Ore Lab
|
Ore Studio
|
Attività
|
Lingua
|
1047613 -
ADVANCED ALGORITHMS
|
Erogato in altro semestre o anno
|
1047615 -
AUTOMATIC SOFTWARE VERIFICATION METHODS
|
Erogato in altro semestre o anno
|
1047619 -
CONCURRENT SYSTEMS
|
Erogato in altro semestre o anno
|
1047624 -
DISTRIBUTED SYSTEMS
(obiettivi)
Obiettivi generali Il corso ha come obiettivo di illustrare i concetti fondamentali dei sistemi distribuiti e la loro implementazione nei sistemi reali a larga scala moderni.
Obiettivi specifici Gli studenti si familiarizzeranno con tecniche di analisi, progetto e monitoraggio di sistemi distribuiti
Conoscenza e comprensione Al termine del corso gli studenti avranno acquisito conoscenze avanzate relative al monitoraggio delle computazioni distribuite, fault tollerance e failure detectors, consistenza e consenso, orologi logici e vector clocks per i sistemi asincroni,
Applicare conoscenza e comprension Al termine del corso gli studenti saranno in grado di applicare le conoscenze acquisite all'analisi di sistemi reali come ad esempio Chord e Amazon.
Capacità critiche e di giudizio Lo studente otterrà la capacità di analisi e valutazione della correttezza e dell’efficienza delle computazione distribuite, di comprendere le loro caratteristiche principali e di valutare in maniera critica pregi e difetti.
Capacità comunicative Lo studente acquisirà la capacità di esporre in modo chiaro ed organizzato le proprie conoscenze, capacità che verrà verificata durante la prova orale.
Capacità di apprendimento successivo Le conoscenze acquisite permetteranno allo studente di affrontare lo studio di ulteriori ma più specifici protocolli di tipo distribuito in modo approfondito e completo, e di essere in grado di progettare soluzioni di system design a partire da quelle dei sistemi reali affrontati in classe.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
1047626 -
FORMAL METHODS IN SOFTWARE DEVELOPMENT
(obiettivi)
Obiettivi generali: L'insegnamento è indirizzato all'acquisizione delle conoscenze logiche e di modellazione necessarie alla verifica di sistemi hardware e software complessi (con particolare riferimento al Model Checking).
Obiettivi specifici:
Conoscenza e comprensione: Alla fine del corso lo studente avrà piena comprensione degli strumenti di modellazione proposti (model checkers).
Capacità di applicare conoscenza e comprensione: Alla fine del corso lo studente sarà in grado di utilizzare gli strumenti presentati durante il corso e di approfondirne lo studio consultando autonomamente altri testi dedicati all'argomento e materiale scientifico che lo riguarda.
Capacità critiche e di giudizio: Le conoscenze acquisite permetteranno allo studente di affrontare le applicazioni proposte in altri insegnamenti e affrontare i problemi che gli verranno proposti nella carriera lavorativa in tema di modellazione e verifica di sistemi.
Capacità di comunicazione: Lo studente viene stimolato ad esporre e comunicare le proprie esperienze nella cerchia dei suoi colleghi.
Capacità di proseguire lo studio: Il corso tratta soltanto alcuni dei campi proponibili, ma dà notizia anche di un ampio spettro di tecniche che possono essere utilizzate in questo campo in modo che egli possa criticamente scegliere a seconda dei casi.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
1047642 -
SECURITY IN SOFTWARE APPLICATIONS
(obiettivi)
Obiettivi generali
I fondamenti della sicurezza nei programmi software
Obiettivi specifici
Metodologie e strumenti per trovare e rimuovere le vulnerabilità più comuni del software e per sviluppare software senza falle di sicurezza Conoscenza e comprensione
conoscenza e capacità di comprensione delle tecniche più efficaci per la rimozione di vulnerabilità dal codice e per sviluppare software che soddisfi specifiche politiche di sicurezza. Applicare conoscenza e comprensione
Essere in grado di applicare e trasferire la propria conoscenza delle metodologie alla scelta delle tecniche e strumenti appropriati risolvere problemi di sicurezza del software Autonomia di giudizio
Capacità d’interpretazione autonoma per proporre soluzioni appropriate a problemi di sicurezza software congruenti con le tecnologie disponibili. Abilità comunicative
Capacità di presentare e di argomentare le proprie scelte in merito alle metodologie ed agli strumenti utilizzati per le soluzioni proposte, sia con colleghi che con utenti Capacità di apprendimento successivo
Capacità di apprendere e approfondire nuove tecniche nell’ambito della sicurezza software informatica sia degli aspetti metodologici sia di quelli tecnologici
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
|
10589621 -
ADVANCED MACHINE LEARNING
|
Erogato in altro semestre o anno
|
1041764 -
BIG DATA COMPUTING
|
Erogato in altro semestre o anno
|
1047205 -
CLOUD COMPUTING
|
Erogato in altro semestre o anno
|
1047628 -
FUNDAMENTALS OF COMPUTER GRAPHICS
|
Erogato in altro semestre o anno
|
1047630 -
HUMAN COMPUTER INTERACTION ON THE WEB
|
Erogato in altro semestre o anno
|
1047635 -
MACHINE LEARNING
(obiettivi)
Obiettivi generali Il corso introduce le motivazioni, paradigm e applicazioni dei sistemi di apprendimento automatic. Si tratta di un corso introduttivo. Obiettivi specifici Apprendimento supervisionato: alberi di decisione, apprendimento di istanze, naïve Bayes, support vector machine, neural networks, deep learning, ensamble methods. Apprendimento non supervisionato: clustering, association rules. Apprendimento semi-supervisionato: Reinforcement learning. Genetic algorithms e genetic programming. Problemi generali: underfitting, overfitting, model selection, error analysis.
Conoscenza e comprensione: Gli studenti impareranno quali algoritmi si adattano meglio a quali categorie di problemi, come descrivere il dominio dell'applicazione, come regolare parametri e iperparametri del modello, come testare le prestazioni.
Applicazione di conoscenza e comprensione: Gli studenti faranno esperimenti utilizzando toolkits di ML quali Weka, Tensor Flow e scikit-lear.
Autonomia di giudizio: Gli studenti saranno in grado di comprendere le categorie di problemi che possono essere risolti in modo efficiente con algoritmi di apprendimento automatico, a quali condizioni.
Abilità comunicative: Queste saranno valutate durante gli esami scritti e la reportistica del progetto.
Capacità di apprendimento successivo: Gli studenti riceveranno una solida base per approfondire ulteriormente i metodi più avanzati, come il deep learning, l'apprendimento probabilistico ed altri.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
1047636 -
MATHEMATICAL LOGIC FOR COMPUTER SCIENCE
|
Erogato in altro semestre o anno
|
1047638 -
MODELS OF COMPUTATION
(obiettivi)
Obiettivi generali L'insegnamento è indirizzato all'acquisizione delle conoscenze matematiche relative ad aspetti fondamentali dei linguaggi di programmazione funzionale e imperativa con particolare attenzione ai meccanismi di esecuzione dei programmi.
Obiettivi specifici
Conoscenza e comprensione: Alla fine del corso lo studente avrà piena comprensione degli strumenti matematici proposti.
Capacità di applicare conoscenza e comprensione: Lo studente sarà in grado di approfondire lo studio consultando autonomamente manuali o pubblicazioni scientifiche.
Capacità critiche e di giudizio: Le conoscenze acquisite permetteranno allo studente di individuare e confrontare in altri ambiti gli argomenti proposti nell'uso di linguaggi di programmazione, in particolare nell'ambito lavorativo.
Capacità di comunicare quanto si è appreso: Lo studente viene stimolato ad esporre e comunicare le proprie esperienze ai suoi colleghi.
Capacità di proseguire lo studio in modo autonomo nel corso della vita: Il corso tratta aspetti fondamentali della programmazione, assicurando allo studente la possibilità di individuarli autonomamente nell'uso di ogni particolare linguaggio.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
10593236 -
DEEP LEARNING AND APPLIED ARTIFICIAL INTELLIGENCE
|
Erogato in altro semestre o anno
|
|
1047613 -
ADVANCED ALGORITHMS
|
Erogato in altro semestre o anno
|
10589621 -
ADVANCED MACHINE LEARNING
|
Erogato in altro semestre o anno
|
10596281 -
AUTONOMOUS NETWORKING
(obiettivi)
Obbiettivi generali: Il corso fornirà agli studenti la capacità di affrontare le problematiche legate alla progettazione, implementazione e utilizzo dei sistemi di reti autonomi. Il corso presenterà sia le basi teoriche che gli aspetti pratici che è necessario conoscere per sviluppare questi sistemi.
Obiettivi specifici: La combinazione di molti dispositivi collegati eterogenei, inclusi dispositivi in rapido movimento e capacità di comunicazione avanzate che consentono interazioni in tempo reale sta portando alla creazione di sistemi su una scala e / o un livello di complessità che va oltre la capacità degli umani di comprendere e controllare pienamente . La gestione e il funzionamento di questi sistemi di rete richiedono un livello estremamente elevato di automazione intelligente. Scopo di questo corso è fornire conoscenze sulle principali tecnologie legate alla rete la cui interazione sarà responsabile per rendere autonomi i sistemi di rete. Queste tecnologie, basate principalmente sull'apprendimento di rinforzo (RL), consentono ai sistemi di reagire a ciò che sta accadendo nel loro ambiente e di rispondere di conseguenza.
Conoscenza e comprensione: Alla fine del corso gli studenti avranno conoscenze sulle tecnologie - sistemi di comunicazione in rete wireless come reti IoT, reti di backscattering e reti aeree - e metodologie - apprendimento di rinforzo - per progettare reti autonome. In particolare, il corso si concentrerà su problemi di comunicazione e networking di reti autonome e possibili soluzioni.
Applicare conoscenza e comprensione: Alla fine del corso gli studenti conosceranno le tecnologie e le metodologie per progettare reti autonome. In particolare, il corso si concentrerà su problemi di comunicazione e networking nelle reti autonome e possibili soluzioni.
Capacità critiche e di giudizio: Gli studenti svilupperanno le capacità di analisi necessarie per valutare diverse scelte progettuali alternative selezionando la migliore per ogni specifico scenario applicativo e tipo di tecnologia.
Capacità comunicative: Gli studenti impareranno ad analizzare e presentare articoli scientifici, idee di ricerca o soluzioni tecniche di settore, descrivendole in modo sintetico ed accurato, con un linguaggio tecnico adeguato.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047615 -
AUTOMATIC SOFTWARE VERIFICATION METHODS
|
Erogato in altro semestre o anno
|
1041764 -
BIG DATA COMPUTING
|
Erogato in altro semestre o anno
|
1041792 -
BIOMETRIC SYSTEMS
(obiettivi)
Obiettivi generali: Essere in grado di progettare e valutare un sistema biometrico o multibiometrico
Obiettivi specifici: Conoscere le caratteristiche e le tecniche fondamentali relative alle biometrie fisiche come volto, impronte, iride, ecc., e comportamentali come camminata, firma (caratteristiche dinamiche), stile di battitura, ecc. Conoscere le caratteristiche dell’architettura di un sistema biometrico: sistemi unimodali e multimodali. Essere in grado di valutare le prestazioni di un sistema biometrico in base alla modalità adottata: verifica, identificazione. Essere in grado di valutare/garantire la robustezza di un sistema biometrico rispetto ad attacchi di spoofing (furto di identità).
Conoscenza e comprensione: Fondamenti teorici della progettazione di un sistema biometrico e delle tecniche di estrazione/confronto delle caratteristiche specifiche per i principali tratti biometrici.
Applicare conoscenza e comprensione: Essere in grado di progettare ed implementare una applicazione di riconoscimento biometrico per almeno uno tratto biometrico.
Capacità critiche e di giudizio: Essere in grado di valutare le prestazioni e la robustezza agli attacchi di un sistema biometrico. Essere in grado di trasferire tecniche e protocolli in contesti diversi.
Capacità comunicative: Essere in grado di comunicare/condividere i requisiti di un sistema biometrico, le modalità operative più adatte ad una certa applicazione, e le misure di performance del sistema
Capacità di apprendimento: Essere in grado di approfondire autonomamente gli argomenti presentati nel corso, relativamente a tecniche e metodi specifici/complessi o a tratti biometrici non presenti tra gli argomenti.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047205 -
CLOUD COMPUTING
|
Erogato in altro semestre o anno
|
1047616 -
COMPUTATIONAL COMPLEXITY
|
Erogato in altro semestre o anno
|
1047617 -
COMPUTER NETWORK PERFORMANCE
(obiettivi)
Obiettivi generali: Lo scopo del corso è lo studio di metodi per stimare le prestazioni dei sistemi di rete esistenti e dimensionare nuovi sistemi ad alte prestazioni.
Obiettivi specifici: Analisi di processi stocastici discreti e continui, reti di code, metodi di misurazione delle reti tramite network tomography, analisi delle prestazioni di sistemi wired e wireless.
Conoscenza e comprensione: Il corso permettera` di sviluppare la capacita` di caratterizzare i problemi prestazionali nelle reti di calcolatori e individuare le criticita` di questi sistemi. Applicare conoscenza e comprensione: Attraverso il corso lo studente imparera` a riconoscere i problemi prestazionali e a progettare le relative soluzioni, attraverso la modellazione analitica e la soluzione di relativi problemi di ottimizzazione.
Capacità critiche e di giudizio: Il corso mettera` lo studente in condizione di saper scegliere, dato un problema, la migliore strategia risolutiva, fermo restando la comprensione di vincoli esistenti in termini di dimensionamento e costi delle soluzioni possibili.
Capacità comunicative: Lo studente sara` in grado di motivare le proprie scelte nella proposta di uno specifico approccio risolutivo di un problema relativo alle prestazioni di una rete di calcolatori, e fornire una analisi comparativa dell’approccio scelto con altri approcci possibili. Capacità di apprendimento: Lo studente sviluppera` capacita` di studio autonome e di comprensione e valutazione critica di nuove metodologie, tecnologie e modelli di sviluppo per sistemi di rete ad alte prestazioni.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047618 -
COMPUTER VISION
|
Erogato in altro semestre o anno
|
1047619 -
CONCURRENT SYSTEMS
|
Erogato in altro semestre o anno
|
1047622 -
CRYPTOGRAPHY
(obiettivi)
Obiettivi Generali: Lo scopo del corso è quello di tramandare i fondamenti della crittografia, che è la componente principale per la sicurezza nelle applicazioni digitali odierne.
Obiettivi Specifici: Gli studenti impareranno la metodologia della sicurezza dimostrabile, che permette di dimostrare la sicurezza dei moderni crittosistemi in senso matematico.
Conoscenza e Comprensione: -) Conoscenza dei fondamenti matematici della crittografia moderna. -) Conoscenza delle principali assunzioni crittografiche, su cui si basa la sicurezza dei moderni crittosistemi. -) Conoscenza degli schemi crittografici usati nella vita reale. Comprensione delle loro proprietà (teoriche e pratiche).
Applicare Conoscenza e Comprensione: -) Come selezionare la giusta primitiva crittografica per una data applicazione. -) Come analizzare la sicurezza di un dato crittosistema.
Capacità critiche e di giudizio: Gli studenti saranno in grado di giudicare se una data primitiva crittografica è sicura oppure no.
Capacità Comunicative: Come descrivere la sicurezza di una costruzione crittografica nel linguaggio della sicurezza dimostrabile.
Capacità di Apprendimento Successivo: Gli studenti interessati alla ricerca verranno a conoscenza di alcuni problemi aperti nell'area, ed otterranno le basi necessarie per studi più approfonditi in materia.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047623 -
DATA AND NETWORK SECURITY
|
Erogato in altro semestre o anno
|
10593236 -
DEEP LEARNING AND APPLIED ARTIFICIAL INTELLIGENCE
|
Erogato in altro semestre o anno
|
1047624 -
DISTRIBUTED SYSTEMS
(obiettivi)
Obiettivi generali Il corso ha come obiettivo di illustrare i concetti fondamentali dei sistemi distribuiti e la loro implementazione nei sistemi reali a larga scala moderni.
Obiettivi specifici Gli studenti si familiarizzeranno con tecniche di analisi, progetto e monitoraggio di sistemi distribuiti
Conoscenza e comprensione Al termine del corso gli studenti avranno acquisito conoscenze avanzate relative al monitoraggio delle computazioni distribuite, fault tollerance e failure detectors, consistenza e consenso, orologi logici e vector clocks per i sistemi asincroni,
Applicare conoscenza e comprension Al termine del corso gli studenti saranno in grado di applicare le conoscenze acquisite all'analisi di sistemi reali come ad esempio Chord e Amazon.
Capacità critiche e di giudizio Lo studente otterrà la capacità di analisi e valutazione della correttezza e dell’efficienza delle computazione distribuite, di comprendere le loro caratteristiche principali e di valutare in maniera critica pregi e difetti.
Capacità comunicative Lo studente acquisirà la capacità di esporre in modo chiaro ed organizzato le proprie conoscenze, capacità che verrà verificata durante la prova orale.
Capacità di apprendimento successivo Le conoscenze acquisite permetteranno allo studente di affrontare lo studio di ulteriori ma più specifici protocolli di tipo distribuito in modo approfondito e completo, e di essere in grado di progettare soluzioni di system design a partire da quelle dei sistemi reali affrontati in classe.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047626 -
FORMAL METHODS IN SOFTWARE DEVELOPMENT
(obiettivi)
Obiettivi generali: L'insegnamento è indirizzato all'acquisizione delle conoscenze logiche e di modellazione necessarie alla verifica di sistemi hardware e software complessi (con particolare riferimento al Model Checking).
Obiettivi specifici:
Conoscenza e comprensione: Alla fine del corso lo studente avrà piena comprensione degli strumenti di modellazione proposti (model checkers).
Capacità di applicare conoscenza e comprensione: Alla fine del corso lo studente sarà in grado di utilizzare gli strumenti presentati durante il corso e di approfondirne lo studio consultando autonomamente altri testi dedicati all'argomento e materiale scientifico che lo riguarda.
Capacità critiche e di giudizio: Le conoscenze acquisite permetteranno allo studente di affrontare le applicazioni proposte in altri insegnamenti e affrontare i problemi che gli verranno proposti nella carriera lavorativa in tema di modellazione e verifica di sistemi.
Capacità di comunicazione: Lo studente viene stimolato ad esporre e comunicare le proprie esperienze nella cerchia dei suoi colleghi.
Capacità di proseguire lo studio: Il corso tratta soltanto alcuni dei campi proponibili, ma dà notizia anche di un ampio spettro di tecniche che possono essere utilizzate in questo campo in modo che egli possa criticamente scegliere a seconda dei casi.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047627 -
FOUNDATIONS OF DATA SCIENCE
(obiettivi)
Obiettivi generali: Acquisire i fondamenti della scienza dai dati e dell'apprendimento automatico.
Obiettivi specifici: Rendere gli studenti consapevoli degli strumenti teorici e pratici della scienza dei dati e dell'apprendimento automatico, nonché dei loro limiti intrinseci; rendere gli studenti in grado di affrontare problemi reali attraverso gli strumenti più appropriati.
Conoscenza e comprensione: Il corso fornisce le nozioni, tecniche e metodologie di base utilizzate nell'ambito della scienza dei dati e dell'apprendimento automatico. Fornisce inoltre i rudimenti di programmazione necessari ad applicare la teoria a casi reali
Applicare conoscenza e comprensione: Alla fine del corso, gli studenti sapranno affrontare problemi concreti di scienza dei dati, dalla loro formalizzazione sino alla manipolazione dei dati attraverso appropriati strumenti software.
Capacità critiche e di giudizio: Gli studenti saranno in grado di scegliere le tecniche da applicare al caso specifico e di valutarne le prestazioni.
Capacità comunicative: Gli studenti saranno in grado di rappresentare e comunicare l'informazione estratta dai dati, attraverso l'uso razionale di grafici e indicatori.
Capacità di apprendimento: Gli studenti saranno messi in grado di apprendere autonomamente nozioni sia teoriche che pratiche del campo.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047628 -
FUNDAMENTALS OF COMPUTER GRAPHICS
|
Erogato in altro semestre o anno
|
1047630 -
HUMAN COMPUTER INTERACTION ON THE WEB
|
Erogato in altro semestre o anno
|
1047631 -
INFORMATION SYSTEMS
|
Erogato in altro semestre o anno
|
1047633 -
INTENSIVE COMPUTATION
|
Erogato in altro semestre o anno
|
1047634 -
INTERNET OF THINGS
|
Erogato in altro semestre o anno
|
1047635 -
MACHINE LEARNING
(obiettivi)
Obiettivi generali Il corso introduce le motivazioni, paradigm e applicazioni dei sistemi di apprendimento automatic. Si tratta di un corso introduttivo. Obiettivi specifici Apprendimento supervisionato: alberi di decisione, apprendimento di istanze, naïve Bayes, support vector machine, neural networks, deep learning, ensamble methods. Apprendimento non supervisionato: clustering, association rules. Apprendimento semi-supervisionato: Reinforcement learning. Genetic algorithms e genetic programming. Problemi generali: underfitting, overfitting, model selection, error analysis.
Conoscenza e comprensione: Gli studenti impareranno quali algoritmi si adattano meglio a quali categorie di problemi, come descrivere il dominio dell'applicazione, come regolare parametri e iperparametri del modello, come testare le prestazioni.
Applicazione di conoscenza e comprensione: Gli studenti faranno esperimenti utilizzando toolkits di ML quali Weka, Tensor Flow e scikit-lear.
Autonomia di giudizio: Gli studenti saranno in grado di comprendere le categorie di problemi che possono essere risolti in modo efficiente con algoritmi di apprendimento automatico, a quali condizioni.
Abilità comunicative: Queste saranno valutate durante gli esami scritti e la reportistica del progetto.
Capacità di apprendimento successivo: Gli studenti riceveranno una solida base per approfondire ulteriormente i metodi più avanzati, come il deep learning, l'apprendimento probabilistico ed altri.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047636 -
MATHEMATICAL LOGIC FOR COMPUTER SCIENCE
|
Erogato in altro semestre o anno
|
10589557 -
METHODS IN COMPUTER SCIENCE EDUCATION: ANALYSIS
|
Erogato in altro semestre o anno
|
10589558 -
METHODS IN COMPUTER SCIENCE EDUCATION: DESIGN
(obiettivi)
Obiettivi generali: Conoscere ed applicare le più recenti metodologie di insegnamento dell'Informatica nella scuola superiore. Il corso svilupperà una serie di use-cases relativi alle tecniche di insegnamento dell'Informatica a scuola.
Obiettivi specifici: • Progettazione e sviluppo di metodologie di insegnamento dell'informatica: illustrazione dei principi e dei metodi per la costruzione di attività e più in generale di un curriculum di informatica coerente con gli obiettivi fissati dalle indicazioni nazionali per i licei e dalle linee guida per gli istituti tecnici e professionali. • Metodologie e tecnologie didattiche per lo studio del rapporto dell'informatica con la società attuale, e in particolare degli aspetti etici legati, per esempio, al trattamento dei dati personali, all'automazione di decisioni e raccomandazioni, alla ridefinizione del concetto di copyright.
Conoscenza e comprensione: Principi e metodi di costruzione di attività didattiche di C.S. nella scuola superiore. Aspetti etici dell'uso dei dati e dei contenuti personali.
Applicazione di conoscenza e comprensione: Agli studenti verrà richiesto di scegliere e sviluppare alcuni moduli didattici per la scuola superiore.
Autonomia di giudizio: Lo studente sarà autonomo nello scegliere i moduli da sviluppare e nella loro fase di progetto e realizzazione.
Abilità comunicative: Gli studenti dovranno dimostrare di saper produrre moduli didattici di qualità, con una forte capacità di interessare e comunicare con precisione gli argomenti chiave della lezione da sviluppare.
Capacità di apprendimento successivo: La metodologia di progetto dei moduli didattici vista nel corso sarà facilmente applicabile ad altri tipi di corsi.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047638 -
MODELS OF COMPUTATION
(obiettivi)
Obiettivi generali L'insegnamento è indirizzato all'acquisizione delle conoscenze matematiche relative ad aspetti fondamentali dei linguaggi di programmazione funzionale e imperativa con particolare attenzione ai meccanismi di esecuzione dei programmi.
Obiettivi specifici
Conoscenza e comprensione: Alla fine del corso lo studente avrà piena comprensione degli strumenti matematici proposti.
Capacità di applicare conoscenza e comprensione: Lo studente sarà in grado di approfondire lo studio consultando autonomamente manuali o pubblicazioni scientifiche.
Capacità critiche e di giudizio: Le conoscenze acquisite permetteranno allo studente di individuare e confrontare in altri ambiti gli argomenti proposti nell'uso di linguaggi di programmazione, in particolare nell'ambito lavorativo.
Capacità di comunicare quanto si è appreso: Lo studente viene stimolato ad esporre e comunicare le proprie esperienze ai suoi colleghi.
Capacità di proseguire lo studio in modo autonomo nel corso della vita: Il corso tratta aspetti fondamentali della programmazione, assicurando allo studente la possibilità di individuarli autonomamente nell'uso di ogni particolare linguaggio.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047639 -
MULTIMODAL INTERACTION
|
Erogato in altro semestre o anno
|
1038141 -
NATURAL LANGUAGE PROCESSING
|
Erogato in altro semestre o anno
|
1047640 -
NETWORK ALGORITHMS
|
Erogato in altro semestre o anno
|
10589555 -
PRACTICAL NETWORK DEFENSE
|
Erogato in altro semestre o anno
|
1047642 -
SECURITY IN SOFTWARE APPLICATIONS
(obiettivi)
Obiettivi generali
I fondamenti della sicurezza nei programmi software
Obiettivi specifici
Metodologie e strumenti per trovare e rimuovere le vulnerabilità più comuni del software e per sviluppare software senza falle di sicurezza Conoscenza e comprensione
conoscenza e capacità di comprensione delle tecniche più efficaci per la rimozione di vulnerabilità dal codice e per sviluppare software che soddisfi specifiche politiche di sicurezza. Applicare conoscenza e comprensione
Essere in grado di applicare e trasferire la propria conoscenza delle metodologie alla scelta delle tecniche e strumenti appropriati risolvere problemi di sicurezza del software Autonomia di giudizio
Capacità d’interpretazione autonoma per proporre soluzioni appropriate a problemi di sicurezza software congruenti con le tecnologie disponibili. Abilità comunicative
Capacità di presentare e di argomentare le proprie scelte in merito alle metodologie ed agli strumenti utilizzati per le soluzioni proposte, sia con colleghi che con utenti Capacità di apprendimento successivo
Capacità di apprendere e approfondire nuove tecniche nell’ambito della sicurezza software informatica sia degli aspetti metodologici sia di quelli tecnologici
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047643 -
TOPICS IN PHYSICS
|
Erogato in altro semestre o anno
|
|
Secondo semestre
Insegnamento
|
CFU
|
SSD
|
Ore Lezione
|
Ore Eserc.
|
Ore Lab
|
Ore Studio
|
Attività
|
Lingua
|
10589621 -
ADVANCED MACHINE LEARNING
|
Erogato in altro semestre o anno
|
1041764 -
BIG DATA COMPUTING
(obiettivi)
Obiettivi generali Il corso si propone di introdurre le principali tecniche algoritmiche e di programmazione nell’analisi di big data, affrontando una varietà di problemi di data mining in modelli di calcolo adatti alla gestione di grandi quantità di dati.
Obiettivi specifici Capacità di analisi, modellazione, e risoluzione di problemi tipici dell'area "Big Data" attraverso l'implementazione di "pipeline" di machine learning su ambienti distribuiti tramite PySpark.
Conoscenza e comprensione: Al termine del corso gli studenti avranno una comprensione dettagliata dei modelli di programmazione per l'analisi di dati distribuiti su cluster di computer, nonché di modelli computazionali avanzati per l'elaborazione di enormi quantità di dati (ad esempio, streaming di dati, parallelismo in stile MapReduce e algoritmi efficienti in memoria secondaria).
Applicare conoscenza e comprensione: gli studenti saranno in grado di progettare e analizzare algoritmi per l’analisi di big data in diversi scenari, sapranno scrivere codice efficiente e scalabile tenendo conto delle caratteristiche architetturali delle moderne piattaforme di calcolo (inclusi i sistemi distribuiti), e sapranno lavorare sfruttando una varietà di sistemi software adatti al processamento di big data (tra cui Hadoop).
Capacità critiche e di giudizio: gli studenti saranno in grado di capire i paradigmi di calcolo più adatti in scenari differenti, valutando vantaggi e svantaggi di ciascun modello computazionale e affrontando le sfide che si presentano nella progettazione e implementazione di una varietà di applicazioni.
Capacità di comuniczione: gli studenti saranno in grado di comunicare in modo efficace, riassumendo in modo chiaro le idee principali nella progettazione di sistemi e algoritmi per l’analisi di big data e presentando informazioni tecniche accurate.
Capacità di apprendimento successivo: obiettivo del corso è quello di toccare una varietà di tecniche il più possibile ampia, introducendo pratiche standard e argomenti di ricerca all'avanguardia in questo settore e consentendo quindi agli studenti di estendere le conoscenze acquisite in modo indipendente, anche in base all’evoluzione tecnologica.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
1047205 -
CLOUD COMPUTING
(obiettivi)
Obiettivi generali : Il Cloud Computing è divenuto una delle fondamentali tecnologie dell’informazione, fornendo elevata scalabilità ed elasticità nella fornitura di applicazioni distribuite (aziendali e scientifiche). Alla fine del corso gli studenti avranno gli strumenti per comprendere l’impatto del Cloud Computing in un ambiente aziendale (e non) e le implicazioni tecnologiche nello sviluppo di applicazioni Cloud, specificatamente applicazioni per la memorizzazione e l’elaborazione di big data.
Obiettivi specifici Alla fine del corso, gli studenti avranno acquisito gli strumenti per: - usare le tecnologie di virtualizzazione a livello di sistema e a livello di applicazione - usare tecnologie IaaS e PaaS - progettare architetture virtualizzate - fare il deployment di applicazioni Cloud - valutare costi e prestazioni di sistemi Cloud
Conoscenza e comprensione: Alla fine del corso, gli studenti avranno acquisito la conoscenza relativa ai fattori che hanno influenzato la diffusione del Cloud Computing, alle tecnologie di virtualizzazione, alle architetture Cloud (autoscaling, load balancing, monitoring, high availability), ai sistemi di memorizzazione dei dati nel Cloud Alla fine del corso, gli studenti saranno capaci di comprendere i principi di funzionamento delle soluzioni basate su Cloud (design and operation) e di comprendere problemi di ricerca applicata relativi alle soluzioni basate su Cloud
Applicarei conoscenza e comprensione: Alla fine del corso, gli studenti saranno capaci di - spiegare i principi del Cloud Computing - spiegare le principali tecnologie Cloud - risolvere problemi che richiedono l’uso delle tecnologie Cloud e del design e deployment di architetture virtualizzate e di applicazioni Cloud - valutare le prestazioni e i costi di soluzioni basate su Cloud
Capaità critiche e di giudizio: Nel corso gli studenti svilupperanno abilità di pensiero critico nel campo del Cloud Computing
Capacità comunicative: Alla fine del corso gli studenti saranno capaci di comunicare le nozioni imparate a personale tecnico e manageriale.
Capacità di apprendimento successivo: Dopo il corso, gli studenti avranno acquisito la conoscenza per seguire corsi avanzati di Cloud Computing e di tecnologie big data.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
1047628 -
FUNDAMENTALS OF COMPUTER GRAPHICS
|
Erogato in altro semestre o anno
|
1047630 -
HUMAN COMPUTER INTERACTION ON THE WEB
(obiettivi)
Obiettivi generali Il corso di sistemi informativi analizza differenti tipologie di sistemi informativi e come esse possono contribuire al successo degli obiettivi di un’azienda; permette di comprendere gli approcci e i modelli da usare per valutare la qualità dei processi, del software e dei servizi ICT; e fornisce le conoscenze di base per pianificare, gestire e controllare i progetti IT.
Obiettivi specifici
• Conoscenza e comprensione – Modello funzionale e struttura informativa dei processi aziendali – esigenze di integrazione e requisiti di controllo dei dati dei sistemi informatici aziendali – sistemi e tecnologie per sviluppare e mantenere un e-business di successo – principali settori di applicazione dei sistemi di informazione in vari settori di mercato – organizzazione IT e modelli di valutazione della qualità IT – conoscenze di base di contesto, tecniche/metodologie e soft skill per la gestione dei progetti ICT
• Applicazione di conoscenze e comprensione – Analizzare le diverse tipologie di requisiti in relazione a differenti categorie di utenti (stakeholder) di sistemi informativi – Selezionare l’appropriato modello per valutare la qualità dei processi ICT, del prodotto software e dei servizi ICT – Sviluppare uno studio di fattibilità selezionando l’appropriata architettura applicativa e tecnologica – Preparare, per un semplice progetto ICT, un piano di sviluppo nel rispetto dei vincoli di tempo, costi, qualità e definendo l’appropriata organizzazione – Controllare un progetto ICT in corso, applicando le tecniche di project management – Comprendere a valutare le lezioni apprese nei precedenti progetti
Capacità critiche e di giudizio: Gli studenti, mediante test e case study, acquisiranno competenze nella comprensione dei tipi di sistemi informativi, nell’uso dei modelli di quality management e nella pianificazione e gestione di un progetto.
Capacità comunicative: Gli studenti, costituiti in team, saranno coinvolti in attività finalizzate alla realizzazione di un piano di comunicazione di un progetto basato su un case study, che sarà mostrato ai colleghi spiegando le ragioni delle scelte adottate.
Capacità di apprendimento: La capacità di apprendimento sarà stimolata attraverso la preparazione di uno studio di fattibilità contenente: [a] la definizione dei requisiti del tipo di sistema informativo più adatto; [b] la definizione dei requisiti tecnici e di qualità; [c] la pianificazione di un progetto di implementazione del sistema informativo.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
1047635 -
MACHINE LEARNING
|
Erogato in altro semestre o anno
|
1047636 -
MATHEMATICAL LOGIC FOR COMPUTER SCIENCE
(obiettivi)
Obiettivi generali: Il corso ha l'obiettivo di introdurre gli studenti ai risultati e ai metodi fondamentali della Logica Matematica con particolare attenzione alla loro applicazione nell'ambito dell'Informatica.
Obiettivi specifici: L'obiettivo del corso è duplice. In primo luogo si intende dotare lo studente di una conoscenza rigorosa e di una capacità di applicare quei risultati e metodi della Logica Matematica che trovano applicazione in numerose aree dell'Informatica. D'altra parte si intende offrire allo studente una strumenti e conoscenze fondamentali per intraprendere un percorso di ricerca in Informatica Teorica.
Conoscenza e comprensione: Il corso mira a dotare lo studente di una conoscenza rigorosa degli argomenti del corso attraverso lo studio delle dimostrazioni e la produzione di argomenti rigorosi nello svolgimento degli esercizi. Particolare attenzione è data alla motivazione concettuale, alla dimostrazione rigorosa e alla applicabilità dei risultati trattati nel corso.
Applicazione di conoscenza e comprensione: I metodi della logica matematica hanno un ruolo fondamentale in diverse aree dell'Informatica quali la Teoria della Complessità, la Teoria delle Basi di Dati, l'Intelligenza Artificiale. Si mira a stimolare nello studente la capacità di applicare in vari contesti dell'informatica i metodi e i risultati studiati.
Autonomia di giudizio: Viene stimolata la partecipazione attiva alle lezioni ed esercitata l'autonomia di giudizio attraverso l'assegnazione di esercizi e problemi.
Abilità comunicative: Lo studente può scegliere di dare l'esame finale in forma di presentazione seminariale davanti alla classe di un risultato concordato con il docente.
Capacità di apprendimento successivo: I metodi di analisi e formalizzazione acquisiti durante il corso trovano applicazione in diverse aree dell'Informatica. L'esercizio di formalizzazione e problem-solving durante il corso rinforza le capacità di apprendimento e acquisizione di nuove competenze.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
1047638 -
MODELS OF COMPUTATION
|
Erogato in altro semestre o anno
|
10593236 -
DEEP LEARNING AND APPLIED ARTIFICIAL INTELLIGENCE
(obiettivi)
Obiettivi generali Acquisire familiarità con tecniche avanzate di machine learning supervisionato e non supervisionato; acquisire competenze di modellazione di problemi complessi attraverso tecniche di deep learning, e saperle applicare a contesti applicativi diversi.
Obiettivi specifici Gli argomenti includono: reti neurali profonde, il loro addestramento e l'interpretazione dei risultati; reti convoluzionali e architetture prominenti; teoria del deep learning con particolare riferimento a questioni di convergenza; utilizzo di framework esistenti per l'implementazione di tecniche avanzate di machine learning; autoencoders; attacchi avversari.
Conoscenza e comprensione: Conoscenza sul funzionamento delle reti neurali e loro interpretazione matematica come approssimatori universali. Comprensione dei limiti e delle potenzialità di modelli avanzati di machine learning.
Applicazione di conoscenza e comprensione Progettazione, implementazione, messa in esercizio e analisi di architetture di deep learning per risolvere problemi complessi in disparati ambiti applicativi.
Autonomia di giudizio Essere in grado di valutare le prestazioni di diverse architetture, e di valutare la capacità di generalizzazione delle stesse.
Abilità comunicative Essere in grado di comunicare con chiarezza la formulazione di un problema di apprendimento avanzato e la sua implementazione, la sua applicabilità in contesti realistici, nonchè di motivare le scelte architetturali e di regolarizzazione.
Capacità di apprendimento successivo: Essere in grado di apprendere tecniche alternative e più complesse quali i modelli generativi basati su traporto ottimo, le trasformate di scattering e lo studio del probilo energetico delle reti neurali. Essere in grado di implementare tecniche esistenti in maniera efficiente, robusta e affidabile.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
|
1047613 -
ADVANCED ALGORITHMS
|
Erogato in altro semestre o anno
|
10589621 -
ADVANCED MACHINE LEARNING
|
Erogato in altro semestre o anno
|
10596281 -
AUTONOMOUS NETWORKING
|
Erogato in altro semestre o anno
|
1047615 -
AUTOMATIC SOFTWARE VERIFICATION METHODS
|
Erogato in altro semestre o anno
|
1041764 -
BIG DATA COMPUTING
(obiettivi)
Obiettivi generali Il corso si propone di introdurre le principali tecniche algoritmiche e di programmazione nell’analisi di big data, affrontando una varietà di problemi di data mining in modelli di calcolo adatti alla gestione di grandi quantità di dati.
Obiettivi specifici Capacità di analisi, modellazione, e risoluzione di problemi tipici dell'area "Big Data" attraverso l'implementazione di "pipeline" di machine learning su ambienti distribuiti tramite PySpark.
Conoscenza e comprensione: Al termine del corso gli studenti avranno una comprensione dettagliata dei modelli di programmazione per l'analisi di dati distribuiti su cluster di computer, nonché di modelli computazionali avanzati per l'elaborazione di enormi quantità di dati (ad esempio, streaming di dati, parallelismo in stile MapReduce e algoritmi efficienti in memoria secondaria).
Applicare conoscenza e comprensione: gli studenti saranno in grado di progettare e analizzare algoritmi per l’analisi di big data in diversi scenari, sapranno scrivere codice efficiente e scalabile tenendo conto delle caratteristiche architetturali delle moderne piattaforme di calcolo (inclusi i sistemi distribuiti), e sapranno lavorare sfruttando una varietà di sistemi software adatti al processamento di big data (tra cui Hadoop).
Capacità critiche e di giudizio: gli studenti saranno in grado di capire i paradigmi di calcolo più adatti in scenari differenti, valutando vantaggi e svantaggi di ciascun modello computazionale e affrontando le sfide che si presentano nella progettazione e implementazione di una varietà di applicazioni.
Capacità di comuniczione: gli studenti saranno in grado di comunicare in modo efficace, riassumendo in modo chiaro le idee principali nella progettazione di sistemi e algoritmi per l’analisi di big data e presentando informazioni tecniche accurate.
Capacità di apprendimento successivo: obiettivo del corso è quello di toccare una varietà di tecniche il più possibile ampia, introducendo pratiche standard e argomenti di ricerca all'avanguardia in questo settore e consentendo quindi agli studenti di estendere le conoscenze acquisite in modo indipendente, anche in base all’evoluzione tecnologica.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1041792 -
BIOMETRIC SYSTEMS
|
Erogato in altro semestre o anno
|
1047205 -
CLOUD COMPUTING
(obiettivi)
Obiettivi generali : Il Cloud Computing è divenuto una delle fondamentali tecnologie dell’informazione, fornendo elevata scalabilità ed elasticità nella fornitura di applicazioni distribuite (aziendali e scientifiche). Alla fine del corso gli studenti avranno gli strumenti per comprendere l’impatto del Cloud Computing in un ambiente aziendale (e non) e le implicazioni tecnologiche nello sviluppo di applicazioni Cloud, specificatamente applicazioni per la memorizzazione e l’elaborazione di big data.
Obiettivi specifici Alla fine del corso, gli studenti avranno acquisito gli strumenti per: - usare le tecnologie di virtualizzazione a livello di sistema e a livello di applicazione - usare tecnologie IaaS e PaaS - progettare architetture virtualizzate - fare il deployment di applicazioni Cloud - valutare costi e prestazioni di sistemi Cloud
Conoscenza e comprensione: Alla fine del corso, gli studenti avranno acquisito la conoscenza relativa ai fattori che hanno influenzato la diffusione del Cloud Computing, alle tecnologie di virtualizzazione, alle architetture Cloud (autoscaling, load balancing, monitoring, high availability), ai sistemi di memorizzazione dei dati nel Cloud Alla fine del corso, gli studenti saranno capaci di comprendere i principi di funzionamento delle soluzioni basate su Cloud (design and operation) e di comprendere problemi di ricerca applicata relativi alle soluzioni basate su Cloud
Applicarei conoscenza e comprensione: Alla fine del corso, gli studenti saranno capaci di - spiegare i principi del Cloud Computing - spiegare le principali tecnologie Cloud - risolvere problemi che richiedono l’uso delle tecnologie Cloud e del design e deployment di architetture virtualizzate e di applicazioni Cloud - valutare le prestazioni e i costi di soluzioni basate su Cloud
Capaità critiche e di giudizio: Nel corso gli studenti svilupperanno abilità di pensiero critico nel campo del Cloud Computing
Capacità comunicative: Alla fine del corso gli studenti saranno capaci di comunicare le nozioni imparate a personale tecnico e manageriale.
Capacità di apprendimento successivo: Dopo il corso, gli studenti avranno acquisito la conoscenza per seguire corsi avanzati di Cloud Computing e di tecnologie big data.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047616 -
COMPUTATIONAL COMPLEXITY
|
Erogato in altro semestre o anno
|
1047617 -
COMPUTER NETWORK PERFORMANCE
|
Erogato in altro semestre o anno
|
1047618 -
COMPUTER VISION
|
Erogato in altro semestre o anno
|
1047619 -
CONCURRENT SYSTEMS
|
Erogato in altro semestre o anno
|
1047622 -
CRYPTOGRAPHY
|
Erogato in altro semestre o anno
|
1047623 -
DATA AND NETWORK SECURITY
|
Erogato in altro semestre o anno
|
10593236 -
DEEP LEARNING AND APPLIED ARTIFICIAL INTELLIGENCE
(obiettivi)
Obiettivi generali Acquisire familiarità con tecniche avanzate di machine learning supervisionato e non supervisionato; acquisire competenze di modellazione di problemi complessi attraverso tecniche di deep learning, e saperle applicare a contesti applicativi diversi.
Obiettivi specifici Gli argomenti includono: reti neurali profonde, il loro addestramento e l'interpretazione dei risultati; reti convoluzionali e architetture prominenti; teoria del deep learning con particolare riferimento a questioni di convergenza; utilizzo di framework esistenti per l'implementazione di tecniche avanzate di machine learning; autoencoders; attacchi avversari.
Conoscenza e comprensione: Conoscenza sul funzionamento delle reti neurali e loro interpretazione matematica come approssimatori universali. Comprensione dei limiti e delle potenzialità di modelli avanzati di machine learning.
Applicazione di conoscenza e comprensione Progettazione, implementazione, messa in esercizio e analisi di architetture di deep learning per risolvere problemi complessi in disparati ambiti applicativi.
Autonomia di giudizio Essere in grado di valutare le prestazioni di diverse architetture, e di valutare la capacità di generalizzazione delle stesse.
Abilità comunicative Essere in grado di comunicare con chiarezza la formulazione di un problema di apprendimento avanzato e la sua implementazione, la sua applicabilità in contesti realistici, nonchè di motivare le scelte architetturali e di regolarizzazione.
Capacità di apprendimento successivo: Essere in grado di apprendere tecniche alternative e più complesse quali i modelli generativi basati su traporto ottimo, le trasformate di scattering e lo studio del probilo energetico delle reti neurali. Essere in grado di implementare tecniche esistenti in maniera efficiente, robusta e affidabile.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047624 -
DISTRIBUTED SYSTEMS
|
Erogato in altro semestre o anno
|
1047626 -
FORMAL METHODS IN SOFTWARE DEVELOPMENT
|
Erogato in altro semestre o anno
|
1047627 -
FOUNDATIONS OF DATA SCIENCE
|
Erogato in altro semestre o anno
|
1047628 -
FUNDAMENTALS OF COMPUTER GRAPHICS
|
Erogato in altro semestre o anno
|
1047630 -
HUMAN COMPUTER INTERACTION ON THE WEB
(obiettivi)
Obiettivi generali Il corso di sistemi informativi analizza differenti tipologie di sistemi informativi e come esse possono contribuire al successo degli obiettivi di un’azienda; permette di comprendere gli approcci e i modelli da usare per valutare la qualità dei processi, del software e dei servizi ICT; e fornisce le conoscenze di base per pianificare, gestire e controllare i progetti IT.
Obiettivi specifici
• Conoscenza e comprensione – Modello funzionale e struttura informativa dei processi aziendali – esigenze di integrazione e requisiti di controllo dei dati dei sistemi informatici aziendali – sistemi e tecnologie per sviluppare e mantenere un e-business di successo – principali settori di applicazione dei sistemi di informazione in vari settori di mercato – organizzazione IT e modelli di valutazione della qualità IT – conoscenze di base di contesto, tecniche/metodologie e soft skill per la gestione dei progetti ICT
• Applicazione di conoscenze e comprensione – Analizzare le diverse tipologie di requisiti in relazione a differenti categorie di utenti (stakeholder) di sistemi informativi – Selezionare l’appropriato modello per valutare la qualità dei processi ICT, del prodotto software e dei servizi ICT – Sviluppare uno studio di fattibilità selezionando l’appropriata architettura applicativa e tecnologica – Preparare, per un semplice progetto ICT, un piano di sviluppo nel rispetto dei vincoli di tempo, costi, qualità e definendo l’appropriata organizzazione – Controllare un progetto ICT in corso, applicando le tecniche di project management – Comprendere a valutare le lezioni apprese nei precedenti progetti
Capacità critiche e di giudizio: Gli studenti, mediante test e case study, acquisiranno competenze nella comprensione dei tipi di sistemi informativi, nell’uso dei modelli di quality management e nella pianificazione e gestione di un progetto.
Capacità comunicative: Gli studenti, costituiti in team, saranno coinvolti in attività finalizzate alla realizzazione di un piano di comunicazione di un progetto basato su un case study, che sarà mostrato ai colleghi spiegando le ragioni delle scelte adottate.
Capacità di apprendimento: La capacità di apprendimento sarà stimolata attraverso la preparazione di uno studio di fattibilità contenente: [a] la definizione dei requisiti del tipo di sistema informativo più adatto; [b] la definizione dei requisiti tecnici e di qualità; [c] la pianificazione di un progetto di implementazione del sistema informativo.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047631 -
INFORMATION SYSTEMS
|
Erogato in altro semestre o anno
|
1047633 -
INTENSIVE COMPUTATION
|
Erogato in altro semestre o anno
|
1047634 -
INTERNET OF THINGS
(obiettivi)
Obiettivi generali: Il corso illustra gli aspetti metodologici, teorici e pratici relativi alla progettazione di reti wireless e Internet delle cose. Il corso prevede un laboratorio.
Obiettivi specifici Introduzione alle reti wireless, architetture e protocolli usati nelle reti cellulari info al 5G e nei sistemi Internet delle cose, analisi delle soluzioni di ricerca relative ad alcune delle sfide per la realizzazione dei sistemi internet delle cose (abbattimento del consumo energetico, integrazione del mondo IoT e della robotica, sicurezza delle informazioni).
Struttura sintetica del corso: - Introduzione alle reti radio - Dai sistemi cellulari 2G al 5G - Protocolli per sensing systems: protocolli di MAC, routing, localizzazione e sincronizzazione - Verso l'Internet delle cose: caratteristiche e problematiche, protocolli standard e tecnologie, scelte progettuali per diversi ambiti verticali, sfide ancora aperte - Aspetti avanzati dell'IoT: zero-power IoT; aspetti di sicurezza; uso di blockchain in applicazioni IoT; ottimizzazione di sistemi mediante tecniche di machine learning; integrazione di robotica e IoT systems (esempio dell'Internet of Underwater Things). -Lab di programmazione IoT
Conoscenze e comprensione: Alla fine del corso lo studente saprà leggere e comprendere articoli scientifici, documenti tecnici e standard del settore; avrà compreso i trade-off prestazionali associati a diverse scelte progettuali. Sarà quindi in grado di progettare futuri sistemi wireless e IoT. Avrà fatto prime esperienze pratiche relative alla programmazione e valutazione sperimentale di tali sistemi.
Applicazione di conoscenza e comprensione: Gli studenti saranno in grado di partecipare alla progettazione di futuri sistemi e applicazioni IoT e di sistemi 5G.
Capacità di giudizio: Gli studenti svilupperanno le capacità di analisi necessarie per valutare diverse scelte progettuali alternative selezionando la migliore per ogni specifico scenario applicativo e tipo di tecnologia.
Capacità di comunicazione: Gli studenti impareranno ad analizzare e presentare articoli scientifici, idee di ricerca o soluzioni tecniche di settore, descrivendole in modo sintetico ed accurato, con un linguaggio tecnico adeguato.
Capacità di apprendimento: Gli studenti acquisiranno sia competenze teoriche che pratiche relative alla progettazione dei sistemi wireless e IoT, che li metteranno in grado di proseguire l'approfondimento di questi argomenti.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047635 -
MACHINE LEARNING
|
Erogato in altro semestre o anno
|
1047636 -
MATHEMATICAL LOGIC FOR COMPUTER SCIENCE
(obiettivi)
Obiettivi generali: Il corso ha l'obiettivo di introdurre gli studenti ai risultati e ai metodi fondamentali della Logica Matematica con particolare attenzione alla loro applicazione nell'ambito dell'Informatica.
Obiettivi specifici: L'obiettivo del corso è duplice. In primo luogo si intende dotare lo studente di una conoscenza rigorosa e di una capacità di applicare quei risultati e metodi della Logica Matematica che trovano applicazione in numerose aree dell'Informatica. D'altra parte si intende offrire allo studente una strumenti e conoscenze fondamentali per intraprendere un percorso di ricerca in Informatica Teorica.
Conoscenza e comprensione: Il corso mira a dotare lo studente di una conoscenza rigorosa degli argomenti del corso attraverso lo studio delle dimostrazioni e la produzione di argomenti rigorosi nello svolgimento degli esercizi. Particolare attenzione è data alla motivazione concettuale, alla dimostrazione rigorosa e alla applicabilità dei risultati trattati nel corso.
Applicazione di conoscenza e comprensione: I metodi della logica matematica hanno un ruolo fondamentale in diverse aree dell'Informatica quali la Teoria della Complessità, la Teoria delle Basi di Dati, l'Intelligenza Artificiale. Si mira a stimolare nello studente la capacità di applicare in vari contesti dell'informatica i metodi e i risultati studiati.
Autonomia di giudizio: Viene stimolata la partecipazione attiva alle lezioni ed esercitata l'autonomia di giudizio attraverso l'assegnazione di esercizi e problemi.
Abilità comunicative: Lo studente può scegliere di dare l'esame finale in forma di presentazione seminariale davanti alla classe di un risultato concordato con il docente.
Capacità di apprendimento successivo: I metodi di analisi e formalizzazione acquisiti durante il corso trovano applicazione in diverse aree dell'Informatica. L'esercizio di formalizzazione e problem-solving durante il corso rinforza le capacità di apprendimento e acquisizione di nuove competenze.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
10589557 -
METHODS IN COMPUTER SCIENCE EDUCATION: ANALYSIS
(obiettivi)
Obiettivi generali: Conoscere ed applicare le più recenti teorie e metodologie di insegnamento dell'Informatica nella scuola e nell'università. Il corso svilupperà una serie di use-cases relativi alle tecniche di insegnamento dell'Informatica.
Obiettivi specifici: • Analisi critica delle principali metodologie per l'insegnamento sviluppate nella ricerca in didattica dell'informatica, anche in riferimento allo specifico ruolo dell'insegnante, ai nodi concettuali, epistemologici, linguistici e didattici dell'insegnamento e apprendimento dell'informatica, ponendo in particolare l'accento sulla distinzione fra l'informatica come disciplina scientifica da una parte e le applicazioni dell'informatica dall'altra. • Esplicitazione del parallelismo fra metodologie informatiche e metodologie didattiche: tecniche di problem solving costruttivo; approccio epistemologico ai problemi; metodi cooperativi di sviluppo delle soluzioni.
Conoscenza e comprensione: Principi e metodi di costruzione di attività didattiche di C.S. nella scuola superiore e nell'università.
Applicazione di conoscenza e comprensione: Agli studenti verrà richiesto di scegliere e sviluppare alcuni moduli didattici per la Scuola superiore e l'Università.
Autonomia di giudizio: Lo studente sarà autonomo nello scegliere i moduli da sviluppare e nella loro fase di progetto e realizzazione.
Abilità comunicative: Gli studenti dovranno dimostrare di saper produrre moduli didattici di qualità, con una forte capacità di interessare e comunicare con precisione gli argomenti chiave della lezione da sviluppare.
Capacità di apprendimento successivo: La metodologia di progetto dei moduli didattici vista nel corso sarà facilmente applicabile ad altri tipi di corsi.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
10589558 -
METHODS IN COMPUTER SCIENCE EDUCATION: DESIGN
|
Erogato in altro semestre o anno
|
1047638 -
MODELS OF COMPUTATION
|
Erogato in altro semestre o anno
|
1047639 -
MULTIMODAL INTERACTION
|
Erogato in altro semestre o anno
|
1038141 -
NATURAL LANGUAGE PROCESSING
(obiettivi)
Obiettivi generali: I fondamenti dell'elaborazione del linguaggio naturale.
Obiettivi specifici: L'elaborazione del linguaggio naturale al livello di: morfologia, parte del discorso, sintassi, semantica, pragmatica. Traduzione automatica.
Conoscenza e comprensione: Conoscenza e comprensione delle tecniche algoritmiche e di apprendimento automatica per l'elaborazione del linguaggio naturale.
Applicare conoscenza e comprensione: Essere in grado di applicare le tecniche di elaborazione del linguaggio naturale mediante homework e un progetto.
Capacità critiche e di giudizio: Capacità di comprendere e identificare soluzioni efficaci ai problemi dell'elaborazione del linguaggio naturale.
Capacità comunicative: Capacità di illustrare il progetto sviluppato.
Capacità di apprendimento: Capacità di apprendere e applicare nuove tecniche di elaborazione del linguaggio naturale sia basate su quelle illustrate nel corso sia basate su approcci innovativi.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047640 -
NETWORK ALGORITHMS
|
Erogato in altro semestre o anno
|
10589555 -
PRACTICAL NETWORK DEFENSE
(obiettivi)
Obiettivi generali: Il corso affronta i fondamenti delle metodologie e degli strumenti per la protezione delle reti di calcolatori. Particolare attenzione viene dedicata all'applicazione pratica delle nozioni apprese.
Obiettivi specifici: Il corso affronta le relazioni fra i meccanismi di funzionamento delle reti di calcolatori e gli attacchi informatici, i meccanismi per la possibile identificazione e soppressione degli attacchi e la relativa implementazione mediante l'uso di adeguate strategie di progettazione e di strumenti specifici.
Conoscenza e comprensione: Elencare le minacce più ricorrenti dovute all'uso di specifici protocolli all'interno delle reti di elaboratori. Spiegare i meccanismi più utilizzati dagli attaccanti maliziosi e dai progettisti di malware per compromettere la sicurezza di un sistema di elaboratori. Spiegare i meccanismi di base utilizzati per l'identificazione dei tentativi di intrusione negli elaboratori e nelle reti.
Applicare conoscenza e comprensione: Alla fine del corso gli studenti saranno in grado di realizzare il monitoraggio del traffico scambiato nelle reti, di applicare una policy di sicurezza, di realizzare una scansione delle stazioni all'interno di una rete di elaboratori e una ricerca delle vulnerabilità di una rete di elaboratori. Gli studenti svilupperanno la capacità di selezionare le regole appropriate per proteggere una rete mediante firewall, selezionare i meccanismi più appropriati per proteggere un sistema di elaboratori collegati tramite rete e di eseguire le scelte di progettazione più opportune per implementare una strategia di "difesa in profondità", usando reti isolate e strumenti dedicati (VPN,proxy e firewall).
Capacità critiche e di giudizio: Gli studenti svilupperanno le capacità di analisi necessarie per valutare diverse alternative durante il processo di progettazione di una rete di elaboratori, con particolare riferimento alla valutazione delle scelte architetturali e dei rischi che possono comportare e agli obiettivi di sicurezza che il sistema vuole perseguire.
Capacità comuncative: Gli studenti impareranno a documentare le loro scelte, anche attraverso l'uso di strumenti di generazione di rapporti automatizzati. Avranno anche acquisito la capacità di preparare presentazioni relative ad argomenti scientifici.
Capacità di apprendimento successivo: Le nozioni acquisite durante il corso forniranno agli studenti una solida base di conoscenza per poter ulteriormente approfondire gli aspetti più tecnici, esplorare le alternative non affrontate per motivi di tempo e per mantenersi autonomamente informati sui continui sviluppi e aggiornamenti della sicurezza informatica applicata alle reti.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047642 -
SECURITY IN SOFTWARE APPLICATIONS
|
Erogato in altro semestre o anno
|
1047643 -
TOPICS IN PHYSICS
|
Erogato in altro semestre o anno
|
|
- -
A SCELTA DELLO STUDENTE
|
6
|
|
-
|
-
|
-
|
-
|
Attività formative a scelta dello studente (art.10, comma 5, lettera a)
|
ITA |
Secondo anno
Primo semestre
Insegnamento
|
CFU
|
SSD
|
Ore Lezione
|
Ore Eserc.
|
Ore Lab
|
Ore Studio
|
Attività
|
Lingua
|
1047613 -
ADVANCED ALGORITHMS
|
Erogato in altro semestre o anno
|
1047615 -
AUTOMATIC SOFTWARE VERIFICATION METHODS
(obiettivi)
Obiettivi generali: Il corso si propone di fornire agli studenti metodi e strumenti per la verifica e validazione automatica di sistemi cyber-fisici.
Obiettivi specifici: Il corso di propone di mettere gli studenti in grado di comprendere tecniche avanzate di modellazione, verifica e validazione per sistemi cyber-fisici. Conoscenza e comprensione: Introduzione ad ampio spettro dei principi fondamentali della modellazione ed analisi dei sistemi cyber-fisici modellati come DAE (Differential Algebraic Equations).
Applicare conoscenza e comprensione: Saper applicare il portafoglio di tecniche e gli approcci illustrati per la modellazione, verifica e validazione di sistemi cyber-fisici.
Capacità critiche e di giudizio: Gli studenti saranno in grado di prendere autonomamente decisioni razionali sulle tecniche da impiegare nella modellazione, verifica e validazione di sistemi cyber-fisici.
Capacità comunicative: Gli studenti saranno in grado di interagire in modo proficuo con esperti di dominio su un'ampia gamma di argomenti relativi alla modellazione, verifica e validazione di sistemi cyber-fisici
Capacità di apprendimento: Gli studenti saranno in grado di ampliare le loro conoscenze in modo autonomo consultando, secondo necessità , la letteratura scientifica di rilievo.
|
6
|
INF/01
|
24
|
36
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
1047619 -
CONCURRENT SYSTEMS
|
Erogato in altro semestre o anno
|
1047624 -
DISTRIBUTED SYSTEMS
|
Erogato in altro semestre o anno
|
1047626 -
FORMAL METHODS IN SOFTWARE DEVELOPMENT
|
Erogato in altro semestre o anno
|
1047642 -
SECURITY IN SOFTWARE APPLICATIONS
|
Erogato in altro semestre o anno
|
|
10589621 -
ADVANCED MACHINE LEARNING
(obiettivi)
Obiettivi generali: Questo corso introduce gli studenti a metodi avanzati e ai più recenti approcci di machine learning, basati su modelli di deep neural network (DNN), e alle loro applicazioni in computer vision. Il corso include teoria, programmazione e la realizzazione pratica di un progetto finale. Sia per la parte di programmazione che per il progetto finale, gli studenti lavoreranno in gruppi e presenteranno le loro idee e i risultati del progetto alla classe.
Obiettivi specifici: La prima parte del corso include l’analisi di modelli DNN stato dell’arte per classificazione e regressione, applicate a detection (dove gli oggetti siano in un’immagine), pose estimation (se una persona sia in piedi, seduta o coricata) e re-identification (la stima di un vettore che rappresenti ogni persona in modo univoco). Il corso discute inoltre DNN per la realizzazione di obiettivi multi-task, ovvero per la stima congiunta di detection, re-identification, segmentation, depth estimation, etc. Questa prima parte include DNN che siano applicabili a video sequenze, grazie all’uso di memoria (e.g. LSTM) o attenzione (e.g. Transformers).
La seconda parte del corso approfondisce i modelli, le tecniche di apprendimento e di manipolazione di dati per la generalizzazione, per domain adaptation e meta-learning. Oltre a transfer learning (come un modello precedentemente imparato sia applicabile a altri compiti), si affronta la multi-modalità (l’uso di sensori di diversa natura come video camere di distanza o termiche) e l’auto-supervisione (e.g. imparare un modello DNN attraverso la risoluzione di puzzles) per l’auto-annotazione di grandi quantità di dati. Infine, si presenta domain adaptation (e.g. come applicare algoritmi di detection imparati con immagini diurne anche di notte) e meta-learning, uno dei più recenti temi di machine learning che mostra come imparare ad imparare un compito, e.g. in modalità di apprendimento online o imparando anche da pochi dati disponibili.
Conoscenza e comprensione: Al termine del corso gli studenti avranno familiarità con modelli DNN stato dell’arte che realizzino singole o molteplici funzioni, e con la generalizzazione di queste funzioni e l’uso effettivo di dati etichettati o non etichettati per l’apprendimento di macchine, il loro auto-apprendimento e il meta-learning.
Applicare conoscenza e comprensione: Al termine del corso gli studenti avranno acquisito familiarità con il progresso più recente in machine learning per lo svolgimento di vari compiti, l’adattamento di questi a nuovi domini ed il continuo auto-apprendimento di algoritmi e macchine. Sapranno spiegare gli algoritmi e scegliere le tecniche più appropriate per uno specifico problema. Saranno in grado di valutare implementazioni esistenti e di ideare e scrivere programmi per nuove soluzioni for specifiche funzioni o problemi nei due campi.
Capacità critiche e di giudizio Lo studente sarà in grado di analizzare un problema o una funzione e identificare le metodologie e tecniche da applicare più appropriate, sia dal punto di vista dell’effettiva risoluzione del problema (accuracy) che da quello della fattibilità, da un punto di vista di efficienza, della quantità di dati richiesta e delle loro annotazioni. Oltre che delle lezioni, la capacità critica e di giudizio sarà il risultato di assignments che testeranno programmazione e analisi e di un progetto finale, inclusivo di relazione scritta.
Capacità comunicative Lo studente acquisirà la capacità di esporre in modo chiaro ed organizzato le proprie conoscenze, capacità che verrà verificata sia mediante un progetto finale che nella sua presentazione orale. Lo studente sarà in grado di esprimere un’idea algoritmica in modo rigoroso ad alto livello, in pseudocodice, e di spiegare la struttura del codice scritto per questa.
Capacità di apprendimento successivo Le conoscenze acquisite permetteranno allo studente di affrontare lo studio di altri problemi in machine learning and computer vision. La capacità di apprendimento successivo sarà il risultato degli argomenti illustrati a lezione, che offriranno una vasta panoramica in advanced machine learning, e del loro progetto finale, per il quale gli studenti sceglieranno uno specifico argomento da approfondire, oltre quanto impartito a lezione.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
1041764 -
BIG DATA COMPUTING
|
Erogato in altro semestre o anno
|
1047205 -
CLOUD COMPUTING
|
Erogato in altro semestre o anno
|
1047628 -
FUNDAMENTALS OF COMPUTER GRAPHICS
(obiettivi)
Obiettivi generali Familiarità con il rendering Physically-based, il geometry processing and idee basiche di simulazione.
Obiettivi specifici Argomenti includono: path tracing, monte carlo methods, bidirectional reflectance distribution function, modelli a microfacet, importance sampling, multiple importance sampling, superfici di suddivisione, bump and normal mapping, scattering volumetrico.
Conoscenza e comprensione: Conoscenza su come funzionano gli algoritmi di rendering physically-based and quali light paths supportano; conoscenza su come modellare il look di superfici reali; conoscenza su come rappresentare la geometria in un renderer.
Applicazione di conoscenza e comprensione Implementazione di un path tracer ricco di funzioni con supporto per materiali arbitrari, scattering volumetrico e superfici continue e corrugate.
Autonomia di giudizio Essere in grado di valutare le prestazioni di diversi algoritmi di rendering realistico rispetto ai modi di interazione tra luci/superfici e luci/volumi.
Abilità comunicative Essere in grado di comunicare con chiarezza come funzionano gli algoritmi di rendering realistico, come sono sviluppati e quali scene 3D e feature di immagini supportano.
Capacità di apprendimento successivo: Essere in grado di apprendere algoritmi di rendering più complesso come metodi bidirezionali o Monte Carlo Markov Chain. Essere in grado di lavorare con sicurezza su renderer per produzione cinematografica.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
1047630 -
HUMAN COMPUTER INTERACTION ON THE WEB
|
Erogato in altro semestre o anno
|
1047635 -
MACHINE LEARNING
|
Erogato in altro semestre o anno
|
1047636 -
MATHEMATICAL LOGIC FOR COMPUTER SCIENCE
|
Erogato in altro semestre o anno
|
1047638 -
MODELS OF COMPUTATION
|
Erogato in altro semestre o anno
|
10593236 -
DEEP LEARNING AND APPLIED ARTIFICIAL INTELLIGENCE
|
Erogato in altro semestre o anno
|
|
1047613 -
ADVANCED ALGORITHMS
|
Erogato in altro semestre o anno
|
10589621 -
ADVANCED MACHINE LEARNING
(obiettivi)
Obiettivi generali: Questo corso introduce gli studenti a metodi avanzati e ai più recenti approcci di machine learning, basati su modelli di deep neural network (DNN), e alle loro applicazioni in computer vision. Il corso include teoria, programmazione e la realizzazione pratica di un progetto finale. Sia per la parte di programmazione che per il progetto finale, gli studenti lavoreranno in gruppi e presenteranno le loro idee e i risultati del progetto alla classe.
Obiettivi specifici: La prima parte del corso include l’analisi di modelli DNN stato dell’arte per classificazione e regressione, applicate a detection (dove gli oggetti siano in un’immagine), pose estimation (se una persona sia in piedi, seduta o coricata) e re-identification (la stima di un vettore che rappresenti ogni persona in modo univoco). Il corso discute inoltre DNN per la realizzazione di obiettivi multi-task, ovvero per la stima congiunta di detection, re-identification, segmentation, depth estimation, etc. Questa prima parte include DNN che siano applicabili a video sequenze, grazie all’uso di memoria (e.g. LSTM) o attenzione (e.g. Transformers).
La seconda parte del corso approfondisce i modelli, le tecniche di apprendimento e di manipolazione di dati per la generalizzazione, per domain adaptation e meta-learning. Oltre a transfer learning (come un modello precedentemente imparato sia applicabile a altri compiti), si affronta la multi-modalità (l’uso di sensori di diversa natura come video camere di distanza o termiche) e l’auto-supervisione (e.g. imparare un modello DNN attraverso la risoluzione di puzzles) per l’auto-annotazione di grandi quantità di dati. Infine, si presenta domain adaptation (e.g. come applicare algoritmi di detection imparati con immagini diurne anche di notte) e meta-learning, uno dei più recenti temi di machine learning che mostra come imparare ad imparare un compito, e.g. in modalità di apprendimento online o imparando anche da pochi dati disponibili.
Conoscenza e comprensione: Al termine del corso gli studenti avranno familiarità con modelli DNN stato dell’arte che realizzino singole o molteplici funzioni, e con la generalizzazione di queste funzioni e l’uso effettivo di dati etichettati o non etichettati per l’apprendimento di macchine, il loro auto-apprendimento e il meta-learning.
Applicare conoscenza e comprensione: Al termine del corso gli studenti avranno acquisito familiarità con il progresso più recente in machine learning per lo svolgimento di vari compiti, l’adattamento di questi a nuovi domini ed il continuo auto-apprendimento di algoritmi e macchine. Sapranno spiegare gli algoritmi e scegliere le tecniche più appropriate per uno specifico problema. Saranno in grado di valutare implementazioni esistenti e di ideare e scrivere programmi per nuove soluzioni for specifiche funzioni o problemi nei due campi.
Capacità critiche e di giudizio Lo studente sarà in grado di analizzare un problema o una funzione e identificare le metodologie e tecniche da applicare più appropriate, sia dal punto di vista dell’effettiva risoluzione del problema (accuracy) che da quello della fattibilità, da un punto di vista di efficienza, della quantità di dati richiesta e delle loro annotazioni. Oltre che delle lezioni, la capacità critica e di giudizio sarà il risultato di assignments che testeranno programmazione e analisi e di un progetto finale, inclusivo di relazione scritta.
Capacità comunicative Lo studente acquisirà la capacità di esporre in modo chiaro ed organizzato le proprie conoscenze, capacità che verrà verificata sia mediante un progetto finale che nella sua presentazione orale. Lo studente sarà in grado di esprimere un’idea algoritmica in modo rigoroso ad alto livello, in pseudocodice, e di spiegare la struttura del codice scritto per questa.
Capacità di apprendimento successivo Le conoscenze acquisite permetteranno allo studente di affrontare lo studio di altri problemi in machine learning and computer vision. La capacità di apprendimento successivo sarà il risultato degli argomenti illustrati a lezione, che offriranno una vasta panoramica in advanced machine learning, e del loro progetto finale, per il quale gli studenti sceglieranno uno specifico argomento da approfondire, oltre quanto impartito a lezione.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
10596281 -
AUTONOMOUS NETWORKING
|
Erogato in altro semestre o anno
|
1047615 -
AUTOMATIC SOFTWARE VERIFICATION METHODS
(obiettivi)
Obiettivi generali: Il corso si propone di fornire agli studenti metodi e strumenti per la verifica e validazione automatica di sistemi cyber-fisici.
Obiettivi specifici: Il corso di propone di mettere gli studenti in grado di comprendere tecniche avanzate di modellazione, verifica e validazione per sistemi cyber-fisici. Conoscenza e comprensione: Introduzione ad ampio spettro dei principi fondamentali della modellazione ed analisi dei sistemi cyber-fisici modellati come DAE (Differential Algebraic Equations).
Applicare conoscenza e comprensione: Saper applicare il portafoglio di tecniche e gli approcci illustrati per la modellazione, verifica e validazione di sistemi cyber-fisici.
Capacità critiche e di giudizio: Gli studenti saranno in grado di prendere autonomamente decisioni razionali sulle tecniche da impiegare nella modellazione, verifica e validazione di sistemi cyber-fisici.
Capacità comunicative: Gli studenti saranno in grado di interagire in modo proficuo con esperti di dominio su un'ampia gamma di argomenti relativi alla modellazione, verifica e validazione di sistemi cyber-fisici
Capacità di apprendimento: Gli studenti saranno in grado di ampliare le loro conoscenze in modo autonomo consultando, secondo necessità , la letteratura scientifica di rilievo.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1041764 -
BIG DATA COMPUTING
|
Erogato in altro semestre o anno
|
1041792 -
BIOMETRIC SYSTEMS
|
Erogato in altro semestre o anno
|
1047205 -
CLOUD COMPUTING
|
Erogato in altro semestre o anno
|
1047616 -
COMPUTATIONAL COMPLEXITY
(obiettivi)
Obiettivi generali: Il Corso introduce allo studio delle basi dell Teoria della Complessità computazionale.
Obiettivi specifici: - Concetto teorico della risorsa computazionale: running time - Concetto Teorico della risorsa computazionale: memoria - Classi di complessità temprali e spaziali - Il problema P = NP - Problemi computazionalmente non trattabili con risorse limitate - La classi di complessità L, P, NP, PSPACE, BPP, #P, IP, - Risultati Notevoli - Circuiti Booleani e funzioni booleane
Conoscenza e comprensione: Al termine del corso lo studente avrà acquisito la capacità di verificare proprietà di riduzione e completezza tra problemi computazionali, la conoscenza di teoremi notevoli nel campo della Teoria delle Complessità, la capacità di ragionare matematicamente sulla natura computazionale delle risorse di calcolo come running-time, memoria, randomness. Applicazione di conoscenza e comprensione: La conoscenza appresa è fondamentale in contesti come la Verifica Automatica, la Teoria dei Giochi, la analisi della complessità degli algoritmi.
Autonomia di giudizio: Viene rafforzata la autonomia di giudizio dello studente attraverso l'approfondimento della capacità di sintesi matematica, di ragionamento matematico e di problem solving, mediante tecniche basate sulla matemati Discreta e sulla Analisi Funzionale.
Abilità comunicative: Viene sviluppata l'abilità comunicativa dello studente nel presentare risultati nel campo dell'Informatica Teorica.
Capacità di apprendimento successivo: La complessità computazionale e alla base della comprensione della valutazione della fattibilità computazionale e algoritmico di qualsiasi problema del mondo reale. La sua conoscenza è dunque alla base dell'apprendimento di molte altre corsi e argeomtni, come la Crittografia, la verifica automatica del software e dell'hardware, la Teoria dei Giochi, l'Intelligenza Artificiale.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047617 -
COMPUTER NETWORK PERFORMANCE
|
Erogato in altro semestre o anno
|
1047618 -
COMPUTER VISION
(obiettivi)
Obiettivi generali: Il corso si propone di esporre gli studenti ad un'ampia panoramica della Computer Vision.
Obiettivi specifici: Il corso si propone di fornire i principi, le metodologie di base e gli algoritmi fondamentali usati per la progettazione e l'applicazione di sistemi di visione artificiale
Conoscenza e comprensione: Introduzioni dei principi fondamentali e delle diverse aree della Computer Vision e conoscenze su risoluzione di problemi quali estrazioni delle caratteristi, tracking , analisi della scena, riconoscimento di oggetti, analisi di eventi, analisi delle emozioni.
Applicare conoscenza e comprensione: Saper applicare il portafoglio di tecniche e gli approcci illustrati per la progettazione e realizzazione di sistemi di visione artificiale.
Capacità critiche e di giudizio: Gli studenti apprenderanno tecniche che si sono rivelate utili per esperienza diretta e una vasta gamma di metodi matematici nella progettazione del sistema di visione.
Capacità comunicative: Gli studenti saranno in grado di interagire in modo proficuo con altri ricercatori in Computer Vision su un'ampia gamma di argomenti.
Capacità di apprendimento: Gli studenti saranno in grado di ampliare le loro conoscenze in modo autonomo consultando, secondo necessità, la letteratura scientifica basato sulla Computer Vision.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047619 -
CONCURRENT SYSTEMS
|
Erogato in altro semestre o anno
|
1047622 -
CRYPTOGRAPHY
|
Erogato in altro semestre o anno
|
1047623 -
DATA AND NETWORK SECURITY
|
Erogato in altro semestre o anno
|
10593236 -
DEEP LEARNING AND APPLIED ARTIFICIAL INTELLIGENCE
|
Erogato in altro semestre o anno
|
1047624 -
DISTRIBUTED SYSTEMS
|
Erogato in altro semestre o anno
|
1047626 -
FORMAL METHODS IN SOFTWARE DEVELOPMENT
|
Erogato in altro semestre o anno
|
1047627 -
FOUNDATIONS OF DATA SCIENCE
|
Erogato in altro semestre o anno
|
1047628 -
FUNDAMENTALS OF COMPUTER GRAPHICS
(obiettivi)
Obiettivi generali Familiarità con il rendering Physically-based, il geometry processing and idee basiche di simulazione.
Obiettivi specifici Argomenti includono: path tracing, monte carlo methods, bidirectional reflectance distribution function, modelli a microfacet, importance sampling, multiple importance sampling, superfici di suddivisione, bump and normal mapping, scattering volumetrico.
Conoscenza e comprensione: Conoscenza su come funzionano gli algoritmi di rendering physically-based and quali light paths supportano; conoscenza su come modellare il look di superfici reali; conoscenza su come rappresentare la geometria in un renderer.
Applicazione di conoscenza e comprensione Implementazione di un path tracer ricco di funzioni con supporto per materiali arbitrari, scattering volumetrico e superfici continue e corrugate.
Autonomia di giudizio Essere in grado di valutare le prestazioni di diversi algoritmi di rendering realistico rispetto ai modi di interazione tra luci/superfici e luci/volumi.
Abilità comunicative Essere in grado di comunicare con chiarezza come funzionano gli algoritmi di rendering realistico, come sono sviluppati e quali scene 3D e feature di immagini supportano.
Capacità di apprendimento successivo: Essere in grado di apprendere algoritmi di rendering più complesso come metodi bidirezionali o Monte Carlo Markov Chain. Essere in grado di lavorare con sicurezza su renderer per produzione cinematografica.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047630 -
HUMAN COMPUTER INTERACTION ON THE WEB
|
Erogato in altro semestre o anno
|
1047631 -
INFORMATION SYSTEMS
|
Erogato in altro semestre o anno
|
1047633 -
INTENSIVE COMPUTATION
|
Erogato in altro semestre o anno
|
1047634 -
INTERNET OF THINGS
|
Erogato in altro semestre o anno
|
1047635 -
MACHINE LEARNING
|
Erogato in altro semestre o anno
|
1047636 -
MATHEMATICAL LOGIC FOR COMPUTER SCIENCE
|
Erogato in altro semestre o anno
|
10589557 -
METHODS IN COMPUTER SCIENCE EDUCATION: ANALYSIS
|
Erogato in altro semestre o anno
|
10589558 -
METHODS IN COMPUTER SCIENCE EDUCATION: DESIGN
|
Erogato in altro semestre o anno
|
1047638 -
MODELS OF COMPUTATION
|
Erogato in altro semestre o anno
|
1047639 -
MULTIMODAL INTERACTION
|
Erogato in altro semestre o anno
|
1038141 -
NATURAL LANGUAGE PROCESSING
|
Erogato in altro semestre o anno
|
1047640 -
NETWORK ALGORITHMS
(obiettivi)
Obiettivi generali Acquisire conoscenze relativamente al progetto di algoritmi complessi per risolvere problemi su grafi che modellano problemi inerenti le reti (cablate, senza fili e di sensori).
Obiettivi specifici Conoscenza e comprensione Al termine del corso gli studenti conosceranno le metodologie di base per l'analisi di problemi relativi alle reti e l’identificazione dei problemi su grafi che più si avvicinino; conosceranno inoltre gli algoritmi risolutivi di alcuni dei principali problemi su grafi.
Applicare conoscenza e comprensione: Al termine del corso gli studenti avranno acquisito familiarità con l’analisi delle problematiche legate alle reti. Saranno in grado di riconoscere quale sia il problema su grafi che più si avvicina e di progettare nuove strutture dati e i relativi algoritmi, rielaborando quelli esistenti, per risolvere il problema di partenza.
Capacità critiche e di giudizio Lo studente avrà le basi per analizzare la qualità di un algoritmo per le reti, sia dal punto di vista della effettiva risoluzione del problema che da quello della efficienza computazionale con la quale il problema viene risolto.
Capacità comunicative Lo studente acquisirà la capacità di esporre in modo chiaro ed organizzato le proprie conoscenze, capacità che verrà verificata durante la prova orale.
Capacità di apprendimento Le conoscenze acquisite permetteranno allo studente, una volta concluso il ciclo di studi, di affrontare problemi reali in modo critico ed efficace e di progettare soluzioni efficienti.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
10589555 -
PRACTICAL NETWORK DEFENSE
|
Erogato in altro semestre o anno
|
1047642 -
SECURITY IN SOFTWARE APPLICATIONS
|
Erogato in altro semestre o anno
|
1047643 -
TOPICS IN PHYSICS
|
Erogato in altro semestre o anno
|
|
- -
A SCELTA DELLO STUDENTE
|
6
|
|
-
|
-
|
-
|
-
|
Attività formative a scelta dello studente (art.10, comma 5, lettera a)
|
ITA |
AAF1246 -
ATTIVITA' FORMATIVA COMPLEMENTARE
(obiettivi)
Le attività formative complementari si possono inquadrare in uno o più ambiti disciplinari affini o integrativi a quelli di base o caratterizzanti, e possono proporre obiettivi formativi di carattere interdisciplinare o di approfondimento delle culture di contesto.
|
6
|
|
-
|
-
|
-
|
-
|
Ulteriori attività formative (art.10, comma 5, lettera d)
|
ITA |
Secondo semestre
Insegnamento
|
CFU
|
SSD
|
Ore Lezione
|
Ore Eserc.
|
Ore Lab
|
Ore Studio
|
Attività
|
Lingua
|
1047613 -
ADVANCED ALGORITHMS
(obiettivi)
Obiettivi generali: Questo corso propone lo studio di algoritmi evoluti e di strutture dati avanzate per rendere efficiente la risoluzione di problemi complessi.
Obiettivi specifici:
Applicare conoscenza e comprensione: Al termine del corso lo studente avrà gli strumenti per individuare il nucleo matematico proprio del problema da affrontare e per identificare la tecnica più appropiata per il progetto algoritmico risolutivo dello stesso.
Capacità critiche e di giudizio Gli studenti saranno in grado di capire quale sia il modo migliore per rappresentare e organizzare in modo significativo le informazioni note del problema
Capacità comunicative: Lo studente avrà acquisito il giusto linguaggio per presentare idee algoritmiche che esprimono dettagliatamente le caratteristiche del problema da risolvere.
Capacità di apprendimento: Lo studente avrà acquisito la capacità di pensare in "modo algoritmico", ovvero sarà in grado di estrarre tutta la conoscenza possibile da una situazione semplicemnte tramite il ragionamento.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
1047615 -
AUTOMATIC SOFTWARE VERIFICATION METHODS
|
Erogato in altro semestre o anno
|
1047619 -
CONCURRENT SYSTEMS
(obiettivi)
Obiettivi generali: Capire i concetti base dei sistemi concorrenti e le metodologie adottate nella soluzione dei problemi da essi posti
Obiettivi specifici: Mutua esclusione, diverse proprietà di liveness, semafori, monitor, transazioni, atomicità, concorrenza senza mutua esclusione, altre proprietà di liveness, oggetto universale e consenso. Sistemi di transizioni etichettate, semantica a interleaving, sincronizzazione, simulazione e bisimulazione, tecniche di verifica, passaggio di nomi, sistemi di tipo.
Conoscenza e comprensione: Capire the problematiche di base dei sistemi concorrenti e le relative soluzioni possibili, i principi fondazionali dei linguaggi di programmazione concorrente e le relative tecniche di verifica
Applicare conoscenza e comprensione: essere in grado di risolvere problematiche basilari di semplici sistemi concorrenti
Capacità critiche e di giudizio: capire vantaggi e svantaggi delle varie possibili soluzioni a problematiche di sistemi concorrenti
Capacità comunicative: sviluppare un linguaggio tecnico e formale in grado di spiegare le soluzioni ideate e i relativi meriti
Capacità di apprendimento: comprendere scenari di programmazione complessi e le relative soluzioni, anche sofisticate
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
1047624 -
DISTRIBUTED SYSTEMS
|
Erogato in altro semestre o anno
|
1047626 -
FORMAL METHODS IN SOFTWARE DEVELOPMENT
|
Erogato in altro semestre o anno
|
1047642 -
SECURITY IN SOFTWARE APPLICATIONS
|
Erogato in altro semestre o anno
|
|
10589621 -
ADVANCED MACHINE LEARNING
|
Erogato in altro semestre o anno
|
1041764 -
BIG DATA COMPUTING
|
Erogato in altro semestre o anno
|
1047205 -
CLOUD COMPUTING
|
Erogato in altro semestre o anno
|
1047628 -
FUNDAMENTALS OF COMPUTER GRAPHICS
|
Erogato in altro semestre o anno
|
1047630 -
HUMAN COMPUTER INTERACTION ON THE WEB
|
Erogato in altro semestre o anno
|
1047635 -
MACHINE LEARNING
|
Erogato in altro semestre o anno
|
1047636 -
MATHEMATICAL LOGIC FOR COMPUTER SCIENCE
|
Erogato in altro semestre o anno
|
1047638 -
MODELS OF COMPUTATION
|
Erogato in altro semestre o anno
|
10593236 -
DEEP LEARNING AND APPLIED ARTIFICIAL INTELLIGENCE
|
Erogato in altro semestre o anno
|
|
1047613 -
ADVANCED ALGORITHMS
(obiettivi)
Obiettivi generali: Questo corso propone lo studio di algoritmi evoluti e di strutture dati avanzate per rendere efficiente la risoluzione di problemi complessi.
Obiettivi specifici:
Applicare conoscenza e comprensione: Al termine del corso lo studente avrà gli strumenti per individuare il nucleo matematico proprio del problema da affrontare e per identificare la tecnica più appropiata per il progetto algoritmico risolutivo dello stesso.
Capacità critiche e di giudizio Gli studenti saranno in grado di capire quale sia il modo migliore per rappresentare e organizzare in modo significativo le informazioni note del problema
Capacità comunicative: Lo studente avrà acquisito il giusto linguaggio per presentare idee algoritmiche che esprimono dettagliatamente le caratteristiche del problema da risolvere.
Capacità di apprendimento: Lo studente avrà acquisito la capacità di pensare in "modo algoritmico", ovvero sarà in grado di estrarre tutta la conoscenza possibile da una situazione semplicemnte tramite il ragionamento.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
10589621 -
ADVANCED MACHINE LEARNING
|
Erogato in altro semestre o anno
|
10596281 -
AUTONOMOUS NETWORKING
|
Erogato in altro semestre o anno
|
1047615 -
AUTOMATIC SOFTWARE VERIFICATION METHODS
|
Erogato in altro semestre o anno
|
1041764 -
BIG DATA COMPUTING
|
Erogato in altro semestre o anno
|
1041792 -
BIOMETRIC SYSTEMS
|
Erogato in altro semestre o anno
|
1047205 -
CLOUD COMPUTING
|
Erogato in altro semestre o anno
|
1047616 -
COMPUTATIONAL COMPLEXITY
|
Erogato in altro semestre o anno
|
1047617 -
COMPUTER NETWORK PERFORMANCE
|
Erogato in altro semestre o anno
|
1047618 -
COMPUTER VISION
|
Erogato in altro semestre o anno
|
1047619 -
CONCURRENT SYSTEMS
(obiettivi)
Obiettivi generali: Capire i concetti base dei sistemi concorrenti e le metodologie adottate nella soluzione dei problemi da essi posti
Obiettivi specifici: Mutua esclusione, diverse proprietà di liveness, semafori, monitor, transazioni, atomicità, concorrenza senza mutua esclusione, altre proprietà di liveness, oggetto universale e consenso. Sistemi di transizioni etichettate, semantica a interleaving, sincronizzazione, simulazione e bisimulazione, tecniche di verifica, passaggio di nomi, sistemi di tipo.
Conoscenza e comprensione: Capire the problematiche di base dei sistemi concorrenti e le relative soluzioni possibili, i principi fondazionali dei linguaggi di programmazione concorrente e le relative tecniche di verifica
Applicare conoscenza e comprensione: essere in grado di risolvere problematiche basilari di semplici sistemi concorrenti
Capacità critiche e di giudizio: capire vantaggi e svantaggi delle varie possibili soluzioni a problematiche di sistemi concorrenti
Capacità comunicative: sviluppare un linguaggio tecnico e formale in grado di spiegare le soluzioni ideate e i relativi meriti
Capacità di apprendimento: comprendere scenari di programmazione complessi e le relative soluzioni, anche sofisticate
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047622 -
CRYPTOGRAPHY
|
Erogato in altro semestre o anno
|
1047623 -
DATA AND NETWORK SECURITY
(obiettivi)
Obiettivi generali Lo scopo di Data and Network Security è quello di esporre le problematiche e le soluzioni più aggiornate in un settore come quello della sicurezza dei dati e delle reti informatiche che è in rapida evoluzione.
Obiettivi specifici Un primo obiettivo è di introdurre i concetti principali di sicurezza informatica che includono: Identificazione e autenticazione, Virus, trojan e canali coperti, Analisi degli attacchi più diffusi, Sicurezza del sistema operativo, Sicurezza delle comunicazioni. Un secondo obiettivo è di descrivere i principali problemi di ricerca nel campo. Ad esempio, quelli che ricadono in aree che includono le seguenti: comunicazioni anonime, sicurezza Blockchain, sicurezza cloud, Framing Attacks, Location privacy, sicurezza nell'apprendimento automatico, sicurezza della rete sociale, sicurezza delle reti Software-Defined.
Conoscenza e comprensione Gli studenti verranno a conoscenza dei fondamenti di sicurezza nei sistemi operativi, nelle reti wired/wireless, nella gestione dei dati e dei principali problemi di ricerca studiati in questi settori.
Applicazione di conoscenza e comprensione Alla fine del corso gli studenti saranno in grado di progettare l’architettura di un sistema informativo aziendale sicuro e di seguire in modo autonomo l'evoluzione del settore.
Capacità di giudizio Gli studenti svilupperanno le capacità di analisi necessarie per valutare diverse alternative durante il processo di progettazione dei sistemi informativi sicuri.
Capacità comunicative Gli studenti impareranno a documentare le loro scelte, anche attraverso l'uso di strumenti di generazione di rapporti automatizzati. Avranno anche acquisito la capacità di preparare presentazioni relative ad argomenti scientifici.
Capacità di proseguire l'apprendimento in modo autonomo Le nozioni acquisite durante il corso forniscono agli studenti una base di conoscenza per poter ulteriormente approfondire gli aspetti più tecnici, e per mantenersi autonomamente informati sui continui sviluppi e aggiornamenti nel settore della sicurezza informatica.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
10593236 -
DEEP LEARNING AND APPLIED ARTIFICIAL INTELLIGENCE
|
Erogato in altro semestre o anno
|
1047624 -
DISTRIBUTED SYSTEMS
|
Erogato in altro semestre o anno
|
1047626 -
FORMAL METHODS IN SOFTWARE DEVELOPMENT
|
Erogato in altro semestre o anno
|
1047627 -
FOUNDATIONS OF DATA SCIENCE
|
Erogato in altro semestre o anno
|
1047628 -
FUNDAMENTALS OF COMPUTER GRAPHICS
|
Erogato in altro semestre o anno
|
1047630 -
HUMAN COMPUTER INTERACTION ON THE WEB
|
Erogato in altro semestre o anno
|
1047631 -
INFORMATION SYSTEMS
(obiettivi)
Obiettivi generali
Il corso di sistemi informativi analizza differenti tipologie di sistemi informativi e come esse possono contribuire al successo degli obiettivi di un’azienda; permette di comprendere gli approcci e i modelli da usare per valutare la qualità dei processi, del software e dei servizi ICT; e fornisce le conoscenze di base per pianificare, gestire e controllare i progetti IT
Obiettivi specifici
• Conoscenza e comprensione – Modello funzionale e struttura informativa dei processi aziendali – esigenze di integrazione e requisiti di controllo dei dati dei sistemi informatici aziendali – sistemi e tecnologie per sviluppare e mantenere un e-business di successo – principali settori di applicazione dei sistemi di informazione in vari settori di mercato – organizzazione IT e modelli di valutazione della qualità IT – conoscenze di base di contesto, tecniche/metodologie e soft skill per la gestione dei progetti ICT – systems and technologies to develop&maintain a successful e-business – main application areas of info systems in various industries – ICT organization and mainstream techniques (e.g. quality management) – basic definitions (context), techniques/methodologies and soft skills for project management in ICT
• Applicazione di conoscenze e comprensione (capacità) – Analizzare le diverse vategorie di requisiti estratti da differenti categorie di utenti (stakeholder) di sistemi informativi – Selezionare l’appropriato modello per valutare la qualità dei processi ICT, del prodotto software e dei servizi ICT – Sviluppare uno studio di fattibilità selezionando l’appropriata architettura applicativa e tecnologica – Preparare, per un semplice progetto ICT, un piano di sviluppo nel rispetto dei vincoli di tempo, costi, qualità e definendo l’appropriata organizzazione – Controllare un progetto ICT in corso, applicando le tecniche di project management – Comprendere a valutare le lezioni apprese nei precedenti progetti
|
6
|
SECS-P/07
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047633 -
INTENSIVE COMPUTATION
(obiettivi)
Obiettivi generali: Lo scopo del corso è descrivere i metodi per risolvere problemi che richiedono calcolo intensivo, in particolare in ambito scientifico, e le architetture di calcolo parallele adatte.
Obiettivi specifici: Programmazione con Matlab. Rappresentazione di matrici sparse. Metodi in algebra lineare. Architetture avanzate di calcolatori paralleli.
Conoscenza e comprensione: Conoscere e capire i metodi del calcolo scientifico e le architetture di calcolo.
Applicare conoscenza e comprensione: Saper risolvere i problemi applicando i metodi del calcolo scientifico; saper usare correttamente la programmazione in matlab; essere in grado di analizzare i risultati ottenuti.
Capacità critiche e di giudizio: Saper scegliere il miglior approccio, tra i vari studiati, per risolvere un determinato problema; essere in grado di confrontare correttamente i risultati ottenuti con metodi diverse e diverse architetture.
Capacità comunicative: Essere in grado di motivare le proprie scelte nella risoluzione di un problema che richieda grande capacità di calcolo
Capacità di apprendimento: Capire le differenze e i vantaggi dei diversi approcci alla soluzione di un problema. Capire le differenze e i vantaggi nell’uso di diverse architetture.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047634 -
INTERNET OF THINGS
|
Erogato in altro semestre o anno
|
1047635 -
MACHINE LEARNING
|
Erogato in altro semestre o anno
|
1047636 -
MATHEMATICAL LOGIC FOR COMPUTER SCIENCE
|
Erogato in altro semestre o anno
|
10589557 -
METHODS IN COMPUTER SCIENCE EDUCATION: ANALYSIS
|
Erogato in altro semestre o anno
|
10589558 -
METHODS IN COMPUTER SCIENCE EDUCATION: DESIGN
|
Erogato in altro semestre o anno
|
1047638 -
MODELS OF COMPUTATION
|
Erogato in altro semestre o anno
|
1047639 -
MULTIMODAL INTERACTION
(obiettivi)
Obiettivi generali: Essere in grado di progettare e valutare un sistema multimodale
Obiettivi specifici: Conoscere le caratteristiche e le tecniche fondamentali relative ai diversi canali di comunicazione uomo-macchina: gesti, interazione vocale, ecc. Conoscere le modalità di cooperazione di singoli canali. Essere in grado di progettare/implementare la fusione/fissione delle informazioni su diversi canali.
Conoscenza e comprensione: Fondamenti teorici della comunicazione su diversi canali di interazione. Fondamenti teorici della progettazione di un sistema multimodale.
Applicare conoscenza e comprensione: Essere in grado di progettare ed implementare una applicazione multimodale.
Capacità critiche e di giudizio: Essere in grado di valutare le prestazioni e la robustezza di una applicazione multimodale.
Capacità comunicative: Essere in grado di comunicare/condividere i requisiti di un sistema multimodale, le modalità operative più adatte ad una certa applicazione, e le misure di performance del sistema
Capacità di apprendimento: Essere in grado di approfondire autonomamente gli argomenti presentati nel corso, relativamente a tecniche e metodi specifici/complessi.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1038141 -
NATURAL LANGUAGE PROCESSING
|
Erogato in altro semestre o anno
|
1047640 -
NETWORK ALGORITHMS
|
Erogato in altro semestre o anno
|
10589555 -
PRACTICAL NETWORK DEFENSE
|
Erogato in altro semestre o anno
|
1047642 -
SECURITY IN SOFTWARE APPLICATIONS
|
Erogato in altro semestre o anno
|
1047643 -
TOPICS IN PHYSICS
(obiettivi)
Obiettivi generali: L’obiettivo principale del corso è di introdurre gli studenti alla meccanica quantistica e alla applicazione al calcolo quantistico
Obiettivi specifici:
Conoscenza e comprensione: Lo studente acquisirà tutti gli elementi necessari a comprendere il funzionamento di un calcolatore quantistico.
Applicazione di conoscenza e comprensione: Le tecniche apprese verranno applicate nei più famosi algoritmi quantistici oggi disponibili, quali la quantum cryptography, l’algoritmo di Shor e quello di Grover.
Autonomia di giudizio: In aula si cerca di stimolare il più possibile le discussioni sui vari aspetti della meccanica quantistica, specialmente quelli meno intuitivi, come l’entanglement, e si incoraggiano gli studenti a proporre argomenti di loro interesse inerenti il corso.
Abilità comunicative: Per superare l’esame finale, gli studenti devono illustrare due tesine in power point (o equivalente) su due argomenti, uno di meccanica quantistica e uno di calcolo quantistico. Questa attività è senza dubbio utile per preparare gli studenti a presentare in pubblico il loro lavoro.
Capacità di apprendimento successivo: Durante tutto il corso vengono indicati dei testi di riferimento con i quali gli studenti possono approfondire quanto appreso, fino ad un livello professionale. Inoltre vengono presentati anche alcuni linguaggi di simulazione del calcolo quantistico, utili per lo sviluppo di algoritmi per computer quantistici.
|
6
|
FIS/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
|
AAF1034 -
PROVA FINALE
(obiettivi)
La prova finale consiste nella discussione di una tesi di laurea magistrale, costituita da un documento scritto, preferibilmente in lingua inglese, che presenta i risultati di uno studio originale condotto su un problema di natura applicativa, sperimentale o di ricerca.
Questo permetterà di valutare la capacità di applicare le conoscenze apprese a un problema specifico, la capacità di prendere decisioni autonome e di comunicare gli aspetti metodologici e tecnici del lavoro svolto.
|
36
|
|
-
|
-
|
-
|
-
|
Per la prova finale e la lingua straniera (art.10, comma 5, lettera c)
|
ITA |
Networks and Security
Primo anno
Primo semestre
Insegnamento
|
CFU
|
SSD
|
Ore Lezione
|
Ore Eserc.
|
Ore Lab
|
Ore Studio
|
Attività
|
Lingua
|
10596281 -
AUTONOMOUS NETWORKING
(obiettivi)
Obbiettivi generali: Il corso fornirà agli studenti la capacità di affrontare le problematiche legate alla progettazione, implementazione e utilizzo dei sistemi di reti autonomi. Il corso presenterà sia le basi teoriche che gli aspetti pratici che è necessario conoscere per sviluppare questi sistemi.
Obiettivi specifici: La combinazione di molti dispositivi collegati eterogenei, inclusi dispositivi in rapido movimento e capacità di comunicazione avanzate che consentono interazioni in tempo reale sta portando alla creazione di sistemi su una scala e / o un livello di complessità che va oltre la capacità degli umani di comprendere e controllare pienamente . La gestione e il funzionamento di questi sistemi di rete richiedono un livello estremamente elevato di automazione intelligente. Scopo di questo corso è fornire conoscenze sulle principali tecnologie legate alla rete la cui interazione sarà responsabile per rendere autonomi i sistemi di rete. Queste tecnologie, basate principalmente sull'apprendimento di rinforzo (RL), consentono ai sistemi di reagire a ciò che sta accadendo nel loro ambiente e di rispondere di conseguenza.
Conoscenza e comprensione: Alla fine del corso gli studenti avranno conoscenze sulle tecnologie - sistemi di comunicazione in rete wireless come reti IoT, reti di backscattering e reti aeree - e metodologie - apprendimento di rinforzo - per progettare reti autonome. In particolare, il corso si concentrerà su problemi di comunicazione e networking di reti autonome e possibili soluzioni.
Applicare conoscenza e comprensione: Alla fine del corso gli studenti conosceranno le tecnologie e le metodologie per progettare reti autonome. In particolare, il corso si concentrerà su problemi di comunicazione e networking nelle reti autonome e possibili soluzioni.
Capacità critiche e di giudizio: Gli studenti svilupperanno le capacità di analisi necessarie per valutare diverse scelte progettuali alternative selezionando la migliore per ogni specifico scenario applicativo e tipo di tecnologia.
Capacità comunicative: Gli studenti impareranno ad analizzare e presentare articoli scientifici, idee di ricerca o soluzioni tecniche di settore, descrivendole in modo sintetico ed accurato, con un linguaggio tecnico adeguato.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
1047617 -
COMPUTER NETWORK PERFORMANCE
(obiettivi)
Obiettivi generali: Lo scopo del corso è lo studio di metodi per stimare le prestazioni dei sistemi di rete esistenti e dimensionare nuovi sistemi ad alte prestazioni.
Obiettivi specifici: Analisi di processi stocastici discreti e continui, reti di code, metodi di misurazione delle reti tramite network tomography, analisi delle prestazioni di sistemi wired e wireless.
Conoscenza e comprensione: Il corso permettera` di sviluppare la capacita` di caratterizzare i problemi prestazionali nelle reti di calcolatori e individuare le criticita` di questi sistemi. Applicare conoscenza e comprensione: Attraverso il corso lo studente imparera` a riconoscere i problemi prestazionali e a progettare le relative soluzioni, attraverso la modellazione analitica e la soluzione di relativi problemi di ottimizzazione.
Capacità critiche e di giudizio: Il corso mettera` lo studente in condizione di saper scegliere, dato un problema, la migliore strategia risolutiva, fermo restando la comprensione di vincoli esistenti in termini di dimensionamento e costi delle soluzioni possibili.
Capacità comunicative: Lo studente sara` in grado di motivare le proprie scelte nella proposta di uno specifico approccio risolutivo di un problema relativo alle prestazioni di una rete di calcolatori, e fornire una analisi comparativa dell’approccio scelto con altri approcci possibili. Capacità di apprendimento: Lo studente sviluppera` capacita` di studio autonome e di comprensione e valutazione critica di nuove metodologie, tecnologie e modelli di sviluppo per sistemi di rete ad alte prestazioni.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
1047622 -
CRYPTOGRAPHY
(obiettivi)
Obiettivi Generali: Lo scopo del corso è quello di tramandare i fondamenti della crittografia, che è la componente principale per la sicurezza nelle applicazioni digitali odierne.
Obiettivi Specifici: Gli studenti impareranno la metodologia della sicurezza dimostrabile, che permette di dimostrare la sicurezza dei moderni crittosistemi in senso matematico.
Conoscenza e Comprensione: -) Conoscenza dei fondamenti matematici della crittografia moderna. -) Conoscenza delle principali assunzioni crittografiche, su cui si basa la sicurezza dei moderni crittosistemi. -) Conoscenza degli schemi crittografici usati nella vita reale. Comprensione delle loro proprietà (teoriche e pratiche).
Applicare Conoscenza e Comprensione: -) Come selezionare la giusta primitiva crittografica per una data applicazione. -) Come analizzare la sicurezza di un dato crittosistema.
Capacità critiche e di giudizio: Gli studenti saranno in grado di giudicare se una data primitiva crittografica è sicura oppure no.
Capacità Comunicative: Come descrivere la sicurezza di una costruzione crittografica nel linguaggio della sicurezza dimostrabile.
Capacità di Apprendimento Successivo: Gli studenti interessati alla ricerca verranno a conoscenza di alcuni problemi aperti nell'area, ed otterranno le basi necessarie per studi più approfonditi in materia.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
1047623 -
DATA AND NETWORK SECURITY
|
Erogato in altro semestre o anno
|
1047634 -
INTERNET OF THINGS
|
Erogato in altro semestre o anno
|
|
10589621 -
ADVANCED MACHINE LEARNING
|
Erogato in altro semestre o anno
|
1047615 -
AUTOMATIC SOFTWARE VERIFICATION METHODS
|
Erogato in altro semestre o anno
|
1047205 -
CLOUD COMPUTING
|
Erogato in altro semestre o anno
|
1047619 -
CONCURRENT SYSTEMS
|
Erogato in altro semestre o anno
|
1047630 -
HUMAN COMPUTER INTERACTION ON THE WEB
|
Erogato in altro semestre o anno
|
1047633 -
INTENSIVE COMPUTATION
|
Erogato in altro semestre o anno
|
1047635 -
MACHINE LEARNING
(obiettivi)
Obiettivi generali Il corso introduce le motivazioni, paradigm e applicazioni dei sistemi di apprendimento automatic. Si tratta di un corso introduttivo. Obiettivi specifici Apprendimento supervisionato: alberi di decisione, apprendimento di istanze, naïve Bayes, support vector machine, neural networks, deep learning, ensamble methods. Apprendimento non supervisionato: clustering, association rules. Apprendimento semi-supervisionato: Reinforcement learning. Genetic algorithms e genetic programming. Problemi generali: underfitting, overfitting, model selection, error analysis.
Conoscenza e comprensione: Gli studenti impareranno quali algoritmi si adattano meglio a quali categorie di problemi, come descrivere il dominio dell'applicazione, come regolare parametri e iperparametri del modello, come testare le prestazioni.
Applicazione di conoscenza e comprensione: Gli studenti faranno esperimenti utilizzando toolkits di ML quali Weka, Tensor Flow e scikit-lear.
Autonomia di giudizio: Gli studenti saranno in grado di comprendere le categorie di problemi che possono essere risolti in modo efficiente con algoritmi di apprendimento automatico, a quali condizioni.
Abilità comunicative: Queste saranno valutate durante gli esami scritti e la reportistica del progetto.
Capacità di apprendimento successivo: Gli studenti riceveranno una solida base per approfondire ulteriormente i metodi più avanzati, come il deep learning, l'apprendimento probabilistico ed altri.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
1047639 -
MULTIMODAL INTERACTION
|
Erogato in altro semestre o anno
|
1047640 -
NETWORK ALGORITHMS
|
Erogato in altro semestre o anno
|
1047642 -
SECURITY IN SOFTWARE APPLICATIONS
(obiettivi)
Obiettivi generali
I fondamenti della sicurezza nei programmi software
Obiettivi specifici
Metodologie e strumenti per trovare e rimuovere le vulnerabilità più comuni del software e per sviluppare software senza falle di sicurezza Conoscenza e comprensione
conoscenza e capacità di comprensione delle tecniche più efficaci per la rimozione di vulnerabilità dal codice e per sviluppare software che soddisfi specifiche politiche di sicurezza. Applicare conoscenza e comprensione
Essere in grado di applicare e trasferire la propria conoscenza delle metodologie alla scelta delle tecniche e strumenti appropriati risolvere problemi di sicurezza del software Autonomia di giudizio
Capacità d’interpretazione autonoma per proporre soluzioni appropriate a problemi di sicurezza software congruenti con le tecnologie disponibili. Abilità comunicative
Capacità di presentare e di argomentare le proprie scelte in merito alle metodologie ed agli strumenti utilizzati per le soluzioni proposte, sia con colleghi che con utenti Capacità di apprendimento successivo
Capacità di apprendere e approfondire nuove tecniche nell’ambito della sicurezza software informatica sia degli aspetti metodologici sia di quelli tecnologici
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
10593236 -
DEEP LEARNING AND APPLIED ARTIFICIAL INTELLIGENCE
|
Erogato in altro semestre o anno
|
|
1047613 -
ADVANCED ALGORITHMS
|
Erogato in altro semestre o anno
|
10589621 -
ADVANCED MACHINE LEARNING
|
Erogato in altro semestre o anno
|
10596281 -
AUTONOMOUS NETWORKING
(obiettivi)
Obbiettivi generali: Il corso fornirà agli studenti la capacità di affrontare le problematiche legate alla progettazione, implementazione e utilizzo dei sistemi di reti autonomi. Il corso presenterà sia le basi teoriche che gli aspetti pratici che è necessario conoscere per sviluppare questi sistemi.
Obiettivi specifici: La combinazione di molti dispositivi collegati eterogenei, inclusi dispositivi in rapido movimento e capacità di comunicazione avanzate che consentono interazioni in tempo reale sta portando alla creazione di sistemi su una scala e / o un livello di complessità che va oltre la capacità degli umani di comprendere e controllare pienamente . La gestione e il funzionamento di questi sistemi di rete richiedono un livello estremamente elevato di automazione intelligente. Scopo di questo corso è fornire conoscenze sulle principali tecnologie legate alla rete la cui interazione sarà responsabile per rendere autonomi i sistemi di rete. Queste tecnologie, basate principalmente sull'apprendimento di rinforzo (RL), consentono ai sistemi di reagire a ciò che sta accadendo nel loro ambiente e di rispondere di conseguenza.
Conoscenza e comprensione: Alla fine del corso gli studenti avranno conoscenze sulle tecnologie - sistemi di comunicazione in rete wireless come reti IoT, reti di backscattering e reti aeree - e metodologie - apprendimento di rinforzo - per progettare reti autonome. In particolare, il corso si concentrerà su problemi di comunicazione e networking di reti autonome e possibili soluzioni.
Applicare conoscenza e comprensione: Alla fine del corso gli studenti conosceranno le tecnologie e le metodologie per progettare reti autonome. In particolare, il corso si concentrerà su problemi di comunicazione e networking nelle reti autonome e possibili soluzioni.
Capacità critiche e di giudizio: Gli studenti svilupperanno le capacità di analisi necessarie per valutare diverse scelte progettuali alternative selezionando la migliore per ogni specifico scenario applicativo e tipo di tecnologia.
Capacità comunicative: Gli studenti impareranno ad analizzare e presentare articoli scientifici, idee di ricerca o soluzioni tecniche di settore, descrivendole in modo sintetico ed accurato, con un linguaggio tecnico adeguato.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047615 -
AUTOMATIC SOFTWARE VERIFICATION METHODS
|
Erogato in altro semestre o anno
|
1041764 -
BIG DATA COMPUTING
|
Erogato in altro semestre o anno
|
1041792 -
BIOMETRIC SYSTEMS
(obiettivi)
Obiettivi generali: Essere in grado di progettare e valutare un sistema biometrico o multibiometrico
Obiettivi specifici: Conoscere le caratteristiche e le tecniche fondamentali relative alle biometrie fisiche come volto, impronte, iride, ecc., e comportamentali come camminata, firma (caratteristiche dinamiche), stile di battitura, ecc. Conoscere le caratteristiche dell’architettura di un sistema biometrico: sistemi unimodali e multimodali. Essere in grado di valutare le prestazioni di un sistema biometrico in base alla modalità adottata: verifica, identificazione. Essere in grado di valutare/garantire la robustezza di un sistema biometrico rispetto ad attacchi di spoofing (furto di identità).
Conoscenza e comprensione: Fondamenti teorici della progettazione di un sistema biometrico e delle tecniche di estrazione/confronto delle caratteristiche specifiche per i principali tratti biometrici.
Applicare conoscenza e comprensione: Essere in grado di progettare ed implementare una applicazione di riconoscimento biometrico per almeno uno tratto biometrico.
Capacità critiche e di giudizio: Essere in grado di valutare le prestazioni e la robustezza agli attacchi di un sistema biometrico. Essere in grado di trasferire tecniche e protocolli in contesti diversi.
Capacità comunicative: Essere in grado di comunicare/condividere i requisiti di un sistema biometrico, le modalità operative più adatte ad una certa applicazione, e le misure di performance del sistema
Capacità di apprendimento: Essere in grado di approfondire autonomamente gli argomenti presentati nel corso, relativamente a tecniche e metodi specifici/complessi o a tratti biometrici non presenti tra gli argomenti.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047205 -
CLOUD COMPUTING
|
Erogato in altro semestre o anno
|
1047616 -
COMPUTATIONAL COMPLEXITY
|
Erogato in altro semestre o anno
|
1047617 -
COMPUTER NETWORK PERFORMANCE
(obiettivi)
Obiettivi generali: Lo scopo del corso è lo studio di metodi per stimare le prestazioni dei sistemi di rete esistenti e dimensionare nuovi sistemi ad alte prestazioni.
Obiettivi specifici: Analisi di processi stocastici discreti e continui, reti di code, metodi di misurazione delle reti tramite network tomography, analisi delle prestazioni di sistemi wired e wireless.
Conoscenza e comprensione: Il corso permettera` di sviluppare la capacita` di caratterizzare i problemi prestazionali nelle reti di calcolatori e individuare le criticita` di questi sistemi. Applicare conoscenza e comprensione: Attraverso il corso lo studente imparera` a riconoscere i problemi prestazionali e a progettare le relative soluzioni, attraverso la modellazione analitica e la soluzione di relativi problemi di ottimizzazione.
Capacità critiche e di giudizio: Il corso mettera` lo studente in condizione di saper scegliere, dato un problema, la migliore strategia risolutiva, fermo restando la comprensione di vincoli esistenti in termini di dimensionamento e costi delle soluzioni possibili.
Capacità comunicative: Lo studente sara` in grado di motivare le proprie scelte nella proposta di uno specifico approccio risolutivo di un problema relativo alle prestazioni di una rete di calcolatori, e fornire una analisi comparativa dell’approccio scelto con altri approcci possibili. Capacità di apprendimento: Lo studente sviluppera` capacita` di studio autonome e di comprensione e valutazione critica di nuove metodologie, tecnologie e modelli di sviluppo per sistemi di rete ad alte prestazioni.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047618 -
COMPUTER VISION
|
Erogato in altro semestre o anno
|
1047619 -
CONCURRENT SYSTEMS
|
Erogato in altro semestre o anno
|
1047622 -
CRYPTOGRAPHY
(obiettivi)
Obiettivi Generali: Lo scopo del corso è quello di tramandare i fondamenti della crittografia, che è la componente principale per la sicurezza nelle applicazioni digitali odierne.
Obiettivi Specifici: Gli studenti impareranno la metodologia della sicurezza dimostrabile, che permette di dimostrare la sicurezza dei moderni crittosistemi in senso matematico.
Conoscenza e Comprensione: -) Conoscenza dei fondamenti matematici della crittografia moderna. -) Conoscenza delle principali assunzioni crittografiche, su cui si basa la sicurezza dei moderni crittosistemi. -) Conoscenza degli schemi crittografici usati nella vita reale. Comprensione delle loro proprietà (teoriche e pratiche).
Applicare Conoscenza e Comprensione: -) Come selezionare la giusta primitiva crittografica per una data applicazione. -) Come analizzare la sicurezza di un dato crittosistema.
Capacità critiche e di giudizio: Gli studenti saranno in grado di giudicare se una data primitiva crittografica è sicura oppure no.
Capacità Comunicative: Come descrivere la sicurezza di una costruzione crittografica nel linguaggio della sicurezza dimostrabile.
Capacità di Apprendimento Successivo: Gli studenti interessati alla ricerca verranno a conoscenza di alcuni problemi aperti nell'area, ed otterranno le basi necessarie per studi più approfonditi in materia.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047623 -
DATA AND NETWORK SECURITY
|
Erogato in altro semestre o anno
|
10593236 -
DEEP LEARNING AND APPLIED ARTIFICIAL INTELLIGENCE
|
Erogato in altro semestre o anno
|
1047624 -
DISTRIBUTED SYSTEMS
(obiettivi)
Obiettivi generali Il corso ha come obiettivo di illustrare i concetti fondamentali dei sistemi distribuiti e la loro implementazione nei sistemi reali a larga scala moderni.
Obiettivi specifici Gli studenti si familiarizzeranno con tecniche di analisi, progetto e monitoraggio di sistemi distribuiti
Conoscenza e comprensione Al termine del corso gli studenti avranno acquisito conoscenze avanzate relative al monitoraggio delle computazioni distribuite, fault tollerance e failure detectors, consistenza e consenso, orologi logici e vector clocks per i sistemi asincroni,
Applicare conoscenza e comprension Al termine del corso gli studenti saranno in grado di applicare le conoscenze acquisite all'analisi di sistemi reali come ad esempio Chord e Amazon.
Capacità critiche e di giudizio Lo studente otterrà la capacità di analisi e valutazione della correttezza e dell’efficienza delle computazione distribuite, di comprendere le loro caratteristiche principali e di valutare in maniera critica pregi e difetti.
Capacità comunicative Lo studente acquisirà la capacità di esporre in modo chiaro ed organizzato le proprie conoscenze, capacità che verrà verificata durante la prova orale.
Capacità di apprendimento successivo Le conoscenze acquisite permetteranno allo studente di affrontare lo studio di ulteriori ma più specifici protocolli di tipo distribuito in modo approfondito e completo, e di essere in grado di progettare soluzioni di system design a partire da quelle dei sistemi reali affrontati in classe.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047626 -
FORMAL METHODS IN SOFTWARE DEVELOPMENT
(obiettivi)
Obiettivi generali: L'insegnamento è indirizzato all'acquisizione delle conoscenze logiche e di modellazione necessarie alla verifica di sistemi hardware e software complessi (con particolare riferimento al Model Checking).
Obiettivi specifici:
Conoscenza e comprensione: Alla fine del corso lo studente avrà piena comprensione degli strumenti di modellazione proposti (model checkers).
Capacità di applicare conoscenza e comprensione: Alla fine del corso lo studente sarà in grado di utilizzare gli strumenti presentati durante il corso e di approfondirne lo studio consultando autonomamente altri testi dedicati all'argomento e materiale scientifico che lo riguarda.
Capacità critiche e di giudizio: Le conoscenze acquisite permetteranno allo studente di affrontare le applicazioni proposte in altri insegnamenti e affrontare i problemi che gli verranno proposti nella carriera lavorativa in tema di modellazione e verifica di sistemi.
Capacità di comunicazione: Lo studente viene stimolato ad esporre e comunicare le proprie esperienze nella cerchia dei suoi colleghi.
Capacità di proseguire lo studio: Il corso tratta soltanto alcuni dei campi proponibili, ma dà notizia anche di un ampio spettro di tecniche che possono essere utilizzate in questo campo in modo che egli possa criticamente scegliere a seconda dei casi.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047627 -
FOUNDATIONS OF DATA SCIENCE
(obiettivi)
Obiettivi generali: Acquisire i fondamenti della scienza dai dati e dell'apprendimento automatico.
Obiettivi specifici: Rendere gli studenti consapevoli degli strumenti teorici e pratici della scienza dei dati e dell'apprendimento automatico, nonché dei loro limiti intrinseci; rendere gli studenti in grado di affrontare problemi reali attraverso gli strumenti più appropriati.
Conoscenza e comprensione: Il corso fornisce le nozioni, tecniche e metodologie di base utilizzate nell'ambito della scienza dei dati e dell'apprendimento automatico. Fornisce inoltre i rudimenti di programmazione necessari ad applicare la teoria a casi reali
Applicare conoscenza e comprensione: Alla fine del corso, gli studenti sapranno affrontare problemi concreti di scienza dei dati, dalla loro formalizzazione sino alla manipolazione dei dati attraverso appropriati strumenti software.
Capacità critiche e di giudizio: Gli studenti saranno in grado di scegliere le tecniche da applicare al caso specifico e di valutarne le prestazioni.
Capacità comunicative: Gli studenti saranno in grado di rappresentare e comunicare l'informazione estratta dai dati, attraverso l'uso razionale di grafici e indicatori.
Capacità di apprendimento: Gli studenti saranno messi in grado di apprendere autonomamente nozioni sia teoriche che pratiche del campo.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047628 -
FUNDAMENTALS OF COMPUTER GRAPHICS
|
Erogato in altro semestre o anno
|
1047630 -
HUMAN COMPUTER INTERACTION ON THE WEB
|
Erogato in altro semestre o anno
|
1047631 -
INFORMATION SYSTEMS
|
Erogato in altro semestre o anno
|
1047633 -
INTENSIVE COMPUTATION
|
Erogato in altro semestre o anno
|
1047634 -
INTERNET OF THINGS
|
Erogato in altro semestre o anno
|
1047635 -
MACHINE LEARNING
(obiettivi)
Obiettivi generali Il corso introduce le motivazioni, paradigm e applicazioni dei sistemi di apprendimento automatic. Si tratta di un corso introduttivo. Obiettivi specifici Apprendimento supervisionato: alberi di decisione, apprendimento di istanze, naïve Bayes, support vector machine, neural networks, deep learning, ensamble methods. Apprendimento non supervisionato: clustering, association rules. Apprendimento semi-supervisionato: Reinforcement learning. Genetic algorithms e genetic programming. Problemi generali: underfitting, overfitting, model selection, error analysis.
Conoscenza e comprensione: Gli studenti impareranno quali algoritmi si adattano meglio a quali categorie di problemi, come descrivere il dominio dell'applicazione, come regolare parametri e iperparametri del modello, come testare le prestazioni.
Applicazione di conoscenza e comprensione: Gli studenti faranno esperimenti utilizzando toolkits di ML quali Weka, Tensor Flow e scikit-lear.
Autonomia di giudizio: Gli studenti saranno in grado di comprendere le categorie di problemi che possono essere risolti in modo efficiente con algoritmi di apprendimento automatico, a quali condizioni.
Abilità comunicative: Queste saranno valutate durante gli esami scritti e la reportistica del progetto.
Capacità di apprendimento successivo: Gli studenti riceveranno una solida base per approfondire ulteriormente i metodi più avanzati, come il deep learning, l'apprendimento probabilistico ed altri.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047636 -
MATHEMATICAL LOGIC FOR COMPUTER SCIENCE
|
Erogato in altro semestre o anno
|
10589557 -
METHODS IN COMPUTER SCIENCE EDUCATION: ANALYSIS
|
Erogato in altro semestre o anno
|
10589558 -
METHODS IN COMPUTER SCIENCE EDUCATION: DESIGN
(obiettivi)
Obiettivi generali: Conoscere ed applicare le più recenti metodologie di insegnamento dell'Informatica nella scuola superiore. Il corso svilupperà una serie di use-cases relativi alle tecniche di insegnamento dell'Informatica a scuola.
Obiettivi specifici: • Progettazione e sviluppo di metodologie di insegnamento dell'informatica: illustrazione dei principi e dei metodi per la costruzione di attività e più in generale di un curriculum di informatica coerente con gli obiettivi fissati dalle indicazioni nazionali per i licei e dalle linee guida per gli istituti tecnici e professionali. • Metodologie e tecnologie didattiche per lo studio del rapporto dell'informatica con la società attuale, e in particolare degli aspetti etici legati, per esempio, al trattamento dei dati personali, all'automazione di decisioni e raccomandazioni, alla ridefinizione del concetto di copyright.
Conoscenza e comprensione: Principi e metodi di costruzione di attività didattiche di C.S. nella scuola superiore. Aspetti etici dell'uso dei dati e dei contenuti personali.
Applicazione di conoscenza e comprensione: Agli studenti verrà richiesto di scegliere e sviluppare alcuni moduli didattici per la scuola superiore.
Autonomia di giudizio: Lo studente sarà autonomo nello scegliere i moduli da sviluppare e nella loro fase di progetto e realizzazione.
Abilità comunicative: Gli studenti dovranno dimostrare di saper produrre moduli didattici di qualità, con una forte capacità di interessare e comunicare con precisione gli argomenti chiave della lezione da sviluppare.
Capacità di apprendimento successivo: La metodologia di progetto dei moduli didattici vista nel corso sarà facilmente applicabile ad altri tipi di corsi.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047638 -
MODELS OF COMPUTATION
(obiettivi)
Obiettivi generali L'insegnamento è indirizzato all'acquisizione delle conoscenze matematiche relative ad aspetti fondamentali dei linguaggi di programmazione funzionale e imperativa con particolare attenzione ai meccanismi di esecuzione dei programmi.
Obiettivi specifici
Conoscenza e comprensione: Alla fine del corso lo studente avrà piena comprensione degli strumenti matematici proposti.
Capacità di applicare conoscenza e comprensione: Lo studente sarà in grado di approfondire lo studio consultando autonomamente manuali o pubblicazioni scientifiche.
Capacità critiche e di giudizio: Le conoscenze acquisite permetteranno allo studente di individuare e confrontare in altri ambiti gli argomenti proposti nell'uso di linguaggi di programmazione, in particolare nell'ambito lavorativo.
Capacità di comunicare quanto si è appreso: Lo studente viene stimolato ad esporre e comunicare le proprie esperienze ai suoi colleghi.
Capacità di proseguire lo studio in modo autonomo nel corso della vita: Il corso tratta aspetti fondamentali della programmazione, assicurando allo studente la possibilità di individuarli autonomamente nell'uso di ogni particolare linguaggio.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047639 -
MULTIMODAL INTERACTION
|
Erogato in altro semestre o anno
|
1038141 -
NATURAL LANGUAGE PROCESSING
|
Erogato in altro semestre o anno
|
1047640 -
NETWORK ALGORITHMS
|
Erogato in altro semestre o anno
|
10589555 -
PRACTICAL NETWORK DEFENSE
|
Erogato in altro semestre o anno
|
1047642 -
SECURITY IN SOFTWARE APPLICATIONS
(obiettivi)
Obiettivi generali
I fondamenti della sicurezza nei programmi software
Obiettivi specifici
Metodologie e strumenti per trovare e rimuovere le vulnerabilità più comuni del software e per sviluppare software senza falle di sicurezza Conoscenza e comprensione
conoscenza e capacità di comprensione delle tecniche più efficaci per la rimozione di vulnerabilità dal codice e per sviluppare software che soddisfi specifiche politiche di sicurezza. Applicare conoscenza e comprensione
Essere in grado di applicare e trasferire la propria conoscenza delle metodologie alla scelta delle tecniche e strumenti appropriati risolvere problemi di sicurezza del software Autonomia di giudizio
Capacità d’interpretazione autonoma per proporre soluzioni appropriate a problemi di sicurezza software congruenti con le tecnologie disponibili. Abilità comunicative
Capacità di presentare e di argomentare le proprie scelte in merito alle metodologie ed agli strumenti utilizzati per le soluzioni proposte, sia con colleghi che con utenti Capacità di apprendimento successivo
Capacità di apprendere e approfondire nuove tecniche nell’ambito della sicurezza software informatica sia degli aspetti metodologici sia di quelli tecnologici
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047643 -
TOPICS IN PHYSICS
|
Erogato in altro semestre o anno
|
|
Secondo semestre
Insegnamento
|
CFU
|
SSD
|
Ore Lezione
|
Ore Eserc.
|
Ore Lab
|
Ore Studio
|
Attività
|
Lingua
|
10596281 -
AUTONOMOUS NETWORKING
|
Erogato in altro semestre o anno
|
1047617 -
COMPUTER NETWORK PERFORMANCE
|
Erogato in altro semestre o anno
|
1047622 -
CRYPTOGRAPHY
|
Erogato in altro semestre o anno
|
1047623 -
DATA AND NETWORK SECURITY
|
Erogato in altro semestre o anno
|
1047634 -
INTERNET OF THINGS
(obiettivi)
Obiettivi generali: Il corso illustra gli aspetti metodologici, teorici e pratici relativi alla progettazione di reti wireless e Internet delle cose. Il corso prevede un laboratorio.
Obiettivi specifici Introduzione alle reti wireless, architetture e protocolli usati nelle reti cellulari info al 5G e nei sistemi Internet delle cose, analisi delle soluzioni di ricerca relative ad alcune delle sfide per la realizzazione dei sistemi internet delle cose (abbattimento del consumo energetico, integrazione del mondo IoT e della robotica, sicurezza delle informazioni).
Struttura sintetica del corso: - Introduzione alle reti radio - Dai sistemi cellulari 2G al 5G - Protocolli per sensing systems: protocolli di MAC, routing, localizzazione e sincronizzazione - Verso l'Internet delle cose: caratteristiche e problematiche, protocolli standard e tecnologie, scelte progettuali per diversi ambiti verticali, sfide ancora aperte - Aspetti avanzati dell'IoT: zero-power IoT; aspetti di sicurezza; uso di blockchain in applicazioni IoT; ottimizzazione di sistemi mediante tecniche di machine learning; integrazione di robotica e IoT systems (esempio dell'Internet of Underwater Things). -Lab di programmazione IoT
Conoscenze e comprensione: Alla fine del corso lo studente saprà leggere e comprendere articoli scientifici, documenti tecnici e standard del settore; avrà compreso i trade-off prestazionali associati a diverse scelte progettuali. Sarà quindi in grado di progettare futuri sistemi wireless e IoT. Avrà fatto prime esperienze pratiche relative alla programmazione e valutazione sperimentale di tali sistemi.
Applicazione di conoscenza e comprensione: Gli studenti saranno in grado di partecipare alla progettazione di futuri sistemi e applicazioni IoT e di sistemi 5G.
Capacità di giudizio: Gli studenti svilupperanno le capacità di analisi necessarie per valutare diverse scelte progettuali alternative selezionando la migliore per ogni specifico scenario applicativo e tipo di tecnologia.
Capacità di comunicazione: Gli studenti impareranno ad analizzare e presentare articoli scientifici, idee di ricerca o soluzioni tecniche di settore, descrivendole in modo sintetico ed accurato, con un linguaggio tecnico adeguato.
Capacità di apprendimento: Gli studenti acquisiranno sia competenze teoriche che pratiche relative alla progettazione dei sistemi wireless e IoT, che li metteranno in grado di proseguire l'approfondimento di questi argomenti.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
|
10589621 -
ADVANCED MACHINE LEARNING
|
Erogato in altro semestre o anno
|
1047615 -
AUTOMATIC SOFTWARE VERIFICATION METHODS
|
Erogato in altro semestre o anno
|
1047205 -
CLOUD COMPUTING
(obiettivi)
Obiettivi generali : Il Cloud Computing è divenuto una delle fondamentali tecnologie dell’informazione, fornendo elevata scalabilità ed elasticità nella fornitura di applicazioni distribuite (aziendali e scientifiche). Alla fine del corso gli studenti avranno gli strumenti per comprendere l’impatto del Cloud Computing in un ambiente aziendale (e non) e le implicazioni tecnologiche nello sviluppo di applicazioni Cloud, specificatamente applicazioni per la memorizzazione e l’elaborazione di big data.
Obiettivi specifici Alla fine del corso, gli studenti avranno acquisito gli strumenti per: - usare le tecnologie di virtualizzazione a livello di sistema e a livello di applicazione - usare tecnologie IaaS e PaaS - progettare architetture virtualizzate - fare il deployment di applicazioni Cloud - valutare costi e prestazioni di sistemi Cloud
Conoscenza e comprensione: Alla fine del corso, gli studenti avranno acquisito la conoscenza relativa ai fattori che hanno influenzato la diffusione del Cloud Computing, alle tecnologie di virtualizzazione, alle architetture Cloud (autoscaling, load balancing, monitoring, high availability), ai sistemi di memorizzazione dei dati nel Cloud Alla fine del corso, gli studenti saranno capaci di comprendere i principi di funzionamento delle soluzioni basate su Cloud (design and operation) e di comprendere problemi di ricerca applicata relativi alle soluzioni basate su Cloud
Applicarei conoscenza e comprensione: Alla fine del corso, gli studenti saranno capaci di - spiegare i principi del Cloud Computing - spiegare le principali tecnologie Cloud - risolvere problemi che richiedono l’uso delle tecnologie Cloud e del design e deployment di architetture virtualizzate e di applicazioni Cloud - valutare le prestazioni e i costi di soluzioni basate su Cloud
Capaità critiche e di giudizio: Nel corso gli studenti svilupperanno abilità di pensiero critico nel campo del Cloud Computing
Capacità comunicative: Alla fine del corso gli studenti saranno capaci di comunicare le nozioni imparate a personale tecnico e manageriale.
Capacità di apprendimento successivo: Dopo il corso, gli studenti avranno acquisito la conoscenza per seguire corsi avanzati di Cloud Computing e di tecnologie big data.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
1047619 -
CONCURRENT SYSTEMS
|
Erogato in altro semestre o anno
|
1047630 -
HUMAN COMPUTER INTERACTION ON THE WEB
(obiettivi)
Obiettivi generali Il corso di sistemi informativi analizza differenti tipologie di sistemi informativi e come esse possono contribuire al successo degli obiettivi di un’azienda; permette di comprendere gli approcci e i modelli da usare per valutare la qualità dei processi, del software e dei servizi ICT; e fornisce le conoscenze di base per pianificare, gestire e controllare i progetti IT.
Obiettivi specifici
• Conoscenza e comprensione – Modello funzionale e struttura informativa dei processi aziendali – esigenze di integrazione e requisiti di controllo dei dati dei sistemi informatici aziendali – sistemi e tecnologie per sviluppare e mantenere un e-business di successo – principali settori di applicazione dei sistemi di informazione in vari settori di mercato – organizzazione IT e modelli di valutazione della qualità IT – conoscenze di base di contesto, tecniche/metodologie e soft skill per la gestione dei progetti ICT
• Applicazione di conoscenze e comprensione – Analizzare le diverse tipologie di requisiti in relazione a differenti categorie di utenti (stakeholder) di sistemi informativi – Selezionare l’appropriato modello per valutare la qualità dei processi ICT, del prodotto software e dei servizi ICT – Sviluppare uno studio di fattibilità selezionando l’appropriata architettura applicativa e tecnologica – Preparare, per un semplice progetto ICT, un piano di sviluppo nel rispetto dei vincoli di tempo, costi, qualità e definendo l’appropriata organizzazione – Controllare un progetto ICT in corso, applicando le tecniche di project management – Comprendere a valutare le lezioni apprese nei precedenti progetti
Capacità critiche e di giudizio: Gli studenti, mediante test e case study, acquisiranno competenze nella comprensione dei tipi di sistemi informativi, nell’uso dei modelli di quality management e nella pianificazione e gestione di un progetto.
Capacità comunicative: Gli studenti, costituiti in team, saranno coinvolti in attività finalizzate alla realizzazione di un piano di comunicazione di un progetto basato su un case study, che sarà mostrato ai colleghi spiegando le ragioni delle scelte adottate.
Capacità di apprendimento: La capacità di apprendimento sarà stimolata attraverso la preparazione di uno studio di fattibilità contenente: [a] la definizione dei requisiti del tipo di sistema informativo più adatto; [b] la definizione dei requisiti tecnici e di qualità; [c] la pianificazione di un progetto di implementazione del sistema informativo.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
1047633 -
INTENSIVE COMPUTATION
|
Erogato in altro semestre o anno
|
1047635 -
MACHINE LEARNING
|
Erogato in altro semestre o anno
|
1047639 -
MULTIMODAL INTERACTION
|
Erogato in altro semestre o anno
|
1047640 -
NETWORK ALGORITHMS
|
Erogato in altro semestre o anno
|
1047642 -
SECURITY IN SOFTWARE APPLICATIONS
|
Erogato in altro semestre o anno
|
10593236 -
DEEP LEARNING AND APPLIED ARTIFICIAL INTELLIGENCE
(obiettivi)
Obiettivi generali Acquisire familiarità con tecniche avanzate di machine learning supervisionato e non supervisionato; acquisire competenze di modellazione di problemi complessi attraverso tecniche di deep learning, e saperle applicare a contesti applicativi diversi.
Obiettivi specifici Gli argomenti includono: reti neurali profonde, il loro addestramento e l'interpretazione dei risultati; reti convoluzionali e architetture prominenti; teoria del deep learning con particolare riferimento a questioni di convergenza; utilizzo di framework esistenti per l'implementazione di tecniche avanzate di machine learning; autoencoders; attacchi avversari.
Conoscenza e comprensione: Conoscenza sul funzionamento delle reti neurali e loro interpretazione matematica come approssimatori universali. Comprensione dei limiti e delle potenzialità di modelli avanzati di machine learning.
Applicazione di conoscenza e comprensione Progettazione, implementazione, messa in esercizio e analisi di architetture di deep learning per risolvere problemi complessi in disparati ambiti applicativi.
Autonomia di giudizio Essere in grado di valutare le prestazioni di diverse architetture, e di valutare la capacità di generalizzazione delle stesse.
Abilità comunicative Essere in grado di comunicare con chiarezza la formulazione di un problema di apprendimento avanzato e la sua implementazione, la sua applicabilità in contesti realistici, nonchè di motivare le scelte architetturali e di regolarizzazione.
Capacità di apprendimento successivo: Essere in grado di apprendere tecniche alternative e più complesse quali i modelli generativi basati su traporto ottimo, le trasformate di scattering e lo studio del probilo energetico delle reti neurali. Essere in grado di implementare tecniche esistenti in maniera efficiente, robusta e affidabile.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
|
1047613 -
ADVANCED ALGORITHMS
|
Erogato in altro semestre o anno
|
10589621 -
ADVANCED MACHINE LEARNING
|
Erogato in altro semestre o anno
|
10596281 -
AUTONOMOUS NETWORKING
|
Erogato in altro semestre o anno
|
1047615 -
AUTOMATIC SOFTWARE VERIFICATION METHODS
|
Erogato in altro semestre o anno
|
1041764 -
BIG DATA COMPUTING
(obiettivi)
Obiettivi generali Il corso si propone di introdurre le principali tecniche algoritmiche e di programmazione nell’analisi di big data, affrontando una varietà di problemi di data mining in modelli di calcolo adatti alla gestione di grandi quantità di dati.
Obiettivi specifici Capacità di analisi, modellazione, e risoluzione di problemi tipici dell'area "Big Data" attraverso l'implementazione di "pipeline" di machine learning su ambienti distribuiti tramite PySpark.
Conoscenza e comprensione: Al termine del corso gli studenti avranno una comprensione dettagliata dei modelli di programmazione per l'analisi di dati distribuiti su cluster di computer, nonché di modelli computazionali avanzati per l'elaborazione di enormi quantità di dati (ad esempio, streaming di dati, parallelismo in stile MapReduce e algoritmi efficienti in memoria secondaria).
Applicare conoscenza e comprensione: gli studenti saranno in grado di progettare e analizzare algoritmi per l’analisi di big data in diversi scenari, sapranno scrivere codice efficiente e scalabile tenendo conto delle caratteristiche architetturali delle moderne piattaforme di calcolo (inclusi i sistemi distribuiti), e sapranno lavorare sfruttando una varietà di sistemi software adatti al processamento di big data (tra cui Hadoop).
Capacità critiche e di giudizio: gli studenti saranno in grado di capire i paradigmi di calcolo più adatti in scenari differenti, valutando vantaggi e svantaggi di ciascun modello computazionale e affrontando le sfide che si presentano nella progettazione e implementazione di una varietà di applicazioni.
Capacità di comuniczione: gli studenti saranno in grado di comunicare in modo efficace, riassumendo in modo chiaro le idee principali nella progettazione di sistemi e algoritmi per l’analisi di big data e presentando informazioni tecniche accurate.
Capacità di apprendimento successivo: obiettivo del corso è quello di toccare una varietà di tecniche il più possibile ampia, introducendo pratiche standard e argomenti di ricerca all'avanguardia in questo settore e consentendo quindi agli studenti di estendere le conoscenze acquisite in modo indipendente, anche in base all’evoluzione tecnologica.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1041792 -
BIOMETRIC SYSTEMS
|
Erogato in altro semestre o anno
|
1047205 -
CLOUD COMPUTING
(obiettivi)
Obiettivi generali : Il Cloud Computing è divenuto una delle fondamentali tecnologie dell’informazione, fornendo elevata scalabilità ed elasticità nella fornitura di applicazioni distribuite (aziendali e scientifiche). Alla fine del corso gli studenti avranno gli strumenti per comprendere l’impatto del Cloud Computing in un ambiente aziendale (e non) e le implicazioni tecnologiche nello sviluppo di applicazioni Cloud, specificatamente applicazioni per la memorizzazione e l’elaborazione di big data.
Obiettivi specifici Alla fine del corso, gli studenti avranno acquisito gli strumenti per: - usare le tecnologie di virtualizzazione a livello di sistema e a livello di applicazione - usare tecnologie IaaS e PaaS - progettare architetture virtualizzate - fare il deployment di applicazioni Cloud - valutare costi e prestazioni di sistemi Cloud
Conoscenza e comprensione: Alla fine del corso, gli studenti avranno acquisito la conoscenza relativa ai fattori che hanno influenzato la diffusione del Cloud Computing, alle tecnologie di virtualizzazione, alle architetture Cloud (autoscaling, load balancing, monitoring, high availability), ai sistemi di memorizzazione dei dati nel Cloud Alla fine del corso, gli studenti saranno capaci di comprendere i principi di funzionamento delle soluzioni basate su Cloud (design and operation) e di comprendere problemi di ricerca applicata relativi alle soluzioni basate su Cloud
Applicarei conoscenza e comprensione: Alla fine del corso, gli studenti saranno capaci di - spiegare i principi del Cloud Computing - spiegare le principali tecnologie Cloud - risolvere problemi che richiedono l’uso delle tecnologie Cloud e del design e deployment di architetture virtualizzate e di applicazioni Cloud - valutare le prestazioni e i costi di soluzioni basate su Cloud
Capaità critiche e di giudizio: Nel corso gli studenti svilupperanno abilità di pensiero critico nel campo del Cloud Computing
Capacità comunicative: Alla fine del corso gli studenti saranno capaci di comunicare le nozioni imparate a personale tecnico e manageriale.
Capacità di apprendimento successivo: Dopo il corso, gli studenti avranno acquisito la conoscenza per seguire corsi avanzati di Cloud Computing e di tecnologie big data.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047616 -
COMPUTATIONAL COMPLEXITY
|
Erogato in altro semestre o anno
|
1047617 -
COMPUTER NETWORK PERFORMANCE
|
Erogato in altro semestre o anno
|
1047618 -
COMPUTER VISION
|
Erogato in altro semestre o anno
|
1047619 -
CONCURRENT SYSTEMS
|
Erogato in altro semestre o anno
|
1047622 -
CRYPTOGRAPHY
|
Erogato in altro semestre o anno
|
1047623 -
DATA AND NETWORK SECURITY
|
Erogato in altro semestre o anno
|
10593236 -
DEEP LEARNING AND APPLIED ARTIFICIAL INTELLIGENCE
(obiettivi)
Obiettivi generali Acquisire familiarità con tecniche avanzate di machine learning supervisionato e non supervisionato; acquisire competenze di modellazione di problemi complessi attraverso tecniche di deep learning, e saperle applicare a contesti applicativi diversi.
Obiettivi specifici Gli argomenti includono: reti neurali profonde, il loro addestramento e l'interpretazione dei risultati; reti convoluzionali e architetture prominenti; teoria del deep learning con particolare riferimento a questioni di convergenza; utilizzo di framework esistenti per l'implementazione di tecniche avanzate di machine learning; autoencoders; attacchi avversari.
Conoscenza e comprensione: Conoscenza sul funzionamento delle reti neurali e loro interpretazione matematica come approssimatori universali. Comprensione dei limiti e delle potenzialità di modelli avanzati di machine learning.
Applicazione di conoscenza e comprensione Progettazione, implementazione, messa in esercizio e analisi di architetture di deep learning per risolvere problemi complessi in disparati ambiti applicativi.
Autonomia di giudizio Essere in grado di valutare le prestazioni di diverse architetture, e di valutare la capacità di generalizzazione delle stesse.
Abilità comunicative Essere in grado di comunicare con chiarezza la formulazione di un problema di apprendimento avanzato e la sua implementazione, la sua applicabilità in contesti realistici, nonchè di motivare le scelte architetturali e di regolarizzazione.
Capacità di apprendimento successivo: Essere in grado di apprendere tecniche alternative e più complesse quali i modelli generativi basati su traporto ottimo, le trasformate di scattering e lo studio del probilo energetico delle reti neurali. Essere in grado di implementare tecniche esistenti in maniera efficiente, robusta e affidabile.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047624 -
DISTRIBUTED SYSTEMS
|
Erogato in altro semestre o anno
|
1047626 -
FORMAL METHODS IN SOFTWARE DEVELOPMENT
|
Erogato in altro semestre o anno
|
1047627 -
FOUNDATIONS OF DATA SCIENCE
|
Erogato in altro semestre o anno
|
1047628 -
FUNDAMENTALS OF COMPUTER GRAPHICS
|
Erogato in altro semestre o anno
|
1047630 -
HUMAN COMPUTER INTERACTION ON THE WEB
(obiettivi)
Obiettivi generali Il corso di sistemi informativi analizza differenti tipologie di sistemi informativi e come esse possono contribuire al successo degli obiettivi di un’azienda; permette di comprendere gli approcci e i modelli da usare per valutare la qualità dei processi, del software e dei servizi ICT; e fornisce le conoscenze di base per pianificare, gestire e controllare i progetti IT.
Obiettivi specifici
• Conoscenza e comprensione – Modello funzionale e struttura informativa dei processi aziendali – esigenze di integrazione e requisiti di controllo dei dati dei sistemi informatici aziendali – sistemi e tecnologie per sviluppare e mantenere un e-business di successo – principali settori di applicazione dei sistemi di informazione in vari settori di mercato – organizzazione IT e modelli di valutazione della qualità IT – conoscenze di base di contesto, tecniche/metodologie e soft skill per la gestione dei progetti ICT
• Applicazione di conoscenze e comprensione – Analizzare le diverse tipologie di requisiti in relazione a differenti categorie di utenti (stakeholder) di sistemi informativi – Selezionare l’appropriato modello per valutare la qualità dei processi ICT, del prodotto software e dei servizi ICT – Sviluppare uno studio di fattibilità selezionando l’appropriata architettura applicativa e tecnologica – Preparare, per un semplice progetto ICT, un piano di sviluppo nel rispetto dei vincoli di tempo, costi, qualità e definendo l’appropriata organizzazione – Controllare un progetto ICT in corso, applicando le tecniche di project management – Comprendere a valutare le lezioni apprese nei precedenti progetti
Capacità critiche e di giudizio: Gli studenti, mediante test e case study, acquisiranno competenze nella comprensione dei tipi di sistemi informativi, nell’uso dei modelli di quality management e nella pianificazione e gestione di un progetto.
Capacità comunicative: Gli studenti, costituiti in team, saranno coinvolti in attività finalizzate alla realizzazione di un piano di comunicazione di un progetto basato su un case study, che sarà mostrato ai colleghi spiegando le ragioni delle scelte adottate.
Capacità di apprendimento: La capacità di apprendimento sarà stimolata attraverso la preparazione di uno studio di fattibilità contenente: [a] la definizione dei requisiti del tipo di sistema informativo più adatto; [b] la definizione dei requisiti tecnici e di qualità; [c] la pianificazione di un progetto di implementazione del sistema informativo.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047631 -
INFORMATION SYSTEMS
|
Erogato in altro semestre o anno
|
1047633 -
INTENSIVE COMPUTATION
|
Erogato in altro semestre o anno
|
1047634 -
INTERNET OF THINGS
(obiettivi)
Obiettivi generali: Il corso illustra gli aspetti metodologici, teorici e pratici relativi alla progettazione di reti wireless e Internet delle cose. Il corso prevede un laboratorio.
Obiettivi specifici Introduzione alle reti wireless, architetture e protocolli usati nelle reti cellulari info al 5G e nei sistemi Internet delle cose, analisi delle soluzioni di ricerca relative ad alcune delle sfide per la realizzazione dei sistemi internet delle cose (abbattimento del consumo energetico, integrazione del mondo IoT e della robotica, sicurezza delle informazioni).
Struttura sintetica del corso: - Introduzione alle reti radio - Dai sistemi cellulari 2G al 5G - Protocolli per sensing systems: protocolli di MAC, routing, localizzazione e sincronizzazione - Verso l'Internet delle cose: caratteristiche e problematiche, protocolli standard e tecnologie, scelte progettuali per diversi ambiti verticali, sfide ancora aperte - Aspetti avanzati dell'IoT: zero-power IoT; aspetti di sicurezza; uso di blockchain in applicazioni IoT; ottimizzazione di sistemi mediante tecniche di machine learning; integrazione di robotica e IoT systems (esempio dell'Internet of Underwater Things). -Lab di programmazione IoT
Conoscenze e comprensione: Alla fine del corso lo studente saprà leggere e comprendere articoli scientifici, documenti tecnici e standard del settore; avrà compreso i trade-off prestazionali associati a diverse scelte progettuali. Sarà quindi in grado di progettare futuri sistemi wireless e IoT. Avrà fatto prime esperienze pratiche relative alla programmazione e valutazione sperimentale di tali sistemi.
Applicazione di conoscenza e comprensione: Gli studenti saranno in grado di partecipare alla progettazione di futuri sistemi e applicazioni IoT e di sistemi 5G.
Capacità di giudizio: Gli studenti svilupperanno le capacità di analisi necessarie per valutare diverse scelte progettuali alternative selezionando la migliore per ogni specifico scenario applicativo e tipo di tecnologia.
Capacità di comunicazione: Gli studenti impareranno ad analizzare e presentare articoli scientifici, idee di ricerca o soluzioni tecniche di settore, descrivendole in modo sintetico ed accurato, con un linguaggio tecnico adeguato.
Capacità di apprendimento: Gli studenti acquisiranno sia competenze teoriche che pratiche relative alla progettazione dei sistemi wireless e IoT, che li metteranno in grado di proseguire l'approfondimento di questi argomenti.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047635 -
MACHINE LEARNING
|
Erogato in altro semestre o anno
|
1047636 -
MATHEMATICAL LOGIC FOR COMPUTER SCIENCE
(obiettivi)
Obiettivi generali: Il corso ha l'obiettivo di introdurre gli studenti ai risultati e ai metodi fondamentali della Logica Matematica con particolare attenzione alla loro applicazione nell'ambito dell'Informatica.
Obiettivi specifici: L'obiettivo del corso è duplice. In primo luogo si intende dotare lo studente di una conoscenza rigorosa e di una capacità di applicare quei risultati e metodi della Logica Matematica che trovano applicazione in numerose aree dell'Informatica. D'altra parte si intende offrire allo studente una strumenti e conoscenze fondamentali per intraprendere un percorso di ricerca in Informatica Teorica.
Conoscenza e comprensione: Il corso mira a dotare lo studente di una conoscenza rigorosa degli argomenti del corso attraverso lo studio delle dimostrazioni e la produzione di argomenti rigorosi nello svolgimento degli esercizi. Particolare attenzione è data alla motivazione concettuale, alla dimostrazione rigorosa e alla applicabilità dei risultati trattati nel corso.
Applicazione di conoscenza e comprensione: I metodi della logica matematica hanno un ruolo fondamentale in diverse aree dell'Informatica quali la Teoria della Complessità, la Teoria delle Basi di Dati, l'Intelligenza Artificiale. Si mira a stimolare nello studente la capacità di applicare in vari contesti dell'informatica i metodi e i risultati studiati.
Autonomia di giudizio: Viene stimolata la partecipazione attiva alle lezioni ed esercitata l'autonomia di giudizio attraverso l'assegnazione di esercizi e problemi.
Abilità comunicative: Lo studente può scegliere di dare l'esame finale in forma di presentazione seminariale davanti alla classe di un risultato concordato con il docente.
Capacità di apprendimento successivo: I metodi di analisi e formalizzazione acquisiti durante il corso trovano applicazione in diverse aree dell'Informatica. L'esercizio di formalizzazione e problem-solving durante il corso rinforza le capacità di apprendimento e acquisizione di nuove competenze.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
10589557 -
METHODS IN COMPUTER SCIENCE EDUCATION: ANALYSIS
(obiettivi)
Obiettivi generali: Conoscere ed applicare le più recenti teorie e metodologie di insegnamento dell'Informatica nella scuola e nell'università. Il corso svilupperà una serie di use-cases relativi alle tecniche di insegnamento dell'Informatica.
Obiettivi specifici: • Analisi critica delle principali metodologie per l'insegnamento sviluppate nella ricerca in didattica dell'informatica, anche in riferimento allo specifico ruolo dell'insegnante, ai nodi concettuali, epistemologici, linguistici e didattici dell'insegnamento e apprendimento dell'informatica, ponendo in particolare l'accento sulla distinzione fra l'informatica come disciplina scientifica da una parte e le applicazioni dell'informatica dall'altra. • Esplicitazione del parallelismo fra metodologie informatiche e metodologie didattiche: tecniche di problem solving costruttivo; approccio epistemologico ai problemi; metodi cooperativi di sviluppo delle soluzioni.
Conoscenza e comprensione: Principi e metodi di costruzione di attività didattiche di C.S. nella scuola superiore e nell'università.
Applicazione di conoscenza e comprensione: Agli studenti verrà richiesto di scegliere e sviluppare alcuni moduli didattici per la Scuola superiore e l'Università.
Autonomia di giudizio: Lo studente sarà autonomo nello scegliere i moduli da sviluppare e nella loro fase di progetto e realizzazione.
Abilità comunicative: Gli studenti dovranno dimostrare di saper produrre moduli didattici di qualità, con una forte capacità di interessare e comunicare con precisione gli argomenti chiave della lezione da sviluppare.
Capacità di apprendimento successivo: La metodologia di progetto dei moduli didattici vista nel corso sarà facilmente applicabile ad altri tipi di corsi.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
10589558 -
METHODS IN COMPUTER SCIENCE EDUCATION: DESIGN
|
Erogato in altro semestre o anno
|
1047638 -
MODELS OF COMPUTATION
|
Erogato in altro semestre o anno
|
1047639 -
MULTIMODAL INTERACTION
|
Erogato in altro semestre o anno
|
1038141 -
NATURAL LANGUAGE PROCESSING
(obiettivi)
Obiettivi generali: I fondamenti dell'elaborazione del linguaggio naturale.
Obiettivi specifici: L'elaborazione del linguaggio naturale al livello di: morfologia, parte del discorso, sintassi, semantica, pragmatica. Traduzione automatica.
Conoscenza e comprensione: Conoscenza e comprensione delle tecniche algoritmiche e di apprendimento automatica per l'elaborazione del linguaggio naturale.
Applicare conoscenza e comprensione: Essere in grado di applicare le tecniche di elaborazione del linguaggio naturale mediante homework e un progetto.
Capacità critiche e di giudizio: Capacità di comprendere e identificare soluzioni efficaci ai problemi dell'elaborazione del linguaggio naturale.
Capacità comunicative: Capacità di illustrare il progetto sviluppato.
Capacità di apprendimento: Capacità di apprendere e applicare nuove tecniche di elaborazione del linguaggio naturale sia basate su quelle illustrate nel corso sia basate su approcci innovativi.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047640 -
NETWORK ALGORITHMS
|
Erogato in altro semestre o anno
|
10589555 -
PRACTICAL NETWORK DEFENSE
(obiettivi)
Obiettivi generali: Il corso affronta i fondamenti delle metodologie e degli strumenti per la protezione delle reti di calcolatori. Particolare attenzione viene dedicata all'applicazione pratica delle nozioni apprese.
Obiettivi specifici: Il corso affronta le relazioni fra i meccanismi di funzionamento delle reti di calcolatori e gli attacchi informatici, i meccanismi per la possibile identificazione e soppressione degli attacchi e la relativa implementazione mediante l'uso di adeguate strategie di progettazione e di strumenti specifici.
Conoscenza e comprensione: Elencare le minacce più ricorrenti dovute all'uso di specifici protocolli all'interno delle reti di elaboratori. Spiegare i meccanismi più utilizzati dagli attaccanti maliziosi e dai progettisti di malware per compromettere la sicurezza di un sistema di elaboratori. Spiegare i meccanismi di base utilizzati per l'identificazione dei tentativi di intrusione negli elaboratori e nelle reti.
Applicare conoscenza e comprensione: Alla fine del corso gli studenti saranno in grado di realizzare il monitoraggio del traffico scambiato nelle reti, di applicare una policy di sicurezza, di realizzare una scansione delle stazioni all'interno di una rete di elaboratori e una ricerca delle vulnerabilità di una rete di elaboratori. Gli studenti svilupperanno la capacità di selezionare le regole appropriate per proteggere una rete mediante firewall, selezionare i meccanismi più appropriati per proteggere un sistema di elaboratori collegati tramite rete e di eseguire le scelte di progettazione più opportune per implementare una strategia di "difesa in profondità", usando reti isolate e strumenti dedicati (VPN,proxy e firewall).
Capacità critiche e di giudizio: Gli studenti svilupperanno le capacità di analisi necessarie per valutare diverse alternative durante il processo di progettazione di una rete di elaboratori, con particolare riferimento alla valutazione delle scelte architetturali e dei rischi che possono comportare e agli obiettivi di sicurezza che il sistema vuole perseguire.
Capacità comuncative: Gli studenti impareranno a documentare le loro scelte, anche attraverso l'uso di strumenti di generazione di rapporti automatizzati. Avranno anche acquisito la capacità di preparare presentazioni relative ad argomenti scientifici.
Capacità di apprendimento successivo: Le nozioni acquisite durante il corso forniranno agli studenti una solida base di conoscenza per poter ulteriormente approfondire gli aspetti più tecnici, esplorare le alternative non affrontate per motivi di tempo e per mantenersi autonomamente informati sui continui sviluppi e aggiornamenti della sicurezza informatica applicata alle reti.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047642 -
SECURITY IN SOFTWARE APPLICATIONS
|
Erogato in altro semestre o anno
|
1047643 -
TOPICS IN PHYSICS
|
Erogato in altro semestre o anno
|
|
- -
A SCELTA DELLO STUDENTE
|
6
|
|
-
|
-
|
-
|
-
|
Attività formative a scelta dello studente (art.10, comma 5, lettera a)
|
ITA |
Secondo anno
Primo semestre
Insegnamento
|
CFU
|
SSD
|
Ore Lezione
|
Ore Eserc.
|
Ore Lab
|
Ore Studio
|
Attività
|
Lingua
|
10589621 -
ADVANCED MACHINE LEARNING
(obiettivi)
Obiettivi generali: Questo corso introduce gli studenti a metodi avanzati e ai più recenti approcci di machine learning, basati su modelli di deep neural network (DNN), e alle loro applicazioni in computer vision. Il corso include teoria, programmazione e la realizzazione pratica di un progetto finale. Sia per la parte di programmazione che per il progetto finale, gli studenti lavoreranno in gruppi e presenteranno le loro idee e i risultati del progetto alla classe.
Obiettivi specifici: La prima parte del corso include l’analisi di modelli DNN stato dell’arte per classificazione e regressione, applicate a detection (dove gli oggetti siano in un’immagine), pose estimation (se una persona sia in piedi, seduta o coricata) e re-identification (la stima di un vettore che rappresenti ogni persona in modo univoco). Il corso discute inoltre DNN per la realizzazione di obiettivi multi-task, ovvero per la stima congiunta di detection, re-identification, segmentation, depth estimation, etc. Questa prima parte include DNN che siano applicabili a video sequenze, grazie all’uso di memoria (e.g. LSTM) o attenzione (e.g. Transformers).
La seconda parte del corso approfondisce i modelli, le tecniche di apprendimento e di manipolazione di dati per la generalizzazione, per domain adaptation e meta-learning. Oltre a transfer learning (come un modello precedentemente imparato sia applicabile a altri compiti), si affronta la multi-modalità (l’uso di sensori di diversa natura come video camere di distanza o termiche) e l’auto-supervisione (e.g. imparare un modello DNN attraverso la risoluzione di puzzles) per l’auto-annotazione di grandi quantità di dati. Infine, si presenta domain adaptation (e.g. come applicare algoritmi di detection imparati con immagini diurne anche di notte) e meta-learning, uno dei più recenti temi di machine learning che mostra come imparare ad imparare un compito, e.g. in modalità di apprendimento online o imparando anche da pochi dati disponibili.
Conoscenza e comprensione: Al termine del corso gli studenti avranno familiarità con modelli DNN stato dell’arte che realizzino singole o molteplici funzioni, e con la generalizzazione di queste funzioni e l’uso effettivo di dati etichettati o non etichettati per l’apprendimento di macchine, il loro auto-apprendimento e il meta-learning.
Applicare conoscenza e comprensione: Al termine del corso gli studenti avranno acquisito familiarità con il progresso più recente in machine learning per lo svolgimento di vari compiti, l’adattamento di questi a nuovi domini ed il continuo auto-apprendimento di algoritmi e macchine. Sapranno spiegare gli algoritmi e scegliere le tecniche più appropriate per uno specifico problema. Saranno in grado di valutare implementazioni esistenti e di ideare e scrivere programmi per nuove soluzioni for specifiche funzioni o problemi nei due campi.
Capacità critiche e di giudizio Lo studente sarà in grado di analizzare un problema o una funzione e identificare le metodologie e tecniche da applicare più appropriate, sia dal punto di vista dell’effettiva risoluzione del problema (accuracy) che da quello della fattibilità, da un punto di vista di efficienza, della quantità di dati richiesta e delle loro annotazioni. Oltre che delle lezioni, la capacità critica e di giudizio sarà il risultato di assignments che testeranno programmazione e analisi e di un progetto finale, inclusivo di relazione scritta.
Capacità comunicative Lo studente acquisirà la capacità di esporre in modo chiaro ed organizzato le proprie conoscenze, capacità che verrà verificata sia mediante un progetto finale che nella sua presentazione orale. Lo studente sarà in grado di esprimere un’idea algoritmica in modo rigoroso ad alto livello, in pseudocodice, e di spiegare la struttura del codice scritto per questa.
Capacità di apprendimento successivo Le conoscenze acquisite permetteranno allo studente di affrontare lo studio di altri problemi in machine learning and computer vision. La capacità di apprendimento successivo sarà il risultato degli argomenti illustrati a lezione, che offriranno una vasta panoramica in advanced machine learning, e del loro progetto finale, per il quale gli studenti sceglieranno uno specifico argomento da approfondire, oltre quanto impartito a lezione.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
1047615 -
AUTOMATIC SOFTWARE VERIFICATION METHODS
(obiettivi)
Obiettivi generali: Il corso si propone di fornire agli studenti metodi e strumenti per la verifica e validazione automatica di sistemi cyber-fisici.
Obiettivi specifici: Il corso di propone di mettere gli studenti in grado di comprendere tecniche avanzate di modellazione, verifica e validazione per sistemi cyber-fisici. Conoscenza e comprensione: Introduzione ad ampio spettro dei principi fondamentali della modellazione ed analisi dei sistemi cyber-fisici modellati come DAE (Differential Algebraic Equations).
Applicare conoscenza e comprensione: Saper applicare il portafoglio di tecniche e gli approcci illustrati per la modellazione, verifica e validazione di sistemi cyber-fisici.
Capacità critiche e di giudizio: Gli studenti saranno in grado di prendere autonomamente decisioni razionali sulle tecniche da impiegare nella modellazione, verifica e validazione di sistemi cyber-fisici.
Capacità comunicative: Gli studenti saranno in grado di interagire in modo proficuo con esperti di dominio su un'ampia gamma di argomenti relativi alla modellazione, verifica e validazione di sistemi cyber-fisici
Capacità di apprendimento: Gli studenti saranno in grado di ampliare le loro conoscenze in modo autonomo consultando, secondo necessità , la letteratura scientifica di rilievo.
|
6
|
INF/01
|
24
|
36
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
1047205 -
CLOUD COMPUTING
|
Erogato in altro semestre o anno
|
1047619 -
CONCURRENT SYSTEMS
|
Erogato in altro semestre o anno
|
1047630 -
HUMAN COMPUTER INTERACTION ON THE WEB
|
Erogato in altro semestre o anno
|
1047633 -
INTENSIVE COMPUTATION
|
Erogato in altro semestre o anno
|
1047635 -
MACHINE LEARNING
|
Erogato in altro semestre o anno
|
1047639 -
MULTIMODAL INTERACTION
|
Erogato in altro semestre o anno
|
1047640 -
NETWORK ALGORITHMS
(obiettivi)
Obiettivi generali Acquisire conoscenze relativamente al progetto di algoritmi complessi per risolvere problemi su grafi che modellano problemi inerenti le reti (cablate, senza fili e di sensori).
Obiettivi specifici Conoscenza e comprensione Al termine del corso gli studenti conosceranno le metodologie di base per l'analisi di problemi relativi alle reti e l’identificazione dei problemi su grafi che più si avvicinino; conosceranno inoltre gli algoritmi risolutivi di alcuni dei principali problemi su grafi.
Applicare conoscenza e comprensione: Al termine del corso gli studenti avranno acquisito familiarità con l’analisi delle problematiche legate alle reti. Saranno in grado di riconoscere quale sia il problema su grafi che più si avvicina e di progettare nuove strutture dati e i relativi algoritmi, rielaborando quelli esistenti, per risolvere il problema di partenza.
Capacità critiche e di giudizio Lo studente avrà le basi per analizzare la qualità di un algoritmo per le reti, sia dal punto di vista della effettiva risoluzione del problema che da quello della efficienza computazionale con la quale il problema viene risolto.
Capacità comunicative Lo studente acquisirà la capacità di esporre in modo chiaro ed organizzato le proprie conoscenze, capacità che verrà verificata durante la prova orale.
Capacità di apprendimento Le conoscenze acquisite permetteranno allo studente, una volta concluso il ciclo di studi, di affrontare problemi reali in modo critico ed efficace e di progettare soluzioni efficienti.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
1047642 -
SECURITY IN SOFTWARE APPLICATIONS
|
Erogato in altro semestre o anno
|
10593236 -
DEEP LEARNING AND APPLIED ARTIFICIAL INTELLIGENCE
|
Erogato in altro semestre o anno
|
|
1047613 -
ADVANCED ALGORITHMS
|
Erogato in altro semestre o anno
|
10589621 -
ADVANCED MACHINE LEARNING
(obiettivi)
Obiettivi generali: Questo corso introduce gli studenti a metodi avanzati e ai più recenti approcci di machine learning, basati su modelli di deep neural network (DNN), e alle loro applicazioni in computer vision. Il corso include teoria, programmazione e la realizzazione pratica di un progetto finale. Sia per la parte di programmazione che per il progetto finale, gli studenti lavoreranno in gruppi e presenteranno le loro idee e i risultati del progetto alla classe.
Obiettivi specifici: La prima parte del corso include l’analisi di modelli DNN stato dell’arte per classificazione e regressione, applicate a detection (dove gli oggetti siano in un’immagine), pose estimation (se una persona sia in piedi, seduta o coricata) e re-identification (la stima di un vettore che rappresenti ogni persona in modo univoco). Il corso discute inoltre DNN per la realizzazione di obiettivi multi-task, ovvero per la stima congiunta di detection, re-identification, segmentation, depth estimation, etc. Questa prima parte include DNN che siano applicabili a video sequenze, grazie all’uso di memoria (e.g. LSTM) o attenzione (e.g. Transformers).
La seconda parte del corso approfondisce i modelli, le tecniche di apprendimento e di manipolazione di dati per la generalizzazione, per domain adaptation e meta-learning. Oltre a transfer learning (come un modello precedentemente imparato sia applicabile a altri compiti), si affronta la multi-modalità (l’uso di sensori di diversa natura come video camere di distanza o termiche) e l’auto-supervisione (e.g. imparare un modello DNN attraverso la risoluzione di puzzles) per l’auto-annotazione di grandi quantità di dati. Infine, si presenta domain adaptation (e.g. come applicare algoritmi di detection imparati con immagini diurne anche di notte) e meta-learning, uno dei più recenti temi di machine learning che mostra come imparare ad imparare un compito, e.g. in modalità di apprendimento online o imparando anche da pochi dati disponibili.
Conoscenza e comprensione: Al termine del corso gli studenti avranno familiarità con modelli DNN stato dell’arte che realizzino singole o molteplici funzioni, e con la generalizzazione di queste funzioni e l’uso effettivo di dati etichettati o non etichettati per l’apprendimento di macchine, il loro auto-apprendimento e il meta-learning.
Applicare conoscenza e comprensione: Al termine del corso gli studenti avranno acquisito familiarità con il progresso più recente in machine learning per lo svolgimento di vari compiti, l’adattamento di questi a nuovi domini ed il continuo auto-apprendimento di algoritmi e macchine. Sapranno spiegare gli algoritmi e scegliere le tecniche più appropriate per uno specifico problema. Saranno in grado di valutare implementazioni esistenti e di ideare e scrivere programmi per nuove soluzioni for specifiche funzioni o problemi nei due campi.
Capacità critiche e di giudizio Lo studente sarà in grado di analizzare un problema o una funzione e identificare le metodologie e tecniche da applicare più appropriate, sia dal punto di vista dell’effettiva risoluzione del problema (accuracy) che da quello della fattibilità, da un punto di vista di efficienza, della quantità di dati richiesta e delle loro annotazioni. Oltre che delle lezioni, la capacità critica e di giudizio sarà il risultato di assignments che testeranno programmazione e analisi e di un progetto finale, inclusivo di relazione scritta.
Capacità comunicative Lo studente acquisirà la capacità di esporre in modo chiaro ed organizzato le proprie conoscenze, capacità che verrà verificata sia mediante un progetto finale che nella sua presentazione orale. Lo studente sarà in grado di esprimere un’idea algoritmica in modo rigoroso ad alto livello, in pseudocodice, e di spiegare la struttura del codice scritto per questa.
Capacità di apprendimento successivo Le conoscenze acquisite permetteranno allo studente di affrontare lo studio di altri problemi in machine learning and computer vision. La capacità di apprendimento successivo sarà il risultato degli argomenti illustrati a lezione, che offriranno una vasta panoramica in advanced machine learning, e del loro progetto finale, per il quale gli studenti sceglieranno uno specifico argomento da approfondire, oltre quanto impartito a lezione.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
10596281 -
AUTONOMOUS NETWORKING
|
Erogato in altro semestre o anno
|
1047615 -
AUTOMATIC SOFTWARE VERIFICATION METHODS
(obiettivi)
Obiettivi generali: Il corso si propone di fornire agli studenti metodi e strumenti per la verifica e validazione automatica di sistemi cyber-fisici.
Obiettivi specifici: Il corso di propone di mettere gli studenti in grado di comprendere tecniche avanzate di modellazione, verifica e validazione per sistemi cyber-fisici. Conoscenza e comprensione: Introduzione ad ampio spettro dei principi fondamentali della modellazione ed analisi dei sistemi cyber-fisici modellati come DAE (Differential Algebraic Equations).
Applicare conoscenza e comprensione: Saper applicare il portafoglio di tecniche e gli approcci illustrati per la modellazione, verifica e validazione di sistemi cyber-fisici.
Capacità critiche e di giudizio: Gli studenti saranno in grado di prendere autonomamente decisioni razionali sulle tecniche da impiegare nella modellazione, verifica e validazione di sistemi cyber-fisici.
Capacità comunicative: Gli studenti saranno in grado di interagire in modo proficuo con esperti di dominio su un'ampia gamma di argomenti relativi alla modellazione, verifica e validazione di sistemi cyber-fisici
Capacità di apprendimento: Gli studenti saranno in grado di ampliare le loro conoscenze in modo autonomo consultando, secondo necessità , la letteratura scientifica di rilievo.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1041764 -
BIG DATA COMPUTING
|
Erogato in altro semestre o anno
|
1041792 -
BIOMETRIC SYSTEMS
|
Erogato in altro semestre o anno
|
1047205 -
CLOUD COMPUTING
|
Erogato in altro semestre o anno
|
1047616 -
COMPUTATIONAL COMPLEXITY
(obiettivi)
Obiettivi generali: Il Corso introduce allo studio delle basi dell Teoria della Complessità computazionale.
Obiettivi specifici: - Concetto teorico della risorsa computazionale: running time - Concetto Teorico della risorsa computazionale: memoria - Classi di complessità temprali e spaziali - Il problema P = NP - Problemi computazionalmente non trattabili con risorse limitate - La classi di complessità L, P, NP, PSPACE, BPP, #P, IP, - Risultati Notevoli - Circuiti Booleani e funzioni booleane
Conoscenza e comprensione: Al termine del corso lo studente avrà acquisito la capacità di verificare proprietà di riduzione e completezza tra problemi computazionali, la conoscenza di teoremi notevoli nel campo della Teoria delle Complessità, la capacità di ragionare matematicamente sulla natura computazionale delle risorse di calcolo come running-time, memoria, randomness. Applicazione di conoscenza e comprensione: La conoscenza appresa è fondamentale in contesti come la Verifica Automatica, la Teoria dei Giochi, la analisi della complessità degli algoritmi.
Autonomia di giudizio: Viene rafforzata la autonomia di giudizio dello studente attraverso l'approfondimento della capacità di sintesi matematica, di ragionamento matematico e di problem solving, mediante tecniche basate sulla matemati Discreta e sulla Analisi Funzionale.
Abilità comunicative: Viene sviluppata l'abilità comunicativa dello studente nel presentare risultati nel campo dell'Informatica Teorica.
Capacità di apprendimento successivo: La complessità computazionale e alla base della comprensione della valutazione della fattibilità computazionale e algoritmico di qualsiasi problema del mondo reale. La sua conoscenza è dunque alla base dell'apprendimento di molte altre corsi e argeomtni, come la Crittografia, la verifica automatica del software e dell'hardware, la Teoria dei Giochi, l'Intelligenza Artificiale.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047617 -
COMPUTER NETWORK PERFORMANCE
|
Erogato in altro semestre o anno
|
1047618 -
COMPUTER VISION
(obiettivi)
Obiettivi generali: Il corso si propone di esporre gli studenti ad un'ampia panoramica della Computer Vision.
Obiettivi specifici: Il corso si propone di fornire i principi, le metodologie di base e gli algoritmi fondamentali usati per la progettazione e l'applicazione di sistemi di visione artificiale
Conoscenza e comprensione: Introduzioni dei principi fondamentali e delle diverse aree della Computer Vision e conoscenze su risoluzione di problemi quali estrazioni delle caratteristi, tracking , analisi della scena, riconoscimento di oggetti, analisi di eventi, analisi delle emozioni.
Applicare conoscenza e comprensione: Saper applicare il portafoglio di tecniche e gli approcci illustrati per la progettazione e realizzazione di sistemi di visione artificiale.
Capacità critiche e di giudizio: Gli studenti apprenderanno tecniche che si sono rivelate utili per esperienza diretta e una vasta gamma di metodi matematici nella progettazione del sistema di visione.
Capacità comunicative: Gli studenti saranno in grado di interagire in modo proficuo con altri ricercatori in Computer Vision su un'ampia gamma di argomenti.
Capacità di apprendimento: Gli studenti saranno in grado di ampliare le loro conoscenze in modo autonomo consultando, secondo necessità, la letteratura scientifica basato sulla Computer Vision.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047619 -
CONCURRENT SYSTEMS
|
Erogato in altro semestre o anno
|
1047622 -
CRYPTOGRAPHY
|
Erogato in altro semestre o anno
|
1047623 -
DATA AND NETWORK SECURITY
|
Erogato in altro semestre o anno
|
10593236 -
DEEP LEARNING AND APPLIED ARTIFICIAL INTELLIGENCE
|
Erogato in altro semestre o anno
|
1047624 -
DISTRIBUTED SYSTEMS
|
Erogato in altro semestre o anno
|
1047626 -
FORMAL METHODS IN SOFTWARE DEVELOPMENT
|
Erogato in altro semestre o anno
|
1047627 -
FOUNDATIONS OF DATA SCIENCE
|
Erogato in altro semestre o anno
|
1047628 -
FUNDAMENTALS OF COMPUTER GRAPHICS
(obiettivi)
Obiettivi generali Familiarità con il rendering Physically-based, il geometry processing and idee basiche di simulazione.
Obiettivi specifici Argomenti includono: path tracing, monte carlo methods, bidirectional reflectance distribution function, modelli a microfacet, importance sampling, multiple importance sampling, superfici di suddivisione, bump and normal mapping, scattering volumetrico.
Conoscenza e comprensione: Conoscenza su come funzionano gli algoritmi di rendering physically-based and quali light paths supportano; conoscenza su come modellare il look di superfici reali; conoscenza su come rappresentare la geometria in un renderer.
Applicazione di conoscenza e comprensione Implementazione di un path tracer ricco di funzioni con supporto per materiali arbitrari, scattering volumetrico e superfici continue e corrugate.
Autonomia di giudizio Essere in grado di valutare le prestazioni di diversi algoritmi di rendering realistico rispetto ai modi di interazione tra luci/superfici e luci/volumi.
Abilità comunicative Essere in grado di comunicare con chiarezza come funzionano gli algoritmi di rendering realistico, come sono sviluppati e quali scene 3D e feature di immagini supportano.
Capacità di apprendimento successivo: Essere in grado di apprendere algoritmi di rendering più complesso come metodi bidirezionali o Monte Carlo Markov Chain. Essere in grado di lavorare con sicurezza su renderer per produzione cinematografica.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047630 -
HUMAN COMPUTER INTERACTION ON THE WEB
|
Erogato in altro semestre o anno
|
1047631 -
INFORMATION SYSTEMS
|
Erogato in altro semestre o anno
|
1047633 -
INTENSIVE COMPUTATION
|
Erogato in altro semestre o anno
|
1047634 -
INTERNET OF THINGS
|
Erogato in altro semestre o anno
|
1047635 -
MACHINE LEARNING
|
Erogato in altro semestre o anno
|
1047636 -
MATHEMATICAL LOGIC FOR COMPUTER SCIENCE
|
Erogato in altro semestre o anno
|
10589557 -
METHODS IN COMPUTER SCIENCE EDUCATION: ANALYSIS
|
Erogato in altro semestre o anno
|
10589558 -
METHODS IN COMPUTER SCIENCE EDUCATION: DESIGN
|
Erogato in altro semestre o anno
|
1047638 -
MODELS OF COMPUTATION
|
Erogato in altro semestre o anno
|
1047639 -
MULTIMODAL INTERACTION
|
Erogato in altro semestre o anno
|
1038141 -
NATURAL LANGUAGE PROCESSING
|
Erogato in altro semestre o anno
|
1047640 -
NETWORK ALGORITHMS
(obiettivi)
Obiettivi generali Acquisire conoscenze relativamente al progetto di algoritmi complessi per risolvere problemi su grafi che modellano problemi inerenti le reti (cablate, senza fili e di sensori).
Obiettivi specifici Conoscenza e comprensione Al termine del corso gli studenti conosceranno le metodologie di base per l'analisi di problemi relativi alle reti e l’identificazione dei problemi su grafi che più si avvicinino; conosceranno inoltre gli algoritmi risolutivi di alcuni dei principali problemi su grafi.
Applicare conoscenza e comprensione: Al termine del corso gli studenti avranno acquisito familiarità con l’analisi delle problematiche legate alle reti. Saranno in grado di riconoscere quale sia il problema su grafi che più si avvicina e di progettare nuove strutture dati e i relativi algoritmi, rielaborando quelli esistenti, per risolvere il problema di partenza.
Capacità critiche e di giudizio Lo studente avrà le basi per analizzare la qualità di un algoritmo per le reti, sia dal punto di vista della effettiva risoluzione del problema che da quello della efficienza computazionale con la quale il problema viene risolto.
Capacità comunicative Lo studente acquisirà la capacità di esporre in modo chiaro ed organizzato le proprie conoscenze, capacità che verrà verificata durante la prova orale.
Capacità di apprendimento Le conoscenze acquisite permetteranno allo studente, una volta concluso il ciclo di studi, di affrontare problemi reali in modo critico ed efficace e di progettare soluzioni efficienti.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
10589555 -
PRACTICAL NETWORK DEFENSE
|
Erogato in altro semestre o anno
|
1047642 -
SECURITY IN SOFTWARE APPLICATIONS
|
Erogato in altro semestre o anno
|
1047643 -
TOPICS IN PHYSICS
|
Erogato in altro semestre o anno
|
|
- -
A SCELTA DELLO STUDENTE
|
6
|
|
-
|
-
|
-
|
-
|
Attività formative a scelta dello studente (art.10, comma 5, lettera a)
|
ITA |
AAF1246 -
ATTIVITA' FORMATIVA COMPLEMENTARE
(obiettivi)
Le attività formative complementari si possono inquadrare in uno o più ambiti disciplinari affini o integrativi a quelli di base o caratterizzanti, e possono proporre obiettivi formativi di carattere interdisciplinare o di approfondimento delle culture di contesto.
|
6
|
|
-
|
-
|
-
|
-
|
Ulteriori attività formative (art.10, comma 5, lettera d)
|
ITA |
Secondo semestre
Insegnamento
|
CFU
|
SSD
|
Ore Lezione
|
Ore Eserc.
|
Ore Lab
|
Ore Studio
|
Attività
|
Lingua
|
10596281 -
AUTONOMOUS NETWORKING
|
Erogato in altro semestre o anno
|
1047617 -
COMPUTER NETWORK PERFORMANCE
|
Erogato in altro semestre o anno
|
1047622 -
CRYPTOGRAPHY
|
Erogato in altro semestre o anno
|
1047623 -
DATA AND NETWORK SECURITY
(obiettivi)
Obiettivi generali Lo scopo di Data and Network Security è quello di esporre le problematiche e le soluzioni più aggiornate in un settore come quello della sicurezza dei dati e delle reti informatiche che è in rapida evoluzione.
Obiettivi specifici Un primo obiettivo è di introdurre i concetti principali di sicurezza informatica che includono: Identificazione e autenticazione, Virus, trojan e canali coperti, Analisi degli attacchi più diffusi, Sicurezza del sistema operativo, Sicurezza delle comunicazioni. Un secondo obiettivo è di descrivere i principali problemi di ricerca nel campo. Ad esempio, quelli che ricadono in aree che includono le seguenti: comunicazioni anonime, sicurezza Blockchain, sicurezza cloud, Framing Attacks, Location privacy, sicurezza nell'apprendimento automatico, sicurezza della rete sociale, sicurezza delle reti Software-Defined.
Conoscenza e comprensione Gli studenti verranno a conoscenza dei fondamenti di sicurezza nei sistemi operativi, nelle reti wired/wireless, nella gestione dei dati e dei principali problemi di ricerca studiati in questi settori.
Applicazione di conoscenza e comprensione Alla fine del corso gli studenti saranno in grado di progettare l’architettura di un sistema informativo aziendale sicuro e di seguire in modo autonomo l'evoluzione del settore.
Capacità di giudizio Gli studenti svilupperanno le capacità di analisi necessarie per valutare diverse alternative durante il processo di progettazione dei sistemi informativi sicuri.
Capacità comunicative Gli studenti impareranno a documentare le loro scelte, anche attraverso l'uso di strumenti di generazione di rapporti automatizzati. Avranno anche acquisito la capacità di preparare presentazioni relative ad argomenti scientifici.
Capacità di proseguire l'apprendimento in modo autonomo Le nozioni acquisite durante il corso forniscono agli studenti una base di conoscenza per poter ulteriormente approfondire gli aspetti più tecnici, e per mantenersi autonomamente informati sui continui sviluppi e aggiornamenti nel settore della sicurezza informatica.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
1047634 -
INTERNET OF THINGS
|
Erogato in altro semestre o anno
|
|
10589621 -
ADVANCED MACHINE LEARNING
|
Erogato in altro semestre o anno
|
1047615 -
AUTOMATIC SOFTWARE VERIFICATION METHODS
|
Erogato in altro semestre o anno
|
1047205 -
CLOUD COMPUTING
|
Erogato in altro semestre o anno
|
1047619 -
CONCURRENT SYSTEMS
(obiettivi)
Obiettivi generali: Capire i concetti base dei sistemi concorrenti e le metodologie adottate nella soluzione dei problemi da essi posti
Obiettivi specifici: Mutua esclusione, diverse proprietà di liveness, semafori, monitor, transazioni, atomicità, concorrenza senza mutua esclusione, altre proprietà di liveness, oggetto universale e consenso. Sistemi di transizioni etichettate, semantica a interleaving, sincronizzazione, simulazione e bisimulazione, tecniche di verifica, passaggio di nomi, sistemi di tipo.
Conoscenza e comprensione: Capire the problematiche di base dei sistemi concorrenti e le relative soluzioni possibili, i principi fondazionali dei linguaggi di programmazione concorrente e le relative tecniche di verifica
Applicare conoscenza e comprensione: essere in grado di risolvere problematiche basilari di semplici sistemi concorrenti
Capacità critiche e di giudizio: capire vantaggi e svantaggi delle varie possibili soluzioni a problematiche di sistemi concorrenti
Capacità comunicative: sviluppare un linguaggio tecnico e formale in grado di spiegare le soluzioni ideate e i relativi meriti
Capacità di apprendimento: comprendere scenari di programmazione complessi e le relative soluzioni, anche sofisticate
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
1047630 -
HUMAN COMPUTER INTERACTION ON THE WEB
|
Erogato in altro semestre o anno
|
1047633 -
INTENSIVE COMPUTATION
(obiettivi)
Obiettivi generali: Lo scopo del corso è descrivere i metodi per risolvere problemi che richiedono calcolo intensivo, in particolare in ambito scientifico, e le architetture di calcolo parallele adatte.
Obiettivi specifici: Programmazione con Matlab. Rappresentazione di matrici sparse. Metodi in algebra lineare. Architetture avanzate di calcolatori paralleli.
Conoscenza e comprensione: Conoscere e capire i metodi del calcolo scientifico e le architetture di calcolo.
Applicare conoscenza e comprensione: Saper risolvere i problemi applicando i metodi del calcolo scientifico; saper usare correttamente la programmazione in matlab; essere in grado di analizzare i risultati ottenuti.
Capacità critiche e di giudizio: Saper scegliere il miglior approccio, tra i vari studiati, per risolvere un determinato problema; essere in grado di confrontare correttamente i risultati ottenuti con metodi diverse e diverse architetture.
Capacità comunicative: Essere in grado di motivare le proprie scelte nella risoluzione di un problema che richieda grande capacità di calcolo
Capacità di apprendimento: Capire le differenze e i vantaggi dei diversi approcci alla soluzione di un problema. Capire le differenze e i vantaggi nell’uso di diverse architetture.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
1047635 -
MACHINE LEARNING
|
Erogato in altro semestre o anno
|
1047639 -
MULTIMODAL INTERACTION
(obiettivi)
Obiettivi generali: Essere in grado di progettare e valutare un sistema multimodale
Obiettivi specifici: Conoscere le caratteristiche e le tecniche fondamentali relative ai diversi canali di comunicazione uomo-macchina: gesti, interazione vocale, ecc. Conoscere le modalità di cooperazione di singoli canali. Essere in grado di progettare/implementare la fusione/fissione delle informazioni su diversi canali.
Conoscenza e comprensione: Fondamenti teorici della comunicazione su diversi canali di interazione. Fondamenti teorici della progettazione di un sistema multimodale.
Applicare conoscenza e comprensione: Essere in grado di progettare ed implementare una applicazione multimodale.
Capacità critiche e di giudizio: Essere in grado di valutare le prestazioni e la robustezza di una applicazione multimodale.
Capacità comunicative: Essere in grado di comunicare/condividere i requisiti di un sistema multimodale, le modalità operative più adatte ad una certa applicazione, e le misure di performance del sistema
Capacità di apprendimento: Essere in grado di approfondire autonomamente gli argomenti presentati nel corso, relativamente a tecniche e metodi specifici/complessi.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
1047640 -
NETWORK ALGORITHMS
|
Erogato in altro semestre o anno
|
1047642 -
SECURITY IN SOFTWARE APPLICATIONS
|
Erogato in altro semestre o anno
|
10593236 -
DEEP LEARNING AND APPLIED ARTIFICIAL INTELLIGENCE
|
Erogato in altro semestre o anno
|
|
1047613 -
ADVANCED ALGORITHMS
(obiettivi)
Obiettivi generali: Questo corso propone lo studio di algoritmi evoluti e di strutture dati avanzate per rendere efficiente la risoluzione di problemi complessi.
Obiettivi specifici:
Applicare conoscenza e comprensione: Al termine del corso lo studente avrà gli strumenti per individuare il nucleo matematico proprio del problema da affrontare e per identificare la tecnica più appropiata per il progetto algoritmico risolutivo dello stesso.
Capacità critiche e di giudizio Gli studenti saranno in grado di capire quale sia il modo migliore per rappresentare e organizzare in modo significativo le informazioni note del problema
Capacità comunicative: Lo studente avrà acquisito il giusto linguaggio per presentare idee algoritmiche che esprimono dettagliatamente le caratteristiche del problema da risolvere.
Capacità di apprendimento: Lo studente avrà acquisito la capacità di pensare in "modo algoritmico", ovvero sarà in grado di estrarre tutta la conoscenza possibile da una situazione semplicemnte tramite il ragionamento.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
10589621 -
ADVANCED MACHINE LEARNING
|
Erogato in altro semestre o anno
|
10596281 -
AUTONOMOUS NETWORKING
|
Erogato in altro semestre o anno
|
1047615 -
AUTOMATIC SOFTWARE VERIFICATION METHODS
|
Erogato in altro semestre o anno
|
1041764 -
BIG DATA COMPUTING
|
Erogato in altro semestre o anno
|
1041792 -
BIOMETRIC SYSTEMS
|
Erogato in altro semestre o anno
|
1047205 -
CLOUD COMPUTING
|
Erogato in altro semestre o anno
|
1047616 -
COMPUTATIONAL COMPLEXITY
|
Erogato in altro semestre o anno
|
1047617 -
COMPUTER NETWORK PERFORMANCE
|
Erogato in altro semestre o anno
|
1047618 -
COMPUTER VISION
|
Erogato in altro semestre o anno
|
1047619 -
CONCURRENT SYSTEMS
(obiettivi)
Obiettivi generali: Capire i concetti base dei sistemi concorrenti e le metodologie adottate nella soluzione dei problemi da essi posti
Obiettivi specifici: Mutua esclusione, diverse proprietà di liveness, semafori, monitor, transazioni, atomicità, concorrenza senza mutua esclusione, altre proprietà di liveness, oggetto universale e consenso. Sistemi di transizioni etichettate, semantica a interleaving, sincronizzazione, simulazione e bisimulazione, tecniche di verifica, passaggio di nomi, sistemi di tipo.
Conoscenza e comprensione: Capire the problematiche di base dei sistemi concorrenti e le relative soluzioni possibili, i principi fondazionali dei linguaggi di programmazione concorrente e le relative tecniche di verifica
Applicare conoscenza e comprensione: essere in grado di risolvere problematiche basilari di semplici sistemi concorrenti
Capacità critiche e di giudizio: capire vantaggi e svantaggi delle varie possibili soluzioni a problematiche di sistemi concorrenti
Capacità comunicative: sviluppare un linguaggio tecnico e formale in grado di spiegare le soluzioni ideate e i relativi meriti
Capacità di apprendimento: comprendere scenari di programmazione complessi e le relative soluzioni, anche sofisticate
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047622 -
CRYPTOGRAPHY
|
Erogato in altro semestre o anno
|
1047623 -
DATA AND NETWORK SECURITY
(obiettivi)
Obiettivi generali Lo scopo di Data and Network Security è quello di esporre le problematiche e le soluzioni più aggiornate in un settore come quello della sicurezza dei dati e delle reti informatiche che è in rapida evoluzione.
Obiettivi specifici Un primo obiettivo è di introdurre i concetti principali di sicurezza informatica che includono: Identificazione e autenticazione, Virus, trojan e canali coperti, Analisi degli attacchi più diffusi, Sicurezza del sistema operativo, Sicurezza delle comunicazioni. Un secondo obiettivo è di descrivere i principali problemi di ricerca nel campo. Ad esempio, quelli che ricadono in aree che includono le seguenti: comunicazioni anonime, sicurezza Blockchain, sicurezza cloud, Framing Attacks, Location privacy, sicurezza nell'apprendimento automatico, sicurezza della rete sociale, sicurezza delle reti Software-Defined.
Conoscenza e comprensione Gli studenti verranno a conoscenza dei fondamenti di sicurezza nei sistemi operativi, nelle reti wired/wireless, nella gestione dei dati e dei principali problemi di ricerca studiati in questi settori.
Applicazione di conoscenza e comprensione Alla fine del corso gli studenti saranno in grado di progettare l’architettura di un sistema informativo aziendale sicuro e di seguire in modo autonomo l'evoluzione del settore.
Capacità di giudizio Gli studenti svilupperanno le capacità di analisi necessarie per valutare diverse alternative durante il processo di progettazione dei sistemi informativi sicuri.
Capacità comunicative Gli studenti impareranno a documentare le loro scelte, anche attraverso l'uso di strumenti di generazione di rapporti automatizzati. Avranno anche acquisito la capacità di preparare presentazioni relative ad argomenti scientifici.
Capacità di proseguire l'apprendimento in modo autonomo Le nozioni acquisite durante il corso forniscono agli studenti una base di conoscenza per poter ulteriormente approfondire gli aspetti più tecnici, e per mantenersi autonomamente informati sui continui sviluppi e aggiornamenti nel settore della sicurezza informatica.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
10593236 -
DEEP LEARNING AND APPLIED ARTIFICIAL INTELLIGENCE
|
Erogato in altro semestre o anno
|
1047624 -
DISTRIBUTED SYSTEMS
|
Erogato in altro semestre o anno
|
1047626 -
FORMAL METHODS IN SOFTWARE DEVELOPMENT
|
Erogato in altro semestre o anno
|
1047627 -
FOUNDATIONS OF DATA SCIENCE
|
Erogato in altro semestre o anno
|
1047628 -
FUNDAMENTALS OF COMPUTER GRAPHICS
|
Erogato in altro semestre o anno
|
1047630 -
HUMAN COMPUTER INTERACTION ON THE WEB
|
Erogato in altro semestre o anno
|
1047631 -
INFORMATION SYSTEMS
(obiettivi)
Obiettivi generali
Il corso di sistemi informativi analizza differenti tipologie di sistemi informativi e come esse possono contribuire al successo degli obiettivi di un’azienda; permette di comprendere gli approcci e i modelli da usare per valutare la qualità dei processi, del software e dei servizi ICT; e fornisce le conoscenze di base per pianificare, gestire e controllare i progetti IT
Obiettivi specifici
• Conoscenza e comprensione – Modello funzionale e struttura informativa dei processi aziendali – esigenze di integrazione e requisiti di controllo dei dati dei sistemi informatici aziendali – sistemi e tecnologie per sviluppare e mantenere un e-business di successo – principali settori di applicazione dei sistemi di informazione in vari settori di mercato – organizzazione IT e modelli di valutazione della qualità IT – conoscenze di base di contesto, tecniche/metodologie e soft skill per la gestione dei progetti ICT – systems and technologies to develop&maintain a successful e-business – main application areas of info systems in various industries – ICT organization and mainstream techniques (e.g. quality management) – basic definitions (context), techniques/methodologies and soft skills for project management in ICT
• Applicazione di conoscenze e comprensione (capacità) – Analizzare le diverse vategorie di requisiti estratti da differenti categorie di utenti (stakeholder) di sistemi informativi – Selezionare l’appropriato modello per valutare la qualità dei processi ICT, del prodotto software e dei servizi ICT – Sviluppare uno studio di fattibilità selezionando l’appropriata architettura applicativa e tecnologica – Preparare, per un semplice progetto ICT, un piano di sviluppo nel rispetto dei vincoli di tempo, costi, qualità e definendo l’appropriata organizzazione – Controllare un progetto ICT in corso, applicando le tecniche di project management – Comprendere a valutare le lezioni apprese nei precedenti progetti
|
6
|
SECS-P/07
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047633 -
INTENSIVE COMPUTATION
(obiettivi)
Obiettivi generali: Lo scopo del corso è descrivere i metodi per risolvere problemi che richiedono calcolo intensivo, in particolare in ambito scientifico, e le architetture di calcolo parallele adatte.
Obiettivi specifici: Programmazione con Matlab. Rappresentazione di matrici sparse. Metodi in algebra lineare. Architetture avanzate di calcolatori paralleli.
Conoscenza e comprensione: Conoscere e capire i metodi del calcolo scientifico e le architetture di calcolo.
Applicare conoscenza e comprensione: Saper risolvere i problemi applicando i metodi del calcolo scientifico; saper usare correttamente la programmazione in matlab; essere in grado di analizzare i risultati ottenuti.
Capacità critiche e di giudizio: Saper scegliere il miglior approccio, tra i vari studiati, per risolvere un determinato problema; essere in grado di confrontare correttamente i risultati ottenuti con metodi diverse e diverse architetture.
Capacità comunicative: Essere in grado di motivare le proprie scelte nella risoluzione di un problema che richieda grande capacità di calcolo
Capacità di apprendimento: Capire le differenze e i vantaggi dei diversi approcci alla soluzione di un problema. Capire le differenze e i vantaggi nell’uso di diverse architetture.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047634 -
INTERNET OF THINGS
|
Erogato in altro semestre o anno
|
1047635 -
MACHINE LEARNING
|
Erogato in altro semestre o anno
|
1047636 -
MATHEMATICAL LOGIC FOR COMPUTER SCIENCE
|
Erogato in altro semestre o anno
|
10589557 -
METHODS IN COMPUTER SCIENCE EDUCATION: ANALYSIS
|
Erogato in altro semestre o anno
|
10589558 -
METHODS IN COMPUTER SCIENCE EDUCATION: DESIGN
|
Erogato in altro semestre o anno
|
1047638 -
MODELS OF COMPUTATION
|
Erogato in altro semestre o anno
|
1047639 -
MULTIMODAL INTERACTION
(obiettivi)
Obiettivi generali: Essere in grado di progettare e valutare un sistema multimodale
Obiettivi specifici: Conoscere le caratteristiche e le tecniche fondamentali relative ai diversi canali di comunicazione uomo-macchina: gesti, interazione vocale, ecc. Conoscere le modalità di cooperazione di singoli canali. Essere in grado di progettare/implementare la fusione/fissione delle informazioni su diversi canali.
Conoscenza e comprensione: Fondamenti teorici della comunicazione su diversi canali di interazione. Fondamenti teorici della progettazione di un sistema multimodale.
Applicare conoscenza e comprensione: Essere in grado di progettare ed implementare una applicazione multimodale.
Capacità critiche e di giudizio: Essere in grado di valutare le prestazioni e la robustezza di una applicazione multimodale.
Capacità comunicative: Essere in grado di comunicare/condividere i requisiti di un sistema multimodale, le modalità operative più adatte ad una certa applicazione, e le misure di performance del sistema
Capacità di apprendimento: Essere in grado di approfondire autonomamente gli argomenti presentati nel corso, relativamente a tecniche e metodi specifici/complessi.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1038141 -
NATURAL LANGUAGE PROCESSING
|
Erogato in altro semestre o anno
|
1047640 -
NETWORK ALGORITHMS
|
Erogato in altro semestre o anno
|
10589555 -
PRACTICAL NETWORK DEFENSE
|
Erogato in altro semestre o anno
|
1047642 -
SECURITY IN SOFTWARE APPLICATIONS
|
Erogato in altro semestre o anno
|
1047643 -
TOPICS IN PHYSICS
(obiettivi)
Obiettivi generali: L’obiettivo principale del corso è di introdurre gli studenti alla meccanica quantistica e alla applicazione al calcolo quantistico
Obiettivi specifici:
Conoscenza e comprensione: Lo studente acquisirà tutti gli elementi necessari a comprendere il funzionamento di un calcolatore quantistico.
Applicazione di conoscenza e comprensione: Le tecniche apprese verranno applicate nei più famosi algoritmi quantistici oggi disponibili, quali la quantum cryptography, l’algoritmo di Shor e quello di Grover.
Autonomia di giudizio: In aula si cerca di stimolare il più possibile le discussioni sui vari aspetti della meccanica quantistica, specialmente quelli meno intuitivi, come l’entanglement, e si incoraggiano gli studenti a proporre argomenti di loro interesse inerenti il corso.
Abilità comunicative: Per superare l’esame finale, gli studenti devono illustrare due tesine in power point (o equivalente) su due argomenti, uno di meccanica quantistica e uno di calcolo quantistico. Questa attività è senza dubbio utile per preparare gli studenti a presentare in pubblico il loro lavoro.
Capacità di apprendimento successivo: Durante tutto il corso vengono indicati dei testi di riferimento con i quali gli studenti possono approfondire quanto appreso, fino ad un livello professionale. Inoltre vengono presentati anche alcuni linguaggi di simulazione del calcolo quantistico, utili per lo sviluppo di algoritmi per computer quantistici.
|
6
|
FIS/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
|
AAF1034 -
PROVA FINALE
(obiettivi)
La prova finale consiste nella discussione di una tesi di laurea magistrale, costituita da un documento scritto, preferibilmente in lingua inglese, che presenta i risultati di uno studio originale condotto su un problema di natura applicativa, sperimentale o di ricerca.
Questo permetterà di valutare la capacità di applicare le conoscenze apprese a un problema specifico, la capacità di prendere decisioni autonome e di comunicare gli aspetti metodologici e tecnici del lavoro svolto.
|
36
|
|
-
|
-
|
-
|
-
|
Per la prova finale e la lingua straniera (art.10, comma 5, lettera c)
|
ITA |
Information Science and Applications
Primo anno
Primo semestre
Insegnamento
|
CFU
|
SSD
|
Ore Lezione
|
Ore Eserc.
|
Ore Lab
|
Ore Studio
|
Attività
|
Lingua
|
1047613 -
ADVANCED ALGORITHMS
|
Erogato in altro semestre o anno
|
1041764 -
BIG DATA COMPUTING
|
Erogato in altro semestre o anno
|
1047617 -
COMPUTER NETWORK PERFORMANCE
(obiettivi)
Obiettivi generali: Lo scopo del corso è lo studio di metodi per stimare le prestazioni dei sistemi di rete esistenti e dimensionare nuovi sistemi ad alte prestazioni.
Obiettivi specifici: Analisi di processi stocastici discreti e continui, reti di code, metodi di misurazione delle reti tramite network tomography, analisi delle prestazioni di sistemi wired e wireless.
Conoscenza e comprensione: Il corso permettera` di sviluppare la capacita` di caratterizzare i problemi prestazionali nelle reti di calcolatori e individuare le criticita` di questi sistemi. Applicare conoscenza e comprensione: Attraverso il corso lo studente imparera` a riconoscere i problemi prestazionali e a progettare le relative soluzioni, attraverso la modellazione analitica e la soluzione di relativi problemi di ottimizzazione.
Capacità critiche e di giudizio: Il corso mettera` lo studente in condizione di saper scegliere, dato un problema, la migliore strategia risolutiva, fermo restando la comprensione di vincoli esistenti in termini di dimensionamento e costi delle soluzioni possibili.
Capacità comunicative: Lo studente sara` in grado di motivare le proprie scelte nella proposta di uno specifico approccio risolutivo di un problema relativo alle prestazioni di una rete di calcolatori, e fornire una analisi comparativa dell’approccio scelto con altri approcci possibili. Capacità di apprendimento: Lo studente sviluppera` capacita` di studio autonome e di comprensione e valutazione critica di nuove metodologie, tecnologie e modelli di sviluppo per sistemi di rete ad alte prestazioni.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
1047618 -
COMPUTER VISION
|
Erogato in altro semestre o anno
|
1047628 -
FUNDAMENTALS OF COMPUTER GRAPHICS
|
Erogato in altro semestre o anno
|
1047638 -
MODELS OF COMPUTATION
(obiettivi)
Obiettivi generali L'insegnamento è indirizzato all'acquisizione delle conoscenze matematiche relative ad aspetti fondamentali dei linguaggi di programmazione funzionale e imperativa con particolare attenzione ai meccanismi di esecuzione dei programmi.
Obiettivi specifici
Conoscenza e comprensione: Alla fine del corso lo studente avrà piena comprensione degli strumenti matematici proposti.
Capacità di applicare conoscenza e comprensione: Lo studente sarà in grado di approfondire lo studio consultando autonomamente manuali o pubblicazioni scientifiche.
Capacità critiche e di giudizio: Le conoscenze acquisite permetteranno allo studente di individuare e confrontare in altri ambiti gli argomenti proposti nell'uso di linguaggi di programmazione, in particolare nell'ambito lavorativo.
Capacità di comunicare quanto si è appreso: Lo studente viene stimolato ad esporre e comunicare le proprie esperienze ai suoi colleghi.
Capacità di proseguire lo studio in modo autonomo nel corso della vita: Il corso tratta aspetti fondamentali della programmazione, assicurando allo studente la possibilità di individuarli autonomamente nell'uso di ogni particolare linguaggio.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
1047640 -
NETWORK ALGORITHMS
|
Erogato in altro semestre o anno
|
1047642 -
SECURITY IN SOFTWARE APPLICATIONS
(obiettivi)
Obiettivi generali
I fondamenti della sicurezza nei programmi software
Obiettivi specifici
Metodologie e strumenti per trovare e rimuovere le vulnerabilità più comuni del software e per sviluppare software senza falle di sicurezza Conoscenza e comprensione
conoscenza e capacità di comprensione delle tecniche più efficaci per la rimozione di vulnerabilità dal codice e per sviluppare software che soddisfi specifiche politiche di sicurezza. Applicare conoscenza e comprensione
Essere in grado di applicare e trasferire la propria conoscenza delle metodologie alla scelta delle tecniche e strumenti appropriati risolvere problemi di sicurezza del software Autonomia di giudizio
Capacità d’interpretazione autonoma per proporre soluzioni appropriate a problemi di sicurezza software congruenti con le tecnologie disponibili. Abilità comunicative
Capacità di presentare e di argomentare le proprie scelte in merito alle metodologie ed agli strumenti utilizzati per le soluzioni proposte, sia con colleghi che con utenti Capacità di apprendimento successivo
Capacità di apprendere e approfondire nuove tecniche nell’ambito della sicurezza software informatica sia degli aspetti metodologici sia di quelli tecnologici
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
|
10596281 -
AUTONOMOUS NETWORKING
(obiettivi)
Obbiettivi generali: Il corso fornirà agli studenti la capacità di affrontare le problematiche legate alla progettazione, implementazione e utilizzo dei sistemi di reti autonomi. Il corso presenterà sia le basi teoriche che gli aspetti pratici che è necessario conoscere per sviluppare questi sistemi.
Obiettivi specifici: La combinazione di molti dispositivi collegati eterogenei, inclusi dispositivi in rapido movimento e capacità di comunicazione avanzate che consentono interazioni in tempo reale sta portando alla creazione di sistemi su una scala e / o un livello di complessità che va oltre la capacità degli umani di comprendere e controllare pienamente . La gestione e il funzionamento di questi sistemi di rete richiedono un livello estremamente elevato di automazione intelligente. Scopo di questo corso è fornire conoscenze sulle principali tecnologie legate alla rete la cui interazione sarà responsabile per rendere autonomi i sistemi di rete. Queste tecnologie, basate principalmente sull'apprendimento di rinforzo (RL), consentono ai sistemi di reagire a ciò che sta accadendo nel loro ambiente e di rispondere di conseguenza.
Conoscenza e comprensione: Alla fine del corso gli studenti avranno conoscenze sulle tecnologie - sistemi di comunicazione in rete wireless come reti IoT, reti di backscattering e reti aeree - e metodologie - apprendimento di rinforzo - per progettare reti autonome. In particolare, il corso si concentrerà su problemi di comunicazione e networking di reti autonome e possibili soluzioni.
Applicare conoscenza e comprensione: Alla fine del corso gli studenti conosceranno le tecnologie e le metodologie per progettare reti autonome. In particolare, il corso si concentrerà su problemi di comunicazione e networking nelle reti autonome e possibili soluzioni.
Capacità critiche e di giudizio: Gli studenti svilupperanno le capacità di analisi necessarie per valutare diverse scelte progettuali alternative selezionando la migliore per ogni specifico scenario applicativo e tipo di tecnologia.
Capacità comunicative: Gli studenti impareranno ad analizzare e presentare articoli scientifici, idee di ricerca o soluzioni tecniche di settore, descrivendole in modo sintetico ed accurato, con un linguaggio tecnico adeguato.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
1047616 -
COMPUTATIONAL COMPLEXITY
|
Erogato in altro semestre o anno
|
1047622 -
CRYPTOGRAPHY
(obiettivi)
Obiettivi Generali: Lo scopo del corso è quello di tramandare i fondamenti della crittografia, che è la componente principale per la sicurezza nelle applicazioni digitali odierne.
Obiettivi Specifici: Gli studenti impareranno la metodologia della sicurezza dimostrabile, che permette di dimostrare la sicurezza dei moderni crittosistemi in senso matematico.
Conoscenza e Comprensione: -) Conoscenza dei fondamenti matematici della crittografia moderna. -) Conoscenza delle principali assunzioni crittografiche, su cui si basa la sicurezza dei moderni crittosistemi. -) Conoscenza degli schemi crittografici usati nella vita reale. Comprensione delle loro proprietà (teoriche e pratiche).
Applicare Conoscenza e Comprensione: -) Come selezionare la giusta primitiva crittografica per una data applicazione. -) Come analizzare la sicurezza di un dato crittosistema.
Capacità critiche e di giudizio: Gli studenti saranno in grado di giudicare se una data primitiva crittografica è sicura oppure no.
Capacità Comunicative: Come descrivere la sicurezza di una costruzione crittografica nel linguaggio della sicurezza dimostrabile.
Capacità di Apprendimento Successivo: Gli studenti interessati alla ricerca verranno a conoscenza di alcuni problemi aperti nell'area, ed otterranno le basi necessarie per studi più approfonditi in materia.
|
6
|
INF/01
|
24
|
36
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
|
1047613 -
ADVANCED ALGORITHMS
|
Erogato in altro semestre o anno
|
10589621 -
ADVANCED MACHINE LEARNING
|
Erogato in altro semestre o anno
|
10596281 -
AUTONOMOUS NETWORKING
(obiettivi)
Obbiettivi generali: Il corso fornirà agli studenti la capacità di affrontare le problematiche legate alla progettazione, implementazione e utilizzo dei sistemi di reti autonomi. Il corso presenterà sia le basi teoriche che gli aspetti pratici che è necessario conoscere per sviluppare questi sistemi.
Obiettivi specifici: La combinazione di molti dispositivi collegati eterogenei, inclusi dispositivi in rapido movimento e capacità di comunicazione avanzate che consentono interazioni in tempo reale sta portando alla creazione di sistemi su una scala e / o un livello di complessità che va oltre la capacità degli umani di comprendere e controllare pienamente . La gestione e il funzionamento di questi sistemi di rete richiedono un livello estremamente elevato di automazione intelligente. Scopo di questo corso è fornire conoscenze sulle principali tecnologie legate alla rete la cui interazione sarà responsabile per rendere autonomi i sistemi di rete. Queste tecnologie, basate principalmente sull'apprendimento di rinforzo (RL), consentono ai sistemi di reagire a ciò che sta accadendo nel loro ambiente e di rispondere di conseguenza.
Conoscenza e comprensione: Alla fine del corso gli studenti avranno conoscenze sulle tecnologie - sistemi di comunicazione in rete wireless come reti IoT, reti di backscattering e reti aeree - e metodologie - apprendimento di rinforzo - per progettare reti autonome. In particolare, il corso si concentrerà su problemi di comunicazione e networking di reti autonome e possibili soluzioni.
Applicare conoscenza e comprensione: Alla fine del corso gli studenti conosceranno le tecnologie e le metodologie per progettare reti autonome. In particolare, il corso si concentrerà su problemi di comunicazione e networking nelle reti autonome e possibili soluzioni.
Capacità critiche e di giudizio: Gli studenti svilupperanno le capacità di analisi necessarie per valutare diverse scelte progettuali alternative selezionando la migliore per ogni specifico scenario applicativo e tipo di tecnologia.
Capacità comunicative: Gli studenti impareranno ad analizzare e presentare articoli scientifici, idee di ricerca o soluzioni tecniche di settore, descrivendole in modo sintetico ed accurato, con un linguaggio tecnico adeguato.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047615 -
AUTOMATIC SOFTWARE VERIFICATION METHODS
|
Erogato in altro semestre o anno
|
1041764 -
BIG DATA COMPUTING
|
Erogato in altro semestre o anno
|
1041792 -
BIOMETRIC SYSTEMS
(obiettivi)
Obiettivi generali: Essere in grado di progettare e valutare un sistema biometrico o multibiometrico
Obiettivi specifici: Conoscere le caratteristiche e le tecniche fondamentali relative alle biometrie fisiche come volto, impronte, iride, ecc., e comportamentali come camminata, firma (caratteristiche dinamiche), stile di battitura, ecc. Conoscere le caratteristiche dell’architettura di un sistema biometrico: sistemi unimodali e multimodali. Essere in grado di valutare le prestazioni di un sistema biometrico in base alla modalità adottata: verifica, identificazione. Essere in grado di valutare/garantire la robustezza di un sistema biometrico rispetto ad attacchi di spoofing (furto di identità).
Conoscenza e comprensione: Fondamenti teorici della progettazione di un sistema biometrico e delle tecniche di estrazione/confronto delle caratteristiche specifiche per i principali tratti biometrici.
Applicare conoscenza e comprensione: Essere in grado di progettare ed implementare una applicazione di riconoscimento biometrico per almeno uno tratto biometrico.
Capacità critiche e di giudizio: Essere in grado di valutare le prestazioni e la robustezza agli attacchi di un sistema biometrico. Essere in grado di trasferire tecniche e protocolli in contesti diversi.
Capacità comunicative: Essere in grado di comunicare/condividere i requisiti di un sistema biometrico, le modalità operative più adatte ad una certa applicazione, e le misure di performance del sistema
Capacità di apprendimento: Essere in grado di approfondire autonomamente gli argomenti presentati nel corso, relativamente a tecniche e metodi specifici/complessi o a tratti biometrici non presenti tra gli argomenti.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047205 -
CLOUD COMPUTING
|
Erogato in altro semestre o anno
|
1047616 -
COMPUTATIONAL COMPLEXITY
|
Erogato in altro semestre o anno
|
1047617 -
COMPUTER NETWORK PERFORMANCE
(obiettivi)
Obiettivi generali: Lo scopo del corso è lo studio di metodi per stimare le prestazioni dei sistemi di rete esistenti e dimensionare nuovi sistemi ad alte prestazioni.
Obiettivi specifici: Analisi di processi stocastici discreti e continui, reti di code, metodi di misurazione delle reti tramite network tomography, analisi delle prestazioni di sistemi wired e wireless.
Conoscenza e comprensione: Il corso permettera` di sviluppare la capacita` di caratterizzare i problemi prestazionali nelle reti di calcolatori e individuare le criticita` di questi sistemi. Applicare conoscenza e comprensione: Attraverso il corso lo studente imparera` a riconoscere i problemi prestazionali e a progettare le relative soluzioni, attraverso la modellazione analitica e la soluzione di relativi problemi di ottimizzazione.
Capacità critiche e di giudizio: Il corso mettera` lo studente in condizione di saper scegliere, dato un problema, la migliore strategia risolutiva, fermo restando la comprensione di vincoli esistenti in termini di dimensionamento e costi delle soluzioni possibili.
Capacità comunicative: Lo studente sara` in grado di motivare le proprie scelte nella proposta di uno specifico approccio risolutivo di un problema relativo alle prestazioni di una rete di calcolatori, e fornire una analisi comparativa dell’approccio scelto con altri approcci possibili. Capacità di apprendimento: Lo studente sviluppera` capacita` di studio autonome e di comprensione e valutazione critica di nuove metodologie, tecnologie e modelli di sviluppo per sistemi di rete ad alte prestazioni.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047618 -
COMPUTER VISION
|
Erogato in altro semestre o anno
|
1047619 -
CONCURRENT SYSTEMS
|
Erogato in altro semestre o anno
|
1047622 -
CRYPTOGRAPHY
(obiettivi)
Obiettivi Generali: Lo scopo del corso è quello di tramandare i fondamenti della crittografia, che è la componente principale per la sicurezza nelle applicazioni digitali odierne.
Obiettivi Specifici: Gli studenti impareranno la metodologia della sicurezza dimostrabile, che permette di dimostrare la sicurezza dei moderni crittosistemi in senso matematico.
Conoscenza e Comprensione: -) Conoscenza dei fondamenti matematici della crittografia moderna. -) Conoscenza delle principali assunzioni crittografiche, su cui si basa la sicurezza dei moderni crittosistemi. -) Conoscenza degli schemi crittografici usati nella vita reale. Comprensione delle loro proprietà (teoriche e pratiche).
Applicare Conoscenza e Comprensione: -) Come selezionare la giusta primitiva crittografica per una data applicazione. -) Come analizzare la sicurezza di un dato crittosistema.
Capacità critiche e di giudizio: Gli studenti saranno in grado di giudicare se una data primitiva crittografica è sicura oppure no.
Capacità Comunicative: Come descrivere la sicurezza di una costruzione crittografica nel linguaggio della sicurezza dimostrabile.
Capacità di Apprendimento Successivo: Gli studenti interessati alla ricerca verranno a conoscenza di alcuni problemi aperti nell'area, ed otterranno le basi necessarie per studi più approfonditi in materia.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047623 -
DATA AND NETWORK SECURITY
|
Erogato in altro semestre o anno
|
10593236 -
DEEP LEARNING AND APPLIED ARTIFICIAL INTELLIGENCE
|
Erogato in altro semestre o anno
|
1047624 -
DISTRIBUTED SYSTEMS
(obiettivi)
Obiettivi generali Il corso ha come obiettivo di illustrare i concetti fondamentali dei sistemi distribuiti e la loro implementazione nei sistemi reali a larga scala moderni.
Obiettivi specifici Gli studenti si familiarizzeranno con tecniche di analisi, progetto e monitoraggio di sistemi distribuiti
Conoscenza e comprensione Al termine del corso gli studenti avranno acquisito conoscenze avanzate relative al monitoraggio delle computazioni distribuite, fault tollerance e failure detectors, consistenza e consenso, orologi logici e vector clocks per i sistemi asincroni,
Applicare conoscenza e comprension Al termine del corso gli studenti saranno in grado di applicare le conoscenze acquisite all'analisi di sistemi reali come ad esempio Chord e Amazon.
Capacità critiche e di giudizio Lo studente otterrà la capacità di analisi e valutazione della correttezza e dell’efficienza delle computazione distribuite, di comprendere le loro caratteristiche principali e di valutare in maniera critica pregi e difetti.
Capacità comunicative Lo studente acquisirà la capacità di esporre in modo chiaro ed organizzato le proprie conoscenze, capacità che verrà verificata durante la prova orale.
Capacità di apprendimento successivo Le conoscenze acquisite permetteranno allo studente di affrontare lo studio di ulteriori ma più specifici protocolli di tipo distribuito in modo approfondito e completo, e di essere in grado di progettare soluzioni di system design a partire da quelle dei sistemi reali affrontati in classe.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047626 -
FORMAL METHODS IN SOFTWARE DEVELOPMENT
(obiettivi)
Obiettivi generali: L'insegnamento è indirizzato all'acquisizione delle conoscenze logiche e di modellazione necessarie alla verifica di sistemi hardware e software complessi (con particolare riferimento al Model Checking).
Obiettivi specifici:
Conoscenza e comprensione: Alla fine del corso lo studente avrà piena comprensione degli strumenti di modellazione proposti (model checkers).
Capacità di applicare conoscenza e comprensione: Alla fine del corso lo studente sarà in grado di utilizzare gli strumenti presentati durante il corso e di approfondirne lo studio consultando autonomamente altri testi dedicati all'argomento e materiale scientifico che lo riguarda.
Capacità critiche e di giudizio: Le conoscenze acquisite permetteranno allo studente di affrontare le applicazioni proposte in altri insegnamenti e affrontare i problemi che gli verranno proposti nella carriera lavorativa in tema di modellazione e verifica di sistemi.
Capacità di comunicazione: Lo studente viene stimolato ad esporre e comunicare le proprie esperienze nella cerchia dei suoi colleghi.
Capacità di proseguire lo studio: Il corso tratta soltanto alcuni dei campi proponibili, ma dà notizia anche di un ampio spettro di tecniche che possono essere utilizzate in questo campo in modo che egli possa criticamente scegliere a seconda dei casi.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047627 -
FOUNDATIONS OF DATA SCIENCE
(obiettivi)
Obiettivi generali: Acquisire i fondamenti della scienza dai dati e dell'apprendimento automatico.
Obiettivi specifici: Rendere gli studenti consapevoli degli strumenti teorici e pratici della scienza dei dati e dell'apprendimento automatico, nonché dei loro limiti intrinseci; rendere gli studenti in grado di affrontare problemi reali attraverso gli strumenti più appropriati.
Conoscenza e comprensione: Il corso fornisce le nozioni, tecniche e metodologie di base utilizzate nell'ambito della scienza dei dati e dell'apprendimento automatico. Fornisce inoltre i rudimenti di programmazione necessari ad applicare la teoria a casi reali
Applicare conoscenza e comprensione: Alla fine del corso, gli studenti sapranno affrontare problemi concreti di scienza dei dati, dalla loro formalizzazione sino alla manipolazione dei dati attraverso appropriati strumenti software.
Capacità critiche e di giudizio: Gli studenti saranno in grado di scegliere le tecniche da applicare al caso specifico e di valutarne le prestazioni.
Capacità comunicative: Gli studenti saranno in grado di rappresentare e comunicare l'informazione estratta dai dati, attraverso l'uso razionale di grafici e indicatori.
Capacità di apprendimento: Gli studenti saranno messi in grado di apprendere autonomamente nozioni sia teoriche che pratiche del campo.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047628 -
FUNDAMENTALS OF COMPUTER GRAPHICS
|
Erogato in altro semestre o anno
|
1047630 -
HUMAN COMPUTER INTERACTION ON THE WEB
|
Erogato in altro semestre o anno
|
1047631 -
INFORMATION SYSTEMS
|
Erogato in altro semestre o anno
|
1047633 -
INTENSIVE COMPUTATION
|
Erogato in altro semestre o anno
|
1047634 -
INTERNET OF THINGS
|
Erogato in altro semestre o anno
|
1047635 -
MACHINE LEARNING
(obiettivi)
Obiettivi generali Il corso introduce le motivazioni, paradigm e applicazioni dei sistemi di apprendimento automatic. Si tratta di un corso introduttivo. Obiettivi specifici Apprendimento supervisionato: alberi di decisione, apprendimento di istanze, naïve Bayes, support vector machine, neural networks, deep learning, ensamble methods. Apprendimento non supervisionato: clustering, association rules. Apprendimento semi-supervisionato: Reinforcement learning. Genetic algorithms e genetic programming. Problemi generali: underfitting, overfitting, model selection, error analysis.
Conoscenza e comprensione: Gli studenti impareranno quali algoritmi si adattano meglio a quali categorie di problemi, come descrivere il dominio dell'applicazione, come regolare parametri e iperparametri del modello, come testare le prestazioni.
Applicazione di conoscenza e comprensione: Gli studenti faranno esperimenti utilizzando toolkits di ML quali Weka, Tensor Flow e scikit-lear.
Autonomia di giudizio: Gli studenti saranno in grado di comprendere le categorie di problemi che possono essere risolti in modo efficiente con algoritmi di apprendimento automatico, a quali condizioni.
Abilità comunicative: Queste saranno valutate durante gli esami scritti e la reportistica del progetto.
Capacità di apprendimento successivo: Gli studenti riceveranno una solida base per approfondire ulteriormente i metodi più avanzati, come il deep learning, l'apprendimento probabilistico ed altri.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047636 -
MATHEMATICAL LOGIC FOR COMPUTER SCIENCE
|
Erogato in altro semestre o anno
|
10589557 -
METHODS IN COMPUTER SCIENCE EDUCATION: ANALYSIS
|
Erogato in altro semestre o anno
|
10589558 -
METHODS IN COMPUTER SCIENCE EDUCATION: DESIGN
(obiettivi)
Obiettivi generali: Conoscere ed applicare le più recenti metodologie di insegnamento dell'Informatica nella scuola superiore. Il corso svilupperà una serie di use-cases relativi alle tecniche di insegnamento dell'Informatica a scuola.
Obiettivi specifici: • Progettazione e sviluppo di metodologie di insegnamento dell'informatica: illustrazione dei principi e dei metodi per la costruzione di attività e più in generale di un curriculum di informatica coerente con gli obiettivi fissati dalle indicazioni nazionali per i licei e dalle linee guida per gli istituti tecnici e professionali. • Metodologie e tecnologie didattiche per lo studio del rapporto dell'informatica con la società attuale, e in particolare degli aspetti etici legati, per esempio, al trattamento dei dati personali, all'automazione di decisioni e raccomandazioni, alla ridefinizione del concetto di copyright.
Conoscenza e comprensione: Principi e metodi di costruzione di attività didattiche di C.S. nella scuola superiore. Aspetti etici dell'uso dei dati e dei contenuti personali.
Applicazione di conoscenza e comprensione: Agli studenti verrà richiesto di scegliere e sviluppare alcuni moduli didattici per la scuola superiore.
Autonomia di giudizio: Lo studente sarà autonomo nello scegliere i moduli da sviluppare e nella loro fase di progetto e realizzazione.
Abilità comunicative: Gli studenti dovranno dimostrare di saper produrre moduli didattici di qualità, con una forte capacità di interessare e comunicare con precisione gli argomenti chiave della lezione da sviluppare.
Capacità di apprendimento successivo: La metodologia di progetto dei moduli didattici vista nel corso sarà facilmente applicabile ad altri tipi di corsi.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047638 -
MODELS OF COMPUTATION
(obiettivi)
Obiettivi generali L'insegnamento è indirizzato all'acquisizione delle conoscenze matematiche relative ad aspetti fondamentali dei linguaggi di programmazione funzionale e imperativa con particolare attenzione ai meccanismi di esecuzione dei programmi.
Obiettivi specifici
Conoscenza e comprensione: Alla fine del corso lo studente avrà piena comprensione degli strumenti matematici proposti.
Capacità di applicare conoscenza e comprensione: Lo studente sarà in grado di approfondire lo studio consultando autonomamente manuali o pubblicazioni scientifiche.
Capacità critiche e di giudizio: Le conoscenze acquisite permetteranno allo studente di individuare e confrontare in altri ambiti gli argomenti proposti nell'uso di linguaggi di programmazione, in particolare nell'ambito lavorativo.
Capacità di comunicare quanto si è appreso: Lo studente viene stimolato ad esporre e comunicare le proprie esperienze ai suoi colleghi.
Capacità di proseguire lo studio in modo autonomo nel corso della vita: Il corso tratta aspetti fondamentali della programmazione, assicurando allo studente la possibilità di individuarli autonomamente nell'uso di ogni particolare linguaggio.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047639 -
MULTIMODAL INTERACTION
|
Erogato in altro semestre o anno
|
1038141 -
NATURAL LANGUAGE PROCESSING
|
Erogato in altro semestre o anno
|
1047640 -
NETWORK ALGORITHMS
|
Erogato in altro semestre o anno
|
10589555 -
PRACTICAL NETWORK DEFENSE
|
Erogato in altro semestre o anno
|
1047642 -
SECURITY IN SOFTWARE APPLICATIONS
(obiettivi)
Obiettivi generali
I fondamenti della sicurezza nei programmi software
Obiettivi specifici
Metodologie e strumenti per trovare e rimuovere le vulnerabilità più comuni del software e per sviluppare software senza falle di sicurezza Conoscenza e comprensione
conoscenza e capacità di comprensione delle tecniche più efficaci per la rimozione di vulnerabilità dal codice e per sviluppare software che soddisfi specifiche politiche di sicurezza. Applicare conoscenza e comprensione
Essere in grado di applicare e trasferire la propria conoscenza delle metodologie alla scelta delle tecniche e strumenti appropriati risolvere problemi di sicurezza del software Autonomia di giudizio
Capacità d’interpretazione autonoma per proporre soluzioni appropriate a problemi di sicurezza software congruenti con le tecnologie disponibili. Abilità comunicative
Capacità di presentare e di argomentare le proprie scelte in merito alle metodologie ed agli strumenti utilizzati per le soluzioni proposte, sia con colleghi che con utenti Capacità di apprendimento successivo
Capacità di apprendere e approfondire nuove tecniche nell’ambito della sicurezza software informatica sia degli aspetti metodologici sia di quelli tecnologici
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047643 -
TOPICS IN PHYSICS
|
Erogato in altro semestre o anno
|
|
- -
A SCELTA DELLO STUDENTE
|
6
|
|
-
|
-
|
-
|
-
|
Attività formative a scelta dello studente (art.10, comma 5, lettera a)
|
ITA |
Secondo semestre
Insegnamento
|
CFU
|
SSD
|
Ore Lezione
|
Ore Eserc.
|
Ore Lab
|
Ore Studio
|
Attività
|
Lingua
|
1047613 -
ADVANCED ALGORITHMS
|
Erogato in altro semestre o anno
|
1041764 -
BIG DATA COMPUTING
(obiettivi)
Obiettivi generali Il corso si propone di introdurre le principali tecniche algoritmiche e di programmazione nell’analisi di big data, affrontando una varietà di problemi di data mining in modelli di calcolo adatti alla gestione di grandi quantità di dati.
Obiettivi specifici Capacità di analisi, modellazione, e risoluzione di problemi tipici dell'area "Big Data" attraverso l'implementazione di "pipeline" di machine learning su ambienti distribuiti tramite PySpark.
Conoscenza e comprensione: Al termine del corso gli studenti avranno una comprensione dettagliata dei modelli di programmazione per l'analisi di dati distribuiti su cluster di computer, nonché di modelli computazionali avanzati per l'elaborazione di enormi quantità di dati (ad esempio, streaming di dati, parallelismo in stile MapReduce e algoritmi efficienti in memoria secondaria).
Applicare conoscenza e comprensione: gli studenti saranno in grado di progettare e analizzare algoritmi per l’analisi di big data in diversi scenari, sapranno scrivere codice efficiente e scalabile tenendo conto delle caratteristiche architetturali delle moderne piattaforme di calcolo (inclusi i sistemi distribuiti), e sapranno lavorare sfruttando una varietà di sistemi software adatti al processamento di big data (tra cui Hadoop).
Capacità critiche e di giudizio: gli studenti saranno in grado di capire i paradigmi di calcolo più adatti in scenari differenti, valutando vantaggi e svantaggi di ciascun modello computazionale e affrontando le sfide che si presentano nella progettazione e implementazione di una varietà di applicazioni.
Capacità di comuniczione: gli studenti saranno in grado di comunicare in modo efficace, riassumendo in modo chiaro le idee principali nella progettazione di sistemi e algoritmi per l’analisi di big data e presentando informazioni tecniche accurate.
Capacità di apprendimento successivo: obiettivo del corso è quello di toccare una varietà di tecniche il più possibile ampia, introducendo pratiche standard e argomenti di ricerca all'avanguardia in questo settore e consentendo quindi agli studenti di estendere le conoscenze acquisite in modo indipendente, anche in base all’evoluzione tecnologica.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
1047617 -
COMPUTER NETWORK PERFORMANCE
|
Erogato in altro semestre o anno
|
1047618 -
COMPUTER VISION
|
Erogato in altro semestre o anno
|
1047628 -
FUNDAMENTALS OF COMPUTER GRAPHICS
|
Erogato in altro semestre o anno
|
1047638 -
MODELS OF COMPUTATION
|
Erogato in altro semestre o anno
|
1047640 -
NETWORK ALGORITHMS
|
Erogato in altro semestre o anno
|
1047642 -
SECURITY IN SOFTWARE APPLICATIONS
|
Erogato in altro semestre o anno
|
|
1047613 -
ADVANCED ALGORITHMS
|
Erogato in altro semestre o anno
|
10589621 -
ADVANCED MACHINE LEARNING
|
Erogato in altro semestre o anno
|
10596281 -
AUTONOMOUS NETWORKING
|
Erogato in altro semestre o anno
|
1047615 -
AUTOMATIC SOFTWARE VERIFICATION METHODS
|
Erogato in altro semestre o anno
|
1041764 -
BIG DATA COMPUTING
(obiettivi)
Obiettivi generali Il corso si propone di introdurre le principali tecniche algoritmiche e di programmazione nell’analisi di big data, affrontando una varietà di problemi di data mining in modelli di calcolo adatti alla gestione di grandi quantità di dati.
Obiettivi specifici Capacità di analisi, modellazione, e risoluzione di problemi tipici dell'area "Big Data" attraverso l'implementazione di "pipeline" di machine learning su ambienti distribuiti tramite PySpark.
Conoscenza e comprensione: Al termine del corso gli studenti avranno una comprensione dettagliata dei modelli di programmazione per l'analisi di dati distribuiti su cluster di computer, nonché di modelli computazionali avanzati per l'elaborazione di enormi quantità di dati (ad esempio, streaming di dati, parallelismo in stile MapReduce e algoritmi efficienti in memoria secondaria).
Applicare conoscenza e comprensione: gli studenti saranno in grado di progettare e analizzare algoritmi per l’analisi di big data in diversi scenari, sapranno scrivere codice efficiente e scalabile tenendo conto delle caratteristiche architetturali delle moderne piattaforme di calcolo (inclusi i sistemi distribuiti), e sapranno lavorare sfruttando una varietà di sistemi software adatti al processamento di big data (tra cui Hadoop).
Capacità critiche e di giudizio: gli studenti saranno in grado di capire i paradigmi di calcolo più adatti in scenari differenti, valutando vantaggi e svantaggi di ciascun modello computazionale e affrontando le sfide che si presentano nella progettazione e implementazione di una varietà di applicazioni.
Capacità di comuniczione: gli studenti saranno in grado di comunicare in modo efficace, riassumendo in modo chiaro le idee principali nella progettazione di sistemi e algoritmi per l’analisi di big data e presentando informazioni tecniche accurate.
Capacità di apprendimento successivo: obiettivo del corso è quello di toccare una varietà di tecniche il più possibile ampia, introducendo pratiche standard e argomenti di ricerca all'avanguardia in questo settore e consentendo quindi agli studenti di estendere le conoscenze acquisite in modo indipendente, anche in base all’evoluzione tecnologica.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1041792 -
BIOMETRIC SYSTEMS
|
Erogato in altro semestre o anno
|
1047205 -
CLOUD COMPUTING
(obiettivi)
Obiettivi generali : Il Cloud Computing è divenuto una delle fondamentali tecnologie dell’informazione, fornendo elevata scalabilità ed elasticità nella fornitura di applicazioni distribuite (aziendali e scientifiche). Alla fine del corso gli studenti avranno gli strumenti per comprendere l’impatto del Cloud Computing in un ambiente aziendale (e non) e le implicazioni tecnologiche nello sviluppo di applicazioni Cloud, specificatamente applicazioni per la memorizzazione e l’elaborazione di big data.
Obiettivi specifici Alla fine del corso, gli studenti avranno acquisito gli strumenti per: - usare le tecnologie di virtualizzazione a livello di sistema e a livello di applicazione - usare tecnologie IaaS e PaaS - progettare architetture virtualizzate - fare il deployment di applicazioni Cloud - valutare costi e prestazioni di sistemi Cloud
Conoscenza e comprensione: Alla fine del corso, gli studenti avranno acquisito la conoscenza relativa ai fattori che hanno influenzato la diffusione del Cloud Computing, alle tecnologie di virtualizzazione, alle architetture Cloud (autoscaling, load balancing, monitoring, high availability), ai sistemi di memorizzazione dei dati nel Cloud Alla fine del corso, gli studenti saranno capaci di comprendere i principi di funzionamento delle soluzioni basate su Cloud (design and operation) e di comprendere problemi di ricerca applicata relativi alle soluzioni basate su Cloud
Applicarei conoscenza e comprensione: Alla fine del corso, gli studenti saranno capaci di - spiegare i principi del Cloud Computing - spiegare le principali tecnologie Cloud - risolvere problemi che richiedono l’uso delle tecnologie Cloud e del design e deployment di architetture virtualizzate e di applicazioni Cloud - valutare le prestazioni e i costi di soluzioni basate su Cloud
Capaità critiche e di giudizio: Nel corso gli studenti svilupperanno abilità di pensiero critico nel campo del Cloud Computing
Capacità comunicative: Alla fine del corso gli studenti saranno capaci di comunicare le nozioni imparate a personale tecnico e manageriale.
Capacità di apprendimento successivo: Dopo il corso, gli studenti avranno acquisito la conoscenza per seguire corsi avanzati di Cloud Computing e di tecnologie big data.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047616 -
COMPUTATIONAL COMPLEXITY
|
Erogato in altro semestre o anno
|
1047617 -
COMPUTER NETWORK PERFORMANCE
|
Erogato in altro semestre o anno
|
1047618 -
COMPUTER VISION
|
Erogato in altro semestre o anno
|
1047619 -
CONCURRENT SYSTEMS
|
Erogato in altro semestre o anno
|
1047622 -
CRYPTOGRAPHY
|
Erogato in altro semestre o anno
|
1047623 -
DATA AND NETWORK SECURITY
|
Erogato in altro semestre o anno
|
10593236 -
DEEP LEARNING AND APPLIED ARTIFICIAL INTELLIGENCE
(obiettivi)
Obiettivi generali Acquisire familiarità con tecniche avanzate di machine learning supervisionato e non supervisionato; acquisire competenze di modellazione di problemi complessi attraverso tecniche di deep learning, e saperle applicare a contesti applicativi diversi.
Obiettivi specifici Gli argomenti includono: reti neurali profonde, il loro addestramento e l'interpretazione dei risultati; reti convoluzionali e architetture prominenti; teoria del deep learning con particolare riferimento a questioni di convergenza; utilizzo di framework esistenti per l'implementazione di tecniche avanzate di machine learning; autoencoders; attacchi avversari.
Conoscenza e comprensione: Conoscenza sul funzionamento delle reti neurali e loro interpretazione matematica come approssimatori universali. Comprensione dei limiti e delle potenzialità di modelli avanzati di machine learning.
Applicazione di conoscenza e comprensione Progettazione, implementazione, messa in esercizio e analisi di architetture di deep learning per risolvere problemi complessi in disparati ambiti applicativi.
Autonomia di giudizio Essere in grado di valutare le prestazioni di diverse architetture, e di valutare la capacità di generalizzazione delle stesse.
Abilità comunicative Essere in grado di comunicare con chiarezza la formulazione di un problema di apprendimento avanzato e la sua implementazione, la sua applicabilità in contesti realistici, nonchè di motivare le scelte architetturali e di regolarizzazione.
Capacità di apprendimento successivo: Essere in grado di apprendere tecniche alternative e più complesse quali i modelli generativi basati su traporto ottimo, le trasformate di scattering e lo studio del probilo energetico delle reti neurali. Essere in grado di implementare tecniche esistenti in maniera efficiente, robusta e affidabile.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047624 -
DISTRIBUTED SYSTEMS
|
Erogato in altro semestre o anno
|
1047626 -
FORMAL METHODS IN SOFTWARE DEVELOPMENT
|
Erogato in altro semestre o anno
|
1047627 -
FOUNDATIONS OF DATA SCIENCE
|
Erogato in altro semestre o anno
|
1047628 -
FUNDAMENTALS OF COMPUTER GRAPHICS
|
Erogato in altro semestre o anno
|
1047630 -
HUMAN COMPUTER INTERACTION ON THE WEB
(obiettivi)
Obiettivi generali Il corso di sistemi informativi analizza differenti tipologie di sistemi informativi e come esse possono contribuire al successo degli obiettivi di un’azienda; permette di comprendere gli approcci e i modelli da usare per valutare la qualità dei processi, del software e dei servizi ICT; e fornisce le conoscenze di base per pianificare, gestire e controllare i progetti IT.
Obiettivi specifici
• Conoscenza e comprensione – Modello funzionale e struttura informativa dei processi aziendali – esigenze di integrazione e requisiti di controllo dei dati dei sistemi informatici aziendali – sistemi e tecnologie per sviluppare e mantenere un e-business di successo – principali settori di applicazione dei sistemi di informazione in vari settori di mercato – organizzazione IT e modelli di valutazione della qualità IT – conoscenze di base di contesto, tecniche/metodologie e soft skill per la gestione dei progetti ICT
• Applicazione di conoscenze e comprensione – Analizzare le diverse tipologie di requisiti in relazione a differenti categorie di utenti (stakeholder) di sistemi informativi – Selezionare l’appropriato modello per valutare la qualità dei processi ICT, del prodotto software e dei servizi ICT – Sviluppare uno studio di fattibilità selezionando l’appropriata architettura applicativa e tecnologica – Preparare, per un semplice progetto ICT, un piano di sviluppo nel rispetto dei vincoli di tempo, costi, qualità e definendo l’appropriata organizzazione – Controllare un progetto ICT in corso, applicando le tecniche di project management – Comprendere a valutare le lezioni apprese nei precedenti progetti
Capacità critiche e di giudizio: Gli studenti, mediante test e case study, acquisiranno competenze nella comprensione dei tipi di sistemi informativi, nell’uso dei modelli di quality management e nella pianificazione e gestione di un progetto.
Capacità comunicative: Gli studenti, costituiti in team, saranno coinvolti in attività finalizzate alla realizzazione di un piano di comunicazione di un progetto basato su un case study, che sarà mostrato ai colleghi spiegando le ragioni delle scelte adottate.
Capacità di apprendimento: La capacità di apprendimento sarà stimolata attraverso la preparazione di uno studio di fattibilità contenente: [a] la definizione dei requisiti del tipo di sistema informativo più adatto; [b] la definizione dei requisiti tecnici e di qualità; [c] la pianificazione di un progetto di implementazione del sistema informativo.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047631 -
INFORMATION SYSTEMS
|
Erogato in altro semestre o anno
|
1047633 -
INTENSIVE COMPUTATION
|
Erogato in altro semestre o anno
|
1047634 -
INTERNET OF THINGS
(obiettivi)
Obiettivi generali: Il corso illustra gli aspetti metodologici, teorici e pratici relativi alla progettazione di reti wireless e Internet delle cose. Il corso prevede un laboratorio.
Obiettivi specifici Introduzione alle reti wireless, architetture e protocolli usati nelle reti cellulari info al 5G e nei sistemi Internet delle cose, analisi delle soluzioni di ricerca relative ad alcune delle sfide per la realizzazione dei sistemi internet delle cose (abbattimento del consumo energetico, integrazione del mondo IoT e della robotica, sicurezza delle informazioni).
Struttura sintetica del corso: - Introduzione alle reti radio - Dai sistemi cellulari 2G al 5G - Protocolli per sensing systems: protocolli di MAC, routing, localizzazione e sincronizzazione - Verso l'Internet delle cose: caratteristiche e problematiche, protocolli standard e tecnologie, scelte progettuali per diversi ambiti verticali, sfide ancora aperte - Aspetti avanzati dell'IoT: zero-power IoT; aspetti di sicurezza; uso di blockchain in applicazioni IoT; ottimizzazione di sistemi mediante tecniche di machine learning; integrazione di robotica e IoT systems (esempio dell'Internet of Underwater Things). -Lab di programmazione IoT
Conoscenze e comprensione: Alla fine del corso lo studente saprà leggere e comprendere articoli scientifici, documenti tecnici e standard del settore; avrà compreso i trade-off prestazionali associati a diverse scelte progettuali. Sarà quindi in grado di progettare futuri sistemi wireless e IoT. Avrà fatto prime esperienze pratiche relative alla programmazione e valutazione sperimentale di tali sistemi.
Applicazione di conoscenza e comprensione: Gli studenti saranno in grado di partecipare alla progettazione di futuri sistemi e applicazioni IoT e di sistemi 5G.
Capacità di giudizio: Gli studenti svilupperanno le capacità di analisi necessarie per valutare diverse scelte progettuali alternative selezionando la migliore per ogni specifico scenario applicativo e tipo di tecnologia.
Capacità di comunicazione: Gli studenti impareranno ad analizzare e presentare articoli scientifici, idee di ricerca o soluzioni tecniche di settore, descrivendole in modo sintetico ed accurato, con un linguaggio tecnico adeguato.
Capacità di apprendimento: Gli studenti acquisiranno sia competenze teoriche che pratiche relative alla progettazione dei sistemi wireless e IoT, che li metteranno in grado di proseguire l'approfondimento di questi argomenti.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047635 -
MACHINE LEARNING
|
Erogato in altro semestre o anno
|
1047636 -
MATHEMATICAL LOGIC FOR COMPUTER SCIENCE
(obiettivi)
Obiettivi generali: Il corso ha l'obiettivo di introdurre gli studenti ai risultati e ai metodi fondamentali della Logica Matematica con particolare attenzione alla loro applicazione nell'ambito dell'Informatica.
Obiettivi specifici: L'obiettivo del corso è duplice. In primo luogo si intende dotare lo studente di una conoscenza rigorosa e di una capacità di applicare quei risultati e metodi della Logica Matematica che trovano applicazione in numerose aree dell'Informatica. D'altra parte si intende offrire allo studente una strumenti e conoscenze fondamentali per intraprendere un percorso di ricerca in Informatica Teorica.
Conoscenza e comprensione: Il corso mira a dotare lo studente di una conoscenza rigorosa degli argomenti del corso attraverso lo studio delle dimostrazioni e la produzione di argomenti rigorosi nello svolgimento degli esercizi. Particolare attenzione è data alla motivazione concettuale, alla dimostrazione rigorosa e alla applicabilità dei risultati trattati nel corso.
Applicazione di conoscenza e comprensione: I metodi della logica matematica hanno un ruolo fondamentale in diverse aree dell'Informatica quali la Teoria della Complessità, la Teoria delle Basi di Dati, l'Intelligenza Artificiale. Si mira a stimolare nello studente la capacità di applicare in vari contesti dell'informatica i metodi e i risultati studiati.
Autonomia di giudizio: Viene stimolata la partecipazione attiva alle lezioni ed esercitata l'autonomia di giudizio attraverso l'assegnazione di esercizi e problemi.
Abilità comunicative: Lo studente può scegliere di dare l'esame finale in forma di presentazione seminariale davanti alla classe di un risultato concordato con il docente.
Capacità di apprendimento successivo: I metodi di analisi e formalizzazione acquisiti durante il corso trovano applicazione in diverse aree dell'Informatica. L'esercizio di formalizzazione e problem-solving durante il corso rinforza le capacità di apprendimento e acquisizione di nuove competenze.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
10589557 -
METHODS IN COMPUTER SCIENCE EDUCATION: ANALYSIS
(obiettivi)
Obiettivi generali: Conoscere ed applicare le più recenti teorie e metodologie di insegnamento dell'Informatica nella scuola e nell'università. Il corso svilupperà una serie di use-cases relativi alle tecniche di insegnamento dell'Informatica.
Obiettivi specifici: • Analisi critica delle principali metodologie per l'insegnamento sviluppate nella ricerca in didattica dell'informatica, anche in riferimento allo specifico ruolo dell'insegnante, ai nodi concettuali, epistemologici, linguistici e didattici dell'insegnamento e apprendimento dell'informatica, ponendo in particolare l'accento sulla distinzione fra l'informatica come disciplina scientifica da una parte e le applicazioni dell'informatica dall'altra. • Esplicitazione del parallelismo fra metodologie informatiche e metodologie didattiche: tecniche di problem solving costruttivo; approccio epistemologico ai problemi; metodi cooperativi di sviluppo delle soluzioni.
Conoscenza e comprensione: Principi e metodi di costruzione di attività didattiche di C.S. nella scuola superiore e nell'università.
Applicazione di conoscenza e comprensione: Agli studenti verrà richiesto di scegliere e sviluppare alcuni moduli didattici per la Scuola superiore e l'Università.
Autonomia di giudizio: Lo studente sarà autonomo nello scegliere i moduli da sviluppare e nella loro fase di progetto e realizzazione.
Abilità comunicative: Gli studenti dovranno dimostrare di saper produrre moduli didattici di qualità, con una forte capacità di interessare e comunicare con precisione gli argomenti chiave della lezione da sviluppare.
Capacità di apprendimento successivo: La metodologia di progetto dei moduli didattici vista nel corso sarà facilmente applicabile ad altri tipi di corsi.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
10589558 -
METHODS IN COMPUTER SCIENCE EDUCATION: DESIGN
|
Erogato in altro semestre o anno
|
1047638 -
MODELS OF COMPUTATION
|
Erogato in altro semestre o anno
|
1047639 -
MULTIMODAL INTERACTION
|
Erogato in altro semestre o anno
|
1038141 -
NATURAL LANGUAGE PROCESSING
(obiettivi)
Obiettivi generali: I fondamenti dell'elaborazione del linguaggio naturale.
Obiettivi specifici: L'elaborazione del linguaggio naturale al livello di: morfologia, parte del discorso, sintassi, semantica, pragmatica. Traduzione automatica.
Conoscenza e comprensione: Conoscenza e comprensione delle tecniche algoritmiche e di apprendimento automatica per l'elaborazione del linguaggio naturale.
Applicare conoscenza e comprensione: Essere in grado di applicare le tecniche di elaborazione del linguaggio naturale mediante homework e un progetto.
Capacità critiche e di giudizio: Capacità di comprendere e identificare soluzioni efficaci ai problemi dell'elaborazione del linguaggio naturale.
Capacità comunicative: Capacità di illustrare il progetto sviluppato.
Capacità di apprendimento: Capacità di apprendere e applicare nuove tecniche di elaborazione del linguaggio naturale sia basate su quelle illustrate nel corso sia basate su approcci innovativi.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047640 -
NETWORK ALGORITHMS
|
Erogato in altro semestre o anno
|
10589555 -
PRACTICAL NETWORK DEFENSE
(obiettivi)
Obiettivi generali: Il corso affronta i fondamenti delle metodologie e degli strumenti per la protezione delle reti di calcolatori. Particolare attenzione viene dedicata all'applicazione pratica delle nozioni apprese.
Obiettivi specifici: Il corso affronta le relazioni fra i meccanismi di funzionamento delle reti di calcolatori e gli attacchi informatici, i meccanismi per la possibile identificazione e soppressione degli attacchi e la relativa implementazione mediante l'uso di adeguate strategie di progettazione e di strumenti specifici.
Conoscenza e comprensione: Elencare le minacce più ricorrenti dovute all'uso di specifici protocolli all'interno delle reti di elaboratori. Spiegare i meccanismi più utilizzati dagli attaccanti maliziosi e dai progettisti di malware per compromettere la sicurezza di un sistema di elaboratori. Spiegare i meccanismi di base utilizzati per l'identificazione dei tentativi di intrusione negli elaboratori e nelle reti.
Applicare conoscenza e comprensione: Alla fine del corso gli studenti saranno in grado di realizzare il monitoraggio del traffico scambiato nelle reti, di applicare una policy di sicurezza, di realizzare una scansione delle stazioni all'interno di una rete di elaboratori e una ricerca delle vulnerabilità di una rete di elaboratori. Gli studenti svilupperanno la capacità di selezionare le regole appropriate per proteggere una rete mediante firewall, selezionare i meccanismi più appropriati per proteggere un sistema di elaboratori collegati tramite rete e di eseguire le scelte di progettazione più opportune per implementare una strategia di "difesa in profondità", usando reti isolate e strumenti dedicati (VPN,proxy e firewall).
Capacità critiche e di giudizio: Gli studenti svilupperanno le capacità di analisi necessarie per valutare diverse alternative durante il processo di progettazione di una rete di elaboratori, con particolare riferimento alla valutazione delle scelte architetturali e dei rischi che possono comportare e agli obiettivi di sicurezza che il sistema vuole perseguire.
Capacità comuncative: Gli studenti impareranno a documentare le loro scelte, anche attraverso l'uso di strumenti di generazione di rapporti automatizzati. Avranno anche acquisito la capacità di preparare presentazioni relative ad argomenti scientifici.
Capacità di apprendimento successivo: Le nozioni acquisite durante il corso forniranno agli studenti una solida base di conoscenza per poter ulteriormente approfondire gli aspetti più tecnici, esplorare le alternative non affrontate per motivi di tempo e per mantenersi autonomamente informati sui continui sviluppi e aggiornamenti della sicurezza informatica applicata alle reti.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047642 -
SECURITY IN SOFTWARE APPLICATIONS
|
Erogato in altro semestre o anno
|
1047643 -
TOPICS IN PHYSICS
|
Erogato in altro semestre o anno
|
|
- -
A SCELTA DELLO STUDENTE
|
6
|
|
-
|
-
|
-
|
-
|
Attività formative a scelta dello studente (art.10, comma 5, lettera a)
|
ITA |
Secondo anno
Primo semestre
Insegnamento
|
CFU
|
SSD
|
Ore Lezione
|
Ore Eserc.
|
Ore Lab
|
Ore Studio
|
Attività
|
Lingua
|
1047613 -
ADVANCED ALGORITHMS
|
Erogato in altro semestre o anno
|
1041764 -
BIG DATA COMPUTING
|
Erogato in altro semestre o anno
|
1047617 -
COMPUTER NETWORK PERFORMANCE
|
Erogato in altro semestre o anno
|
1047618 -
COMPUTER VISION
(obiettivi)
Obiettivi generali: Il corso si propone di esporre gli studenti ad un'ampia panoramica della Computer Vision.
Obiettivi specifici: Il corso si propone di fornire i principi, le metodologie di base e gli algoritmi fondamentali usati per la progettazione e l'applicazione di sistemi di visione artificiale
Conoscenza e comprensione: Introduzioni dei principi fondamentali e delle diverse aree della Computer Vision e conoscenze su risoluzione di problemi quali estrazioni delle caratteristi, tracking , analisi della scena, riconoscimento di oggetti, analisi di eventi, analisi delle emozioni.
Applicare conoscenza e comprensione: Saper applicare il portafoglio di tecniche e gli approcci illustrati per la progettazione e realizzazione di sistemi di visione artificiale.
Capacità critiche e di giudizio: Gli studenti apprenderanno tecniche che si sono rivelate utili per esperienza diretta e una vasta gamma di metodi matematici nella progettazione del sistema di visione.
Capacità comunicative: Gli studenti saranno in grado di interagire in modo proficuo con altri ricercatori in Computer Vision su un'ampia gamma di argomenti.
Capacità di apprendimento: Gli studenti saranno in grado di ampliare le loro conoscenze in modo autonomo consultando, secondo necessità, la letteratura scientifica basato sulla Computer Vision.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
1047628 -
FUNDAMENTALS OF COMPUTER GRAPHICS
(obiettivi)
Obiettivi generali Familiarità con il rendering Physically-based, il geometry processing and idee basiche di simulazione.
Obiettivi specifici Argomenti includono: path tracing, monte carlo methods, bidirectional reflectance distribution function, modelli a microfacet, importance sampling, multiple importance sampling, superfici di suddivisione, bump and normal mapping, scattering volumetrico.
Conoscenza e comprensione: Conoscenza su come funzionano gli algoritmi di rendering physically-based and quali light paths supportano; conoscenza su come modellare il look di superfici reali; conoscenza su come rappresentare la geometria in un renderer.
Applicazione di conoscenza e comprensione Implementazione di un path tracer ricco di funzioni con supporto per materiali arbitrari, scattering volumetrico e superfici continue e corrugate.
Autonomia di giudizio Essere in grado di valutare le prestazioni di diversi algoritmi di rendering realistico rispetto ai modi di interazione tra luci/superfici e luci/volumi.
Abilità comunicative Essere in grado di comunicare con chiarezza come funzionano gli algoritmi di rendering realistico, come sono sviluppati e quali scene 3D e feature di immagini supportano.
Capacità di apprendimento successivo: Essere in grado di apprendere algoritmi di rendering più complesso come metodi bidirezionali o Monte Carlo Markov Chain. Essere in grado di lavorare con sicurezza su renderer per produzione cinematografica.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
1047638 -
MODELS OF COMPUTATION
|
Erogato in altro semestre o anno
|
1047640 -
NETWORK ALGORITHMS
(obiettivi)
Obiettivi generali Acquisire conoscenze relativamente al progetto di algoritmi complessi per risolvere problemi su grafi che modellano problemi inerenti le reti (cablate, senza fili e di sensori).
Obiettivi specifici Conoscenza e comprensione Al termine del corso gli studenti conosceranno le metodologie di base per l'analisi di problemi relativi alle reti e l’identificazione dei problemi su grafi che più si avvicinino; conosceranno inoltre gli algoritmi risolutivi di alcuni dei principali problemi su grafi.
Applicare conoscenza e comprensione: Al termine del corso gli studenti avranno acquisito familiarità con l’analisi delle problematiche legate alle reti. Saranno in grado di riconoscere quale sia il problema su grafi che più si avvicina e di progettare nuove strutture dati e i relativi algoritmi, rielaborando quelli esistenti, per risolvere il problema di partenza.
Capacità critiche e di giudizio Lo studente avrà le basi per analizzare la qualità di un algoritmo per le reti, sia dal punto di vista della effettiva risoluzione del problema che da quello della efficienza computazionale con la quale il problema viene risolto.
Capacità comunicative Lo studente acquisirà la capacità di esporre in modo chiaro ed organizzato le proprie conoscenze, capacità che verrà verificata durante la prova orale.
Capacità di apprendimento Le conoscenze acquisite permetteranno allo studente, una volta concluso il ciclo di studi, di affrontare problemi reali in modo critico ed efficace e di progettare soluzioni efficienti.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
1047642 -
SECURITY IN SOFTWARE APPLICATIONS
|
Erogato in altro semestre o anno
|
|
10596281 -
AUTONOMOUS NETWORKING
|
Erogato in altro semestre o anno
|
1047616 -
COMPUTATIONAL COMPLEXITY
(obiettivi)
Obiettivi generali: Il Corso introduce allo studio delle basi dell Teoria della Complessità computazionale.
Obiettivi specifici: - Concetto teorico della risorsa computazionale: running time - Concetto Teorico della risorsa computazionale: memoria - Classi di complessità temprali e spaziali - Il problema P = NP - Problemi computazionalmente non trattabili con risorse limitate - La classi di complessità L, P, NP, PSPACE, BPP, #P, IP, - Risultati Notevoli - Circuiti Booleani e funzioni booleane
Conoscenza e comprensione: Al termine del corso lo studente avrà acquisito la capacità di verificare proprietà di riduzione e completezza tra problemi computazionali, la conoscenza di teoremi notevoli nel campo della Teoria delle Complessità, la capacità di ragionare matematicamente sulla natura computazionale delle risorse di calcolo come running-time, memoria, randomness. Applicazione di conoscenza e comprensione: La conoscenza appresa è fondamentale in contesti come la Verifica Automatica, la Teoria dei Giochi, la analisi della complessità degli algoritmi.
Autonomia di giudizio: Viene rafforzata la autonomia di giudizio dello studente attraverso l'approfondimento della capacità di sintesi matematica, di ragionamento matematico e di problem solving, mediante tecniche basate sulla matemati Discreta e sulla Analisi Funzionale.
Abilità comunicative: Viene sviluppata l'abilità comunicativa dello studente nel presentare risultati nel campo dell'Informatica Teorica.
Capacità di apprendimento successivo: La complessità computazionale e alla base della comprensione della valutazione della fattibilità computazionale e algoritmico di qualsiasi problema del mondo reale. La sua conoscenza è dunque alla base dell'apprendimento di molte altre corsi e argeomtni, come la Crittografia, la verifica automatica del software e dell'hardware, la Teoria dei Giochi, l'Intelligenza Artificiale.
|
6
|
INF/01
|
24
|
36
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
1047622 -
CRYPTOGRAPHY
|
Erogato in altro semestre o anno
|
|
1047613 -
ADVANCED ALGORITHMS
|
Erogato in altro semestre o anno
|
10589621 -
ADVANCED MACHINE LEARNING
(obiettivi)
Obiettivi generali: Questo corso introduce gli studenti a metodi avanzati e ai più recenti approcci di machine learning, basati su modelli di deep neural network (DNN), e alle loro applicazioni in computer vision. Il corso include teoria, programmazione e la realizzazione pratica di un progetto finale. Sia per la parte di programmazione che per il progetto finale, gli studenti lavoreranno in gruppi e presenteranno le loro idee e i risultati del progetto alla classe.
Obiettivi specifici: La prima parte del corso include l’analisi di modelli DNN stato dell’arte per classificazione e regressione, applicate a detection (dove gli oggetti siano in un’immagine), pose estimation (se una persona sia in piedi, seduta o coricata) e re-identification (la stima di un vettore che rappresenti ogni persona in modo univoco). Il corso discute inoltre DNN per la realizzazione di obiettivi multi-task, ovvero per la stima congiunta di detection, re-identification, segmentation, depth estimation, etc. Questa prima parte include DNN che siano applicabili a video sequenze, grazie all’uso di memoria (e.g. LSTM) o attenzione (e.g. Transformers).
La seconda parte del corso approfondisce i modelli, le tecniche di apprendimento e di manipolazione di dati per la generalizzazione, per domain adaptation e meta-learning. Oltre a transfer learning (come un modello precedentemente imparato sia applicabile a altri compiti), si affronta la multi-modalità (l’uso di sensori di diversa natura come video camere di distanza o termiche) e l’auto-supervisione (e.g. imparare un modello DNN attraverso la risoluzione di puzzles) per l’auto-annotazione di grandi quantità di dati. Infine, si presenta domain adaptation (e.g. come applicare algoritmi di detection imparati con immagini diurne anche di notte) e meta-learning, uno dei più recenti temi di machine learning che mostra come imparare ad imparare un compito, e.g. in modalità di apprendimento online o imparando anche da pochi dati disponibili.
Conoscenza e comprensione: Al termine del corso gli studenti avranno familiarità con modelli DNN stato dell’arte che realizzino singole o molteplici funzioni, e con la generalizzazione di queste funzioni e l’uso effettivo di dati etichettati o non etichettati per l’apprendimento di macchine, il loro auto-apprendimento e il meta-learning.
Applicare conoscenza e comprensione: Al termine del corso gli studenti avranno acquisito familiarità con il progresso più recente in machine learning per lo svolgimento di vari compiti, l’adattamento di questi a nuovi domini ed il continuo auto-apprendimento di algoritmi e macchine. Sapranno spiegare gli algoritmi e scegliere le tecniche più appropriate per uno specifico problema. Saranno in grado di valutare implementazioni esistenti e di ideare e scrivere programmi per nuove soluzioni for specifiche funzioni o problemi nei due campi.
Capacità critiche e di giudizio Lo studente sarà in grado di analizzare un problema o una funzione e identificare le metodologie e tecniche da applicare più appropriate, sia dal punto di vista dell’effettiva risoluzione del problema (accuracy) che da quello della fattibilità, da un punto di vista di efficienza, della quantità di dati richiesta e delle loro annotazioni. Oltre che delle lezioni, la capacità critica e di giudizio sarà il risultato di assignments che testeranno programmazione e analisi e di un progetto finale, inclusivo di relazione scritta.
Capacità comunicative Lo studente acquisirà la capacità di esporre in modo chiaro ed organizzato le proprie conoscenze, capacità che verrà verificata sia mediante un progetto finale che nella sua presentazione orale. Lo studente sarà in grado di esprimere un’idea algoritmica in modo rigoroso ad alto livello, in pseudocodice, e di spiegare la struttura del codice scritto per questa.
Capacità di apprendimento successivo Le conoscenze acquisite permetteranno allo studente di affrontare lo studio di altri problemi in machine learning and computer vision. La capacità di apprendimento successivo sarà il risultato degli argomenti illustrati a lezione, che offriranno una vasta panoramica in advanced machine learning, e del loro progetto finale, per il quale gli studenti sceglieranno uno specifico argomento da approfondire, oltre quanto impartito a lezione.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
10596281 -
AUTONOMOUS NETWORKING
|
Erogato in altro semestre o anno
|
1047615 -
AUTOMATIC SOFTWARE VERIFICATION METHODS
(obiettivi)
Obiettivi generali: Il corso si propone di fornire agli studenti metodi e strumenti per la verifica e validazione automatica di sistemi cyber-fisici.
Obiettivi specifici: Il corso di propone di mettere gli studenti in grado di comprendere tecniche avanzate di modellazione, verifica e validazione per sistemi cyber-fisici. Conoscenza e comprensione: Introduzione ad ampio spettro dei principi fondamentali della modellazione ed analisi dei sistemi cyber-fisici modellati come DAE (Differential Algebraic Equations).
Applicare conoscenza e comprensione: Saper applicare il portafoglio di tecniche e gli approcci illustrati per la modellazione, verifica e validazione di sistemi cyber-fisici.
Capacità critiche e di giudizio: Gli studenti saranno in grado di prendere autonomamente decisioni razionali sulle tecniche da impiegare nella modellazione, verifica e validazione di sistemi cyber-fisici.
Capacità comunicative: Gli studenti saranno in grado di interagire in modo proficuo con esperti di dominio su un'ampia gamma di argomenti relativi alla modellazione, verifica e validazione di sistemi cyber-fisici
Capacità di apprendimento: Gli studenti saranno in grado di ampliare le loro conoscenze in modo autonomo consultando, secondo necessità , la letteratura scientifica di rilievo.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1041764 -
BIG DATA COMPUTING
|
Erogato in altro semestre o anno
|
1041792 -
BIOMETRIC SYSTEMS
|
Erogato in altro semestre o anno
|
1047205 -
CLOUD COMPUTING
|
Erogato in altro semestre o anno
|
1047616 -
COMPUTATIONAL COMPLEXITY
(obiettivi)
Obiettivi generali: Il Corso introduce allo studio delle basi dell Teoria della Complessità computazionale.
Obiettivi specifici: - Concetto teorico della risorsa computazionale: running time - Concetto Teorico della risorsa computazionale: memoria - Classi di complessità temprali e spaziali - Il problema P = NP - Problemi computazionalmente non trattabili con risorse limitate - La classi di complessità L, P, NP, PSPACE, BPP, #P, IP, - Risultati Notevoli - Circuiti Booleani e funzioni booleane
Conoscenza e comprensione: Al termine del corso lo studente avrà acquisito la capacità di verificare proprietà di riduzione e completezza tra problemi computazionali, la conoscenza di teoremi notevoli nel campo della Teoria delle Complessità, la capacità di ragionare matematicamente sulla natura computazionale delle risorse di calcolo come running-time, memoria, randomness. Applicazione di conoscenza e comprensione: La conoscenza appresa è fondamentale in contesti come la Verifica Automatica, la Teoria dei Giochi, la analisi della complessità degli algoritmi.
Autonomia di giudizio: Viene rafforzata la autonomia di giudizio dello studente attraverso l'approfondimento della capacità di sintesi matematica, di ragionamento matematico e di problem solving, mediante tecniche basate sulla matemati Discreta e sulla Analisi Funzionale.
Abilità comunicative: Viene sviluppata l'abilità comunicativa dello studente nel presentare risultati nel campo dell'Informatica Teorica.
Capacità di apprendimento successivo: La complessità computazionale e alla base della comprensione della valutazione della fattibilità computazionale e algoritmico di qualsiasi problema del mondo reale. La sua conoscenza è dunque alla base dell'apprendimento di molte altre corsi e argeomtni, come la Crittografia, la verifica automatica del software e dell'hardware, la Teoria dei Giochi, l'Intelligenza Artificiale.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047617 -
COMPUTER NETWORK PERFORMANCE
|
Erogato in altro semestre o anno
|
1047618 -
COMPUTER VISION
(obiettivi)
Obiettivi generali: Il corso si propone di esporre gli studenti ad un'ampia panoramica della Computer Vision.
Obiettivi specifici: Il corso si propone di fornire i principi, le metodologie di base e gli algoritmi fondamentali usati per la progettazione e l'applicazione di sistemi di visione artificiale
Conoscenza e comprensione: Introduzioni dei principi fondamentali e delle diverse aree della Computer Vision e conoscenze su risoluzione di problemi quali estrazioni delle caratteristi, tracking , analisi della scena, riconoscimento di oggetti, analisi di eventi, analisi delle emozioni.
Applicare conoscenza e comprensione: Saper applicare il portafoglio di tecniche e gli approcci illustrati per la progettazione e realizzazione di sistemi di visione artificiale.
Capacità critiche e di giudizio: Gli studenti apprenderanno tecniche che si sono rivelate utili per esperienza diretta e una vasta gamma di metodi matematici nella progettazione del sistema di visione.
Capacità comunicative: Gli studenti saranno in grado di interagire in modo proficuo con altri ricercatori in Computer Vision su un'ampia gamma di argomenti.
Capacità di apprendimento: Gli studenti saranno in grado di ampliare le loro conoscenze in modo autonomo consultando, secondo necessità, la letteratura scientifica basato sulla Computer Vision.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047619 -
CONCURRENT SYSTEMS
|
Erogato in altro semestre o anno
|
1047622 -
CRYPTOGRAPHY
|
Erogato in altro semestre o anno
|
1047623 -
DATA AND NETWORK SECURITY
|
Erogato in altro semestre o anno
|
10593236 -
DEEP LEARNING AND APPLIED ARTIFICIAL INTELLIGENCE
|
Erogato in altro semestre o anno
|
1047624 -
DISTRIBUTED SYSTEMS
|
Erogato in altro semestre o anno
|
1047626 -
FORMAL METHODS IN SOFTWARE DEVELOPMENT
|
Erogato in altro semestre o anno
|
1047627 -
FOUNDATIONS OF DATA SCIENCE
|
Erogato in altro semestre o anno
|
1047628 -
FUNDAMENTALS OF COMPUTER GRAPHICS
(obiettivi)
Obiettivi generali Familiarità con il rendering Physically-based, il geometry processing and idee basiche di simulazione.
Obiettivi specifici Argomenti includono: path tracing, monte carlo methods, bidirectional reflectance distribution function, modelli a microfacet, importance sampling, multiple importance sampling, superfici di suddivisione, bump and normal mapping, scattering volumetrico.
Conoscenza e comprensione: Conoscenza su come funzionano gli algoritmi di rendering physically-based and quali light paths supportano; conoscenza su come modellare il look di superfici reali; conoscenza su come rappresentare la geometria in un renderer.
Applicazione di conoscenza e comprensione Implementazione di un path tracer ricco di funzioni con supporto per materiali arbitrari, scattering volumetrico e superfici continue e corrugate.
Autonomia di giudizio Essere in grado di valutare le prestazioni di diversi algoritmi di rendering realistico rispetto ai modi di interazione tra luci/superfici e luci/volumi.
Abilità comunicative Essere in grado di comunicare con chiarezza come funzionano gli algoritmi di rendering realistico, come sono sviluppati e quali scene 3D e feature di immagini supportano.
Capacità di apprendimento successivo: Essere in grado di apprendere algoritmi di rendering più complesso come metodi bidirezionali o Monte Carlo Markov Chain. Essere in grado di lavorare con sicurezza su renderer per produzione cinematografica.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047630 -
HUMAN COMPUTER INTERACTION ON THE WEB
|
Erogato in altro semestre o anno
|
1047631 -
INFORMATION SYSTEMS
|
Erogato in altro semestre o anno
|
1047633 -
INTENSIVE COMPUTATION
|
Erogato in altro semestre o anno
|
1047634 -
INTERNET OF THINGS
|
Erogato in altro semestre o anno
|
1047635 -
MACHINE LEARNING
|
Erogato in altro semestre o anno
|
1047636 -
MATHEMATICAL LOGIC FOR COMPUTER SCIENCE
|
Erogato in altro semestre o anno
|
10589557 -
METHODS IN COMPUTER SCIENCE EDUCATION: ANALYSIS
|
Erogato in altro semestre o anno
|
10589558 -
METHODS IN COMPUTER SCIENCE EDUCATION: DESIGN
|
Erogato in altro semestre o anno
|
1047638 -
MODELS OF COMPUTATION
|
Erogato in altro semestre o anno
|
1047639 -
MULTIMODAL INTERACTION
|
Erogato in altro semestre o anno
|
1038141 -
NATURAL LANGUAGE PROCESSING
|
Erogato in altro semestre o anno
|
1047640 -
NETWORK ALGORITHMS
(obiettivi)
Obiettivi generali Acquisire conoscenze relativamente al progetto di algoritmi complessi per risolvere problemi su grafi che modellano problemi inerenti le reti (cablate, senza fili e di sensori).
Obiettivi specifici Conoscenza e comprensione Al termine del corso gli studenti conosceranno le metodologie di base per l'analisi di problemi relativi alle reti e l’identificazione dei problemi su grafi che più si avvicinino; conosceranno inoltre gli algoritmi risolutivi di alcuni dei principali problemi su grafi.
Applicare conoscenza e comprensione: Al termine del corso gli studenti avranno acquisito familiarità con l’analisi delle problematiche legate alle reti. Saranno in grado di riconoscere quale sia il problema su grafi che più si avvicina e di progettare nuove strutture dati e i relativi algoritmi, rielaborando quelli esistenti, per risolvere il problema di partenza.
Capacità critiche e di giudizio Lo studente avrà le basi per analizzare la qualità di un algoritmo per le reti, sia dal punto di vista della effettiva risoluzione del problema che da quello della efficienza computazionale con la quale il problema viene risolto.
Capacità comunicative Lo studente acquisirà la capacità di esporre in modo chiaro ed organizzato le proprie conoscenze, capacità che verrà verificata durante la prova orale.
Capacità di apprendimento Le conoscenze acquisite permetteranno allo studente, una volta concluso il ciclo di studi, di affrontare problemi reali in modo critico ed efficace e di progettare soluzioni efficienti.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
10589555 -
PRACTICAL NETWORK DEFENSE
|
Erogato in altro semestre o anno
|
1047642 -
SECURITY IN SOFTWARE APPLICATIONS
|
Erogato in altro semestre o anno
|
1047643 -
TOPICS IN PHYSICS
|
Erogato in altro semestre o anno
|
|
AAF1246 -
ATTIVITA' FORMATIVA COMPLEMENTARE
(obiettivi)
Le attività formative complementari si possono inquadrare in uno o più ambiti disciplinari affini o integrativi a quelli di base o caratterizzanti, e possono proporre obiettivi formativi di carattere interdisciplinare o di approfondimento delle culture di contesto.
|
6
|
|
-
|
-
|
-
|
-
|
Ulteriori attività formative (art.10, comma 5, lettera d)
|
ITA |
Secondo semestre
Insegnamento
|
CFU
|
SSD
|
Ore Lezione
|
Ore Eserc.
|
Ore Lab
|
Ore Studio
|
Attività
|
Lingua
|
1047613 -
ADVANCED ALGORITHMS
(obiettivi)
Obiettivi generali: Questo corso propone lo studio di algoritmi evoluti e di strutture dati avanzate per rendere efficiente la risoluzione di problemi complessi.
Obiettivi specifici:
Applicare conoscenza e comprensione: Al termine del corso lo studente avrà gli strumenti per individuare il nucleo matematico proprio del problema da affrontare e per identificare la tecnica più appropiata per il progetto algoritmico risolutivo dello stesso.
Capacità critiche e di giudizio Gli studenti saranno in grado di capire quale sia il modo migliore per rappresentare e organizzare in modo significativo le informazioni note del problema
Capacità comunicative: Lo studente avrà acquisito il giusto linguaggio per presentare idee algoritmiche che esprimono dettagliatamente le caratteristiche del problema da risolvere.
Capacità di apprendimento: Lo studente avrà acquisito la capacità di pensare in "modo algoritmico", ovvero sarà in grado di estrarre tutta la conoscenza possibile da una situazione semplicemnte tramite il ragionamento.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative caratterizzanti
|
ENG |
1041764 -
BIG DATA COMPUTING
|
Erogato in altro semestre o anno
|
1047617 -
COMPUTER NETWORK PERFORMANCE
|
Erogato in altro semestre o anno
|
1047618 -
COMPUTER VISION
|
Erogato in altro semestre o anno
|
1047628 -
FUNDAMENTALS OF COMPUTER GRAPHICS
|
Erogato in altro semestre o anno
|
1047638 -
MODELS OF COMPUTATION
|
Erogato in altro semestre o anno
|
1047640 -
NETWORK ALGORITHMS
|
Erogato in altro semestre o anno
|
1047642 -
SECURITY IN SOFTWARE APPLICATIONS
|
Erogato in altro semestre o anno
|
|
1047613 -
ADVANCED ALGORITHMS
(obiettivi)
Obiettivi generali: Questo corso propone lo studio di algoritmi evoluti e di strutture dati avanzate per rendere efficiente la risoluzione di problemi complessi.
Obiettivi specifici:
Applicare conoscenza e comprensione: Al termine del corso lo studente avrà gli strumenti per individuare il nucleo matematico proprio del problema da affrontare e per identificare la tecnica più appropiata per il progetto algoritmico risolutivo dello stesso.
Capacità critiche e di giudizio Gli studenti saranno in grado di capire quale sia il modo migliore per rappresentare e organizzare in modo significativo le informazioni note del problema
Capacità comunicative: Lo studente avrà acquisito il giusto linguaggio per presentare idee algoritmiche che esprimono dettagliatamente le caratteristiche del problema da risolvere.
Capacità di apprendimento: Lo studente avrà acquisito la capacità di pensare in "modo algoritmico", ovvero sarà in grado di estrarre tutta la conoscenza possibile da una situazione semplicemnte tramite il ragionamento.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
10589621 -
ADVANCED MACHINE LEARNING
|
Erogato in altro semestre o anno
|
10596281 -
AUTONOMOUS NETWORKING
|
Erogato in altro semestre o anno
|
1047615 -
AUTOMATIC SOFTWARE VERIFICATION METHODS
|
Erogato in altro semestre o anno
|
1041764 -
BIG DATA COMPUTING
|
Erogato in altro semestre o anno
|
1041792 -
BIOMETRIC SYSTEMS
|
Erogato in altro semestre o anno
|
1047205 -
CLOUD COMPUTING
|
Erogato in altro semestre o anno
|
1047616 -
COMPUTATIONAL COMPLEXITY
|
Erogato in altro semestre o anno
|
1047617 -
COMPUTER NETWORK PERFORMANCE
|
Erogato in altro semestre o anno
|
1047618 -
COMPUTER VISION
|
Erogato in altro semestre o anno
|
1047619 -
CONCURRENT SYSTEMS
(obiettivi)
Obiettivi generali: Capire i concetti base dei sistemi concorrenti e le metodologie adottate nella soluzione dei problemi da essi posti
Obiettivi specifici: Mutua esclusione, diverse proprietà di liveness, semafori, monitor, transazioni, atomicità, concorrenza senza mutua esclusione, altre proprietà di liveness, oggetto universale e consenso. Sistemi di transizioni etichettate, semantica a interleaving, sincronizzazione, simulazione e bisimulazione, tecniche di verifica, passaggio di nomi, sistemi di tipo.
Conoscenza e comprensione: Capire the problematiche di base dei sistemi concorrenti e le relative soluzioni possibili, i principi fondazionali dei linguaggi di programmazione concorrente e le relative tecniche di verifica
Applicare conoscenza e comprensione: essere in grado di risolvere problematiche basilari di semplici sistemi concorrenti
Capacità critiche e di giudizio: capire vantaggi e svantaggi delle varie possibili soluzioni a problematiche di sistemi concorrenti
Capacità comunicative: sviluppare un linguaggio tecnico e formale in grado di spiegare le soluzioni ideate e i relativi meriti
Capacità di apprendimento: comprendere scenari di programmazione complessi e le relative soluzioni, anche sofisticate
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047622 -
CRYPTOGRAPHY
|
Erogato in altro semestre o anno
|
1047623 -
DATA AND NETWORK SECURITY
(obiettivi)
Obiettivi generali Lo scopo di Data and Network Security è quello di esporre le problematiche e le soluzioni più aggiornate in un settore come quello della sicurezza dei dati e delle reti informatiche che è in rapida evoluzione.
Obiettivi specifici Un primo obiettivo è di introdurre i concetti principali di sicurezza informatica che includono: Identificazione e autenticazione, Virus, trojan e canali coperti, Analisi degli attacchi più diffusi, Sicurezza del sistema operativo, Sicurezza delle comunicazioni. Un secondo obiettivo è di descrivere i principali problemi di ricerca nel campo. Ad esempio, quelli che ricadono in aree che includono le seguenti: comunicazioni anonime, sicurezza Blockchain, sicurezza cloud, Framing Attacks, Location privacy, sicurezza nell'apprendimento automatico, sicurezza della rete sociale, sicurezza delle reti Software-Defined.
Conoscenza e comprensione Gli studenti verranno a conoscenza dei fondamenti di sicurezza nei sistemi operativi, nelle reti wired/wireless, nella gestione dei dati e dei principali problemi di ricerca studiati in questi settori.
Applicazione di conoscenza e comprensione Alla fine del corso gli studenti saranno in grado di progettare l’architettura di un sistema informativo aziendale sicuro e di seguire in modo autonomo l'evoluzione del settore.
Capacità di giudizio Gli studenti svilupperanno le capacità di analisi necessarie per valutare diverse alternative durante il processo di progettazione dei sistemi informativi sicuri.
Capacità comunicative Gli studenti impareranno a documentare le loro scelte, anche attraverso l'uso di strumenti di generazione di rapporti automatizzati. Avranno anche acquisito la capacità di preparare presentazioni relative ad argomenti scientifici.
Capacità di proseguire l'apprendimento in modo autonomo Le nozioni acquisite durante il corso forniscono agli studenti una base di conoscenza per poter ulteriormente approfondire gli aspetti più tecnici, e per mantenersi autonomamente informati sui continui sviluppi e aggiornamenti nel settore della sicurezza informatica.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
10593236 -
DEEP LEARNING AND APPLIED ARTIFICIAL INTELLIGENCE
|
Erogato in altro semestre o anno
|
1047624 -
DISTRIBUTED SYSTEMS
|
Erogato in altro semestre o anno
|
1047626 -
FORMAL METHODS IN SOFTWARE DEVELOPMENT
|
Erogato in altro semestre o anno
|
1047627 -
FOUNDATIONS OF DATA SCIENCE
|
Erogato in altro semestre o anno
|
1047628 -
FUNDAMENTALS OF COMPUTER GRAPHICS
|
Erogato in altro semestre o anno
|
1047630 -
HUMAN COMPUTER INTERACTION ON THE WEB
|
Erogato in altro semestre o anno
|
1047631 -
INFORMATION SYSTEMS
(obiettivi)
Obiettivi generali
Il corso di sistemi informativi analizza differenti tipologie di sistemi informativi e come esse possono contribuire al successo degli obiettivi di un’azienda; permette di comprendere gli approcci e i modelli da usare per valutare la qualità dei processi, del software e dei servizi ICT; e fornisce le conoscenze di base per pianificare, gestire e controllare i progetti IT
Obiettivi specifici
• Conoscenza e comprensione – Modello funzionale e struttura informativa dei processi aziendali – esigenze di integrazione e requisiti di controllo dei dati dei sistemi informatici aziendali – sistemi e tecnologie per sviluppare e mantenere un e-business di successo – principali settori di applicazione dei sistemi di informazione in vari settori di mercato – organizzazione IT e modelli di valutazione della qualità IT – conoscenze di base di contesto, tecniche/metodologie e soft skill per la gestione dei progetti ICT – systems and technologies to develop&maintain a successful e-business – main application areas of info systems in various industries – ICT organization and mainstream techniques (e.g. quality management) – basic definitions (context), techniques/methodologies and soft skills for project management in ICT
• Applicazione di conoscenze e comprensione (capacità) – Analizzare le diverse vategorie di requisiti estratti da differenti categorie di utenti (stakeholder) di sistemi informativi – Selezionare l’appropriato modello per valutare la qualità dei processi ICT, del prodotto software e dei servizi ICT – Sviluppare uno studio di fattibilità selezionando l’appropriata architettura applicativa e tecnologica – Preparare, per un semplice progetto ICT, un piano di sviluppo nel rispetto dei vincoli di tempo, costi, qualità e definendo l’appropriata organizzazione – Controllare un progetto ICT in corso, applicando le tecniche di project management – Comprendere a valutare le lezioni apprese nei precedenti progetti
|
6
|
SECS-P/07
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047633 -
INTENSIVE COMPUTATION
(obiettivi)
Obiettivi generali: Lo scopo del corso è descrivere i metodi per risolvere problemi che richiedono calcolo intensivo, in particolare in ambito scientifico, e le architetture di calcolo parallele adatte.
Obiettivi specifici: Programmazione con Matlab. Rappresentazione di matrici sparse. Metodi in algebra lineare. Architetture avanzate di calcolatori paralleli.
Conoscenza e comprensione: Conoscere e capire i metodi del calcolo scientifico e le architetture di calcolo.
Applicare conoscenza e comprensione: Saper risolvere i problemi applicando i metodi del calcolo scientifico; saper usare correttamente la programmazione in matlab; essere in grado di analizzare i risultati ottenuti.
Capacità critiche e di giudizio: Saper scegliere il miglior approccio, tra i vari studiati, per risolvere un determinato problema; essere in grado di confrontare correttamente i risultati ottenuti con metodi diverse e diverse architetture.
Capacità comunicative: Essere in grado di motivare le proprie scelte nella risoluzione di un problema che richieda grande capacità di calcolo
Capacità di apprendimento: Capire le differenze e i vantaggi dei diversi approcci alla soluzione di un problema. Capire le differenze e i vantaggi nell’uso di diverse architetture.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1047634 -
INTERNET OF THINGS
|
Erogato in altro semestre o anno
|
1047635 -
MACHINE LEARNING
|
Erogato in altro semestre o anno
|
1047636 -
MATHEMATICAL LOGIC FOR COMPUTER SCIENCE
|
Erogato in altro semestre o anno
|
10589557 -
METHODS IN COMPUTER SCIENCE EDUCATION: ANALYSIS
|
Erogato in altro semestre o anno
|
10589558 -
METHODS IN COMPUTER SCIENCE EDUCATION: DESIGN
|
Erogato in altro semestre o anno
|
1047638 -
MODELS OF COMPUTATION
|
Erogato in altro semestre o anno
|
1047639 -
MULTIMODAL INTERACTION
(obiettivi)
Obiettivi generali: Essere in grado di progettare e valutare un sistema multimodale
Obiettivi specifici: Conoscere le caratteristiche e le tecniche fondamentali relative ai diversi canali di comunicazione uomo-macchina: gesti, interazione vocale, ecc. Conoscere le modalità di cooperazione di singoli canali. Essere in grado di progettare/implementare la fusione/fissione delle informazioni su diversi canali.
Conoscenza e comprensione: Fondamenti teorici della comunicazione su diversi canali di interazione. Fondamenti teorici della progettazione di un sistema multimodale.
Applicare conoscenza e comprensione: Essere in grado di progettare ed implementare una applicazione multimodale.
Capacità critiche e di giudizio: Essere in grado di valutare le prestazioni e la robustezza di una applicazione multimodale.
Capacità comunicative: Essere in grado di comunicare/condividere i requisiti di un sistema multimodale, le modalità operative più adatte ad una certa applicazione, e le misure di performance del sistema
Capacità di apprendimento: Essere in grado di approfondire autonomamente gli argomenti presentati nel corso, relativamente a tecniche e metodi specifici/complessi.
|
6
|
INF/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
1038141 -
NATURAL LANGUAGE PROCESSING
|
Erogato in altro semestre o anno
|
1047640 -
NETWORK ALGORITHMS
|
Erogato in altro semestre o anno
|
10589555 -
PRACTICAL NETWORK DEFENSE
|
Erogato in altro semestre o anno
|
1047642 -
SECURITY IN SOFTWARE APPLICATIONS
|
Erogato in altro semestre o anno
|
1047643 -
TOPICS IN PHYSICS
(obiettivi)
Obiettivi generali: L’obiettivo principale del corso è di introdurre gli studenti alla meccanica quantistica e alla applicazione al calcolo quantistico
Obiettivi specifici:
Conoscenza e comprensione: Lo studente acquisirà tutti gli elementi necessari a comprendere il funzionamento di un calcolatore quantistico.
Applicazione di conoscenza e comprensione: Le tecniche apprese verranno applicate nei più famosi algoritmi quantistici oggi disponibili, quali la quantum cryptography, l’algoritmo di Shor e quello di Grover.
Autonomia di giudizio: In aula si cerca di stimolare il più possibile le discussioni sui vari aspetti della meccanica quantistica, specialmente quelli meno intuitivi, come l’entanglement, e si incoraggiano gli studenti a proporre argomenti di loro interesse inerenti il corso.
Abilità comunicative: Per superare l’esame finale, gli studenti devono illustrare due tesine in power point (o equivalente) su due argomenti, uno di meccanica quantistica e uno di calcolo quantistico. Questa attività è senza dubbio utile per preparare gli studenti a presentare in pubblico il loro lavoro.
Capacità di apprendimento successivo: Durante tutto il corso vengono indicati dei testi di riferimento con i quali gli studenti possono approfondire quanto appreso, fino ad un livello professionale. Inoltre vengono presentati anche alcuni linguaggi di simulazione del calcolo quantistico, utili per lo sviluppo di algoritmi per computer quantistici.
|
6
|
FIS/01
|
36
|
24
|
-
|
-
|
Attività formative affini ed integrative
|
ENG |
|
AAF1034 -
PROVA FINALE
(obiettivi)
La prova finale consiste nella discussione di una tesi di laurea magistrale, costituita da un documento scritto, preferibilmente in lingua inglese, che presenta i risultati di uno studio originale condotto su un problema di natura applicativa, sperimentale o di ricerca.
Questo permetterà di valutare la capacità di applicare le conoscenze apprese a un problema specifico, la capacità di prendere decisioni autonome e di comunicare gli aspetti metodologici e tecnici del lavoro svolto.
|
36
|
|
-
|
-
|
-
|
-
|
Per la prova finale e la lingua straniera (art.10, comma 5, lettera c)
|
ITA |