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?Section 2: Technological and Programming Questions
(T0) How can I make my life easier when programming in ACT-R?(T1) How can I write fast code?
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 through 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. If, however, you know of a better answer or can suggest improvements, please feel free to make suggestions.
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.
Suggestions for new questions, answers, re-phrasing, deletions etc., are all welcomed. Please include the word "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 not just our work, but includes numerous answers from members of the ACT-R community, past and present. The views expressed here are those of the authors and should not necessarily be attributed the Pennsylvania State University.
Frank E. Ritter (ritter@ist.psu.edu)
Natalie Shiskowski (nus112@psu.edu)
The ACT-R FAQ's home is here at http://acs.ist.psu.edu/act-r-faq.
The latest version of the list of Frequently Asked Questions (FAQ) for the ACT-R cognitive architecture is posted approximately every three to six months to the ACT-R-group mailing list, and to the following newsgroups:
comp.ai
sci.cognitive
sci.psychology.theory
If you find that any material here is out of date or does not include a relevant paper or author, please let us know.
Here are some introductory materials to get you started. A more complete list is available at the ACT-R homepage, at http://act.psy.cmu.edu/act/.
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.
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.
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.
Anderson, J. R. (1993). Rules of the Mind. Hillsdale, NJ: Erlbaum.
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.
The origin of the ACT theory and ACT-R language is found at Carnegie Mellon University.Information concerning ACT-R/PM can be found at Rice University.
There is also much useful information at the Pennsylvania State University, in the Applied Cognitive Science Lab.
There is an ACT-R homepage associated with the University of Groningen.
Research is ongoing at George Mason University in the Applied Research in Cognition and Human Factors (ARCH) Lab.
To subscribe to the ACT-R-group mailing list, you should send an e-mail to act-r-users-request+@andrew.cmu.edu asking for your name to be added to the list. If you decide that you wish to unsubscribe from the ACT-R-group, you should send an e-mail to act-r-users-request+@andrew.cmu.edu asking for your name to be removed from the mailing list.
At present there is no ACT-R newsgroup.
An ACT-R summer school and workshop typically take place at Carnegie Mellon University annually. Information on this year's event can be found here.Tutorials on ACT-R also sometimes appear at the cognitive science conference and the cognitive modelling conference.
ACT-R's name is based upon the ACT Theory (Anderson, 1976), whose acronym stands for the Atomic Components of Thought.
All that is required is an ACT-R environment and a common lisp.
The ACT-R environments are described and linked to in (G5). The common lisps are: on a Macintosh, Mac CL; on a PC, allegro; and on Linux/Unix, Clisp, ACL, or CMUCL.
ACT-R/PM:
While ACT-R/PM 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. ACT-R Version 4.0 and 5.0 are both available..
Beta version 5.0:
If you are using a Macintosh with MCL, you can use your ACT-R environment by running MCL and loading the file“CT-R loader.lisp.”
Windows users with ACL 5.0.1 with the IDE can also use this same ACT-R environent by running ACL (with the IDE) and load the “loadme.lsp” file.
Other Lisp users can run obtain ACT-R 5.0 in either .zip or .sea.hqx form. After unpacking the files, you will need to load the "+ load-rpm.lisp" file.
Also necessary for other Lisp users is a scripting extensions file, also available in .zip and .sea.hqx forms. This file contains mean-deviation and correlation functions that the unit models uses.
Linux users should be aware that speed varies greatly with different Lisps. From fastest to slowest: Clisp, ACL, CMUCL.
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.
(pending)
Probably the best way to learn ACT-R is to actually visit a site where people are actively using ACT-R, and stay for as long as you can manage (months rather than days). In order to help people, however, there are two tutorials available for ACT-R.
ACT-R 4.0 tutorial
(pending)
Back to Table of ContentsACT-R/PM Documentation: http://chil.rice.edu/byrne/RPM/docs/index.html
ACT-R 4.0 Documentation: http://act.psy.cmu.edu/ftp/release/ACT-R_4.0
Beta version 5.0 documentation is not yet complete, but the tutorial and lecture notes are very useful resources.
ACT-R 5.0 Beta Tutorial: http://act.psy.cmu.edu/ACT-R_5.0
ACT-R 5.0 Lecture Notes at the post-graduate Summer School at Carnegie Mellon University: http://act.psy.cmu.edu/ftp/workshop/Workshop-2001/schedule.html
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, and learning. 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, 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.
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 with less than 256M of memory 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 tell
what's going on. The ACT-R interface 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.
Finally, there are some less used functions that are in the manual. You
should read the manual before you get in trouble. Not so that you can retrieve
the functions on the first attempt, but so that you know that these functions
exist.
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 does
not appear to have been an as active an area of work as for Soar.
* turn off the real-time setting, which delays ACT-R so that it appears to run in real time. (pm-set-params :real-time nil)
* turn off as many tracing variables as you can find. It is the printing of the trace that slows you down the most.* reduce function calls to your own trace functions or to special computations, where possible.
* if you are interacting with an external simulation, you can speed up your model by creating an abstract version of the simulation.
* in extreme cases, rarely done, you might simply create a function that describes what the model will do, and evaluate that function in lisp or your favorite language.An example of this done with Soar is available at http://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.This approach is often used in mathematical psychology, an area related to cognitive modeling.
End of ACT-R FAQ