A.I. Storytelling in Virtual Worlds







Reading paers and leading discussions

Things to consider when reading papers and leading discussions.

  • What is the thesis of the paper?
  • What is the problem the techniques was trying to solve? Did the authors achieve it (in your opinion)?
  • What are the authors trying to convince you of? Do you buy it?
  • What can this technique do?
  • What can this technique not do?
  • Why should we care (in this class)?
  • Will it have applicability to your class project? Are there changes you could make to make it applicable?
  • How does it relate to other papers? Do those papers confirm or contradict this paper?
  • How does the technique work?
  • What are the limitations? Are there problems with the technique? Are there notable features?
  • What confuses you? What questions do you have for the instructor and class?
  • What is your opinion? Is there evidence from other papers that tie in to you opinion?
  • Are there thought experiments to challenge the class and the instructor?

Also, look to go above and beyond what is in the paper. Are the screenshots, movies, visuals that you can use to clarify or extend the discussion? Are there follow on papers that shed light on particular aspects of the technique?

It is always good to have an opinion. You cannot be right or wrong.

Midterm Essay

The midterm essay is to write a short essay describing a hypothetical AI story generation system called the Illustrated Primer (inspired by Neil Stephenson's The Diamond Age or, A Young Lady's Illustrated Primer). The Illustrated Primer is an interactive, intelligent "book" that tells a story about a child protagonist and his/her magical creature friends. The Primer is able to detect the circumstances of the human reader, determine what the reader needs to know, and weaves lessons into the storyline.

For example, in The Diamond Age, the owner of the Primer, Nell, is homeless and needs to know how to defend herself. The Primer weaves a series of stories in which the characters in the book are threatened by a monster and eventually figure out how to use the monster's strength against itself. (Think about how each of the characters in Kung Fu Panda had to overcome their vices). In another instance, the Primer teaches Nell how to program by telling a story in whichthe characters are locked in a castle and can only escape by decoding a puzzle that happens to be a simple turing machine.

You do not need to know how to solve the problem of generating or telling the stories. Assume the Primer has a prespecified storyline that can be adapted by weaving things in. Assume that the Primer can determine what the owern needs to know automatically and without error. Based on the literature and discussions from the class, describe the techniques one might use to develop the Primer. That is, describe techniques that might be used to take existing storylines and add new educationally-inspired storylines. Justify your decisions with literature from the class (and other papers you might find), and relate back to narrative psychology. Explain what types of knowledge the Primer would need (narrative, cognitive, pedagogical) and how that knowledge might be represented. Use illustrations if appropriate.

The essay should be approximately 1000 words (approximately 2 pages without illustrations) in AAAI two-column format (http://www.aaai.org/Publications/Templates/AuthorKit.zip). You do not need to include the abstract or keywords. Citations are important.

You do not need to have read the book to complete the assignment. Exerpts of the protagonist using the Primer are available in t-square resources (filed under misc.). I recommend focusing on a a couple of examples to motivate your approach.

Plot synopsis of The Diamond Age (adapted from Wikipedia):

The protagonist in the story is Nell, a child of lowest working class, who illicitly receives a copy of an interactive book (with the quaint title Young Lady's Illustrated Primer; a Prop├Ždeutic Enchiridion in which is told the tale of Princess Nell and her various friends, kin, associates, &c.) originally intended for an aristocrat's child in the Neo-Victorian phyle. The story follows Nell as she uses the Primer. The Primer is intended to make sure its reader leads an interesting life as defined by the upper class and grows up to be an effective member of society. The Primer also reacts to its owners environment and teaches them what they need to know to survive and grow.

The Diamond Age is characterized by two intersecting, almost equally developed story lines: Nell's education through her independent work with the primer, and the social downfall of engineer and designer of the Primer, John Percival Hackworth. The text includes fully narrated educational tales from the primer that map Nell's individual experience (e.g. her four toy friends) onto archetypal folk tales stored in the primer's database.

Final Project

Your goal is to build a system that generates and tells "Slumdog Millionnaire" style stories. By "Slumdog Millionnaire" style stories, I mean the following: Given a randomly selected multiple-choice question (and the answer), generate a segment of narrative that explains how a character comes to know which choice is the right answer (or which choices are the wrong answers). Then show the narrative segment enacted in a virtual world. The input to your system will be a sequence of multiple choice questions (and answers), each of which must be explained in separate episodes.

Because it is impossible (or at least impractical) to engineer knowledge about all possible trivia questions, I will provide you with a set of sample multiple-choice questions as input into your system. However, your solution should be developed with the ability to answer any multiple choice question in mind.

Your solution should have at least one "special feature" that goes above and beyond the baseline requirements described here. Examples include:

  • An aesthetic model -- stories not only explain the answer but are also "good" for some definition of "good."
  • Link episodes together -- episodes reference events in earlier episodes.
  • Secondary plot -- explaining why the character is on a game show, possibly linking into the episodes themselves.
  • Character personality model
  • Character emotion model

The narrative must play out in a virtual world. The virtual world can be a MUD/MOO, a flash application, graphical 3D environment or game, etc. This course adopts a very liberal definition of what a "virtual world" is.

Project teams will consist of 2 or 3 members. Teams should be formed by September 29. Shortly after, each team will be required to meet with the instructor to outline the tentative solution and receive feedback.

Projects and reports are due on Dec. 11. Projects will be demonstrated during the Final Exam period, Dec. 11. Each team will have approximately 20 minutes to present a short overview, demonstrate the system, and answer questions. Please keep slides and overview to around 3 minutes.

Final reports

Teams will be expected to prepare a report. The report should be written as if you are writing a short paper submission. The paper will be 4 or more pages, AAAI two-column style (http://www.aaai.org/Publications/Templates/AuthorKit.zip), publishable quality. The approach should be justified within the context of relevant (cited) literature.

When preparing your report, think about the type of information you would need to put into a conference or workshop paper submission. That is, imagine you want to submit a paper on your project. Assume your audience is familiar with AI and computer games. You need to clearly articulate the problem you are solving and your approach. I recommend having a related work section where you clearly connect your work to existing literature and clearly distinguish your work from other systems. That is, answer the question: if I wanted to solve the same problem you are solving, why should I consider your technique and not consider the other existing techniques? This is important for grading purposes.

In addition to related work, you should describe your technique, assumptions you are making, knowledge engineering you had to do, inputs, and outputs. Most importantly, I will want to know why you think your technique will "scale up," meaning it will work for larger number of questions than the ones you will demonstrate. Examples are always good ways of motivating your technique, I recommend an example section where you describe how an example piece of input is processed into output text. This is important for me to understand what you were able to accomplish on your projects.

A draft of your paper is Due Dec. 4. Please email it to me. Final version is due on Dec. 11 before the exam period begins.