Homework 2 (Spring 2023)

Answer the following prompts in a maximum of 8 pages (excluding references) in JDF format. Any content beyond 8 pages will not be considered for a grade. 8 pages is a maximum, not a target; our recommended per-section lengths intentionally add to less than 8 pages. This length is intentionally set expecting that your submission may include diagrams, drawings, pictures, etc. These should be incorporated into the body of the paper.

If you would like to include additional information beyond the word limit, you may include it in clearly-marked appendices. These materials will not be used in grading your assignment, but they may help you get better feedback from your classmates and grader.

Question 1: ~3 pages

Prior to beginning this question, consider one of the great internet debates of our time: what is a sandwich? First, take the following list of dishes and decide whether each one is a sandwich. In your assignment, start with a list of which of these you consider sandwiches, and which you do not. If you are unfamiliar with any of these types of sandwich, you should be able to Google them and find out what they are.

hamburger; ham and swiss on a potato roll; meatball sub; shawarma; Monte Cristo; chicken quesadilla; avocado toast; grilled cheese sandwich; neopolitan ice cream sandwich; Klondike bar; veggie panini; sushi roll; bacon, egg and cheese biscuit; french toast; sloppy joe; Mexican pizza; egg in a basket; pigs in a blanket; Pop-Tart; Oreo cookie; buttered English Muffin; French dip; corn dog

Once you’ve labeled each of those, illustrate the process of incremental concept learning using a series of potential sandwiches. Construct a model of what a sandwich is, noting which heuristics are used to specialize and generalize the model with each additional positive or negative example. Step through the process with at least four potential sandwiches, at least two positive and two negative examples. Then, briefly note whether any of the sandwiches you did not include would make a significant difference to the model if you had chosen to go that far.

Next, attempt a classification approach to defining a sandwich. Select a number of parameters (similar to “Lays eggs?” and “Has wings?” from the bird example in the Classification lecture) that would be useful in differentiating sandwiches. We recommend considering both structure and ingredients. Then, define values for those parameters for at least six sandwiches, and then construct an abstracted classification of what a sandwich is based on those values.

Finally, answer the age old question, “Is a hot dog a sandwich?”, using each of three perspectives: the model you developed through incremental concept learning; the classifier you developed based on those parameters and their values; and a case-based reasoning approach. With regard to case-based reasoning, you need only comment on what sandwich you think would be drawn as most “similar” to a hot dog.

Question 2: ~3 pages

When discussing the capabilities of an artificial intelligence agent, it is common to refer to its intelligence in terms of a comparable human; for example, an AI agent that takes an intelligence test and scores along with the average score of a 6-year-old is described as being “as smart” as a six year old.

Let us extend this idea to how an AI makes sense of humor. If you have spent a long time around kids, you have likely seen how their understanding of jokes progresses. A 4-year-old telling a joke is likely to focus on the structure of jokes they have heard without understanding what makes them funny; for example, my son (four years old) recently told the joke: “Why is a potato not a raspberry? Because potato banana!” The joke reflects an understanding of the “call and response” structure of a joke, but not the underlying mechanism that makes a joke funny.

As they get older, they start to understand the most common (I think) type of joke: those that play on double-meanings of words. My eight-year-old daughter, on the other hand, recently told me the joke: “Why did Susie bring a ladder to school? Because she wanted a higher education!” These jokes (just like “It’s hard to tell jokes to kleptomaniacs because they always take things literally”) derive their humor from some word or phrase having multiple meanings, which allow multiple sensible interpretations of the term.

Later, more types of jokes enter kids’ repertoire. One that starts to catch on at a more advanced level are anti-jokes: these are jokes whose humor is not embedded in the content of the joke, but rather in the way the joke subverts the listener’s expectations of the joke. For example, “What do you call a cat that won’t respond to its name? A cat.” or “What did Ed say when he lost his truck? ‘Hey, where’s my truck?'”

Consider how one might implement an AI to understand jokes at each of these levels of humor. First, construct an abstract frame representation of the type of joke that a four-year-old might tell. Given that a four-year-old generally only shows an understanding of the structure of a joke, what would the slots be? Explain why the slots you provide are necessary, as well as why other slots you might have considered are not necessary. Then, write or find your own joke that reflects this level of understanding. Complete the abstract frame representation you constructed previously by filling the slots with fillers representing the joke you wrote or found.

Then, construct an abstract frame representation of the type of joke that an eight-year-old might tell. Given that eight-year-olds generally (at least for the purpose of this question) focus on jokes centered on double-meanings, what would the slots be? Explain why the slots you provide are necessary, as well as why other slots you might have considered are not necessary. Note that constructing a frame representation of this type of joke in general is likely different from constructing a frame representation of the text of one specific joke: you will likely want slots representing what generally must be present in all such jokes. Then, write or find your own joke that reflects this level of understanding. Complete the abstract frame representation you constructed previously by filling the slots with fillers representing the joke you wrote or found.

Then, construct an abstract frame representation of an anti-joke. Again, note that an abstract frame representation of an anti-joke in general is likely to be different from the frame representation of the text of a specific joke. Given that anti-jokes generally rely on prior expectations of what a joke is likely to contain, what would the slots be? Explain why the slots you provide are necessary, as well as why other slots you might have considered are not necessary. Then, write or find your own joke that reflects this level of understanding. Complete the abstract frame representation you constructed previously by filling the slots with fillers representing the joke you wrote or found.

Finally, think of one more kind of joke. There are many out there: there are purely random jokes, jokes that focus on describing something in a funny way, jokes that parody the target, jokes that exaggerate the target, jokes that draw humorous analogies between different contexts, and more (but keep it clean, please). If you need more ideas, consider these lists of popular joke types from MasterClass and Big Think. For the type of joke you select, construct an abstract frame representation of that joke. What would the slots be? Explain why the slots you provide are necessary, as well as why other slots you might have considered are not necessary. Then, write or find your own joke that reflects this level of understanding—it can be a joke you come up with, or feel free to quote a joke from a stand-up comedian, comedy writer, etc. (bonus points if you guess and quote my favorite comedian. Just kidding. Hey, this is a type of joke too!). Complete the abstract frame representation you constructed previously by filling the slots with fillers representing the joke you wrote or found.

Submission Instructions

Complete your assignment using JDF, then save your submission as a PDF. Assignments should be submitted to the corresponding assignment submission page in Canvas. You should submit a single PDF for this  assignment. This PDF will be ported over to Peer Feedback for peer review by your classmates. If your assignment involves things (like videos, working prototypes, etc.) that cannot be provided in PDF, you should provide them separately (through OneDrive, Google Drive, Dropbox, etc.) and submit a PDF that links to or otherwise describes how to access that material.

This is an individual assignment. All work you submit should be your own. Make sure to cite any sources you reference, and use quotes and in-line citations to mark any direct quotes.

Late work is not accepted without advanced agreement except in cases of medical or family emergencies. In the case of such an emergency, please contact the Dean of Students.

Grading Information

Your assignment will be graded on a 10-point scale coinciding with a rubric designed to mirror the question structure. Make sure to answer every question posted by the prompt. Pay special attention to bolded words and question marks in the question text. For further information on how the assignment is graded, see the rubric in Canvas.

Peer Review

After submission, your assignment will be ported to Peer Feedback for review by your classmates. Grading is not the primary function of this peer review process; the primary function is simply to give you the opportunity to read and comment on your classmates’ ideas, and receive additional feedback on your own. All grades will come from the graders alone. See the course participation policy for full details about how points are awarded for completing peer reviews.