CdSINFORMATICA
Codice586AA
CFU6
PeriodoSecondo semestre
LinguaItaliano
Apprendere i concetti principali e i metodi che stanno alla base della progettazione e sviluppo di sistemi intelligenti.
Il corso introduce le tecniche di base per la realizzazione di agenti intelligenti e in particolare il paradigma di risoluzione dei problemi come ricerca in uno spazio di stati, la rappresentazione della conoscenza e il ragionamento automatico, i metodi e modelli di base dell’apprendimento automatico.
Learn the key concepts and methods behind the design and development of intelligent agents.
Le conoscenza sono verificate attraverso una prova scritta (prove in itinere o prova scritta prevista per ogni sessione) e una (eventuale) prova orale.
Knowledge is verified through a written test (written “in itinere” tests or written test for each session) and a (possible) oral exam.
Capacità di impostare e risolvere un problema secondo il paradigma di ricerca in uno spazio di stati; capacità di rappresentare conoscenze nei classici linguaggi logici e comprendere alcuni algoritmi di inferenza e loro complessità; capacità di scegliere ed utilizzare correttamente alcuni algoritmi base di apprendimento automatico.
Ability to formulate and solve a problem according to the paradigm of problem solving as search in a state space. Ability to represent knowledge in classical logic languages and to understand some inference algorithms and their complexity. Ability to choose and use correctly some basic learning algorithms.
Gli esercizi delle prove scritte verificano la capacità di risoluzione di semplici istanze di nuovi problemi con le metodologie presentate nel corso.
Lo studente può inoltre esercitare (autoverifica) alcune metodologie della materia attraverso strumenti software, resi disponibili durante il corso e arricchiti di documentazione per l’uso e di prove di esercitazione specifiche per il corso.
Exercises in written tests verify the ability to solve simple instances of new problems with the methodologies and techniques learned in the course.
The student can also experiment (in a self-assessment mode) methods and algorithms through software tools made available during the course and enriched with documentation for their use and exercise tutorials developed specifically for the course.
Consapevolezza dei limiti attuali e delle potenzialità dei sistemi intelligenti.
Awareness of current limits and potential of intelligent systems.
Tramite la prova scritta e (eventuale) orale.
Through written and (possible) oral tests.
Algoritmi e strutture dati. Logica formale. Elementi di analisi matematica: funzioni, calcolo differenziale. Elementi di calcolo matriciale e relative notazioni. Elementi di calcolo di probabilità e statistica.
Algorithms and data Structures. Formal logic. Elements of mathematical calculus: functions, differential calculus. Elements of matrix calculus and related notations. Elements of probability and statistics.
Il corso si articola in lezioni teoriche ed esercitazioni in aula, che hanno lo scopo di esemplificare i concetti sviluppati durante le lezioni e presentare problemi da formalizzare.
Le lezioni sono frontali, tipicamente con l'ausilio di slide (proiezione).
Si utilizza la piattaforma elearning Moodle per distribuire il materiale didattico di ausilio (slide, software etc.).
Sono previste prove intermedie in itinere (compitini) durante il semestre del corso in accordo al calendario del corso di Laurea in Informatica.
The course includes theory lessons and exercise classes, which aim to exemplify the concepts developed during the lessons and to propose problems to be formalized and solved.
The lessons are face-to-face, typically with the help of slides (projection).
We use the Moodle e-learning platform to deliver additional learning material (slides, software etc.).
Intermediate tests are scheduled during the semester of the course in accordance with the calendar of the degree program in Computer Science.
Risoluzione di problemi come ricerca:
- Formulazione di problemi come ricerca in uno spazio di stati
- Strategie di ricerca non informata ed euristica
- Giochi con avversario
Rappresentazione della conoscenza e ragionamento:
- Il problema fondamentale della rappresentazione della conoscenza: espressività e complessità computazionale
- Algoritmi efficienti per la soddisfacibilità
- Deduzioni automatica: il metodo di risoluzione
- Sistemi a regole: basi di dati deduttive e programmazione logica
- Rappresentazioni strutturate (frames, semantic networks)
Introduzione all’ apprendimento automatico:
- Paradigma, “forme” e metodi dell’ apprendimento automatico
- Apprendimento induttivo di regole proposizionali
- Apprendimento supervisionato: classificazione e regressione (modelli lineari e instance based)
- Apprendimento non supervisionato (clustering)
- Validazione: tecniche e aspetti teorici
- Cenni a modelli dei paradigmi Bayesiano, simbolico, sub-simbolico
- Esempi di applicazioni.
Problem solving as search:
- Problem formulation as search in state spaces
- Non-informed and heuristic search strategies
- Adversarial problems (games)
Knowledge representation and reasoning:
- The fundamental problem of knowledge representation: expressivity vs computational complexity
- Efficient algorithms for satisfiability
- Automated reasoning: the resolution method
- Rule based systems: deductive data bases and logic programming
- Structured representations (frames, semantic networks)
Introduction to machine learning:
- Paradigms, "forms" and methods of machine learning
- Inductive learning of propositional rules
- Supervised learning: classification and regression (linear models and instance based)
- Unsupervised Learning (Clustering)
- Validation: techniques and theoretical aspects.
- Introduction to the models of the Bayesian, symbolic and sub-symbolic paradigms
- Application examples
S. Russell, P. Norvig, “Artificial Intelligence: a modern approach", Pearson, Third Edition, 2010.
T. Mitchell, "Machine Learning", McGraw-Hill 1997.
Slide del corso forniti sulla piattaforma Moodle e materiale suggerito nelle slide.
S. Russell, P. Norvig, “Artificial Intelligence: a modern approach", Pearson, Third Edition, 2010.
T. Mitchell, "Machine Learning", McGraw-Hill 1997.
Course slides (made available on the Moodle platform) and readings suggested in the slides.
Non sono previste variazioni.
Same program as for attending students.
Scritto e (eventuale) orale
La prova scritta consiste in domande sulle conoscenze teoriche e esercizi volti ad accertare la capacità di risolvere semplici istanze di nuovi problemi. Si svolge in un’aula senza specifiche attrezzature.
La prova scritta è superata se sono risposte correttamente le domande che verificano le conoscenze di base della materia e se sono svolti con le metodologie presentate nel corso gli esercizi sui problemi da risolvere.
La (eventuale) prova orale consiste in un colloquio tra il candidato e i docenti del corso, relativo a tutte le parti del programma e, ove occorra, alla discussione dell'elaborato scritto.
La prova orale è superata se il candidato è in grado di esprimersi in modo chiaro e di usare la terminologia corretta su tutte le parti basilari del corso e mostra la capacità di mettere in relazione le diverse nozioni acquisite, mostrando una sufficiente consapevolezza del funzionamento e delle limitazioni e potenzialità dei sistemi intelligenti.
La prova orale è necessaria se il candidato, pur avendo conseguito una valutazione globalmente sufficiente, non ha conseguito una sufficienza su tutte le parti della prova scritta.
The written exam consists of questions about theory and exercises to verify the ability to solve simple instances of new problems. It takes place in a classroom without specific equipment.
The written exam is passed if the questions that verify the basic knowledge of the subject are properly answered and if the exercises are solved with the methodologies presented during the course.
The (possible) oral test consists in an interview between the candidate and the course lecturers on all parts of the program and, where appropriate, in a discussion on the written test.
The oral examination is passed if the candidate is able to express himself clearly and to use the correct terminology on all the basic parts of the course and shows the ability to relate the various notions acquired, showing a sufficient awareness of the functioning, limits and potential of intelligent systems.
The oral test is necessary if the candidate, despite having achieved a globally sufficient evaluation, has not obtained a sufficiency on all the parts of the written test.
Si utilizza la piattaforma elearning Moodle (elearning.di.unipi.it)
We use the Moodle platform (elearning.di.unipi.it)
The course is in Italian.