Course Syllabus

CSC6964 (Tentative) Syllabus for Spring 2018


CS6964 Computational Models of Interactive Narrative

(Tentative) Syllabus for Spring 2018

TL;DR: Course involves reeading research papers each week, mostly from AI and narrative, but some from cog psych, narrative theory and linguistic pragmatics. Students take turns leading the discussion of papers in class. Grade is based on class participation, a mid-term project and a final project. Projects are either research papers or implemented systems. 

Course Overview 

In this course we examine the use of intelligent systems to control interaction within virtual worlds. Class format is a combination of seminar and lecture, drawing from texts at the intersections of computational narratology, artificial intelligence, cognitive psychology, computational linguistics, narrative and film theory and sociology. The purpose of the course will be to explore the application of artificial intelligence to interaction in virtual environments, with a focus on modeling, generating and understanding narrative.

Most virtual reality research has focused to date on the structure and visualization of virtual spaces rather than on the structure and manipulation of interactions with them. In contrast, commercial computer games have focused on interaction in their design but have relied on hand-authored, pre-scripted elements to give rich and engaging story-like experiences to their users. In this course, we’ll examine what new narrative-centered models of interaction can be created within virtual worlds using (and extending) tools and techniques from artificial intelligence. In the course, we’ll try and answer some of the following questions: 

  • What is narrative as defined by narratologists and others (like film theorists)? 
  • How do cogntiive psychologists model narrative comprehension, and how can their models inform computational ones?
  • What narrative-centered models of interaction would we like to see in future games? 
  • What current research projects are there that are addressing this issue? 
  • How might current notions of narrative be extended to structure interaction in a virtual world? 
  • How might the following techniques from AI be put to use to build up a system that explores novel types of interaction in a virtual space: 
    • Planning and, in general, reasoning about action and change. 
    • Plan recognition. 
    • Communication, including ideas from speech act theory, discourse generation, facial expression animation and gesture. 
    • Reasoning about knowledge and belief, particularly with regards to a user’s engagement with an unfolding narrative or storyline. 
  • How can a system share control with a user and still provide a coherent narrative? 

The focus of the course is cross-disciplinary, and I hope to attract students with interests both inside and outside of computer science. While the emphasis in the course will be on the computing side of the equation and will focus on computational techniques from artificial intelligence, it’s clear that the course will benefit from the participation of students from related fields and distinct perspectives. Grading is based heavily on class participation as well as mid-term and final projects (in the form of either an essay/report or an implementation). It is expected that essays will raise issues at the cutting edge of AI and computational narrative and that implementations, if chosen, will represent an interesting and creative application of the ideas from class in a stand-alone system or playable experience (e.g. a small-scale game). 

Prerequisites: Graduate standing in Computer Science or consent of instructor. Because the course topics draw from many disciplines, the coursework will be adapted as best as possible to accommodate the backgrounds of the participants. While there will be a fair amount of discussion centered around computational techniques, programming skill is not a prerequisite and building a working system is not a requirement. Students with a primary background in computer science should expect to gain exposure to a number of other disciplines, including narrative, performance, cognitive psychology, all in the context of computer-generated narrtive and interaction. Students with backgrounds in design, social science or the arts should be prepared to learn about representation and reasoning from AI at a theoretical level, and to bring ideas from their own disciplines into the discussion. 

Requirements: Attendance at all classes and active participation in discussion is not just recommended, it is required. This includes 1) leading discussions on a rotating basis, 2) participating in the in-class discussions when not leading them,  3) completion of mid-term project (either research paper or implementation),  4) completion of final project (either research paper or implementation). 5) participation in one external (i.e., not “in class”) research experiment or alternate activity during the semester. 

An implementation will involve two main parts. First, it will involve the development of novel algorithms for structuring user interaction in a virtual world based on topics covered in the readings. Second, it will involve the implementation of those algorithms in one of the virtual world systems available to course participants. The implementation options will require time in the lab outside of class time in order to acquire any necessary authoring skills, then design, build and test the finished product. You may give periodic updates on your project to the class if this is appropriate. At project due date, you may be asked to give a class demonstration of your system, including a short presentation describing its scientific contributions followed by an example of the system at work. 

