Laurea Magistrale in Intelligenza Artificiale E Innovazione Digitale

Insegnamenti matricole

Nel corso di laurea potrai seguire questi insegnamenti a seconda del piano di studi che sceglierai. Cliccando su ciascuno, si aprirà una breve scheda descrittiva.

×
Stampa
Insegnamento
FILOSOFIA DELLA SCIENZA
Codice
MF0650
Anno Accademico
2025/2026
Anno regolamento
2025/2026
Corso di studio
INTELLIGENZA ARTIFICIALE E INNOVAZIONE DIGITALE
Curriculum
000-GENERICO
Responsabile didattico
BENZI MARGHERITA
CFU
6.0
Ore di lezione
48.0
Ore di studio individuale
102.0
Settore Scientifico Disciplinare (SSD)
M-FIL/02 - LOGICA E FILOSOFIA DELLA SCIENZA
Tipo di insegnamento
Attività formativa monodisciplinare
Fruizione insegnamento
OPZ
Categoria insegnamento
C
Anno
1
Periodo
Primo Semestre
Sede
VERCELLI
Tipo di valutazione
V
Lingua insegnamento/Teaching language
ITALIANO
Italian
Contenuti/Content Summary
Definire con precisione il metodo scientifico, distinguere la scienza dalla pseudoscienza, quali strategie di ragionamento (deduttivo, induttivo, causale, .) siano applicabili nei diversi contesti scientifici sono alcuni dei problemi che da più di un secolo vedono impegnata la filosofia della scienza. La trasformazione digitale che stiamo vivendo ha indotto profondi cambiamenti nella ricerca scientifica, che riguardano da un lato la sfera concettuale e metodologica, dall’altro la relazione tra scienza, società e istituzioni. Il corso si articola quindi in tre momenti: una introduzione ai problemi classici della filosofia della scienza, una riflessione sui nuovi problemi legati alla rivoluzione digitale, e una riflessione sul rapporto tra ricerca scientifica e società in una fase di profondo mutamento di entrambe.
The precise definition of the scientific method and the distinction between science and pseudoscience are some of the problems that have engaged the philosophy of science for more than a century, as have the applicable reasoning strategies (deductive, inductive, causal, etc.) in different scientific contexts. The digital transformation that we are currently experiencing has brought about profound changes to scientific research, affecting both the conceptual and methodological spheres and the relationship between science, society, and institutions. This course is therefore divided into three sections: an introduction to classical philosophical problems, reflections on new problems linked to the digital revolution and reflections on the relationship between scientific research and society during a period of profound change for both.
Testi di riferimento/Textbooks
- S. Okasha, Philosophy of science. A very short Introduction. Oxford University Press 2002, trad. it: Il mio primo libro di filosofia della scienza, Einaudi 2006 (o altre edizioni), capp.1, 2, 3, 5, 7. - S. Leonelli, La ricerca scientifica nell'era dei big data. Meltemi 2018. - Slides delle lezioni ed altro materiale pubblicato dalla docente su DIR.
S. Okasha, Philosophy of science. A very short Introduction. Oxford University Press 2002, transl. it: Il mio primo libro di filosofia della scienza, Einaudi 2006 (or other editions), chap.1, 2, 3, 5, 7. S. Leonelli, La ricerca scientifica nell'era dei big data. Meltemi 2018. Lecture slides and other material posted on DIR.
Obiettivi formativi/Mission
Conoscenza e comprensione: introduzione alle principali tematiche sulle quali si confrontano da tempo filosofi e scienziati impegnati nelia ricerca sull'intelligenza artificiale; tra queste, le definizioni di intelligenza e razionalità, la relazione dati-teorie, le diverse forme del ragionamento scientifico (inferenze induttive, deduttive, abduttive e basate sull’analogia) e i relativi contesti di applicazione, i fondamenti filosofici delle diverse nozioni di probabilità e di incertezza, i concetti di causa e di spiegazione, e il ruolo dei valori nella scienza. Tali tematiche saranno trattate in riferimento ai ‘nuovi’ problemi epistemologici sollevati dall’intelligenza artificiale, aprendo la via a loro una loro più ampia comprensione di aspetti centrali quali la spiegabilità, la causalità e i rispettivi ruoli di dati, modelli e teorie nella produzione di conoscenza. Sotto il profilo etico, sarà esplorata la componente epistemologica dei problemi etici posti dall’intelligenza artificiale, con particolare focus su problemi di etica dlla ricerca. Capacità di applicare conoscenza e comprensione: capacità di riconoscere i nuovi problemi concettuali ed etici generati in ambito scientifico dalla trasformazione digitale; capacità di riconoscere bias cognitivi, pregiudizi ed elementi discriminatori in artefatti digitali; capacità di partecipare a gruppi di studio /lavoro interdisciplinari. Autonomia di giudizio: Il corso mira a promuovere una forte autonomia di giudizio nel riconoscere, analizzare e comunicare possibili criticità etiche ed epistemologiche relative a metodi e applicazioni in diversi ambiti dell’ intelligenza artificiale; mira altresì a contribuire alla formazione di un atteggiamento che non si limiti ad accettare i risultati dell’intelligenza artificiale, ma che collabori ad esplicitare le premesse e i principi spesso applicati in maniera inconsapevole nei suoi prodotti. Abilità comunicative: capacità di presentare le proprie conoscenze e tesi in maniera chiara ed articolata, capacità di intervento in occasione eventi di public engagement su aspetti etici e filosofici della digitaliizzazione, capacità di comunicare efficacemente con membri di work teams con diversa formazione e provenienza. Apprendimento: il corso offre gli strumenti concettuali di base necessari per seguire il dibattito presente e gli aggiornamenti futuri sui principali probemi epistemologici ed etici posti dalla digitalizzazione; aiuta a comprendere le motivazioni poste alla base di provvedimenti legislativi e regolatori in questo ambito.
Knowledge and understanding: an introduction to the main issues that philosophers and scientists involved in artificial intelligence research have been debating for some time; these include the definitions of intelligence and rationality, the relationship between data and theories, the different forms of scientific reasoning (inductive, deductive, abductive and analogy-based inferences) and their contexts of application, the philosophical foundations of the different notions of probability and uncertainty, the concepts of cause and explanation, and the role of values in science. These issues will be addressed with reference to the “new” epistemological problems raised by artificial intelligence, paving the way for a broader understanding of central aspects such as explicability, causality and the respective roles of data, models and theories in the production of knowledge. From an ethical perspective, the epistemological component of the ethical problems posed by artificial intelligence will be explored, with a particular focus on research ethics issues. Ability to apply knowledge and understanding: ability to recognise the new conceptual and ethical problems generated in the scientific field by the digital transformation; ability to recognise cognitive biases, prejudices and discriminatory elements in digital artefacts; ability to participate in interdisciplinary study/work groups. Autonomia di giudizio: Il corso mira a promuovere una forte autonomia di giudizio nel riconoscere, analizzare e comunicare possibili criticità etiche ed epistemologiche relative a metodi e applicazioni in diversi ambiti dell’ intelligenza artificiale; mira altresì a contribuire alla formazione di un atteggiamento che non si limiti ad accettare i risultati dell’intelligenza artificiale, ma che collabori ad esplicitare le premesse e i principi spesso applicati in maniera inconsapevole nei suoi prodotti. Abilità comunicative: capacità di presentare le proprie conoscenze e tesi in maniera chiara ed articolata, capacità di intervento in occasione eventi di public engagement su aspetti etici e filosofici della digitaliizzazione, capacità di comunicare efficacemente con membri di work teams con diversa formazione e provenienza. Apprendimento: il corso offre gli strumenti concettuali di base necessari per seguire il dibattito presente e gli aggiornamenti futuri sui principali probemi epistemologici ed etici posti dalla digitalizzazione; aiuta a comprendere le motivazioni poste alla base di provvedimenti legislativi e regolatori in questo ambito.
Prerequisiti/Required background knowledge
Interesse per le caratteristiche della conoscenza scientifica e per le implicazioni etiche della scienza e della tecnologia.
An interest in the characteristics of scientific knowledge, as well as the ethical implications of science and technology.
Metodi didattici/Teaching methods
Lezioni frontali, anche con uso di audiovisivi e lavoro di gruppo. La presentazione e discussione da parte delle studentesse e degli studenti di saggi su temi concordati con la docente sono considerate forme di controllo in itinere dell'apprendimento. Saranno altresì valutate la partecipazione attiva alle lezioni e alla discussione in classe.
Lectures, in-class discussion of some of the topics covered, and student-produced essays on topics previously agreed upon with the lecturer. Lecture slides and any suggested supplementary readings will be posted on the DIR platform to enable students who cannot attend to follow the course proceedings.
Altre informazioni/Further information
Le studentesse e gli studenti sono invitati a seguire gli aggiornamenti della pagina del corso pubblicata su DIR per il materiale integrativo e di supporto alle lezioni nonché per il programma dettagliato. Le studentesse e gli studenti con disabilità o con Disturbi Specifici dell’Apprendimento (DSA) o con Bisogni Educativi Speciali (BES) possono richiedere servizi e strumenti specifici a loro dedicati rivolgendosi allo Staff Sviluppo e Coordinamento Carriere e Servizi alle Studentesse e agli Studenti e consultando la pagina dedicata del sito di Ateneo: https://uniupo.it/it/servizi/servizi-studenti-disabili-e-dsa Le studentesse e gli studenti con disabilità, DSA, BES possono inoltre contattare la/il docente titolare dell’insegnamento in relazione alla declinazione delle modalità di esame.
Students with disabilities or Specific Learning Disorders (DSA) or Special Educational Needs (BES) may request specific services and tools dedicated to them by contacting the Career Development and Coordination Staff and Student Services and by consulting the dedicated page on the University website: https://uniupo.it/it/servizi/servizi-studenti-disabili-e-dsa Students with disabilities, DSA, BES may also contact the teacher in charge of the course in relation to the examination procedures.
Modalità di verifica dell'apprendimento/Assessment methods
Esame orale, consistente in sei domande circa. Le risposte verranno valutate secondo i seguenti criteri: correttezza, proprietà di linguaggio, capacità di elaborazione autonoma. Per coloro che frequentano e presentano una relazione in classe su argomenti concordati con la docente è previsto un numero minore di domande, su argomenti diversi da quelli trattati nella relazione.
The oral examination will consist of approximately six questions. Answers will be assessed according to the following criteria: correctness; use of language; and capacity for autonomous elaboration. Those who attend and present a report on a topic agreed with the lecturer will be asked fewer questions on topics other than those covered in the report.
Programma esteso/Content
1. IL RAGIONAMENTO SCIENTIFICO: Inferenze deduttive, induttive e abduttive La probabilità e le sue interpretazioni modelli 2. TEORIE E MODELLI: Le teorie scientifiche. I modelli. La scoperta scientifica. Rivoluzioni scientifiche. Il controllo delle teorie: esperimenti e simulazioni. 3. I DATI: Come definire i dati. La funzione dei dati. La costruzione dei dati. Big data: una nuova rivoluzione scientifica? Quando i big data danneggiano la qualità della ricerca. 4. SPIEGAZIONE E PREVISIONE: Una scienza senza teorie? Correlare e prevedere. E’ necessaria la spiegazione? Spiegazione ed explainability 5. CAUSALITA:’ Definizioni della causalità per usi scientifici e tecnologici. Approcci formali (cenni) 6. I VALORI NELLA SCIENZA: Scienza e società. Problemi etici. Responsabilità.
1. SCIENTIFIC REASONING: Deductive, inductive and abductive inferences Probability and its interpretations models 2. THEORIES AND MODELS: Scientific theories. Models. Scientific discovery. Scientific revolutions. The testing of theories: experiments and simulations. 3. DATA: How to define data. The function of data. The construction of data. Big data: a new scientific revolution? When big data damages the quality of research. 4. Explaining and predicting: A science without theories? . Is explanation necessary? Explanation and explainability 5. CAUSALITY:' Definitions of causality for scientific and technological uses. Formal approaches (outline) 6. VALUES IN SCIENCE: Science and society. Ethical issues. Accountab
Risultati di apprendimento attesi/Intended learning objectives
Conoscenza degli argomenti citati sopra, con particolare riguardo agli elementi-base della filosofia della scienza e la discussione corrente sui principali temi etici ed epistemologici della filosofia dell’intelligenza artificiale Competenze ed abilità Competenze - Essere in grado di comprendere e aggiornarsi sui temi oggetto del corso; di applicare adeguati metodi di studio e dibattito critico, di servirsi di opportuni strumenti bibliografici e altre fonti informazione, di comunicare adeguatamente nelle sedi di discussione delle tematiche trattate nei punti precedenti. Abilità - Miglioramento delle capacità critiche. Organizzazione autonoma di approfondimenti sulle tematiche trattate, apprendimento, elaborazione di giudizi autonomi, giustificati ed informati sulle tematiche sopra esposte, capacità argomentative ed espositive in ambito scritto e orale adeguate all’interlocutore, contribuire proficuamente e produttivamente alle attività di team-work interdisciplinare.
Knowledge of the topics mentioned above, with particular regard to the basic elements of the philosophy of science and the current discussion of the main ethical and epistemological issues in the philosophy of artificial intelligence Competences - To be able to understand and keep abreast of the topics covered in the course; to apply appropriate methods of study and critical debate, to make use of appropriate bibliographical tools and other information sources, to communicate adequately in the forums for discussion of the topics covered in the previous points. Skills - Improvement of critical skills. Autonomous organisation of in-depth studies on the topics dealt with, learning, elaboration of autonomous, justified and informed judgements on the above topics, argumentative and expositive abilities in written and oral contexts appropriate to the interlocutor, contributing profitably and productively to interdisciplinary team-work activities.
×
Stampa
Insegnamento
STATISTICA COMPUTAZIONALE
Codice
MF0649
Anno Accademico
2025/2026
Anno regolamento
2025/2026
Corso di studio
INTELLIGENZA ARTIFICIALE E INNOVAZIONE DIGITALE
Curriculum
000-GENERICO
Responsabile didattico
BONGIORNO Enea Giuseppe
CFU
6.0
Ore di lezione
48.0
Ore di studio individuale
102.0
Settore Scientifico Disciplinare (SSD)
SECS-S/01 - STATISTICA
Tipo di insegnamento
Attività formativa monodisciplinare
Fruizione insegnamento
OPZ
Categoria insegnamento
C
Anno
1
Periodo
Primo Semestre
Sede
VERCELLI
Tipo di valutazione
V
Lingua insegnamento/Teaching language
ITALIANO
Italian
Contenuti/Content Summary
Introduzione alla statistica computazionale con particolare attenzione a modelli e algoritmi di generazione di variabili casuali, visualizzazione di dati multivariati, inferenza statistica, metodi Monte Carlo, metodi di ricampionamento. Le metodologie studiate a lezione verranno implementate usando il software statistico R.
Introduction to computational statistics with particular attention to models and algorithms to generate random variables, multivariate data visualization, statistic inference, Monte Carlo methods, resampling. Introduced methodologies will be implemented by means of the statistical software R.
Testi di riferimento/Textbooks
- M. L. Rizzo (2019): Statistical Computing with R, Second Edition. Chapman & Hall, Boca Raton. - Materiale a cura del docente.
- M. L. Rizzo (2019): Statistical Computing with R, Second Edition. Chapman & Hall, Boca Raton. - Lecture notes.
Obiettivi formativi/Mission
Gli obiettivi formativi del corso sono (declinati secondo i descrittori di Dublino): • Conoscenza e capacità di comprensione: conoscere e comprendere i metodi statistici introdotti, • Capacità di applicare conoscenza e comprensione: saperli implementare e interpretare in scenari simulati e reali, • Autonomia di giudizio: saper valutare autonomamente quando le metodologie sono applicabili • Abilità comunicative: saper comunicare anche a non esperti i risultati, i vantaggi e i limiti delle metodologie implementate • Capacità di apprendimento: saper estendere i concetti e le idee viste nel corso a nuovi contesti.
The goals of the course are (Dublin descriptors) • knowledge and understanding: know the introduced statistical techniques • applying knowledge and understanding: know how to implement and interpret them in real and simulated scenarios • making judgements: be able to make autonomously judgements on the use of the introduced methodologies • communication skills: know how to communicate the results, advantages and limitations of the methodologies implemented even to non-experts • learning skills: know how to extend the concepts and ideas seen in the course to new settings.
Prerequisiti/Required background knowledge
Fondamenti di matematica, probabilità e statistica.
Fundamentals of mathematics, probability and statistics.
Metodi didattici/Teaching methods
Lezioni teoriche frontali ed esercitazioni in laboratorio. La frequenza alla lezioni è fortemente raccomandata.
Both theoretical and practical classes will be held in a computer lab. Frequency of lessons is highly recommended.
Altre informazioni/Further information
Per ulteriori informazioni (come i collegamenti alle pagine web dei software utilizzati), si prega di consultare la pagina del corso su D.I.R. all’indirizzo: https://dir.uniupo.it/ Le studentesse e gli studenti con disabilità o con Disturbi Specifici dell’Apprendimento (DSA) o con Bisogni Educativi Speciali (BES) possono richiedere servizi e strumenti specifici a loro dedicati rivolgendosi allo Staff Sviluppo e Coordinamento Carriere e Servizi alle Studentesse e agli Studenti e consultando la pagina dedicata del sito di Ateneo: https://uniupo.it/it/servizi/servizi-studenti- disabili-e-dsa Le studentesse e gli studenti con disabilità o con Disturbi Specifici dell’Apprendimento (DSA) o con Bisogni Educativi Speciali (BES) possono richiedere servizi e strumenti specifici a loro dedicati rivolgendosi allo Staff Sviluppo e Coordinamento Carriere e Servizi alle Studentesse e agli Studenti e consultando la pagina dedicata del sito di Ateneo: https://uniupo.it/it/servizi/servizi-studentidisabili-e-dsa Le studentesse e gli studenti con disabilità, DSA, BES, una volta preso contatto con lo Staff di Ateneo, possono contattare la/il docente titolare dell'insegnamento in relazione alla declinazione delle modalità di esame, in merito agli aspetti didattici.
Further informations (such as link to software website) can be found at the web page of the course: https://dir.uniupo.it/ Students with physical disabilities, Learning Disabilities or Special Education Needs can request specific services and tools via the Staff Sviluppo e Coordinamento Carriere e Servizi alle Studentesse e agli Studenti, consulting the University webpage: https://www.uniupo.it/en/services/services- students-physical-or-learning-disabilities Students with physical disabilities, Learning Disabilities or Special Education Needs can request specific services and tools via the Staff Sviluppo e Coordinamento Carriere e Servizi alle Studentesse e agli Studenti, consulting the University webpage: https://www.uniupo.it/en/services/servicesstudents-physical-or-learning-disabilities Students with disabilities, learning disabilities or special education needs, once they have contacted the University Staff, can refer to the tutor in charge of the course to define the examination modalities, concerning academic aspects.
Modalità di verifica dell'apprendimento/Assessment methods
L'esame è costituito da una prova orale consistente in domande teoriche e nella discussione di un eventuale elaborato.
The exam is formed by an oral examination that consists in theoretical questions and in a discussion about a possibly essay.
Programma esteso/Content
0. Introduzione ad R. 1. Manipolazione dei dati in R. Visualizazione dei dati (elementi di statistica descrittiva). 2. Metodi di generazione dei dati. 3. Statistica Inferenziale (stima puntuale, test di Ipotesi, metodi (non-)parametrici) 4. Introduzione ai processi stocastici (Catene di Markov discrete e continue) 5. Introduzione alla statistica Bayesiana e tecniche MCMC (Monte Carlo Markov Chain) 6. Tecniche di ricampionamento (bootstrap e jackknife). Gli argomenti del corso potranno subire modifiche a seconda delle esigenze didattiche che emergono durante lo svolgimento dello stesso.
0. Introduction to R. 1. Data manipulation in R. Visualization of data (elements of descriptive Statistics). 2. Generating data. 3. Inferential statistics (point estimation, Hypothesis test, (non-)parametric methods) 4. Introduction to stochastic processes (Discrete and continuous time Markov Chains) 5. Introduction to Bayesian statistics and simple Monte Carlo Markov Chain (MCMC) techniques 6. Resampling tecniques (bootstrap and jackknife) The topics of the course may undergo changes according to the didactic needs that emerge during the course.
Risultati di apprendimento attesi/Intended learning objectives
Alla fine del corso si dovrebbero avere acquisito le seguenti: • Conoscenze: conoscere le motivazioni e le applicazioni principali che necessitano l’introduzione di metodi per generare numeri casuali, per simulazioni montecarlo e di ricampionamento. • Competenze ed abilità: saper valutare gli ambiti di applicazione, implementare e interpretare, in scenari simulati e reali, le metodologie viste. Saper comunicare, anche a non esperti, i risultati, i vantaggi e i limiti delle metodologie implementate. Saper estendere i concetti e le idee viste nel corso a nuovi contesti.
At the end of the classes, students should (Dublin descriptors) • Knowledge: know the main reasons and applications that require the introduction of methods for generating random numbers, for Monte Carlo simulations and for resampling. • Skills and abilities: knowing how to evaluate the areas of application, implement and interpret, in simulated and real scenarios, the methodologies tackle in classes. Knowing how to communicate, even to non-experts, the results, advantages and limitations of the methodologies implemented. Knowing how to extend the concepts and ideas seen in the course to new contexts.
×
Stampa
Insegnamento
APPRENDIMENTO AUTOMATICO E APPRENDIMENTO PROFONDO
Codice
MF0616
Anno Accademico
2025/2026
Anno regolamento
2025/2026
Corso di studio
INTELLIGENZA ARTIFICIALE E INNOVAZIONE DIGITALE
Curriculum
000-GENERICO
Responsabile didattico
PORTINALE Luigi
Docenti
CFU
9.0
Ore di lezione
72.0
Ore di studio individuale
153.0
Settore Scientifico Disciplinare (SSD)
INF/01 - INFORMATICA
Tipo di insegnamento
Attività formativa monodisciplinare
Fruizione insegnamento
OBB
Categoria insegnamento
B
Anno
1
Periodo
Annuale
Sede
ALESSANDRIA
Tipo di valutazione
V
Lingua insegnamento/Teaching language
Italiano
Italian
Contenuti/Content Summary
Il corso si suddivide logicamente in due moduli: Machine Learning (6 CFU) e Deep Learning (3 CFU). MACHINE LEARNING I diversi modelli di apprendimento automatico (supervisionato e non supervisionato); Regressione e classificazione; Bias e varianza dei modelli, regolarizzazione; Metodi di clustering; Determinazione di anomalie; Valutazione dei modelli di appendimento automatico; Strumenti di sviluppo. DEEP LEARNING Teoria e pratica dell’ Apprendimento Profondo
The cours is structured in two different logical modules: Machine Learning (6 CFU) and Deep Learning (3 CFU) MACHINE LEARNING Supervised and unsupervised models of machine learning; Regression and classification; Bias and variance, regularization; Clustering methods; Anomaly detection; Evaluation of machine learning models; Machine learning tools. DEEP LEARNING Theory and Implementation of Deep Learning methods
Testi di riferimento/Textbooks
A. Geron: Hands-on Machine Learning with scikit-learn and Tensorflow. (3rd edition), O’Reilly, 2019; P. Flach, Machine Learning, Cambridge Univ. Press, 2012; I.H. Witten, E. Frank, M.A. Hall, C.J. Pal. Data Mining: Practical Machine Learning Tools (4 ed.), Morgan Kaufmann, 2016. I. Goodfellow, Y. Bengio, A. Courville. Deep Learning, MIT Press, 2016
A. Geron: Hands-on Machine Learning with scikit-learn and Tensorflow,(3rd edition), O’Reilly, 2019; P. Flach, Machine Learning, Cambridge Univ. Press, 2012; I.H. Witten, E. Frank, M.A. Hall, C.J. Pal. Data Mining: Practical Machine Learning Tools (4th ed.), Morgan Kaufmann, 2016. I. Goodfellow, Y. Bengio, A. Courville. Deep Learning, MIT Press, 2016
Obiettivi formativi/Mission
Conoscenza e capacità di comprensione Il corso ha lo scopo di introdurre le nozioni fondamentali dei metodi di appendimento automatico e di apprendimento profondo come valutarli e come sviluppare i relativi sistemi. Capacità di applicare conoscenza e comprensione La conoscenza acquisita permetterà allo studente di: comprendere i concetti di bias e varianza dei modelli e come affrontare i relativi problemi (ad esempio le tecniche di regolarizzazione) comprendere i principali modelli di classificazione, regressione e di apprendimento non supervisionato, tra quelli maggiormente applicati correntemente; ottenere una comprensione dell'apprendimento profondo tale da poterlo applicare a una vasta gamma di argomenti con particolare riguardo alle applicazioni di computer vision, elaborazione di testi ed elaborazione di segnali Autonomia di giudizio: il corso consentirà allo studente di sviluppare un’autonomia di giudizio e porrà lo studente nelle condizioni di valutare le scelte maggiormente adeguate relativamente ai possibili modelli di apprendimento automatico. Abilità communicative: sulla base delle conoscenze acquisite, lo studente potrà sviluppare abilità comunicative e relazionali per poter lavorare in team alla progettazione di sistemi di apprendimento automatico e profondo e per poter evidenziare limiti e vantaggi dei vari approcci possibili. Capacita' di apprendimento: lo studio della disciplina consentirà allo studente di capire quali alternative esistono nella progettazione e programmazione di un sistema di apprendimento automatico e di poter scegliere l’approccio più adeguato al compito prefissato.
Knowledge and understanding: the class will introduce the basic notions of machine learning methods, how to evaluate them and how to develop the related systems. Applying knowledge and understanding: the acquired knowledge will allow the student: to know the concepts of bias and variance of the models and how to deal with the related problems (e.g. regularization techniques) to know the main classification, regression and unsupervised models most used in current applications gain an understanding of deep learning that can be applied to a wide range of topics with particular focus on computer vision, word and text processing, signal processing applications. Making judgements: contents in this class will allow the student to develop autonomous judgement skills; he/she will be able to evaluate different choices concerning the possible machine learning models. Communications skills: the student will develop relational and communication skills that will allow him/her to work in team, and to emphasize pros and cons of the possible machine learning models. Learning skills: the study of the principles of the discipline will allow the student to have a correct understanding of the possible alternatives in the development of a machine learning system, and it will allow him/her to choose the most suitable approach.
Prerequisiti/Required background knowledge
Probabilita’ e Statistica, Analisi Matematica, Matematica Discreta (calcolo matriciale), Linguaggio Python (base)
Probability and statistics, Calculus, Discrete mathematics (matrix calculus), Python language (base)
Metodi didattici/Teaching methods
Lezioni frontali e sviluppo di esempi prototipali con esercitazioni
Classroom lectures and development of simple prototypes with practicals.
Altre informazioni/Further information
Materiale didattico a complemento dei testi suggeriti fornito dal docente, tramite piattaforma DIR. Disponibilità di lezioni registrate.
Lectures material to complement suggested books provided through DIR teaching platform. Availability of recorded lectures.
Modalità di verifica dell'apprendimento/Assessment methods
Esame orale con discussione di un semplice progetto.
Oral examination with discussion of a simple project.
Programma esteso/Content
MACHINE LEARNING Introduzione al machine learning: apprendimento supervisionato e non supervisionato; Regressione lineare univariata e multivariata, ridge regression; Regressione logistica; Regolarizzazione; Reti Neurali; Valutazione di un sistema ML; Decision Trees; Bayesian Learning; Lazy Learning; Metodi di ensemble learning; Clustering; Riduzione della dimensionalita: PCA; Il tool Weka; Le API scikit-learn. DEEP LEARNING Principi teorici dell'Apprendimento Profondo Deep feedforward neural nets Reti convolutive Reti ricorrenti Autoencoder Attention e Transformers Pre-Training Applicazioni Package implementativi
MACHINE LEARNING Introduction to machine learning: supervised and unsupervised learning; Linear regression (univariate and multivariate), ridge regression; Logistic regression; Regularization; Neural Networks; ML evaluation; Decision Trees; Bayesian Learning; Lazy Learning; Ensemble learning methods; Clustering; Dimensionality reduction: PCA; The Weka tool; The scikit-learn APIs. DEEP LEARNING Deep Learning theory Deep feedforward neural nets Convolutional networks Recurrent nets Autoencoder Attention e Transformers Pre-Training Applications Implementation Packages
Risultati di apprendimento attesi/Intended learning objectives
CONOSCENZE: Conoscere le principali metodiche di apprendimento automatico supervisionato e non supervisionato e di apprendimento profondo. conoscere le metodiche di valutazione dei modelli conoscere le caratteristiche applicative dei vari modelli COMPETENZE E ABILITA’ saper sviluppare un modello di apprendimento automatico in funzione dell’applicazione richiesta saper valutare le caratteristiche in termini di bias e varianza dei modelli sviluppato saper valutare i risultati di un sistema di apprendimento automatico secondo le metriche più adeguate saper usare ed applicare gli opportuni tool di sviluppo saper stabilire le connessioni tra argomenti trattati in parti diverse del corso, sapersi interfacciare e comunicare adeguatamente con eventuali esperti dell’applicazione di riferimento; conoscere la terminologia adeguata.
KNOWLEDGE: to know the main methodologies of machine learning (supervised and unsupervised) and of deep learning to know methods and techniques for the evaluation of the models to know the suitability features of ML models with respect to a given application COMPETENCE AND SKILL to be able to develop an ML/DL model relative to a specific application to be able suitably deal with bias and variance of the models to be able to evaluate the results of an ML system, following suitable metrics to be able to use and apply some of the main tools for ML/DL systems development. to be able to connect notions presented in different parts of the class; to be able to suitably interface with application experts; to know the right terminology.
×
Stampa
Insegnamento
SISTEMI DISTRIBUITI E BIG DATA
Codice
MF0651
Anno Accademico
2025/2026
Anno regolamento
2025/2026
Corso di studio
INTELLIGENZA ARTIFICIALE E INNOVAZIONE DIGITALE
Curriculum
000-GENERICO
Responsabile didattico
GIANNINI Paola
CFU
12.0
Ore di lezione
96.0
Ore di studio individuale
204.0
Settore Scientifico Disciplinare (SSD)
INF/01 - INFORMATICA
Tipo di insegnamento
Attività formativa monodisciplinare
Fruizione insegnamento
OBB
Categoria insegnamento
B
Anno
1
Periodo
Secondo Semestre
Sede
ALESSANDRIA
Tipo di valutazione
V
Lingua insegnamento/Teaching language
Italiano
Italian
Contenuti/Content Summary
Principi e soluzioni tecniche e metodologiche per la progettazione e la gestione di sistemi, architetture, e applicazioni distribuite per l’analisi dei Big Data.
Principles and current technical and methodological solutions for the design and management of systems, architectures, and distributed applications for Big Data analysis.
Testi di riferimento/Textbooks
Per la parte "Big Data Systems", non c'è un libro di testo di riferimento specifico. Il materiale di studio si basa su articoli scientifici, documentazione tecnica e altro materiale fornito dal docente. Tuttavia, i libri di testo elencati di seguito coprono una buona parte degli argomenti trattati nella prima parte del corso: * M. van Steen e A.S. Tanenbaum, "Distributed Systems, 4th ed.," 2023 (scaricabile gratuitamente dal sito web: https://www.distributed-systems.net). * M. Kleppman, "Designing Data-Intensive Applications: The Big Ideas Behind Reliable, Scalable, and Maintainable Systems," O'Reilly, 2017. * J. S. Damji, B. Wenig, T. Das, e D. Lee, "Learning Spark: Lightning-Fast Data Analytics, 2/E," O'Reilly, 2020. Per la parte "Rust Programming" non c'e' un libro di riferimento: il docente fornirà tutto il materiale attraverso le slide, i suoi appunti e link a materiale in rete. Per la parte "Cloud Computing", il libro di riferimento è quello scaricabile al seguente link: https://iris.uniupo.it/handle/11579/140999.
For the "Big Data Systems" part, there is no specific reference textbook. The teaching material consists of scientific articles, technical documentation and other material provided by the lecturer. However, the following textbooks cover most of the topics covered in the first part of the course: * M. van Steen and A.S. Tanenbaum, "Distributed Systems, 4th ed.," 2023 (freely downloadable from the website: https://www.distributed-systems.net). * M. Kleppman, "Designing Data-Intensive Applications: The Big Ideas Behind Reliable, Scalable, and Maintainable Systems," O'Reilly, 2017. * J. S. Damji, B. Wenig, T. Das, and D. Lee, "Learning Spark: Lightning-Fast Data Analytics, 2/E," O'Reilly, 2020. For the "Rust Programming" part, there is no specific reference textbook. The teaching material consists of scientific articles, technical documentation and other material provided by the lecturer. For the "Cloud Computing" part, the textbook can be downloaded from here: https://iris.uniupo.it/handle/11579/140999.
Obiettivi formativi/Mission
Il corso ha l’obiettivo di illustrare i principi e le attuali soluzioni tecniche e metodologiche per la progettazione e la gestione di sistemi, architetture, e applicazioni distribuite per l’analisi dei Big Data. In particolare, il corso affronta le diverse problematiche inerenti all’acquisizione, memorizzazione e processamento dei Big Data, presentando le principali soluzioni (hardware e software) che sono state proposte per la loro gestione. Il corso inoltre introduce il linguaggio di programmazione Rust e le peculiarità che lo rendono adatto al processamento di Big Data. Il corso prevede esercitazioni di laboratorio al fine di poter combinare gli aspetti metodologici e tecnologici visti in classe. * Conoscenze: Al termine del corso, lo studente/la studentessa avrà appreso i principi e le principali soluzioni tecniche e metodologiche per la progettazione e la gestione di sistemi, architetture, e applicazioni distribuite per l’analisi dei Big Data nonché concetti avanzati di programmazione in particolare relazione con l’analisi statica (attraverso i tipi) della memoria. * Competenze ed abilità: Al termine del corso, lo studente/la studentessa avrà appreso le conoscenze per il raggiungimento degli obiettivi formativi, nel modo misurato dal voto d'esame. In particolare, lo studente/la studentessa sarà in grado di approfondire autonomamente argomenti inerenti ai sistemi e alle architetture per Big Data, e di utilizzare tali conoscenze per valutare in maniera critica sistemi e applicazioni esistenti, e affrontare nuovi problemi, e valutare l’appropriatezza della loro implementabilità in Rust.
The course aims to illustrate the principles and current technical and methodological solutions for the design and management of systems, architectures, and distributed applications for Big Data analysis. In particular, the course addresses the various problems concerning the acquisition and processing of Big Data, by presenting the main solutions (both hardware and software) that have been proposed for their management. The course also introduces the Rust programming language and the peculiarities that make it suitable for Big Data processing. The course includes hands-on exercises in order to be able to combine the methodological and technological aspects seen in the classroom. * Knowledge: At the end of the course, the student will have learned the principles and the main technical and methodological solutions for the design and management of systems, architectures, and distributed applications for Big Data analysis as well as advanced programming concepts especially relating to static analysis (through types) of memory. * Competences and skills: At the end of the course, the student will have learned the knowledge to achieve the educational objectives, in the way measured by the examination grade. In particular, the student will be able to autonomously investigate topics related to systems and architectures for Big Data, and to use this knowledge to critically evaluate existing systems and applications as well as to tackle new problems, and to evaluate the appropriateness of their implementability in Rust.
Prerequisiti/Required background knowledge
Fondamenti di programmazione, basi di dati e sistemi operativi.
Fundamentals of programming, database and operating systems.
Metodi didattici/Teaching methods
Lezioni frontali ed esercitazioni di laboratorio.
Class lectures and hands-on lab lectures.
Altre informazioni/Further information
Non sono previste prove in itinere. Le studentesse e gli studenti con disabilità o con Disturbi Specifici dell’Apprendimento (DSA) o con Bisogni Educativi Speciali (BES) possono richiedere servizi e strumenti specifici a loro dedicati rivolgendosi allo Staff "Sviluppo e Coordinamento Carriere e Servizi alle Studentesse e agli Studenti" e consultando la pagina dedicata del sito di Ateneo: https://uniupo.it/it/servizi/servizi-studenti-disabili-e-dsa Le studentesse e gli studenti con disabilità, DSA, BES, una volta preso contatto con lo Staff di Ateneo, possono contattare la/il docente titolare dell'insegnamento in relazione alla declinazione delle modalità di esame, in merito agli aspetti didattici.
There are no mid-term exams. Students with physical disabilities, Learning Disabilities or Special Education Needs can request specific services and tools to the Staff of the "Sviluppo e Coordinamento Carriere e Servizi alle Studentesse e agli Studenti", consulting the University webpage: https://www.uniupo.it/en/services/services-students-physical-or-learning-disabilities Students with disabilities, learning disabilities or special education needs, once they have contacted the University Staff, can refer to the tutor in charge of the course to define the examination modalities, concerning academic aspects.
Modalità di verifica dell'apprendimento/Assessment methods
La valutazione finale viene stabilita collegialmente dai docenti del corso tenendo conto delle conoscenze e competenze acquisite dalla studentessa/dallo studente verificate attraverso le risposte a una serie di domande teoriche ed esercizi sugli argomenti della parte di "Big Data Systems", lo sviluppo di 7 o 8 esercizi pratici con relativa discussione sugli argomenti trattati nella parte "Rust Programming”, e una discussione orale e la consegna di un esercizio per la parte "Cloud Computing”: su ciascuna delle tre componenti occorre superare una soglia minima. In particolare, per la parte di "Big Data Systems", ad ogni domanda è associato un punteggio espresso in trentesimi; per raggiungere la sufficienza è necessario ottenere almeno 18 punti, mentre il superamento di 30 punti consente di raggiungere il punteggio di 30 e lode. Per la parte di "Rust Programming", la sufficienza è raggiunta se lo studente/la studentessa dimostra di aver eseguito in autonomia gli esercizi. Questo viene controllato con una discussione in cui si chiede allo studente/alla studentessa di sviluppare una variazione di alcuni degli esercizi svolti commentandone i punti salienti. I voti poi sono graduati considerando lo stile di programmazione. Per la parte "Cloud Computing” lo studente deve rispondere ad una serie di domande per raggiungere il voto di 25/30 mentre la consegna e discussione dell'esercizio proposto, può portarlo al voto di 30/30 con lode. Nella valutazione finale, la parte di "Big Data Systems" pesa per il 50%, quella di "Rust Programming" per il 25%, e infine quella di "Cloud Computing" per il 25%, in coerenza con il numero di CFU erogati per le tre parti.
The final evaluation is established collegially by the teachers taking into account the knowledge and skills acquired by the student verified through the answers to a series of theoretical questions and exercises on the topics of the "Big Data Systems" part, the development of 7 or 8 practical exercises with related discussion on the topics covered in the "Rust Programming" part, and an oral exam and a practical exercise for "Cloud Computing" part: on each of the three components a minimum threshold must be achieved. In particular, for the "Big Data Systems" part, each question is associated with a score with 30 as the maximum grade; to reach the passing grade it is necessary to obtain at least 18, while exceeding 30 allows the student to reach a score of 30 with honors. For the "Rust Programming" part, passing is achieved if the student demonstrates that he/she has performed the exercises on his/her own. This is checked with a discussion in which the student is asked to develop a variation of some of the exercises, commenting the important decisions. The grade then depends on the programming style. For "Cloud Computing", the student can decide for only an oral exam to get up to 25/30 or he/she can decide to provide and discuss a practical execese to get up to 30/30 with honors. In the final evaluation, the part of "Big Data Systems" weighs 50%, that of "Rust Programming" for 25%, and finally that of "Cloud Computing" for 25%, according to the number of credits for the three parts.
Programma esteso/Content
Il corso si compone di tre parti: 1. Parte "Big Data Systems" (6 CFU): - Introduzione ai Big Data: motivazioni, principi e problematiche. - Sistemi per l'acquisizione dei dati. - File system e data store distribuiti. - Sistemi per la gestione di risorse di cluster computazionali. - Sistemi e framework per il processamento di batch di dati. - Sistemi e framework per il processamento di flussi di dati. 2. Parte "Rust Programming" (3 CFU): - Introduzione al Cloud Computing. - Teoria e pratica su Google Cloud Platform. - Teoria e pratica su Amazon Web Services. - Teoria e pratica su OpenStack. 3. Parte "Cloud Computing" (3 CFU): Introduzione alla programmazione in Rust: - Gestione della memoria automatica: ownership, borrowing e lifetime di riferimenti. - Tipi di dato elementari e strutturati. - Gestione degli errori e pattern di programmazione funzionale. - Tipi generici e traits - Multithreading
The course consists of three parts: 1. "Big Data Systems" part (6 CFU): - Introduction to Big Data: motivations, principles, issues and challenges - Data acquisition systems. - Distributed file systems and data stores. - Cluster resource management systems. - Batch processing systems - Stream processing systems. 2. "Rust Programming" part (3 CFU): - Introduction to Cloud Computing. - Theory and practice on Google Cloud Platform. - Theory and practice on Amazon Web Services. - Theory and practice on OpenStack. 3. "Cloud Computing" part (3 CFU): Introduction to Rust programming: - Automatic memory management: ownership, borrowing and lifetime of references. - Primitive and structured data types. - Error handling and functional programming patterns. - Generic types and traits - Multithreading
Risultati di apprendimento attesi/Intended learning objectives
* Conoscenza e capacità di comprensione: Al termine del corso, lo studente/la studentessa avrà appreso i concetti avanzati sulle architetture e sui sistemi distribuiti per l’analisi dei Big Data e sullo sviluppo di applicazioni software in tale contesto. Nello specifico, lo studente/la studentessa sarà in grado di realizzare applicazioni distribuite e scalabili per l’elaborazione batch e di data stream, e di gestire sistemi per l’acquisizione, la memorizzazione e il processamento di Big Data anche in ambito Cloud. * Capacità di applicare conoscenza e comprensione: Al termine del corso, lo studente/la studentessa avrà appreso le metodologie per la progettazione e realizzazione di sistemi e applicazioni per Big Data. Nello specifico, lo studente/la studentessa sarà in grado di progettare e sviluppare applicazioni distribuite, scalabili, sicure ed efficienti di batch processing e di data stream processing, usando i principali framework open source per l’acquisizione, il processamento e la memorizzazione di Big Data. *Autonomia di giudizio Al termine del corso, lo studente/la studentessa sarà in grado di identificare autonomamente le soluzioni più idonee per realizzare sistemi e applicazioni distribuite per l’analisi dei Big Data e di valutare sia le scelte architetturali e implementative, che le prestazioni di sistemi e applicazioni per Big Data esistenti. * Abilità comunicative: Al termine del corso, lo studente/la studentessa avrà acquisito la padronanza della terminologia più appropriata inerente ai sistemi e alle applicazioni per l’analisi di Big Data, sarà in grado di presentare l’architettura di un sistema per Big Data con termini e linguaggio tecnico consono e di argomentare in maniera critica riguardo alle varie alternative sia a livello sistemistico che applicativo. * Capacità di apprendimento: Al termine del corso, lo studente/la studentessa avrà acquisito le conoscenze metodologiche per approfondire autonomamente argomenti inerenti ai sistemi e alle architetture per Big Data, e di utilizzare tali conoscenze per valutare sistemi esistenti, affrontare nuovi problemi nonché valutare vantaggi e svantaggi della scelta di linguaggi di programmazione per l’implementazione.
* Knowledge and understanding: At the end of the course, the student will have acquired the methodological knowledge to independently investigate topics related to systems and architectures for Big Data, and to use this knowledge to evaluate existing systems as well as to tackle new problems. *Applying knowledge and understanding: At the end of the course, the student will have learned the methodologies for the design and development of systems and applications for Big Data. Specifically, the student will be able to design and develop distributed, scalable, safe and efficient batch processing and data stream processing applications, using the main open-source frameworks for the ingestion, processing and storage of Big Data. * Making judgments: At the end of the course, the student will be able to independently identify the most suitable solutions to create distributed systems and applications for Big Data analysis and to evaluate both the architectural and implementation choices, and the performance of existing systems and applications for Big Data. * Communication Skills: At the end of the course, the student will have acquired the most suitable fluency in terminology related to systems and applications for Big Data analysis, will be able to present the architecture of a system for Big Data with appropriate technical terms and language and to argue critically about the various alternatives both at a system and application level. * Learning Skills: At the end of the course, the student will have acquired the methodological knowledge to independently investigate topics related to systems and architectures for Big Data, and to use this knowledge to evaluate existing systems, to tackle new problems as well as to evaluate advantages and disadvantages of choosing programming languages for the development.
×
Stampa
Insegnamento
BASI DI DATI PER BUSINESS INTELLIGENCE
Codice
MF0609
Anno Accademico
2025/2026
Anno regolamento
2025/2026
Corso di studio
INTELLIGENZA ARTIFICIALE E INNOVAZIONE DIGITALE
Curriculum
000-GENERICO
Responsabile didattico
LEONARDI GIORGIO
CFU
9.0
Ore di lezione
72.0
Ore di studio individuale
153.0
Settore Scientifico Disciplinare (SSD)
INF/01 - INFORMATICA
Tipo di insegnamento
Attività formativa monodisciplinare
Fruizione insegnamento
OBB
Categoria insegnamento
B
Anno
1
Periodo
Primo Semestre
Sede
VERCELLI
Tipo di valutazione
V
Lingua insegnamento/Teaching language
Italiano
Italian
Contenuti/Content Summary
Basi di dati: Principali modelli dei dati adottati dai sistemi di gestione delle basi di dati (DBMS). Modello relazionale: principali aspetti teorici di tale modello ed esempi di progettazione pratica. Introduzione al linguaggio SQL e sue applicazioni alla gestione di una base di dati. Data warehouse: metodologie e tecniche per reperire, analizzare, sintetizzare e ri-organizzare dati operazionali, al supporto di decisioni strategiche. No-SQL: le caratteristiche e i metodi di interrogazione dei principali tipi di database no-SQL, i criteri di scelta tra i differenti tipi di database no-SQL
Data base: main data models used by data base systems (DBMS). Relational model: main theoretical aspects and practical design principles. Introduction to the SQL language and its applications for database management. Data warehouse: methods and techniques to gather, analyse, summarize and re-organize operational data to support strategic decision-making. No-SQL: the characteristics and query methods of the main types of no-SQL databases, the criteria for choosing between the different types of no-SQL databases
Testi di riferimento/Textbooks
Atzeni, Ceri, Fraternali, Paraboschi, Torlone Basi di Dati: Modelli e Linguaggi di Interrogazione Mc Graw-Hill, quinta edizione, 2018 M. Golfarelli, S. Rizzi: “Data Warehose”, McGraw-Hill, Milano A. Ploetz, D. Kandhare, S. Kadambi, X. Wu, Seven NoSQL Databases in a Week, Packt Publishing Limited, 2018
Atzeni, Ceri, Fraternali, Paraboschi, Torlone Basi di Dati: Modelli e Linguaggi di Interrogazione Mc Graw-Hill, quinta edizione, 2018 M. Golfarelli, S. Rizzi: “Data Warehose”, McGraw-Hill, Milano A. Ploetz, D. Kandhare, S. Kadambi, X. Wu, Seven NoSQL Databases in a Week, Packt Publishing Limited, 2018
Obiettivi formativi/Mission
Conoscenza e capacità di comprensione: - metodologie di analisi e organizzazione di strutture relazionali, implementazione di queste strutture in data base relazionali, complete delle interrogazioni necessarie - metodologie per reperire, analizzare, sintetizzare e ri-organizzare i dati operazionali; metodologie di progettazione a livello concettuale e di realizzazione livello logico in ambito relazionale di datawarehousing - metodologie di progettazione a livello concettuale e di realizzazione livello logico in ambito noSQL Capacita' di applicare conoscenza e comprensione: - capacità di progettazione a livello concettuale, di realizzazione livello logico, e di interrogazione in ambito di database relazionali - capacità di progettazione a livello concettuale e di realizzazione livello logico in ambito relazionale di datawarehousing, a partire dalle sorgenti di dati operazionali - capacità di progettazione a livello concettuale e di realizzazione livello logico in ambito differenti database noSQL Autonomia di giudizio: - abilità nella progettazione concettuale e logica di una base di dati relazionale e nella sua interrogazione - abilità nel determinare i fatti di interesse, la granularità, le dimensioni e le gerarchie dimensionali per un data warehouse - abilità nel valutare le specifiche caratteristiche di un database noSQL in relazione al contesto applicativo Abilità comunicative: L'obiettivo del corso è quello di acquisire e di saper utilizzare la terminologia dell'area e saper discutere di aspetti di progettazione, modellazione e interrogazioni nei differenti ambiti delle basi di dati Capacita' di apprendimento - analizzare, modellare e interrogare dati in ambito dei database relazionali - analizzare e modellare in modo uniforme dati provenienti da sorgenti eterogenee - analizzare dati per modellarli in ambito noSQL effettuando le scelte progettuali più adattate
Knowledge and understanding: - methodologies of analysis and organization of relational structures, implementation of these structures in relational databases, including with the necessary queries - methodologies for retrieving, analyzing, synthesizing and re-organizing operational data; design methodologies for the conceptual level and for the logical level in the field of relational datawarehousing - design methodologies for the conceptual level and for the logical level in the noSQL context Applying knowledge and understanding: - ability to design both at a conceptual level and to a logical level, and to query in the context of relational databases - ability to design at a conceptual level and to create a logical level in the context of relational datawarehousing, starting from operational data sources - ability to design at a conceptual level and at a logical level in the context of different noSQL databases Making judgements: - ability in the conceptual and logical design of a relational database and in its interrogation - ability to determine the facts of interest, granularity, dimensions and dimensional hierarchies for a data warehouse - ability to evaluate the specific characteristics of a noSQL database focusing on the application context Communication skills: Students must acquire and know how to use the terminology of the area and must be able to discuss aspects of design, modeling and queries in the different database fields. Learning skill - analyzing, modeling and querying data in the context of relational databases - analyzing and modeling data from heterogeneous sources - analyzing data to model them in the noSQL environment by making the most suitable design choices
Prerequisiti/Required background knowledge
Nessuno.
None.
Metodi didattici/Teaching methods
Lezioni frontali in aula e esercitazioni in aula e in laboratorio informatico. Il materiale didattico verrà fornito anche sulla piattaforma DIR.
Face-to-face lectures and exercises in classroom and in computer science lab. Teaching materials will also be provided through the DIR platform.
Altre informazioni/Further information
Le studentesse e gli studenti con disabilità o con Disturbi Specifici dell’Apprendimento (DSA) o con Bisogni Educativi Speciali (BES) possono richiedere servizi e strumenti specifici a loro dedicati rivolgendosi allo Staff Sviluppo e Coordinamento Carriere e Servizi alle Studentesse e agli Studenti e consultando la pagina dedicata del sito di Ateneo: https://uniupo.it/it/servizi/servizi-studenti-disabili-e-dsa Le studentesse e gli studenti con disabilità, DSA, BES, una volta preso contatto con lo Staff di Ateneo, possono contattare la/il docente titolare dell'insegnamento in relazione alla declinazione delle modalità di esame, in merito agli aspetti didattici.
Students with physical disabilities, Learning Disabilities or Special Education Needs can request specific services and tools via the Staff Sviluppo e Coordinamento Carriere e Servizi alle Studentesse e agli Studenti, consulting the University webpage: https://www.uniupo.it/en/services/services-students-physical-or-learning-disabilities Students with disabilities, learning disabilities or special education needs, once they have contacted the University Staff, can refer to the tutor in charge of the course to define the examination modalities, concerning academic aspects.
Modalità di verifica dell'apprendimento/Assessment methods
L'esame è scritto (2 ore). Il testo è suddiviso in 3 sezioni, una per ogni parte del corso (basi di dati, data warehouse e no-SQL). Ogni sezione può essere a sua volta suddivisa in questioni relative alla teoria ed esercizi da risolvere. La sufficienza richiede di completare correttamente i quesiti inclusi in un minimo di 2 sezioni.
Written examination (2 hours). The exam is composed by 3 parts, each of which on a different section of the course (data base, data warehouse and no-SQL). Each part can in turn be composed by theoretical questions and exercises to be solved. Passing requires to correctly complete a minimum of 2 sections.
Programma esteso/Content
Basi di dati: introduzione ai principali sistemi di gestione delle basi di dati (DBMS). Viene approfondito il modello relazionale, in particolare sono presentati i principali aspetti teorici ed aspetti più pratici con esempi di progettazione, ponendo attenzione alla qualità dei modelli implementati (es. forme normali). Il corso si articola nelle seguenti parti: Modello Relazionale; Modello Entità-Relazione; Traduzione del Modello ER nel modello Relazionale. Viene inoltre descritta brevemente l'architettura di un DBMS, che viene presentata succintamente seguendo lo schema di descrizione generale a tre livelli di astrazione: esterno, logico e fisico. Vengono introdotte le nozioni di base sugli indici e sulle transazioni. Introduzione al linguaggio SQL per la gestione delle tabelle e per la manipolazione dei dati. Data warehouse: obiettivi e architetture - tecniche per reperire e riconciliare i dati operazionali - linguaggi di query OLAP - modelli e tecniche per l'implementazione del conceptual multidimensional data model in ambito relazionale No-SQL: principali approcci NoSQL (chiave-valore, colonna, documento e grafo): caratteristiche, metodi interrogazione, e criteri di valutazione delle performance.
Databases: introduction to the main database management systems (DBMS). The relational model is studied in depth, in particular the main theoretical aspects and more practical aspects are presented with design examples, paying attention to the quality of the implemented models (e.g. normal forms). The course is divided into the following parts: Relational Model; Entity-Relationship Model; Translation of the ER Model into Relational Model. The architecture of a DBMS is also briefly described, following the general description scheme with three levels of abstraction: external, logical and physical. The basics of indexes and transactions are introduced. Introduction to the SQL language for table management and data manipulation. Data warehouse: objectives and architectures; techniques to find and reconcile operational data; OLAP query languages; models and techniques for the implementation of the conceptual multidimensional data model in the relational field. No-SQL: main No-SQL approach (key-value, column, document e graph): characteristics, , query languages, and performance evaluation criteria.
Risultati di apprendimento attesi/Intended learning objectives
Il corso prevede di acquisire le seguenti conoscenze: - strumenti metodologici e formali per progettare strutture logiche e fisiche di una base di dati relazionale - linguaggio SQL - tecniche per reperire e riconciliare i dati operazionali - linguaggi di query OLAP - capacità di gestione di modelli e tecniche per l'implementazione del conceptual multidimensional data model in ambito relazionale - principi fondanti dei database NoSQL. - principi di progettazione in ambito NoSQL e capacità di valutazione delle scelte progettuali. e l'acquisizione delle seguenti competenze ed abilità: - progettazione di una base di dati relazionale - utilizzo del linguaggio SQL - capacità di formulare query OLAP - progettazione e interrogazione di database NO-SQL
Students must have acquired the following knowledge, skills, and abilities: - knowledge of the methodological and formal tools for designing the logical and physical structures of a relational database - knowledge and use of the SQL language - knowledge of techniques for retrieving and reconciling operational data - general knowledge of OLAP query languages and - knowledge of model and technique management skills for the implementation of the conceptual multidimensional data model in the relational field - knowledge of the founding principles of NoSQL databases. - knowledge of NoSQL design principles and ability to evaluate design choices. The students have to be able to demonstrate the ability and skills: - to designing a relational database - to use SQL language - to formulate OLAP queries -to design and to retrieve information in NO-SQL databases
×
Stampa
Insegnamento
RAPPRESENTAZIONE DELLA CONOSCENZA E LOGICA COMPUTAZIONALE
Codice
MF0653
Anno Accademico
2025/2026
Anno regolamento
2025/2026
Corso di studio
INTELLIGENZA ARTIFICIALE E INNOVAZIONE DIGITALE
Curriculum
000-GENERICO
Responsabile didattico
THESEIDER DUPRE' Daniele
CFU
9.0
Ore di lezione
72.0
Ore di studio individuale
153.0
Settore Scientifico Disciplinare (SSD)
INF/01 - INFORMATICA
Tipo di insegnamento
Attività formativa monodisciplinare
Fruizione insegnamento
OBB
Categoria insegnamento
B
Anno
1
Periodo
Secondo Semestre
Sede
ALESSANDRIA
Tipo di valutazione
V
Lingua insegnamento/Teaching language
ITALIANO
Italian
Contenuti/Content Summary
Rappresentazione della conoscenza e ragionamento mediante formule e regole logiche, programmazione logica. Programmazione logica a vincoli; Answer Set Programming. Problem solving dichiarativo mediante strumenti di programmazione logica e ASP. Logiche descrittive, logiche temporali.
Knowledge representation and reasoning in logic and logic programming. Constraint logic programming; Answer Set Programming. Declarative problem solving using logic programming and ASP tools. Description logics, temporal logics.
Testi di riferimento/Textbooks
S. Russell, P. Norvig. Artificial Intelligence: A Modern Approach (3rd edition), Prentice-Hall 2010. K. Marriott, P. Stuckey, Programming with Constraints: an Introduction, MIT Press, 1998. M. Gebser, R. Kaminski, B. Kaufmann, and T. Schaub, Answer Set Solving in Practice, Morgan and Claypool, 2012.
S. Russell, P. Norvig. Artificial Intelligence: A Modern Approach (3rd edition), Prentice-Hall 2010. K. Marriott, P. Stuckey, Programming with Constraints: an Introduction, MIT Press, 1998. M. Gebser, R. Kaminski, B. Kaufmann, and T. Schaub, Answer Set Solving in Practice, Morgan and Claypool, 2012.
Obiettivi formativi/Mission
Conoscenza e capacità di comprensione: conoscere e comprendere la semantica di diversi formalismi di rappresentazione della conoscenza dichiarativa basati sulla logica, i fondamenti dei metodi di ragionamento automatico su tale conoscenza, l’espressività e le limitazioni anche computazionali. Capacità di applicare conoscenza e comprensione: capacità di applicare i suddetti formalismi e metodi a problemi reali, ai fini della risoluzione di problemi con metodi dichiarativi e del riutilizzo di conoscenza per risoluzioni di problemi diversi relativi ad uno stesso dominio. Autonomia di giudizio: giudicare l’appropriatezza dei diversi formalismi e metodi a problemi reali Abilità comunicative: capacità di illustrare, sia a livello tecnico che non tecnico, le soluzioni proposte per problemi assegnati durante il corso Capacità di apprendimento: esercitare la capacità di approfondimento autonomo attraverso la lettura di materiale di approfondimento sugli argomenti del corso.
Knowledge and comprehension: the semantics of different formalisms of representation of declarative knowledge based on logic, the foundations of methods for the automatic reasoning concerning such knowledge, expressiveness and computational limitations of them. Capability to apply knowledge and comprehension: ability to apply the formalisms and methods shown to real-world problems, in order to solve problems using declarative methods and to reuse knowledge to solve different problems relating to the same domain. Judgement autonomy: judging the appropriateness of the different formalisms and methods to real-world problems Communication skills: ability to explain, both at a technical and non-technical level, the solutions proposed for problems assigned during the course Learning skills: exercise the ability to study independently by reading in-depth documentation on the topics of the course.
Prerequisiti/Required background knowledge
Logica Matematica.
Mathematical logic.
Metodi didattici/Teaching methods
Lezioni frontali e sperimentazione in laboratorio. Le lezioni, oltre a descrivere i formalismi ne discutono le potenzialità e le limitazioni. Le esercitazioni permettono di conoscere strumenti software per utilizzare i diversi formalismi.
Lectures and practical activity in lab. Lectures describe the different formalism and discuss their power as well as their limitations. Practical activity allows students to get to know software tools for the different formalisms.
Altre informazioni/Further information
Le studentesse e gli studenti con disabilità o con Disturbi Specifici dell’Apprendimento (DSA) o con Bisogni Educativi Speciali (BES) possono richiedere servizi e strumenti specifici a loro dedicati rivolgendosi allo Staff Sviluppo e Coordinamento Carriere e Servizi alle Studentesse e agli Studenti e consultando la pagina dedicata del sito di Ateneo: https://uniupo.it/it/servizi/servizi-studenti-disabili-e-dsa Le studentesse e gli studenti con disabilità, DSA, BES, una volta preso contatto con lo Staff di Ateneo, possono contattare la/il docente titolare dell'insegnamento in relazione alla declinazione delle modalità di esame, in merito agli aspetti didattici.
Students with physical disabilities, Learning Disabilities or Special Education Needs can request specific services and tools via the Staff Sviluppo e Coordinamento Carriere e Servizi alle Studentesse e agli Studenti, consulting the University webpage: https://www.uniupo.it/en/services/services-students-physical-or-learning-disabilities Students with disabilities, learning disabilities or special education needs, once they have contacted the University Staff, can refer to the tutor in charge of the course to define the examination modalities, concerning academic aspects.
Modalità di verifica dell'apprendimento/Assessment methods
Verifica della soluzione di esercizi pratici. Esame scritto. La prova prevede diverse domande, riguardanti argomenti svolti in una parte diversa del programma, ed atte a verificare il raggiungimento degli obiettivi formativi. La valutazione complessiva terrà conto dei risultati conseguiti nelle singole domande.
Evaluation of the solutions for practical exercises. Written examination. The exam involves several questions on different subjects within the course contents; the questions are suited to verifying the achievement of the learning outcomes. The evaluation takes into account the answers to individual questions.
Programma esteso/Content
Rappresentazione della conoscenza e ragionamento automatico in logica. Risoluzione. Programmazione logica. La programmazione logica a vincoli; l'Answer Set Programming. Problem solving dichiarativo mediante strumenti di programmazione logica e ASP. Logiche descrittive, logiche temporali.
Knowledge representation and automated reasoning in logic. Resolution. Logic programming. Constraint logic programming; Answer Set Programming. Declarative problem solving using logic programming and ASP. Description logics, temporal logics.
Risultati di apprendimento attesi/Intended learning objectives
Raggiungimento, in grado misurato dal voto, degli obiettivi formativi. In particolare: Conoscenze relative ai formalismi di rappresentazione della conoscenza dichiarativa basati sulla logica, e ai metodi di ragionamento automatico su tale conoscenza Competenze ed abilità: capacità di applicare i diversi formalismi e metodi a problemi reali.
Achievement, measured by grade, of the training objectives. Particularly: Knowledge: knowledge related to the formalisms of representation of declarative knowledge based on logic, and to the methods of automatic reasoning on such knowledge Competence and ability: ability to apply the different formalisms to real-world problems.
×
Stampa
Insegnamento
SISTEMA IMPRESA
Codice
MF0611
Anno Accademico
2025/2026
Anno regolamento
2025/2026
Corso di studio
INTELLIGENZA ARTIFICIALE E INNOVAZIONE DIGITALE
Curriculum
000-GENERICO
Responsabile didattico
GELMINI Lorenzo
CFU
6.0
Ore di lezione
48.0
Ore di studio individuale
102.0
Settore Scientifico Disciplinare (SSD)
SECS-P/07 - ECONOMIA AZIENDALE
Tipo di insegnamento
Attività formativa monodisciplinare
Fruizione insegnamento
OPZ
Categoria insegnamento
C
Anno
1
Periodo
Primo Semestre
Sede
VERCELLI
Tipo di valutazione
V
Lingua insegnamento/Teaching language
ITALIANO
Italian
Contenuti/Content Summary
Inquadramento teorico sull'esistenza e sul funzionamento delle aziende – con particolare riferimento alle imprese di produzione di beni e servizi – analizzando: le manifestazioni di vita e le condizioni di esistenza delle imprese nel dinamico ambiente che le circonda. In quest’ottica, si analizzeranno – in sintesi – le principali aree funzionali del management ed i principali processi aziendali, nonché le modalità attraverso le quali avviene la produzione delle informazioni economico-finanziarie e patrimoniali necessarie alla gestione delle imprese e la loro lettura nel bilancio d’esercizio che ne costituisce la sintesi naturale. Inoltre, saranno analizzati i principali indicatori normalmente utilizzati dagli operatori del settore.
Theoretical framework on the existence and functioning of companies - with particular reference to companies producing goods and services - analyzing: the manifestations of life and the conditions of existence of companies in the dynamic environment that surrounds them. We will analyse - in summary - the main functional areas of management and the main business processes, as well as the methods through which the production of the economic-financial and equity information necessary for the management of the companies and their reading in the financial statements takes place. exercise which constitutes its natural synthesis. Furthermore, the main indicators normally used by sector operators will be analysed.
Testi di riferimento/Textbooks
- Testo in corso di redazione - Materiale a cura del docente
- Text in press - Material by the teachers
Obiettivi formativi/Mission
1. Conoscenza e capacità di comprensione (knowledge and understanding). Il corso mira a fornire allo studente la terminologia e le metodologie fondamentali delle discipline economico-aziendali utili per rappresentare e comprendere il funzionamento delle aziende. 2. Capacità di applicare conoscenza e comprensione (applying knowledge and understanding). La conoscenza acquisita in materia economico-aziendale porrà le basi per sviluppare nello studente le capacità e le competenze tecnico-contabili, gestionali ed organizzative di base per lo studio delle discipline specifiche. In particolare, lo studente acquisirà il linguaggio tecnico proprio delle discipline aziendali e sarà messo in grado di acquisire i concetti e il linguaggio di base dell’analisi economica dei processi aziendali e di cogliere gli elementi rappresentativi delle aziende e le determinanti dei loro equilibri. 3. Autonomia di giudizio (making judgements). Il corso consentirà allo studente di sviluppare un’autonomia di giudizio e porrà lo studente nelle condizioni di esprimere considerazioni relativamente agli equilibri aziendali ed ai fatti di gestione. 4. Abilità comunicative (communication skills). Sulla base delle conoscenze acquisite, lo studente potrà sviluppare abilità comunicative e relazionali per effettuare una prima analisi dello “stato di salute” delle imprese. 5. Capacità di apprendimento (learning skills). Lo studio della disciplina consentirà allo studente di capire le dinamiche aziendali inquadrando l’analisi del singolo momento gestionale nella visione unitaria e coordinata dei fatti aziendali.
1. Knowledge and understanding. The course aims to provide the student the terminology and the fundamental methodologies of the economic-business disciplines useful for represent and understand the functioning of companies. 2. Ability to apply knowledge and understanding. The knowledge acquired in business economics will lay the foundations for developing the student's technical-accounting and managerial skills and competences and basic organization for the study of specific disciplines. In particular, the student will acquire the technical language typical of business disciplines and will be able to acquire concepts and language basic economic analysis of business processes and to grasp the representative elements of companies e the determinants of their equilibrium. 3. Making judgments. The course will allow the student to develop an autonomy of judgment and will put the student in a position to express considerations relating to company balance and management facts. 4. Communication skills (communication skills). Based on the knowledge acquired, the student will be able to develop communicative and relational skills to carry out an initial analysis of the "state of health" of companies. 5. Learning skills. The study of the discipline will allow the student to understand the dynamics companies by framing the analysis of the single management moment in the unitary and coordinated vision of the business facts.
Prerequisiti/Required background knowledge
Nessuno
None
Metodi didattici/Teaching methods
1. Acquisizione delle conoscenze: mediante lo svolgimento di lezioni frontali e lo studio autonomo da parte degli studenti sulla base del materiale didattico previsto dal corso. 2. Acquisizione della capacità di applicare le conoscenze: mediante lo svolgimento di esercitazioni da parte del docente durante il corso e l’autonomo svolgimento da parte degli studenti di esercizi tratti anche da esempi di prove d’esame. 3. Acquisizione dell’autonomia di giudizio: durante il corso gli studenti saranno stimolati a valutare autonomamente casi rilevanti. 4. Acquisizione del linguaggio tecnico: durante l’insegnamento sarà illustrato il significato dei termini comunemente usati da parte degli operatori professionali. 5. Acquisizione delle capacità di apprendimento: generalmente, partendo dalla presentazione teorica delle diverse problematiche, si descriverà l’eventuale problema da risolvere e si analizzeranno criticamente le diverse possibili soluzioni.
1. Acquisition of knowledge: through the performance of lectures and self-study by students on the basis of the teaching material provided by the course. 2. Acquisition of the ability to apply knowledge: by carrying out exercises by the teacher during the course and autonomously exercises carrying out by students. 3. Acquisition of autonomy of judgment: during the course, students will be encouraged to independently evaluate relevant cases. 4. Acquisition of technical language. 5. Acquisition of the skills of learning: generally, starting from the theoretical presentation of the various problems, we will describe any problem to be solved and the various possible solutions.
Altre informazioni/Further information
Per ulteriori informazioni (come i collegamenti alle pagine web dei software utilizzati), si prega di consultare la pagina del corso su D.I.R. all’indirizzo: https://dir.uniupo.it/ Pur non essendo obbligatoria, si consiglia vivamente – ove possibile – la frequenza al corso. Le studentesse e gli studenti con disabilità o con Disturbi Specifici dell’Apprendimento (DSA) o con Bisogni Educativi Speciali (BES) possono richiedere servizi e strumenti specifici a loro dedicati rivolgendosi allo Staff Sviluppo e Coordinamento Carriere e Servizi alle Studentesse e agli Studenti e consultando la pagina dedicata del sito di Ateneo: https://uniupo.it/it/servizi/servizi-studenti-disabili-e-dsa Le studentesse e gli studenti con disabilità, DSA, BES, una volta preso contatto con lo Staff di Ateneo, possono contattare la/il docente titolare dell'insegnamento in relazione alla declinazione delle modalità di esame, in merito agli aspetti didattici
Further information (such as link to software website) can be found at the web page of the course: https://dir.uniupo.it/. Although not compulsory, attendance is strongly recommended. Students with physical disabilities, Learning Disabilities or Special Education Needs can request specific services and tools via the Staff Sviluppo e Coordinamento Carriere e Servizi alle Studentesse e agli Studenti, consulting the University webpage: https://www.uniupo.it/en/services/services-students-physical-or-learning-disabilities Students with disabilities, learning disabilities or special education needs, once they have contacted the University Staff, can refer to the tutor in charge of the course to define the examination modalities, concerning academic aspects.
Modalità di verifica dell'apprendimento/Assessment methods
Una prova scritta obbligatoria della durata compresa tra sessanta e novanta minuti, comprendente domande, esercizi ed applicazioni numeriche, in coerenza con i contenuti dell’insegnamento. 1. Conoscenza e capacità di comprensione: mediante domande a risposta aperta 2. Capacità di applicare conoscenza e comprensione: mediante esercizi 3. Autonomia di giudizio: mediante domande a risposta aperta, anche basate su esercizi. 4. Abilità comunicative: mediante domande a risposta aperta. 5. Capacità di apprendimento: la capacità di apprendimento potrà essere valutata anche mediante il sostenimento di una prova intermedia durante il corso.
A compulsory written test lasting between sixty and ninety minutes, including questions, exercises and numerical applications, consistent with the teaching content. 1. Knowledge and understanding: through open-ended questions: 2. Ability to apply knowledge and understanding: through exercises. 3. Autonomy of judgment: through open-ended questions and exercises. 4. Communication skills: through open-ended questions. 5. Learning ability: learning ability can also be assessed by taking one mid-term exam during the course.
Programma esteso/Content
✓Introduzione al corso: obiettivi formativi e contenuti, metodi didattici, sistema di valutazione dell’apprendimento. ✓ Definizione di azienda quale sistema economico, sociale, aperto, teleologico. ✓ Ambiente generale e specifico ed interrelazioni con il sistema impresa. ✓ I principali equilibri del sistema impresa e le sue caratteristiche. ✓ Le aree funzionali del management: approcci alternativi. ✓ Le aree funzionali del management: caratteristiche, integrative ed altre (pianificazione, controllo e d’informazione). ✓ Le aree funzionali caratteristiche: marketing. ✓ Le aree funzionali caratteristiche: produzione e logistica. ✓Le aree funzionali caratteristiche: ricerca e sviluppo. ✓ Le aree funzionali integrative: organizzazione e personale. ✓ Le aree funzionali integrative: finanza. ✓ Le altre aree funzionali: pianificazione strategica. ✓ Le altre aree funzionali: amministrazione e controllo di gestione. ✓ I principali processi amministrativi. ✓ Il bilancio d’esercizio come sintesi della gestione aziendale: documenti, logica sottostante e capacità informativa. ✓ Le informazioni dello stato patrimoniale. ✓ Le informazioni del conto economico. ✓ Le informazioni del rendiconto finanziario. ✓ La lettura di un bilancio d’esercizio. ✓ I principali indicatori finanziari. ✓ I principali indicatori patrimoniali. ✓ I principali indicatori di redditività. ✓ L’analisi di un bilancio d’esercizio Gli argomenti del corso potranno subire modifiche a seconda delle esigenze didattiche che emergono durante lo svolgimento dello stesso.
✓Introduction to the course: training objectives and contents, teaching methods, learning evaluation system. ✓ Definition of a company as an economic, social, open, teleological system. ✓ General and specific environment and interrelations with the business system. ✓ The main balances of the business system and its characteristics. ✓ The functional areas of management: alternative approaches. ✓ The functional areas of management: characteristics, integrative and other (planning, control and information). ✓ The characteristic functional areas: marketing. ✓ The characteristic functional areas: production and logistics. ✓The characteristic functional areas: research and development. ✓ The integrative functional areas: organization and personnel. ✓ The integrative functional areas: finance. ✓ The other functional areas: strategic planning. ✓ The other functional areas: administration and management control. ✓ The main administrative processes. ✓ The financial statements as a summary of company management: documents, underlying logic and information capacity. ✓ Information from the balance sheet. ✓ Information on the income statement. ✓ Information from the cash flow statement. ✓ The reading of a financial statement. ✓ The main financial indicators. ✓ The main equity indicators. ✓ The main profitability indicators. ✓ The analysis of a financial statement The topics of the course may undergo changes according to the didactic needs that emerge during the course.
Risultati di apprendimento attesi/Intended learning objectives
Conoscenza: i concetti dei principali processi aziendali che stanno alla base delle logiche sottostanti la formazione di un bilancio d’esercizio. Competenze/abilità • analizzare criticamente, sebbene in modo basico, i principali processi aziendali; comprendere le logiche sottostanti la formazione di un bilancio d’esercizio. • comprendere e saper leggere criticamente il bilancio. • saper valutare autonomamente quando le metodologie sono applicabili • saper comunicare anche a non esperti i risultati, i vantaggi e i limiti delle metodologie implementate • saper estendere i concetti e le idee viste nel corso a nuovi contesti.
Knowledge The concepts the main business processes which underlie the logic behind the preparation of a financial statement. Skills and abilities • understand and critically analyse, albeit in a basic way, the main business processes; understand the logic behind the preparation of a financial statement. • reading and understanding a financial statement. • be able to make autonomously judgements on the use of the introduced methodologies • know how to communicate the results, advantages and limitations of the methodologies implemented even to non-experts • know how to extend the concepts and ideas seen in the course to new settings.
×
Stampa
Insegnamento
INTELLIGENZA ARTIFICIALE E SUPPORTO ALLE DECISIONI
Codice
MF0610
Anno Accademico
2025/2026
Anno regolamento
2025/2026
Corso di studio
INTELLIGENZA ARTIFICIALE E INNOVAZIONE DIGITALE
Curriculum
000-GENERICO
Responsabile didattico
PORTINALE Luigi
Docenti
CFU
9.0
Ore di lezione
72.0
Ore di studio individuale
153.0
Settore Scientifico Disciplinare (SSD)
INF/01 - INFORMATICA
Tipo di insegnamento
Attività formativa monodisciplinare
Fruizione insegnamento
OBB
Categoria insegnamento
B
Anno
1
Periodo
Primo Semestre
Sede
VERCELLI
Tipo di valutazione
V
Lingua insegnamento/Teaching language
ITALIANO
Italian
Contenuti/Content Summary
Il corso di INTELLIGENZA ARTIFICIALE E SUPPORTO ALLE DECISIONI si compone logicamente di due moduli: Intelligenza Artificiale (6 CFU) e Sistemi Intelligenti di Supporto alle Decisioni (3 CFU). INTELLIGENZA ARTIFICIALE: Algoritmi di ricerca nello spazio degli stati; Sistemi di ragionamento basato su casi; Rapresentazione di conoscenza incerta: probabilita' e Reti Bayesiane, SISTEMI INTELLIGENTI DI SUPPORTO ALLE DECISIONI: Teoria delle decisioni; Utilita’ multi-attributo; Diagrammi di influenza; Decisioni one-shot e sequenziali.
The course is logically composed by two modules: Artificial Intelligence (6 CFU) and Intelligent Decision Support Systems (3 CFU). ARTIFICIAL INTELLIGENCE State space search; Case-Based Reasoning; Uncertain knowledge representation: probability theory and Bayesian Networks; INTELLIGENT DECISION SUPPORT SYSTEMS Decision Theory, Multi-attribute utility, Influence diagrams, One-shot and sequential decisions.
Testi di riferimento/Textbooks
S. Russell, P. Norvig. Artificial Intelligence: A Modern Approach (4a edizione), Prentice-Hall. Traduzione italiana pubblicata da Pearson Education.
S. Russell, P. Norvig. Artificial Intelligence: A Modern Approach (4th edition), Prentice-Hall.
Obiettivi formativi/Mission
Conoscenza e capacità di comprensione Il corso mira ad introdurre le nozioni fondamentali e gli scopi di un agente intelligente secondo la visione corrente dell’IA Capacità di applicare conoscenza e comprensione La conoscenza acquisita permetterà allo studente di: comprendere le metodiche algoritmiche necessarie per permettere ad un agente di ricercare soluzioni in uno spazio degli stati. Comprendere l’architettura e i meccanismi di risoluzione di problemi in sistemi basati su precedenti (case-based reasoning). comprendere il ruolo del ragionamento incerto in un sistema knowledge-based. comprendere ed applicare le tecniche di modellizzazione ed analisi tramite formalismi a reti probabilistiche; comprendere ed applicare le nozioni fondamentali di teoria delle decisioni in presenza di incertezza e di utilità multi-attributo estendere le conoscenze sulle reti probabilistiche alle reti decisionali per modellare ed analizzare decisioni sia di tipo one-shot che di tipo sequenziale usare ed applicare appositi tools per l’analisi di problemi decisionali. Autonomia di giudizio: il corso consentirà allo studente di sviluppare un’autonomia di giudizio e porrà lo studente nelle condizioni di valutare le scelte di rappresentazione ed inferenza adeguate per il corretto sviluppo di un sistema di IA in generale e di supporto alle decisioni in particolare. Abilità communicative: sulla base delle conoscenze acquisite, lo studente potrà sviluppare abilità comunicative e relazionali per poter lavorare in team alla progettazione di sistemi di IA e per poter evidenziare limiti e vantaggi dei vari approcci possibili. Capacita' di apprendimento: lo studio della disciplina consentirà allo studente di capire quali alternative esistono nella progettazione e programmazione di un sistema intelligente a supporto delle decisioni e di poter scegliere l’approccio più adeguato al compito prefissato.
Knowledge and understanding: the class will introduce the fundamentals notions and the goals of intelligent agents by considering the current vision of modern AI. Applying knowledge and understanding: the acquired knowledge will allow the student: to understand algorithms to perform state-space search. to understand the architecture and the inference methods for solving problems in precedent-based systems (case-based reasoning). to understand the role of uncertainty in a knowledge-based system. to understand and apply modeling and analysis techniques concerning formalisms based on probabilistic networks. to understand and aplly main notions about decision theory in presence of uncertainty and multi-attribute utility; to extend notions of probabilistic networks to decision networks, in order to model and analyze one-shot and sequential decisions. to use and apply suitable tools for decision problem analysis. Making judgements: contents in this class will allow the student to develop autonomous judgement skills; he/she will be able to evaluate different choices from both representational and inference point of view, in a way to design a suitable intelligent decision support system. Communications skills: the student will develop relational and communication skills that will allow him/her to work in team, and to emphasize pros and cons of the possible approaches. Learning skills: the study of the principles of the discipline will allow the student to have a correct understanding of the possible alternatives in the development of an intelligent decision support system, and it will allow him/her to choose the most suitable approach.
Prerequisiti/Required background knowledge
Algoritmi e strutture dati; Calcolo delle Probabilita’ (consigliati)
Suggested: Algorithms and data structures Probability.
Metodi didattici/Teaching methods
Lezioni frontali in aula, esercitazioni tramite piattaforma Moodle, uso di strumenti software.
Lectures and exercises using Moodle and software tools.
Altre informazioni/Further information
Disponibili registrazioni lezioni in aula e video lezioni
Video lectures available
Modalità di verifica dell'apprendimento/Assessment methods
Esame scritto integrato da eventuale esame orale. Possibilità di presentazione di un progetto pratico.
Written and oral (not mandatory) exam. Potential project presentation.
Programma esteso/Content
INTELLIGENZA ARTIFICIALE: Introduzione e cenni storici sull'AI. Ricerca nello spazio degli stati: ricerca path-based cieca ed euristica. L'algoritmo A*. Algoritmi di miglioramento iterativo: hill-climbing e simulated annealing; Cenni su problemi CSP. Algoritmi per giochi a 2 concorrenti: minimax e alfa/beta pruning. Rappresentazione della conoscenza: cenni su formalismi logici e a regole. Sistemi di Case-Based Reasoning; Conoscenza Incerta: richiami di calcolo delle probabilità. Bayesian Belief Networks (proprietà ed algoritmi) e uso di tool per il loro sviluppo (Genie, Hugin, ecc...). SISTEMI INTELLIGENTI DI SUPPORTO ALLE DECISIONI: Teoria delle decisioni. Utilita’ multi-attributo. Diagrammi di influenza Decisioni one-shot e sequenziali.
ARTIFICIAL INTELLIGENCE: Introduction and history of AI State space search: path-based blind and heuristic search. A* algorithm. Iterative improvement algorithms: hillclimbing and simulated annealing CSP problems Two players games: minimax and alpha/beta pruning Knowledge representations: hints on logical formalism. Case-Based Reasoning systems; the CBR-Works tool. Uncertain knowledge: probability theory, Bayesian Networks (properties and algorithms); BN tools (Genie, Hugin, etc...). INTELLIGENT DECISION SUPPORT SYSTEMS: Decision Theory. Multi-attribute utility Influence diagrams One-sot and sequential decisions.
Risultati di apprendimento attesi/Intended learning objectives
CONOSCENZE: Conoscere le caratteristiche principali e l’architettura di un agente intelligente e basato su conoscenza. Conoscere i principali algoritmi di ricerca nello spazio degli stati usati nell' IA Saper rappresentare conoscenza in sistemi intelligenti anche in presenza di incertezza, Conoscere gli algoritmi di inferenza tipici dei sistemi intelligenti moderni. Saper modellare ed analizzare processi decisionali one-shot e sequenziali tramite modelli grafico-probabilistici COMPETENZE E ABILITA’: essere in grado di: comprendere il ruolo dei diversi moduli di un architettura di agente intelligente; progettare agenti o moduli di agenti in grado di risolvere problemi in spazi degli stati, di risolvere problemi sulla base di esperienze precedenti, di risolvere problemi in presenza di incertezza, di suggerire decisioni (anche di tipo sequenziale ) adeguate in presenza di incertezza. saper stabilire le connessioni tra argomenti trattati in parti diverse del corso, sapersi interfacciare e comunicare adeguatamente con eventuali esperti dell’applicazione di dominio; conoscere la terminologia adeguata.
KNOWLEDGE: to know the main features and the architecture of an intelligent knowledge-based system. To know main AI state space search algorithms. To be able to represent knowledge in intelligent systems even when uncertainty is present. To know the main inference algorithms adopted in modern intelligent systems. To be able to model ad analyze one-shot and sequential decision processes, using probabilistic graphical models. COMPETENCE AND SKILLS: to be able to understand the role of different architectural modules of an intelligent agent. To design agent or modules of agents able to solve problems in a state space, to solve problems based on precedents, to solve problems with uncertain knowledge, to suggest decision under uncertainty. To be able to connect notions present in different parts of the class; to be able to suitably interface with domain experts; to know the right terminology.
×
Stampa
Insegnamento
DIRITTO E SOCIETÀ DIGITALE
Codice
MF0612
Anno Accademico
2025/2026
Anno regolamento
2025/2026
Corso di studio
INTELLIGENZA ARTIFICIALE E INNOVAZIONE DIGITALE
Curriculum
000-GENERICO
Responsabile didattico
CAMPO Alessandro
CFU
6.0
Ore di lezione
48.0
Ore di studio individuale
102.0
Settore Scientifico Disciplinare (SSD)
IUS/09 - ISTITUZIONI DI DIRITTO PUBBLICO
Tipo di insegnamento
Attività formativa monodisciplinare
Fruizione insegnamento
OPZ
Categoria insegnamento
C
Anno
1
Periodo
Primo Semestre
Sede
VERCELLI
Tipo di valutazione
V
Lingua insegnamento/Teaching language
ITALIANO
Italian
Contenuti/Content Summary
Il corso intende proporre uno studio critico dell'informatica giuridica in rapporto sia al concetto di diritto in senso stretto, sia alla società contemporanea nel suo complesso. Nella prima parte del corso sarà dedicata particolare attenzione all’intelligenza artificiale. Si comincerà con un’analisi del concetto di intelligenza così come elaborato attraverso i vari saperi per poi giungere alla specificità di quella che definiamo AI. Si analizzeranno dunque i vari punti di incrocio fra AI e giuridicità, approfondendo la cosiddetta “informatica del diritto”, con particolare enfasi sulla questione della giustizia predittiva. Quest’ultima, nello specifico, sarà posta in relazione alla critica “retorica” del metodo sillogistico nel diritto. In seguito, si analizzerà il “diritto dell’informatica”, con particolare attenzione all’AI ACT e al GDPR. Nella seconda parte del corso, si approfondiranno le connessioni tra diritto e società digitale in un senso più ampio. Ci si concentrerà sulle trasformazioni sociali che la società dell’informazione sta attraversando. Verranno in particolare affrontate questioni filosofiche e giuridiche poste dalla pervasività dei social network, dal cambiamento del ruolo dell’opinione pubblica, dalla crisi della democrazia digitale, dal tema della verità delle informazioni nel dibattito pubblico. Le studentesse e gli studenti con disabilità o con Disturbi Specifici dell’Apprendimento (DSA) o con Bisogni Educativi Speciali (BES) possono richiedere servizi e strumenti specifici a loro dedicati rivolgendosi allo Staff Sviluppo e Coordinamento Carriere e Servizi alle Studentesse e agli Studenti e consultando la pagina dedicata del sito di Ateneo: https://uniupo.it/it/servizi/servizi-studentidisabili-e-dsa Le studentesse e gli studenti con disabilità, DSA, BES, una volta preso contatto con lo Staff di Ateneo, possono contattare la/il docente titolare dell'insegnamento in relazione alla declinazione delle modalità di esame, in merito agli aspetti didattici.
The course aims to offer a critical study of legal informatics in relation to both the concept of law in the strict sense and contemporary society as a whole. The first part of the course will focus on artificial intelligence. It will begin with an analysis of the concept of intelligence as developed through various fields of knowledge, before moving on to the specific nature of what we call AI. We will then analyse the various points of intersection between AI and legality, exploring the so-called “legal informatics”, with particular emphasis on the issue of predictive justice. Specifically, the latter will be related to the “rhetorical” criticism of the syllogistic method in law. Next, we will analyse “information technology law”, with particular attention to the AI ACT and the GDPR. In the second part of the course, we will explore the connections between law and digital society in a broader sense. We will focus on the social transformations that the information society is undergoing. In particular, we will address philosophical and legal issues raised by the pervasiveness of social networks, the changing role of public opinion, the crisis of digital democracy, and the issue of the truthfulness of information in public debate. Students with disabilities or Specific Learning Disorders or Special Educational Needs can request specific services and tools dedicated to them by contacting the Staff Sviluppo e Coordinamento Carriere e Servizi alle Studentesse e agli Studenti and consulting the dedicated page on the University page https://www.uniupo.it/en/services/servicesstudents-physical-or-learning-disabilities. Once they have contacted the University Staff, Students with disabilities, learning disabilities or special education needs can contact the course lecturer to discuss the exam format and other teaching aspects.
Testi di riferimento/Textbooks
L'intelligenza artificiale e il diritto (Giovanni Sartor, Giappichelli, 2022); capitoli scelti tratti da Il caso degli Speleologi (Lon Fuller); Argomentazione giuridica e retorica forense (Maurizio Manzin); Essere una macchina (Mark O'Connell) e altri forniti a lezione.
L'intelligenza artificiale e il diritto (Giovanni Sartor, Giappichelli, 2022); selected chapters taken from Il caso degli Speleologi (Lon Fuller); Argomentazione giuridica e retorica forense (Maurizio Manzin); Essere una macchina (Mark O'Connell) and others provided in class.
Obiettivi formativi/Mission
Gli studenti acquisiranno: le basi dell’informatica giuridica; la comprensione del rapporto tra A.I. e diritto rispetto alle principali tecniche utilizzate dal diritto e rispetto alle più rilevanti previsioni normative in tema di intelligenza artificiale; la capacità di mettere in relazione la vicenda retorica e topica del processo con le ipotesi di giustizia predittiva; la capacità di svolgere un’analisi critica del rapporto tra informatica e società odierna; la capacità di riflettere sulla democrazia in rapporto alla società digitale e al tema delle fake news.
Students will acquire: the basics of legal informatics; an understanding of the relationship between AI and law with regard to the main techniques used in law and the most relevant regulatory provisions on artificial intelligence; the ability to relate the rhetoric and topical issues of the trial to the hypotheses of predictive justice; the ability to carry out a critical analysis of the relationship between information technology and today's society; the ability to reflect on democracy in relation to the digital society and the issue of fake news.
Prerequisiti/Required background knowledge
Nessuno
No one
Metodi didattici/Teaching methods
In aggiunta alle lezioni frontali, saranno proposte possibilità di approfondimento individuali. Verranno inoltre organizzati momenti di discussione critica su testi precedentemente indicati ed esercitazioni.
In addition to lectures, opportunities for individual study will be offered. There will also be opportunities for critical discussion of previously assigned texts and exercises.
Modalità di verifica dell'apprendimento/Assessment methods
L'esame prevede una parte scritta avente ad oggetto due domande aperte sul testo di Sartor e una parte orale in cui ciascuno porterà un approfondimento elaborato tramite altri materiali forniti a lezione
The examination consists of a written section with two open-ended questions on Sartor's text and an oral section in which each candidate will present an in-depth analysis based on other materials provided during the course.
Programma esteso/Content
-Definizione del concetto di “intelligenza” tramite diverse discipline (filosofia, psicologia, logica, informatica); distinzione tra intelligenza umana e artificiale: indagine sulle differenze tra capacità cognitive umane e loro simulazione tramite algoritmi (intelligenza artificiale forte e debole) - studio delle principali tipologie di AI (deterministica, statistica, machine learning, deep learning) - rapporti tra AI e diritto: analisi delle aree in cui l’AI entra in relazione con il sistema giuridico. Introduzione ai concetti di: informatica del diritto (uso degli strumenti informatici nei processi interpretativi e decisionali giuridici) e automazione della giustizia. Studio dei sistemi che utilizzano modelli statistici per prevedere decisioni giudiziarie - Discussione della critica del modello sillogistico del diritto - Il diritto dell’informatica: analisi delle norme giuridiche che regolano le tecnologie digitali. Approfondimento di due strumenti normativi chiave: AI Act (regolamentazione europea dell’Intelligenza Artificiale), GDPR (normativa europea sulla protezione dei dati personali). Valutazione degli impatti sull’autonomia, privacy e responsabilità - Trasformazioni sociali nella società dell’informazione: comprensione del ruolo dei dati e delle piattaforme digitali nella vita quotidiana. Analisi del passaggio dalla comunicazione verticale (media tradizionali) a quella interattiva e orizzontale (social network) - questioni filosofiche e giuridiche emergenti: pervasività dei social network e controllo dell’attenzione. Mutamento del ruolo dell’opinione pubblica: da discussione critica a polarizzazione. Crisi della democrazia digitale: interferenze informative personalizzazione algoritmica dei contenuti, difficoltà di costruire spazi deliberativi comuni - tema della verità nell’infosfera: fake news, post-verità, manipolazioni narrative. Implicazioni per la responsabilità delle piattaforme e per l’educazione civica digitale.
-Definition of the concept of ‘intelligence’ through various disciplines (philosophy, psychology, logic, computer science); distinction between human and artificial intelligence: investigation of the differences between human cognitive abilities and their simulation through algorithms (strong and weak artificial intelligence) - study of the main types of AI (deterministic, statistical, machine learning, deep learning) - relationships between AI and law: analysis of the areas in which AI interacts with the legal system. Introduction to the concepts of: legal informatics (use of IT tools in legal interpretation and decision-making processes) and automation of justice. Study of systems that use statistical models to predict judicial decisions - Discussion of the critique of the syllogistic model of law - IT law: analysis of the legal rules governing digital technologies. In-depth study of two key regulatory instruments: the AI Act (European regulation of artificial intelligence) and the GDPR (European regulation on personal data protection). Assessment of the impacts on autonomy, privacy and responsibility - Social transformations in the information society: understanding the role of data and digital platforms in everyday life. Analysis of the transition from vertical communication (traditional media) to interactive and horizontal communication (social networks) - emerging philosophical and legal issues: pervasiveness of social networks and control of attention. Changing role of public opinion: from critical discussion to polarisation. Crisis of digital democracy: information interference, algorithmic personalisation of content, difficulty in building common deliberative spaces - theme of truth in the infosphere: fake news, post-truth, narrative manipulation. Implications for platform accountability and digital civic education.
Risultati di apprendimento attesi/Intended learning objectives
Conoscenza degli argomenti indicati; sviluppo della capacità di analisi critica dell’uso dell’AI nel ragionamento giuridico e nella pratica del diritto; sviluppo della conoscenza e analisi approfondita degli strumenti giuridici che regolano l’AI; sviluppo di una capacità di analisi e riflessione relative alla società digitale con attenzione alla questione della verità, della democrazia, dell’opinione pubblica.
Knowledge of the topics indicated; development of critical analysis skills regarding the use of AI in legal reasoning and legal practice; development of knowledge and in-depth analysis of the legal instruments governing AI; development of analytical and reflective skills relating to the digital society, with a focus on the issues of truth, democracy and public opinion.
×
Stampa
Insegnamento
DATA MINING PER DATI SPERIMENTALI
Codice
MF0613
Anno Accademico
2025/2026
Anno regolamento
2025/2026
Corso di studio
INTELLIGENZA ARTIFICIALE E INNOVAZIONE DIGITALE
Curriculum
000-GENERICO
Responsabile didattico
PIOVESAN LUCA
Docenti
CFU
9.0
Ore di lezione
72.0
Ore di studio individuale
153.0
Settore Scientifico Disciplinare (SSD)
INF/01 - INFORMATICA
Tipo di insegnamento
Attività formativa monodisciplinare
Fruizione insegnamento
OBB
Categoria insegnamento
B
Anno
1
Periodo
Secondo Semestre
Sede
VERCELLI
Tipo di valutazione
V
Lingua insegnamento/Teaching language
ITALIANO
Italian
Contenuti/Content Summary
Il corso presenta le tecniche di machine learning e deep learning avanzate per l'analisi di dati sperimentali. Oltre ad una componente teorica, introduce in laboratorio alle librerie Python più avanzate per la loro implementazione pratica.
The course presents the machine learning and deep learning techniques for the analysis of experimental data. Besides a theoretical component, in laboratory the most advanced Python libraries for ML and DL are introduced.
Testi di riferimento/Textbooks
Bishop, C., Pattern Recognition and Machine Learning, Springer Goodfellow et al., Deep Learning, MIT Press
Bishop, C., Pattern Recognition and Machine Learning, Springer Goodfellow et al., Deep Learning, MIT Press
Obiettivi formativi/Mission
Conoscenza e capacità di comprensione: il corso ha l'obiettivo di fornire allo studente solide conoscenze dei più comuni metodi e strumenti del data mining nell'ambito dell'analisi di dataset complessi o caratteristici dei normali problemi che si incontrano in ambiti generali di raccolta dati. Capacità di applicare conoscenza e comprensione: dato un dataset più o meno complesso, ed una conoscenza del dominio sufficiente, il futuro dottore sarà in grado di condurre autonomamente un’analisi dei dati basata su tecniche di data mining e deep learning, comprensiva delle fasi di pretrattamento dei dati e valutazione dei risultati ottenuti. Questo obiettivo sarà raggiunto anche grazie alla realizzazione in autonomia di un progetto di laboratorio. Autonomia di giudizio: lo studente acquisirà l’abilità di scegliere la miglior strategia modellistica e di analisi e di gestione di problemi complessi in ambito analisi dei dati o apprendimento automatico. Inoltre, acquisirà competenze di valutazione della bontà di modelli ottenuti tramite tecniche di data mining o deep learning. Abilità comunicative: lo studente acquisirà un lessico appropriato in relazione agli argomenti affrontati nel corso, al fine di poter collaborare con altri esperti del settore. Capacità di apprendimento: scopo fondamentale del corso è anche quello di sviluppare la capacità di apprendere autonomamente nuove tecniche di data mining e deep learning particolarmente adatte a settori specifici.
Knowledge and understanding: the course aims at providing students with solid knowledge about the most important data mining methods and instruments, focusing on the analysis of complex and real-world datasets. Applying knowledge and understanding: given a dataset, and an adequate domain knowledge, the future graduate will be able to autonomously carry on a data analysis based on data mining and deep learning techniques, considering also the preprocessing and result evaluation phases. Such a goal will be achieved also by the development of a laboratory project, autonomously carried out by students. Making judgments: students will acquire the ability of choosing the best strategy to manage complex problems in the fields of data analysis and machine learning. In addition, students will acquire competences of evaluation of the models obtained by applying data mining or deep learning techniques. Communication Skills: students will learn an adequate terminology about the arguments presented in the course, in order to be able to collaborate with other experts of the field. Learning Skills: students will acquire the ability of autonomously learning new data mining or deep learning techniques, useful in specific fields.
Prerequisiti/Required background knowledge
Prerequisiti formali: nessuno. Prerequisiti sostanziali: nozioni base di statistica, nozioni base di programmazione Python (tipi di dati, flusso di controllo, funzioni, liste, classi, gestione degli errori)
Formal prerequisites: none. Substantial prerequisites: basic notions of statistics, basic notions of Python programming (data types, Controlling program flow, Functions, Lists, Classes, Exception handling)
Metodi didattici/Teaching methods
Il corso è insegnato in aula e in laboratorio. Nelle lezioni in aula vengono esposte le nozioni fondamentali, corredate di esempi. Viene discussa l'utilità ai fini pratici dei diversi modelli per trattare task e dati differenti. In laboratorio lo studente viene guidato nell'uso dei modelli visti a lezione. Vengono suggeriti diversi dataset da analizzare e viene spiegato come procurarsene di nuovi sia per esercitarsi ulteriormente e discuterne con il docente, sia ai fini dell'esame finale
The course is taught in class and in lab. In class the fundamental notions are presented, along with examples. The presentation is completed with discussions on the usage of different models to solve specific kinds of task for different data. In lab the student is guided in using the models seen in class. Several datasets are proposed for exercises, and it is discussed how to obtain further datasets, to be used both for exercises and for the final test.
Altre informazioni/Further information
L'attività in laboratorio richiede una partecipazione attiva e individuale degli studenti, che in tal modo sviluppano abilità pratiche (le capacità di realizzare un programma). Inoltre, il coinvolgimento attivo li induce a porsi dei quesiti (e spesso di conseguenza a porne al docente); in tal modo si realizza una regolare verifica del modo in cui gli argomenti vengono recepiti. Le studentesse e gli studenti con disabilità o con Disturbi Specifici dell’Apprendimento (DSA) o con Bisogni Educativi Speciali (BES) possono richiedere servizi e strumenti specifici a loro dedicati rivolgendosi allo Staff Sviluppo e Coordinamento Carriere e Servizi alle Studentesse e agli Studenti e consultando la pagina dedicata del sito di Ateneo: https://uniupo.it/it/servizi/servizi-studenti- disabili-e-dsa Le studentesse e gli studenti con disabilità, DSA, BES, una volta preso contatto con lo Staff di Ateneo, possono contattare la/il docente titolare dell'insegnamento
Hands-on activity requires active participation of the students, who this way develop prcatical skills (ability to implement a program). Moreover, he active involvement leads the students to ask themselves questions (and, as a consequence, often to ask questions to the instructor); this allows a regular monitoring of the way the subject is being understood. Students with physical disabilities, Learning Disabilities or Special Education Needs can request specific services and tools via the Staff Sviluppo e Coordinamento Carriere e Servizi alle Studentesse e agli Studenti, consulting the University webpage: https://www.uniupo.it/en/services/services- students-physical-or-learning-disabilities Students with disabilities, learning disabilities or special education needs, once they have contacted the University Staff, can refer to the tutor in charge of the course to define the examination modalities, concerning academic aspects.
Modalità di verifica dell'apprendimento/Assessment methods
Esame orale concernente l'analisi di uno o più dataset, sia con tecniche di machine learning che deep learning. L'obiettivo di questa parte è di verificare che lo studente sia autonomo nella realizzazione di un task su un dataset reale. La presentazione è seguita da una discussione (1-3 domande) sulle tecniche viste a lezione. Il goal della discussioner è di verificare che lo studente abbia acquisito le nozioni teoriche di base viste a lezione.
Oral examination corcerning the analysis of one or more datasets, both with machine learning and deep learning techniques. The goal of this part is to verify that the student is autonomous in the fulfillment of a task on a real dataset. The presentation is followed by a discussion (1-3 questions) regarding the techniques presented during the course. The goal of the discussion is to verify that the student has acquired the basic theoretical notions discussed during the course.
Programma esteso/Content
- Fasi principali di una pipeline di data science (KDD process) - Preprocessing - Normalizzazione, standardizzazione, Discretizzazione, Encoding, 1-hot encoding label encoding - Machine learning supervisionato: Regressione Regressione lineare univariata/multivariata Trade-off bias/variance Regolarizzazione Ridge Lasso Validazione modelli Tecniche di validazione Metriche di valutazione MSE, MAE, R2 - Classificazione Modelli: Decision tree Ensemble learning Random forest Boosted trees KNN Regressione logistica Metriche di valutazione Accuracy, precision, recall, Fb score Machine learning non supervisionato: - Clustering Modelli K-means DBSCAN Clustering gerarchico - Metriche di valutazione Intrinseche SSE, silhouette Estrinseche Rand index, Mutual information - Riduzione dimensionalita' PCA Reti neurali: perceptron funzioni di attivazione (sigmoid, tanh e relu) multilayer perceptron Uso: forward propagation e backpropagation con discesa del gradiente. Ottimizzazioni e regolarizzazioni per reti neurali profonde (problema del gradiente instabile). Convolutional neural networks e uso nella computer vision. Transfer learning. Residual neural network. Recurrent Neural Network. Autoencoders. Adversarial Learning. Python Introduzione a NumPy Scikit-learn API scikit-learn Preprocessing (transformers) Classificazione/Regressione/Clustering (estimators) Pipelines Validazione modelli train_test_split, KFold, cross_val_score, cross_val_predict Metriche di valutazione sklearn.metrics.* Selezione modelli ParameterGrid, GridSearchCV, RandomizedSearchCV Utilizzo di Tensorflow e Keras per modelli di deep learning
- Data science pipeline (KDD process) - preprocessing - normalization, standardization, discretization, encoding, 1-hot encoding, label encoding - Supervised machine learning: regression, linear regression univariate, multivariate. Ridge, lasso regularization. Model validation. MSE, MAE, R2. Classification Models: decision trees, ensemble learning, random forest, Boosted trees KNN Logistic regression. Evaluation metrics: Accuracy, precision, recall, Fb score. Unsupervised ML Clustering: K-means DBSCAN, hierarchical clustering. SSE, silhouette Rand index, Mutual information. PCA. Neural networks: perceptron activation functions (sigmoid, tanh e relu) multilayer perceptron Use: forward propagation and backpropagation with gradient descent. Optimizations and regularizations for deep neural networks (unstable gradient problem). Convolutional neural networks and computer vision. Transfer learning. Residual neural network. Recurrent Neural Network. Autoencoders. Adversarial Learning. Python: introduction to NumPy Scikit-learn API scikit-learn Preprocessing (transformers) Classification/Regression/Clustering (estimators) Pipelines Model validation train_test_split, KFold, cross_val_score, cross_val_predict Evaluation metrics sklearn.metrics.* Model selection: ParameterGrid, GridSearchCV, RandomizedSearchCV Tensorflow and Keras for deep learning
Risultati di apprendimento attesi/Intended learning objectives
Conoscenze: Conoscenze teoriche: conoscenza delle basi teorico/pratiche delle più moderne tecniche di data mining (pattern recognition, classificazione, regressione, metodi non lineari) ed una buona conoscenza delle moderne tecniche di deep learning. Conoscenze pratiche: conoscenza dei principali strumenti software per il data mining e di come risolvere un caso studio e presentarlo. Competenze ed abilità: Applicazione delle tecniche acquisite: saper applicare mediante software dedicato le tecniche di analisi dati viste a lezione per la soluzione verticale di casi studio proposti. Valutazione: saper confrontare criticamente diversi metodi e modelli. Saper scegliere l’approccio più adatto alla soluzione di un caso di studio proposto. Esposizione: essere in grado di redigere un report tecnico-scientifico sull’analisi di dati, utilizzando un lessico appropriato in relazione agli argomenti affrontati nel corso. Apprendimento: capacità di utilizzare il materiale di studio in autonomia al fine di acquisire le competenze utili a risolvere nuovi casi di studio proposti.
Knowledge: Theoretical Knowledge: knowledge of the most recent data mining techniques (pattern recognition, classification, regression, non-linear methods) and a good knowledge of the modern techniques of deep learning. Practical knowledge: knowledge of the main data mining software. Ability of carrying on and of presenting a case study. Competences and skills: Application of the presented techniques: applying, using specific software, the analysis techniques to vertically solve proposed case studies. Evaluation: critically comparing different methods and models. Choose the most suitable approach for a specific problem. Presentation: producing a technical report about the data analysis, using an appropriate terminology about the topics of the course. Learning: being able to use documentation autonomously, in order to acquire the competences needed to solve new problems.
×
Stampa
Insegnamento
ARCHITETTURE COMPUTAZIONALI, RETI E SICUREZZA
Codice
MF0614
Anno Accademico
2025/2026
Anno regolamento
2025/2026
Corso di studio
INTELLIGENZA ARTIFICIALE E INNOVAZIONE DIGITALE
Curriculum
000-GENERICO
Responsabile didattico
GARACCIONE Giacomo
CFU
12.0
Ore di lezione
96.0
Ore di studio individuale
204.0
Settore Scientifico Disciplinare (SSD)
INF/01 - INFORMATICA
Tipo di insegnamento
Attività formativa monodisciplinare
Fruizione insegnamento
OBB
Categoria insegnamento
B
Anno
1
Periodo
Secondo Semestre
Sede
VERCELLI
Tipo di valutazione
V
Lingua insegnamento/Teaching language
Italiano
Italian
Contenuti/Content Summary
Il corso offre una panoramica completa delle fondamenta dell'informatica, introducendo gli studenti alle sfaccettature complesse dei sistemi di calcolo, dalle strutture hardware, come processori e supporti di memorizzazione, alla rappresentazione dei dati e al dimensionamento dello spazio di memorizzazione. Inoltre, approfondisce la comprensione degli studenti sulla distinzione tra i vari strati software, inclusi firmware, sistema operativo e applicazioni. Gli studenti esploreranno la complessità delle reti e dei protocolli di comunicazione, comprendendo l'importanza del dimensionamento dei dispositivi in termini di capacità di memorizzazione e potenza di trasmissione. Saranno inoltre portati a familiarizzare con i componenti fondamentali per la connessione alla rete di una varietà di dispositivi, tra cui PC, dispositivi mobili e sensori IoT. Sarà data enfasi all'esplorazione dei requisiti software, sia funzionali che non funzionali, e alla diversità di applicazioni e servizi, disponibili sia localmente che in rete. Questo segmento del corso comprende anche una panoramica sui diversi tipi di licenze software e fornisce un'introduzione al lavoro con UML (Unified Modeling Language), uno strumento standardizzato per la modellazione di software. Infine, gli studenti si immergeranno nel mondo della sicurezza informatica. Saranno introdotti a una vasta gamma di argomenti, tra cui i requisiti di sicurezza, le diverse tipologie di attacchi, l'organizzazione e la gestione degli incidenti, e i protocolli crittografici. Un focus importante sarà dato all'apprendimento dei principi di funzionamento dei firewall e al riconoscimento della varietà di soluzioni crittografiche disponibili, insieme alla comprensione di come queste si relazionino ai requisiti di sicurezza ed efficienza con l'obiettivo di sviluppare negli studenti una consapevolezza critica che li accompagni nel loro futuro percorso professionale.
The course provides a comprehensive overview of the fundamentals of computer science, introducing students to the complex facets of computing systems, from hardware structures, such as processors and storage media, to data representation and storage space sizing. Additionally, it deepens students' understanding of the distinction between various software layers, including firmware, operating system, and applications. Students will explore the complexity of networks and communication protocols, understanding the importance of device sizing in terms of storage capacity and transmission power. They will also be encouraged to familiarize themselves with the fundamental components for connecting a variety of devices to the network, including PCs, mobile devices, and IoT sensors. Emphasis will be placed on exploring software requirements, both functional and non-functional, and on the diversity of applications and services, available both locally and over the network. This segment of the course also includes an overview of the different types of software licenses and provides an introduction to working with UML (Unified Modeling Language), a standardized tool for software modeling. Lastly, students will immerse themselves in the world of computer security. They will be introduced to a wide range of topics, including security requirements, different types of attacks, the organization and management of incidents, and cryptographic protocols. Significant focus will be given to learning the principles of firewall operation and recognizing the variety of cryptographic solutions available, along with understanding how these relate to security and efficiency requirements. The aim is to develop in students a critical awareness that will accompany them in their future professional path.
Testi di riferimento/Textbooks
INFORMATICA DI BASE 7/ED di Dennis Curtin, Kim Foley, Kunal Sen, Cathy Morin, Agostino Marengo, Alessandro Pagano McGraw-Hill Reti di calcolatori e Internet, Un approccio top-down James F. Kurose, Keith W. Ross Pearson Charles Pfleeger & Shari Lawrence Pfleeger & Lizzie Coles-Kemp Security in Computing, 6th Edition Addison-Wesley Professional
INFORMATICA DI BASE 7/ED di Dennis Curtin, Kim Foley, Kunal Sen, Cathy Morin, Agostino Marengo, Alessandro Pagano McGraw-Hill Reti di calcolatori e Internet, Un approccio top-down James F. Kurose, Keith W. Ross Pearson Charles Pfleeger & Shari Lawrence Pfleeger & Lizzie Coles-Kemp Security in Computing, 6th Edition Addison-Wesley Professional
Obiettivi formativi/Mission
Il corso fornisce agli studenti una panoramica completa delle sue fondamenta, equipaggiandoli con strumenti per capire l'importanza delle scelte fatte nei sistemi hardware, applicazioni software, connettività di rete e aspetti di sicurezza. L'obiettivo è che gli studenti siano in grado di interagire in modo informato con gli esperti per valutare correttamente le necessità nel loro specifico ambito applicativo. Il corso si avvale di un approccio pratico, affiancando all'analisi teorica l'analisi di casi di studio e alcune attività di sperimentazione. Ciò aiuta a migliorare la comprensione degli argomenti e a familiarizzare gli studenti con i principali strumenti delle diverse aree specifiche. Gli studenti svilupperanno la conoscenza e la capacità di comprendere la rappresentazione digitale delle informazioni, la loro comunicazione e l'elaborazione tramite strumenti informatici. Il corso fornisce una conoscenza di base sulla struttura e il funzionamento di un sistema di calcolo e dei protocolli di comunicazione, con le loro componenti hardware e software. Inoltre, evidenzia le similitudini e le differenze tra diverse architetture e le mette in relazione con i requisiti di uno specifico contesto applicativo. È posta enfasi sull'esplorazione dei requisiti software, sia funzionali che non funzionali, e sulla varietà di applicazioni e servizi, disponibili sia localmente che in rete. Gli studenti saranno anche introdotti a lavorare con UML (Unified Modeling Language), uno strumento standardizzato per la modellazione del software. Infine, il corso si immerge nel mondo della sicurezza informatica, introducendo gli studenti a una vasta gamma di argomenti. Saranno illustrati i requisiti di sicurezza, le diverse tipologie di attacchi, l'organizzazione e la gestione degli incidenti e i protocolli crittografici. Gli studenti impareranno i principi di funzionamento dei firewall e riconosceranno la varietà di soluzioni crittografiche disponibili, capendo come queste si relazionano ai requisiti di sicurezza ed efficienza. Le competenze acquisite permetteranno agli studenti di apprezzare le potenzialità e i limiti delle diverse architetture di sistemi di calcolo, dei diversi protocolli e dei corrispondenti rischi di sicurezza. Saranno in grado di identificare i requisiti essenziali per un sistema efficace nel loro contesto applicativo, fornendo indicazioni agli esperti incaricati di costruire o adattare il sistema per soddisfare tali requisiti. Gli studenti acquisiranno la capacità di valutare problemi di dimensionamento dei sistemi in funzione del tipo di problemi da risolvere e di sicurezza. Nell'analisi dei requisiti funzionali e non funzionali di sistemi innovativi nel loro campo applicativo, saranno in grado di contribuire alla valutazione dell'adeguatezza della combinazione tra protocolli di comunicazione e dispositivi da adottare, e alla scelta delle misure di sicurezza più opportune, in collaborazione con analisti, sviluppatori esperti e specialisti di sicurezza. Infine, acquisiranno la capacità di utilizzare la terminologia tecnica specifica del settore e di esporre efficacemente le caratteristiche salienti dei problemi applicativi di loro competenza, confrontando possibili soluzioni alternative, sia architetturali che di comunicazione e di protezione, con l'aiuto di esperti del settore. Il corso, inoltre, si propone di fornire agli studenti la capacità di apprendere autonomamente. Saranno in grado di apprezzare e valutare le nuove tecnologie e protocolli che si basano sui principi fondamentali trattati nel corso, aggiornando le proprie conoscenze.
The course provides students with a comprehensive overview of its foundations, equipping them with tools to understand the importance of choices made in hardware systems, software applications, network connectivity, and security aspects. The aim is for students to be able to interact knowledgeably with experts to correctly assess the needs in their specific application area. The course adopts a practical approach, complementing theoretical analysis with case study analysis and some experimentation activities. This helps to improve understanding of the topics and familiarize students with the main tools of different specific areas. Students will develop knowledge and the ability to understand the digital representation of information, their communication, and processing through computer tools. The course provides a basic understanding of the structure and operation of a computing system and communication protocols, with their hardware and software components. In addition, it highlights the similarities and differences between various architectures and relates them to the requirements of a specific application context. Emphasis is placed on exploring software requirements, both functional and non-functional, and on the variety of applications and services, available both locally and online. Students will also be introduced to working with UML (Unified Modeling Language), a standardized tool for software modeling. Finally, the course delves into the world of information security, introducing students to a wide range of topics. Security requirements, different types of attacks, organization and management of incidents, and cryptographic protocols will be illustrated. Students will learn the operating principles of firewalls and will recognize the variety of available cryptographic solutions, understanding how these relate to security and efficiency requirements. The skills acquired will allow students to appreciate the potential and limits of different computing system architectures, different protocols, and corresponding security risks. They will be able to identify the essential requirements for an effective system in their application context, providing guidance to experts responsible for building or adapting the system to meet such requirements. Students will gain the ability to evaluate system sizing problems based on the type of problems to be solved and security. In analyzing the functional and non-functional requirements of innovative systems in their application field, they will be able to contribute to evaluating the suitability of the combination of communication protocols and devices to adopt, and to choosing the most appropriate security measures, in collaboration with analysts, expert developers, and security specialists. Finally, they will acquire the ability to use the specific technical terminology of the sector and to effectively present the salient features of application problems in their field of competence, comparing possible alternative solutions, both architectural and communication and protection, with the help of industry experts. Furthermore, the course aims to provide students with the ability to learn autonomously. They will be able to appreciate and evaluate new technologies and protocols based on the fundamental principles discussed in the course, updating their knowledge.
Prerequisiti/Required background knowledge
Programmazione base in Python
Basic programming in Python
Metodi didattici/Teaching methods
Lezione Frontale Flipped Classroom Esercitazioni
Frontal Lesson Flipped Classrooms Exercises
Modalità di verifica dell'apprendimento/Assessment methods
Esame orale
Esame orale
Programma esteso/Content
Informatica di base (2 CFU) - Panoramica sui concetti di base - Architettura di un elaboratore - Rappresentazione dei dati - Logica booleana Reti (4 CFU) - Introduzione alle reti - Il modello ISO/OSI - Il protocollo Ethernet - Il protocollo IP - I protocolli TCP e UDP - Il protocollo HTTP - Le applicazioni web e l'uso dei metodi HTTP - Esempi in Python - Tipologie di sistemi informativi basati su applicazioni web Definizione dei requisiti software (3 CFU) - Ingegneria dei requisiti - Modellazione concettuale con UML - Definizione dei casi d'uso con UML - Definizione delle narrative dei casi d'uso - Licenze del software Sicurezza (3CFU) - Concetti di base della sicurezza informatica - Crittografia - Sicurezza nel web - Sicurezza nelle comunicazioni di rete - Sicurezza nel cloud - Elementi di privacy
Basic Computer Science (2 CFU) - Overview of basic concepts - Computer architecture - Data representation - Boolean logic Networks (4 CFU) - Introduction to networks - The ISO/OSI model - The Ethernet protocol - The IP protocol - The TCP and UDP protocols - The HTTP protocol - Web applications and the use of HTTP methods - Examples in Python - Types of information systems based on web applications Software requirements definition (3 CFU) - Requirements engineering - Conceptual modelling with UML - Definition of use cases with UML - Definition of use case narratives - Software licensing Security (3CFU) - Basic concepts of computer security - Cryptography - Web security - Security in network communications - Security in the cloud - Elements of privacy
Risultati di apprendimento attesi/Intended learning objectives
Conoscenze Dopo aver sostenuto l'esame, gli studenti conosceranno: - I meccanismi di rappresentazione dei dati; - I criteri di dimensionamento dello spazio necessario per la memorizzazione dei dati; - I principali componenti di un computer e le loro interazioni; - Le caratteristiche dei processori: dalle CPU a bordo dei sistemi integrati, alle CPU multi-core, alle GPU; - I diversi tipi di supporti di memorizzazione e la loro classificazione in base alle caratteristiche; - I diversi tipi di sistemi di calcolo, da quelli integrati e indossabili ai supercomputer; - La distinzione tra Hardware e Software e la distinzione tra Hardware, Firmware, Sistema Operativo e Applicazioni, secondo una struttura a strati delle architetture informatiche; Macchine virtuali; - I diversi tipi di applicazioni e servizi (accessibili anche in rete). - I diversi tipi di licenze software; - Le caratteristiche dei vari protocolli di comunicazione; - I criteri di dimensionamento dei dispositivi (anche in base alla capacità di memorizzazione) e la loro potenza di trasmissione; - I principali componenti necessari per consentire la connessione alla rete di un PC, di un dispositivo mobile o di un sensore IoT; - I componenti caratteristici dei dispositivi mobili e dei sensori IoT; - L'interfacciamento dei dispositivi IoT con le applicazioni mobili e da queste ai sistemi cloud; - La differenza tra requisiti funzionali e non funzionali - La modellazione di un modello concettuale - La modellazione dei casi d'uso del sistema - I requisiti di sicurezza, gli attacchi e la loro classificazione, i cookie e la tracciabilità; - Principi generali di sicurezza e crittografia; - Organizzazione, procedure, gestione degli incidenti; - Algoritmi e protocolli crittografici e loro utilizzo per ottenere i requisiti di sicurezza; - Protocolli di controllo degli accessi e di autenticazione; - Protocolli HTTPS e TLS; - Introduzione ai firewall e ad altri dispositivi di sicurezza di rete e importanza degli aspetti organizzativi in questo ambito. Competenze Gli studenti acquisiranno familiarità con le tecnologie digitali, anche per la comunicazione di rete, rispetto alle potenzialità che esse hanno per risolvere problemi specifici. Inoltre, acquisiranno consapevolezza dei rischi di sicurezza e familiarità con i meccanismi di protezione, hardware, software e organizzativi. In particolare saranno in grado di: - identificare le fonti dei dati e i problemi della loro acquisizione, codifica e archiviazione; in generale, determinare la quantità di dati da elaborare, in relazione al contesto applicativo; - determinare il tipo di elaborazione a cui i dati devono essere sottoposti per valutare la potenza di calcolo necessaria per ottenere tempi di elaborazione adeguati allo specifico contesto applicativo; - individuare i protocolli e il tipo di dispositivo più adatti allo scenario in questione; - comprendere quali sono i passi fondamentali della definizione dei requisiti di un sistema - comprendere i requisiti fondamentali di sicurezza del proprio ambiente applicativo, avendo ben chiari i possibili rischi; - mettere in relazione i vari strumenti crittografici con i requisiti di sicurezza ed efficienza che essi garantiscono. In particolare: - caratteristiche e funzionamento della firma digitale; - gli strumenti adatti per la segretezza e la privacy; - meccanismi per l'identificazione sicura degli utenti e per il controllo degli accessi; - interagire con esperti nello sviluppo di architetture software e nel dimensionamento dell'hardware per soddisfare i requisiti di efficienza, affidabilità e scalabilità posti dal problema specifico, anche in vista di un'evoluzione futura; - interagire con esperti di sicurezza per determinare insieme gli strumenti migliori da utilizzare nel contesto specifico; - aggiornare le proprie conoscenze sulle tecnologie disponibili, nell'ottica di una continua ricerca della soluzione più efficace alle sfide poste dal proprio ambiente applicativo.
Knowledge After taking the examination, students will know: - The mechanisms of data representation; - The criteria for dimensioning the space required for data storage; - The main components of a computer and their interactions; - The characteristics of processors: from CPUs on board integrated systems to multi-core CPUs and GPUs; - The different types of storage media and their classification according to characteristics; - The different types of computing systems, from embedded and wearable to supercomputers; - The distinction between Hardware and Software and the distinction between Hardware, Firmware, Operating System and Applications, according to a layered structure of computer architectures; Virtual machines; - The different types of applications and services (also accessible over the network). - The different types of software licences; - The characteristics of the various communication protocols; - The criteria for sizing devices (also based on storage capacity) and their transmission power; - The main components required to enable the connection of a PC, mobile device or IoT sensor to the network; - The characteristic components of mobile devices and IoT sensors; - The interfacing of IoT devices with mobile applications and from them to cloud systems; - The difference between functional and non-functional requirements - The modelling of a conceptual model - The modelling of system use cases - Security requirements, attacks and their classification, cookies and tracking; - General principles of security and cryptography; - Organisation, procedures, incident management; - Cryptographic algorithms and protocols and their use to achieve security requirements; - Access control and authentication protocols; - HTTPS and TLS protocols; - Introduction to firewalls and other network security devices and the importance of organisational aspects in this area. Skills Students will become familiar with digital technologies, including for network communication, with respect to their potential for solving specific problems. Furthermore, they will gain awareness of security risks and familiarity with protection mechanisms, hardware, software and organisational. In particular, they will be able to - identify data sources and the problems of their acquisition, encoding and storage; in general, determine the amount of data to be processed, in relation to the application context - determine the type of processing to which the data must be subjected in order to assess the computing power required to obtain processing times appropriate to the specific application context; - identify the protocols and type of device best suited to the scenario in question; - understand the basic steps involved in defining the requirements of a system - understand the basic security requirements of one's own application environment, being clear about the possible risks; - relate the various cryptographic tools to the security and efficiency requirements they guarantee. In particular: - characteristics and functioning of digital signatures; - appropriate tools for secrecy and privacy; - mechanisms for secure user identification and access control; - interact with experts in the development of software architectures and hardware sizing to meet the requirements of efficiency, reliability and scalability posed by the specific problem, also with a view to future evolution; - interact with security experts to jointly determine the best tools to use in the specific context; - updating one's knowledge of available technologies, with a view to a continuous search for the most effective solution to the challenges posed by one's application environment.
×
Stampa
Insegnamento
FONDAMENTI DI SISTEMI INTELLIGENTI
Codice
MF0652
Anno Accademico
2025/2026
Anno regolamento
2025/2026
Corso di studio
INTELLIGENZA ARTIFICIALE E INNOVAZIONE DIGITALE
Curriculum
000-GENERICO
Responsabile didattico
THESEIDER DUPRE' Daniele
CFU
9.0
Ore di lezione
72.0
Ore di studio individuale
153.0
Settore Scientifico Disciplinare (SSD)
INF/01 - INFORMATICA
Tipo di insegnamento
Attività formativa monodisciplinare
Fruizione insegnamento
OBB
Categoria insegnamento
B
Anno
1
Periodo
Secondo Semestre
Sede
VERCELLI
Tipo di valutazione
V
Lingua insegnamento/Teaching language
ITALIANO
Italian
Contenuti/Content Summary
Principi e metodologie fondamentali dei sistemi intelligenti basati sulla rappresentazione della conoscenza e ragionamento, ed in particolare di sistemi basati su regole logiche, ontologie e knowledge graphs, sistemi per la pianificazione, ragionamento su vincoli, integrazione di diversi tipi di ragionatori automatici
Fundamental principles and methodologies of intelligent systems based on knowledge representation and reasoning; in particular, systems based on logical rules, ontologies and knowledge graphs, planning systems, constraint reasoning, integration of different automated reasoners
Testi di riferimento/Textbooks
Intelligenza Artificiale. Un approccio moderno. Quarta Edizione. Peter Norvig, Stuart Russel, PEARSON.
Artificial Intelligence: a Moden Approach. Fourth Edition. Peter Norvig, Stuart Russel, PEARSON.
Obiettivi formativi/Mission
Conoscenza e capacità di comprensione: conoscere e comprendere i fondamenti dei sistemi intelligenti basati sulla conoscenza Capacità di applicare conoscenza e comprensione: capacità di applicare i suddetti sistemi a problemi reali anche tratti dai domini degli ambiti applicativi specifici considerati nel corso di studio. Autonomia di giudizio: giudicare l’appropriatezza dei diversi sistemi, metodologie e formalismi per gestire problemi reali Abilità comunicative: capacità di illustrare, sia a livello tecnico che non tecnico, le soluzioni proposte per problemi assegnati durante il corso. Capacità di apprendimento: esercitare la capacità di approfondimento autonomo attraverso la lettura di materiale di approfondimento sugli argomenti del corso.
Knowledge and comprehension: the fundamentals of intelligent knowledge-based systems. Capability to apply knowledge and comprehension: the ability to apply the intelligent knowledge-based systems to real-world problems, related to the domains considered in the course of study. Autonomy of judgment: judging the appropriateness of the different systems, methodologies and formalisms for managing real-world real-world real-world real-world problems Communication skills: ability to explain, both on a technical and non-technical level, the solutions proposed for problems assigned during the course. Learning skills: exercise the ability to study independently by reading in-depth documentation on the topics of the course
Metodi didattici/Teaching methods
Lezioni frontali in aula, esercitazioni.
Lectures, exercises.
Altre informazioni/Further information
Le studentesse e gli studenti con disabilità o con Disturbi Specifici dell’Apprendimento (DSA) o con Bisogni Educativi Speciali (BES) possono richiedere servizi e strumenti specifici a loro dedicati rivolgendosi allo Staff Sviluppo e Coordinamento Carriere e Servizi alle Studentesse e agli Studenti e consultando la pagina dedicata del sito di Ateneo: https://uniupo.it/it/servizi/servizi-studenti-disabili-e-dsa Le studentesse e gli studenti con disabilità, DSA, BES, una volta preso contatto con lo Staff di Ateneo, possono contattare la/il docente titolare dell'insegnamento in relazione alla declinazione delle modalità di esame, in merito agli aspetti didattici.
Students with physical disabilities, Learning Disabilities or Special Education Needs can request specific services and tools via the Staff Sviluppo e Coordinamento Carriere e Servizi alle Studentesse e agli Studenti, consulting the University webpage: https://www.uniupo.it/en/services/services-students-physical-or-learning-disabilities Students with disabilities, learning disabilities or special education needs, once they have contacted the University Staff, can refer to the tutor in charge of the course to define the examination modalities, concerning academic aspects.
Modalità di verifica dell'apprendimento/Assessment methods
Esame orale con domande sui vari argomenti del corso. La valutazione misura la proporzione di raggiungimento dei diversi risultati di apprendimento attesi.
Oral examination with question on different topics. The evaluation measures the proportion of achievement of the learning objectives.
Programma esteso/Content
Concetti di base di logica matematica. Rappresentazione della conoscenza e ragionamento mediante regole logiche, ontologie e knowledge graphs. Ragionamento su vincoli. Risoluzione dichiarativa di problemi. Asnwer Set Programming. Supporto alla decisione: principi generali, acquisizione e rappresentazione della conoscenza, metodi inferenziali. La dimensione temporale: problematiche e metodologie di temporal reasoning. Planning classico e ricerca nello spazio degli stati. Planning gerarchico, planning in contesti non-deterministici.
Basic concepts in mathematical logic. Knowledge representation and reasoning with logical rules, ontologies, knowledge graphs. Constraint reasoning, declarative problem solving, answer set programming. Decision support: knowledge acquisition and representation, inferential techniques. The temporal dimension: problems and temporal reasoning methodologies. Classical planning and State-space search. Hierarchical planning, planning in a non-deterministic world.
Risultati di apprendimento attesi/Intended learning objectives
Conoscenza e capacità di comprensione: conoscere e comprendere i fondamenti dei sistemi intelligenti basati sulla conoscenza, con particolare interesse per i sistemi basati su regole logiche, ontologie e knowledge graphs, la pianificazione, il ragionamento su vincoli, l'integrazione di diversi ragionatori automatici. Capacità di applicare conoscenza e comprensione: capacità di valutare l’adeguatezza dei sistemi e delle metodologie studiate per andare a risolverli e di selezionare ed applicare a tali problemi i sistemi e le metodologie più opportune. Autonomia di giudizio: giudicare l’appropriatezza dei diversi sistemi, metodologie e formalismi per gestire problemi reali Abilità comunicative: capacità di illustrare, sia a livello tecnico che non tecnico, le soluzioni proposte per problemi assegnati durante il corso. Capacità di apprendimento: esercitare la capacità di approfondimento autonomo attraverso la lettura di materiale di approfondimento sugli argomenti del corso.
Knowledge: knowledge of the fundamental principles and methodologies of intelligent systems based on knowledge, and in particular for systems based on logical rules, ontologies and knowledge graphs, planning systems, integration of different automated reasoners. Competence and ability: given real problems, the ability to evaluate the adequacy of the systems and methodologies studied to solve them and to select and apply the most appropriate systems and methodologies to such problems. Autonomy of judgement: judging the appropriateness of different systems, methodologies and formalism for real-world problems Communication: ability of illustrating solutions both for a technical and a non-technical audience. Learning: ability of studying material proposed for essays.
Anno Codice Insegnamento Docenti Settore Scientifico Disciplinare (SSD) Curriculum Sede CFU
1 MF0616 APPRENDIMENTO AUTOMATICO E APPRENDIMENTO PROFONDO Portinale Luigi INF/01 Tutti ALESSANDRIA 9.0
1 MF0614 ARCHITETTURE COMPUTAZIONALI, RETI E SICUREZZA Fulcini Tommaso, Laudadio Lorenzo, Garaccione Giacomo INF/01 Tutti VERCELLI 12.0
1 MF0609 BASI DI DATI PER BUSINESS INTELLIGENCE Bottrighi Alessio, Leonardi Giorgio INF/01 Tutti VERCELLI 9.0
1 MF0613 DATA MINING PER DATI SPERIMENTALI Piovesan Luca INF/01 Tutti VERCELLI 9.0
1 MF0612 DIRITTO E SOCIETÀ DIGITALE Campo Alessandro IUS/09 Tutti VERCELLI 6.0
1 MF0650 FILOSOFIA DELLA SCIENZA Benzi Margherita M-FIL/02 Tutti VERCELLI 6.0
1 MF0652 FONDAMENTI DI SISTEMI INTELLIGENTI Giordano Laura, Terenziani Paolo, Theseider Dupre' Daniele INF/01 Tutti VERCELLI 9.0
1 MF0610 INTELLIGENZA ARTIFICIALE E SUPPORTO ALLE DECISIONI Portinale Luigi INF/01 Tutti VERCELLI 9.0
1 MF0653 RAPPRESENTAZIONE DELLA CONOSCENZA E LOGICA COMPUTAZIONALE Giordano Laura, Theseider Dupre' Daniele INF/01 Tutti ALESSANDRIA 9.0
1 MF0611 SISTEMA IMPRESA Turolla Andrea, Gelmini Lorenzo SECS-P/07 Tutti VERCELLI 6.0
1 MF0651 SISTEMI DISTRIBUITI E BIG DATA Giannini Paola, Canonico Massimo, Guazzone Marco INF/01 Tutti ALESSANDRIA 12.0
1 MF0649 STATISTICA COMPUTAZIONALE Bongiorno Enea Giuseppe SECS-S/01 Tutti VERCELLI 6.0
Dati aggiornati al: 16/07/2026, 04:25