Corso di Intelligenza Artificiale

(anno accademico 2016/2017)

Prof. Alessandro Sperduti


Orario  (I semestre: 3 Ottobre 2016 - 20 Gennaio 2017)

dal Martedì al Mercoledì  13:30 - 15:30  Aula 1BC/50

 

Testo Consigliato:

  1. S. Russell & P. Norvig, "Artificial Intelligence: A Modern Approach", Prentice Hall, terza edizione, 2010 (versione in italiano: "Intelligenza Artificiale: un approccio moderno", Vol. 1 e 2, Pearson Education Italia, 2010)

NUOVA DATA PRESENTAZIONE PROGETTI: 28 Luglio ore 16:00 Aula 1BC50 (precedente 12 Luglio ore 14:30 Aula 1BC50); inviare email a docente nel caso in cui si voglia essere aggiunti alla lista delle presentazioni

PROGETTI PRESENTATI: 4 Luglio ore 9:30 Aula 1BC50

Lucidi delle lezioni:
(il contenuto dei lucidi potrebbe cambiare prima che la relativa lezione sia tenuta)

 Contenuti corso, Agenti ed Ambienti (pdf, 4, 5 Ottobre)

 Ricerca non informata (pdf) (11, 12 Ottobre)

 Ricerca informata (pdf) (18, 19, 25, 26 Ottobre)

 Ricerca online (pdf) (2 Novembre)

 Breve introduzione ai sistemi con vincoli (pdf) (8 Novembre)

 Ricerca con avversari (pdf) (9, 15, 16 Novembre)

 AlphaGo

 Articolo su Nature che spiega come funziona AlphaGo

 Logica proposizionale (pdf) (16, 29, 30 Novembre)

 Esempio compitino prima parte (pdf)

La lezione del 22 Novembre non sarà tenuta per permettere la preparazione del compitino del 23 Novembre.

 Logica del primo ordine (pdf) (13 Dicembre)

 Inferenza nella logica del primo ordine (pdf) (13, 14, 20, 21 Dicembre)

 Pianificazione Classica (pdf) (11, 17[11:30-13:30] Gennaio))

 Pianificazione seconda parte (pdf) (17[13:30-15:30] Gennaio))

 Gestione incertezza (pdf) (18 Gennaio))

Esempi Prolog:

10 Gennaio

 Esempio programma Prolog, first.pl

 Esempio programma Prolog, backtracking: likes.pl

 Esempio programma Prolog, cut: max.pl

 Esempio programma Prolog, cut: max-cut1.pl [provare query max(10,1,1).]

 Esempio programma Prolog, cut: max-cut2.pl

 Esempio programma Prolog, cut: split.pl

 Esempio programma Prolog, cut: split-cut1.pl [provare query split([1,-3,2],[2],[1,-3]).]

 Esempio programma Prolog, cut: split-cut2.pl

 Esempio programma Prolog, cut: split-cut3.pl

 Esempio programma Prolog, cut + fail: likes2.pl (pl)

 Esempio programma Prolog, cut + fail: not.pl

 Esempio programma Prolog, cut + fail: different.pl

 Esempio programma Prolog, negazione come fallimento: neg_as_failure.pl [provare query innocent(alessandro).]

 Esempio programma Prolog, negazione come fallimento: neg_as_failure2.pl [provare query guilty(alessandro).]

 Esempio programma Prolog, negazione come fallimento: neg_as_failure3.pl [provare query good_standard(X),reasonable(X). ed anche reasonable(X),good_standard(X).]
 

Esempi di Progetti:

Implementazione (parziale) di POP

InfiniteMario AI

 Min-Max e Forza 4

 Puzzle Solver

 Robocup Lab

 Link al repository di codice che implementa vari algoritmi del libro di testo.