ACT-R: Frequently Asked Questions List

 

Frank E. Ritter: frank.ritter@psu.edu
Jong W. Kim: jwkim@mail.ucf.edu
Jacob D. Oury: jdo6@psu.edu

Last updated  20 Jun 2017

 

 


Table of Contents

Section 0: Introduction

Section 1: General Questions

(G0) Where can I get hold of the ACT-R FAQ?

(G1) What is ACT-R?

(G2) Where can I get more information about ACT-R?

(G3) What does ACT-R stand for?

(G4) What do I need to be able to run ACT-R?

(G5) Where can I get hold of ACT-R?

(G6) Who uses ACT-R for what?

(G7) How can I learn ACT-R?

(G8) Is ACT-R the right tool for me?

(G9) Is there any support documentation available for ACT-R?

(G10) How can I find out what bugs are outstanding in ACT-R?

(G11) How does ACT-R currently stand as a Psychology theory?

(G12) What meetings are there of the ACT-R community?

(G13) What are the implications of ACT-R in education?

Section 2: Technological and Programming Questions

(T1) How can I make my life easier when programming in ACT-R?

(T2) How can I write fast code?


Section 0: Introduction

This is the introduction to a list of frequently asked questions (FAQ) about ACT-R with answers.

The FAQ is posted as a guide for finding out more about ACT-R. It is intended for use by all levels of people interested in ACT-R, from novices to experts. With this in mind, the questions are divided into two parts: the first part deals with general details about ACT-R; the second part examines technological and programming issues in ACT-R.  Questions in the first section have their numbers prefixed by the letter G (for General); those in the second section are prefixed by the letter T (for Technological).  As the FAQ expands, the technological section may be further subdivided.

The FAQ also serves as a storehouse of the "best" answers to these questions. Suggestions for new questions, answers, re-phrasing, deletions etc., are all welcomed. Thus, if you know of a better answer or can suggest improvements, please feel free to make suggestions. Please include the word "ACT-R FAQ" in the subject of your e-mail correspondence. Please use the mailing list noted below for general questions, but if it fails to appropriately address your question, contact one of us.

This FAQ is updated and posted on a variable schedule. Full instructions for getting the current version of the FAQ are given in question G0.

Natalie Shiskowski initiated the first version of this FAQ with Frank by the support provided by the Penn State Women in Science and Engineering Research Program and by ONR award number N00014-03-1-0248.

This FAQ is not just our work, but includes answers from members of the ACT-R community, past and present. In particular, Dan Bothel, Isaac Councill, and Christian Lebiere have helped. The views expressed here are those of the authors and should not necessarily be attributed to the Pennsylvania State University, nor should having contributed be seen as agreeing with all the comments herein.

Frank E. Ritter (frank.ritter@psu.edu)

Jong W. Kim (jwkim@mail.ucf.edu)

Jacob D. Oury (jdo6@psu.edu)

Back to Table of Contents


Section 1: General Questions


(G0) Where can I get hold of the ACT-R FAQ?

The ACT-R FAQ's home is at: acs.ist.psu.edu/act-r-faq/act-r-faq.htlm.

The latest version of the list of Frequently Asked Questions (FAQ) for the ACT-R cognitive architecture is posted after major changes to the ACT-R-group mailing list. If you find that any material here is out of date or does not include a relevant paper or author, please let us know.

Back to Table of Contents


(G1) What is ACT-R?

ACT-R is a proposed unified theory of cognition realized as a production system. It is a unified theory of cognition, in the spirit proposed by Newell (1990, Unified theories of cognition, Harvard, Cambridge, MA), in that it is designed to predict human behavior by processing information and generating intelligent behavior itself.

The ACT-R architecture integrates theories of cognition, visual attention, and motor movement. It has been applied successfully to model higher-level cognition phenomena, such as working memory, scientific reasoning and skill acquisition, to name but a few. Recently, it has been applied successfully to a number of HCI issues.

ACT-R makes a distinction between two types of long-term knowledge, declarative and procedural knowledge. Declarative knowledge is factual and holds information like '2 + 2 = 4'. The basic units of declarative knowledge are chunks, which are schema-like structures, effectively forming a prepositional network. Procedural knowledge consists of production rules that encode skills and take the form of condition-action pairs. Production rules correspond to specific goals or sub-goals, and mainly retrieve and change declarative knowledge.

