Salta al contenuto principale
CODICE 111103
ANNO ACCADEMICO 2024/2025
CFU
SETTORE SCIENTIFICO DISCIPLINARE ING-INF/05
LINGUA Inglese
SEDE
  • GENOVA
PERIODO 2° Semestre
MATERIALE DIDATTICO AULAWEB

PRESENTAZIONE

L'insegnamento di Intelligenza Artificiale (IA) esplora la progettazione e la realizzazione di sistemi intelligenti capaci di eseguire compiti complessi che richiedono capacità cognitive simili a quelle umane. Tra le aree chiave dell'IA, particolare rilevanza assume lo studio delle tecniche di rappresentazione della conoscenza e di pianificazione automatica,  dal punto di vista della modellazione di sistemi complessi e delle tecniche di ragionamento automatico sul modello definito.

OBIETTIVI E CONTENUTI

OBIETTIVI FORMATIVI

The aim of the course is to introduce students to some fundamental themes of Artificial Intelligence, mainly on the "deductive" side of the discipline. Students will learn the basics of propositional logic and first-order predicate logic and will apply them in the context of knowledge representation using reasoning techniques seen in class. Additionally, in addition to the basic skills related to knowledge representation techniques and reasoning techniques, the course will address the issues and basic techniques of heuristic search and automatic planning.

OBIETTIVI FORMATIVI (DETTAGLIO) E RISULTATI DI APPRENDIMENTO

 

I principali obiettivi formativi del corso e i corrispondenti risultati dell'apprendimento sono:

Obiettivi e Risultati Conoscitivi

  1. Conoscere e comprendere i concetti chiave della logica proposizionale e della logica del primo ordine, inclusi sintassi, semantica, e tecniche di risoluzione.

  2. Acquisire una solida comprensione delle basi teoriche dei diversi linguaggi utilizzabili, valutandone i relativi vantaggi.
  3. Capire i principali linguaggi e strumenti per la rappresentazione dei problemi di pianificazione, come PDDL e PDDL+.

  4. Conoscere le tecniche di pianificazione automatica, inclusi metodi di ricerca informata e non informata, e la pianificazione vista come un problema di satisfiability (SAT).

  5. Saper modellare problemi complessi in termini di conoscenza e rappresentazione dei dati, utilizzando strumenti e linguaggi avanzati.

 

Obiettivi e Risultati Applicativi

  1. Saper applicare tecniche di logica e rappresentazione della conoscenza per risolvere problemi reali in vari contesti, come la robotica, la gestione delle risorse e l'ottimizzazione dei processi.

  2. Essere in grado di implementare algoritmi di pianificazione automatica per la risoluzione di problemi pratici, inclusa la gestione del tempo e delle risorse.

  3. Acquisire competenze pratiche nell'uso di linguaggi e strumenti per la creazione di sistemi di IA, come l’implementazione di algoritmi di ricerca e di pianificazione.

 

 

PREREQUISITI

Conoscenza di base di programmazione.

MODALITA' DIDATTICHE

Il corso consisterà di lezioni frontali dedicate alla spiegazione dei diversi argomenti e allo svolgimento di esercizi.

PROGRAMMA/CONTENUTO

 

Introduzione al Corso

  • Introduzione alla materia e agli obiettivi del corso.

Logica Proposizionale

  1. Sintassi e Semantica:

    • Studio delle basi della logica proposizionale, inclusa la forma normale (NNF), la forma normale congiuntiva (CNF) e la trasformazione di Tseitin.
  2. Tecniche di Semplificazione e Risoluzione:

    • Approfondimento delle tecniche di risoluzione, inclusa la procedura DPLL (Davis-Putnam-Logemann-Loveland).
  3. Rappresentazioni e Procedure Incomplete:

    • Introduzione agli OBDD (Ordered Binary Decision Diagrams) e alle limitazioni della logica proposizionale.
    • Discussione e pratica di esercizi sulla logica proposizionale.

