Assignment 4
CSE 415: Introduction to Artificial Intelligence
The University of Washington, Seattle, Winter 2004
Working mode: In Part I, work individually. In Parts II and III, work in a team of two.
Part I. Do exercises 15, 17, 19 at the end of Chapter 4 of the text. Turn these in as hardcopy in class on Wednesday, Feb 11.
 
Part II. Starting with the Lisp code for LINNEUS, make the modifications specified in Exercise 10 at the end of Chapter 4.

Part II is due Friday, February 13 at 11:59 PM. Use electronic turn-in over the web at this URL.

Part III (Optional for 10 percent extra credit). If you choose to do this part, turn it in as part of your Part II solution. Add the following feature to your program. When a user creates a cycle of links in the LINNEUS program, apply the antisymmetry property to reduce the network and eliminate the cycle. For example if the user types in a cycle, then the system should report that fact, edit the internal representation, and add a list of synonyms to one of the nodes (whichever node is kept to represent the group). Here is an example:
(an a is a b)
I UNDERSTAND
(a b is a c)
I UNDERSTAND
(a c is an a)
I GATHER THAT A, B, AND C ARE ALL NAMES FOR THE SAME THING.
FROM NOW ON I WILL CONSIDER B AND C AS ALIASES FOR A.
(a d is a c)
I UNDERSTAND
(is a d an a)
YES
(what is an a)
AN A IS SOMETHING MORE GENERAL THAN A D

Note: Parts II and III are intended as partnership programming activities. Students who do their work in partnerships of two (rather than individually) will obtain a 20 percent point bonus on this these parts of this assignment.