Besides the symbolic procedural and declarative part, the system also has a sub-symbolic part that determines the use of the symbolic knowledge. Each symbolic construct, be it a production or chunk, has sub-symbolic parameters associated with it that reflect their past use. In this way, the system keeps track of the general usefulness of the symbolic information. Which information is currently available in the declarative memory module is determined by the odds that a particular piece of information will be used in a particular context.

An important aspect of the ACT-R system is that it operates in real-time: Each covert step of cognition (production firing, retrieval from declarative memory) or overt action (mouse-click, moving attention) has latencies associated with it that are based on psychological theories and data. For example, firing a production rule typically takes 50 ms, and the time needed to scan a part of a computer screen is calculated using Fitts' law. In this way, the system allows the application of psychological knowledge in real-time.

[This answer was prepared with Dirk Van Rooy]

Back to Table of Contents


(G2) Where can I get more information about ACT-R?

Here are some introductory materials to get you started.  A more complete list is available at the ACT-R website, at act-r.psy.cmu.edu/publications.

Books and Book Chapters

Anderson, J. R. (2007). How can the human mind occur in the physical universe? New York, NY: Oxford University Press.

Anderson, J. R. & Lebiere, C. (1998). The atomic components of thought.  Mahwah, NJ:  Erlbaum.

Anderson, J. R. & Matessa, M. (1998).  The rational analysis of categorization and the ACT-R architecture.  In M. Oaksford & N. Chater (Eds.)  Rational models of cognition, pp. 197-217.  Oxford: Oxford University Press.

Anderson, J. R. (1993).  Rules of the mind.  Hillsdale, NJ: Erlbaum.

Journal Articles and Conference Proceedings

Anderson, J. R., Bothell, D., Byrne, M. D., Douglass, S., Lebiere, C., & Qin, Y. (2004). An integrated theory of mind. Psychological Review, 111(4), 1036-1060.

Anderson, J. R. & Douglass, S. (2001). Tower of Hanoi: Evidence for the cost of goal retrieval. Journal of Experimental Psychology: Learning, Memory, & Cognition, 27, 1331-1346.

Anderson, J. R. (1996). ACT: A simple theory of complex cognition. American Psychologist, 51, 355-365.

Anderson, J. R., Corbett, A. T., Koedinger, K. R., Pelletier, R. (1995). Cognitive tutors: Lessons learned. The Journal of the Learning Sciences, 4 (2), 167-207.

Byrne, M. D., Anderson, J. R., Douglass, S., Matessa, M. (1999). Eye tracking the visual search of click-down menus. Human Factors in Computing Systems: Proceedings of CHI 99, 402-409, Reading, MA: Addison Wesley.

Lebiere, C., Anderson, J. R., & Reder, L. M. (1994). Error modeling in the ACT-R production system.  In Proceedings of the Sixteenth Annual Conference of the Cognitive Science Society, 555-559.  Hillsdale, NJ: Erlbaum.

Web Sites

The origin of the ACT theory and ACT-R language is found at the ACT-R website at Carnegie-Mellon University.

Information concerning ACT-R's perceptual-motor components can be found at Rice University.

There is an ACT-R homepage associated with the University of Groningen.

There is also much useful information at the Pennsylvania State University, in the Applied Cognitive Science Lab.

Research is ongoing at Rensselaer Polytechnic Institute (RPI) in the CogWorks Laboratories.

Mailing List

You can get information about or subscribe to the ACT-R users primary mailing list here.  There are also archives of the ACT-R mailing list, which may have the answer to your questions.

You can find information about a low-volume announcement list here.  This list is also archived.

Workshops

Each year, a three-day workshop is held to enable new and current users to exchange research results and ideas. The ACT-R summer school and the ACT-R workshop typically take place at Carnegie Mellon University. Information on past workshops can be found here.

Tutorials on ACT-R also sometimes appear at the Cognitive Science Conference (e.g., on the 2002 tutorial program) and at the International Cognitive Modelling Conference.

Newsgroup

At present there is no ACT-R newsgroup.

Back to Table of Contents


(G3) What does ACT-R stand for?

ACT-R's official name is an acronym for "Adaptive Character of Thought - Rational" (Anderson et al., 2004), which is based upon the ACT theory (Anderson, 1976).

Anderson, J. R., Bothell, D., Byrne, M. D., Douglass, S., Lebiere, C., & Qin, Y. (2004). An integrated theory of mind. Psychological Review, 111(4), 1036-1060.