If your system is interactive (and I’d really like it to be), you should try to make your system accessible for class members to experience in settings less formal than the project review demo (for instance, by designing it so that we can access it via the net). You will be expected to submit your presentation slides, design notes and a three-page description of the system, the central algorithm(s) used, its contribution and its evaluation. 

A research paper may be on any topic of your choice as long as 1) it addresses issues of interface and interaction as they unfold in class and 2) is approved by the instructor. As you will discover, this makes the acceptable category extremely broad, but please do not make the error of assuming that I’ll approve any topic or that, once your topic is approved, your paper need not have depth and focus. If you stick to ideas covered in the readings, you’ll have an easier time. Research papers should be no more than 15 pages in length, including all figures, diagrams and references. Papers should use 12 point font, use one and a half spacing, have no more than 5 lines per inch and margins of one inch all around. Papers considerably shorter than 15 pages in length will be looked at with an additional level of curiosity. All papers will be submitted electronically (via on-line submit pages) unless prior approval is given, and will be made available to the class for our review and possible discussion (Which you should be prepared to lead if asked).  


Grading is based on class participation, in-class quizes and two projects (mid-term and final) in the form of a research paper or a system implementation. For either form of project, it is expected that the deadlines determined by the course schedule will be met. Circumstances such as computer crashes, unexpected software incompatibilities, various equipment failures and so forth, will be taken into consideration, but only those that were unanticipated and occurred at the last minute will be considered reasons for mercy. 

  • Quizes:·10% of final grade 
  • In-class participation: 25% of final grade 
  • Class experiment participation: 5% of final grade 
  • Midterm project: 30% of final grade 
    Choose one of: 
    • Implementation, broken down as follows: 
      • Project description (essay form): 5% 
      • Design documents: storyboard, system diagrams: 5% 
      • Evaluation: 5% 
      • Completed demo: 15% 
    • Research paper: 30% 
  • Final project: 30% of final grade 
    Choose one of: 
    • Implementation, broken down as follows: 
      • Project description (essay form): 5% 
      • Design documents: storyboard, system diagrams: 5% 
      • Evaluation: 5% 
      • Completed demo: 15% 
    • Research paper: 30% 
Each assignment will be given a numeric grade from 0 to 100, inclusive. Final course grade will be computing by combining these numeric grades with the weights given above to obtain an overall course grade also ranging from 0 to 100. CS6xxx will use a plus/minus grading system. If X is the overall weighted average accumulated on projects, tests and finals, then the final course grade will be guaranteed as follows:


98 <= X = 100 A+
92 <= X = 98
90 <= X = 92 A- 
88 <= X = 90 B+ 
82 <= X = 88
80 <= X = 82 B- 
78 <= X = 80 C+ 
72 <= X = 78
70 <= X = 72 C- 
68 <= X = 70 D+ 
62 <= X = 68 D
60 <= X = 62 D- 
60 < X

After receiving a grade for an assignment, you have one week to appeal the grading of any project or test. You must submit the regrade request in email to the instructor. 

In-class Participation 

35% of your grade will be based on your class participation. In-class participation involves the following. First, you must attend class regularly. I’ll call roll 8 times during the semester. You may have an unexcused absence for one of those roll calls without penalty. If you are out of class for a roll call for a university-approved reason, you must follow all policies regarding university-approved absences in order to be exempt from penalty (for instance, you must notify me in advance when such notification is needed). Second, you must read all assigned papers for each given lecture and come well-prepared to discuss them. This will be gauged by the answers to questions posed by me and others in the class as well as by the unsolicited comments that you make. Third, you must join in discussion about the papers we talk about and bring your own insights to bear on the comments. Fourth, you must take the lead for presenting papers that you are assigned several times during the semester. These presentations will be assigned and scheduled at the start of the term (though often the schedule is revised if we progress faster or slower through content, so be flexible). You’ll have roughly between 2 and 6 presentations, depending on the size of the class and the number of papers we cover. Each presentation lasts 15 to 20 minutes and you’ll be responsible for facilitating the class discussion afterward. 


