Memory Detective - Indiana University

advertisement
Software Developed at Indiana University
The Cognitive Science Program at Indiana University receives support from a National
Science Foundation Department of Undergraduate Education Grant titled, "An
Undergraduate Curriculum for Cognitive and Information Sciences" (DUE-9752299), in
the amount of $249,996 and lasting for a three-year period that ended February 28, 2001.
This grant allowed the Cognitive Science Program at Indiana University to develop the
curriculum for a stand-alone bachelor's degrees and auxiliary programs in the cognitive
and information sciences. The resulting curriculum has produced a state-of-the-art
program that two independent reviews have lauded (see letters in appendix). In an effort
to support development of similar programs at other institutions, as well as to serve a
broad set of courses across the knowledge-based and human behavior curriculum, we
propose to develop and export a number of different software applications via the Mind
Project consortium.
The software is in various stages of development, but work has begun on all projects. In
many cases all that is required is porting to a multi-platform language, testing, and
courseware development. We plan to use graduate student CS majors for programming,
and paid undergraduate students for testing, courseware development, and assessment.
Existing online materials can be found at:
http://www.psych.indiana.edu/software/
The projects that will become the main thrust of our efforts are described below.
Smarts: Learning AI and Programming through Artificial Life
Beginning in the Spring Semester 1999, Michael Gasser (Computer Science, Linguistics,
Cognitive Science) has been involved in developing the undergraduate cognitive course
Computation in Cognitive Science (Q260). This course introduces programming in Java
in the context of artificial intelligence and artificial life. Gasser has written a large
simulation application in Java called Smarts which the students modify as a part of their
programming assignments. Each programming assignment is based on a different topic
in artificial intelligence; topics covered in the current version are reinforcement learning,
competitive learning, evolutionary computation, and adversarial search. Students modify
the existing program, implementing the algorithms they have learned in class. The
screen-dump below shows the graphical user interface for the assignment on evolutionary
computation. The user interacts with the program in the "Evolution" window. The
"World" window shows the current position of the agents and other objects in the
simulated world. The "Genomes" window shows the genomes of the agents.
The course and the software that goes with it are described at the following Web site:
http://www.indiana.edu/~gasser/Q260/
SALSA: Learning about Learning through Artificial Life
Michael Gasser (Computer Science, Linguistics, Cognitive Science) has been developing
a software package called SALSA (System using Artificial Life for Studying
Adaptation). The ultimate goal is a set of modules within which students can explore
various adaptive algorithms, including genetic algorithms, competitive learning,
reinforcement learning, and supervised categorization. What all of these modules will
share is a two-dimensional world in which simple agents encounter and potentially act on
other agents, food, and obstacles. One module, designed to introduce reinforcement
learning, has been implemented and tested at the Indiana University Summer Cognitive
Science Workshop in June 2000.
In the reinforcement learning module, agents experience the world through their sensory
systems, including touch, vision, and sonar. On the basis of their sensory input, they
perform one of a small set of actions and receive a reward or punishment based on the
consequences. Each agent has a neural network which uses the Q-learning algorithm to
adjust the values associated with particular combinations of sensory inputs and actions.
Students can design both the environment in which the agents live and the agents
themselves. They have control over the placement of food and obstacles, the rewards and
punishments associated with particular actions in particular situations, the kinds of
sensory input that the agents have access to, and the actions that are available to the
agents. Students can observe the progress of learning and explore the effects of each of
the parameters they have control over. They can also have the agents they design for a
particular environment compete with agents designed by others.
The reinforcement learning module of SALSA is described at
http://www.cs.indiana.edu/~gasser/Salsa/
Complex Adaptive Systems
Important problems in psychology, computer science, economics, ecology, and
neuroscience depend upon a deeper understanding of the mechanisms that propel
Complex Adaptive Systems. A common feature of these systems is that organized
behavior emerges from the simultaneous interactions of many units. Dr. Robert
Goldstone (Psychology, Cognitive Science) has developed several existing software
applications to support a course on complex adaptive systems. These programs address
the following systems in depth: chaotic growth in animal populations, learning in the
human nervous system, cooperation and competition within social groups, and the
evolution of artificial life.
These programs currently run only on Macintosh systems, and so the current proposal
will support translating the code to Java for multi-platform support and web-based
delivery. We also plan to add additional simulations that explore dynamical systems
behavior of complex systems, such as predator-prey interactions and other coupled
systems. An historical example is the cyclic variation of lynx and rabbit populations.
However, the course considers populations of rabbits and grass because their interactions
are better modeled by the equations developed in the course. Often it is observed that as
the amount of grass grows in a regions, the population of rabbits will increase with their
food source. However, as the rabbit population increases, the grass population will
decrease from over-harvesting. Then, the population of rabbits will decrease because of
the dwindling food supply of grass. With fewer predators, the grass population increases
again, perpetuating the cyclic population variation.
The graphic above illustrates the population of rabbits and grass. Students can experiment
with the growth rate of the different populations and observe how difficult it is to
establish a stable population. These same principles can be extended to situations such as
the spread of ideas in a culture.
Examples developed by Dr. Robert Goldstone for a course on complex adaptive systems
are found at:
http://cognitrn.psych.indiana.edu/rgoldsto/complex/
Virtual EEG Lab
A major component of the brain sciences is discovering the link between brain activity
and conscious awareness. Research in Thomas Busey's lab at Indiana University
(Psychology, Cognitive Science) has yielded a large database of electroencephalograph
(EEG) data examining the brain's response to faces, cars, flowers and other common
objects. All of his students for the past 3 years have had an opportunity to perform an
EEG experiment looking at what makes face perception special. To answer this question,
students chose stimuli such as faces, distorted faces, and other objects, and looked at how
a particular component of the EEG that is though to be associated with face processing
(the N170), is affected by the different stimuli.
EEG systems are not widely available in teaching settings, and so to make this
methodology approachable, we propose to create a large database of images and their
associated brain responses. These will be taken from the existing data as well as digitized
from journal articles that use similar methodologies. Students will be able to address the
same experimental question by choosing stimuli, and then by viewing graphs of the
resulting EEG data they will be able to answer the question of what the N170 component
represents and whether faces are indeed processed differently than other objects in the
brain.
Memory Detective
The typical introductory psychology or cognitive science course organizes memory
according to a number of different contrasts such as short-term vs. long-term memory,
explicit vs. implicit memory, or declarative vs. procedural memory. A number of in-class
demonstrations may serve to illustrate several different phenomenon. Students gain much
more intuition about the workings of memory through experimentation, but difficulties
with running studies hinders such efforts. We will create a software application that
allows students to perform memory experiments on a computer-based model that is
derived from the most successful model of human memory in the literature.
Our classroom experience has shown that students comprehend the results of an
experiment when they participate in its design. To this end, we will create a program that
allows students to create word lists (or have them chosen randomly) and then submit
these to the computer model for 'study'. The program will then rely on the aspects of the
REM model to predict which words would be most likely to be recalled by subjects who
studied a similar list. The model is able to do this because words are described in terms of
their features, which allows similarities between words to be computed (ref). This aspect
also allows the model to capture false memory effects. For example, when human
subjects study a list of related words (such as dream, nap, snooze, yawn, rest) they often
recall a related word (sleep) along with some of the studied words. This false memory
effect is quite robust and gives students an idea of the processes of human memory.
The typical interaction with the program would be as follows. As shown in Figure x,
students would begin by choosing words from a list of 5000 words and placing them in
either study list 1 or study list 2. Two separate lists allows the students to explore explicit
and implicit memory by allowing the model to rely on familiarity when recalling words,
or forcing it to code context (i.e., a subject might think: "this word seems familiar, but I
can't recall whether it was on list 1 or list 2"). The model then returns the words that were
recalled, which is somewhat random for each simulated subject. Note that the model
displays false memory effects: when words related to 'sleep' are studied, the model
produces some of these, along with the word 'sleep' which was not studied.
The memory detective application allows the student to perform many different memory
experiments in rapid order, and because they choose the word list they can try the same
materials on human observers to test the model's performance. Through interactions with
the program the students gain an intuitive grasp of the workings of the different memory
systems. The program will allow multiple simulated subjects and collect summary
statistics on how many times each word was recalled for 20 simulated subjects. This
interaction provides the complete experience of running a memory experiment.
Select Words:
L1 L2
Study Lists:
List 1
Nap
Banana
Pizza
Dog
Anteater
Frog
Dream
Rest
Daisy
Rose
Torch
Flame
Computer
Telephone
Shoe
Shirt
Sleep
Snooze
Nap
Dream
Rest
Snooze
Shoe
List 2
Banana
Anteater
Frog
Telephone
Post-study distractor task time (seconds) 15
Test List 1
Test List 2
Test Both
The Model Recalled These Words:
Nap
Sleep
Rest
Shoe
Virtual Robot
Q351, Introduction to Artificial Intelligence and Computer Simulation, surveys
techniques for machine intelligence and computational modeling of human intelligence.
The class surveys many AI areas, such as intelligent agents, neural networks, problemsolving and planning. Students implement AI programs for a number of these areas.
Under this grant, we propose to develop a simulated environment for “virtual robotics” to
enable students to explore each subarea as a step towards a achieving compelling
overarching goal: developing a virtual robot that senses, develops representations of its
simulated world, plans actions, and carries them out in this simulated world. This highlevel goal will provide a unifying course theme to contextualize and motivate the study of
each subarea. This approach is in a spirit similar to existing initiatives to develop AI
curricula based on physical robots (e.g., Kumar & Meeden, 1998), and, more broadly,
with the agent-centered approach to teaching artificial intelligence (e.g., Russell &
Norvig, 1995). However, our “virtual robotics” approach enables simple and inexpensive
distribution of the software to other institutions, and enables more focus on higher-level
issues than would be practical with physical robots, without the overhead of addressing
hardware issues. It also enables students to perform large numbers of rapid automated
experiments, and to experiment not only with agent characteristics, but with the world.
Starting out with an “easy” simulated environment, and adjusting it to increase its
difficulty, will help students understand the factors that determine the effectiveness of
particular AI methods.
Simulated robotics environments have been developed previously, and have proven an
effective research tool, but have not been aimed at instructional use. For example,
Tileworld (Joslin, Nunes, & Pollack, 93), a widely-used and publicly-available system,
assumes a sophisticated user base and requires Common Lisp. The proposed system will
be written in Java for portability, will have a simple-to-use interface, and will include a
set of tools for generating simple environments, with those environments based on the
office environments used in the competitions for physical robots run annually by the
American Association for Artificial Intelligence (AAAI) at its annual conference. The
system will provide the capability to load predefined environment definitions or to
interactively place objects (e.g., desks, chairs, etc.) and rearrange the overall space (e.g.,
arranging walls and placing doors), and to view the virtual robot’s progress from above
during simulated execution. The software will include modules implementing different
component behaviors (ranging from low-level effector procedures and high-level
planning), as well as instrumentation to facilitate experiments (e.g., capabilities to
generate random goals and track the number of moves required to achieve a goal). When
all modules are enabled, the simulator will provide an easy-to-use tool enabling students
to observe and test the performance of different approaches, making it suitable for use in
introductory courses, even those for which students have no programming experience. In
more advanced courses, instructors will be able to disable one or more of the modules, to
be replaced with student-written modules, enabling students explore the ramifications of
design decisions in a rich environment, without having to develop code to handle
superfluous details. During the semester of Q351, students will develop a collection of
modules, motivated by the goal of achieving a full system by the end of the course.
The capability for automated experimentation will enable students to systematically
compare different approaches. The environment will also include the capability to
change environmental behaviors (e.g., to adjust the probability that the simulated robot’s
wheels will slip, or that an object will be moved by someone other than the robot). This
will enable, for example, developing and testing purely deliberative planning models in
well-behaved environments, and then changing to a more realistic environment to
observe the problems that arise and motivate the use of reactive planning methods. Thus
this system will provide a rich environment for learning at multiple levels, and with
multiple focuses.
D. Joslin, A. Nunes, and M. Pollack, The Tileworld User’s Guide. Technical Report TR93-12, Department of Computer Science, University of Pittsburgh,
http://www.cs.pitt.edu/~pollack/distrib/users-guide.ps.
D. Kumar and L. Meeden. A Robot Laboratory for Teaching Artificial Intelligence.
Proceedings of the Twenty-Ninth SIGCSE Technical Symposium on Computer Science
Education (SIGCSE-98), ACM Press, 1998.
http://mainline.brynmawr.edu/Robots/ResourceKit/Paper.html.
S. Russell and P. Norvig, Artificial Intelligence: A Modern Approach. Prentice-Hall,
1995.
Download