Anderson, J. R., & Lebiere, C. (1998). The Atomic Components of Thought. Mahwah, NJ: Lawrence Erlbaum Associates.

Anderson, J. R. (1990). The Adaptive Character of Thought. Hillsdale, NJ: Lawrence Erlbaum Associates.

Anderson, J. R. (1974). Language, memory, and thought. Hillsdale, NJ: Lawrence Erlbaum Associates.

Back to Table of Contents


(G4) What do I need to be able to run ACT-R?

All that is required is a version of ACT-R and a Common Lisp implementation.

The ACT-R versions are described and linked to in (G5). The Common Lisp implementations that we know that work are listed below, roughly in order of ease of use, not price. Approximate price is in parentheses for single user license.

Rosetta Macintosh Common Lisp (RMCL) : MCL was originally a paid program, but it was replaced with an open-source version in 2009. It in running on Mac OS X, however maintenence seems to have ceased. (free)

Allegro Common Lisp (ACL): It is running on Windows, Linux, Solaris, and Mac OS X ($599 and more)

Lispworks: It is running on Windows, Linux, Mac OS X, and other Unix platforms (free trial, $1,300)

Clisp: It is running on Windows and other Unix systems, such as Linux, FreeBSD, NetBSD, and Solaris, etc. (free)

CMUCL: It is running on Mac OS X, Linux, and Unix systems. (free)

Clozure Common Lisp (CCL) : Formerly known as OpenMCL. It is running on Mac OS X (PPC and x86), Linux (PPC and x86), FreeBSD (x86), Solaris (x86), and Windows XP and later (x86). It is available in 32 and 64-bit versions on all platforms. (free)

There is a version of ACT-R in Java being created by Tony Harrison. You can get more information from the jACT-R website.

There is also a Python version of ACT-R available at the Carleton Cognitive Modeling Lab.

Back to Table of Contents


(G5) Where can I get hold of ACT-R?

Most new users are starting in the latest version, ACT-R 7 (V7.3). Some users still use ACT-R 6, 5, or 4. Only one user we know of, working with legacy code, is still using ACT-R 3 (he is lonely). Older versions may be available from the Dan Bothel or Frank Ritter.

Version 7

ACT-R 7 was released in 2015 as a renaming of ACT-R 6.1 and last updated in April 2017. This is available here .

Version 6.1

ACT-R 6.1 was released in 2014 as a major update to ACT-R 6.0. It was renamed to ACT-R 7 in 2015.

Version 6.0

ACT-R 6 was released in 2005 and last updated in August 2010. This is available at http://act-r.psy.cmu.edu/actr6/.

Version 5.0

There is a much newer version of the environment that works in a wide variety of Lisps. Please see http://act-r.psy.cmu.edu/software for details.

Linux users should be aware that speed varies greatly with different Lisps.  From fastest to slowest: Clisp, ACL, CMUCL. Also note that compilation of programs is very important.

Version 4.0

ACT-R 4.0 is written in Common Lisp, and should compile and run properly on any Common Lisp system.

Scripting extensions are also available.

ACT-R/PM

While ACT-R/PM for Version 4.0 was written in and works best under MCL, all of the "core functionality" of ACT-R/PM is written in standard Common Lisp and will run under any ANSI- or CLtL2- compliant Common Lisp.  Versions for ACT-R Version 5.0 and 4.0 are both available. ACT-R/PM is now included in the basic ACT-R distribution (6.0 and 5.0), so unless you want the absolutely latest version of PM, you are likely to be quite happy with the main release now.

Back to Table of Contents


(G6) Who uses ACT-R for what?

ACT-R is used primarily to model experimental psychology data. For example, researchers at CMU, George Mason, and RPI work on this topic.

ACT-R has also been used to model behavior in synthetic environments. Researchers at CMU have worked on this.

You can also browse the ACT-R workshop talks and proceedings to get an idea of who was working on what, as well as the published and contributed models on the main web site. There are further examples in the FAQ as well.

More projects are going on, but we are waiting for further comments in this section.

Back to Table of Contents


(G7) How can I learn ACT-R?

Probably the best way to learn ACT-R is to visit a lab where people are actively using ACT-R, and stay for as long as you can manage (months rather than days). To help people, however, there is an online tutorial for ACT-R. In addition, there is also annual ACT-R Summer School at CMU.

ACT-R 7 tutorial and models are included in the ACT-R 7 software.

ACT-R 6.0 tutorial and models are included in the ACT-R 6.0 software.

ACT-R 5.0 tutorial

