| 10610046 | HUMAN-ROBOT INTERACTION [ING-INF/05] [ENG] | 1º | 2º | 6 |
Obiettivi formativi Contents
The main content of the course is summarized below.
Introduction to HCI and HRI
Human factors and engineering design
Interface design, usability evaluation, universal design, multimodal interfaces (touch, vision, natural language and 3-D audio)
Virtual reality and spatial displays
Embodiment and anthropomorphism
Perception of human behavior
Multimodal interaction
HCI and HRI applications
User studies and evaluation methods
Ethical and social implications of HMI
Associated skills
Knowledge and understanding:
The course offers an overview of different research topics in HCI and HRI and, more specifically, in using Artificial Intelligence techniques to model and reason about human-machine interaction tasks. Techniques for requirement collection and analysis, goal and task models, interaction and system models, multimodal and personalized interactions, methods for usability evaluation will be examined. Some advanced issues in HCI and HRI, such as cooperative systems, immersive and ubiquitous environments, intelligent interfaces, social interactions, etc., will also be addressed. The topics are covered by researchers in the field who will introduce the student to research problems and recent and relevant applications in HCI, HRI and AI.
Applied knowledge and understanding:
The course provides the knowledge necessary to undertake research work in these fields using practical tools for experimental validation, including understanding the concepts of HMI and usability, conducting a research project of an interactive interactive system following the UCD methodology, and reporting the results according to scientific standards.
Critical and judgment skills:
The course proposes advanced methods to study, understand and apply results reported on scientific articles, and integrate these results to create innovative HCI, HRI and AI applications. The student learns how to use results from the literature as a basis for new research and how to evaluate the usability of an interactive system and its adequacy with respect to the goals and tasks of end users and stakeholders.
Communication skills:
Group activities in the classroom and the need to make presentations to the class allow the student to develop the ability to communicate and share the knowledge acquired and to compare themselves with others on the topics of the course. In particular, the project activities and the course homeworks allow the student to be able to collaborate in the design and development of an interactive system.
Learning ability:
In addition to the classic learning skills provided by the theoretical study of the teaching material, the course develops methods to stimulate the student to deepen his knowledge of some of the topics she presents to the course and to the work group. Furthermore the course stimulates the student to effectively apply both the concepts and the techniques learned during the course in homeworks and in a research project.
Learning outcomes
Understand motivations, opportunities and limits of HMI applications
Identify the appropriate models and algorithms to solve a specific HMI problem
Evaluate the performance of HMI systems
Present the result of an HMI study according to scientific standards.
Describe limitations of a given HMI solution
Organize and conduct an oral presentation of a research paper
Develop a research project in HMI and AI and present the results
|
| 10600392 | ARTIFICIAL INTELLIGENCE [ING-INF/05] [ENG] | 1º | 2º | 6 |
Obiettivi formativi Obiettivi generali:
Conoscere i principi di base dell'intelligenza artificiale, in particolare la modellazione di sistema intelligente tramite la nozione di agente intelligente.
Conoscere le tecniche di base dell'Intelligenza Artificiale con particolare riferimento alla manipolazione di simboli e, più in generale, a modelli discreti.
Conoscere i principi fondamentali della interazione tra agenti intelligenti ed in particolare tra agente intelligente e uomo, attraverso il linguaggio parlato.
Obiettivi specifici:
Conoscenza e comprensione:
Metodi di ricerca automatica nello spazio degli stati: metodi generali, metodi basati su euristiche, ricerca locale.Rappresentazioni fattorizzate: problemi di soddisfacimento di vincoli, modelli di pianificazione.
Rappresentazione della conoscenza attraverso sistemi formali: logica proposizionale, logica del primo ordine, cenni alle logiche descrittive ad alle forme di ragionamento non monotono. Uso della logica come linguaggio di programmazione: PROLOG.
Cooperazione e coordinamento tra agenti intelligenti, distribuzione di compiti, soddisfacimento distribuito di vincoli, analisi lessicale, sintattica e semantica del linguaggio parlato.
Applicare conoscenza e comprensione:
Modellazione di problemi con i diversi metodi di rappresentazione acquisiti.
Analisi del comportamento degli algoritmi di ragionamento di base.
Progetto e realizzazione di sistemi per l'interazione tra molti agenti.
Capacità critiche e di giudizio:
Essere in grado di valutare la qualità di un modello di rappresentazione di un problema e dei risultati ottenuti applicando su di esso tecniche di ragionamento automatico.
Analisi e valutazione degli elementi salienti della interazione tra molti agenti.
Capacità comunicative:
Le capacità di comunicazione orale dello studente vengono stimolate attraverso l'interazione durante le lezioni tradizionali mentre le capacità espositive nello scritto vengono sviluppate attraverso la discussione di esercizi e delle domande a risposta aperta previste nelle prove di esame.
Le capacità comunicative vengono infine consolidate attraverso la presentazione di un progetto, realizzato anche in gruppo, e del report scritto ad esso associato.
Capacità di apprendimento:
Oltre alle classiche capacità di apprendimento fornite dallo studio teorico del materiale didattico, attraverso gli esercizi relativi all'applicazione dei modelli appresi, il corso contribuisce a sviluppare le capacità di risoluzione di problemi dello studente.
Il progetto e realizzazione di un prototipo di sistema di interazione contribuiscono all'apprendimento della capacità di lavorare in gruppo.
|
| 1023325 | VISION AND PERCEPTION [ING-INF/05] [ENG] | 1º | 2º | 6 |
Obiettivi formativi OBIETTIVI GENERALI
Il corso vuole introdurre lo studente ai concetti fondamentali della visione artificiale e alla costruzione di sistemi autonomi di interpretazione e ricostruzione di una scena tramite immagini e video. Il corso affronta elementi di base di geometria proiettiva ed epipolare, i metodi per la visione 3d e per la visione basata su più viste, e i metodi per la ricostruzione metrica e le metodologie di interpretazione di immagini e video. Inoltre il corso illustra le tecniche principali per il riconoscimento e la segmentazione di immagini e video basati sull’ apprendimento automatico.
OBIETTIVI SPECIFICI
Conoscenza e Comprensione
Il corso stimola la curiosità degli studenti verso nuove metodologie per l’analisi e la generazioni di immagini
e di video. Lo studente apprende nuovi concetti che gli permettono di acquisire una conoscenza di base della
visione computazionale.
Applicare Conoscenza e Comprensione
Gli studenti approfondiscono e apprendono linguaggi di programmazione per applicare la conoscenza acquisita.
In particolare approfondiscono il linguaggio Python ed apprendono Tensorflow. Quest’ ultimo offre agli studenti
la possibilità di programmare applicazioni di deep learning. Usano questa nuovissima tecnologia per realizzare
un progetto di riconoscimento di elementi specifici in immagini e video.
Capacità critiche e di Giudizio
Lo studente acquisisce la capacità di distinguere tra ciò che può realizzare con gli strumenti che ha appreso,
come ad esempio generare delle immagini o riconoscere degli oggetti usando tecniche di deep learning,
e ciò che è effettivamente richiesto per la realizzazione di un sistema automatico di visione.
In tal modo è in grado di elaborare un giudizio critico sui sistemi di visione disponibili allo stato
dell’arte e di valutare ciò che si può effettivamente realizzare e ciò che richiede ulteriori avanzamenti
nella ricerca.
Capacità Comunicative
La realizzazione del progetto, come parte del programma di esame, richiede che lo studente lavori e dia un
contributo all’ interno di un piccolo gruppo di lavoro. Questo insieme alla soluzione di esercizi in classe,
e alle discussioni sui temi più interessanti stimola le capacità comunicative dello studente.
Capacità di Apprendimento
Oltre alle classiche capacità di apprendimento fornite dallo studio teorico del materiale didattico,
le modalità di svolgimento del corso, in particolare le attività progettuali, stimolano lo studente
all'approfondimento autonomo di alcuni argomenti presentati nel corso, al lavoro di gruppo, e all'applicazione
concreta delle nozioni e delle tecniche apprese durante il corso.
|
| 1044398 | INTERACTIVE GRAPHICS [ING-INF/05] [ENG] | 1º | 2º | 6 |
Obiettivi formativi Obiettivi generali:
Far acquisire allo studente le basi della programmazione in grafica 3D con particolare enfasi sulle tecniche di animazione e visualizzazione interattiva. In particolare gli argomenti trattati includono: Fondamenti della grafica computerizzata, rendering interattivo e animazione, la pipeline grafica, trasformazioni, visualizzazioni, rasterizzazione, illuminazione e shading, texture-mapping, tecniche di animazione basate su keyframes, simulazioni fisiche, sistemi di particelle ed animazione di personaggi. Verrà inoltre fornita un’introduzione alla computazione su hardware specializzato per la grafica (GPGU).
Obiettivi specifici:
Far acquisire allo studente familiarità con le tecniche matematiche alla base della grafica 3D, oltre che la capacità di programmare ambienti complessi ed interattivi in grafica 3D usando la libreria OpenGL o una delle sue varianti
Conoscenza e comprensione:
Approfondimento del funzionamento di un sistema per la grafica 3D nelle sue componenti hardware e software. Conoscenza dello standard HTML5 e del linguaggio Javascript, applicazione della libreria WebGL e di alcune librerie di più alto livello. Comprensione delle problematiche di efficienza e qualità visiva delle applicazioni in grafica 3D
Applicare conoscenza e comprensione:
Sviluppo di applicazioni interattive sul web in grafica 3D.
Capacità critiche e di giudizio:
Capacità di comprendere le complessità tecniche nella realizzazione di applicazioni interattive in grafica 3D. Capacità di analisi critica delle soluzioni presenti sul mercato ed analisi di punti di forza e debolezza.
|
| 10610045 | MACHINE LEARNING IN PRACTICE [ING-INF/05] [ENG] | 1º | 2º | 6 |
Obiettivi formativi Aims
At the end of this course, the student is able to
reason and argue about what type of algorithms and efficient source code to be developed and applied when tackling real-life machine learning tasks;
understand the principles underlying effective machine learning methods;
use and adapt state-of-the-art machine learning algorithms to tackle a challenge;
properly evaluate a machine learning algorithm's performance in a real-life context.
Content
Machine learning addresses the fundamental problem of developing computer algorithms that can harness the vast amounts of digital data available in the 21st century and then use this data in an intelligent way to solve a variety of real-world problems. Examples of such problems are recommender systems, (neuro) image analysis, intrusion detection, spam filtering, automated reasoning, systems biology, medical diagnosis, speech analysis, and many more. The goal of this course is to learn how to tackle specific real-life problems through the selection and application of state-of-the-art machine learning algorithms, notably by entering international machine learning competitions organized at Kaggle.
|
| 10610044 | NATURAL COMPUTING [ING-INF/05] [ENG] | 1º | 2º | 6 |
Obiettivi formativi Aims
On completion of the course students should be able to:
Outline core Natural Computing approaches and algorithms
Compare and contrast different Natural Computing approaches
Solve optimization problems using Natural Computing methods
Design an experiment in Natural Computing
Perform simple simulations of biological systems
Write an academic paper on this subject
Content
The field of Natural Computing concerns the development of algorithms inspired by Nature, including Biological, Social and Physical systems. These algorithms draw metaphorical inspiration from various aspects of nature, including the operation of biological neurons, processes of evolution, and models of social interaction amongst organizations. They are used to tackle complex real-world problems. This course provides a description of core Natural Computing approaches, like evolutionary algorithms, immunocomputing and cellular automata, which can be used by the students to tackle a real-world problem.
|
| 10610043 | PHYSICAL ASPECTS ON SECURE SYSTEMS [ING-INF/05] [ENG] | 1º | 2º | 6 |
Obiettivi formativi Aims
At the end of the course students can:
• understand the vulnerabilities and adversarial models for embedded (crypto) devices, and explain the objectives for protecting those devices against implementation attacks
• explain currently known attacks on small devices and associated countermeasures;
• carry out side-channel and fault injection attacks on smartcards i.e. microcontrollers.
• use statistics and machine learning techniques when performing the attacks
Content
Our daily business relies on the devices we carry on us, such as bank, ID and transportation cards, car keys, and mobile phones. All those devices use secret (cryptographic) keys that are not accessible from the outside. Getting a hold of the key allows a hacker to steal our data or take control of a self-driving car or a pacemaker.
The majority of real-world attacks on security implementations use side-channel analysis, i.e., they measure and process physical quantities, like the power consumption or electromagnetic emanations of a chip, or reaction time of a process. Preventing this kind of leakages and side-channel attacks in general remains a great challenge as effective mitigations are often prohibitively expensive in terms of power and energy resources.
This course treats security aspects of embedded cryptographic device, including hardware and software, certification and security evaluation and the security objectives these are meant to provide, and attack techniques and countermeasures, especially side-channel and fault attacks.
We cover all implementation attacks on embedded systems, including state of the art methods using machine/deep learning and fault injection.
The course includes practical lab assignments where students perform the attacks on physical targets.
|
| 10610042 | APPLIED CRYPTOGRAPHY [ING-INF/05] [ENG] | 1º | 2º | 6 |
Obiettivi formativi Aims
After the course, the student should understand the ideas and workings of public and secret-key cryptography in the IT security sector.
Content
The course covers the following topics:
Symmetric cryptography: encryption, authentication, hashing, ...
Public key cryptography and post-quantum cryptography: encryption, signatures, KEMS, ...
Security notions like existential forgery, IND-CCA, zero-knowledge, etc.
Security proofs
Protocols, like challenge-response protocols, proofs of knowledge, etc.
Real-world protocols, like TLS, secure messaging, etc.
|
| 10610171 | BIG DATA [ING-INF/05] [ENG] | 1º | 2º | 6 |
Obiettivi formativi Content (Syllabus outline):
Introduction to big data. Characteristics of big data. Big data and data science. Relational databases and big data. Distributed data systems. Hadoop ecosystem.
Big data management. Structured and semi-structured data models. Non-relational (NoSQL) data models. Data models and database systems for big data. Domain-specific languages for big data. Monitoring big data systems.
Big data processing. Querying and retrieval.
Paradigms for computing with data. Processing pipelines and aggregators. Basic algorithmic building blocks and patterns. Hadoop. Spark.
Data analytics with big data. Data analytics tools. Basic statistics. Clustering. Associations. Predictive modeling. Spark machine learning library MLib.
Big data and graph analytics. NoSQL graph databases for big data. Neo4j graph database. Graph querying with CYPHER. Basic graph analytics with Neo4j and CYPHER.
Practical aspects of big data analytics. Processing heterogeneous data. Processing data streams.
|
| 10610172 | NATURAL LANGUAGE PROCESSING [ING-INF/05] [ENG] | 1º | 2º | 6 |
Obiettivi formativi Content (Syllabus outline):
The syllabus is based on a selection of modern statistical natural learning techniques and their practical use. The lectures introduce the main tasks and techniques, explain their operation and theoretical background. During practical sessions and seminars the gained knowledge is applied to language practical task using open source tools. Student investigate and solve assignments, based on real-world research and commercial problems form English and Slovene languages.
Introduction to natural language processing: motivation, language understanding, Turing test, traditional and statistical approaches.
Language resources: corpuses, dictionaries, thesauruses, networks and semantic data bases, overview of tools.
Linguistics: phonology and morphology, syntactical analysis, formal grammars.
Using automata and grammars: automata and algorithms for searching strings, syntax parsing, dependency parsing.
Part-of-speech tagging: types of tags, lemmatization, ngrams, Hidden Markov model, rule-based tagging.
Computational and lexical semantics: semantic representations, rule-to-rule approaches, semantic role labelling.
Clustering words and text similarity measures: cosine distance, language networks and graphs, WordNet, vector representation, vector weighting, sematic correlation.
Text mining: adaptation of classification methods to the specifics of text, support vector machines for language, feature selection.
Deep networks for text: document representations for deep neural networks, autoencoders, recurrent neural networks.
Text summarization: text representations, matrix factorization, multi-document summarization, extractive methods, query based methods.
Machine translation: language model, translation model, alignment model, challenges in machine translation.
Augmenting text with other data sources: heterogeneous networks, word2vec representation, heterogeneous ensembles of classifiers, link analysis.
Methodology and evaluation in NLP.
|
| 10610041 | MACHINE LEARNING FOR DATA SCIENCE I [ING-INF/05] [ENG] | 1º | 2º | 6 |
Obiettivi formativi Content (Syllabus outline):
Linear models. Linear regression. Linear discriminant analysis. Logistic regression. Gradient descent. Stochastic gradient descent.
The machine learning approach. Cost functions. Empirical risk minimization. Maximum likelihood estimation. Model evaluation. Cross-validation.
Feature selection. Search-based feature selection. Regularization.
Tree-based models. Decision trees. Random forest. Bagging. Gradient tree boosting.
Clustering. k-means. Expectation Maximization.
Non-linear regression. Basis functions. Splines. Support vector machines. Kernel trick.
Neural networks. Perceptron. Activation functions. Backpropagation.
|
| 10610040 | DATA SCIENCE PROJECT [ING-INF/05] [ENG] | 1º | 2º | 6 |
Obiettivi formativi Content (Syllabus outline):
Students select project theme and work in groups to complete the project. Students present their midterm progress and results. Students complete the Project with a public presentation of their work.
Project themes are compiled by the lecturer from proposals by faculty members and industry.
Perez-Riverol Y, Gatto L, Wang R, Sachsenberg T, Uszkoreit J, Leprevost FdV, et al. (2016) Ten Simple Rules for Taking Advantage of Git and GitHub. PLoS Comput Biol 12(7): e1004947.
Sandve GK, Nekrutenko A, Taylor J, Hovig E (2013) Ten Simple Rules for Reproducible Computational Research. PLoS Comput Biol 9(10): e1003285.
Vicens Q, Bourne PE (2007) Ten Simple Rules for a Successful Collaboration. PLoS Comput Biol 3(3): e44.
Taschuk M, Wilson G (2017) Ten simple rules for making research software more robust. PLoS Comput Biol 13(4): e1005412.
Bourne PE (2007) Ten Simple Rules for Making Good Oral Presentations. PLoS Comput Biol 3(4): e77.
|