CSC582 (Tentative) Syllabus

Syllabus for CSC582 for Spring 2016

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, user interface design, 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 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  interaction like in current virtual environments? How does a user interact with a text-based MUD or with a 3D game (one built in Unreal, for example)?
  • 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?
  • What is narrative as defined by narratologists and others (like film theorists)? 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? What ideas from distributed AI might be applicable here? Should control really be shared, or should the system create the illusion of control.

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 theoretical aspects of intelligent interaction 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 virtual world design and that implementations, if chosen, will represent an original contribution to intelligent virtual worlds research.

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-mediated interface 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.


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) participating in the on-line component of the course via thoughtful posting and other interaction, 4) completion of mid-term project (either research paper or implementation). 5) completion of final project (either research paper or implementation). 6) 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.
Class participation: 25% of final grade

Quizes:·10% of final grade
In-class participation: 25% of final grade
Online participation: 10% 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. CSC 582 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:

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

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 and Online 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.  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 leading the class discussion afterward.

In addition to the in-class discussions on papers, 10% of your grade depends on your on-line participation.  For each paper you present in class, you will be expected to post a summary of the paper and/or our post-presentation discussion in the class forums, including, where applicable, a list of some questions that you think are most relevant for continued consideration.  In addition to these posts, each student will be expected to comment on at least 4 of the 6 papers presented each week with substantive posts.  While length of post is no guarantee of substance, consider contributing at least a full paragraph as a minimum for any post.  Your ideas must either be new to the discussion or be a defense or extension to ideas already contributed.  Simply adding a “me too” to the discussion is not sufficient (even if that’s how you feel).


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 2016 semester meets Mondays and Wednesdays from 10:15AM to 11:30AM in Venture 2 Suite 530, Room 1. 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.

Note that Venture 2 is a private building on NCSU’s Centennial Campus.  Parking is available campus-wide in NCSU lots.

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 Moodle pages.

The Web, The Net, Email, et al.
I have a class mailing list and several discussion forums set up using NCSU’s Moodle system, and am hoping to make as much of the course materials and notes available on the electronic reserves’ web server.

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.


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.


Date Event
January 6 Class begins
January 27 Submit proposal for mid-term project
March 2 last day to drop without a grade
March 7 – 11 Spring Break — no classes
March 14 Mid-term assignment due
March 16 Submit proposal for final project
April 25 Last Day of Class
End of final exam period for this class Final project due

Requirements for Credit-Only (S/U) Grading

In order to receive a grade of S, students are required to take all exams and quizzes, complete all assignments, and earn a grade of C- or better. Conversion from letter grading to credit only (S/U) grading is subject to university deadlines. Refer to the Registration and Records calendar for deadlines related to grading. For more details refer to

Requirements for Auditors (AU)

Information about and requirements for auditing a course can be found at

Policies on Incomplete Grades

If an extended deadline is not authorized by the instructor or department, an unfinished incomplete grade will automatically change to an F after either (a) the end of the next regular semester in which the student is enrolled (not including summer sessions), or (b) the end of 12 months if the student is not enrolled, whichever is shorter. Incompletes that change to F will count as an attempted course on transcripts. The burden of fulfilling an incomplete grade is the responsibility of the student. The university policy on incomplete grades is located at

Attendance Policy

Students are required to attend lectures unless prior arrangements are made with the instructor for university-approved activities.  For complete attendance and excused absence policies, please see

Absences Policy

Please see the university policy on excused absences here:

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 found in the Code of Student Conduct found at

Academic Honesty

See for a detailed explanation of academic honesty.

Honor Pledge

Your signature on any test or assignment indicates “I have neither given nor received unauthorized aid on this test or assignment.”

Electronically-Hosted Course Components

Students may be required to disclose personally identifiable information to other students in the course, via electronic tools like email or web-postings, where relevant to the course. Examples include online discussions of class topics, and posting of student coursework. All students are expected to respect the privacy of each other by not sharing or using such information outside the course.

Accommodations for Disabilities

Reasonable accommodations will be made for students with verifiable disabilities. In order to take advantage of available accommodations, student must register with the Disability Services Office (, 919-515-7653. For more information on NC State’s policy on working with students with disabilities, please see the Academic Accommodations for Students with Disabilities Regulation at

Non-Discrimination Policy

NC State University provides equality of opportunity in education and employment for all students and employees. Accordingly, NC State affirms its commitment to maintain a work environment for all employees and an academic environment for all students that is free from all forms of discrimination. Discrimination based on race, color, religion, creed, sex, national origin, age, disability, veteran status, or sexual orientation is a violation of state and federal law and/or NC State University policy and will not be tolerated. Harassment of any person (either in the form of quid pro quo or creation of a hostile environment) based on race, color, religion, creed, sex, national origin, age, disability, veteran status, or sexual orientation also is a violation of state and federal law and/or NC State University policy and will not be tolerated. Retaliation against any person who complains about discrimination is also prohibited. NC State’s policies and regulations covering discrimination, harassment, and retaliation may be accessed at Any person who feels that he or she has been the subject of prohibited discrimination, harassment, or retaliation should contact the Office for Equal Opportunity (OEO) at 919-515-3148.