ACT-R 4.0 tutorial is no longer available. (We would include a pointer or host it if offered.)

Back to Table of Contents


(G8) Is ACT-R the right tool for me?

ACT-R is useful for modeling human cognition. It is particularly strong in modeling traditional, so-called, experimental psychology data, modeling cognitive psychology data, and as serving as a way to cumulate the results in these areas. If you are interested in understanding and predicting data in these areas, it should be considered a possible tool for you.

Some people are starting to use ACT-R to model interaction between users and computer interfaces using ACT-R/PM, and in this area ACT-R might be the right tool for many people.

ACT-R is probably not as useful when employed as an AI programming language, although its learning algorithms may be interesting to some. It may be less useful because it is designed to perform like a human. ACT-R's syntax and semantics are more awkward than AI languages.

Back to Table of Contents


(G9) Is there any support documentation available for ACT-R?

ACT-R 6.0 tutorial and models: They are included in the ACT-R 6.0 software under "tutorial" folder.

ACT-R Publications: act-r.psy.cmu.edu/publications/index.php

ACT-R Workshop Proceedings: act-r.psy.cmu.edu/workshops/

ACT-R Software Framework: It is included ACT-R 6 software under "doc" folder.

ACT-R 5.0 Tutorial: act-r.psy.cmu.edu/tutorials

ACT-R/PM Documentation: chil.rice.edu/projects/RPM/index.html

ACT-R 4.0 Documentation: act-r.psy.cmu.edu/older/ACT-R_4.0/release/

Also see,

Anderson, J. R. (2007). How can the human mind occur in the physical universe? New York: Oxford University Press.

Anderson, J. R., Bothell, D., Byrne, M. D., Douglass, S., Lebiere, C., & Qin, Y. (2004). An integrated theory of mind. Psychological Review, 111(4), 1036-1060.

Anderson, J. R., & Lebiere, C. (1998). The Atomic Components of Thought. Mahwah, NJ: Lawrence Erlbaum Associates.

Back to Table of Contents


(G10) How can I find out what bugs are outstanding in ACT-R?

Bugs, questions, and comments should be reported to Dan Bothell.

Helpful, general, information on composing a bug report can be found here. Basically, as you may already know, the clearer and more concise and more repeatable your bug is, the more help can be given.

So, the answer is to read the FAQ, listen to the mail server for now.

Back to Table of Contents


(G11) How does ACT-R currently stand as a psychology theory?

ACT-R is designed to be exclusively a cognitive architecture. It has not attempted to make claims within the area of expert systems or artificial intelligence as Soar has. So its success and failures can be examined solely with respect to how well it fits known psychology data, unifies various areas of psychology, and makes novel predictions.

ACT-R currently attempts to cover data in memory, attention, visual processing, problem solving, development, learning, and forgetting of declarative knowledge. In these areas, these models are reported in the core literature, and have to be taken seriously indeed. A list of current models is available here.

Preliminary work is also going on to model language processing, spatial reasoning, emotions, and conversation. So, not all areas of Newell's vision for unified theories of cognition are covered yet, but an increasing range of models are being built, and they are starting to be used be a wide range of psychologists.

There are several papers comparing ACT-R and Soar, see, for example,

Johnson, T. R. (1997). Control in Act-R and Soar. In M. Shafto & P. Langley (Eds.), Proceedings of the Nineteenth Annual Conference of the Cognitive Science Society, 343-348. Hillsdale, NJ: Lawrence-Erlbaum.

Jones, G. (1996). The architectures of Soar and ACT-R, and how they model human behaviour. Artificial Intelligence and Simulation of Behaviour Quarterly, 96 (Winter 1996), 41-44.

Ritter, F. E., Shadbolt, N. R., Elliman, D., Young, R., Gobet, F., & Baxter, G. D. (2003). Techniques for modeling human performance in synthetic environments: A supplementary review. Wright-Patterson Air Force Base, OH: Human Systems Information Analysis Center. Appendix C. Description of ACT-R and Soar. [Abstract].

Pew, R. W., & Mavor, A. S. (Eds.). (1998). Modeling human and organizational behavior: Application to military simulations. Washington, DC: National Academy Press. books.nap.edu/catalog/6173.html. This also reviews several other architectures.

Back to Table of Contents


(G12) What meetings are there of the ACT-R community?

The ACT-R community meets annually at the ACT-R Workshop. This year's (2017) workshop will take place at University College London on Wednesday, July 26. More information is available here.

