Fondamenti di Intelligenza Artificiale
Compito del 13 settembre 2002
Matricola: ______________________________________________________________________
Cognome: _______________________________________________________________________
Nome: __________________________________________________________________________
Corso di Laurea: _________________________________________________________________
(ATTENZIONE:
motivazioni!)
risposte brevi e puntuali! Riportare i passaggi significativi e le
1) Trasformare in clausole le seguenti frasi logiche e dimostrare tramite refutazione la query
proposta:
Un animale che mangia un animale è un carnivoro.
Per ogni coniglio, c'è qualche animale che se lo mangia.
I conigli sono animali.
Esiste almeno un coniglio.
Query: Esiste un animale carnivoro?
2) Discutere i possibili vantaggi della seguente strategia di ricerca nello spazio degli stati. Si
ottenga con un metodo qualsiasi un cammino qualunque fino ad un nodo finale e sia C il
costo associato. Questo non è necessariamente minimo, ma fornisce una stima per eccesso del
costo minimo. Ora si usi l'algoritmo A* con una funzione ĥ che garantisca l'ammissibilità e si
scartino subito tutti i nodi aperti con un valore di f̂ maggiore di C. Questa strategia è
ammissibile? Comporta l'espansione di meno nodi? Riduce l'ingombro complessivo di
memoria?
(segue)
3) a) Sia data la rete di credenze mostrata in figura. Mostrare i passi necessari per calcolare la
probabilità che la batteria sia efficiente e la macchina parta, ovvero P(Batteria  Parte). Non è
richiesto il calcolo.
Batteria
P(B)
0.8
Accensione
B
T
F
P(A)
0.9
0.1
A
T
F
P(P)
0.95
0.001
Parte
b) Descrivere la stessa base di conoscenza secondo le modalità di MYCIN e descrivere come si può
dedurre la stessa informazione richiesta al punto precedente.
Applicazioni (avanzate) di Intelligenza Artificiale
Compito del 13 settembre 2002
Matricola: ______________________________________________________________________
Cognome: _______________________________________________________________________
Nome: __________________________________________________________________________
Corso di Laurea: _________________________________________________________________
(ATTENZIONE:
motivazioni!)
risposte brevi e puntuali! Riportare i passaggi significativi e le
1) Per poter migliorare le prestazioni di un motore di ricerca del WEB al fine di selezionare
documenti o siti, si potrebbe immaginare di associare una base di conoscenza strutturata, in
modo che l'attenzione non sia focalizzata su singole parole chiavi ma sia allargata entro certi
limiti ai concetti correlati. In altri termini, se l'utente effettua una ricerca sulla parola sport, il
motore di ricerca dovrebbe proporre anche i siti che trattano di calcio (calcio esemplare_di
sport) e viceversa.
Delineare questa base di conoscenza (si può ipotizzare in prima approssimazione che i termini
non siano ambigui: calcio è solo sport, non un elemento), evidenziando i problemi più rilevanti
da considerare, e illustrare un algoritmo di ereditarietà che tenga conto della distanza
inferenziale.
2) Risolvere il seguente problema del mondo dei blocchi utilizzando la pianificazione che utilizza
uno stack.
B
A
C

A
B
C
Gli operatori ammessi sono:
STACK(x, y)
precondizioni: CLEAR(y)  HOLDING(x)
UNSTACK(x, y)
precondizioni: ON(x, y)  CLEAR(x)  ARMEMPTY
PICKUP(x)
precondizioni: CLEAR(x)  ONTABLE(x)  ARMEMPTY
PUTDOWN(x)
precondizioni: HOLDING(x)
(Sono sufficienti i primi 3 o 4 passi)
(segue)
3) Indagando su un particolare problema, si scopre che i vettori che caratterizzano le 4 classi in cui
si vogliono categorizzare gli elementi sono separabili mediante funzioni di decisione lineare.
Illustrare nel dettaglio un algoritmo di apprendimento come quello del Perceptron per la
determinazione di queste funzioni di decisione, disponendo di un file che contiene, uno per riga,
l’etichetta della classe di appartenenza e le coordinate di ciascun punto (vettore).