Logica del Primo Ordine (First Order Logic - FOL)

  1. Motivazioni, Sintassi e Semantica:

    • Introduzione alle basi della logica del primo ordine, comprensione della sua sintassi e semantica.
  2. Esempi e Proprietà Logiche:

    • Discussione di esempi di soddisfacibilità, validità, equivalenza logica, conseguenza logica, e delle forme normali prenesse e di Skolem.
  3. Teorema di Herbrand e Decidibilità:

    • Studio del Teorema di Herbrand, della decidibilità delle formule in dominio finito e della semi-decidabilità della logica del primo ordine.
  4. Interpretazioni intese:

    • Uguaglianza e altri simboli logici.
    • Interpretazioni intese
    • Discussione di esempi pratici e aspetti oltre la logica del primo ordine.
    • Esercitazioni pratiche sulla logica del primo ordine.

Pianificazione Automatica (Planning)

  1. Linguaggi di Rappresentazione per la Pianificazione:

    • Studio dei linguaggi per la rappresentazione dei problemi di pianificazione.
    • Esercitazioni pratiche sull'uso di questi linguaggi.
  2. Pianificazione Numerica e Temporalità:

    • Introduzione ai linguaggi per la pianificazione numerica, come PDDL2.1.
    • Esplorazione di PDDL+ per la gestione di tempo, processi ed eventi nei problemi di pianificazione.
  3. Pianificazione come Satisfiability (SAT):

    • Motivazioni e intuizioni alla base della pianificazione vista come un problema di soddisfacibilità.
    • Tecniche di riduzione del problema di pianificazione a SAT.
    • Discussione delle condizioni di terminazione.
  4. Ricerca e Pianificazione:

    • Introduzione alle tecniche di ricerca non informata per la risoluzione dei problemi di pianificazione.
    • Studio delle tecniche di ricerca informata, come la ricerca nei grafi e la pianificazione come processo di ricerca.

 

TESTI/BIBLIOGRAFIA

Il materiale didattico presentato a lezione sarà reso disponibile su AulaWeb

DOCENTI E COMMISSIONI

Commissione d'esame

ENRICO GIUNCHIGLIA (Presidente)

LUCA ONETO

ARMANDO TACCHELLA (Presidente Supplente)

LEZIONI

INIZIO LEZIONI

Il corso si svolgerà nel secondo semestre: 

  • Lezioni: dal 17 febbraio al 30 maggio 2025
  • Sospensione didattica (Ingegneria: per sedute di Laurea e sessione straordinaria d’esame, solo per gli studenti non frequentanti): 24/25/26 marzo 2025
  • Sessione ordinaria d’esame: dal 2 giugno al 19 settembre 2025

 

Orari delle lezioni

L'orario di questo insegnamento è consultabile all'indirizzo: Portale EasyAcademy

ESAMI

MODALITA' D'ESAME

 

L'esame finale sarà un test con esercizi su:

  1. Logica proposizionale, modellazione e ragionamento
  2. Logica del primo ordine, modellazione e ragionamento
  3. Pianificazione, modellazione e procedure
  4. Search, non informata e informata

In funzione del risultato e del contenuto del test svolto, è possibile che sia richiesta una prova orale.

Gli studenti con certificazione di DSA, di disabilità o di altri bisogni educativi speciali devono contattare il docente all’inizio del corso per concordare modalità didattiche e d’esame che, nel rispetto degli obiettivi dell’insegnamento, tengano conto delle modalità di apprendimento individuali e forniscano idonei strumenti compensativi. Si ricorda che la richiesta di misure compensative/dispensative per gli esami dovrà essere inviate al docente del corso, al referente della Scuola e al “Settore servizi per l'inclusione degli studenti con disabilità e con DSA” (dsa@unige.it) almeno 10 giorni lavorativi prima della prova, come da linee guida disponibili al link: https://unige.it/disabilita-dsa

MODALITA' DI ACCERTAMENTO

L'esame consisterà nella valutazione dello svolgimento degli esercizi proposti e le risposte fornite alle domande nel test. Oltre alla correttezza delle stesse, verrà valutata anche la completezza delle risposte fornite, con particolare attenzione all'aderenza rispetto al testo proposto.