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 artificial intelligence, cognitive psychology, multi-agent systems, 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. Most virtual reality research has focused to date on the structure and visualization of virtual spaces (for instance, through VRML) rather than on the structure and manipulation of interactions with them. 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 interaction like in current virtual world systems? How does a user interact with a text-based MUD or with a 3D graphical world (one built in Unreal Tournament, for example)?
- What models of interaction would we like to see in future virtual world systems? 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 environment?
- 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. Grading is based on class participation, and mid-term and final projects (in the form of either an essay or an implementation). Specifics for assignments differ between online and in-classroom sections (see an old DE syllabus here}. 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. Pre-requisites 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 pre-requiste 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. Requirements Requirements: Attendance at all classes and active participation in discussion. 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 experiment or alternate activity during the semester. An implementation will involve the development of novel algorithms for structuring user interaction in a virtual world, along with 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, 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 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. 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 Grading is based on class participation 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: 35% of final grade In-class participation (presentations): 15% of final grade In-class participation (discussions): 10% of final grade Online participation: 10% of final grade Class experiment participation (or alternative): 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 582will use a plus/minus grading system. If X is the overall weighted average accumulated on all course categories, 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. Online participation In addition to the in-class discussions on papers the instructor or the TA will post topics for discussion on the class blog. Students are expected to respond to the post through comments on the topic. Each student post will be given a rating by the instructor or the TA on a scale of 0 to 5. The ratings will be kept confidential and they will be communicated to the student every week. For each student, the top five scores for a given week will be collected and averaged. Weekly averages will be summed at the end of the semester and this total will serve as the on-line contribution to the class participation grade. Online participation grade will amount to 10% of the total grade and in-class participation will contribute to 25% (presenting papers + contributing to discussions) out the the total 35% of class participation grade. Classes
Class meets Mondays, Wednesdays and Fridays from 9:35AM to 10:25AM in EB2 Room 1230. 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 you, the students. I'll expect that you have arrived in the seminar with ideas of your own and at least are in the process of giving thought to research topics in intelligent virtual worlds and interactive narrative. The seminar is a place for you to develop your ideas further, in light of the issues raised during our discussions. 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. On-line discussion Your on-line participation contributes directly to your course participation grade. The main method for on-line interaction is through the course forums. Leo and I will periodically post comments there regarding recent or upcoming readings, discussion topics, etc. Its up to you to find posts of interest to you and to provide interesting comments and discussion via comments. If no posts for a given week excite you, it's up to you to create new posts with substantive content as part of your participation. I expect each of you to post new topics or comments on at least one topic each week. Readings
Each member of the seminar, on a rotating basis, will lead discussion on the instructor's assigned readings. 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 can be found at the [Readings Page] Computing Environment My Lab Equipment in my lab (Venture I Room 109) will be available for your use 24 hours a day, seven days a week during the semester, however, this space is also used by my research group, and when conflicts arise, it is the funded research that typically wins out. I strongly advise you to talk to me about setting up a computer in another CSC lab or at home to build your projects on. If you absolutely cannot do without using a machine in my lab at a specific time, I can work out an ad hoc reservation system that will make everyone happy. There will be no lab instructor to help you with problems in this lab, and the TA may or may not be available to assist with technical issues at the time you're working, so plan on learning the systems you'll be using on your own. I will be available during office hours to answer questions related to system-building, however, and the TA can facilitate your initial set-up with the machines. Details for access to the lab will be made available at the beginning of the semester. Students working on implementation projects for this course may find themselves spending a substantial amount of lab time working with computers. My lab's facilities are limited, necessitating cooperative scheduling and probably the need to make use of resources elsewhere. There are excellent computer facilities at a number of locations around campus -- I'll do what I can to make as much available to class members on as many different machines as possible. The Web, The Net, Email, et al. I have a class mailing list and several discussion forums set up using Wolfware, 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. The Lab's Virtual Worlds I am in the process of making available a number of virtual world toolkits as well as instances of working virtual worlds built with them. These virtual worlds range from text-based multi-user systems like MUDs and MOOs (see http://www.mudconnect.com/) to 3D interactive worlds (see http://www.alice.org/) to worlds built using the Unreal Tournament gaming engine (see http://www.epicgames.com/) and associated world editors. We're in the process of setting up a server for the game engine Half-Life2 as well. You are encouraged to experiment with any of these multi-user environments and to use them to build interactive, intelligent systems (should you opt for the project implementation route). See the instructor for more information. Timeline Please submit all mid-term demos or papers by 11:45PM Eastern Time on October 16, 2008. No mid-term work will be accepted afterward. Submit all final demos or papers by 11:45PM Eastern Time on December 3. The drop-dead date for final projects is December 3, 2008. No work will be accepted afterward. | Date | Event | | August 19 | Class begins | August 31
| Submit one page proposal for mid-term project | | October 9 | Fall Break -- no classes | | October 23 | Mid-term assignment due | | October 23 | Submit one page proposal for final project | | October | Last day to drop CSC582 without a grade | | December 2 | Final assignment due | | December 4 | Last day of class | Readings Schedule The current working version of the readings is organized around a tentative schedule, and can be found at the [Readings Page]
|