Announcements (this page)

Administration

Syllabus

Assignments

Resources

CS B552 Knowledge-Based Computation

Homework 4:  Team Project on Gathering and Representing Everyday Knowledge

This team assignment will give you first-hand experience in knowledge capture for commonsense knowledge and in the assessment of knowledge representation schemes. It will be done in three steps: Group generation of a knowledge representation, critiques of another group's representations, and presentations/discussions. To avoid holding up others, none of these parts may be submitted late. All members are expected to contribute equally to all parts.

1.    Due Wed, Feb 22, 11:59pm: Each group will encode a restricted domain of everyday knowledge, analogously to exercise 10.22 in Russell and Norvig (third edition). The text of this exercise is at the bottom of this page, and gives extensive guidance for getting started. As the domain to encode, you may use either (1) the Safeway domain (described at the bottom of the assignment) or (2) the domain of police traffic stops (shown in class).

The group will select a relatively simple sentence or two about events in the domain, will select 5-8 questions to answer in that domain, and will generate the knowledge needed to answer those and similar questions in a principled (general) way. The group will write this up in a 5-10 page report which may include figures for hierarchies, etc.

In addition to describing your representation, the writeup should include information on your design decisions, the major issues that arose during your work, and any disagreements in the group. This is one of the most important components of the assignment.

A pdf file of the report should be submitted on canvas Feb 20.  All reports will be made available to all students, so that you can compare your representations with others’. Please be sure to include your group number and the names of its group members at the top. 

2.    Due Fri, Feb 24, 11:59pm: Each group will submit a short critique/commentary on another group's representation (after part 1 has been submitted we will assign the groups for you to critique). This critique should contain (1) your analysis of major strengths of the approach, as well as constructive criticism of issues you observe and notes about important differences from your representation, and (2) a brief discussion of how your own representation would have handled the representation chosen by the other group, and why, and what you see as the best idea(s) of the other group.  If you chose the same domain to represent, how would their representation have handled your questions? 

The group doing the critique is free to ask members of the original group for clarifications, explanations, etc. while preparing their critique.   Please be sure to include both your group number and the number of the group being critiqued at the top. 

3.    In class, Mon, Feb 27:  Everyone in the group should work together on slides for a 10-min presentation, to be presented by 2-3 members, chosen by the group. The presentation should mention key design decisions, what you found challenging and why, what you see as the strengths and weaknesses of your representations, supported by examples, and strengths and weaknesses identified by considering how to answer the questions chosen by the group you critiqued.  The critiquing group and rest of the class will have time for questions and responses.

To make sure your presentation is effective, be sure to practice your presentation in advance and have a member of the group monitor time of the in-class presentation, to warn the group if timing falls behind plans and make sure the presentation doesn’t run over.

The assignment grades will be based on each group's report, presentation, and critique.

Please let us know if you have any questions!

Groups

Please check canvas files for HW4 for the list of group assignments.  Note that canvas provides facilities for online group discussions; this will allow you to communicate with your group easily.

 

References

A helpful resource for this assignment is Russell and Norvig's Artificial Intelligence:  A Modern Approach (3rd edition)’s knowledge representation chapter, especially Section 8.4.2 (3rd edition), which describes steps for knowledge engineering.  For those who don’t already have a copy of this from B551, the book is on reserve at the Chemistry library.

Russell and Norvig's exercise

(Adapted from an example by Doug Lenat.) Your mission is to capture, in logical form, enough knowledge to answer a series of questions about the following simple sentence: Yesterday John went to the North Berkeley Safeway and bought two pounds of tomatoes and a pound of ground beef. Start by trying to represent its content as a series of assertions. You should write sentences that have straightforward logical structure (e.g., statements that objects have certain properties; that objects are related in certain ways; that all objects satisfying one property satisfy another)...

·         Which classes, individuals, relations, and so on, would you need? What are their parents, siblings and so on? (You will need events and temporal ordering, among other things.)

·         Where would they fit in a more general hierarchy?

·         What are the constraints and interrelationships among them?

·         How detailed must you be about each of the various concepts?

The knowledge base you construct must be capable of answering a list of questions that we will give shortly. Some of the questions deal with the material stated explicitly in the story, but most of them require one to know other background knowledge-to read between the lines. You'll have to deal with what kind of things are at a supermarket, what is involved with purchasing the things one selects, what will purchases be used for, and so on. Try to make your representation as general as possible. To give a trivial example: don't say "People buy food from Safeway," because that won't help you with those who shop at another supermarket. Don't say "Joe made spaghetti with the tomatoes and ground beef," because that won't help you with anything else at all. Also, don't turn the questions into answers; for example, question (c) asks "Did John buy any meat?"-not "Did John buy a pound of ground beef?"

Sketch the chains of reasoning that would answer the questions. In the process of doing so, you will no doubt need to create additional concepts, make additional assertions, and so on. If possible, use a logical reasoning system to demonstrate the sufficiency of your knowledge base. Many of the things you write may only be approximately correct in reality, but don't worry too much; the idea is to extract the common sense that lets you answer these questions at all.

·         a. Is John a child or an adult? [Adult]

·         b. Does John now have at least 2 tomatoes? [Yes]

·         c. Did John buy any meat? [Yes]

·         d. If Mary was buying tomatoes at the same time as John, did he see her? [Yes]

·         e. Are the tomatoes made in the supermarket? [No]

·         f. What is John going to do with the tomatoes? [Eat them]

·         g. Does Safeway sell deodorant? [Yes]

·         h. Did John bring any money to the supermarket? [Yes]

·         i. Does John have less money after going to the supermarket? [Yes]

Make the necessary additions/changes to your knowledge base from the previous exercise so that the following questions can be answered. Show that they can indeed be answered by the KB, and include in your report a discussion of the fixes, explaining why they were needed, whether they were minor or major, and so on.

·         a. Are there other people in Safeway while John is there? [Yes-staff!]

·         b. Did Mary see John? [Yes]

·         c. Is John a vegetarian? [No]

·         d. Who owns the deodorant in Safeway? [Safeway Corporation]

·         e. Did John have an ounce of ground beef? [Yes]

·         f. Does the Shell station next door have any gas? [Yes]

·         g. Do the tomatoes fit in John's car trunk? [Yes]

 

Submission

The assignment will be submitted electronically, on Canvas. You may submit as many versions as you wish (only the last submission before the deadline will be graded). We recommend submitting a first version before the last minute, to make sure it's in the system. Also, please keep backup copies of all submitted files until you have verified the grade received.