Assignment 3
CSE 415: Introduction to Artificial Intelligence
The University of Washington, Seattle, Winter 2004
Working mode: All parts of this assignment are to be performed invidually by each student in the class. Unlike Assignment 2, this assignment is NOT a partnership assignment. (It might be helpful to consult the College of Engineering's academic misconduct policy if you are not familiar with rules on plagiarism.)
The reading for this assignment is sections 4.1 through 4.8 in Chapter 4 of The Elements of Artificial Intelligence Using Common Lisp. Complete the reading up through section 4.8.6 by Monday, January 26 and the rest by Monday, Feb. 2.
Part A. Do exercises 2, 3, 4, and 5 at the end of Chapter 4 of the text. Turn these in as hardcopy in class on Wednesday, Jan. 28. Also, write a one-page sample conversation that you forsee as a possible conversation that your agent (described in Part B) might have with a user. Turn in this sample conversion and a name for your agent along with the exercises.
 
Part B. Starting with the Lisp code for the SHRINK, make substantial modifications, add new function definitions, etc., as necessary to implement a ``talking agent'' with a definite, different ``personality.'' Begin by writing a description of the personality you wish to create and make up several sample conversations that you might like your agent to be able to take part in. Determine key words and phrases that you would like your agent to respond to in particular ways. Think about how to help your agent keep a conversation going even when it can't make much sense of the input.

In addition to the new personality, your agent should make use of some new techniques -- techniques not already used in the SHRINK. Choose at least two of the following techniques to implement and incorporate them into your agent:

  • Memory: The agent remembers various words and phrases that have been input by the user, and it later refers to them with either questions, opinions, or observations. For example, it might say, "EARLIER YOU MENTIONED THAT YOU LOVE RED FERRARIS SO COULD YOU PLEASE ELABORATE ON THAT?"
  • Paraphrasing: The agent has a way of rephrasing the user's input by making word substitutions. If it cannot change at least 25 percent of the words in the input, then it doesn't use this response method on the given input.
  • Goal inference and focus: The agent has rules that attempt to identify the user's goals. For example, the user may state, "I WANT ..." and the agent registers what the user wants as a goal. If the agent does not find any goals within 5 turns, then it asks the user directly the next chance it gets for a ``punt.'' Once it has a user goal, it then asks questions about how to achieve that goal.
  • Recognizing logical relations such as IF - THEN; BOTH; AND; OR, and producing questions that involve the user's sentence components but that question the logical relationships given by the user.
  • Part B is due Tuesday, February 3 at 11:59 PM. Use electronic turn-in over the web at this URL. On February 4, our class will meet in MGH 044 (a large computer lab) and all of us will have an opportunity to share our agents with others in the class. We'll also do peer evaluations of the agents during this time.

    Updated 21 January (and URL for turn-in posted 1 Feb) 2004 by S. Tanimoto.