Quizes will be given from time to time at the start of every class. Quiz content will be short and will focus on the current day’s readings. Students that have read the current day’s assignments will be well-prepared for the quiz on that reading list. The instructor will drop the two lowest grades from each student’s quiz scores.  


Class during the Spring 2018 semester meets Mondays, Wednesdays and Fridays from 3:05 to 3:55 in WEB 1460. Each class will be in seminar format, involving discussion of the readings, guest lectures (if any), or presentations of relevant systems, demos or student work. 

The role of me, the instructor 

In general I see the instructor in this course serving two functions. First, acting like a conventional instructor, I’ll provide some structure and background on theory and methods in AI and, to some extent, relevant research from related disciplines. But this course is very exploratory, so my second function will be as a collaborator. In this respect, I’ll be exploring these ideas along with you and hope to help you pursue those ideas that are most interesting to you and to relate those ideas to your own work. My goal is for the class to have a much clearer understanding of how intelligent systems techniques can be applied to interaction in narrative-oriented virtual worlds. 


There will be a set of readings assigned for each class meeting. You’re expected to read all assigned readings before the day they appear on the calendar and come prepared to discuss any or all of them. Typically, a class meeting will involve the presentation and discussion of two of the papers assigned for that day. Each member of the seminar, on a rotating basis, will lead discussion on a paper assigned for a specific day; the schedule and assignment of papers to discussion leaders will be done at the start of the semester so that all students can plan for their presentations in advance. While only a subset of readings may be discussed on a given day, everyone will be responsible for reading and understanding all the readings. I judge your understanding of the readings based on your participation during class discussion. The current (working) version of the readings will be available soon. These will most likely be made available in the course Canvas pages. 

Slack, email, etc.

I'm setting up a class Slack channel and several discussion forums using Canvas, and am hoping to make as much of the course materials available there as possible. Often, timely news will be sent out to the class via the course mailing list. You’re expected to check your email at least once a day to read any important messages.  We may also make use of Slack, depending on everyone's comfort level with the technology.  Be prepared to understand the course's expectations for Email and Slack engagement and to respond accordingly.


Please submit all mid-term demos or papers by the mid-term date indicated below. No mid-term work will be accepted afterward. Submit all final demos or papers by date and time indicated below. No work will be accepted afterward. Note that people working on implementation projects may be required to give short demos of their systems to the instructor during the time allotted for the class’ final exam. Students submitting papers for their final project will submit their work online by the end of the final exam period. In general, you should make arrangements no later than one week prior to each proposal deadline to review your idea with the instructor and get his approval. Submitting a proposal on the due date that then is rejected by the instructor will result in a reduced grade. So don’t do that. 

Late Assignments 

Circumstances such as computer crashes, unexpected software incompatibilities, various equipment failures and so forth will be taken into consideration, but only those that were unanticipated and occurred at the last minute will be considered reasons for mercy. Beyond hardware and software issues, no excuses for missed examinations and any other assignments will be accepted other than those approved by the University. 


Critical Dates for Class 

Yikes!  These dates are still from the 2017 course, but are close to the ones that will be updated for 2018

January 9    Class begins
January 30    Submit proposal for mid-term project 
January 20    Last Day to Drop (delete)
March 3   Last Day to Withdraw
March 12-19    Spring Break
March 10    Mid-term assignment due
March 20    Submit proposal for final project
April 24    Last day of class
Day of final exam assigned for this class    Final project due

Attendance Policy 

Students are required to attend lectures unless prior arrangements are made with the instructor for university-approved activities. 

Absences Policy 

Please see the university policy on excused absences.  Students with excused absences must arrange to make up work with the instructor. 

Makeup Work Policy 

Unless an explicit excuse is granted, no assignments will be accepted late.

Additional Excuses Policy 




Academic Integrity 

Students are required to comply with the university policy on academic integrity.

Course Summary:

Date Details Due