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.)
Tuesday and Thursday, 11:05p.m. to 12:20 p.m., in 201 Hylan.
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
is an asset.
Goals of the course
- Understand (as far as current knowledge allows) the meaning of
"consciousness" (both phenomenal & access consciousness,
- Develop an informed, reasoned view of the basic issues concerning
consciousness, in humans, animals and robots (from philosophical,
cognitive, and AI perspectives)
- Acquire basic understanding of the biological basis of consciousness
and emotion in people (& animals)
- Acquire basic understanding of AI/robotics efforts to endow machines
with consciousness and emotions
- Hone skills in philosophical and scientific writing/argumentation
- (291 students) Develop skills in self-aware agent design, symbolic
- Stir up interest in one of the most intriguing topics of all time
-- which is now being explored in new ways (neuroscience & AI)
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 written homeworks will count as approximately
40% of the grade, the Lisp coding and 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.)
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:
Susan Blackmore, Consciousness: A Very Short Introduction,
Oxford U.P., 2005.
[An easily readable, entertaining yet quite comprehensive overview
of the riddle of consciousness and the various schools of thought
concerning it. Though one can question the conclusion that the
"stream of consciousness", and much else in our self-perception,
is an illusion, the book is an excellent place to start.]
Bernard J. Baars, In the Theater of Consciousness: The Workspace
of the Mind, Oxford U.P., 1997.
[A delightfully written book about consciousness, demonstrating many
interesting points directly in the text. Baars is a cognitive scientist
with a thorough knowledge of neuroscience, but at the same time with
a high-level perspective on brain functioning, of the sort that is
very congenial to an AI perspective. He proposes a blackboard-like
model, with a workspace serving as "the immediate memory system in
which we talk to ourselves, visualize places and people, and plan
actions." The global availability and global influence of the workspace
contents make it the "theater of consciousness". There's also a 2007
book with broader scope by Baars & Gage -- see the link to
further books below.]
Jean-Marc Fellous & Michael Arbib (eds.), Who Needs Emotions:
The Brain Meets the Robot, Oxford U.P., 2004.
[Articles on emotion in humans and robots from various perspectives --
neurochemistry, functional anatomy of the brain, AI, robotics, etc.]
Drew McDermott, Mind and Mechanism, MIT Press, 2001 (paperback).
[This is a book on consciousness from an AI perspective -- the only
one so far written by an AI researcher. McDermott introduces some
basic AI/robotics techniques, and argues very plausibly that
qualia (basic sensory experiences) are the primitives
of the self-model.]
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 (Amazon.com 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 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.
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:
- work, 40%: How much effort in terms of careful reading of the relevant
materials, thinking, analysis and writing has gone into the preparation of
of the essay?
- coherence, 40%: How well organized and defended are the thesis or theses
of the essay? The thesis (or perhaps 2 or 3 theses) should generally be
clearly set forth at the beginning, and convincingly developed and argued
for in the rest of the essay, and there should be brief concluding remarks.
Use direct, clear language, illustrate your points with examples wherever
possible, and be sure to use proper citation style. (Also, you are
reminded of the academic honesty guidelines, stated below, concerning
all materials taken from others, which must be clearly identified and
For more detailed guidelines about good essay style/organization, see
the notes by Mark Andrews
(written at Cornell U. in 2001; he is now a researcher in the Psychology
Dept. at University College London); and the
notes by John Messerly
(formerly at U.Texas at Austin and Austin Community College, now seemingly retired).
- Originality, 20%: This refers not so much to coming up with entirely novel
ideas, claims, or evidence (though that is welcome!), but rather to
the development of your own, personal critical/ constructive/ imaginative
perspective on the themes under discussion.
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
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.
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.
21 March 2018 / Len Schubert