Course Meeting Times
Lectures: 1 session / week, 1.5 hours / session
Out of Context: A Course on Computer Systems That Adapt To, and Learn From, Context
Increasingly, we are realizing that to make computer systems more intelligent and responsive to users, we will have to make them more sensitive to context. Traditional hardware and software design overlooks context because it conceptualizes systems as input-output functions. Systems take input explicitly given to them by a human, act upon that input alone and produce explicit output. But this view is too restrictive. Smart computers, intelligent agent software, and digital devices of the future will also have to operate on data that they observe or gather for themselves. They may have to sense their environment, decide which aspects of a situation are really important, and infer the user's intention from concrete actions. The system's actions may be dependent on time, place, or the history of interaction, in other words, dependent upon context.
But what exactly is context? We'll look at perspectives from machine learning, sensors and embedded devices, information visualization, philosophy and psychology. We'll see how each treats the problem of context, and discuss the implications for design of context-sensitive hardware and software.
Course requirements will consist of critiques of class readings (about 3 papers/week), and a final project (paper or computer implementation project).
Out of Context: Preliminary Schedule and Readings
Week 1: Introduction to "the context problem"
- Why do computers need to take account of context?
- What is and isn't context?
- Context-sensitive vs. context-independent views of computing
- Combating brittleness: adapting systems to changing context
Week 2: Context for software agents
- Determining relevance of context
- Implicit input and repurposing input
- Context overload: Dealing with too much context
Readings:
Brown, P. J., J. D. Bovey, and X. Chen. "Context-aware applications: from the laboratory to the marketplace." IEEE Personal Communications 4(5) (October 1997).
Lieberman, Henry, and David Maulsby. "Software That Just Keeps Getting Better." IBM Systems Journal 35, Nos. 3 & 4 (1996).
Week 3: Designing User Interfaces for Just-In-Time Information
Designing for secondary task, or "How to give someone information they didn't ask for without driving them crazy."
Readings:
Rhodes, Bradley. Bulding a Contextually Aware Associative Memory (unpublished draft).
Wickens, CD. "Engineering Psychology and Human Performance." In Engineering Psychology and Human Performance, Scott Foesman Little Brown, 1992, pp. 74-115 (only skim 74-88).
Norman, Don. "How might we interact with agents?" in Software Agents. Edited by J. Bradshaw. AAAI Press/MIT Press, 1997.
Week 4: Context for learning by example
- Generalizing context
- The "data description problem" for learning agents
Readings:
Lieberman, Henry. Integrating user interface agents with conventional applications.
Potter, Richard. Just-in-Time Programming
Week 5:
Readings:
Lenat, Doug. The Dimensions of Context-Space.
Week 6: Information visualization
Context-dependent presentation of information
Readings:
Tufte, Edward. The Visual Display of Quantitative Information.
Shneiderman, Ben. Information Visualization.
Cooper, Muriel. Computers and Design.
Week 7: The role of background knowledge as context
- Active Ontologies
- The "Size Matters" Approach: Cyc
- The Rule-Based Approach: Expert systems
- The Mining Approach: Information extraction
- The Interactive Learning Approach: Incremental development
- The Reactive Approach: Just don't do representation
Readings:
Guha and Doug Lenat. Cyc.
Lehnert, Wendy. Computers and Car Bombs.
Brooks, Rod. Intelligence without Representation.
Week 8 (Project proposals due): Systems that adapt to context
- Cognitive Adaptive Computer Help
- User Modeling
- User-system communication through annotated examples
Readings:
Selker, Ted. COACH: A Teaching Agent That Learns.
Rich, Elaine. Stereotypes and User Modeling.
Week 9: Philosophical and mathematical positions on context
Readings:
Barwise, Jon, and John Perry. Situations and Attitudes.
Suchman, Lucy. Situated Systems.
Nardi, Bonnie. Context and Consciousness.
Week 10: Machine Learning and formal approaches
Readings:
Mitchell, Tom, and Pat Langley. Machine Learning.
Neville-Manning, Craig, and David Maulsby. Sequitur.
McCarthy, John. Circumscription
Week 11: Sensing context from the environment
- Pattern recognition for determining context
- Roz Picard: Affective Computing
Week 12: Psychological and social perspectives on context
Computers as social actors
Readings:
Nass, Cliff, and Byron Reeves. The Media Equation.
Bates, Joseph. The Role of Emotion in Believable Agents.
Laurel, Brenda. Metaphors with Character.
Week 13: Final Project Reports