COMP9414/9814 Artificial Intelligence

Review Questions on Prolog Programming, Rules, Semantic Nets, Frames

This is a voluntary quiz to help you decide whether you have understood some of the major concepts from this topic. It carries no marks.

  1. What is the difference between [[1] | [2, 3]] and [1 | [2, 3]] ?

  2. What would be the output from the query
    ?- likes(jane, Y) = likes(X, pizza).

  3. Write and test a Prolog procedure to compute the sum of whole numbers from 1 to N.

  4. What is the difference between the Specificity Ordering and Rule Ordering conflict resolution strategies?

  5. Explain what is meant by the term partitioned production system.

  6. In a semantic net, explain the difference between an isa link and an ako link. What does ako stand for?

  7. Below are some Prolog facts. Draw them as a semantic network. How do you think semantic nets might be implemented in Prolog (don't cheat and look at the sample code linked to the lecture notes!) OK ... you can look at the sample code after you've written down an answer.
    can_fly(bird, yes).
    ako(bird, vertebrate).
    have_feathers(bird, yes).
    ako(emu, bird).
    can_fly(emu, no).
    isa(ernie, emu).
    steals_potato_crisps(ernie, yes).

  8. What do frames have that semantic nets don't have?

  9. List all seven types of demon in the frame system described in lectures. When are their associated bits of code executed?

Solutions: don't read until you've tried the questions yourself!

Bill Wilson's contact info

UNSW's CRICOS Provider No. is 00098G