General-purpose R implementation of the Parallel Constraint Satisfaction (PCS) model
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
R
man
src
tests
.Rbuildignore
.gitignore
DESCRIPTION
LICENSE
NAMESPACE
NEWS.md
PCSinR.Rproj
README.md
README.rmd
cran-comments.md

README.md

PCSinR

The PCSinR package contains all necessary functions for building and simulation Parallel Constraint Satisfaction (PCS) network models within R.

cran version DOI

PCS models are an increasingly used framework throughout psychology: They provide quantitative predictions in a variety of paradigms, ranging from word and letter recognition, for which they were originally developed (McClelland & Rumelhart, 1981; Rumelhart & McClelland, 1982), to complex judgments and decisions (Glöckner & Betsch, 2008; Glöckner, Hilbig, & Jekel, 2014), and many other applications besides.

Installation

  • The current stable version is available via CRAN, and can be installed by running install.packages("PCSinR").
  • You can install the latest development version directly from GitHub with the devtools package. To do so, please run devtools::install_github("felixhenninger/PCSinR@master").

Usage

The functions in this package simulate a PCS network, given an interconnection matrix. Methods for creating such a matrix from the most common models are forthcoming.

Once a connection matrix has been specified, the model can be simulated easily using the most common parameter set.

require(PCSinR)
#> Loading required package: PCSinR

interconnections <- matrix(
  c( 0.0000,  0.1015,  0.0470,  0.0126,  0.0034,  0.0000,  0.0000,
     0.1015,  0.0000,  0.0000,  0.0000,  0.0000,  0.0100, -0.0100,
     0.0470,  0.0000,  0.0000,  0.0000,  0.0000,  0.0100, -0.0100,
     0.0126,  0.0000,  0.0000,  0.0000,  0.0000,  0.0100, -0.0100,
     0.0034,  0.0000,  0.0000,  0.0000,  0.0000, -0.0100,  0.0100,
     0.0000,  0.0100,  0.0100,  0.0100, -0.0100,  0.0000, -0.2000,
     0.0000, -0.0100, -0.0100, -0.0100,  0.0100, -0.2000,  0.0000 ),
  nrow=7
)

result <- PCS_run_from_interconnections(interconnections)

A common simulation result concerns the number of iterations needed until convergence is reached.

result$convergence
#> default 
#>     116

The output also contains a log of the model states across all iterations. Here, we examine just the final state.

result$iterations[nrow(result$iterations),]
#>     iteration     energy node_1    node_2    node_3    node_4      node_5    node_6     node_7
#> 117       116 -0.2916358      1 0.5293124 0.3669084 0.1906411 -0.07023219 0.5477614 -0.5477614

General Information

The PCSinR package is developed and maintained by Felix Henninger and Daniel W. Heck. It is published under the GNU General Public License (version 3 or later). The NEWS file documents the most recent changes.

This work was supported by the University of Mannheim’s Graduate School of Economic and Social Sciences, which is funded by the German Research Foundation.