Corso di laurea - Area di Scienze MM.FF.NN. - Accesso libero con prova di verifica obbligatoria delle conoscenze richieste per l'ammissione.L'esito della prova non preclude la possibilità di immatricolarsi (D.M. 270/04) - Classe L-31
Lingua: Italiano
Informazioni generali
o Classe di Laurea: L-31 (D.M. 270/04)
o Tipologia di corso: Laurea
o Durata: 3 anni
o Tipo di accesso: Accesso libero con verifica delle competenze in ingresso
o Area di afferenza: Scienze Matematiche, Fisiche e Naturali
o Dipartimento: Ingegneria dell’Impresa Mario Lucertini
o Codice corso: H02
Descrizione e obiettivi formativi
Il corso fornisce conoscenze nei vari settori delle scienze e tecnologie dell'informazione volte a una gestione consapevole dei sistemi informatici, nell'uso come nella progettazione e nello sviluppo.
Lo studente acquisisce un'adeguata conoscenza dei settori di base dell'informatica, nonché dei lineamenti fondamentali e degli strumenti di supporto della matematica. Il percorso didattico prevede: acquisizione di nozioni di base di fisica e di matematica sia discreta sia del continuo; conoscenza dei principi, dei modelli teorici e delle architetture dei sistemi di elaborazione e delle reti di comunicazione; conoscenza dei fondamenti teorici dell'informatica, dei principali modelli di calcolo e della teoria dei linguaggi; - conoscenza e utilizzazione dei sistemi operativi; acquisizione di elementi di analisi e progettazione degli algoritmi e delle strutture dati; acquisizione delle moderne metodologie e linguaggi di programmazione; assimilazione dei principi per la progettazione e la realizzazione dei sistemi per la gestione delle basi di dati e le tecnologie correlate; acquisizione delle tecniche di progettazione e realizzazione di sistemi informatici.
Un congruo numero di crediti è riservato a corsi di laboratorio ed esercitazioni, anche offerte da altri corsi.
Sono previsti tirocini formativi presso aziende, enti di ricerca, e strutture della pubblica amministrazione o attività progettuali sostitutive, e l'incentivazione di soggiorni di studio presso università straniere nel quadro di accordi internazionali.
Sbocchi professionali
Per la natura pervasiva dell'informatica nell'ambito delle diverse attività economiche, le competenze acquisite sono richieste ed applicabili in un ampio spettro di contesti.
Tra questi, in particolare: attività tecniche per servizi di supporto alle attività istituzionali delle amministrazioni pubbliche; installazione, gestione e sviluppo di sistemi informatici; supporto ad attività di ricerca in università o enti di ricerca pubblici o privati; progettazione, sviluppo, integrazione, personalizzazione e gestione di sistemi ed applicazioni software; gestione di sistemi informativi e basi di dati; sicurezza informatica; attività di supporto per lo sviluppo e la gestione di infrastrutture e servizi nell'ambito delle telecomunicazioni e, in particolare, dell'accesso a internet; gestione di reti di telecomunicazioni fissa e mobile; gestione di reti di trasmissione di programmi radiotelevisivi via cavo, satellite, ripetitori terrestri; gestione e monitoraggio di reti di trasmissione dati; fornitura di accesso a Internet (provider).
Condizione occupazionale (Indicatori di efficacia e livello di soddisfazione dei laureandi):
http://statistiche.almalaurea.it/universita/statistiche/trasparenza?CODICIONE=0580206203100001
Valutazione della didattica - Studenti
Anno accademico precedente
Riferimenti web e contatti
Sito Web Macroarea: http://www.scienze.uniroma2.it
Sito Web Corso: http://www.informatica.uniroma2.it/
Coordinatore del Corso:
Prof. Roberto Basili
tel: +39 06 7259 7391
e-mail:basili@info.uniroma2.it
Segreteria didattica: Sig. Francesco Stillitano (Dipartimento Ingegneria dell'Impresa )
tel.: +39 06 7259 7503
email: segreteriadidattica.informatica@uniroma2.it
Il Corso di Laurea Magistrale in Informatica e caratterizzato da una marcata attivita progettuale autonoma dello studente, al fine di svilupparne la capacita di giudizio e risoluzione dei problemi.
L'obiettivo specifico del corso di laurea magistrale e quello di formare figure professionali di alto livello che sappiano coniugare le conoscenze sui fondamenti della disciplina e le relative capacita metodologiche con le conoscenze e le capacita' necessarie alla progettazione di tecnologie innovative. Il laureato magistrale in Informatica dovra` acquisire una mentalita` aperta e flessibile predisposta alla risoluzione di problemi ed al rapido apprendimento di metodologie e tecnologie innovative.
Inoltre potra` accedere ad attivita` lavorative che richiedano la conoscenza del metodo scientifico.
Queste conoscenze e capacita non riguardano soltanto la disciplina informatica.
Un aspetto caratterizzante del corso di laurea' e infatti l' obiettivo di formare competenze e capacita fortemente interdisciplinari rispondendo cosi alle esigenze sia della ricerca piu avanzata, sia del mercato del lavoro.
Il carattere pervasivo dell'informatica richiede infatti figure professionali capaci di applicarla in molteplici settori produttivi, e di comprenderne gli impatti in un piu ampio contesto culturale, sociale ed economico. Il nucleo delle competenze e conoscenze acquisite corrisponde agli obiettivi generali della classe di laurea magistrale, cioe ai settori scientifico-disciplinari caratterizzanti INF/01 e ING-INF/05.
L'ampiezza di questi settori consente ricche possibilita di scelta, che saranno indirizzate ponendo particolare attenzione alle metodologie e tecnologie informatiche emergenti.
Il laureato magistrale estende e rafforza le conoscenze teoriche, metodologiche, sistemistiche e tecnologiche, in tutte le discipline che costituiscono gli elementi culturali fondamentali dell'informatica gia presenti nel primo ciclo (laurea di classe L-31).
Il laureato magistrale sara quindi in grado di ideare e di effettuare la pianificazione, la progettazione, lo sviluppo, la direzione lavori, la stima, il collaudo, la definizione delle infrastrutture applicative e di sicurezza su reti eterogenee e la gestione di impianti e sistemi complessi e/o innovativi per la generazione, la trasmissione, l'estrazione, la protezione, l'archiviazione digitale di documenti e l'elaborazione delle informazioni, con specifico riferimento alle informazioni di carattere multimediale, anche quando implichino l'uso di metodologie avanzate, innovative o sperimentali e quando i requisiti di sicurezza, privatezza e riservatezza siano prevalenti sugli altri aspetti tecnologici. Il corso potra essere articolato in curricula funzionali a specifiche esigenze formative. Ai fini indicati, i curricula del corso di laurea magistrale della classe prevedono in misura e forma adeguate agli specifici obiettivi: lezioni ed esercitazioni di laboratorio oltre a congrue attivita progettuali autonome e congrue attivita individuali in laboratorio; in relazione a obiettivi specifici, attivita esterne come tirocini formativi presso aziende, strutture della pubblica amministrazione e laboratori, oltre a soggiorni di studio presso altre universita italiane ed europee, anche nel quadro di accordi internazionali.
La determinazione dei requisiti curriculari che devono essere posseduti per l'ammissione verranno indicati nel regolamento didattico del corso di studio.
Le modalita per la verifica della personale preparazione sono rimandate al regolamento didattico del corso di studio.
In particolare considerato che gli obiettivi formativi della classe stabiliscono che "I laureati nei corsi di laurea magistrale della classe devono essere in grado di utilizzare fluentemente, in forma scritta e orale almeno una lingua dell'Unione Europea oltre l'italiano, con riferimento anche ai lessici disciplinari", viene richiesto come requisito di accesso la conoscenza della lingua inglese.
Corsi e test di conoscenza della lingua inglese sono erogati agli studenti che intendono iscriversi.
L'obiettivo specifico del corso di laurea magistrale e quello di formare figure professionali di alto livello che sappiano coniugare le conoscenze sui fondamenti della disciplina e le relative capacita metodologiche con le conoscenze e le capacita necessarie alla progettazione di tecnologie innovative. Il laureato magistrale in Informatica dovra, a tal fine, acquisire una mentalita aperta e flessibile predisposta alla risoluzione di problemi ed al rapido apprendimento di metodologie e tecnologie innovative.
Inoltre, dovra entrare in possesso di una adeguata capacita di utilizzo del metodo scientifico. Queste conoscenze e capacita non riguardano soltanto la disciplina informatica: un aspetto caratterizzante del corso di laurea e infatti l'obiettivo di formare competenze e capacita fortemente interdisciplinari, rispondendo cosi alle esigenze sia della ricerca piu avanzata, sia del mercato del lavoro: il carattere pervasivo dell'informatica richiede infatti figure professionali capaci di applicarla in molteplici settori produttivi, e di comprenderne gli impatti in un piu ampio contesto culturale, sociale ed economico. Il nucleo delle competenze e conoscenze acquisite corrisponde agli obiettivi generali della classe di laurea magistrale, cioe ai settori scientifico-disciplinari caratterizzanti INF/01 e ING-INF/05.
L'ampiezza di questi settori consente ricche possibilita di scelta, che saranno indirizzate ponendo particolare attenzione alle metodologie e tecnologie informatiche emergenti.
Il laureato magistrale estende e rafforza le conoscenze teoriche, metodologiche, sistemistiche e tecnologiche, in tutte le discipline che costituiscono gli elementi culturali fondamentali dell'informatica gia presenti nel primo ciclo (laurea di classe L-31). Il Corso di Laurea Magistrale in Informatica e inoltre caratterizzato da una marcata attivita progettuale autonoma dello studente, stimolata dai diversi Corsi previsti verso domini diverse delle copetenze.
Questo consente allo studente di rafforzare le sue capacita realizzative ed al contempo di svilupparne la capacita di giudizio e di risoluzione di problemi.
Il Corso di Laurea Magistrale in Informatica non e ad accesso programmato.
Per essere ammessi al corso occorre essere in possesso della laurea o del diploma universitario di durata triennale, ovvero di un altro titolo di studio conseguito all'estero riconosciuto idoneo.
La natura interdisciplinare dell?informatica rende possibile anche a studenti che abbiano conseguito la laurea in altri settori di accedere alla laurea magistrale in Informatica, purche in possesso dei necessari requisiti, la cui sussistenza andra verificata nei singoli casi. Le modalita di ammissione sono formulate nel Regolamento del Corso di Laurea Magistrale in Informatica disponibile sul sito web del corso di laurea: http://www.informatica.uniroma2.it/index2.htm
Il corso fornisce un’introduzione alla costruzione ed alle proprietà delle funzioni spline nonché al loro utilizzo nell’ambito della grafica computerizzata, della progettazione del trattamento numerico di equazioni differenziali alle derivate parziali. Argomenti: Polinomi di Bernstein e curve di Bézier. B-spline: costruzione, proprietà analitiche e geometriche. Totale positività e sue conseguenze. Curve e superfici B-spline. Curve e superfici NURBS. Proprietà di approssimazione di spazi spline. Trattamento di problemi ellittici multidimensionali: fondamenti del metodo degli elementi finiti e dell'analisi isogeometrica
Polinomi di Bernoulli, formula di Eulero-Maclaurin, metodi numerici per il calcolo degli autovalori e degli autovettori di matrici, metodo delle potenze, teoria di Perron-Frobenius, l'importanza dei nodi nei grafi orientati (page-rank), metodi di tipo differenze finite per la risoluzione di problemi differenziali e/o migliore approssimazione di una matrice in algebre di bassa complessita'.
Il Linguaggio di Programmazione Ruby: Variabili, Stringhe, l'espressione IF, Cicli, Vettori, Files, Funzioni, Classi, Matrici Analisi delle sequenze in Ruby: Identita' e similarita' di sequenze, Allineamenti di sequenze, Allineamenti locali e globali, Matrici di sostituzione, Alberi di sequenze, Allineamenti Multipli.
Preliminari algebrici. Topologia di Zariski nello spazio affine e proiettivo. Teoremi degli zeri di Hilbert (forma debole e forte) caso affine e proiettivo. Varietà algebriche. Funzioni regolari e razionali. Morfismi ed applicazioni razionali. Prodotti. Scoppiamenti. Teorema fondamentale dell'eliminazione ed applicazioni. Applicazioni birazionali. Spazi tangenti.
Paradossi. Sistemi formali. Linguaggi. Formule ben formate. Assiomi. Dimostrazioni in senso formale. Calcolo delle proposizioni. Calcolo dei predicati del primo ordine. Modelli. Soddisfacibilità. Teorie del primo ordine. Teoremi di completezza e compattezza. Applicazioni. Modelli non standard. Teoremi di incompletezza. Conseguenze. Costruzioni di modelli. Teoremi di Lowenheim Skolem. Assiomi della teoria degli insiemi e loro formalizzazione. Analisi non standard.
PROGRAMMA sul quale si svolge l'orale Processo di Poisson: perdita di memoria, merging e splitting, la coda M/G/infinito, il processo di Poisson e la distribuzione uniforme. Processi di Poisson non stazionari. processi di rinnovo: comportamento asintotico della funzione di rinnovo e del tempo di vita residua, la funzione tasso di rischio. Catene di Markov a tempo continuo: funzione di transizione e tassi di salto, catene di nascita e morte, misura invariante
Programma 1° parte Macci Richiami di probabilita' elementare Calcoli con densita' congiunte discrete, continue e miste Trasformazioni invertibili di variabili aleatorie continue Distribuzioni Normali multivariate Statistica Classica e Bayesiana: statistiche sufficienti e stimatori per ciascuna impostazione Famiglie coniugate in Statistica Bayesiana Esempi di modelli statistici di uso comune 2° parte Dimitri Dipendenza probabilistica, probabilità condizionalità Varianza e decomposizione per condizionamento Entropia e decomposizione per condizionamento Causalità Verosimiglianza Teorema di Bayes La costruzione di un modello di apprendimento Le reti bayesiane : definizione ed esempi Inferenza attraverso le reti bayesiane Apprendimento di una rete bayesiana
• Il modello elementare di una transazione tra due attori in rete • La complessità del controllo delle transazioni • I metodi di gestione delle anomalie • Modelli a terza parte ◦ L’uso di una terza parte passiva ◦ L’uso di una terza parte attiva sulla rete ◦ L’uso di una terza parte in un modello seriale (A TerzaParte B) ◦ L’uso di una terza parte in un modello triangolare (AB, A Terza parte, B Terza parte) • Il modello a Y nel WEB • Autenticazione e Autorizzazione nei sistemi complessi multiorganizzazione. • Uso della soluzione infrastrutturale VA • Blockchain e ledger distribuiti • I sistemi di criptovaluta • Le blockchain permissioned (hyperledger groupd) • Smart contract • Modello di funzionamento della blockchain Ethereum • Modello di funzionamento del ledger distribuito Hyperledger Fabric
Distributed ledger e Blockchain: definizioni L'eliminazione degli intermediari (zecca) Ledger permissioned e Unpermissioned Database distribuiti vs ledger distribuiti Il consenso e il problema dei generali bizantini il modello Bitcoin Il modello Hyperledger Esercitazioni e laboratorio Proof of Work e altre soluzioni per la sincronizzazione Struttura collegata di una blockchain Aggiunta di una transazione a una blockchain Un esempio di realizzazione di una criptovaluta microtransazioni: aspetti progettuali e criticità
Richiami di statistica bayesiana e apprendimento bayesiano Modelli grafici e reti bayesiane Supervised learning Regressione (lineare e non) e regolarizzazione Feature selection, cenni Classificazione lineare: LDA di Fisher, perceptron Naive bayes Modelli generativi per la classificazione Modelli discriminativi per la classificazione, regressione logistica Support vector machines, kernel Multilayer perceptron Modelli non parametrici: knn e Parzen windows Processi gaussiani Alberi di decisione Ensemble models: bagging, boosting, random forests, Adaboost, Gradient boosting Unsupervised learning Clustering: k-means, mixture models Dimensionality reduction: Principal component analysis, Probabilistic principal component analysis, Factor analysis Testo, pair matrices e recommenders Latent semantic analysis Deep learning Convolutional networks Recurrent e LSTM networks
Richiami ai metodi base di ML. Metodi Supervised vs. Unsupervised. Paradigmi di ML, Metodi di addestramento. Machine Learning Metrics and Evaluation. Introduzione alla modellazione dei documenti per il Web: dall’Information Retrieval al Natural Language Processing. Modelli di Linguaggio. Processi Markoviani. Modelli Generativi: HMM. Use Case: Probabilstic POS tagging PAC Learnability. Perceptron SVM. Hard Margin. Soft margin SVM. Kernel polinomiali. Sequence Kernels. Kernel for NLP. Tree Kernels. Semantic Tree kernels Deep Learning. Intro e Background. NNs: tasks and Training. Convolutional Neural Networks. Recurrent Neural Networks. Attention. Trasformers. Deep Learning Software Development. NN in Python. Language Modeling con modelli neurali. Temi avanzati: attention; encoding-decoding; adversarial NNs; transformers. Web and Lexical Semantics: the role of lexical learning in Web scenarios. Opinion Mining e Sentiment Analysis: il taks, le risorse e le metodologie principali Advanced Statistical NLP for QA (from NERC & SRL to QA) Advanced Machine Learning for the Web: Learning to Rank, Recommending systems
1. Il paradigma della programmazione centralizzata 2. Il paradigma della simulazione distribuita 3. Distribuzione in rete locale e rete geografica 4. Middleware per la simulazione distribuita : HLA e SimArch 5. Progetto e Sviluppo di uno studio SSD in Java & HLA 6. Progetto e Sviluppo di uno studio SSD in SimArch 7. La legge di Amdhal in simulazione distribuita 8. Analisi dello speedup 9. Simulazione distribuita in-the-loop.
1. Prerequisiti. Spazi di Banach, duale e topologia forte, debole e *-debole. Principio dell’uniforme limitatezza. Funzioni analitiche a valori spazi di Banach. Teorema di Tychonoff. Teorema di Alaoglu. 2. Algebre di Banach. Insieme risolvente e spettro di un elemento. Teorema di Mazur. Analicità del risolvente. Lo spettro di un elemento è compatto non-vuoto. Analiticità del risolvente e seie di Neumann. Formula del raggio spettrale. 3. Algebre di Banach commutative. Ideali massimali. Caratteri e spettro di un’algebra di Banach commutative. Caso di un’algebra con identità generata da un element o da un numero finito di elementi, spettro congiunto. Teorema dello spectral mapping per polinomi. Spettro di un elemento in una sottoalgebra abeliana massimale o minimale. 4. Calcolo funzionale analitico. Teorema dello spectral mapping per funzioni analitiche. Caso di spettro disconnnesso. Perturbazioni dello spettro, semicontinuità inferiore, esempi. Pertubazioni di proiettori. 5. Trasformazione di Gelfand. Elementi nilpotenti generalizzati. Caso dell’algebra l1(Z). Teorema dello spectral mapping per funzioni analitiche. 6. Algebre C*. Algebre involutive e norme C*. Lo spettro di un elemento autoaggiunto è reale; il raggio spettrale coincide con la norma. Lo spettro non dipende dalla sottoalgebra. 7. C*-algebre commutative. Teorema di Gelfand-Naimark. Calcolo funzionale continuo. La categoria delle C*-algebre abeliane con identità è duale alla categoria degli spazi compatti di Haudorff. 8. Calcolo funzionale Boreliano. Il teorema spettrale per operatori autoaggiunti su uno spazio di Hilbert. Misure basiche e calcolo funzionale L∞. 9. Algebre di von Neumann. Teoremi di densità di von Neumann e di Kaplanski. Topologia debole e forte. Compattezza debole della palla unitaria. Algebre abeliane massimali e loro caratterizzazione su uno spazio di Hilbert separabile. 10. Stati e rappresentazioni di una C*-algebra. Elementi positive, estensione di stati. La rappresentazione GNS. Caso dell’algebra C(X). Operatori di allacciamento, sotto-rappresentzaioni, rappresentazioni equivalenti e rappresentzioni disgiunte. Caso commutativo. 11. Il teorema di molteplicità spettrale. Rappresentazioni cicliche e rappresentazioni senza molteplicità (spazio di Hilbert separabile) di una C*-algebra abeliana. Classificazione degli operatori autoggiunti (o di rappresentazioni di una C*-algebra abeliana) su uno spazio di Hilbert separabile. 12. Operatori illimitati. Operatori chiusi, chiudibili, aggiunti. Operatori simmetrici e autoaggiunti. Estensione di operatori simmetrici e trasformata di Cayley. Il problema dei momenti.
PARTE 1 - INTRODUZIONE Produzione industriale del software. Paradigmi di produzione: build&fix, waterfall, rapid prototyping, incremental, spiral. PARTE 2 - FASI DEL PROCESSO SOFTWARE Requisiti, specifica, progetto preliminare, progetto dettagliato, realizzazione, integrazione, uso e manutenzione. Qualità e fattori di qualità. PARTE 3 - TECNOLOGIE E STRUMENTI DI PRODUZIONE SOFTWARE Tecnologie per sistemi ad oggetti e componenti, tecnologie basate su architetture orientate ai servizi per sistemi eterogenei ed interoperabili. Strumenti di produzione, supporti alla notazione, specifica, progetto e documentazione di prodotti e servizi software. Model-driven Engineering (MDE) e approccio MDE basato su Model Driven Architecture (MDA). Standard MDA (MOF, XMI, etc.). Cenni su linguaggi e strumenti di model transformation (QVT, ATL, etc.).
- Introduzione alla sicurezza informatica (Ethical Hacking, Pentest, Defense) - modelli di attacco e minaccia, Kill chain, minacce persistenti avanzate (APTs) - Strumenti e best practice (Kali Linux) - Metasploit Framework - Information gathering: strumenti attivi e passivi - Vulnerabiltà e strumenti per Scanning - Test di penetrazione e valutazione della vulnerabilità - Vulnerabilità nell'autenticazione e Cracking delle password - Exploitation e penetrazione in reti fisse e reti wireless - Analisi di sicurezza di applicazioni web (sia frontend che backend) - database exploitation - Linux exploitation - Windows exploitation - Reverse engineering e cracking - Analisi di codice binario (e sfruttamento di stack e heap) - Privilege Escalation and Pivoting - Progettazione e scrittura di exploit personalizzati - Gestione degli incidenti (Post Exploitation e mantenimento dell'accesso) - Nozioni di base di analisi forense
- Modelli di computazione distribuiti: paradigmi, algoritmi, misure di complessità, comunicazione - Un processo epidemico: Il Broadcast e l'Information Spreading - Il problema del Wake-Up - Il problema dello Spanning Tree - Il problema del Leader Election - Il Modello Wireless: il fenomeno delle collisioni
- Introduzione e la sfida delle macchine parlanti - Il Linguaggio: modelli e teorie linguistiche - Modelli Linguistici e Sistemi - Come determinare che un modello è corretto e un sistema è efficace: inter-annotation agreement e statistical significance - Automi a stati finiti e trasduttori per la morfologia (appunti per la lezione): software Xerox Finite State Transducers - Elaborazione sintattica con le grammatiche context-free - Parsing con le grammatiche context-free - Feature Structures e Unificazione - Tree Adjoining Grammars - Modular and Lexicalized Parsing - Probabilistic context-free grammar - Semantica - Rappresentazione semantica simbolica: Introduzione a WordNet e FrameNet - Lambda Calcolo per la semantica del linguaggio naturale - Rappresentazione semantica distribuzionale - Textual Entailment Recognition - Cenni di Rappresentazione Simbolica Distribuita per Reti Neurali
Programma 1. Modellizzazione dei sistemi: rappresentazione con automi a stati finiti; 2. Modellizzazione di proprietà di sistemi: logica temporale; 3. Tecniche di model checking esplicito; 4. Tecniche di model checking simbolico.
Introduzione ai dati aperti. I 5 livelli di qualità dei dati aperti fissati dalla W3C. Licenze sui dati: licenze libere/aperte. Dati, metadati, vocabolari dei dati, ontologie, tesauri: ambiguità terminologiche in uno scenario inerentemente intersettoriale. Il valore economico dei dati. Open Data per il dominio dei Patrimoni Culturali. Il Web Semantico: una introduzione. Il Web Semantico e gli Open Data: Linked Open Data e il Web. Modelli dei dati e della conoscenza per il Web. Multilingualità e diffusione: aspetti denotazionali, proprietà terminologiche e modelli di lessico avanzato. Interazione lessico-semantica. SPARQL: un linguaggio di interrogazione dei dati RDF & assieme un protocollo di accesso ai dati aperti Metadati: importanza dei metadata e nel loro ruolo per l’autonomia delle macchine nel web LOD Cloud: la “nuvola” dei Linked Open Data nel Web, un bootstrap del Semantic Web, ma anche una contraddizione in essere Dataset repositories e portali; Tecnologie per i Linked Open Data: Triple stores. RDF API & Middleware. Ontology Editors, Thesauri Editors, differenti paradigmi e dimensioni d’uso ETL in chiave RDF: triplificazione di sorgenti legacy e/o non strutturate. Pubblicazione dei dati aperti: standard & best practices
Fondamenti di teoria dei grafi e delle reti sociali. Introduzione alla teoria dei giochi e dei mercati. Reti Informative e il World Wide Web: struttura del Web, ricerca nel Web. Dinamiche di Rete: modelli di popolazioni, modelli strutturali, epidemie
Contenuti (programma) del corso: Il corso fornisce gli elementi per comprendere i nuovi paradigmi economici e tecnologici alla base della trasformazione digitale del mondo del lavoro e della società. Inoltre, introduce le problematiche concorrenziali che spingono a regolamentare alcuni settori e delinea i principali principi della regolamentazione. In particolare, il corso coprirà i seguenti argomenti: • Elementi su grafi e reti • Introduzione alle reti sociali e infrastrutturali • Economia delle reti • Internet e economia • Informazione, mercati e folla • Economia della condivisione
General introduction to the network access alternatives. Ethernet basics and Switched Ethernet IP over Ethernet, ARP and DHCP Wireless access: IEEE 802.11 Software Defined Networking and Network Function Virtualization Routing algorithms (Dijkstra, Bellman-Ford). Routing protocols classification. RIP, OSPF, BGP. PCM numerical multiplexing. PDH and SDH transport networks. Evolution of wide area data connection oriented transport technologies. IP transportation on the network backbones MPLS technology, Segment Routing. Voice over IP transport. Voice over IP signaling. SIP: Architecture and protocol. Audio flow transportation: brief notes about audio codecs (G.711, G.723, iLBC), RTP protocol.
- Introduzione alla sicurezza informatica (Ethical Hacking, Pentest, Defense) - modelli di attacco e minaccia, Kill chain, minacce persistenti avanzate (APTs) - Strumenti e best practice (Kali Linux) - Metasploit Framework - Information gathering: strumenti attivi e passivi - Vulnerabiltà e strumenti per Scanning - Test di penetrazione e valutazione della vulnerabilità - Vulnerabilità nell'autenticazione e Cracking delle password - Exploitation e penetrazione in reti fisse e reti wireless - Analisi di sicurezza di applicazioni web (sia frontend che backend) - database exploitation - Linux exploitation - Windows exploitation - Reverse engineering e cracking - Analisi di codice binario (e sfruttamento di stack e heap) - Privilege Escalation and Pivoting - Progettazione e scrittura di exploit personalizzati - Gestione degli incidenti (Post Exploitation e mantenimento dell'accesso) - Nozioni di base di analisi forense
- Introduzione e la sfida delle macchine parlanti - Il Linguaggio: modelli e teorie linguistiche - Modelli Linguistici e Sistemi - Come determinare che un modello è corretto e un sistema è efficace: inter-annotation agreement e statistical significance - Automi a stati finiti e trasduttori per la morfologia (appunti per la lezione): software Xerox Finite State Transducers - Elaborazione sintattica con le grammatiche context-free - Parsing con le grammatiche context-free - Feature Structures e Unificazione - Tree Adjoining Grammars - Modular and Lexicalized Parsing - Probabilistic context-free grammar - Semantica - Rappresentazione semantica simbolica: Introduzione a WordNet e FrameNet - Lambda Calcolo per la semantica del linguaggio naturale - Rappresentazione semantica distribuzionale - Textual Entailment Recognition - Cenni di Rappresentazione Simbolica Distribuita per Reti Neurali
Programma 1. Modellizzazione dei sistemi: rappresentazione con automi a stati finiti; 2. Modellizzazione di proprietà di sistemi: logica temporale; 3. Tecniche di model checking esplicito; 4. Tecniche di model checking simbolico.
Introduzione ai dati aperti. I 5 livelli di qualità dei dati aperti fissati dalla W3C. Licenze sui dati: licenze libere/aperte. Dati, metadati, vocabolari dei dati, ontologie, tesauri: ambiguità terminologiche in uno scenario inerentemente intersettoriale. Il valore economico dei dati. Open Data per il dominio dei Patrimoni Culturali. Il Web Semantico: una introduzione. Il Web Semantico e gli Open Data: Linked Open Data e il Web. Modelli dei dati e della conoscenza per il Web. Multilingualità e diffusione: aspetti denotazionali, proprietà terminologiche e modelli di lessico avanzato. Interazione lessico-semantica. SPARQL: un linguaggio di interrogazione dei dati RDF & assieme un protocollo di accesso ai dati aperti Metadati: importanza dei metadata e nel loro ruolo per l’autonomia delle macchine nel web LOD Cloud: la “nuvola” dei Linked Open Data nel Web, un bootstrap del Semantic Web, ma anche una contraddizione in essere Dataset repositories e portali; Tecnologie per i Linked Open Data: Triple stores. RDF API & Middleware. Ontology Editors, Thesauri Editors, differenti paradigmi e dimensioni d’uso ETL in chiave RDF: triplificazione di sorgenti legacy e/o non strutturate. Pubblicazione dei dati aperti: standard & best practices
- model-driven engineering (MDE) - approccio MDE basato su model-driven architecture (MDA) e relativi standard (MOF, XMI, etc.) - linguaggi e strumenti di model transformation - model-driven quality management
Paradossi. Sistemi formali. Linguaggi. Formule ben formate. Assiomi. Dimostrazioni in senso formale. Calcolo delle proposizioni. Calcolo dei predicati del primo ordine. Modelli. Soddisfacibilità. Teorie del primo ordine. Teoremi di completezza e compattezza. Applicazioni. Modelli non standard. Teoremi di incompletezza. Conseguenze. Costruzioni di modelli. Teoremi di Lowenheim Skolem. Assiomi della teoria degli insiemi e loro formalizzazione. Analisi non standard.
Il corso fornisce un’introduzione alla costruzione ed alle proprietà delle funzioni spline nonché al loro utilizzo nell’ambito della grafica computerizzata, della progettazione del trattamento numerico di equazioni differenziali alle derivate parziali. Argomenti: Polinomi di Bernstein e curve di Bézier. B-spline: costruzione, proprietà analitiche e geometriche. Totale positività e sue conseguenze. Curve e superfici B-spline. Curve e superfici NURBS. Proprietà di approssimazione di spazi spline. Trattamento di problemi ellittici multidimensionali: fondamenti del metodo degli elementi finiti e dell'analisi isogeometrica
PARTE 1 - INTRODUZIONE Produzione industriale del software. Paradigmi di produzione: build&fix, waterfall, rapid prototyping, incremental, spiral. PARTE 2 - FASI DEL PROCESSO SOFTWARE Requisiti, specifica, progetto preliminare, progetto dettagliato, realizzazione, integrazione, uso e manutenzione. Qualità e fattori di qualità. PARTE 3 - TECNOLOGIE E STRUMENTI DI PRODUZIONE SOFTWARE Tecnologie per sistemi ad oggetti e componenti, tecnologie basate su architetture orientate ai servizi per sistemi eterogenei ed interoperabili. Strumenti di produzione, supporti alla notazione, specifica, progetto e documentazione di prodotti e servizi software. Model-driven Engineering (MDE) e approccio MDE basato su Model Driven Architecture (MDA). Standard MDA (MOF, XMI, etc.). Cenni su linguaggi e strumenti di model transformation (QVT, ATL, etc.).
- Modelli di computazione distribuiti: paradigmi, algoritmi, misure di complessità, comunicazione - Un processo epidemico: Il Broadcast e l'Information Spreading - Il problema del Wake-Up - Il problema dello Spanning Tree - Il problema del Leader Election - Il Modello Wireless: il fenomeno delle collisioni
Introduzione al problema dell'Information Retrieval Definizione della nozione di Inverted Indices Costruzione di Indici per l'Information Retrieval Algoritmi per la codifica e compressione dell'Informazione Funzione di Ranking documentale Introduzione al Vector Space Model Modello Probabilistici per l'Information Retrieval Valutazione dei Sistemi di IR Sviluppo efficiente e su larga scala di sistemi di IR Crawling e Detection di risorse duplicate Introduzione a Lucene/SOLR Introduzione a Map Reduce Modelli avanzati di Retrieval (Modello 2-Poisson, Dirichlet Language Model)
Fondamenti di teoria dei grafi e delle reti sociali. Introduzione alla teoria dei giochi e dei mercati. Reti Informative e il World Wide Web: struttura del Web, ricerca nel Web. Dinamiche di Rete: modelli di popolazioni, modelli strutturali, epidemie
Contenuti (programma) del corso: Il corso fornisce gli elementi per comprendere i nuovi paradigmi economici e tecnologici alla base della trasformazione digitale del mondo del lavoro e della società. Inoltre, introduce le problematiche concorrenziali che spingono a regolamentare alcuni settori e delinea i principali principi della regolamentazione. In particolare, il corso coprirà i seguenti argomenti: • Elementi su grafi e reti • Introduzione alle reti sociali e infrastrutturali • Economia delle reti • Internet e economia • Informazione, mercati e folla • Economia della condivisione
General introduction to the network access alternatives. Ethernet basics and Switched Ethernet IP over Ethernet, ARP and DHCP Wireless access: IEEE 802.11 Software Defined Networking and Network Function Virtualization Routing algorithms (Dijkstra, Bellman-Ford). Routing protocols classification. RIP, OSPF, BGP. PCM numerical multiplexing. PDH and SDH transport networks. Evolution of wide area data connection oriented transport technologies. IP transportation on the network backbones MPLS technology, Segment Routing. Voice over IP transport. Voice over IP signaling. SIP: Architecture and protocol. Audio flow transportation: brief notes about audio codecs (G.711, G.723, iLBC), RTP protocol.
Polinomi di Bernoulli, formula di Eulero-Maclaurin, metodi numerici per il calcolo degli autovalori e degli autovettori di matrici, metodo delle potenze, teoria di Perron-Frobenius, l'importanza dei nodi nei grafi orientati (page-rank), metodi di tipo differenze finite per la risoluzione di problemi differenziali e/o migliore approssimazione di una matrice in algebre di bassa complessita'.
PROGRAMMA sul quale si svolge l'orale Processo di Poisson: perdita di memoria, merging e splitting, la coda M/G/infinito, il processo di Poisson e la distribuzione uniforme. Processi di Poisson non stazionari. processi di rinnovo: comportamento asintotico della funzione di rinnovo e del tempo di vita residua, la funzione tasso di rischio. Catene di Markov a tempo continuo: funzione di transizione e tassi di salto, catene di nascita e morte, misura invariante
Programma 1° parte Macci Richiami di probabilita' elementare Calcoli con densita' congiunte discrete, continue e miste Trasformazioni invertibili di variabili aleatorie continue Distribuzioni Normali multivariate Statistica Classica e Bayesiana: statistiche sufficienti e stimatori per ciascuna impostazione Famiglie coniugate in Statistica Bayesiana Esempi di modelli statistici di uso comune 2° parte Dimitri Dipendenza probabilistica, probabilità condizionalità Varianza e decomposizione per condizionamento Entropia e decomposizione per condizionamento Causalità Verosimiglianza Teorema di Bayes La costruzione di un modello di apprendimento Le reti bayesiane : definizione ed esempi Inferenza attraverso le reti bayesiane Apprendimento di una rete bayesiana
• Il modello elementare di una transazione tra due attori in rete • La complessità del controllo delle transazioni • I metodi di gestione delle anomalie • Modelli a terza parte ◦ L’uso di una terza parte passiva ◦ L’uso di una terza parte attiva sulla rete ◦ L’uso di una terza parte in un modello seriale (A TerzaParte B) ◦ L’uso di una terza parte in un modello triangolare (AB, A Terza parte, B Terza parte) • Il modello a Y nel WEB • Autenticazione e Autorizzazione nei sistemi complessi multiorganizzazione. • Uso della soluzione infrastrutturale VA • Blockchain e ledger distribuiti • I sistemi di criptovaluta • Le blockchain permissioned (hyperledger groupd) • Smart contract • Modello di funzionamento della blockchain Ethereum • Modello di funzionamento del ledger distribuito Hyperledger Fabric
Distributed ledger e Blockchain: definizioni L'eliminazione degli intermediari (zecca) Ledger permissioned e Unpermissioned Database distribuiti vs ledger distribuiti Il consenso e il problema dei generali bizantini il modello Bitcoin Il modello Hyperledger Esercitazioni e laboratorio Proof of Work e altre soluzioni per la sincronizzazione Struttura collegata di una blockchain Aggiunta di una transazione a una blockchain Un esempio di realizzazione di una criptovaluta microtransazioni: aspetti progettuali e criticità
Richiami ai metodi base di ML. Metodi Supervised vs. Unsupervised. Paradigmi di ML, Metodi di addestramento. Machine Learning Metrics and Evaluation. Introduzione alla modellazione dei documenti per il Web: dall’Information Retrieval al Natural Language Processing. Modelli di Linguaggio. Processi Markoviani. Modelli Generativi: HMM. Use Case: Probabilstic POS tagging PAC Learnability. Perceptron SVM. Hard Margin. Soft margin SVM. Kernel polinomiali. Sequence Kernels. Kernel for NLP. Tree Kernels. Semantic Tree kernels Deep Learning. Intro e Background. NNs: tasks and Training. Convolutional Neural Networks. Recurrent Neural Networks. Attention. Trasformers. Deep Learning Software Development. NN in Python. Language Modeling con modelli neurali. Temi avanzati: attention; encoding-decoding; adversarial NNs; transformers. Web and Lexical Semantics: the role of lexical learning in Web scenarios. Opinion Mining e Sentiment Analysis: il taks, le risorse e le metodologie principali Advanced Statistical NLP for QA (from NERC & SRL to QA) Advanced Machine Learning for the Web: Learning to Rank, Recommending systems
Richiami di statistica bayesiana e apprendimento bayesiano Modelli grafici e reti bayesiane Supervised learning Regressione (lineare e non) e regolarizzazione Feature selection, cenni Classificazione lineare: LDA di Fisher, perceptron Naive bayes Modelli generativi per la classificazione Modelli discriminativi per la classificazione, regressione logistica Support vector machines, kernel Multilayer perceptron Modelli non parametrici: knn e Parzen windows Processi gaussiani Alberi di decisione Ensemble models: bagging, boosting, random forests, Adaboost, Gradient boosting Unsupervised learning Clustering: k-means, mixture models Dimensionality reduction: Principal component analysis, Probabilistic principal component analysis, Factor analysis Testo, pair matrices e recommenders Latent semantic analysis Deep learning Convolutional networks Recurrent e LSTM networks
Il Linguaggio di Programmazione Ruby: Variabili, Stringhe, l'espressione IF, Cicli, Vettori, Files, Funzioni, Classi, Matrici Analisi delle sequenze in Ruby: Identita' e similarita' di sequenze, Allineamenti di sequenze, Allineamenti locali e globali, Matrici di sostituzione, Alberi di sequenze, Allineamenti Multipli.
Preliminari algebrici. Topologia di Zariski nello spazio affine e proiettivo. Teoremi degli zeri di Hilbert (forma debole e forte) caso affine e proiettivo. Varietà algebriche. Funzioni regolari e razionali. Morfismi ed applicazioni razionali. Prodotti. Scoppiamenti. Teorema fondamentale dell'eliminazione ed applicazioni. Applicazioni birazionali. Spazi tangenti.
1. Il paradigma della programmazione centralizzata 2. Il paradigma della simulazione distribuita 3. Distribuzione in rete locale e rete geografica 4. Middleware per la simulazione distribuita : HLA e SimArch 5. Progetto e Sviluppo di uno studio SSD in Java & HLA 6. Progetto e Sviluppo di uno studio SSD in SimArch 7. La legge di Amdhal in simulazione distribuita 8. Analisi dello speedup 9. Simulazione distribuita in-the-loop.
1. Prerequisiti. Spazi di Banach, duale e topologia forte, debole e *-debole. Principio dell’uniforme limitatezza. Funzioni analitiche a valori spazi di Banach. Teorema di Tychonoff. Teorema di Alaoglu. 2. Algebre di Banach. Insieme risolvente e spettro di un elemento. Teorema di Mazur. Analicità del risolvente. Lo spettro di un elemento è compatto non-vuoto. Analiticità del risolvente e seie di Neumann. Formula del raggio spettrale. 3. Algebre di Banach commutative. Ideali massimali. Caratteri e spettro di un’algebra di Banach commutative. Caso di un’algebra con identità generata da un element o da un numero finito di elementi, spettro congiunto. Teorema dello spectral mapping per polinomi. Spettro di un elemento in una sottoalgebra abeliana massimale o minimale. 4. Calcolo funzionale analitico. Teorema dello spectral mapping per funzioni analitiche. Caso di spettro disconnnesso. Perturbazioni dello spettro, semicontinuità inferiore, esempi. Pertubazioni di proiettori. 5. Trasformazione di Gelfand. Elementi nilpotenti generalizzati. Caso dell’algebra l1(Z). Teorema dello spectral mapping per funzioni analitiche. 6. Algebre C*. Algebre involutive e norme C*. Lo spettro di un elemento autoaggiunto è reale; il raggio spettrale coincide con la norma. Lo spettro non dipende dalla sottoalgebra. 7. C*-algebre commutative. Teorema di Gelfand-Naimark. Calcolo funzionale continuo. La categoria delle C*-algebre abeliane con identità è duale alla categoria degli spazi compatti di Haudorff. 8. Calcolo funzionale Boreliano. Il teorema spettrale per operatori autoaggiunti su uno spazio di Hilbert. Misure basiche e calcolo funzionale L∞. 9. Algebre di von Neumann. Teoremi di densità di von Neumann e di Kaplanski. Topologia debole e forte. Compattezza debole della palla unitaria. Algebre abeliane massimali e loro caratterizzazione su uno spazio di Hilbert separabile. 10. Stati e rappresentazioni di una C*-algebra. Elementi positive, estensione di stati. La rappresentazione GNS. Caso dell’algebra C(X). Operatori di allacciamento, sotto-rappresentzaioni, rappresentazioni equivalenti e rappresentzioni disgiunte. Caso commutativo. 11. Il teorema di molteplicità spettrale. Rappresentazioni cicliche e rappresentazioni senza molteplicità (spazio di Hilbert separabile) di una C*-algebra abeliana. Classificazione degli operatori autoggiunti (o di rappresentazioni di una C*-algebra abeliana) su uno spazio di Hilbert separabile. 12. Operatori illimitati. Operatori chiusi, chiudibili, aggiunti. Operatori simmetrici e autoaggiunti. Estensione di operatori simmetrici e trasformata di Cayley. Il problema dei momenti.