ACT-R (pronounced "act-ARE": Adaptive Control of Thought--Rational) is a
cognitive architecturemainly developed by John Robert Anderson at Carnegie Mellon University. Like any cognitive architecture, ACT-R aims to define the basic and irreducible cognitive and perceptual operations that enable the human mind. In theory, each task that humans can perform should consist of a series of these discrete operations.
Most of the ACT-R basic assumptions are also inspired by the progresses of cognitive neuroscience, and ACT-R can be seen and described as a way of specifying how the brain itself is organized in a way that enables individual processing modules to produce cognition.
Like many cognitive architectures, ACT-R has been inspired by the work of
Allen Newell, and especially by his life-long championing the idea of unified theories as the only way to truly uncover the underpinnings of cognition. In fact, John Anderson usually credits Allen Newellas the major source of influence over his own theory.
What ACT-R looks like
Like other influential cognitive architectures (including Soar, CLARION, and EPIC), the ACT-R theory has a computational implementation as an interpreter of a special coding language. The interpreter itself is written in Lisp, and might be loaded into any of the most common distributions of the Lisp language.
This means that any researcher may download the ACT-R code from the ACT-R website, load it into a Lisp system, and gain full access to the theory in the form of the ACT-R interpreter.
Also, this enables researchers to specify models of human cognition in the form of a script in the ACT-R language. The language primitives and data-types are designed to reflect the theoretical assumptions about human cognition. These assumptions are based on numerous facts derived from experiments in
cognitive psychologyand brain imaging.
programming language, ACT-R is a framework: for different tasks (e.g., Tower of Hanoi, memory for text or for list of words, language comprehension, communication, aircraft controlling), researchers create "models" (i.e., programs) in ACT-R.These models reflect the modelers' assumptions about the task within the ACT-R view of cognition. The model might then be run.
Running a model automatically produces a step-by-step simulation of human behavior which specifies each individual cognitive operation (i.e., memory encoding and retrieval, visual and auditory encoding, motor programming and execution, mental imagery manipulation). Each step is associated with quantitative predictions of latencies and accuracies. The model can be tested by comparing its results with the data collected in behavioral experiments.
In recent years, ACT-R has also been extended to make quantitative predictions of patterns of activation in the brain, as detected in experiments with
fMRI.In particular, ACT-R has been augmented to predict the exact shape and time-course of the BOLD response of several brain areas, including the hand and mouth areas in the motor cortex, the left prefrontal cortex, the anterior cingulate cortex, and the basal ganglia.
ACT-R's most important assumption is that human knowledge can be divided into two irreducible kinds of representations: "declarative" and "procedural". Within the ACT-R code, declarative knowledge is represented in form of "chunks", i.e. vector representations of individual properties, each of them accessible from a labelled slot.
Chunks are held and made accessible through "buffers", which are the front-end of what are "modules", i.e. specialized and largely independent brain structures.
There are two types of modules:
* Perceptual-motor modules, which take care of the interface with the real world (i.e., with a simulation of the real world). The most well-developed perceptual-motor modules in ACT-R are the visual and the manual modules.
* Memory modules. There are two kinds of memory modules in ACT-R:
** Declarative memory, consisting of facts such as "Washington, D.C. is the capital of United States", "France is a country in Europe", or "2+3=5"
** Procedural memory, made of productions. Productions represent knowledge about how we do things: for instance, knowledge about how to type the letter "Q" on a keyboard, about how to drive, or about how to perform addition.
All the modules can only be accessed through their buffers. The contents of the buffers at a given moment in time represents the state of ACT-R at that moment. The only exception to this rule is the procedural module, which stores and applies procedural knowledge.It does not have an accessible buffer and is actually used to access other module's contents.
Procedural knowledge is represented in form of "productions". The term "production" reflects the actual implementation of ACT-R as a
production system, but, in fact, a production is mainly a formal notation to specify the information flow from cortical areas (i.e. the buffers) to the basal ganglia, and back to the cortex.
At each moment, an internal pattern matcher searches for a production that matches the current state of the buffers. Only one such production can be executed at a given moment. That production, when executed, can modify the buffers and thus change the state of the system. Thus, in ACT-R, cognition unfolds as a succession of production firings.
The symbolic vs. connectionist debate
cognitive sciences, different theories are usually ascribed to either the "symbolic" or the "connectionist" approach to cognition, and ACT-R is often assumed to be representative of the "symbolic" field. However, most of the ACT-R community, and certainly its developers, disagree with this attribution, and they prefer to think of ACT-R as a general framework that specifies how the brain is organized, and how its organization gives birth to what is perceived (and, in cognitive psychology, investigated) as mind.
The symbolic misattribution probably arises from the fact that, in ACT-R, there is a (rather technical) distinction between "symbolic" and "subsymbolic" levels.
However, these terms are mainly a legacy of the early implementations of the theory. From a theoretical standpoint, they simply reflect the distinction between atomic components of memory and their underlying computational quantities. In fact, Anderson usually argues that this distinction might be put into correspondence with other similar distinctions accepted in the connectionist field, e.g. to one between activation-based and weight-based processing.
Furthermore, ACT-R has been implemented as a neural network, proving that there is nothing intrinsically "symbolic" in the underlying theory.
Theory vs. implementation, and Vanilla ACT-R
The importance of distinguishing between the theory itself and its implementation is usually highlighted by ACT-R developers.
In fact, much of the implementation does not reflect the theory. For instance, the actual implementation makes use of additional 'modules' that exist only for purely computational reasons, and are not supposed to reflect anything in the brain (e.g., one computational module contains the pseudo-random number generator used to produce noisy parameters, while another holds naming routines for generating data structures accessible through variable names).
Also, the actual implementation is designed to enable researchers to modify the theory, e.g. by altering the standard parameters, or creating new modules, or partially modifying the behavior of the existing ones.
Finally, while Anderson's laboratory at CMU maintains and releases the official ACT-R code, other alternative implementations of the theory have been made available. These alternative implementations include "jACT-R" (written in Java by Anthony M. Harrison at the
University of Pittsburgh) and "Python ACT-R" (written in Python by Terrence C. Stewart and Robert L. West at Carleton University, Canada).
Similarly, ACT-RN (now discontinued) was a full-fledged neural implementation of the 1993 version of the theory. All of these versions were fully functional, and models have been written and run with all of them.
Because of these implementational degrees of freedom, the ACT-R community usually refers to the "official", lisp-based, version of the theory, when adopted in its original form and left unmodified, as "Vanilla ACT-R".
Over the years, ACT-R models have been used in more than 500 different scientific publications, and have been cited in many more. ACT-R has been applied in the following areas:
* Higher level cognition,
Problem solvingand Decision making
language, including syntactic parsing, semantic processing and language generation
More recently, more than two dozen papers made use of ACT-R for predicting brain activation patterns during imaging experiments, and it has also been tentatively used to model neuropsychological impairments and mental disorders.
Beside its scientific application in cognitive psychology, ACT-R has been used in other, more application-oriented oriented domains.
Human-computer interactionto produce user models that can assess different computer interfaces,
Education, where ACT-R-based cognitive tutoring systems try to "guess" the difficulties that students may have and provide focused help
* Computer-generated forces to provide cognitive agents that inhabit training environments
Some of the most successful applications, the Cognitive Tutors for Mathematics, are used in thousands of schools across the United States.
Such "Cognitive Tutors" are being used as a platform for research on learning and cognitive modeling as part of the Pittsburgh Science of Learning Center.
Early years: 1973-1990
ACT-R is the ultimate successor of a series of increasingly precise models of human cognition developed by John Anderson.
Its roots can be backtraced to the original HAM model of human memory, jointly developed by
John R. Andersonand Gordon Bowerin 1973, and described in their jointly authored monograph, "Human Associative Memory".
Later, the original HAM model was expanded into the first version of the ACT theory, which was first introduced in Anderson's 1976 monography "Language, Memory and Thought".
This was the first time the procedural memory was added to the original chunk-like declarative memory system, introducing a computational dichotomy that was later proved to hold in human brain by neuropsychologist Larry Squire.
The theory was then further extended into the ACT* model of human cognition, which was presented in 1983 Anderson's book "The Architecture of Cognition".
Birth of ACT-R: 1990-1998
In the late eighties, Anderson devoted himself to exploring and outlining a mathematical approach to cognition that he named Rational Analysis. The basic assumption of Rational Analysis is that cognition is optimally adaptive, and precise estimates of cognitive functions mirror statistical properties of the environment. In his work with Lael Schooler, he successfully demonstrated that many features of memory, including retention functions and contextual effects, may be reproduced by applying Bayesian estimates to environmental statistics.
This work culminated in the publication of his research monograph "The Adaptive Character of Thought" (1990).
Later on, he came back to the development of the ACT theory, using the Rational Analysis as a unifying framework for the underlying calculations. To highlight the importance of the new approach in the shaping of the architecture, its name was modified to ACT-R, with the "R" standing for "Rational".
In 1993, Anderson met with Christian Lebiere, a researcher in connectionist models mostly famous for developing with
Scott Fahlmanthe Cascade Correlation learning algorithm. Together, they wrote a neural network implementation of his theory, defending its biological plausibility.
They also developed successive version of the architecture, eventually culminating in the release of ACT-R 4.0, presented in the 1998 jointly edited book "The Atomic Components of Thought".
Thanks to Mike Byrne at the
Rice University, version 4.0 also included optional perceptual and motor capabilities, mostly inspired from the EPIC architecture, which greatly expanded the possible applications of the theory.
Current developments 1998-
After the publication of "The Atomic Components of Thought", Anderson become more and more interested in the underlying neural plausibility of his life-time theory, and began to use brain imaging techniques pursuing his own goal of understanding the computational underpinnings of human mind.
The necessity of accounting for brain localization pushed for a major revision of the theory. ACT-R 5.0, presented in 2002, introduced the concept of modules, specialized sets of procedural and declarative representations that could be mapped to known brain systems. In addition, the interaction between procedural and declarative knowledge was mediated by newly introduced buffers, specialized structures for holding temporarily active information (see the section above). Buffers were thought to reflect cortical activity, and a subsequent series of studies later confirmed that activations in cortical regions could be successfully related to computational operations over buffers. The theory was first described in the 2004 paper "An Integrated Theory of Mind".
No major changes have occurred since then in the theory, but a new version of the code, completely rewritten, was presented in 2005 as ACT-R 6.0. It also included significant improvements in the ACT-R coding language.
ACT-R has also been implemented as PythonACT-R [http://terry.ccmlab.ca:8080/project/ccmsuite] at Carleton University by Terry Stewart. PythonACT-R is arguably a lower threshold modeling language than Lisp and opens up model development to a wider range of students.
The long development of the ACT-R theory gave birth to a certain number of parallel and related projects.
The most important ones are the PUPS production system, an initial implementation of Anderson's theory, later abandoned; and ACT-RN, the neural implementation mainly developed by Christian Lebiere.
Lynne Reder, also at
Carnegie Mellon University, developed in the early nineties SAC (Source of Activation Confusion), a model of conceptual and perceptual aspects of memory that shares many features with the ACT-R core declarative system, although differing in some assumptions. SAC is a computational model that specifies a memory representation consisting of a network of both semantic (concept) and perceptual nodes (such as font) and associated episodic (context) nodes. Similar to ACT-R, the node activations are governed by a set of common computational principles such as spreading activation and the strengthening and decay of activation. However, a unique feature of the SAC model are episode nodes, which are newly formed memory traces that binds the concepts involved with the current experiential context. An additional recent addition to SAC is assumptions governing the probability of forming an association during encoding. These bindings are affected by working memory resources available. SAC is considered among a class of dual-process models of memory, since recognition involves two processes: a general "familiarity" process based on the activation of semantic (concept) nodes and a more specific "recollection" process based on the activation of episodic (context) nodes. This feature has allowed SAC to model a variety of memory phenomena, such as meta-cognitive (rapid) feeling of knowing judgments, remember-know judgments, the word frequency mirror effect (Reder and others, 2000; 2002), age-related memory loss (Buchler & Reder, 2007), perceptual fluency, paired associate recognition and cued recall (Reder et al., 2007; Buchler, Light, & Reder, 2008), as well as account for implicit and explicit memory tasks without positing an unconscious memory system for priming.
* [http://act-r.psy.cmu.edu/ Official ACT-R website] (with a lot of online material, including the source code, list of publications, and tutorials)
* Anderson, J. R. (1976). "Language, Memory, and Thought". Hillsdale, NJ: Erlbaum.
* Anderson, J. R. (1983). "The Architecture of Cognition". Cambridge, MA: Harvard University Press.
* Anderson, J. R. (1990). "The Adaptive Character of Thought". Hillsdale, NJ: Erlbaum.
* Anderson, J. R. (1993). "Rules of the Mind". Hillsdale, NJ: Erlbaum.
* Anderson, J. R., & Bower, G. H. (1973). "Human Associative Memory". Washington: Winston and Sons.
* Anderson, J. R., & Lebiere, C. (1998). "The Atomic Components of Thought". Mahwah, NJ: Erlbaum.
* Anderson, J. R., & Schooler, L. J. (1991). Reflections of the environment in memory. "Psychological Science", "2", 396-408
* Anderson, J. R., Bothell, D., Byrne, M. D., Douglass, S., Lebiere, C., & Qin, Y . (2004). An integrated theory of the mind. "Psychological Review", "111(4)". 1036-1060.
* Buchler, N. E. G., & Reder, L. M. (2007). Modeling age related memory deficits: A two-parameter solution. "Psychology and Aging", "22(1)", 104-121
* Buchler, N. G., Light, L., & Reder, L. M. (2008). Memory for items and associations: Distinct representations and processes in associative recognition. "Journal of Memory and Language", "59", 183-199.
* Reder, L. M., Angstadt, P., Cary, M., Erickson, M. A., & Avers, M. S. (2002). A reexamination of stimulus-frequency effects in recognition: Two mirrors for low and high frequency pseudowords. "Journal of Experimental Psychology: Learning, Memory, and Cognition", "28", 138-152.
* Reder, L. M., Nhouyvanisvong, A., Schunn, C. D., Avers, M. S., Angstadt, P., & Hiraki, K. (2000). A mechnistic account of the mirror effect for word frequency: A computational model of remember-know judgments in a continuous recognition paradigm. "Journal of Experimental Psychology: Learning, Memory, and Cognition", "26", 294-320.
* Reder, L. M., Oates, J. M., Dickison, D., Anderson, J. R., Gyulai, F., Quinlan, J. J., Ferris, J. L., Dulik, M. & Jefferson, B. (2007). Retrograde facilitation under midazolam: The role of general and specific interference. "Psychonomic Bulletin & Review", "14"(2), 261-269.
* Stewart, T.C. and West, R. L. (2005) Python ACT-R: A New Implementation and a New Syntax. 12th Annual ACT-R Workshop [http://terrystewart.ca/papers/2005-Reimplementing_ACT-R_full.pdf]
Wikimedia Foundation. 2010.