Human
Complex Systems – 110
ARTIFICIAL
CULTURE:
Experiments in Synthetic Anthropology. (5 units)
This course
is all about simulations:
How they are used to describe, understand and explain human complexity.
It presents a critical overview informed by building and experimenting with
simulations
that you, the participants, build yourselves.
(See some of the simulations
we have built.)
Schedule
of Classes
Social
Sciences Computing - ClassWeb
Lecture,
2 hours;
Laboratory,
4 hours.
Nicholas
Gessler, Ph.D.
gessler@ucla.edu
OFFICIAL CATALOG DESCRIPTION
Lecture, two hours; laboratory four hours. A hands-on introduction to Artificial Culture, the philosophy and practice of constructing highly interactive computer simulations of human social worlds. An informed and critical look at the revolutionary new sciences of complexity: multiple agency, simultaneous causation and evolutionary emergence embodied in computational description, understanding and explanation of human complex systems. Participants design their own populations of cultural agents, create the social and physical environments in which they live and study the consequences of counterfactual “what-if” scenarios. No previous programming experience is required. May be repeated for credit. Letter grading.
CATALOG DESCRIPTION
Lecture, two hours; laboratory four hours. A hands-on introduction to Artificial Culture, the philosophy and practice of constructing highly interactive computer simulations of human social worlds. An informed and critical look at the revolutionary new sciences of complexity: multiple agency and causation, simultaneous interaction, and evolutionary emergence embodied in computational description, understanding and explanation of human complex systems. In a PC computer lab, participants will design their own populations of social and cultural agents, create the social and physical environments in which these agents live and study the consequences of counterfactual “what-if” scenarios. Topics include scheduling parallel processes on a serial machine, representations of cognitive perceptions, beliefs and behaviors as well as space and time, and the graphical analysis of local individual processes as they produce, and are modified by, global group patterns of behavior. No previous programming experience is required. May be repeated for credit. Letter grading.
EXTENDED DESCRIPTION
As part of the new Human Complex Systems Program, we will take a critical look at the cutting-edge of theory-building in the social sciences informed by hands-on practice in the revolutionary "new sciences of complexity." We will construct our own social and cultural agents, as well as the physical and social environments for them to "live in," and study the entailments of our "theoretical worlds" of interacting individuals by means of highly graphical quantitative visualizations on PCs. In other words, we will study the behaviors of various "what if" counterfactual scenarios which we will create as computer simulations.
Why call this "Artificial Culture?" While we know that culture is, by definition, artificial, that is not the point we're making. We are referring to the trajectory in advanced computation that arose from "Artificial Intelligence" leading to the field of "Artificial Life." We are continuing that trajectory from "Artificial Life" to "Artificial Culture." If you have seen the movies "Dark City" or "The Thirteenth Floor," or read Greg Egan's "Permutation City" or Stanislaw Lem's "Non-Serviam," you probably already have some insights into the philosophy behind "Artificial Culture." In contrast to this popular fiction, we will take a serious look at the science, practice and epistemology of evolutionary computation and multiagent modeling in order to assess its potential as a new way of describing, explaining and understanding the dynamics of culture. We will create these worlds.
What if you've never programmed before? No problem. You do have to pay a great deal of attention to detail in the beginning, but that should be nothing new to social scientists. The content has been developed in four departments over the last six years. Most of our participants began with no previous programming experience and yet everyone has succeeded in writing compelling simulations. We have over 120 working simulations on the Web. Many include source code and are a readily available resource.
We will be working in the de-facto universal object-oriented language C++, using Borland's "Rapid Application Development" system for Windows PCs. Each participant will be working with his or her own machine. Please join us in this introduction to a practice that is changing the way we look at the world. We will be meeting in the CLICC PC computer lab in Powell. Enrollment is limited, so please register early. Email if you have any questions or suggestions...
SOFTWARE
Borland C++ Builder 6.0 Professional is available in ALL the CLICC labs for free. It is NOT presently available in the SSC labs. A time-limited trial version is available on CD-ROM. I have two copies of the CD-ROM to loan out, or as I understand it, you can order your own CD-ROM trial for $10. You may purchase your own copy for about $60-100.
CULTURAL PROGRAMMING
Think of what we are about to do as "cultural programming" rather than "computer programming." We will be programming computers, but we will be using a subset of computer languages and graphics that makes sense in describing the objects and processes of culture. What do I mean by "culture?" In the context of this course, "culture" includes both shared and unshared perceptions, beliefs, behaviors, wealth, power, technology, artifacts, architectures, food, disease or any other adaptation to a social and physical environment. Constructing a simulation is a bit like being the writer, director and producer of a movie. You must construct each character: give each one a personality and the ability to experience the surrounding world and act within it. You must create the props, the sets, the social and the physical surroundings. You must set the stage with a cultural situation. Then, giving your actors the freedom to interact and improvise, you can stand back and watch what happens. You also play the role of cinematographer and editor, deciding how to bring the story to the screen. But, having drawn this analogy to movie making, don't expect us to come up with the high production values of "The Matrix" or commercial computer games. Our simulations will be minimal worlds designed to give you the chance to investigate a variety of specific scenarios. The point is for you to gain practice and confidence in thinking about human complex interactions in computational terms.
TOPICS WILL INCLUDE
GRADING
Participants will be graded on a balance of both performance and progress. There are many ways to do well in this course. There will be ample opportunities to do well whether or not you have any previous programming experience.
If you have specific simulation interests and projects in mind please discuss them with me early on. There may be ways in which we can customize the assignments to better fit your specific needs.
Please hand in only complete assignments.
It is imperative that you keep up, so don't hesitate to ask for help in working
out your ideas. The course builds upon the topics and discussions in the order
that they are introduced. If you fall behind, the chances are that you will
NOT be able to catch up. Don't hesitate to ask questions as soon as anything
seems unclear.
6 Simulation Challenges |
25% |
5 Postings on Readings
& Projects |
25% |
Class Participation |
25% |
Course Project |
25% |
TOTAL |
100% |
Letter grading.
No midterm. No final.
SAMPLE
CALENDAR
(Subject to change each quarter depending on advances in the field, current
events, local resources and participants' interests.)
Week 1:
Jumping right in: A small
simulation of Conway’s Game of Life and variations.
Visit to the Visualization
Portal: Our hosts are John Pederson, Pieter Lechner, Harold Wong. Examples:
3d scatterplot of Fisher's Iris', 3d tornado simulation in VIZ-5D, Bernie Frischer's
Cultural VR: Colosseum, Campostello,
Forum and 3d Santa Maria, Bill Jepson's UCLA and ATSAC link.
Readings: Borland C++ Basics:
files 1 – 5, Windows C++ Basics: files 2 - 6.
Week 2:
Challenge #1 due: Conway’s Game of Life.
The ICT - Institute for Creative
Technology (DVD): The Holodeck and the Mission Rehearsal Exercise
Shelling's Segregation Model
Revisited: Review of Borland and C++
Coding More Complex Behaviors
We finish the basic segregation model:
Screen Capture, Other Preferences, Adding a Trackbar and EditBox, Finishing
the Basic Code
Reminder for all challenges (assignments):
Build - Write, cut-and-paste, copy and assemble the working simulation. Experiment
- Explore the variable space of the simulation. "What if x, y, z?"
Critique - An informed evaluation of the emergence of global from local behavior.
Enhance - Modify the existing simulation to create some new functionality. Write
new working code, outline your new algorithm in pseudocode or sketch it diagramatically.
Repeat - as necessary...
Week 3:
Challenge #2 due: Shelling's Segregation
Model.
Readings and Postings Set
#1:
Time 1950 - Can Man Create a Superman?
Minsky 1996 - Public Lecture, Alife V, Nara, Japan
Computational Complexity:
Space, Time & Agency; Cellular Automata
Digital Narrative Conference:
Hammer Museum, First Floor
Self-Organizing Systems:
rEvolutionary Art, Science and Literature
Color Graphics Language:
Color Spaces
Some "tweaks" to
Conway's Game of Life. Including buttons to introduce "creatures."
Pattern Catalog - Mirek's Cellebration (Margolis Sand)
Week 4:
Challenge #3 due: Ethology
of Planet Wator: Propose the local rules from the global behavior. What is the
architecture of space, time and agency? Describe the rules in pseudocode (if...
then... statements).
Agents and Emergence
Readings and Postings Set
#2:
Video by VPRO Amsterdam 1995 featuring interviews with: Chris Langton, Santa
Fe Institute; John Holland, University of Michigan; Doyne Famer, Prediction
Inc.; Rodney Brooks, MIT; Stuart Kauffman, Santa Fe Institute; Tom Ray, ATR
Kyoto;
Karl Sims, Thinking Machines Inc. This film is available for viewing at the
Instructional Media Lab
Week 5:
Challenge #4 due: Growth and Diffusion
Algorithms.
Representation: Lewis Carroll cf.
Rodney Brooks. Mechanical Computing: Cam memory.
Videos: Simple Rules, Complex Behaviors.
The Santa Fe Institute, 1992. Artificial Life II, Video Proceedings, 1992.
John Koza on the Genetic Programming Paradigm. Nightline: Brave New World,
1999. Robert Krolwich, Danny Hillis, Andrea Loche & Paul Ashtown on Batman
Returns 30:30.
Readings and Postings Set
#3: Forrester 1971 - Counterintuitive Behavior of Social Systems.
Thinking about your Class
Projects: Individual (1) and Team (>=3) Projects OK
For some ideas look at: Journal
of Artificial Societies and Social Simulation
Note the "Previous Issues" link.
For some critiques of simulation
look at: M2M: Model to Model Analysis: Special Issue of JASSS, ESSA Conference
in Valladolid.
Week 6:
Challenge #5 due: Iterated
Prisoner’s Dilemma.
Images & Sounds: how
to do it.
D.J. Simons, Studies of Visual
Awareness: DVD: White Team Passes and WEB: Door 1 and Door 2.
Week 7:
Robotics Implementations:
Robofest Osaka, 2001 (15m). Mark Tilden RoboSapiens: Intro Geometry
Showroom, Remote Skate. RoboSapiens
Website Robot Pet Forum.
A Traffic Simulation Framework.
Week 8:
Challenge #6 due: Evolutionary Concert
Tour (a.k.a. Travelling Salesman’s Problems)
Progress and work in class
on Class Projects...
Social Robotics a la Luc
Steels, Vrije Universiteit, Brussel
MIT Leg Lab: Locomotion,
Simulation, Bloopers
Programming Help Newsgroups.
Three New Programming Samplers:
Visualizing Agents with Class Canvas Methods and Space; Graph Types and a Second
Window; Run, Step, Stop Program Flow and Canvas Persistence.
Week 9:
Clips from Tom Stoppard's
ENIGMA: Loosely based on Alan Turing. Chapter 4: The Enigma Machine.
Chapter 11: The Secret Inside the Secret.
Examples of text processing
for content analysis and cryptology.
Work in class on class projects.
Week 10:
Course Project Presentations
Coffee & Muffins