Top-level configuration in the gactar
section.
Example:
gactar {
log_level: 'detail'
trace_activations: true
}
Config | Type | Description |
---|---|---|
log_level | string (one of 'min', 'info', or 'detail') | how verbose our logging should be |
trace_activations | boolean | output detailed info about activations |
random_seed | positive integer | sets the seed to use for generating pseudo-random numbers (allows for reproducible runs) |
gactar supports a handful of modules and configuration options which are set in the modules
section.
A module's buffer is configured using its name like this:
modules {
memory {
retrieval { spreading_activation: 0.5 }
}
}
For a list of a specific module's configuration options, run gactar module info [module name]
.
For a list of all modules and their configuration options, run gactar module info all
.
Example:
modules {
memory {
latency_factor: 0.63
max_spread_strength: 1.6
}
goal {
goal{ spreading_activation: 1.0 }
}
extra_buffers {
foo {}
bar {}
}
}
All buffers have one configuration option.
Config | Type | Description |
---|---|---|
spreading_activation | decimal | see "Spreading Activation" in "ACT-R 7.26 Reference Manual" pg. 290 |
Mapping defaults is a little messy since they are handled differently in each of the frameworks.
- ccm (DMSpreading.weight): defaults to 1.0, however this is incorrect, so we explicitly set it to 0.0
- pyactr: if not set explicitly, defaults to 0.0
- vanilla: (see below)
Here are vanilla's parameters and defaults:
buffer | ACT-R param | default |
---|---|---|
Aural buffer | :aural-activation | 0.0 |
Aural-location buffer | :aural-location-activation | 0.0 |
Goal buffer | :ga | 0.0 |
Imaginal buffer | :imaginal-activation | 1.0 |
Imaginal-action buffer | :imaginal-action-activation | 0.0 |
Manual buffer | :manual-activation | 0.0 |
Production buffer | :production-activation | 0.0 |
Retrieval buffer | :retrieval-activation | 0.0 |
Temporal buffer | :temporal-activation | 0.0 |
Visual buffer | :visual-activation | 0.0 |
Visual-location buffer | :visual-location-activation | 0.0 |
Vocal buffer | :vocal-activation | 0.0 |
Right now, we allow setting the spreading activation on any buffer, however we only generate code for the goal
buffer.
This is the standard ACT-R declarative memory module.
Module Name: memory
Buffer Name: retrieval
Config | Type | Description | Mapping |
---|---|---|---|
decay | decimal | sets the decay for the base-level learning calculation | ccm (DMBaseLevel submodule 'decay'): 0.5 pyactr (decay) : 0.5 vanilla (:bll): nil (recommend 0.5 if used) |
finst_size | integer | how many chunks are retained in memory | ccm (finst_size): 4 pyactr (DecMemBuffer.finst): 0 vanilla (:declarative-num-finsts): 4 |
finst_time | decimal | how long the finst lasts in memory | ccm (finst_time): 3.0 pyactr: (unsupported? Always ∞ I guess?) vanilla (:declarative-finst-span): 3.0 |
instantaneous_noise | decimal | turns on noise calculation & sets instantaneous noise | ccm (DMNoise submodule 'noise') pyactr (instantaneous_noise) vanilla (:ans) |
latency_exponent | decimal | latency exponent (f) | ccm: (unsupported? Based on the code, it seems to be fixed at 1.0.) pyactr (latency_exponent): 1.0 vanilla (:le): 1.0 |
latency_factor | decimal | latency factor (F) | ccm (latency): 0.05 pyactr (latency_factor): 0.1 vanilla (:lf): 1.0 |
max_spread_strength | decimal | turns on the spreading activation calculation & sets the maximum associative strength | ccm (DMSpreading submodule) pyactr (strength_of_association) vanilla (:mas) |
mismatch_penalty | decimal | turns on partial matching and sets the penalty in the activation equation to this | ccm (Partial class) pyactr (partial_matching & mismatch_penalty) vanilla (:mp) |
retrieval_threshold | decimal | retrieval threshold (τ) | ccm (threshold): 0.0 pyactr (retrieval_threshold): 0.0 vanilla (:rt): 0.0 |
This is the standard ACT-R goal module.
Module Name: goal
Buffer Name: goal
It does not have any additional configuration options.
This is the standard ACT-R imaginal module.
Module Name: imaginal
Buffer Name: imaginal
Config | Type | Description | Mapping |
---|---|---|---|
delay | decimal | how long it takes a request to the buffer to complete (seconds) | ccm (ImaginalModule.delay): 0.2 pyactr (Goal.delay): 0.2 vanilla (:imaginal-delay): 0.2 |
This is the standard ACT-R procedural module.
Module Name: procedural
Buffer Name: none
Config | Type | Description | Mapping |
---|---|---|---|
default_action_time | decimal | time that it takes to fire a production (seconds) | ccm (production_time): 0.05 pyactr (rule_firing): 0.05 vanilla (:dat): 0.05 |
This is a gactar-specific module used to add new buffers to the model. According to ACT-R, buffers should only be added through modules, however some implementations allow declaring them wherever you want.
Module Name: extra_buffers
Buffer Names: specified in configuration
Config | Description |
---|---|
buffer name {} | the name of the new buffer (with "{}" to allow any buffer config options) |