CSC 191/291 Course Description

Can machines show self-awareness? Could robots and other machines have subjective sensory and emotional experiences? Could they have a moral sense? These questions are becoming increasingly relevant in our age of increasingly intelligent machines. We will explore these issues through readings from the AI literature as well as from philosophy and cognitive science. Homework will include written answers to questions, essays, and -- for 291 students only -- a team programming project intended to demonstrate the possibility of some degree of self-awareness in a computer. The course will be suitable for writing credit. (4 hours, Spring).

191 Prerequisites: a programming course; sophomore or higher standing (or consent of instructor); a prior course in AI, cognitive science, linguistics, or philosophy is an advantage.

291 Prerequisites: one of 200, 212(HCI), 242, 280, or 282. (See comments below.)

Lectures:   Tuesday and Thursday, 11:05p.m. to 12:20 p.m., in CSB 601.

Comments on Prerequisites

Students should meet the prerequisite requirements (sophomore standing and some programming experience--minimally the equivalent of CSC 108 or, better, CSC 161 or CSC 171--for 191. For CSC 291 students the requirement of having taken at least one of CSC 200, 242, 280, or 282 will ensure that they can handle the "self-aware system" team programming assignment. Students are advised not to undertake this course lightly. It is expected to be a significant amount of work. The course has an extensive reading list, and requires getting a broad grasp of philosophical, cognitive, and AI issues pertaining to machine consciousness and self-awareness. For 291 students, homeworks and the programming project will be evaluated on the assumption that these students have previously attained some programming maturity, and have previously been exposed to basic AI topics such as computer vision, knowledge representation, problem solving, language understanding, etc. However, students who have taken the undergraduate problem seminar CSC 200 or a theory course such as CSC 280 or CSC 282 probably have sufficient maturity in the more formal aspects of computer science to be able to make up for lack of a prior AI course. The projects may well require the use of multiple source files and libraries, so experience with programming utilities such as make and rcs/svn/bitkeeper is an asset.

Goals of the course

Readings, Homework, and Grading

For 191 students, approximately 60% of the grade will be based on 5-6 homework assignments; 25% on several quizzes (mostly very brief ones, but the last quiz, on materials near the end of the course for which no homework can be assigned, somewhat longer ~~ 20+ minutes); and 15% for class participation.

For 291 students, the 5 or 6 homeworks will count as approximately 40% of the grade, the project as approximately 25%, the (several) quizzes as 20%, and participation as 15%.

The homework assignments will ask you to answer questions and write essays about the readings. These readings include several required books and a number of technical articles. (In addition, 291 students will probably be looking at some further scientific literature to help with your consciousness project -- see below.)

Required books

One of the key questions we want to consider is whether consciousness and self-awareness are dependent on having an organic, human-like (or mammalian) brain, or whether they can instead be characterized more abstractly, and realized in machines -- whose physical and functional makeup might be very different. However, few books concerned with this question have been written, so our sampling is somewhat biased towards philosophy and cognitive science. At least the following 4 books will be required reading:

Additional readings may be chosen from the further books list (see link below). This is likely to include some chapters of Marvin Minsky, The Emotion Machine ( 2006), and possibly from Douglas Hofstadter, I Am a Strange Loop (Basic Books 2007), and/or Ray Kurzweil, How to Create a Mind (Viking 2012), and/or Murray Shanahan, Embodiment and the Inner Life: Cognition and Consciousness in the Space of Possible Minds (Oxford U. P. 2010). (Fitting in the latter options would require omitting some currently scheduled chapters from Fellous & Arbib.)

Links to further books and to articles

The following are links to some further books from which some readings may be selected (for you or by you) and many articles of related interest.

Writing guidelines

You will be asked to answer questions in writing, and to write essays of various lengths.

One kind of place to look for examples of the kind of writing to strive for is in book reviews, in refereed journals, of some of the readings for this course.

Typically, essays will be graded on 3 dimensions, roughly as follows:

Project: Implementing a limited example of (self)awareness

As noted, approximately 25% of the work in 291 will be devoted to a semester-long project, carried out in teams of about 1-3, developing agents that show or simulate some degree of perceptual awareness, activity of some sort, emotional response, and self-awareness. Such a system should contain a simple model of the system itself, i.e., a representation that includes a symbol for itself and symbolic representations of other relevant entities in the "world" and how they relate to the agent and each other. It should also be able to do some simple inferencing. An existing Lisp-based "Gridworld" environment for creating agents and simulated worlds will be made available and introduced in a recitation. THE CONSTRUCTED AGENTS SHOULD SHOW SOME LIMITED QUESTION-ANSWERING ABILITY CONCERNING THEIR CURRENT PERCEPTIONS AND SITUATION, AND THEIR OWN GENERAL PROPERTIES, SINCE THIS IS THE MOST NATURAL WAY TO PROVIDE OVERT EVIDENCE OF CONSCIOUSNESS. ANOTHER HIGHLY RECOMMENDED FEATURE IS TO INCLUDE SOME EMOTIVE OUTPUTS, SUCH AS "HURRAH!" WHEN SOME REWARD IS GAINED, "OH NO!" IF SOMETHING BAD HAPPENS, ETC. (More ambitious goals would include being able to say something about past events, or handling more than one mobile agent, or a changing world. There is a multiple-agent version pf the Gridworld, and "exogenous" changes to the world, i.e., ones not caused by the agent, could be implemented by expanding the "go!" function, which causes the agent to make new plans and perform a further action, so that this also alters the world incrementally.)

There may be prior "warm-up" exercises assigned to 291 students prior to commencement of the project work, depending on the backgounds and prior symbolic programming experience of the students. This might include Lisp tutoring and perhaps practice with a pattern matching/transduction language (which could be used for simple English understanding and production).

Each team in the 291 class will attempt to go as far as possible in demonstrating the above sorts of capabilities. Team members will present one or two brief status reports to the rest of the class (and written versions to the instructor or TA), with opportunities for feedback. Final project presentations will be given near the end of the semester, and reports on the projects will be submitted. Besides a system description and examples of behavior, the final report should state conclusions about what has been learned, about the implications for consciousness, and connections between the project and topics/readings in the course.

Attendance and quizzes

Attendance is mandatory (and obviously essential for the "class participation" part of the grade). Gaining an oversight of the various facets of consciousness and the many perspectives on it are an essential part of the course experience. The quizzes could be on newly assigned readings or material recently covered in class, as a means of encouraging keeping up with the material. The instructor should be informed of unavoidable absences in advance (whenever feasible).

Essays and reports must be handed in in time. Exceptions will be made only under dire circumstances.

Academic Honesty

Student conduct in CSC 191/291 is governed by the College Academic Honesty Policy, the Undergraduate Laboratory Policies of the Computer Science Department, and the Acceptable Use Policy of Academic Technology Services (see especially sec. III of the full pdf document).

As in all intellectual endeavors, proper attribution of work is crucial in the essays and project reports you submit. 291 students also need to be sure to provide proper references to the software and documentation they acquire for the project (naturally, describing any additions or modifications they made). In your homework answers, essays and reports, provide citations in standard form for any text and ideas taken from other sources. Use of unattributed material is plagiarism.

Last Change: 26 January 2017 / Len Schubert