Various other meetings occur throughout the year. One example is the Winter Workshop on ACT-R models of Human-System Interaction. The community is also seen at the Annual Conference of Cognitive Science Society and at the International Conference on Cognitive Modeling.

Back to Table of Contents


(G13) What are the implications of ACT-R in education?

Anderson, J. R., Schunn, C. D. (2000). Implications of the ACT-R learning theory: No magic bullets. In R. Glaser (Ed.), Advances in instructional psychology: Educational design and cognitive science, 5 (1-33). Mahwah, NJ: Erlbaum.

Anderson, J. R., Corbett, A. T., Koedinger, K. R., & Pelletier, R. (1995). Cognitive tutors: Lessons learned. The Journal of the Learning Sciences, 4 (2), 167-207.

Koedinger, K. R., Anderson, J. R., Hadley, W. H., & Mark, M. A. (1997). Intelligent tutoring goes to school in the big city. International Journal of Artificial Intelligence in Education, 8, 30-43.

And a couple more that address the issue of the "perceptual chunking" phenomenon that deGroot chess results famously illustrate:

Servan-Schreiber, E. & Anderson, J. R. (1990). Learning artificial grammars with competitive chunking. Journal of Experimental Psychology: Learning, Memory, and Cognition, 16, 592-608.

Koedinger, K. R. & Anderson, J. R. (1990). Abstract planning and perceptual chunks: Elements of expertise in geometry. Cognitive Science, 14, 511-550.

Back to Table of Contents


Section 2: Technological and Programming Questions


(T1) How can I make my life easier when programming in ACT-R?

Creating ACT-R models can be difficult for several reasons. You may have syntactic problems. In this case, a good text editor like Emacs under Unix, PCs, or Macs can help.  BBedit on the Mac may also help. In any case, if you are going to program ACT-R a lot, or already know one of these editors, you may find them useful.

Once you have the model built, and the rules load, the next problem is to tell what's going on. The ACT-R interface or the ACT-R Environment provides several displays to tell you what rules are loaded, what the buffers contain, and the contents of working memory. You should learn to use these tools.

Knowing Lisp also becomes important. You don't have to know Lisp to program ACT-R, but those who don't in the end have to learn Lisp as their model gets more complex and they want to write code to run the model 3 times, load some task, and then save the data because doing it by hand is getting tedious.

Some online lisp tutorials exist to help you along:

www.apl.jhu.edu/~hall/lisp.html, an extremely thorough list of lisp links, publications, and tutorial materials for all skill levels, from beginning Lisp programmers to more advanced users. (also see: http://www.whoishostingthis.com/resources/common-lisp/ .)

Lisp Primer, This will provide you with basic knowledge of Lisp

Common Lisp the Language (2nd ed.), You can learn and search more detailed knowledge of Lisp programming language.

Common Lisp Cookbook, This is similar to Perl Cookbook published by O'Reilly.

Finally, there are some less used functions and functionality that are in the ACT-R manual and a similar but deeper story for Lisp and the Lisp manual. You should read/skim the manual before you get in trouble rather than after. Not so that you can retrieve the details of these functions on the first attempt, but so that you know that these functions exist.

We have created a version of ACT-R 5 in a single file to help understand the code, and a version of ACT-R 6 as a single file with all the files in the directory (including unloaded ones) arrange alphabetically, and a version of the 15 jan 07 actr 6 that loads.

Back to Table of Contents


(T2) How can I write fast code?

Why would you want to write fast code? You should want to write cognitively plausible code!

That said, you may wish your simulation to run faster, that is, to simulate faster than real time. There are a few hints we can already note, although it does not appear to have been as active an area of work as for Soar.

An example of this done with Soar is available at: acs.ist.psu.edu/papers/ritterW98.pdf

Ritter, F. E., & Wallach, D. P. (1998). Models of two-person games in ACT-R and Soar.  In Proceedings of the Second European Conference on Cognitive Modelling.  202-203. Thrumpton: Nottingham University Press.

Also see T. A. Polk and A. Newell, "Deduction as verbal reasoning," Psychological Review, vol. 102, pp. 533-566, 1995, for another example.

This approach is often used in mathematical psychology, an area related to cognitive modeling.

Back to Table of Contents


(T3) Are there other tools?

The ACT-R site at CMU maintains a list of models that are available online. It also has a list of models referenced in published papers. Some of these models are available upon request.

Back to Table of Contents


End of ACT-R FAQ