Skip to content
University of GroningenNiels Taatgen

Software

PRIMs, a cognitive architecture for modeling transfer of skills, plus related models and tutorials.

PRIMs

PRIMs is an extension of ACT-R that breaks production rules into the smallest possible building blocks. Combinations of these primitives can be reused across tasks, providing a mechanistic account of why training one task can improve another. If you are new to the idea, the interactive explanation is the quickest way in.

Recommended: pyprims (Python)

pyprims is a Python implementation of PRIMs. It runs on any platform with Python 3.10 or later, and reads the same .prims model files as the macOS application. Models can be built, run and inspected in Jupyter notebooks, with function calls or with an interactive dashboard, and larger simulations can be scripted directly in Python. This is the version we recommend for new users. Install it with:

pip install "pyprims[notebook]"

Source, documentation and example models are on GitHub; the package is on PyPI:

github.com/ntaatgen/pyprims · pypi.org/project/pyprims

Tutorial

The pyprims repository includes a hands-on tutorial as Jupyter notebooks, covering the structure of a PRIMs model, production compilation, transfer, variable binding and operator learning, with exercises and a reference notebook:

github.com/ntaatgen/pyprims/tree/main/tutorial

The original tutorial for the macOS application contains a compiled build, a tutorial document, several papers, example models, exercises and slide decks:

github.com/ntaatgen/PRIMs-Tutorial

macOS application (Swift)

The Swift implementation runs as a standalone macOS application with a graphical interface. pyprims was ported from this version and validated against it. The macOS application remains available on GitHub:

github.com/ntaatgen/ACTransfer

Legacy: Lisp implementation

The original Lisp implementation has gradually diverged from the Swift version and is no longer actively maintained. Use it only if you have a specific reason to. The last Lisp release was version 0.55, distributed as a zipfile together with sample models and a compatible snapshot of ACT-R (June 2012). It is preserved on the previous version of this site.

Key references

Taatgen, N. A. (2013). The nature and transfer of cognitive skills. Psychological Review, 120(3), 439–471.

Taatgen, N. A. (2013). Diminishing return in transfer: A PRIM model of the Frensch (1991) arithmetic experiment. Proceedings of ICCM 2013, 29–34.


Other software & models

Threaded cognition

Implementation and example models for threaded cognition (Salvucci & Taatgen, 2008) are available from the project page maintained by Dario Salvucci: cs.drexel.edu/~salvucci/threads. See also my multitasking page.

PhD-thesis models (1999)

Models from my PhD thesis Learning without limits (1999) are available on the previous version of this site, together with the thesis itself. Be warned that they require an old version of ACT-R to run.