Obiettivi
- Presentare i concetti principali e i metodi che stanno alla base della risoluzione di problemi di Intelligenza Artificiale (con particolare riferimento a sistemi basati sulla conoscenza e metodologie basate sulla logica).
- Introdurre il linguaggio Prolog come motore di inferenza basato sulla logica.
(nel successivo modulo si approfondirà la conoscenza di Prolog e l’applicazione di tecniche di Intelligenza Artificiale al “mondo reale”) .
Programma
- Introduzione all'Intelligenza Artificiale
- Un po’ di storia;
- I principali campi applicativi;
- I sistemi basati sulla conoscenza e i loro principi architetturali.
- Risoluzione di problemi
- Spazio degli stati
- Metodi di soluzione Forward e backward
- Strategie di ricerca (non informate ed euristiche)
- Giochi
- Propagazione di vincoli
- Rappresentazione della conoscenza
- Logica dei predicati del primo ordine (esemplificazione con risolutore Prolog)
- Regole di produzione (e sistemi di produzioni)
- Il concetto di oggetto (Reti semantiche, frames, sistemi a oggetti e ereditarieta`)
- Linguaggi per Intelligenza Artificiale: PROLOG
- L'evoluzione dei linguaggi di programmazione
- Dalla logica alla programmazione logica
- Il linguaggio PROLOG come risolutore